summaryrefslogtreecommitdiffstats
path: root/mandriva/2010.2/kdepim/configguibarry.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'mandriva/2010.2/kdepim/configguibarry.cpp')
-rw-r--r--mandriva/2010.2/kdepim/configguibarry.cpp95
1 files changed, 95 insertions, 0 deletions
diff --git a/mandriva/2010.2/kdepim/configguibarry.cpp b/mandriva/2010.2/kdepim/configguibarry.cpp
new file mode 100644
index 000000000..2d163d017
--- /dev/null
+++ b/mandriva/2010.2/kdepim/configguibarry.cpp
@@ -0,0 +1,95 @@
+/*
+ This file is part of KitchenSync.
+
+ Copyright (c) 2005 Cornelius Schumacher <[email protected]>
+ Copyright (c) 2008 Eduardo Habkost <[email protected]>
+ Copyright (c) 2008 Adam Williamson <[email protected]>
+
+ 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+ USA.
+*/
+
+#include "configguibarry.h"
+
+#include <klocale.h>
+
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qdom.h>
+#include <qlineedit.h>
+#include <qcheckbox.h>
+
+ConfigGuiBarry::ConfigGuiBarry( const QSync::Member &member, QWidget *parent )
+ : ConfigGui( member, parent )
+{
+ QBoxLayout *userLayout = new QHBoxLayout( topLayout() );
+
+ QLabel *pinLbl= new QLabel( i18n("PIN:"), this );
+ userLayout->addWidget(pinLbl);
+
+ mPin = new QLineEdit(this);
+ userLayout->addWidget(mPin);
+
+ mCalendar = new QCheckBox( i18n("Sync calendar"), this );
+ userLayout->addWidget( mCalendar );
+
+ mContacts = new QCheckBox( i18n("Sync contacts"), this );
+ userLayout->addWidget( mContacts );
+
+ topLayout()->addStretch( 1 );
+}
+
+void ConfigGuiBarry::load(const QString &cfg)
+{
+ QStringList lines = QStringList::split( '\n', cfg);
+ QString pin;
+ uint cal = 0;
+ uint con = 0;
+ for ( QStringList::Iterator it = lines.begin(); it != lines.end(); ++it ) {
+ QStringList options = QStringList::split( ' ', *it);
+ if (options.count() < 1)
+ /* invalid line */
+ continue;
+
+ if( options[0].lower() == "device" )
+ {
+ if (options.count() < 2)
+ /* invalid line */
+ continue;
+
+ pin = options[1];
+ if (options.count() >= 3)
+ cal = options[2].toUInt();
+ if (options.count() >= 4)
+ con = options[3].toUInt();
+
+ mPin->setText(pin);
+ mCalendar->setChecked( cal != 0);
+ mContacts->setChecked( con != 0);
+ }
+ }
+}
+
+QString ConfigGuiBarry::save() const
+{
+ QString cfg;
+ cfg = "Device " + mPin->text();
+ if ( mCalendar->isChecked() ) cfg += " 1";
+ else cfg += " 0";
+ if ( mContacts->isChecked() ) cfg += " 1";
+ else cfg += " 0";
+
+ return cfg;
+}