diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 4aed2c8219774f5d797760606b8489a92ddc5163 (patch) | |
tree | 3f8c130f7d269626bf6a9447407ef6c35954426a /khotkeys/kcontrol/action_group_tab.cpp | |
download | tdebase-4aed2c8219774f5d797760606b8489a92ddc5163.tar.gz tdebase-4aed2c8219774f5d797760606b8489a92ddc5163.zip |
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/kdebase@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'khotkeys/kcontrol/action_group_tab.cpp')
-rw-r--r-- | khotkeys/kcontrol/action_group_tab.cpp | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/khotkeys/kcontrol/action_group_tab.cpp b/khotkeys/kcontrol/action_group_tab.cpp new file mode 100644 index 000000000..fbe681555 --- /dev/null +++ b/khotkeys/kcontrol/action_group_tab.cpp @@ -0,0 +1,94 @@ +/**************************************************************************** + + KHotKeys + + Copyright (C) 1999-2001 Lubos Lunak <l.lunak@kde.org> + + Distributed under the terms of the GNU General Public License version 2. + +****************************************************************************/ + +#define _ACTION_GROUP_TAB_CPP_ + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#include "action_group_tab.h" + +#include <qlineedit.h> +#include <qcheckbox.h> + +#include <klocale.h> +#include <kmessagebox.h> +#include <ktextedit.h> + +#include <actions.h> +#include <action_data.h> + +#include "kcmkhotkeys.h" + +namespace KHotKeys +{ + +Action_group_tab::Action_group_tab( QWidget* parent_P , const char* name_P ) + : Action_group_tab_ui( parent_P, name_P ) + { + clear_data(); + // KHotKeys::Module::changed() + connect( action_name_lineedit, SIGNAL( textChanged( const QString& )), + module, SLOT( changed())); + connect( disable_checkbox, SIGNAL( clicked()), + module, SLOT( changed())); + connect( comment_multilineedit, SIGNAL( textChanged()), + module, SLOT( changed())); + } + +void Action_group_tab::clear_data() + { + disconnect( action_name_lineedit, SIGNAL( textChanged( const QString& )), this, + SLOT( action_group_name_changed( const QString& ))); + action_name_lineedit->clear(); + action_name_lineedit->setReadOnly( false ); + disable_checkbox->setChecked( false ); + disable_checkbox->setText( i18n( "&Disable" )); + comment_multilineedit->clear(); + system_group = Action_data_group::SYSTEM_NONE; + } + +void Action_group_tab::set_data( const Action_data_group* data_P ) + { + if( data_P == NULL ) + { + clear_data(); + return; + } + action_name_lineedit->setText( data_P->name()); + action_name_lineedit->setReadOnly( data_P->is_system_group()); + disable_checkbox->setChecked( !data_P->enabled( true )); + if( !data_P->parent()->enabled( false )) + disable_checkbox->setText( i18n( "&Disable (group is disabled)" )); + else + disable_checkbox->setText( i18n( "&Disable" )); + comment_multilineedit->setText( data_P->comment()); + connect( action_name_lineedit, SIGNAL( textChanged( const QString& )), this, + SLOT( action_group_name_changed( const QString& ))); + system_group = data_P->system_group(); + } + +Action_data_group* Action_group_tab::get_data( Action_data_group* parent_P, + Condition_list* conditions_P ) const + { + QString name = action_name_lineedit->text(); + return new Action_data_group( parent_P, name, comment_multilineedit->text(), conditions_P, + system_group, !disable_checkbox->isChecked()); + } + +void Action_group_tab::action_group_name_changed( const QString& name_P ) + { + module->action_name_changed( name_P ); + } + +} // namespace KHotKeys + +#include "action_group_tab.moc" |