[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kopete-devel
Subject:    [kopete-devel] for review:
From:       Will Stephenson <wstephenson () kde ! org>
Date:       2007-10-25 11:38:16
Message-ID: 200710251338.16479.wstephenson () kde ! org
[Download RAW message or body]

Sorry folks, here's a couple of fixes to the account config patch resulting 
from my mergy of my first patch with Dennis'.  Adding and removing identities 
wasn't persisting...

Will

["kopete_fix_account_mgmt.diff" (text/x-diff)]

Index: kopete/kopete/config/accounts/kopeteaccountconfig.h
===================================================================
--- kopete/kopete/config/accounts/kopeteaccountconfig.h	(revision 728988)
+++ kopete/kopete/config/accounts/kopeteaccountconfig.h	(working copy)
@@ -68,8 +68,6 @@
 
 	void modifyAccount(Kopete::Account *);
 	void modifyIdentity(Kopete::Identity *);
-	void removeAccount(KopeteAccountLVI *);
-	void removeIdentity(KopeteIdentityLVI *);
 	bool m_protected;
 	KMenu *m_identityContextMenu;
 	KMenu *m_accountContextMenu;
@@ -89,11 +87,11 @@
 	void slotModify();
 
 	void slotAddAccount();
-	void slotRemoveAccount();
+	void removeAccount();
 	void slotAccountSwitchIdentity();
 
 	void slotAddIdentity();
-	void slotRemoveIdentity();
+	void removeIdentity();
 	void slotSetDefaultIdentity();
 
 	void slotCopyIdentity();
Index: kopete/kopete/config/accounts/kopeteaccountconfig.cpp
===================================================================
--- kopete/kopete/config/accounts/kopeteaccountconfig.cpp	(revision 728988)
+++ kopete/kopete/config/accounts/kopeteaccountconfig.cpp	(working copy)
@@ -105,7 +105,7 @@
 {
 	QList<QTreeWidgetItem*> selectedItems = mAccountList->selectedItems();
 	if(!selectedItems.empty())
- 		return dynamic_cast<KopeteAccountLVI*>( selectedItems.first() );
+		return dynamic_cast<KopeteAccountLVI*>( selectedItems.first() );
 	return 0;
 }
 
@@ -113,7 +113,7 @@
 {
 	QList<QTreeWidgetItem*> selectedItems = mAccountList->selectedItems();
 	if(!selectedItems.empty())
- 		return dynamic_cast<KopeteIdentityLVI*>( selectedItems.first() );
+		return dynamic_cast<KopeteIdentityLVI*>( selectedItems.first() );
 	return 0;
 }
 
@@ -287,64 +287,55 @@
 	Kopete::IdentityManager::self()->save();
 }
 
