~ubuntu-branches/ubuntu/saucy/clementine/saucy

« back to all changes in this revision

Viewing changes to src/widgets/nowplayingwidget.cpp

  • Committer: Package Import Robot
  • Author(s): Thomas PIERSON
  • Date: 2012-01-01 20:43:39 UTC
  • mfrom: (1.1.1)
  • Revision ID: package-import@ubuntu.com-20120101204339-lsb6nndwhfy05sde
Tags: 1.0.1+dfsg-1
New upstream release. (Closes: #653926, #651611, #657391)

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
 
18
18
#include "fullscreenhypnotoad.h"
19
19
#include "nowplayingwidget.h"
20
 
#include "core/albumcoverloader.h"
21
 
#include "core/kittenloader.h"
 
20
#include "covers/albumcoverloader.h"
 
21
#include "covers/coverproviders.h"
 
22
#include "covers/kittenloader.h"
22
23
#include "library/librarybackend.h"
23
24
#include "ui/albumcoverchoicecontroller.h"
24
25
#include "ui/iconloader.h"
54
55
const int NowPlayingWidget::kTopBorder = 4;
55
56
 
56
57
 
57
 
NowPlayingWidget::NowPlayingWidget(QWidget *parent)
 
58
NowPlayingWidget::NowPlayingWidget(QWidget* parent)
58
59
  : QWidget(parent),
 
60
    cover_providers_(NULL),
59
61
    album_cover_choice_controller_(new AlbumCoverChoiceController(this)),
60
62
    cover_loader_(new BackgroundThreadImplementation<AlbumCoverLoader, AlbumCoverLoader>(this)),
61
63
    kitten_loader_(NULL),
133
135
NowPlayingWidget::~NowPlayingWidget() {
134
136
}
135
137
 
 
138
void NowPlayingWidget::SetCoverProviders(CoverProviders* cover_providers) {
 
139
  cover_providers_ = cover_providers;
 
140
  album_cover_choice_controller_->SetCoverProviders(cover_providers_);
 
141
}
 
142
 
136
143
void NowPlayingWidget::CreateModeAction(Mode mode, const QString &text, QActionGroup *group, QSignalMapper* mapper) {
137
144
  QAction* action = new QAction(text, group);
138
145
  action->setCheckable(true);
164
171
}
165
172
 
166
173
void NowPlayingWidget::UpdateHeight(AlbumCoverLoader* loader) {
 
174
  if (!loader) {
 
175
    return;
 
176
  }
 
177
 
167
178
  switch (mode_) {
168
179
  case SmallSongDetails:
169
180
    cover_height_ = small_ideal_height_;
373
384
void NowPlayingWidget::contextMenuEvent(QContextMenuEvent* e) {
374
385
  // initial 'enabled' values depending on the kitty mode
375
386
  album_cover_choice_controller_->cover_from_file_action()->setEnabled(!aww_);
376
 
  album_cover_choice_controller_->cover_to_file_action()->setEnabled(aww_);
377
387
  album_cover_choice_controller_->cover_from_url_action()->setEnabled(!aww_);
378
 
  album_cover_choice_controller_->search_for_cover_action()->setEnabled(!aww_);
 
388
  album_cover_choice_controller_->search_for_cover_action()->setEnabled(
 
389
        !aww_ && cover_providers_->HasAnyProviders());
379
390
  album_cover_choice_controller_->unset_cover_action()->setEnabled(!aww_);
380
391
  album_cover_choice_controller_->show_cover_action()->setEnabled(!aww_);
381
392
 
382
393
  // some special cases
383
394
  if (!aww_) {
384
 
  #ifndef HAVE_LIBLASTFM
385
 
    album_cover_choice_controller_->cover_from_file_action()->setEnabled(false);
386
 
    album_cover_choice_controller_->search_for_cover_action()->setEnabled(false);
387
 
  #endif
388
 
 
389
395
    const bool art_is_not_set = metadata_.has_manually_unset_cover()
390
396
        || (metadata_.art_automatic().isEmpty() && metadata_.art_manual().isEmpty());
391
397