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 --- wifi/kcmwifi/mainconfig.cpp | 108 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 wifi/kcmwifi/mainconfig.cpp (limited to 'wifi/kcmwifi/mainconfig.cpp') diff --git a/wifi/kcmwifi/mainconfig.cpp b/wifi/kcmwifi/mainconfig.cpp new file mode 100644 index 00000000..506d1f02 --- /dev/null +++ b/wifi/kcmwifi/mainconfig.cpp @@ -0,0 +1,108 @@ +/* This file is part of the KDE project + Copyright (C) 2004 Nadeem Hasan + (C) 2001-2004 by Stefan Winter + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. +*/ + +#include "mainconfig.h" +#include "wificonfig.h" +#include "kcmwifi.h" + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +MainConfig::MainConfig( QWidget *parent, const char *name ) + : MainConfigBase( parent, name ) +{ + WifiConfig *config = WifiConfig::instance(); + + for (int i=1;i<=config->m_numConfigs;i++) { + cmb_presetConfig->insertItem( i18n( "Config %1" ).arg( i ) ); + } + + + connect( cb_usePreset, SIGNAL( toggled( bool ) ), SIGNAL( changed() ) ); + connect( cmb_presetConfig, SIGNAL( activated( int ) ), SIGNAL( changed() ) ); + connect( sb_numConfigs, SIGNAL( valueChanged( int ) ), SIGNAL( changed() ) ); + + connect( pb_activate, SIGNAL( clicked() ), SIGNAL( activateClicked() ) ); + connect( sb_numConfigs, SIGNAL( valueChanged( int ) ), SLOT( slotChangeNumConfigs( int ) ) ); + +} + +void MainConfig::load() +{ + WifiConfig *config = WifiConfig::instance(); + + cb_usePreset->setChecked( config->m_usePreset ); + cmb_presetConfig->setCurrentItem( config->m_presetConfig ); + sb_numConfigs->setValue( config->m_numConfigs ); +} + +void MainConfig::save() +{ + WifiConfig *config = WifiConfig::instance(); + + config->m_usePreset = cb_usePreset->isChecked(); + config->m_presetConfig = cmb_presetConfig->currentItem(); + config->m_numConfigs = sb_numConfigs->value(); +} + +void MainConfig::slotChangeNumConfigs( int newnumber ) +{ + + WifiConfig* config = WifiConfig::instance(); + + if ( config->m_numConfigs < newnumber ) // number of configs raised + { + int diff = newnumber - config->m_numConfigs; + ( (KCMWifi*)parentWidget() )->addConfigTab( diff, false ); + } + else // number of configs lowered + { + int diff = config->m_numConfigs - newnumber; + ( (KCMWifi*)parentWidget() )->delConfigTab( diff ); + } +} + +void MainConfig::registerConfig( int number ) +{ + if ( number >= KCMWifi::vendorBase ) + { + cmb_presetConfig->insertItem( i18n( "Vendor %1" ).arg( number-KCMWifi::vendorBase+1 ) ); + } + else + { + WifiConfig* config = WifiConfig::instance(); + cmb_presetConfig->insertItem( i18n( "Config %1" ).arg( number ), number-1 ); + } +} + +void MainConfig::unregisterConfig( int number ) +{ + cmb_presetConfig->removeItem( number-1 ); +} + +#include "mainconfig.moc" -- cgit v1.2.1