You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdepim/kitchensync/src/connectionwidgets.cpp

228 lines
6.1 KiB

/*
This file is part of KitchenSync.
Copyright (c) 2005 Tobias Koenig <tokoe@kde.org>
Copyright (c) 2006 Daniel Gollub <dgollub@suse.de>
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 <kcombobox.h>
#include <kdialog.h>
#include <tdeglobal.h>
#include <kiconloader.h>
#include <kinputdialog.h>
#include <klineedit.h>
#include <tdelocale.h>
#include <tdemessagebox.h>
#include <tqapplication.h>
#include <tqeventloop.h>
#include <tqlabel.h>
#include <tqlayout.h>
#include <tqpushbutton.h>
#include <tqspinbox.h>
#include <tqtabwidget.h>
#include <tqtooltip.h>
#include <tqvbox.h>
#include "connectionwidgets.h"
BluetoothWidget::BluetoothWidget( TQWidget *parent )
: TQWidget( parent )
{
TQGridLayout *layout = new TQGridLayout( this );
mAddress = new KLineEdit( this );
mAddress->setInputMask( ">NN:NN:NN:NN:NN:NN;" );
layout->addWidget( mAddress, 1, 0 );
TQLabel *label = new TQLabel( i18n( "Bluetooth address:" ), this );
label->setBuddy( mAddress );
layout->addWidget( label, 0, 0 );
mChannel = new KLineEdit( this );
layout->addWidget( mChannel, 1, 1 );
mChannelLabel = new TQLabel( i18n( "Channel:" ), this );
mChannelLabel->setBuddy( mChannel );
layout->addWidget( mChannelLabel, 0, 1 );
layout->setRowStretch( 2, 1 );
}
void BluetoothWidget::hideChannel()
{
mChannelLabel->hide();
mChannel->hide();
}
void BluetoothWidget::showChannel()
{
mChannelLabel->show();
mChannel->show();
}
void BluetoothWidget::setAddress( const TQString address )
{
mAddress->setText( address );
}
void BluetoothWidget::setChannel( const TQString channel )
{
if ( mChannel )
mChannel->setText( channel );
}
TQString BluetoothWidget::address() const
{
return mAddress->text();
}
TQString BluetoothWidget::channel() const
{
if ( mChannel->text().isEmpty() )
return TQString();
return mChannel->text();
}
// FIXME - Only IrMC specific
IRWidget::IRWidget( TQWidget *parent )
: TQWidget( parent )
{
TQGridLayout *layout = new TQGridLayout( this, 3, 3, 11, 3 );
mDevice = new KLineEdit( this );
mSerialNumber = new KLineEdit( this );
layout->addWidget( mDevice, 1, 0 );
layout->addWidget( mSerialNumber, 1, 1 );
TQLabel *label = new TQLabel( i18n( "Device Name:" ), this );
label->setBuddy( mDevice );
layout->addWidget( label, 0, 0 );
label = new TQLabel( i18n( "Serial Number:" ), this );
label->setBuddy( mSerialNumber );
layout->addWidget( label, 0, 1 );
layout->setRowStretch( 2, 1 );
}
void IRWidget::load( const TQDomElement &parent )
{
TQDomNode node;
for ( node = parent.firstChild(); !node.isNull(); node = node.nextSibling() ) {
TQDomElement element = node.toElement();
if ( element.tagName() == "irname" )
mDevice->setText( element.text() );
else if ( element.tagName() == "irserial" )
mSerialNumber->setText( element.text() );
}
}
void IRWidget::save( TQDomDocument &doc, TQDomElement &parent )
{
TQDomElement element = doc.createElement( "irname" );
element.appendChild( doc.createTextNode( mDevice->text() ) );
parent.appendChild( element );
element = doc.createElement( "irserial" );
element.appendChild( doc.createTextNode( mSerialNumber->text() ) );
parent.appendChild( element );
}
// FIXME - Only IrMC specific
CableWidget::CableWidget( TQWidget *parent )
: TQWidget( parent )
{
TQGridLayout *layout = new TQGridLayout( this, 3, 2, 11, 3 );
mManufacturer = new KComboBox( this );
mDevice = new KComboBox( true, this );
layout->addWidget( mManufacturer, 0, 1 );
layout->addWidget( mDevice, 1, 1 );
TQLabel *label = new TQLabel( i18n( "Device Manufacturer:" ), this );
label->setBuddy( mManufacturer );
layout->addWidget( label, 0, 0 );
label = new TQLabel( i18n( "Device:" ), this );
label->setBuddy( mDevice );
layout->addWidget( label, 1, 0 );
layout->setRowStretch( 2, 1 );
mManufacturer->insertItem( i18n( "SonyEricsson/Ericsson" ) );
mManufacturer->insertItem( i18n( "Siemens" ) );
mDevice->insertItem( "/dev/ttyS0" );
mDevice->insertItem( "/dev/ttyS1" );
mDevice->insertItem( "/dev/ttyUSB0" );
mDevice->insertItem( "/dev/ttyUSB1" );
}
void CableWidget::load( const TQDomElement &parent )
{
TQDomNode node;
for ( node = parent.firstChild(); !node.isNull(); node = node.nextSibling() ) {
TQDomElement element = node.toElement();
if ( element.tagName() == "cabletype" )
mManufacturer->setCurrentItem( element.text().toInt() );
else if ( element.tagName() == "cabledev" )
mDevice->setCurrentText( element.text() );
}
}
void CableWidget::save( TQDomDocument &doc, TQDomElement &parent )
{
TQDomElement element = doc.createElement( "cabletype" );
element.appendChild( doc.createTextNode( TQString::number( mManufacturer->currentItem() ) ) );
parent.appendChild( element );
element = doc.createElement( "cabledev" );
element.appendChild( doc.createTextNode( mDevice->currentText() ) );
parent.appendChild( element );
}
UsbWidget::UsbWidget( TQWidget *parent )
: TQWidget( parent )
{
TQGridLayout *layout = new TQGridLayout( this, 3, 2, 11, 3);
mInterface = new TQSpinBox( this );
layout->addWidget( mInterface, 0, 1 );
TQLabel *label = new TQLabel( i18n( "USB Interface:" ), this );
label->setBuddy( mInterface );
layout->addWidget( label, 0, 0 );
layout->setRowStretch( 2, 1 );
}
void UsbWidget::setInterface( int interface )
{
mInterface->setValue( interface );
}
int UsbWidget::interface() const
{
return mInterface->value();
}
#include "connectionwidgets.moc"