[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdepim/akregator/src
From: Frank Osterfeld <frank.osterfeld () kdemail ! net>
Date: 2008-03-23 23:43:20
Message-ID: 1206315800.626458.23092.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 789340 by osterfeld:
add EditSubscriptionCommand
M +1 -0 CMakeLists.txt
M +4 -9 deletesubscriptioncommand.cpp
A editsubscriptioncommand.cpp [License: GPL (v2+) (+Qt exception)]
A editsubscriptioncommand.h [License: GPL (v2+) (+Qt exception)]
M +9 -30 mainwidget.cpp
M +0 -4 mainwidget.h
--- trunk/KDE/kdepim/akregator/src/CMakeLists.txt #789339:789340
@@ -77,6 +77,7 @@
articleviewer.cpp
articleformatter.cpp
addfeeddialog.cpp
+ editsubscriptioncommand.cpp
feedpropertiesdialog.cpp
tabwidget.cpp
progressmanager.cpp
--- trunk/KDE/kdepim/akregator/src/deletesubscriptioncommand.cpp #789339:789340
@@ -43,7 +43,7 @@
class DeleteNodeVisitor : public TreeNodeVisitor
{
public:
- DeleteNodeVisitor() : m_widget( 0 ), m_job( 0 ) {}
+ explicit DeleteNodeVisitor( QWidget* parent ) : m_widget( parent ), m_job( 0 \
) {}
bool visitFolder( Folder* node )
@@ -87,8 +87,6 @@
}
- void setWidget( QWidget* widget ) { m_widget = widget; }
-
DeleteSubscriptionJob* createJob( TreeNode* node )
{
m_job = 0;
@@ -124,20 +122,17 @@
FeedList* m_list;
int m_subscriptionId;
- DeleteNodeVisitor* m_visitor;
};
DeleteSubscriptionCommand::Private::Private( DeleteSubscriptionCommand* qq ) : q( qq \
),
\
m_list( 0 ),
- \
m_subscriptionId( -1 ),
- \
m_visitor( new DeleteNodeVisitor ) + \
m_subscriptionId( -1 ) {
}
DeleteSubscriptionCommand::Private::~Private()
{
- delete m_visitor;
}
DeleteSubscriptionCommand::DeleteSubscriptionCommand( QObject* parent ) : Command( \
parent ), d( new Private( this ) ) @@ -177,9 +172,9 @@
void DeleteSubscriptionCommand::Private::startDelete()
{
- m_visitor->setWidget( q->parentWidget() );
TreeNode* const node = m_list->findByID( m_subscriptionId );
- DeleteSubscriptionJob* job = m_visitor->createJob( node );
+ DeleteNodeVisitor visitor( q->parentWidget() );
+ DeleteSubscriptionJob* job = visitor.createJob( node );
if ( !job )
{
q->done();
--- trunk/KDE/kdepim/akregator/src/mainwidget.cpp #789339:789340
@@ -34,6 +34,7 @@
#include "akregator_part.h"
#include "browserframe.h"
#include "deletesubscriptioncommand.h"
+#include "editsubscriptioncommand.h"
#include "feed.h"
#include "feedlist.h"
#include "feedpropertiesdialog.h"
@@ -85,30 +86,6 @@
using namespace Akregator;
using namespace Solid;
-class Akregator::MainWidget::EditNodePropertiesVisitor : public TreeNodeVisitor
-{
- public:
- EditNodePropertiesVisitor(MainWidget* mainWidget) : m_mainWidget(mainWidget) \
{}
-
- virtual bool visitFolder(Folder* node)
- {
- m_mainWidget->m_feedListView->startNodeRenaming(node);
- return true;
- }
-
- virtual bool visitFeed(Feed* node)
- {
- QPointer<FeedPropertiesDialog> dlg = new FeedPropertiesDialog( \
m_mainWidget, "edit_feed" );
- dlg->setFeed(node);
- dlg->exec();
- delete dlg;
- return true;
- }
- private:
-
- MainWidget* m_mainWidget;
-};
-
Akregator::MainWidget::~MainWidget()
{
// if m_shuttingDown is false, slotOnShutdown was not called. That
@@ -122,7 +99,6 @@
: QWidget(parent), m_feedList( 0 ), m_viewMode(NormalView), \
m_actionManager(actionManager) {
setObjectName(name);
- m_editNodePropertiesVisitor = new EditNodePropertiesVisitor(this);
m_actionManager->initMainWidget(this);
m_actionManager->initFrameManager(Kernel::self()->frameManager());
@@ -323,7 +299,6 @@
delete m_mainTab;
delete m_mainFrame;
- delete m_editNodePropertiesVisitor;
Settings::self()->writeConfig();
}
@@ -765,10 +740,14 @@
void Akregator::MainWidget::slotFeedModify()
{
- TreeNode* node = m_selectionController->selectedSubscription();
- if (node)
- m_editNodePropertiesVisitor->visit(node);
-
+ TreeNode* const node = m_selectionController->selectedSubscription();
+ if ( !node )
+ return;
+ EditSubscriptionCommand* cmd = new EditSubscriptionCommand( this );
+ cmd->setParentWidget( this );
+ cmd->setSubscription( m_feedList, node->id() );
+ cmd->setSubscriptionListView( m_feedListView );
+ cmd->start();
}
void Akregator::MainWidget::slotNextUnreadArticle()
--- trunk/KDE/kdepim/akregator/src/mainwidget.h #789339:789340
@@ -262,10 +262,6 @@
bool m_displayingAboutPage;
ActionManagerImpl* m_actionManager;
-
- friend class EditNodePropertiesVisitor;
- class EditNodePropertiesVisitor;
- EditNodePropertiesVisitor* m_editNodePropertiesVisitor;
};
} // namespace Akregator
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic