summaryrefslogtreecommitdiff
authorandyq <andyq>2002-10-17 22:50:20 (UTC)
committer andyq <andyq>2002-10-17 22:50:20 (UTC)
commitb61a21e46590228b6c5800d168fc57789ce733f6 (patch) (side-by-side diff)
treeda0732436919ccb19167eb124898615d499e5914
parent51dbf76486cb81a7cb34c07483b344c8ea7a8a24 (diff)
downloadopie-b61a21e46590228b6c5800d168fc57789ce733f6.zip
opie-b61a21e46590228b6c5800d168fc57789ce733f6.tar.gz
opie-b61a21e46590228b6c5800d168fc57789ce733f6.tar.bz2
Changed dlg to add linkToRoot checkbox to destinations tab
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/settings/aqpkg/settings.ui169
-rw-r--r--noncore/settings/aqpkg/settingsimpl.cpp43
2 files changed, 143 insertions, 69 deletions
diff --git a/noncore/settings/aqpkg/settings.ui b/noncore/settings/aqpkg/settings.ui
index eb99cf7..6b3cfd4 100644
--- a/noncore/settings/aqpkg/settings.ui
+++ b/noncore/settings/aqpkg/settings.ui
@@ -1,531 +1,574 @@
<!DOCTYPE UI><UI>
<class>SettingsBase</class>
<widget>
<class>QDialog</class>
<property stdset="1">
<name>name</name>
<cstring>Settings</cstring>
</property>
<property stdset="1">
<name>geometry</name>
<rect>
<x>0</x>
<y>0</y>
- <width>331</width>
- <height>456</height>
+ <width>247</width>
+ <height>390</height>
</rect>
</property>
<property stdset="1">
<name>caption</name>
<string>Package Servers</string>
</property>
<property>
<name>layoutMargin</name>
</property>
<property>
<name>layoutSpacing</name>
</property>
<grid>
<property stdset="1">
<name>margin</name>
<number>11</number>
</property>
<property stdset="1">
<name>spacing</name>
<number>6</number>
</property>
<widget row="0" column="0" >
<class>QTabWidget</class>
<property stdset="1">
<name>name</name>
<cstring>TabWidget</cstring>
</property>
<property stdset="1">
<name>enabled</name>
<bool>true</bool>
</property>
<property>
<name>layoutMargin</name>
</property>
<property>
<name>layoutSpacing</name>
</property>
<widget>
<class>QWidget</class>
<property stdset="1">
<name>name</name>
<cstring>tab</cstring>
</property>
<attribute>
<name>title</name>
<string>Servers</string>
</attribute>
<grid>
<property stdset="1">
<name>margin</name>
<number>11</number>
</property>
<property stdset="1">
<name>spacing</name>
<number>6</number>
</property>
- <widget row="0" column="0" rowspan="1" colspan="2" >
+ <widget row="0" column="0" >
<class>QLayoutWidget</class>
<property stdset="1">
<name>name</name>
<cstring>Layout2</cstring>
</property>
<hbox>
<property stdset="1">
<name>margin</name>
<number>0</number>
</property>
<property stdset="1">
<name>spacing</name>
<number>6</number>
</property>
<widget>
<class>QLabel</class>
<property stdset="1">
<name>name</name>
<cstring>Servers</cstring>
</property>
<property stdset="1">
<name>text</name>
<string>Servers</string>
</property>
</widget>
<spacer>
<property>
<name>name</name>
<cstring>Spacer2</cstring>
</property>
<property stdset="1">
<name>orientation</name>
<enum>Horizontal</enum>
</property>
<property stdset="1">
<name>sizeType</name>
<enum>Expanding</enum>
</property>
<property>
<name>sizeHint</name>
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</hbox>
</widget>
- <widget row="1" column="0" rowspan="1" colspan="2" >
+ <widget row="1" column="0" >
+ <class>QLayoutWidget</class>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>Layout8</cstring>
+ </property>
+ <grid>
+ <property stdset="1">
+ <name>margin</name>
+ <number>0</number>
+ </property>
+ <property stdset="1">
+ <name>spacing</name>
+ <number>6</number>
+ </property>
+ <widget row="0" column="0" rowspan="1" colspan="2" >
<class>QListBox</class>
<property stdset="1">
<name>name</name>
<cstring>servers</cstring>
</property>
<property stdset="1">
<name>selectionMode</name>
<enum>Extended</enum>
</property>
</widget>
- <widget row="2" column="1" >
- <class>QPushButton</class>
+ <widget row="2" column="0" rowspan="1" colspan="2" >
+ <class>QLayoutWidget</class>
<property stdset="1">
<name>name</name>
- <cstring>removeserver</cstring>
- </property>
- <property stdset="1">
- <name>enabled</name>
- <bool>true</bool>
+ <cstring>Layout6</cstring>
</property>
+ <grid>
<property stdset="1">
- <name>text</name>
- <string>Remove</string>
+ <name>margin</name>
+ <number>0</number>
</property>
<property stdset="1">
- <name>autoDefault</name>
- <bool>false</bool>
+ <name>spacing</name>
+ <number>6</number>
</property>
- </widget>
- <widget row="2" column="0" >
- <class>QPushButton</class>
+ <widget row="2" column="1" >
+ <class>QCheckBox</class>
<property stdset="1">
<name>name</name>
- <cstring>newserver</cstring>
+ <cstring>active</cstring>
</property>
<property stdset="1">
- <name>enabled</name>
- <bool>true</bool>
+ <name>text</name>
+ <string>Active Server</string>
</property>
+ </widget>
+ <widget row="0" column="0" >
+ <class>QLabel</class>
<property stdset="1">
- <name>text</name>
- <string>New</string>
+ <name>name</name>
+ <cstring>TextLabel1_3</cstring>
</property>
<property stdset="1">
- <name>autoDefault</name>
- <bool>false</bool>
+ <name>text</name>
+ <string>Name:</string>
</property>
</widget>
- <widget row="3" column="0" rowspan="1" colspan="2" >
- <class>QLayoutWidget</class>
+ <widget row="1" column="0" >
+ <class>QLabel</class>
<property stdset="1">
<name>name</name>
- <cstring>Layout10</cstring>
+ <cstring>TextLabel2_3</cstring>
</property>
- <grid>
<property stdset="1">
- <name>margin</name>
- <number>0</number>
+ <name>text</name>
+ <string>URL:</string>
</property>
+ </widget>
+ <widget row="0" column="1" >
+ <class>QLineEdit</class>
<property stdset="1">
- <name>spacing</name>
- <number>6</number>
+ <name>name</name>
+ <cstring>servername</cstring>
</property>
+ </widget>
<widget row="1" column="1" >
<class>QLineEdit</class>
<property stdset="1">
<name>name</name>
<cstring>serverurl</cstring>
</property>
</widget>
- <widget row="1" column="0" >
- <class>QLabel</class>
+ <widget row="3" column="1" >
+ <class>QPushButton</class>
<property stdset="1">
<name>name</name>
- <cstring>TextLabel2_3</cstring>
+ <cstring>btnChangeServer</cstring>
</property>
<property stdset="1">
<name>text</name>
- <string>URL:</string>
+ <string>Change</string>
</property>
</widget>
- <widget row="0" column="1" >
- <class>QLineEdit</class>
+ </grid>
+ </widget>
+ <widget row="1" column="1" >
+ <class>QPushButton</class>
<property stdset="1">
<name>name</name>
- <cstring>servername</cstring>
+ <cstring>removeserver</cstring>
</property>
- </widget>
- <widget row="0" column="0" >
- <class>QLabel</class>
<property stdset="1">
- <name>name</name>
- <cstring>TextLabel1_3</cstring>
+ <name>enabled</name>
+ <bool>true</bool>
</property>
<property stdset="1">
<name>text</name>
- <string>Name:</string>
+ <string>Remove</string>
+ </property>
+ <property stdset="1">
+ <name>autoDefault</name>
+ <bool>false</bool>
</property>
</widget>
- <widget row="2" column="1" >
+ <widget row="1" column="0" >
<class>QPushButton</class>
<property stdset="1">
<name>name</name>
- <cstring>btnChangeServer</cstring>
+ <cstring>newserver</cstring>
+ </property>
+ <property stdset="1">
+ <name>enabled</name>
+ <bool>true</bool>
</property>
<property stdset="1">
<name>text</name>
- <string>Change</string>
+ <string>New</string>
+ </property>
+ <property stdset="1">
+ <name>autoDefault</name>
+ <bool>false</bool>
</property>
</widget>
</grid>
</widget>
</grid>
</widget>
<widget>
<class>QWidget</class>
<property stdset="1">
<name>name</name>
<cstring>tab</cstring>
</property>
<attribute>
<name>title</name>
<string>Destinations</string>
</attribute>
<grid>
<property stdset="1">
<name>margin</name>
<number>11</number>
</property>
<property stdset="1">
<name>spacing</name>
<number>6</number>
</property>
<widget row="0" column="0" >
<class>QLayoutWidget</class>
<property stdset="1">
<name>name</name>
<cstring>Layout3</cstring>
</property>
<hbox>
<property stdset="1">
<name>margin</name>
<number>0</number>
</property>
<property stdset="1">
<name>spacing</name>
<number>6</number>
</property>
<widget>
<class>QLabel</class>
<property stdset="1">
<name>name</name>
<cstring>Destinations</cstring>
</property>
<property stdset="1">
<name>text</name>
<string>Destinations</string>
</property>
</widget>
<spacer>
<property>
<name>name</name>
<cstring>Spacer2_2</cstring>
</property>
<property stdset="1">
<name>orientation</name>
<enum>Horizontal</enum>
</property>
<property stdset="1">
<name>sizeType</name>
<enum>Expanding</enum>
</property>
<property>
<name>sizeHint</name>
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</hbox>
</widget>
<widget row="2" column="0" >
<class>QLayoutWidget</class>
<property stdset="1">
<name>name</name>
<cstring>Layout5</cstring>
</property>
<hbox>
<property stdset="1">
<name>margin</name>
<number>0</number>
</property>
<property stdset="1">
<name>spacing</name>
<number>6</number>
</property>
<widget>
<class>QPushButton</class>
<property stdset="1">
<name>name</name>
<cstring>newdestination</cstring>
</property>
<property stdset="1">
<name>enabled</name>
<bool>true</bool>
</property>
<property stdset="1">
<name>text</name>
<string>New</string>
</property>
<property stdset="1">
<name>autoDefault</name>
<bool>false</bool>
</property>
</widget>
<widget>
<class>QPushButton</class>
<property stdset="1">
<name>name</name>
<cstring>removedestination</cstring>
</property>
<property stdset="1">
<name>enabled</name>
<bool>true</bool>
</property>
<property stdset="1">
<name>text</name>
<string>Remove</string>
</property>
<property stdset="1">
<name>autoDefault</name>
<bool>false</bool>
</property>
</widget>
</hbox>
</widget>
<spacer row="0" column="0" >
<property>
<name>name</name>
<cstring>Spacer3</cstring>
</property>
<property stdset="1">
<name>orientation</name>
<enum>Horizontal</enum>
</property>
<property stdset="1">
<name>sizeType</name>
<enum>Expanding</enum>
</property>
<property>
<name>sizeHint</name>
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
<widget row="1" column="0" >
<class>QListBox</class>
<property stdset="1">
<name>name</name>
<cstring>destinations</cstring>
</property>
<property stdset="1">
<name>selectionMode</name>
<enum>Single</enum>
</property>
</widget>
<widget row="3" column="0" >
<class>QLayoutWidget</class>
<property stdset="1">
<name>name</name>
- <cstring>Layout8</cstring>
+ <cstring>Layout13</cstring>
</property>
<grid>
<property stdset="1">
<name>margin</name>
<number>0</number>
</property>
<property stdset="1">
<name>spacing</name>
<number>6</number>
</property>
- <widget row="0" column="1" >
- <class>QLineEdit</class>
+ <widget row="1" column="0" >
+ <class>QLabel</class>
<property stdset="1">
<name>name</name>
- <cstring>destinationname</cstring>
+ <cstring>TextLabel1_3_2_2</cstring>
</property>
- </widget>
- <widget row="1" column="1" >
- <class>QLineEdit</class>
<property stdset="1">
- <name>name</name>
- <cstring>destinationurl</cstring>
+ <name>text</name>
+ <string>URL:</string>
</property>
</widget>
- <widget row="2" column="1" >
+ <widget row="3" column="1" >
<class>QPushButton</class>
<property stdset="1">
<name>name</name>
<cstring>btnChangeDest</cstring>
</property>
<property stdset="1">
<name>text</name>
<string>Change</string>
</property>
</widget>
+ <widget row="0" column="1" >
+ <class>QLineEdit</class>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>destinationname</cstring>
+ </property>
+ </widget>
<widget row="0" column="0" >
<class>QLabel</class>
<property stdset="1">
<name>name</name>
<cstring>TextLabel1_3_2</cstring>
</property>
<property stdset="1">
<name>text</name>
<string>Name:</string>
</property>
</widget>
- <widget row="1" column="0" >
- <class>QLabel</class>
+ <widget row="2" column="1" >
+ <class>QCheckBox</class>
<property stdset="1">
<name>name</name>
- <cstring>TextLabel1_3_2_2</cstring>
+ <cstring>linkToRoot</cstring>
</property>
<property stdset="1">
<name>text</name>
- <string>URL:</string>
+ <string>LinkToRoot</string>
+ </property>
+ <property stdset="1">
+ <name>checked</name>
+ <bool>true</bool>
+ </property>
+ </widget>
+ <widget row="1" column="1" >
+ <class>QLineEdit</class>
+ <property stdset="1">
+ <name>name</name>
+ <cstring>destinationurl</cstring>
</property>
</widget>
</grid>
</widget>
</grid>
</widget>
</widget>
</grid>
</widget>
<connections>
<connection>
<sender>newserver</sender>
<signal>clicked()</signal>
<receiver>Settings</receiver>
<slot>newServer()</slot>
</connection>
<connection>
<sender>removeserver</sender>
<signal>clicked()</signal>
<receiver>Settings</receiver>
<slot>removeServer()</slot>
</connection>
<connection>
<sender>newdestination</sender>
<signal>clicked()</signal>
<receiver>Settings</receiver>
<slot>newDestination()</slot>
</connection>
<connection>
<sender>removedestination</sender>
<signal>clicked()</signal>
<receiver>Settings</receiver>
<slot>removeDestination()</slot>
</connection>
<connection>
<sender>servers</sender>
<signal>highlighted(int)</signal>
<receiver>Settings</receiver>
<slot>editServer(int)</slot>
</connection>
<connection>
<sender>destinations</sender>
<signal>highlighted(int)</signal>
<receiver>Settings</receiver>
<slot>editDestination(int)</slot>
</connection>
<connection>
<sender>btnChangeServer</sender>
<signal>clicked()</signal>
<receiver>Settings</receiver>
<slot>changeServerDetails()</slot>
</connection>
<connection>
<sender>btnChangeDest</sender>
<signal>clicked()</signal>
<receiver>Settings</receiver>
<slot>changeDestinationDetails()</slot>
</connection>
<slot access="public">activeServerChanged()</slot>
<slot access="public">changeServerDetails()</slot>
<slot access="public">createLinksToDest()</slot>
<slot access="public">destNameChanged(const QString&amp;)</slot>
<slot access="public">destUrlChanged(const QString&amp;)</slot>
<slot access="public">editDestination(int)</slot>
<slot access="public">editServer(int)</slot>
<slot access="public">installationSettingChange(int)</slot>
<slot access="public">installationSettingSetName(const QString &amp;)</slot>
<slot access="public">linkEnabled(bool)</slot>
<slot access="public">newDestination()</slot>
<slot access="public">newInstallationSetting()</slot>
<slot access="public">newServer()</slot>
<slot access="public">changeDestinationDetails()</slot>
<slot access="public">removeDestination()</slot>
<slot access="public">removeInstallationSetting()</slot>
<slot access="public">removeLinksToDest()</slot>
<slot access="public">removeServer()</slot>
<slot access="public">renameInstallationSetting()</slot>
<slot access="public">serverNameChanged(const QString&amp;)</slot>
<slot access="public">serverUrlChanged(const QString&amp;)</slot>
</connections>
</UI>
diff --git a/noncore/settings/aqpkg/settingsimpl.cpp b/noncore/settings/aqpkg/settingsimpl.cpp
index 81e89ed..9ee3a33 100644
--- a/noncore/settings/aqpkg/settingsimpl.cpp
+++ b/noncore/settings/aqpkg/settingsimpl.cpp
@@ -1,195 +1,226 @@
/***************************************************************************
settingsimpl.cpp - description
-------------------
begin : Thu Aug 29 2002
copyright : (C) 2002 by Andy Qua
email : andy.qua@blueyonder.co.uk
***************************************************************************/
/***************************************************************************
* *
* 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. *
* *
***************************************************************************/
#include <fstream>
using namespace std;
#include <qlistbox.h>
#include <qlineedit.h>
#include <qpushbutton.h>
#include <qtabwidget.h>
+#include <qcheckbox.h>
+
+#ifdef QWS
+#include <qpe/config.h>
+#endif
#include "settingsimpl.h"
#include "global.h"
SettingsImpl :: SettingsImpl( DataManager *dataManager, QWidget * parent, const char* name, bool modal, WFlags fl )
: SettingsBase( parent, name, modal, fl )
{
dataMgr = dataManager;
setupData();
changed = false;
newserver = false;
newdestination = false;
}
SettingsImpl :: ~SettingsImpl()
{
}
bool SettingsImpl :: showDlg( int i )
{
TabWidget->setCurrentPage( i );
showMaximized();
exec();
if ( changed )
dataMgr->writeOutIpkgConf();
return changed;
}
void SettingsImpl :: setupData()
{
// add servers
vector<Server>::iterator it;
for ( it = dataMgr->getServerList().begin() ; it != dataMgr->getServerList().end() ; ++it )
{
if ( it->getServerName() == LOCAL_SERVER || it->getServerName() == LOCAL_IPKGS )
continue;
servers->insertItem( it->getServerName() );
}
// add destinations
vector<Destination>::iterator it2;
for ( it2 = dataMgr->getDestinationList().begin() ; it2 != dataMgr->getDestinationList().end() ; ++it2 )
destinations->insertItem( it2->getDestinationName() );
}
//------------------ Servers tab ----------------------
void SettingsImpl :: editServer( int sel )
{
currentSelectedServer = sel;
Server *s = dataMgr->getServer( servers->currentText() );
serverName = s->getServerName();
servername->setText( s->getServerName() );
serverurl->setText( s->getServerUrl() );
+ active->setChecked( s->isServerActive() );
}
void SettingsImpl :: newServer()
{
newserver = true;
servername->setText( "" );
serverurl->setText( "" );
servername->setFocus();
+ active->setChecked( true );
}
void SettingsImpl :: removeServer()
{
changed = true;
Server *s = dataMgr->getServer( servers->currentText() );
dataMgr->getServerList().erase( s );
servers->removeItem( currentSelectedServer );
}
void SettingsImpl :: changeServerDetails()
{
changed = true;
QString newName = servername->text();
if ( !newserver )
{
Server *s = dataMgr->getServer( serverName );
// Update url
s->setServerUrl( serverurl->text() );
+ s->setActive( active->isChecked() );
+
// Check if server name has changed, if it has then we need to replace the key in the map
if ( serverName != newName )
{
// Update server name
s->setServerName( newName );
// See if this server is the active server
- if ( dataMgr->getActiveServer() == serverName )
- dataMgr->setActiveServer( newName );
+// if ( dataMgr->getActiveServer() == serverName )
+// dataMgr->setActiveServer( newName );
// Update list box
servers->changeItem( newName, currentSelectedServer );
}
}
else
{
+ Server s( newName, serverurl->text() );
dataMgr->getServerList().push_back( Server( newName, serverurl->text() ) );
+ dataMgr->getServerList().end()->setActive( active->isChecked() );
servers->insertItem( newName );
servers->setCurrentItem( servers->count() );
newserver = false;
}
}
//------------------ Destinations tab ----------------------
void SettingsImpl :: editDestination( int sel )
{
currentSelectedDestination = sel;
- Destination *s = dataMgr->getDestination( destinations->currentText() );
- destinationName = s->getDestinationName();
- destinationname->setText( s->getDestinationName() );
- destinationurl->setText( s->getDestinationPath() );
+ Destination *d = dataMgr->getDestination( destinations->currentText() );
+ destinationName = d->getDestinationName();
+ destinationname->setText( d->getDestinationName() );
+ destinationurl->setText( d->getDestinationPath() );
+ linkToRoot->setChecked( d->linkToRoot() );
}
void SettingsImpl :: newDestination()
{
newdestination = true;
destinationname->setText( "" );
destinationurl->setText( "" );
destinationname->setFocus();
+ linkToRoot->setChecked( true );
}
void SettingsImpl :: removeDestination()
{
changed = true;
Destination *d = dataMgr->getDestination( destinations->currentText() );
dataMgr->getDestinationList().erase( d );
destinations->removeItem( currentSelectedDestination );
}
void SettingsImpl :: changeDestinationDetails()
{
changed = true;
+#ifdef QWS
+ Config cfg( "aqpkg" );
+ cfg.setGroup( "destinations" );
+#endif
+
QString newName = destinationname->text();
if ( !newdestination )
{
Destination *d = dataMgr->getDestination( destinationName );
// Update url
d->setDestinationPath( destinationurl->text() );
+ d->linkToRoot( linkToRoot->isChecked() );
// Check if server name has changed, if it has then we need to replace the key in the map
if ( destinationName != newName )
{
// Update server name
d->setDestinationName( newName );
// Update list box
destinations->changeItem( newName, currentSelectedDestination );
}
+#ifdef QWS
+ QString key = newName;
+ key += "_linkToRoot";
+ int val = d->linkToRoot();
+ cfg.writeEntry( key, val );
+#endif
}
else
{
dataMgr->getDestinationList().push_back( Destination( newName, destinationurl->text() ) );
destinations->insertItem( newName );
destinations->setCurrentItem( destinations->count() );
newdestination = false;
+
+#ifdef QWS
+ QString key = newName;
+ key += "_linkToRoot";
+ cfg.writeEntry( key, true );
+#endif
}
}