Esempio n. 1
0
void initializeThumbnailToolBar(QWidget *widget)
{
    Q_ASSERT(widget->windowHandle()); // Note: this requires the window to be shown.
//! [thumbbar_cpp]
    QWinThumbnailToolBar *thumbbar = new QWinThumbnailToolBar(widget);
    thumbbar->setWindow(widget->windowHandle());

    QWinThumbnailToolButton *settings = new QWinThumbnailToolButton(thumbbar);
    settings->setToolTip("Settings");
    settings->setIcon(":/settings.png");
    settings->setDismissOnClick(true);
    connect(settings, SIGNAL(clicked()), settingsPage, SLOT(show()));

    QWinThumbnailToolButton *playPause = new QWinThumbnailToolButton(thumbbar);
    playPause->setToolTip("Play/Pause");
    playPause->setIcon(":/play.png");
    connect(playPause, SIGNAL(clicked()), mediaPlayer, SLOT(play()));

    thumbbar->addButton(settings);
    thumbbar->addButton(playPause);
//! [thumbbar_cpp]
}
Esempio n. 2
0
void tst_QWinThumbnailToolBar::testButtons()
{
    QWinThumbnailToolBar tbar;
    QCOMPARE(tbar.count(), 0);
    QVERIFY(tbar.buttons().isEmpty());

    tbar.addButton(0);
    QCOMPARE(tbar.count(), 0);
    QVERIFY(tbar.buttons().isEmpty());

    QWinThumbnailToolButton *btn1 = new QWinThumbnailToolButton;
    QWinThumbnailToolButton *btn2 = new QWinThumbnailToolButton;

    tbar.addButton(btn1);
    QCOMPARE(tbar.count(), 1);
    QCOMPARE(tbar.buttons().count(), 1);
    QCOMPARE(tbar.buttons().at(0), btn1);

    tbar.addButton(btn2);
    QCOMPARE(tbar.count(), 2);
    QCOMPARE(tbar.buttons().count(), 2);
    QCOMPARE(tbar.buttons().at(0), btn1);
    QCOMPARE(tbar.buttons().at(1), btn2);

    tbar.clear();
    QCOMPARE(tbar.count(), 0);
    QVERIFY(tbar.buttons().isEmpty());

    QList<QWinThumbnailToolButton *> buttons;
    for (int i = 0; i < 3; ++i)
        buttons << new QWinThumbnailToolButton;

    tbar.setButtons(buttons);
    QCOMPARE(tbar.count(), buttons.count());
    QCOMPARE(tbar.buttons().count(), buttons.count());
    for (int i = 0; i < buttons.count(); ++i)
        QCOMPARE(tbar.buttons().at(i), buttons.at(i));

    tbar.removeButton(buttons.at(1));
    QCOMPARE(tbar.count(), 2);
    QCOMPARE(tbar.buttons().count(), 2);
    QCOMPARE(tbar.buttons().at(0), buttons.at(0));
    QCOMPARE(tbar.buttons().at(1), buttons.at(2));

    tbar.removeButton(buttons.at(2));
    QCOMPARE(tbar.count(), 1);
    QCOMPARE(tbar.buttons().count(), 1);
    QCOMPARE(tbar.buttons().at(0), buttons.at(0));

    tbar.removeButton(buttons.at(0));
    QCOMPARE(tbar.count(), 0);
    QVERIFY(tbar.buttons().isEmpty());
}