* [Re]added status indicator and interface from SuSE

git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdelibs@1171725 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
v3.5.13-sru
tpearson 14 years ago
parent dc52555b35
commit c8554ed8c2

@ -13,7 +13,7 @@ libnetworkstatus_la_SOURCES = networkstatuscommon.cpp
libconnectionmanager_la_LIBADD = $(LIB_KDECORE) libconnectionmanager_la_LIBADD = $(LIB_KDECORE)
libconnectionmanager_la_LDFLAGS = $(all_libraries) libconnectionmanager_la_LDFLAGS = $(all_libraries)
libconnectionmanager_la_SOURCES = connectionmanager.cpp connectionmanager.skel clientiface.stub libconnectionmanager_la_SOURCES = connectionmanager.cpp networkstatusindicator.cpp connectionmanager.skel clientiface.stub networkstatusiface.stub
kded_networkstatus_la_SOURCES = networkstatus.cpp networkstatus.skel \ kded_networkstatus_la_SOURCES = networkstatus.cpp networkstatus.skel \
clientiface.skel serviceiface.skel network.cpp clientiface.skel serviceiface.skel network.cpp
@ -27,7 +27,7 @@ services_DATA = networkstatus.desktop
noinst_HEADERS = serviceifaceimpl.h \ noinst_HEADERS = serviceifaceimpl.h \
network.h clientifaceimpl.h testservice.h connectionmanager.h network.h clientifaceimpl.h testservice.h connectionmanager.h
include_HEADERS = serviceiface.h provideriface.h networkstatuscommon.h include_HEADERS = serviceiface.h provideriface.h connectionmanager.h networkstatuscommon.h networkstatusindicator.h networkstatusiface.h
bin_PROGRAMS = networkstatustestservice bin_PROGRAMS = networkstatustestservice

@ -0,0 +1,50 @@
/* This file is part of kdepim.
Copyright (C) 2005,2007 Will Stephenson <wstephenson@kde.org>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License version 2 as published by the Free Software Foundation.
This library 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library. If not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
As a special exception, permission is given to link this library
with any edition of TQt, and distribute the resulting executable,
without including the source code for TQt in the source distribution.
*/
#ifndef KDED_NETWORKSTATUSIFACE_H
#define KDED_NETWORKSTATUSIFACE_H
#include <dcopobject.h>
#include <tqstringlist.h>
#include "networkstatuscommon.h"
class NetworkStatusIface : virtual public DCOPObject
{
K_DCOP
k_dcop:
// Client interface
virtual TQStringList networks() = 0;
virtual int status() = 0;
// Service interface
virtual void setNetworkStatus( const TQString & networkName, int status ) = 0;
virtual void registerNetwork( NetworkStatus::Properties properties ) = 0;
virtual void unregisterNetwork( const TQString & networkName ) = 0 ;
k_dcop_signals:
/**
* A status change occurred affecting the overall connectivity
* @param status The new status
*/
virtual void statusChange( int status ) = 0;
};
#endif
// vim: sw=4 ts=4

@ -0,0 +1,64 @@
/* This file is part of the KDE project
Copyright (C) 2007 Will Stephenson <wstephenson@kde.org>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License version 2 as published by the Free Software Foundation.
This library 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library. If not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
As a special exception, permission is given to link this library
with any edition of TQt, and distribute the resulting executable,
without including the source code for TQt in the source distribution.
*/
#include <tqlabel.h>
#include <tqtooltip.h>
#include <kiconloader.h>
#include <klocale.h>
#include "connectionmanager.h"
#include "networkstatusindicator.h"
StatusBarNetworkStatusIndicator::StatusBarNetworkStatusIndicator(
TQWidget * parent, const char * name ) : TQHBox( parent, name )/*, d( new StatusBarNetworkStatusIndicatorPrivate )*/
{
setMargin( 2 );
setSpacing( 1 );
TQLabel * label = new TQLabel( this, "offlinemodelabel" );
label->setPixmap( SmallIcon("connect_no") );
TQToolTip::add( label, i18n( "The desktop is offline" ) );
connect( ConnectionManager::self(), TQT_SIGNAL( statusChanged( NetworkStatus::EnumStatus ) ),
TQT_SLOT( networkStatusChanged( NetworkStatus::EnumStatus) ) );
}
void StatusBarNetworkStatusIndicator::init()
{
networkStatusChanged( ConnectionManager::self()->status(TQString("")));
}
StatusBarNetworkStatusIndicator::~StatusBarNetworkStatusIndicator()
{
}
void StatusBarNetworkStatusIndicator::networkStatusChanged( NetworkStatus::EnumStatus status )
{
if ( status == NetworkStatus::Online || status == NetworkStatus::NoNetworks ) {
hide();
} else {
show();
}
}
#include "networkstatusindicator.moc"

@ -0,0 +1,42 @@
/* This file is part of the KDE project
Copyright (C) 2007 Will Stephenson <wstephenson@kde.org>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License version 2 as published by the Free Software Foundation.
This library 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library. If not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
As a special exception, permission is given to link this library
with any edition of TQt, and distribute the resulting executable,
without including the source code for TQt in the source distribution.
*/
#ifndef KDE_NETWORKSTATUS_INDICATOR_H
#define KDE_NETWORKSTATUS_INDICATOR_H
#include <tqhbox.h>
#include <kdemacros.h>
#include <networkstatuscommon.h>
class StatusBarNetworkStatusIndicator : public TQHBox
{
Q_OBJECT
public:
StatusBarNetworkStatusIndicator( TQWidget * parent, const char * name );
virtual ~StatusBarNetworkStatusIndicator();
void init();
protected slots:
void networkStatusChanged( NetworkStatus::EnumStatus status );
};
#endif
Loading…
Cancel
Save