[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdenetwork/kopete/protocols/oscar/icq
From: Roman Jarosz <kedgedev () centrum ! cz>
Date: 2008-04-04 19:40:57
Message-ID: 1207338057.407772.16851.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 793679 by rjarosz:
Keep main status (Online/Away/etc.) and invisible flag when user has changed XStatus.
Novel bug 375289.
CCBUG: 159908
M +17 -5 icqaccount.cpp
M +3 -1 icqaccount.h
M +0 -9 xtrazstatus.cpp
M +0 -7 xtrazstatus.h
M +1 -10 xtrazstatusaction.cpp
M +1 -7 xtrazstatusaction.h
--- trunk/KDE/kdenetwork/kopete/protocols/oscar/icq/icqaccount.cpp #793678:793679
@@ -203,8 +203,8 @@
for ( int i = 0; i < xtrazStatusList.count(); i++ )
{
Xtraz::StatusAction* xtrazAction = new Xtraz::StatusAction( xtrazStatusList.at(i), \
xtrazStatusMenu );
- QObject::connect( xtrazAction, SIGNAL(triggered(const Oscar::Presence&, const \
Kopete::StatusMessage&)),
- this, SLOT(setPresenceTarget(const Oscar::Presence&, const \
Kopete::StatusMessage&)) ); + QObject::connect( xtrazAction, SIGNAL(triggered(const \
Xtraz::Status&)), + this, SLOT(setPresenceXStatus(const \
Xtraz::Status&)) ); xtrazStatusMenu->addAction( xtrazAction );
}
@@ -364,13 +364,12 @@
Xtraz::ICQStatusDialog dialog;
if ( dialog.exec() == QDialog::Accepted )
{
- Xtraz::Status status = dialog.xtrazStatus();
- setPresenceTarget( status.presence(), Kopete::StatusMessage(status.description(), \
status.message()) ); + setPresenceXStatus( dialog.xtrazStatus() );
if ( dialog.append() )
{
ICQStatusManager* mgr = static_cast<ICQStatusManager*>( \
protocol()->statusManager() );
- mgr->appendXtrazStatus( status );
+ mgr->appendXtrazStatus( dialog.xtrazStatus() );
}
}
}
@@ -416,7 +415,20 @@
}
}
+void ICQAccount::setPresenceXStatus( const Xtraz::Status &xStatus )
+{
+ Oscar::Presence pres = presence();
+ Oscar::Presence::Flags flags = pres.flags() & ~Oscar::Presence::StatusTypeMask;
+ pres.setFlags( flags | Oscar::Presence::XStatus );
+ pres.setXtrazStatus( xStatus.status() );
+ Kopete::StatusMessage statusMessage;
+ statusMessage.setTitle( xStatus.description() );
+ statusMessage.setMessage( xStatus.message() );
+
+ setPresenceTarget( pres, statusMessage );
+}
+
void ICQAccount::setOnlineStatus( const Kopete::OnlineStatus& status, const \
Kopete::StatusMessage &reason ) {
if ( status.status() == Kopete::OnlineStatus::Invisible )
--- trunk/KDE/kdenetwork/kopete/protocols/oscar/icq/icqaccount.h #793678:793679
@@ -29,6 +29,7 @@
class KToggleAction;
namespace Kopete { class StatusMessage; }
+namespace Xtraz { class Status; }
class ICQProtocol;
class ICQAccount;
class ICQUserInfoWidget;
@@ -87,7 +88,8 @@
private slots:
void setPresenceTarget( const Oscar::Presence &presence, const \
Kopete::StatusMessage &reason = Kopete::StatusMessage() );
-
+ void setPresenceXStatus( const Xtraz::Status &xStatus );
+
void slotToggleInvisible();
void slotUserInfo();
--- trunk/KDE/kdenetwork/kopete/protocols/oscar/icq/xtrazstatus.cpp #793678:793679
@@ -16,8 +16,6 @@
#include "xtrazstatus.h"
-#include "oscarpresence.h"
-
namespace Xtraz {
Status::Status()
@@ -45,11 +43,4 @@
mMessage = message;
}
-Oscar::Presence Status::presence() const
-{
- Oscar::Presence presence( Oscar::Presence::Online, Oscar::Presence::XStatus );
- presence.setXtrazStatus( mStatus );
- return presence;
}
-
-}
--- trunk/KDE/kdenetwork/kopete/protocols/oscar/icq/xtrazstatus.h #793678:793679
@@ -19,11 +19,6 @@
#include <QString>
-namespace Oscar
-{
-class Presence;
-}
-
namespace Xtraz
{
@@ -42,8 +37,6 @@
void setMessage( const QString& message );
QString message() const { return mMessage; }
- Oscar::Presence presence() const;
-
private:
int mStatus;
QString mDescription;
--- trunk/KDE/kdenetwork/kopete/protocols/oscar/icq/xtrazstatusaction.cpp \
#793678:793679 @@ -16,8 +16,6 @@
#include "xtrazstatusaction.h"
-#include <kopetestatusmessage.h>
-
namespace Xtraz
{
@@ -34,14 +32,7 @@
void StatusAction::triggered()
{
- Oscar::Presence presence( Oscar::Presence::Online, Oscar::Presence::XStatus );
- presence.setXtrazStatus( mStatus.status() );
-
- Kopete::StatusMessage statusMessage;
- statusMessage.setTitle( mStatus.description() );
- statusMessage.setMessage( mStatus.message() );
-
- emit triggered( presence, statusMessage );
+ emit triggered( mStatus );
}
}
--- trunk/KDE/kdenetwork/kopete/protocols/oscar/icq/xtrazstatusaction.h \
#793678:793679 @@ -19,14 +19,8 @@
#include <kaction.h>
-#include "oscarpresence.h"
#include "xtrazstatus.h"
-namespace Kopete
-{
- class StatusMessage;
-}
-
namespace Xtraz
{
@@ -40,7 +34,7 @@
void triggered();
signals:
- void triggered( const Oscar::Presence &presence, const Kopete::StatusMessage \
&reason ); + void triggered( const Xtraz::Status &status );
private:
Xtraz::Status mStatus;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic