void RunnerGUI::addTestResult(const char *name, Tester *test) { QStringList scopes = QStringList::split("::", name); QString suite = scopes[0]; // find the suite item Q3ListViewItem *item = 0L; for ( uint i = 0; i < scopes.count(); ++i ) item = getItem(scopes[i], item); if ( test->inherits("KUnitTest::SlotTester") ) { SlotTester *sltest = static_cast<SlotTester*>(test); TestResultsListIteratorType it(sltest->resultsList()); Q3ListViewItem *slotItem = 0L; for ( ; it.current(); ++it) { slotItem = getItem(it.currentKey(), item); setSummary(slotItem, it.current()); } } else setSummary(item, test->results()); fillResultsLabel(); m_testerWidget->progressBar()->setProgress(m_testerWidget->progressBar()->progress() + 1); }
void tst_storage::tst_alldayUtc() { // test event saved with UTC time auto event = KCalCore::Event::Ptr(new KCalCore::Event); QDate startDate(2013, 12, 1); event->setDtStart(KDateTime(startDate, QTime(), KDateTime::UTC)); event->setAllDay(true); event->setSummary("test event utc"); QCOMPARE(event->allDay(), true); m_calendar->addEvent(event, NotebookId); m_storage->save(); QString uid = event->uid(); reloadDb(); auto fetchedEvent = m_calendar->event(uid); QVERIFY(fetchedEvent.data()); QVERIFY(fetchedEvent->dtStart().isUtc()); KDateTime localStart = fetchedEvent->dtStart().toLocalZone(); QVERIFY(localStart.time() == QTime(2, 0)); KDateTime localEnd = fetchedEvent->dtEnd().toLocalZone(); QVERIFY(localEnd.time() == QTime(2, 0)); QCOMPARE(localEnd.date(), localStart.date().addDays(1)); }
void RunnerGUI::setSummary(Q3ListViewItem *item, TestResults *res) { if ( item == 0L ) return; bool ok; int val = item->text(g_finishedColumn).toInt(&ok); if (!ok) val = 0; item->setText(g_finishedColumn, QString::number(val + res->testsFinished())); val = item->text(g_skippedColumn).toInt(&ok); if (!ok) val = 0; item->setText(g_skippedColumn, QString::number(val + res->skipped())); val = item->text(g_passedColumn).toInt(&ok); if (!ok) val = 0; item->setText(g_passedColumn, QString::number(val + res->passed())); val = item->text(g_failedColumn).toInt(&ok); if (!ok) val = 0; item->setText(g_failedColumn, QString::number(val + res->errors())); val = item->text(g_xfailedColumn).toInt(&ok); if (!ok) val = 0; item->setText(g_xfailedColumn, QString::number(val + res->xfails())); val = item->text(g_xpassedColumn).toInt(&ok); if (!ok) val = 0; item->setText(g_xpassedColumn, QString::number(val + res->xpasses())); bool passed = (item->text(g_failedColumn).toInt(&ok) + item->text(g_xfailedColumn).toInt(&ok)) == 0; item->setPixmap(g_nameColumn, passed ? SmallIcon("dialog-ok") : SmallIcon("dialog-cancel") ); setSummary(item->parent(), res); }
void DiarySidebar::setRide(RideItem *ride) { _ride = ride; multiCalendar->setRide(ride); setSummary(); }
void DiarySidebar::refresh() { if (!isHidden()) { multiCalendar->refresh(); setSummary(); repaint(); } }
void ResultViewPic::doSetTotalCount( int c ) { Q_UNUSED( c ); calculatePieces(); mCurrentPic.fill(); mPicLabel->setPixmap( mCurrentPic ); setSummary(); }
void tst_storage::tst_allday() { auto event = KCalCore::Event::Ptr(new KCalCore::Event); QFETCH(QDate, startDate); QFETCH(int, days); event->setDtStart(KDateTime(startDate, QTime(), KDateTime::ClockTime)); event->setAllDay(true); if (days) { event->setDtEnd(KDateTime(startDate.addDays(days), QTime(), KDateTime::ClockTime)); } event->setSummary("test event"); QCOMPARE(event->allDay(), true); QCOMPARE(event->dtStart().date(), startDate); if (days) { QCOMPARE(event->dateEnd(), startDate.addDays(days)); QCOMPARE(event->hasEndDate(), true); QVERIFY(event->dateEnd() > event->dtStart().date()); } else { QCOMPARE(event->dateEnd(), startDate); QCOMPARE(event->hasEndDate(), false); } m_calendar->addEvent(event, NotebookId); m_storage->save(); QString uid = event->uid(); reloadDb(); auto fetchedEvent = m_calendar->event(uid); QVERIFY(fetchedEvent.data()); QCOMPARE(fetchedEvent->allDay(), true); QCOMPARE(fetchedEvent->dtStart().date(), startDate); QTime time = fetchedEvent->dtStart().time(); QVERIFY(time == QTime() || time == QTime(0, 0)); QTime localTime = fetchedEvent->dtStart().toLocalZone().time(); QVERIFY(localTime == QTime() || localTime == QTime(0, 0)); if (days) { QCOMPARE(fetchedEvent->dateEnd(), startDate.addDays(days)); QCOMPARE(fetchedEvent->hasEndDate(), true); QVERIFY(event->dateEnd() > event->dtStart().date()); } else { QCOMPARE(fetchedEvent->dateEnd(), startDate); QCOMPARE(fetchedEvent->hasEndDate(), false); } }
ResultViewPic::ResultViewPic( QWidget *parent ) : ResultView( parent ) { QBoxLayout *topLayout = new QVBoxLayout( this ); mSummaryLabel = new QLabel( this ); topLayout->addWidget( mSummaryLabel ); mSummaryLabel->setAlignment( AlignCenter ); mPicLabel = new QLabel( this ); topLayout->addWidget( mPicLabel, 1 ); mPicLabel->setAlignment( AlignCenter ); setSummary(); }
void DiarySidebar::configChanged() { // GCColor stylesheet is too generic, we ONLY want to style the container // and NOT its children. This is why stylesheets on widgets is a stoopid idea QColor bgColor = GColor(CPLOTBACKGROUND); QColor fgColor = GCColor::invertColor(bgColor); summaryWidget->setStyleSheet(QString("QWidget#summaryWidget { color: %1; background: %2; }") .arg(fgColor.name()).arg(bgColor.name())); // clear any shit left behind from parents (Larkin ?) // now apply multiCalendar->refresh(); // and summary .. forgetting what we already prepared from = to = QDate(); setSummary(); }
void ResultViewPic::doSetCurrentCount( int c ) { Q_UNUSED( c ); if ( c > 0 ) { int select = KRandom::number( mPieces.count() ); Q_ASSERT( select < int( mPieces.count() ) ); QRect piece = mPieces[ select ]; QValueList<QRect>::Iterator it = mPieces.at( select ); mPieces.erase( it ); showPiece( piece ); } if ( c == totalCount() ) { for( unsigned int i = 0; i < mPieces.count(); ++i ) { showPiece( mPieces[ i ] ); } } setSummary(); }
void ResultViewPic::doSetWrongCount( int c ) { Q_UNUSED( c ); setSummary(); }
LTMSidebar::LTMSidebar(MainWindow *parent, const QDir &home) : QWidget(parent), home(home), main(parent), active(false) { QVBoxLayout *mainLayout = new QVBoxLayout(this); mainLayout->setContentsMargins(0,0,0,0); mainLayout->setSpacing(0); setContentsMargins(0,0,0,0); seasonsWidget = new GcSplitterItem(tr("Date Ranges"), iconFromPNG(":images/sidebar/calendar.png"), this); QAction *moreSeasonAct = new QAction(iconFromPNG(":images/sidebar/extra.png"), tr("Menu"), this); seasonsWidget->addAction(moreSeasonAct); connect(moreSeasonAct, SIGNAL(triggered(void)), this, SLOT(dateRangePopup(void))); dateRangeTree = new SeasonTreeView; //allDateRanges = new QTreeWidgetItem(dateRangeTree, ROOT_TYPE); allDateRanges=dateRangeTree->invisibleRootItem(); // Drop for Seasons allDateRanges->setFlags(Qt::ItemIsEnabled | Qt::ItemIsDropEnabled); allDateRanges->setText(0, tr("Date Ranges")); dateRangeTree->setFrameStyle(QFrame::NoFrame); dateRangeTree->setColumnCount(1); dateRangeTree->setSelectionMode(QAbstractItemView::SingleSelection); dateRangeTree->header()->hide(); dateRangeTree->setIndentation(5); dateRangeTree->expandItem(allDateRanges); dateRangeTree->setContextMenuPolicy(Qt::CustomContextMenu); #ifdef Q_OS_MAC dateRangeTree->setAttribute(Qt::WA_MacShowFocusRect, 0); #endif seasonsWidget->addWidget(dateRangeTree); eventsWidget = new GcSplitterItem(tr("Events"), iconFromPNG(":images/sidebar/bookmark.png"), this); QAction *moreEventAct = new QAction(iconFromPNG(":images/sidebar/extra.png"), tr("Menu"), this); eventsWidget->addAction(moreEventAct); connect(moreEventAct, SIGNAL(triggered(void)), this, SLOT(eventPopup(void))); eventTree = new QTreeWidget; eventTree->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); //allEvents = new QTreeWidgetItem(eventTree, ROOT_TYPE); allEvents = eventTree->invisibleRootItem(); allEvents->setText(0, tr("Events")); eventTree->setFrameStyle(QFrame::NoFrame); eventTree->setColumnCount(2); eventTree->setSelectionMode(QAbstractItemView::SingleSelection); eventTree->header()->hide(); eventTree->setIndentation(5); eventTree->expandItem(allEvents); eventTree->setContextMenuPolicy(Qt::CustomContextMenu); eventTree->horizontalScrollBar()->setDisabled(true); eventTree->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); #ifdef Q_OS_MAC eventTree->setAttribute(Qt::WA_MacShowFocusRect, 0); #endif eventsWidget->addWidget(eventTree); seasons = parent->seasons; resetSeasons(); // reset the season list configChanged(); // will reset the metric tree splitter = new GcSplitter(Qt::Vertical); splitter->addWidget(seasonsWidget); splitter->addWidget(eventsWidget); GcSplitterItem *summaryWidget = new GcSplitterItem(tr("Summary"), iconFromPNG(":images/sidebar/dashboard.png"), this); summary = new QWebView(this); summary->setContentsMargins(0,0,0,0); summary->page()->view()->setContentsMargins(0,0,0,0); summary->page()->mainFrame()->setScrollBarPolicy(Qt::Vertical, Qt::ScrollBarAlwaysOff); summary->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); summary->setAcceptDrops(false); summaryWidget->addWidget(summary); QFont defaultFont; // mainwindow sets up the defaults.. we need to apply summary->settings()->setFontSize(QWebSettings::DefaultFontSize, defaultFont.pointSize()); summary->settings()->setFontFamily(QWebSettings::StandardFont, defaultFont.family()); splitter->addWidget(summaryWidget); mainLayout->addWidget(splitter); splitter->prepare(main->cyclist, "LTM"); // our date ranges connect(dateRangeTree,SIGNAL(itemSelectionChanged()), this, SLOT(dateRangeTreeWidgetSelectionChanged())); connect(dateRangeTree,SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(dateRangePopup(const QPoint &))); connect(dateRangeTree,SIGNAL(itemChanged(QTreeWidgetItem *,int)), this, SLOT(dateRangeChanged(QTreeWidgetItem*, int))); connect(dateRangeTree,SIGNAL(itemMoved(QTreeWidgetItem *,int, int)), this, SLOT(dateRangeMoved(QTreeWidgetItem*, int, int))); connect(eventTree,SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(eventPopup(const QPoint &))); // GC signal connect(main, SIGNAL(configChanged()), this, SLOT(configChanged())); connect(seasons, SIGNAL(seasonsChanged()), this, SLOT(resetSeasons())); connect(this, SIGNAL(dateRangeChanged(DateRange)), this, SLOT(setSummary(DateRange))); // let everyone know what date range we are starting with dateRangeTreeWidgetSelectionChanged(); }
QTableSummaryWidgetItem::QTableSummaryWidgetItem(Summary *value) : QTableWidgetItem () { setSummary(value); }