-void KopeteAccountConfig::slotRemoveAccount()
+void KopeteAccountConfig::removeAccount()
 {
-	KopeteAccountLVI *alvi = selectedAccount();
+	KopeteAccountLVI *lvi = selectedAccount();
 	
-	if ( alvi && alvi->account() )
-		return removeAccount( alvi );
-}	
-
-void KopeteAccountConfig::slotRemoveIdentity()
-{
-	KopeteIdentityLVI *ilvi = selectedIdentity();
-	
-	if ( ilvi && ilvi->identity() )
-		return removeIdentity( ilvi );
-}
-
-void KopeteAccountConfig::removeAccount(KopeteAccountLVI *lvi)
-{
-	Kopete::Account *i = lvi->account();
-	if ( KMessageBox::warningContinueCancel( this, i18n( "Are you sure you want to \
                remove the account \"%1\"?", i->accountLabel() ),
-		i18n( "Remove Account" ), KGuiItem(i18n( "Remove Account" ), "edit-delete"), \
                KStandardGuiItem::cancel(),
-		 "askRemoveAccount", KMessageBox::Notify | KMessageBox::Dangerous ) == \
                KMessageBox::Continue )
-	{
-		Kopete::AccountManager::self()->removeAccount( i );
-		delete lvi;
+	if ( lvi && lvi->account() ) {
+		Kopete::Account *i = lvi->account();
+		if ( KMessageBox::warningContinueCancel( this, i18n( "Are you sure you want to \
remove the account \"%1\"?", i->accountLabel() ), +					i18n( "Remove Account" ), \
KGuiItem(i18n( "Remove Account" ), "edit-delete"), KStandardGuiItem::cancel(), \
+					"askRemoveAccount", KMessageBox::Notify | KMessageBox::Dangerous ) == \
KMessageBox::Continue ) +		{
+			Kopete::AccountManager::self()->removeAccount( i );
+			delete lvi;
+		}
 	}
 }
 
-void KopeteAccountConfig::removeIdentity(KopeteIdentityLVI *lvi)
+void KopeteAccountConfig::removeIdentity()
 {
-	Kopete::Identity *i = lvi->identity();
-
-	if (!i->accounts().count())
-	{
-		if ( KMessageBox::warningContinueCancel( this, i18n( "Are you sure you want to \
                remove the identity \"%1\"?", i->label() ),
-			 i18n( "Remove Identity" ), KGuiItem(i18n( "Remove Identity" ), "edit-delete"), \
                KStandardGuiItem::cancel(),
-				   "askRemoveIdentity", KMessageBox::Notify | KMessageBox::Dangerous ) == \
KMessageBox::Continue ) +	KopeteIdentityLVI *lvi = selectedIdentity();
+	Kopete::Identity *i;
+	
+	if ( lvi && ( i = lvi->identity() ) ) {
+		if (!i->accounts().count())
 		{
-			Kopete::IdentityManager::self()->removeIdentity( i );
-			delete lvi;
+			if ( KMessageBox::warningContinueCancel( this, i18n( "Are you sure you want to \
remove the identity \"%1\"?", i->label() ), +						i18n( "Remove Identity" ), \
KGuiItem(i18n( "Remove Identity" ), "edit-delete"), KStandardGuiItem::cancel(), \
+						"askRemoveIdentity", KMessageBox::Notify | KMessageBox::Dangerous ) == \
KMessageBox::Continue ) +			{
+				Kopete::IdentityManager::self()->removeIdentity( i );
+				delete lvi;
+			}
 		}
-	}
-	else
-	{
-		// if there are any accounts linked to this identity, need to change them before \
                removing the identity
-		if ( AccountIdentityDialog::changeAccountIdentity( this, i->accounts(), i, 
-			 i18n("Before removing the identity %1, the following accounts must be" 
-					 "assigned to another identity:", i->label())) )
+		else
 		{
-			Kopete::IdentityManager::self()->removeIdentity( i );
-			delete lvi;
+			// if there are any accounts linked to this identity, need to change them before \
removing the identity +			if ( AccountIdentityDialog::changeAccountIdentity( this, \
i->accounts(), i,  +						i18n("Before removing the identity %1, the following \
accounts must be"  +							"assigned to another identity:", i->label())) )
+			{
+				Kopete::IdentityManager::self()->removeIdentity( i );
+				delete lvi;
+			}
 		}
+		// if we removed the default identity, this will trigger an update
+		Kopete::IdentityManager::self()->defaultIdentity();
+		save();
+		// To be sure that accounts with relocated identities appear, reload
+		load();
 	}
-	// if we removed the default identity, this will trigger an update
-	Kopete::IdentityManager::self()->defaultIdentity();
-	save();
-	// To be sure that accounts with relocated identities appear, reload
-	load();
 }
 
 void KopeteAccountConfig::slotAccountSwitchIdentity()
@@ -393,9 +384,8 @@
 	if ( dialog.exec() == QDialog::Accepted ) {
 		ident = Kopete::IdentityManager::self()->registerIdentity(ident);
 		if (ident) {
+			Kopete::IdentityManager::self()->save();
 			load();
-		} else {
-			delete ident;
 		}
 	} else {
 		delete ident;
@@ -506,69 +496,67 @@
 	m_actionAccountAdd->setIcon( KIcon("edit-add") );
 	mButtonAccountAdd->setIcon( m_actionAccountAdd->icon() );
 	mButtonAccountAdd->setText( m_actionAccountAdd->text() );
-	connect( m_actionAccountAdd, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
                slotAddAccount() ) );
-	connect( mButtonAccountAdd, SIGNAL( clicked() ), m_actionAccountAdd, SLOT( \
trigger() ) ); +	connect( m_actionAccountAdd, SIGNAL(triggered(bool)), this, \
SLOT(slotAddAccount()) ); +	connect( mButtonAccountAdd, SIGNAL(clicked()), \
m_actionAccountAdd, SLOT(trigger()) );  
 	// Modify account
 	m_actionAccountModify = new KAction( i18n( "&Modify Account..." ), this );
 	m_actionAccountModify->setIcon( KIcon("configure") );
 	mButtonAccountModify->setIcon( m_actionAccountModify->icon() );
 	mButtonAccountModify->setText( m_actionAccountModify->text() );
-	connect( m_actionAccountModify, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
                slotModify() ) );
-	connect( mButtonAccountModify, SIGNAL( clicked() ), m_actionAccountModify, SLOT( \
                trigger() ) );
-
+	connect( m_actionAccountModify, SIGNAL(triggered(bool)), this, SLOT(slotModify()));
 	// Remove account
 	m_actionAccountRemove = new KAction( i18n( "&Remove Account" ), this );
 	m_actionAccountRemove->setIcon( KIcon("edit-delete") );
 	m_actionAccountRemove->setShortcut(KShortcut(Qt::Key_Delete));
 	mButtonAccountRemove->setIcon( m_actionAccountRemove->icon() );
 	mButtonAccountRemove->setText( m_actionAccountRemove->text() );
-	connect( m_actionAccountRemove, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
                slotRemoveAccount() ) );
