Work and adding/editing feeds.
This commit is contained in:
parent
75ea2a6e38
commit
45414e9949
@ -263,6 +263,16 @@ bool FeedsModel::editStandardCategory(FeedsModelStandardCategory *original_categ
|
||||
return true;
|
||||
}
|
||||
|
||||
bool FeedsModel::addStandardFeed(FeedsModelStandardFeed *feed,
|
||||
FeedsModelRootItem *parent) {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool FeedsModel::editStandardFeed(FeedsModelStandardFeed *original_feed,
|
||||
FeedsModelStandardFeed *new_feed) {
|
||||
return false;
|
||||
}
|
||||
|
||||
QList<Message> FeedsModel::messagesForFeeds(const QList<FeedsModelFeed*> &feeds) {
|
||||
QList<Message> messages;
|
||||
|
||||
|
@ -57,11 +57,10 @@ class FeedsModel : public QAbstractItemModel {
|
||||
FeedsModelStandardCategory *new_category);
|
||||
|
||||
// Standard feed manipulators.
|
||||
/*
|
||||
bool addStandardFeed(FeedsModelStandardFeed *feed,
|
||||
FeedsModelRootItem *parent);
|
||||
bool removeStandardFeed(FeedsModelStandardFeed *feed);
|
||||
*/
|
||||
bool editStandardFeed(FeedsModelStandardFeed *original_feed,
|
||||
FeedsModelStandardFeed *new_feed);
|
||||
|
||||
// Returns (undeleted) messages for given feeds.
|
||||
QList<Message> messagesForFeeds(const QList<FeedsModelFeed*> &feeds);
|
||||
|
@ -207,9 +207,9 @@ void FeedMessageViewer::createConnections() {
|
||||
SIGNAL(triggered()), m_messagesView, SLOT(openSelectedMessagesInternally()));
|
||||
connect(FormMain::instance()->m_ui->m_actionMarkAllFeedsRead,
|
||||
SIGNAL(triggered()), m_feedsView, SLOT(markAllFeedsRead()));
|
||||
connect(FormMain::instance()->m_ui->m_actionMarkFeedsAsRead,
|
||||
connect(FormMain::instance()->m_ui->m_actionMarkSelectedFeedsAsRead,
|
||||
SIGNAL(triggered()), m_feedsView, SLOT(markSelectedFeedsRead()));
|
||||
connect(FormMain::instance()->m_ui->m_actionMarkFeedsAsUnread,
|
||||
connect(FormMain::instance()->m_ui->m_actionMarkSelectedFeedsAsUnread,
|
||||
SIGNAL(triggered()), m_feedsView, SLOT(markSelectedFeedsUnread()));
|
||||
connect(FormMain::instance()->m_ui->m_actionClearFeeds,
|
||||
SIGNAL(triggered()), m_feedsView, SLOT(clearSelectedFeeds()));
|
||||
@ -244,8 +244,8 @@ void FeedMessageViewer::initialize() {
|
||||
m_toolBar->addAction(FormMain::instance()->m_ui->m_actionEditSelectedFeedCategory);
|
||||
m_toolBar->addAction(FormMain::instance()->m_ui->m_actionDeleteSelectedFeedCategory);
|
||||
m_toolBar->addSeparator();
|
||||
m_toolBar->addAction(FormMain::instance()->m_ui->m_actionMarkFeedsAsRead);
|
||||
m_toolBar->addAction(FormMain::instance()->m_ui->m_actionMarkFeedsAsUnread);
|
||||
m_toolBar->addAction(FormMain::instance()->m_ui->m_actionMarkSelectedFeedsAsRead);
|
||||
m_toolBar->addAction(FormMain::instance()->m_ui->m_actionMarkSelectedFeedsAsUnread);
|
||||
m_toolBar->addAction(FormMain::instance()->m_ui->m_actionClearFeeds);
|
||||
|
||||
// Finish web/message browser setup.
|
||||
|
@ -360,8 +360,8 @@ void FeedsView::initializeContextMenuCategoriesFeeds() {
|
||||
m_contextMenuCategoriesFeeds->addActions(QList<QAction*>() <<
|
||||
FormMain::instance()->m_ui->m_actionUpdateSelectedFeedsCategories <<
|
||||
FormMain::instance()->m_ui->m_actionViewSelectedItemsNewspaperMode <<
|
||||
FormMain::instance()->m_ui->m_actionMarkFeedsAsRead <<
|
||||
FormMain::instance()->m_ui->m_actionMarkFeedsAsUnread);
|
||||
FormMain::instance()->m_ui->m_actionMarkSelectedFeedsAsRead <<
|
||||
FormMain::instance()->m_ui->m_actionMarkSelectedFeedsAsUnread);
|
||||
}
|
||||
|
||||
void FeedsView::initializeContextMenuEmptySpace() {
|
||||
|
@ -71,8 +71,8 @@ QList<QAction*> FormMain::allActions() {
|
||||
actions << m_ui->m_actionOpenSelectedSourceArticlesExternally <<
|
||||
m_ui->m_actionOpenSelectedSourceArticlesInternally <<
|
||||
m_ui->m_actionOpenSelectedMessagesInternally <<
|
||||
m_ui->m_actionMarkFeedsAsRead <<
|
||||
m_ui->m_actionMarkFeedsAsUnread <<
|
||||
m_ui->m_actionMarkSelectedFeedsAsRead <<
|
||||
m_ui->m_actionMarkSelectedFeedsAsUnread <<
|
||||
m_ui->m_actionClearFeeds <<
|
||||
m_ui->m_actionMarkSelectedMessagesAsRead <<
|
||||
m_ui->m_actionMarkSelectedMessagesAsUnread <<
|
||||
@ -97,6 +97,7 @@ void FormMain::prepareMenus() {
|
||||
|
||||
// Add needed items to the menu.
|
||||
m_trayMenu->addAction(m_ui->m_actionUpdateAllFeeds);
|
||||
m_trayMenu->addAction(m_ui->m_actionMarkAllFeedsRead);
|
||||
m_trayMenu->addSeparator();
|
||||
m_trayMenu->addAction(m_ui->m_actionSettings);
|
||||
m_trayMenu->addAction(m_ui->m_actionQuit);
|
||||
@ -214,6 +215,7 @@ void FormMain::setupIcons() {
|
||||
m_ui->m_menuCurrentTab->setIcon(IconThemeFactory::instance()->fromTheme("go-home"));
|
||||
|
||||
// Feeds/messages.
|
||||
m_ui->m_menuAddItem->setIcon(IconThemeFactory::instance()->fromTheme("document-new"));
|
||||
m_ui->m_actionUpdateAllFeeds->setIcon(IconThemeFactory::instance()->fromTheme("document-save-as"));
|
||||
m_ui->m_actionUpdateSelectedFeedsCategories->setIcon(IconThemeFactory::instance()->fromTheme("document-save"));
|
||||
m_ui->m_actionClearFeeds->setIcon(IconThemeFactory::instance()->fromTheme("mail-mark-junk"));
|
||||
@ -223,9 +225,8 @@ void FormMain::setupIcons() {
|
||||
m_ui->m_actionAddStandardFeed->setIcon(IconThemeFactory::instance()->fromTheme("document-new"));
|
||||
m_ui->m_actionEditSelectedFeedCategory->setIcon(IconThemeFactory::instance()->fromTheme("gnome-other"));
|
||||
m_ui->m_actionMarkAllFeedsRead->setIcon(IconThemeFactory::instance()->fromTheme("mail-mark-not-junk"));
|
||||
m_ui->m_actionMarkFeedsAsRead->setIcon(IconThemeFactory::instance()->fromTheme("mail-mark-not-junk"));
|
||||
m_ui->m_actionMarkFeedsAsUnread->setIcon(IconThemeFactory::instance()->fromTheme("mail-mark-important"));
|
||||
m_ui->m_actionMarkFeedsAsRead->setIcon(IconThemeFactory::instance()->fromTheme("mail-mark-not-junk"));
|
||||
m_ui->m_actionMarkSelectedFeedsAsRead->setIcon(IconThemeFactory::instance()->fromTheme("mail-mark-not-junk"));
|
||||
m_ui->m_actionMarkSelectedFeedsAsUnread->setIcon(IconThemeFactory::instance()->fromTheme("mail-mark-important"));
|
||||
m_ui->m_actionMarkSelectedMessagesAsRead->setIcon(IconThemeFactory::instance()->fromTheme("mail-mark-not-junk"));
|
||||
m_ui->m_actionMarkSelectedMessagesAsUnread->setIcon(IconThemeFactory::instance()->fromTheme("mail-mark-important"));
|
||||
m_ui->m_actionSwitchImportanceOfSelectedMessages->setIcon(IconThemeFactory::instance()->fromTheme("favorites"));
|
||||
|
@ -94,18 +94,24 @@
|
||||
<property name="title">
|
||||
<string>Fee&ds && categories</string>
|
||||
</property>
|
||||
<widget class="QMenu" name="m_menuAddItem">
|
||||
<property name="title">
|
||||
<string>Add new item</string>
|
||||
</property>
|
||||
<addaction name="m_actionAddStandardCategory"/>
|
||||
<addaction name="m_actionAddStandardFeed"/>
|
||||
</widget>
|
||||
<addaction name="m_actionUpdateAllFeeds"/>
|
||||
<addaction name="m_actionUpdateSelectedFeedsCategories"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="m_actionAddStandardFeed"/>
|
||||
<addaction name="m_actionAddStandardCategory"/>
|
||||
<addaction name="m_menuAddItem"/>
|
||||
<addaction name="m_actionEditSelectedFeedCategory"/>
|
||||
<addaction name="m_actionDeleteSelectedFeedCategory"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="m_actionViewSelectedItemsNewspaperMode"/>
|
||||
<addaction name="m_actionMarkAllFeedsRead"/>
|
||||
<addaction name="m_actionMarkFeedsAsRead"/>
|
||||
<addaction name="m_actionMarkFeedsAsUnread"/>
|
||||
<addaction name="m_actionMarkSelectedFeedsAsRead"/>
|
||||
<addaction name="m_actionMarkSelectedFeedsAsUnread"/>
|
||||
<addaction name="m_actionClearFeeds"/>
|
||||
</widget>
|
||||
<widget class="QMenu" name="m_menuMessages">
|
||||
@ -292,7 +298,7 @@
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
</action>
|
||||
<action name="m_actionMarkFeedsAsRead">
|
||||
<action name="m_actionMarkSelectedFeedsAsRead">
|
||||
<property name="text">
|
||||
<string>Mark &selected items read</string>
|
||||
</property>
|
||||
@ -300,7 +306,7 @@
|
||||
<string>Mark all messages (without message filters) from selected feeds as read.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="m_actionMarkFeedsAsUnread">
|
||||
<action name="m_actionMarkSelectedFeedsAsUnread">
|
||||
<property name="text">
|
||||
<string>Mark selected items unread</string>
|
||||
</property>
|
||||
@ -326,10 +332,10 @@
|
||||
</action>
|
||||
<action name="m_actionAddStandardFeed">
|
||||
<property name="text">
|
||||
<string>Add new standard &feed</string>
|
||||
<string>Standard &feed</string>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Add new feed.</string>
|
||||
<string>Add new standard feed.</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="m_actionOpenSelectedSourceArticlesExternally">
|
||||
@ -367,7 +373,7 @@
|
||||
</action>
|
||||
<action name="m_actionAddStandardCategory">
|
||||
<property name="text">
|
||||
<string>Add new standard &category</string>
|
||||
<string>Standard &category</string>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Add new standard category.</string>
|
||||
|
@ -133,8 +133,37 @@ void FormStandardFeedDetails::onUseDefaultIcon() {
|
||||
m_ui->m_btnIcon->setIcon(IconThemeFactory::instance()->fromTheme("application-rss+xml"));
|
||||
}
|
||||
|
||||
void FormStandardFeedDetails::apply() {
|
||||
FeedsModelRootItem *parent = static_cast<FeedsModelRootItem*>(m_ui->m_cmbParentCategory->itemData(m_ui->m_cmbParentCategory->currentIndex()).value<void*>());
|
||||
FeedsModelStandardFeed *new_feed = new FeedsModelStandardFeed();
|
||||
|
||||
// TODO: Setup data for new_feed.
|
||||
|
||||
if (m_editableFeed == NULL) {
|
||||
// TODO: Add the feed.
|
||||
// Add the category.
|
||||
if (m_feedsModel->addStandardFeed(new_feed, parent)) {
|
||||
accept();
|
||||
}
|
||||
else {
|
||||
// TODO: hlasit chybu
|
||||
}
|
||||
}
|
||||
else {
|
||||
// TODO: Edit the feed.
|
||||
if (m_feedsModel->editStandardFeed(m_editableFeed, new_feed)) {
|
||||
accept();
|
||||
}
|
||||
else {
|
||||
// TODO: hlasit chybu
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void FormStandardFeedDetails::createConnections() {
|
||||
// General connections.
|
||||
connect(m_ui->m_buttonBox, SIGNAL(accepted()),
|
||||
this, SLOT(apply()));
|
||||
connect(m_ui->m_txtTitle->lineEdit(), SIGNAL(textChanged(QString)),
|
||||
this, SLOT(onTitleChanged(QString)));
|
||||
connect(m_ui->m_txtDescription->lineEdit(), SIGNAL(textChanged(QString)),
|
||||
|
@ -28,11 +28,15 @@ class FormStandardFeedDetails : public QDialog {
|
||||
int exec(FeedsModelStandardFeed *input_feed);
|
||||
|
||||
protected slots:
|
||||
// Applies changes.
|
||||
void apply();
|
||||
|
||||
// Trigerred when title/description/url changes.
|
||||
void onTitleChanged(const QString &new_title);
|
||||
void onDescriptionChanged(const QString &new_description);
|
||||
void onUrlChanged(const QString &new_url);
|
||||
|
||||
// Check if "OK" button can be enabled or not.
|
||||
void checkOkButtonEnabled();
|
||||
|
||||
// Icon selectors.
|
||||
|
@ -174,22 +174,6 @@
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>m_buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>FormStandardFeedDetails</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>248</x>
|
||||
<y>254</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>m_buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
|
Loading…
x
Reference in New Issue
Block a user