secrecywidget.cpp
00001 /* 00002 This file is part of KAddressBook. 00003 Copyright (c) 2003 Tobias Koenig <tokoe@kde.org> 00004 00005 This program is free software; you can redistribute it and/or modify 00006 it under the terms of the GNU General Public License as published by 00007 the Free Software Foundation; either version 2 of the License, or 00008 (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; if not, write to the Free Software 00017 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00018 00019 As a special exception, permission is given to link this program 00020 with any edition of TQt, and distribute the resulting executable, 00021 without including the source code for TQt in the source distribution. 00022 */ 00023 00024 #include <tqlayout.h> 00025 00026 #include <kabc/secrecy.h> 00027 #include <kcombobox.h> 00028 #include <kdialog.h> 00029 00030 #include "secrecywidget.h" 00031 00032 SecrecyWidget::SecrecyWidget( TQWidget *parent, const char *name ) 00033 : TQWidget( parent, name ) 00034 { 00035 TQVBoxLayout *layout = new TQVBoxLayout( this, KDialog::marginHint(), 00036 KDialog::spacingHint() ); 00037 mSecrecyCombo = new KComboBox( this ); 00038 layout->addWidget( mSecrecyCombo ); 00039 00040 const KABC::Secrecy::TypeList list = KABC::Secrecy::typeList(); 00041 KABC::Secrecy::TypeList::ConstIterator it; 00042 for ( it = list.begin(); it != list.end(); ++it ) 00043 mSecrecyCombo->insertItem( KABC::Secrecy::typeLabel( *it ), *it ); 00044 00045 connect( mSecrecyCombo, TQT_SIGNAL( activated( const TQString& ) ), 00046 TQT_SIGNAL( changed() ) ); 00047 } 00048 00049 SecrecyWidget::~SecrecyWidget() 00050 { 00051 } 00052 00053 void SecrecyWidget::setReadOnly( bool readOnly ) 00054 { 00055 mSecrecyCombo->setEnabled( !readOnly ); 00056 } 00057 00058 void SecrecyWidget::setSecrecy( const KABC::Secrecy &secrecy ) 00059 { 00060 if ( secrecy.type() != KABC::Secrecy::Invalid ) 00061 mSecrecyCombo->setCurrentItem( secrecy.type() ); 00062 } 00063 00064 KABC::Secrecy SecrecyWidget::secrecy() const 00065 { 00066 KABC::Secrecy secrecy; 00067 secrecy.setType( mSecrecyCombo->currentItem() ); 00068 00069 return secrecy; 00070 } 00071 00072 #include "secrecywidget.moc"