Esempio n. 1
0
ContextWidget::ContextWidget(QWidget *parent)
    : QWidget(parent)
    , job(0)
    , alwaysCollapsed(false)
    , backdropType(PlayQueueView::BI_Cover)
    , darkBackground(false)
    , useFanArt(0!=constFanArtApiKey.latin1())
    , albumCoverBackdrop(false)
    , oldIsAlbumCoverBackdrop(false)
    , fadeValue(1.0)
    , isWide(false)
    , stack(0)
    , onlineContext(0)
    , splitter(0)
    , viewSelector(0)
{
    QHBoxLayout *layout=new QHBoxLayout(this);
    mainStack=new QStackedWidget(this);
    standardContext=new QWidget(mainStack);
    mainStack->addWidget(standardContext);
    layout->setMargin(0);
    layout->addWidget(mainStack);
    animator.setPropertyName("fade");
    animator.setTargetObject(this);

    appLinkColor=QApplication::palette().color(QPalette::Link);
    artist = new ArtistView(standardContext);
    album = new AlbumView(standardContext);
    song = new SongView(standardContext);
    minWidth=album->picSize().width()*2.5;

    artist->addEventFilter(this);
    album->addEventFilter(this);
    song->addEventFilter(this);

    connect(artist, SIGNAL(findArtist(QString)), this, SIGNAL(findArtist(QString)));
    connect(artist, SIGNAL(findAlbum(QString,QString)), this, SIGNAL(findAlbum(QString,QString)));
    connect(album, SIGNAL(playSong(QString)), this, SIGNAL(playSong(QString)));
    readConfig();
    setZoom();
    setWide(true);

    #ifndef SCALE_CONTEXT_BGND
    QDesktopWidget *dw=QApplication::desktop();
    if (dw) {
        QSize geo=dw->availableGeometry(this).size()-QSize(32, 64);
        minBackdropSize=geo;
        minBackdropSize.setWidth(((int)(minBackdropSize.width()/32))*32);
        minBackdropSize.setHeight(((int)(minBackdropSize.height()/32))*32);
        maxBackdropSize=QSize(geo.width()*1.25, geo.height()*1.25);
    } else {
        minBackdropSize=QSize(Utils::scaleForDpi(1024*3), Utils::scaleForDpi(768*3);
        maxBackdropSize=QSize(minBackdropSize.width()*2, minBackdropSize.height()*2);
    }
    #endif
}
Esempio n. 2
0
void album_db::increaseEntity(int album_code, int number)
{
    int index = findAlbum(album_code);

    Album &temp = albums[index];
    temp.increase(number);
}
Esempio n. 3
0
void album_db::addNewTrack(int album_id, int track_num, string name, double duration, double price)
{
    int index = findAlbum(album_id);

    Album &temp = albums[index];
    temp.addNewTrack(track_num,name,duration,price);
}
Esempio n. 4
0
void album_db::buyAlbum(int album_id)
{
    int index = findAlbum(album_id);

    Album &temp = albums[index];

    temp.buy();
}
Esempio n. 5
0
bool album_db::isAvailable(int album_id)
{
    int index = findAlbum(album_id);

    Album temp = albums.at(index);

    if( temp.isAvailable() )
        return true;
    return false;
}
Esempio n. 6
0
string album_db::showAlbumDetails(int album_id)
{
    std::stringstream out;

    int index = findAlbum(album_id);

    Album temp = albums.at(index);
    out << temp.albumDetails();

    return out.str();
}
Esempio n. 7
0
double album_db::findTrackPrice(int album_id, int track_id)
{
    int index = findAlbum(album_id);
    Album temp = albums.at(index);
    return temp.findTrackPrice(track_id);
}
Esempio n. 8
0
string album_db::findTrackInfo(int album_id, int track_id)
{
    int index = findAlbum(album_id);
    Album temp = albums.at(index);
    return temp.findTrackInfo(track_id);
}
Esempio n. 9
0
void album_db::buyTrack(int album_id, int track_id)
{
    int index = findAlbum(album_id);
}