/* This file is part of KitchenSync. Copyright (c) 2006 Tobias Koenig 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 "configguiopie.h" #include #include #include #include #include #include #include ConfigGuiOpie::ConfigGuiOpie( const QSync::Member &member, TQWidget *parent ) : ConfigGui( member, parent ) { TQGridLayout *tqlayout = new TQGridLayout( topLayout() ); TQLabel *label = new TQLabel( i18n("Device IP:"), this ); tqlayout->addWidget( label, 0, 0 ); mDeviceIP = new TQLineEdit( this ); mDeviceIP->setInputMask( "000.000.000.000" ); label->setBuddy( mDeviceIP ); tqlayout->addWidget( mDeviceIP, 0, 1 ); label = new TQLabel( i18n("Device Type:"), this ); tqlayout->addWidget( label, 1, 0 ); mDeviceType = new TQComboBox( this ); label->setBuddy( mDeviceType ); tqlayout->addWidget( mDeviceType, 1, 1 ); label = new TQLabel( i18n("Username:"), this ); tqlayout->addWidget( label, 2, 0 ); mUserName = new TQLineEdit( this ); label->setBuddy( mUserName ); tqlayout->addWidget( mUserName, 2, 1 ); label = new TQLabel( i18n("Password:"), this ); tqlayout->addWidget( label, 3, 0 ); mPassword = new TQLineEdit( this ); mPassword->setEchoMode( TQLineEdit::Password ); label->setBuddy( mPassword ); tqlayout->addWidget( mPassword, 3, 1 ); label = new TQLabel( i18n("Protocol:"), this ); tqlayout->addWidget( label, 4, 0 ); mConnectionType = new TQComboBox( this ); label->setBuddy( mConnectionType ); tqlayout->addWidget( mConnectionType, 4, 1 ); label = new TQLabel( i18n("Port:"), this ); tqlayout->addWidget( label, 5, 0 ); mPort = new TQSpinBox( this ); mPort->setRange( 0, 65335 ); label->setBuddy( mPort ); tqlayout->addWidget( mPort, 5, 1 ); mDeviceType->insertItem( i18n("Opie/OpenZaurus") ); mDeviceType->insertItem( i18n("TQtopia2") ); mConnectionType->insertItem( i18n("SCP") ); mConnectionType->insertItem( i18n("FTP") ); topLayout()->addStretch( 1 ); } void ConfigGuiOpie::load( const TQString &xml ) { TQDomDocument doc; doc.setContent( xml ); TQDomElement docElement = doc.documentElement(); TQDomNode n; for( n = docElement.firstChild(); !n.isNull(); n = n.nextSibling() ) { TQDomElement e = n.toElement(); if ( e.tagName() == "username" ) { mUserName->setText( e.text() ); } else if ( e.tagName() == "password" ) { mPassword->setText( e.text() ); } else if ( e.tagName() == "url" ) { mDeviceIP->setText( e.text() ); } else if ( e.tagName() == "port" ) { mPort->setValue( e.text().toInt() ); } else if ( e.tagName() == "tqdevice" ) { if ( e.text() == "opie" ) mDeviceType->setCurrentItem( 0 ); else mDeviceType->setCurrentItem( 1 ); } else if ( e.tagName() == "conntype" ) { if ( e.text() == "scp" ) mConnectionType->setCurrentItem( 0 ); else mConnectionType->setCurrentItem( 1 ); } } } TQString ConfigGuiOpie::save() const { TQString xml; xml = ""; xml += "" + mUserName->text() + ""; xml += "" + mPassword->text() + ""; xml += "" + mDeviceIP->text() + ""; xml += "" + TQString( mDeviceType->currentItem() == 0 ? "opie" : "qtopia2" ) + ""; xml += "" + TQString::number( mPort->value() ) + ""; xml += "" + TQString( mConnectionType->currentItem() == 0 ? "scp" : "ftp" ) + ""; xml += ""; return xml; }