_activityLists[ai] = list;
+ if( statusCode == 999 ) {
+ emit accountWithoutActivityApp(ai);
+ }
+
combineActivityLists();
}
_ui->_activityList->setAlternatingRowColors(true);
_ui->_activityList->setModel(_model);
- _ui->_headerLabel->setText(tr("Server Activities"));
+ showLabels();
+
+ connect(_model, SIGNAL(accountWithoutActivityApp(AccountState*)),
+ this, SLOT(slotAccountWithoutActivityApp(AccountState*)));
_copyBtn = _ui->_dialogButtonBox->addButton(tr("Copy"), QDialogButtonBox::ActionRole);
_copyBtn->setToolTip( tr("Copy the activity list to the clipboard."));
_model->slotRemoveAccount(ptr);
}
+void ActivityWidget::showLabels()
+{
+ QString t = tr("Server Activities");
+ _ui->_headerLabel->setTextFormat(Qt::RichText);
+ _ui->_headerLabel->setText(t);
+
+ t.clear();
+ QSetIterator<QString> i(_accountsWithoutActivities);
+ while (i.hasNext() ) {
+ t.append( tr("<br/>Account %1 does not have activities enabled.").arg(i.next()));
+ }
+ _ui->_bottomLabel->setTextFormat(Qt::RichText);
+ _ui->_bottomLabel->setText(t);
+}
+
+void ActivityWidget::slotAccountWithoutActivityApp(AccountState *ast)
+{
+ if( ast && ast->account() ) {
+ _accountsWithoutActivities.insert(ast->account()->displayName());
+ }
+
+ showLabels();
+}
+
// FIXME: Reused from protocol widget. Move over to utilities.
QString ActivityWidget::timeString(QDateTime dt, QLocale::FormatType format) const
{
private slots:
void slotActivitiesReceived(const QVariantMap& json, int statusCode);
+signals:
+ void accountWithoutActivityApp(AccountState* ast);
+
private:
void startFetchJob(AccountState* s);
void combineActivityLists();
void slotOpenFile(QModelIndex indx);
void slotRefresh(AccountState* ptr);
void slotRemoveAccount( AccountState *ptr );
+ void slotAccountWithoutActivityApp(AccountState *ast);
signals:
void guiLog(const QString&, const QString&);
void rowsInserted();
private:
+ void showLabels();
QString timeString(QDateTime dt, QLocale::FormatType format) const;
Ui::ActivityWidget *_ui;
QPushButton *_copyBtn;
+ QSet<QString> _accountsWithoutActivities;
+
ActivityListModel *_model;
};
<widget class="QListView" name="_activityList"/>
</item>
<item row="2" column="0">
+ <widget class="QLabel" name="_bottomLabel">
+ <property name="text">
+ <string>TextLabel</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0">
<widget class="QDialogButtonBox" name="_dialogButtonBox"/>
</item>
</layout>