From bcb704366cb5e333a626c18c308c7e0448a8e69f Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdenetwork@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kopete/protocols/gadu/gaduaway.cpp | 86 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 kopete/protocols/gadu/gaduaway.cpp (limited to 'kopete/protocols/gadu/gaduaway.cpp') diff --git a/kopete/protocols/gadu/gaduaway.cpp b/kopete/protocols/gadu/gaduaway.cpp new file mode 100644 index 00000000..a84fcd0f --- /dev/null +++ b/kopete/protocols/gadu/gaduaway.cpp @@ -0,0 +1,86 @@ +// -*- Mode: c++-mode; c-basic-offset: 2; indent-tabs-mode: t; tab-width: 2; -*- +// +// Copyright (C) 2003 Grzegorz Jaskiewicz +// +// gaduaway.cpp +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +// 02111-1307, USA. + +#include "gaduaccount.h" +#include "gaduprotocol.h" +#include "gaduawayui.h" +#include "gaduaway.h" + +#include "kopeteonlinestatus.h" + +#include +#include + +#include +#include +#include + +#include "gaduawayui.h" +#include "gaduaway.h" + +GaduAway::GaduAway( GaduAccount* account, QWidget* parent, const char* name ) +: KDialogBase( parent, name, true, i18n( "Away Dialog" ), + KDialogBase::Ok | KDialogBase::Cancel, + KDialogBase::Ok, true ), account_( account ) +{ + Kopete::OnlineStatus ks; + int s; + + ui_ = new GaduAwayUI( this ); + setMainWidget( ui_ ); + + ks = account->myself()->onlineStatus(); + s = GaduProtocol::protocol()->statusToWithDescription( ks ); + + if ( s == GG_STATUS_NOT_AVAIL_DESCR ) { + ui_->statusGroup_->find( GG_STATUS_NOT_AVAIL_DESCR )->setDisabled( TRUE ); + ui_->statusGroup_->setButton( GG_STATUS_AVAIL_DESCR ); + } + else { + ui_->statusGroup_->setButton( s ); + } + + ui_->textEdit_->setText( account->myself()->property( "awayMessage" ).value().toString() ); + connect( this, SIGNAL( applyClicked() ), SLOT( slotApply() ) ); +} + +int +GaduAway::status() const +{ + return ui_->statusGroup_->id( ui_->statusGroup_->selected() ); +} + +QString +GaduAway::awayText() const +{ + return ui_->textEdit_->text(); +} + + +void +GaduAway::slotApply() +{ + if ( account_ ) { + account_->changeStatus( GaduProtocol::protocol()->convertStatus( status() ),awayText() ); + } +} + +#include "gaduaway.moc" -- cgit v1.2.1