-	connect( mButtonAccountRemove, SIGNAL( clicked() ), m_actionAccountRemove, SLOT( \
trigger() ) ); +	connect( m_actionAccountRemove, SIGNAL(triggered(bool)), this, \
SLOT(removeAccount()) ); +	connect( mButtonAccountRemove, SIGNAL(clicked()), \
m_actionAccountRemove, SLOT(trigger()) );  
 	// Switch identity for an account
 	m_actionAccountSwitchIdentity = new KAction( i18n( "&Switch Identity..." ), this );
 	mButtonAccountSwitchIdentity->setText( m_actionAccountSwitchIdentity->text() );
-	connect( m_actionAccountSwitchIdentity, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
                slotAccountSwitchIdentity() ) );
-	connect( mButtonAccountSwitchIdentity, SIGNAL( clicked() ), \
m_actionAccountSwitchIdentity, SLOT( trigger() ) ); +	connect( \
m_actionAccountSwitchIdentity, SIGNAL(triggered(bool)), this, \
SLOT(slotAccountSwitchIdentity()) ); +	connect( mButtonAccountSwitchIdentity, \
SIGNAL(clicked()), m_actionAccountSwitchIdentity, SLOT(trigger()) );  
 	// Add identity
 	m_actionIdentityAdd = new KAction( i18n( "Add &Identity..." ), this );
 	m_actionIdentityAdd->setIcon( KIcon("edit-add") );
 	mButtonIdentityAdd->setIcon( m_actionIdentityAdd->icon() );
 	mButtonIdentityAdd->setText( m_actionIdentityAdd->text() );
-	connect ( m_actionIdentityAdd, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
                slotAddIdentity() ) );
-	connect( mButtonIdentityAdd, SIGNAL( clicked() ), m_actionIdentityAdd, SLOT( \
trigger() ) ); +	connect( m_actionIdentityAdd, SIGNAL(triggered(bool)), this, \
SLOT(slotAddIdentity()) ); +	connect( mButtonIdentityAdd, SIGNAL(clicked()), \
m_actionIdentityAdd, SLOT(trigger()) );  
 	// Copy identity
 	m_actionIdentityCopy = new KAction( i18n( "&Copy Identity..." ), this );
 	m_actionIdentityCopy->setIcon( KIcon("edit-copy") );
 	mButtonIdentityCopy->setIcon( m_actionIdentityCopy->icon() );
 	mButtonIdentityCopy->setText( m_actionIdentityCopy->text() );
-	connect ( m_actionIdentityCopy, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
                slotCopyIdentity() ) );
-	connect( mButtonIdentityCopy, SIGNAL( clicked() ), m_actionIdentityCopy, SLOT( \
trigger() ) ); +	connect( m_actionIdentityCopy, SIGNAL(triggered(bool)), this, \
SLOT(slotCopyIdentity()) ); +	connect( mButtonIdentityCopy, SIGNAL(clicked()), \
m_actionIdentityCopy, SLOT(trigger()) );  
 	// Modify identity
 	m_actionIdentityModify = new KAction( i18n( "M&odify Identity..." ), this );
 	m_actionIdentityModify->setIcon( KIcon("configure") );
 	mButtonIdentityModify->setIcon( m_actionIdentityModify->icon() );
 	mButtonIdentityModify->setText( m_actionIdentityModify->text() );
-	connect ( m_actionIdentityModify, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
                slotModify() ) );
-	connect( mButtonIdentityModify, SIGNAL( clicked() ), m_actionIdentityModify, SLOT( \
trigger() ) ); +	connect( m_actionIdentityModify, SIGNAL(triggered(bool)), this, \
SLOT(slotModify()) ); +	connect( mButtonIdentityModify, SIGNAL(clicked()), \
m_actionIdentityModify, SLOT(trigger()) );  
 	// Remove identity
 	m_actionIdentityRemove = new KAction( i18n( "R&emove Identity" ), this );
 	m_actionIdentityRemove->setIcon( KIcon("edit-delete") );
 	mButtonIdentityRemove->setIcon( m_actionIdentityRemove->icon() );
 	mButtonIdentityRemove->setText( m_actionIdentityRemove->text() );
-	connect ( m_actionIdentityRemove, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
                slotRemoveIdentity() ) );
-	connect( mButtonIdentityRemove, SIGNAL( clicked() ), m_actionIdentityRemove, SLOT( \
trigger() ) ); +	connect( m_actionIdentityRemove, SIGNAL(triggered(bool)), this, \
SLOT(removeIdentity()) ); +	connect( mButtonIdentityRemove, SIGNAL(clicked()), \
m_actionIdentityRemove, SLOT(trigger()) );  
 	// Switch identity for an identity
 	m_actionIdentitySetDefault = new KAction( i18n( "Set &Default" ), this );
 	mButtonIdentitySetDefault->setText( m_actionIdentitySetDefault->text() );
-	connect ( m_actionIdentitySetDefault, SIGNAL ( triggered ( bool ) ), this, SLOT ( \
                slotSetDefaultIdentity() ) );
-	connect( mButtonIdentitySetDefault, SIGNAL( clicked() ), \
m_actionIdentitySetDefault, SLOT( trigger() ) ); +	connect( \
m_actionIdentitySetDefault, SIGNAL(triggered(bool)), this, \
SLOT(slotSetDefaultIdentity()) ); +	connect( mButtonIdentitySetDefault, \
SIGNAL(clicked()), m_actionIdentitySetDefault, SLOT(trigger()) );  }
 
 void KopeteAccountConfig::configureMenus()



_______________________________________________
kopete-devel mailing list
kopete-devel@kde.org
https://mail.kde.org/mailman/listinfo/kopete-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic