[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[vidalia-svn] r1293: See what IRC folk think of this Server Config page. (trunk/src/gui/config)
Author: hipplej
Date: 2006-10-05 21:59:40 -0400 (Thu, 05 Oct 2006)
New Revision: 1293
Modified:
trunk/src/gui/config/serverpage.cpp
trunk/src/gui/config/serverpage.h
trunk/src/gui/config/serverpage.ui
Log:
See what IRC folk think of this Server Config page.
Modified: trunk/src/gui/config/serverpage.cpp
===================================================================
--- trunk/src/gui/config/serverpage.cpp 2006-10-06 00:37:34 UTC (rev 1292)
+++ trunk/src/gui/config/serverpage.cpp 2006-10-06 01:59:40 UTC (rev 1293)
@@ -37,12 +37,8 @@
#include "domainvalidator.h"
#include "nicknamevalidator.h"
-/* Default Exit Policy */
-#define DEFAULT_POLICY Policy(AcceptAll)
-/* Columns of the Exit Policy list */
-#define COL_ACTION 0
-#define COL_ADDRESS 1
-#define COL_PORT 2
+/** The index in the combo box where custom rate limit resides */
+#define CUSTOM_RATE 6
/** Delay between updating our server IP address (in ms). */
#define AUTO_UPDATE_ADDR_INTERVAL 1000*60*60
@@ -50,8 +46,10 @@
/** Help topics */
#define EXIT_POLICY_HELP "server.exitpolicy"
#define BANDWIDTH_HELP "server.bandwidth"
+
/** Minimum allowed bandwidth rate (20KB) */
#define MIN_RATE 20
+
/** Maximum bandwidth rate. This is limited to 2147483646 bytes,
* or 2097151 kilobytes. (2147483646/1024) */
#define MAX_RATE 2097151
@@ -77,28 +75,21 @@
this, SLOT(updateServerIP()));
/* Bind events to actions */
- connect(ui.btnAddPolicy, SIGNAL(clicked()), this, SLOT(addPolicy()));
- connect(ui.btnRemovePolicy, SIGNAL(clicked()), this, SLOT(removePolicy()));
- connect(ui.btnRaisePriority, SIGNAL(clicked()), this, SLOT(raisePriority()));
- connect(ui.btnLowerPriority, SIGNAL(clicked()), this, SLOT(lowerPriority()));
connect(ui.btnGetAddress, SIGNAL(clicked()), this, SLOT(getServerAddress()));
connect(ui.btnRateHelp, SIGNAL(clicked()), this, SLOT(bandwidthHelp()));
connect(ui.btnExitHelp, SIGNAL(clicked()), this, SLOT(exitPolicyHelp()));
-
+ connect(ui.cmboRate, SIGNAL(currentIndexChanged(int)),
+ this, SLOT(rateChanged(int)));
connect(ui.lineAvgRateLimit, SIGNAL(editingFinished()),
- this, SLOT(rateChanged()));
+ this, SLOT(customRateChanged()));
connect(ui.lineMaxRateLimit, SIGNAL(editingFinished()),
- this, SLOT(rateChanged()));
+ this, SLOT(customRateChanged()));
/* Set validators for address, mask and various port number fields */
ui.lineServerNickname->setValidator(new NicknameValidator(this));
ui.lineServerAddress->setValidator(new DomainValidator(this));
ui.lineServerPort->setValidator(new QIntValidator(1, 65535, this));
ui.lineDirPort->setValidator(new QIntValidator(1, 65535, this));
- ui.lineExitAddress->setValidator(new IPValidator(this));
- ui.lineExitMask->setValidator(new QIntValidator(0, 32, this));
- ui.lineExitFromPort->setValidator(new PortValidator(this));
- ui.lineExitToPort->setValidator(new PortValidator(this));
ui.lineAvgRateLimit->setValidator(new QIntValidator(MIN_RATE, MAX_RATE, this));
ui.lineMaxRateLimit->setValidator(new QIntValidator(MIN_RATE, MAX_RATE, this));
}
@@ -125,7 +116,7 @@
ServerPage::save(QString &errmsg)
{
/* Force the bandwidth rate limits to validate */
- rateChanged();
+ customRateChanged();
if (ui.chkEnableServer->isChecked()) {
/* A server must have an ORPort and a nickname */
@@ -144,7 +135,6 @@
}
_settings->setServerEnabled(ui.chkEnableServer->isChecked());
_settings->setDirectoryMirror(ui.chkMirrorDirectory->isChecked());
- _settings->setMiddleman(ui.chkMiddleMan->isChecked());
_settings->setAutoUpdateAddress(ui.chkAutoUpdate->isChecked());
_settings->setNickname(ui.lineServerNickname->text());
_settings->setORPort(ui.lineServerPort->text().toUInt());
@@ -156,13 +146,13 @@
setAutoUpdateTimer(ui.chkAutoUpdate->isChecked());
/* Save exit polices */
- ExitPolicy exitPolicy;
- for (int i = 0; i < ui.lstExitPolicies->topLevelItemCount(); ++i) {
- savePolicy(ui.lstExitPolicies->topLevelItem(i), exitPolicy);
- }
- _settings->setExitPolicy(exitPolicy);
+// ExitPolicy exitPolicy;
+// for (int i = 0; i < ui.lstExitPolicies->topLevelItemCount(); ++i) {
+// savePolicy(ui.lstExitPolicies->topLevelItem(i), exitPolicy);
+// }
+// _settings->setExitPolicy(exitPolicy);
- /* If we're connectd to Tor and we've changed the server settings, attempt
+ /* If we're connected to Tor and we've changed the server settings, attempt
* to apply the new settings now. */
if (_torControl->isConnected() && _settings->changedSinceLastApply()) {
if (!_settings->apply(&errmsg)) {
@@ -179,7 +169,6 @@
{
ui.chkEnableServer->setChecked(_settings->isServerEnabled());
ui.chkMirrorDirectory->setChecked(_settings->isDirectoryMirror());
- ui.chkMiddleMan->setChecked(_settings->isMiddleman());
ui.chkAutoUpdate->setChecked(_settings->getAutoUpdateAddress());
setAutoUpdateTimer(_settings->getAutoUpdateAddress());
@@ -193,134 +182,84 @@
ui.lineMaxRateLimit->setText(
QString::number((uint)(_settings->getBandwidthBurstRate()/1024)));
- /* Load the exit policies into the list */
- ui.lstExitPolicies->clear();
+// foreach (Policy policy, _settings->getExitPolicy().policyList()) {
+// addPolicyItem(policy);
+// }
- foreach (Policy policy, _settings->getExitPolicy().policyList()) {
- addPolicyItem(policy);
- }
-
- ui.frmExitPolicy->setHidden(ui.chkMiddleMan->isChecked());
+ ui.frmCustomRate->setVisible(ui.cmboRate->currentIndex() == CUSTOM_RATE);
ui.frmServer->setVisible(ui.chkEnableServer->isChecked());
}
/** Adds the exit policy contained in item to the exitPolicy */
-void
-ServerPage::savePolicy(QTreeWidgetItem *item, ExitPolicy &exitPolicy)
-{
- /* Add policy to ServerSettings */
- exitPolicy.addPolicy(Policy(item->text(COL_ACTION),
- item->text(COL_ADDRESS),
- item->text(COL_PORT)));
-}
+// void
+// ServerPage::savePolicy(QTreeWidgetItem *item, ExitPolicy &exitPolicy)
+// {
+// /* Add policy to ServerSettings */
+// exitPolicy.addPolicy(Policy(item->text(COL_ACTION),
+// item->text(COL_ADDRESS),
+// item->text(COL_PORT)));
+// }
-/** Adds a new exit policy to the user's configuration */
-void
-ServerPage::addPolicy()
-{
- /* They must enter a valid address */
- QString address = ui.lineExitAddress->text();
- if (!address.isEmpty()) {
- if (((IPValidator *)ui.lineExitAddress->validator())->
- validate(address) != QValidator::Acceptable) {
- return;
- }
- }
+// /** Adds a new exit policy to the user's configuration */
+// void
+// ServerPage::addPolicy()
+// {
+// /* They must enter a valid address */
+// QString address = ui.lineExitAddress->text();
+// if (!address.isEmpty()) {
+// if (((IPValidator *)ui.lineExitAddress->validator())->
+// validate(address) != QValidator::Acceptable) {
+// return;
+// }
+// }
- /* If port range specified, must be valid */
- QString fromPort = ui.lineExitFromPort->text();
- QString toPort = ui.lineExitToPort->text();
+// /* If port range specified, must be valid */
+// QString fromPort = ui.lineExitFromPort->text();
+// QString toPort = ui.lineExitToPort->text();
- if (!fromPort.isEmpty() && !toPort.isEmpty() && toPort != fromPort) {
- if (toPort == "*") toPort = "65535";
- if (fromPort == "*") fromPort = "1";
- if (fromPort.toUShort() > toPort.toUShort()) {
- return;
- }
- }
+// if (!fromPort.isEmpty() && !toPort.isEmpty() && toPort != fromPort) {
+// if (toPort == "*") toPort = "65535";
+// if (fromPort == "*") fromPort = "1";
+// if (fromPort.toUShort() > toPort.toUShort()) {
+// return;
+// }
+// }
- /* Add the policy to the list */
- addPolicyItem(Policy(Policy::toAction(ui.cmboExitAction->currentText()),
- QHostAddress(ui.lineExitAddress->text()),
- ui.lineExitMask->text().toUShort(),
- fromPort.toUShort(),
- toPort.toUShort()), false);
+// /* Add the policy to the list */
+// addPolicyItem(Policy(Policy::toAction(ui.cmboExitAction->currentText()),
+// QHostAddress(ui.lineExitAddress->text()),
+// ui.lineExitMask->text().toUShort(),
+// fromPort.toUShort(),
+// toPort.toUShort()), false);
- /* Clear input text boxes */
- ui.lineExitAddress->clear();
- ui.lineExitMask->clear();
- ui.lineExitFromPort->clear();
- ui.lineExitToPort->clear();
-}
+// /* Clear input text boxes */
+// ui.lineExitAddress->clear();
+// ui.lineExitMask->clear();
+// ui.lineExitFromPort->clear();
+// ui.lineExitToPort->clear();
+// }
-/** Adds a new QTreeWidget item to the exit policy list */
-void
-ServerPage::addPolicyItem(Policy policy, bool append)
-{
- QTreeWidgetItem *newPolicy = new QTreeWidgetItem();
+// /** Adds a new QTreeWidget item to the exit policy list */
+// void
+// ServerPage::addPolicyItem(Policy policy, bool append)
+// {
+// QTreeWidgetItem *newPolicy = new QTreeWidgetItem();
- newPolicy->setText(COL_ACTION, policy.action());
- newPolicy->setText(COL_ADDRESS, policy.address());
- newPolicy->setText(COL_PORT, policy.ports());
+// newPolicy->setText(COL_ACTION, policy.action());
+// newPolicy->setText(COL_ADDRESS, policy.address());
+// newPolicy->setText(COL_PORT, policy.ports());
- for (int i = 0; i < newPolicy->columnCount(); i++) {
- newPolicy->setTextAlignment(i, Qt::AlignHCenter);
- }
+// for (int i = 0; i < newPolicy->columnCount(); i++) {
+// newPolicy->setTextAlignment(i, Qt::AlignHCenter);
+// }
- if (append) {
- ui.lstExitPolicies->addTopLevelItem(newPolicy);
- } else {
- ui.lstExitPolicies->insertTopLevelItem(0, newPolicy);
- }
-}
+// if (append) {
+// ui.lstExitPolicies->addTopLevelItem(newPolicy);
+// } else {
+// ui.lstExitPolicies->insertTopLevelItem(0, newPolicy);
+// }
+// }
-/** Removes selected exit policy from the user's configuration */
-void
-ServerPage::removePolicy()
-{
- int index = selectedIndex();
-
- if (index > -1) {
- delete ui.lstExitPolicies->takeTopLevelItem(index);
- }
-}
-
-/** Raises selected exit policy's priority level */
-void
-ServerPage::raisePriority()
-{
- int index = selectedIndex();
-
- if (index > 0) {
- ui.lstExitPolicies->insertTopLevelItem(index - 1,
- ui.lstExitPolicies->takeTopLevelItem(index));
- }
-}
-
-/** Lowers selected exit policy's priority level */
-void
-ServerPage::lowerPriority()
-{
- int index = selectedIndex();
- int lastItem = ui.lstExitPolicies->topLevelItemCount() - 1;
-
- if (index > -1 && index < lastItem) {
- ui.lstExitPolicies->insertTopLevelItem(index + 1,
- ui.lstExitPolicies->takeTopLevelItem(index));
- }
-}
-
-/** Returns the index of the selected list item, -1 if none selected */
-int
-ServerPage::selectedIndex()
-{
- if (ui.lstExitPolicies->selectedItems().isEmpty()) return -1;
-
- /* This list only contains one element so take it */
- QTreeWidgetItem *selectedItem = ui.lstExitPolicies->selectedItems()[0];
- return ui.lstExitPolicies->indexOfTopLevelItem(selectedItem);
-}
-
/** Shows exit policy related help information */
void
ServerPage::exitPolicyHelp()
@@ -411,11 +350,23 @@
}
}
+void
+ServerPage::rateChanged(int index)
+{
+ if (index == 6) {
+ ui.frmCustomRate->setVisible(true);
+ }
+
+ else {
+ ui.frmCustomRate->setVisible(false);
+ }
+}
+
/** Called when the user edits the long-term average or maximum bandwidth limit.
* This ensures that the average bandwidth rate is greater than MIN_RATE
* (20KB/s) and that the max rate is greater than the average rate. */
void
-ServerPage::rateChanged()
+ServerPage::customRateChanged()
{
/* Make sure the average rate isn't too low or too high */
quint32 avgRate = (quint32)ui.lineAvgRateLimit->text().toUInt();
Modified: trunk/src/gui/config/serverpage.h
===================================================================
--- trunk/src/gui/config/serverpage.h 2006-10-06 00:37:34 UTC (rev 1292)
+++ trunk/src/gui/config/serverpage.h 2006-10-06 01:59:40 UTC (rev 1293)
@@ -55,32 +55,22 @@
private slots:
/** Called when the user clicks "Get Address" to guess our local IP */
void getServerAddress();
- /** Called when the user clicks the "Add Policy" button */
- void addPolicy();
- /** Called when the user clicks the "Remove Policy" button */
- void removePolicy();
- /** Called when the user clicks the "Raise Priority" button */
- void raisePriority();
- /** Called when the user clicks the "Lower Priority" button */
- void lowerPriority();
/** Called when the user clicks the bandwidth help button */
void bandwidthHelp();
/** Called when the user clicks the exit policy help button */
void exitPolicyHelp();
/** Called when the user's public IP address needs to be updated. */
void updateServerIP();
+ /** Called when the user selects a new value from the rate cmbo box */
+ void rateChanged(int rate);
/** Called when the user edits the max or average bandwidth limits. */
- void rateChanged();
+ void customRateChanged();
private:
/** Attempts to find the server's public IP address */
void getServerPublicIP();
/** Returns the index of the selected item in lstExitPolicies */
int selectedIndex();
- /** Adds a new exit policy to the exit policy list */
- void addPolicyItem(Policy policy, bool append = true);
- /** Saves the policy specified in item to the exitPolicy */
- void savePolicy(QTreeWidgetItem *item, ExitPolicy &exitPolicy);
/** Enables or disables the automatic update timer. */
void setAutoUpdateTimer(bool enabled);
Modified: trunk/src/gui/config/serverpage.ui
===================================================================
--- trunk/src/gui/config/serverpage.ui 2006-10-06 00:37:34 UTC (rev 1292)
+++ trunk/src/gui/config/serverpage.ui 2006-10-06 01:59:40 UTC (rev 1293)
@@ -8,8 +8,8 @@
<rect>
<x>0</x>
<y>0</y>
- <width>392</width>
- <height>285</height>
+ <width>438</width>
+ <height>329</height>
</rect>
</property>
<property name="palette" >
@@ -330,1289 +330,906 @@
<number>0</number>
</property>
<property name="spacing" >
- <number>6</number>
+ <number>0</number>
</property>
<item>
- <widget class="QGroupBox" name="grpServerConfig" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="title" >
- <string>Server Configuration</string>
- </property>
- <layout class="QGridLayout" >
- <property name="margin" >
- <number>9</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item row="4" column="3" >
- <widget class="QPushButton" name="btnGetAddress" >
- <property name="minimumSize" >
- <size>
- <width>0</width>
- <height>0</height>
- </size>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Attempts to determine the correct address for your server</string>
- </property>
- <property name="text" >
- <string>Get Address</string>
- </property>
- </widget>
- </item>
- <item row="4" column="1" colspan="2" >
- <widget class="QLineEdit" name="lineServerAddress" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize" >
- <size>
- <width>105</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize" >
- <size>
- <width>105</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="cursor" >
- <cursor>4</cursor>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Domain name or IP address of your server</string>
- </property>
- <property name="inputMask" >
- <string/>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="maxLength" >
- <number>255</number>
- </property>
- <property name="alignment" >
- <set>Qt::AlignLeading</set>
- </property>
- </widget>
- </item>
- <item row="4" column="0" >
- <widget class="QLabel" name="label_4" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>Address:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
- </property>
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="indent" >
- <number>21</number>
- </property>
- </widget>
- </item>
- <item row="5" column="0" colspan="3" >
- <widget class="QCheckBox" name="chkMirrorDirectory" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Enable to mirror the server directory</string>
- </property>
- <property name="text" >
- <string>Mirror the Server Directory </string>
- </property>
- </widget>
- </item>
- <item row="0" column="0" colspan="8" >
- <widget class="QLabel" name="lblRequired" >
- <property name="layoutDirection" >
- <enum>Qt::LeftToRight</enum>
- </property>
- <property name="text" >
- <string>Nickname and Server Port are required</string>
- </property>
- <property name="textFormat" >
- <enum>Qt::AutoText</enum>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
- <item row="3" column="2" colspan="6" >
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item row="3" column="1" >
- <widget class="QLineEdit" name="lineServerPort" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="maximumSize" >
- <size>
- <width>50</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="cursor" >
- <cursor>4</cursor>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Port on which users and other servers can communicate with your server</string>
- </property>
- </widget>
- </item>
- <item row="3" column="0" >
- <widget class="QLabel" name="lblServerPort" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>Server Port:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
- </property>
- <property name="margin" >
- <number>-1</number>
- </property>
- <property name="indent" >
- <number>7</number>
- </property>
- </widget>
- </item>
- <item row="2" column="0" >
- <widget class="QLabel" name="label_1" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>Contact Info:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
- </property>
- </widget>
- </item>
- <item row="2" column="1" colspan="7" >
- <widget class="QLineEdit" name="lineServerContact" >
- <property name="cursor" >
- <cursor>4</cursor>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Email address at which you may be reached if there is a
+ <widget class="QTabWidget" name="tabsMenu" >
+ <widget class="QWidget" name="ServerConfig" >
+ <attribute name="title" >
+ <string>Basic Settings</string>
+ </attribute>
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>9</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item row="6" column="3" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="4" column="0" >
+ <widget class="QLabel" name="label_4" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="text" >
+ <string>Address:</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
+ </property>
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="indent" >
+ <number>21</number>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="4" >
+ <widget class="QPushButton" name="btnGetAddress" >
+ <property name="minimumSize" >
+ <size>
+ <width>0</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Attempts to determine the correct address for your server</string>
+ </property>
+ <property name="text" >
+ <string>Get Address</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" colspan="8" >
+ <widget class="QLabel" name="lblRequired" >
+ <property name="layoutDirection" >
+ <enum>Qt::LeftToRight</enum>
+ </property>
+ <property name="text" >
+ <string>Nickname and Server Port are required</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="7" colspan="2" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>41</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="1" column="0" >
+ <widget class="QLabel" name="lblNickname" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="text" >
+ <string>Nickname:</string>
+ </property>
+ <property name="textFormat" >
+ <enum>Qt::AutoText</enum>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
+ </property>
+ <property name="margin" >
+ <number>-1</number>
+ </property>
+ <property name="indent" >
+ <number>13</number>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0" >
+ <widget class="QLabel" name="lblServerPort" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="text" >
+ <string>Server Port:</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
+ </property>
+ <property name="margin" >
+ <number>-1</number>
+ </property>
+ <property name="indent" >
+ <number>7</number>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1" >
+ <widget class="QLineEdit" name="lineServerPort" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>0</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>50</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="cursor" >
+ <cursor>4</cursor>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Port on which users and other servers can communicate with your server</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" >
+ <widget class="QLabel" name="label_1" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="text" >
+ <string>Contact Info:</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="3" colspan="3" >
+ <layout class="QHBoxLayout" >
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item>
+ <widget class="QLabel" name="lblDirPort" >
+ <property name="enabled" >
+ <bool>false</bool>
+ </property>
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>0</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="text" >
+ <string>Directory Port:</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLineEdit" name="lineDirPort" >
+ <property name="enabled" >
+ <bool>false</bool>
+ </property>
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>0</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>50</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="cursor" >
+ <cursor>4</cursor>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Directory Port Number</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="4" column="1" colspan="3" >
+ <widget class="QLineEdit" name="lineServerAddress" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>0</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>105</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>105</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="cursor" >
+ <cursor>4</cursor>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Domain name or IP address of your server</string>
+ </property>
+ <property name="inputMask" >
+ <string/>
+ </property>
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="maxLength" >
+ <number>255</number>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignLeading</set>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1" colspan="7" >
+ <widget class="QLineEdit" name="lineServerContact" >
+ <property name="cursor" >
+ <cursor>4</cursor>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Email address at which you may be reached if there is a
problem with your server. You might also include your PGP or GPG
fingerprint.</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1" colspan="7" >
- <widget class="QLineEdit" name="lineServerNickname" >
- <property name="cursor" >
- <cursor>4</cursor>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Name of your server</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="maxLength" >
- <number>19</number>
- </property>
- </widget>
- </item>
- <item row="1" column="0" >
- <widget class="QLabel" name="lblNickname" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>Nickname:</string>
- </property>
- <property name="textFormat" >
- <enum>Qt::AutoText</enum>
- </property>
- <property name="alignment" >
- <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
- </property>
- <property name="margin" >
- <number>-1</number>
- </property>
- <property name="indent" >
- <number>13</number>
- </property>
- </widget>
- </item>
- <item row="4" column="7" >
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>121</width>
- <height>27</height>
- </size>
- </property>
- </spacer>
- </item>
- <item row="4" column="5" colspan="2" >
- <widget class="QCheckBox" name="chkAutoUpdate" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>When enabled, Vidalia will periodically update your IP address if necessary</string>
- </property>
- <property name="text" >
- <string>Automatically Update</string>
- </property>
- </widget>
- </item>
- <item row="4" column="4" >
- <widget class="QLabel" name="label_3" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize" >
- <size>
- <width>20</width>
- <height>0</height>
- </size>
- </property>
- <property name="text" >
- <string/>
- </property>
- </widget>
- </item>
- <item row="5" column="3" colspan="2" >
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <widget class="QLabel" name="lblDirPort" >
- <property name="enabled" >
- <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" colspan="7" >
+ <widget class="QLineEdit" name="lineServerNickname" >
+ <property name="cursor" >
+ <cursor>4</cursor>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Name of your server</string>
+ </property>
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="maxLength" >
+ <number>19</number>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0" colspan="3" >
+ <widget class="QCheckBox" name="chkMirrorDirectory" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Enable to mirror the server directory</string>
+ </property>
+ <property name="text" >
+ <string>Mirror the Server Directory </string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="6" colspan="2" >
+ <widget class="QCheckBox" name="chkAutoUpdate" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>When enabled, Vidalia will periodically update your IP address if necessary</string>
+ </property>
+ <property name="text" >
+ <string>Automatically Update</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="8" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="3" column="2" colspan="6" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>321</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="RateLimits" >
+ <attribute name="title" >
+ <string>Rate Limits</string>
+ </attribute>
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>9</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item row="0" column="0" >
+ <widget class="QComboBox" name="cmboRate" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Select the entry that most closely resembles your Internet connection</string>
+ </property>
+ <property name="maxVisibleItems" >
+ <number>10</number>
+ </property>
+ <property name="sizeAdjustPolicy" >
+ <enum>QComboBox::AdjustToContents</enum>
+ </property>
+ <item>
+ <property name="text" >
+ <string>Dial Up Modem</string>
</property>
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Cable/DSL 256 Kbps</string>
</property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
+ </item>
+ <item>
<property name="text" >
- <string>Directory Port:</string>
+ <string>Cable/DSL 512 Kbps</string>
</property>
- </widget>
- </item>
- <item>
- <widget class="QLineEdit" name="lineDirPort" >
- <property name="enabled" >
- <bool>false</bool>
- </property>
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="maximumSize" >
- <size>
- <width>50</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="cursor" >
- <cursor>4</cursor>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Directory Port Number</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item row="5" column="5" colspan="3" >
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>261</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="grpBandwidthRate" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="title" >
- <string>Bandwidth Rate Limits</string>
- </property>
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>9</number>
- </property>
- <property name="spacing" >
- <number>25</number>
- </property>
- <item>
- <layout class="QGridLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item row="1" column="0" >
- <widget class="QLineEdit" name="lineAvgRateLimit" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize" >
- <size>
- <width>50</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize" >
- <size>
- <width>50</width>
- <height>27</height>
- </size>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Long-term average bandwidth limit</string>
- </property>
- <property name="maxLength" >
- <number>10</number>
- </property>
- <property name="alignment" >
- <set>Qt::AlignRight</set>
- </property>
- </widget>
- </item>
- <item row="0" column="0" colspan="2" >
- <widget class="QLabel" name="label_9" >
+ </item>
+ <item>
<property name="text" >
- <string>Average Rate</string>
+ <string>Cable/DSL 768 Kbps</string>
</property>
- </widget>
- </item>
- <item row="1" column="1" >
- <widget class="QLabel" name="label_16" >
+ </item>
+ <item>
<property name="text" >
- <string>KB/s</string>
+ <string>T1/Cable/DSL 1.5 Mbps</string>
</property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QGridLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item row="1" column="0" >
- <widget class="QLineEdit" name="lineMaxRateLimit" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize" >
- <size>
- <width>50</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize" >
- <size>
- <width>50</width>
- <height>27</height>
- </size>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Peak bandwidth rate limit</string>
- </property>
- <property name="maxLength" >
- <number>10</number>
- </property>
- <property name="alignment" >
- <set>Qt::AlignRight</set>
- </property>
- </widget>
- </item>
- <item row="1" column="1" >
- <widget class="QLabel" name="label_15" >
+ </item>
+ <item>
<property name="text" >
- <string>KB/s</string>
+ <string>> 1.5 Mbps</string>
</property>
- </widget>
- </item>
- <item row="0" column="0" colspan="2" >
- <widget class="QLabel" name="label_14" >
+ </item>
+ <item>
<property name="text" >
- <string>Maximum Rate</string>
+ <string>Custom</string>
</property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Vertical</enum>
+ </item>
+ </widget>
+ </item>
+ <item row="1" column="0" colspan="3" >
+ <widget class="QFrame" name="frmCustomRate" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="frameShape" >
+ <enum>QFrame::NoFrame</enum>
+ </property>
+ <property name="frameShadow" >
+ <enum>QFrame::Plain</enum>
+ </property>
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>9</number>
</property>
- <property name="sizeType" >
- <enum>QSizePolicy::Fixed</enum>
+ <property name="spacing" >
+ <number>6</number>
</property>
- <property name="sizeHint" >
- <size>
- <width>20</width>
- <height>21</height>
- </size>
+ <item row="1" column="0" >
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item row="1" column="0" >
+ <widget class="QLineEdit" name="lineAvgRateLimit" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>0</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>50</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>50</width>
+ <height>27</height>
+ </size>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Long-term average bandwidth limit</string>
+ </property>
+ <property name="maxLength" >
+ <number>10</number>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignRight</set>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" colspan="2" >
+ <widget class="QLabel" name="label_10" >
+ <property name="text" >
+ <string>Average Rate</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" >
+ <widget class="QLabel" name="label_17" >
+ <property name="text" >
+ <string>KB/s</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="0" column="0" >
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item row="1" column="0" >
+ <widget class="QLineEdit" name="lineMaxRateLimit" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>0</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>50</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>50</width>
+ <height>27</height>
+ </size>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Peak bandwidth rate limit</string>
+ </property>
+ <property name="maxLength" >
+ <number>10</number>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignRight</set>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" >
+ <widget class="QLabel" name="label_15" >
+ <property name="text" >
+ <string>KB/s</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" colspan="2" >
+ <widget class="QLabel" name="label_14" >
+ <property name="text" >
+ <string>Maximum Rate</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="2" column="0" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="0" column="1" >
+ <widget class="QPushButton" name="btnRateHelp" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Show help topic on bandwidth rate limits</string>
+ </property>
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="icon" >
+ <iconset resource="..\res\vidalia_common.qrc" >:/images/22x22/help-browser.png</iconset>
+ </property>
+ <property name="iconSize" >
+ <size>
+ <width>22</width>
+ <height>22</height>
+ </size>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="2" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="2" column="0" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="ExitPolicies" >
+ <attribute name="title" >
+ <string>Exit Policies</string>
+ </attribute>
+ <layout class="QVBoxLayout" >
+ <property name="margin" >
+ <number>9</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item>
+ <widget class="QLabel" name="label_3" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>0</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>501</width>
+ <height>41</height>
+ </size>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>501</width>
+ <height>41</height>
+ </size>
+ </property>
+ <property name="font" >
+ <font>
+ <family>Arial</family>
+ <pointsize>10</pointsize>
+ <weight>50</weight>
+ <italic>false</italic>
+ <bold>false</bold>
+ <underline>false</underline>
+ <strikeout>false</strikeout>
+ </font>
+ </property>
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="text" >
+ <string>What Internet resources would you like to let Tor users access from your Tor server?</string>
+ </property>
+ <property name="wordWrap" >
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QFrame" name="frmPolicies" >
+ <property name="frameShape" >
+ <enum>QFrame::NoFrame</enum>
+ </property>
+ <property name="frameShadow" >
+ <enum>QFrame::Plain</enum>
+ </property>
+ <layout class="QHBoxLayout" >
+ <property name="margin" >
+ <number>9</number>
</property>
- </spacer>
- </item>
- <item>
- <widget class="QPushButton" name="btnRateHelp" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
+ <property name="spacing" >
+ <number>6</number>
</property>
- <property name="toolTip" >
- <string>Show help topic on bandwidth rate limits</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset resource="../res/vidalia_common.qrc" >:/images/22x22/help-browser.png</iconset>
- </property>
- <property name="iconSize" >
- <size>
- <width>22</width>
- <height>22</height>
- </size>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="grpServerPolicies" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="title" >
- <string>Exit Policies</string>
- </property>
- <layout class="QGridLayout" >
- <property name="margin" >
- <number>9</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item row="1" column="0" >
- <widget class="QFrame" name="frmExitPolicy" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="frameShape" >
- <enum>QFrame::NoFrame</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Plain</enum>
- </property>
- <layout class="QGridLayout" >
+ <item>
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item row="2" column="0" >
+ <widget class="QCheckBox" name="chkMail" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Ports 110, 143, 993 and 995</string>
+ </property>
+ <property name="text" >
+ <string>Retrieve Mail (POP, IMAP)</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0" >
+ <widget class="QCheckBox" name="chkIM" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Ports 706, 1863, 5050, 5190, 5222, 8300 and 8888</string>
+ </property>
+ <property name="text" >
+ <string>Instant Messaging (IM)</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1" >
+ <widget class="QCheckBox" name="chkNoExternal" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Only internal Tor network traffic is passed</string>
+ </property>
+ <property name="text" >
+ <string>No External Connections</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" >
+ <widget class="QCheckBox" name="chkSecWebsites" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Port 443</string>
+ </property>
+ <property name="text" >
+ <string>Secure Websites (SSL)</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" >
+ <widget class="QCheckBox" name="chkWebsites" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Port 80</string>
+ </property>
+ <property name="text" >
+ <string>Websites</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" >
+ <widget class="QCheckBox" name="chkMisc" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Ports unspecified by other checkboxes</string>
+ </property>
+ <property name="text" >
+ <string>Misc Other Services</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1" >
+ <widget class="QCheckBox" name="chkIRC" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
+ </property>
+ <property name="toolTip" >
+ <string>Ports 6660 - 6669 and 6697</string>
+ </property>
+ <property name="text" >
+ <string>Internet Relay Chat (IRC)</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" >
<property name="margin" >
<number>0</number>
</property>
<property name="spacing" >
<number>6</number>
</property>
- <item row="0" column="0" >
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>21</width>
- <height>52</height>
- </size>
- </property>
- </spacer>
- </item>
- <item row="0" column="1" >
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <widget class="QLabel" name="label_6" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>Action:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QComboBox" name="cmboExitAction" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Action for new exit policy</string>
- </property>
- <property name="insertPolicy" >
- <enum>QComboBox::NoInsert</enum>
- </property>
- <item>
- <property name="text" >
- <string>accept</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>reject</string>
- </property>
- </item>
- </widget>
- </item>
- </layout>
- </item>
- <item row="0" column="2" >
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>2</number>
- </property>
- <item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <widget class="QLabel" name="label_5" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>IP Address:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="indent" >
- <number>21</number>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLineEdit" name="lineExitAddress" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize" >
- <size>
- <width>105</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize" >
- <size>
- <width>105</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="cursor" >
- <cursor>4</cursor>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>IP address for new exit policy</string>
- </property>
- <property name="inputMask" >
- <string/>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="maxLength" >
- <number>15</number>
- </property>
- <property name="alignment" >
- <set>Qt::AlignLeading</set>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <widget class="QLabel" name="label_8" >
- <property name="enabled" >
- <bool>false</bool>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string/>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="label_2" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>/</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <widget class="QLabel" name="label_10" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>Mask:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="indent" >
- <number>21</number>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLineEdit" name="lineExitMask" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize" >
- <size>
- <width>40</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize" >
- <size>
- <width>40</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>IP address mask for new exit policy</string>
- </property>
- <property name="maxLength" >
- <number>32767</number>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <widget class="QLabel" name="label_12" >
- <property name="enabled" >
- <bool>false</bool>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string/>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="label_13" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <widget class="QLabel" name="label_7" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>Ports:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>1</number>
- </property>
- <item>
- <widget class="QLineEdit" name="lineExitFromPort" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize" >
- <size>
- <width>50</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize" >
- <size>
- <width>50</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Starting port number for new exit policy</string>
- </property>
- <property name="maxLength" >
- <number>5</number>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="label_11" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string>-</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLineEdit" name="lineExitToPort" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize" >
- <size>
- <width>50</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize" >
- <size>
- <width>50</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="toolTip" >
- <string>Ending port number for new exit policy</string>
- </property>
- <property name="maxLength" >
- <number>5</number>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </item>
- </layout>
- </item>
- <item row="1" column="0" colspan="3" >
- <widget class="QTreeWidget" name="lstExitPolicies" >
+ <item>
+ <widget class="QLabel" name="label" >
<property name="sizePolicy" >
<sizepolicy>
- <hsizetype>7</hsizetype>
- <vsizetype>7</vsizetype>
+ <hsizetype>0</hsizetype>
+ <vsizetype>0</vsizetype>
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize" >
<size>
- <width>0</width>
- <height>0</height>
+ <width>431</width>
+ <height>71</height>
</size>
</property>
<property name="maximumSize" >
<size>
- <width>16777215</width>
- <height>16777215</height>
+ <width>431</width>
+ <height>71</height>
</size>
</property>
<property name="contextMenuPolicy" >
<enum>Qt::NoContextMenu</enum>
</property>
- <property name="editTriggers" >
- <set>QAbstractItemView::NoEditTriggers</set>
+ <property name="text" >
+ <string>Your Tor server won't let Tor users deliver mail directly, or connect to some services that are too high-bandwidth for the current Tor network to handle.</string>
</property>
- <property name="showDropIndicator" stdset="0" >
- <bool>false</bool>
- </property>
- <property name="alternatingRowColors" >
+ <property name="wordWrap" >
<bool>true</bool>
</property>
- <property name="selectionMode" >
- <enum>QAbstractItemView::SingleSelection</enum>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="btnExitHelp" >
+ <property name="contextMenuPolicy" >
+ <enum>Qt::NoContextMenu</enum>
</property>
- <property name="uniformRowHeights" >
- <bool>true</bool>
+ <property name="toolTip" >
+ <string>Show help topic on exit policies.</string>
</property>
- <column>
- <property name="text" >
- <string>Action</string>
- </property>
- </column>
- <column>
- <property name="text" >
- <string>Address</string>
- </property>
- </column>
- <column>
- <property name="text" >
- <string>Port</string>
- </property>
- </column>
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="icon" >
+ <iconset resource="..\res\vidalia_common.qrc" >:/images/22x22/help-browser.png</iconset>
+ </property>
+ <property name="iconSize" >
+ <size>
+ <width>22</width>
+ <height>22</height>
+ </size>
+ </property>
</widget>
</item>
- <item rowspan="2" row="0" column="3" >
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
+ <item>
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
</property>
- <property name="spacing" >
- <number>6</number>
+ <property name="sizeHint" >
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
</property>
- <item>
- <widget class="QLabel" name="label" >
- <property name="enabled" >
- <bool>false</bool>
- </property>
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="text" >
- <string/>
- </property>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <widget class="QPushButton" name="btnAddPolicy" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Add the new exit policy</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset resource="../res/vidalia_common.qrc" >:/images/22x22/list-add.png</iconset>
- </property>
- <property name="iconSize" >
- <size>
- <width>22</width>
- <height>22</height>
- </size>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="btnRaisePriority" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Increase the priority of the selected exit policy</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset resource="../res/vidalia_common.qrc" >:/images/22x22/go-up.png</iconset>
- </property>
- <property name="iconSize" >
- <size>
- <width>22</width>
- <height>22</height>
- </size>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="btnLowerPriority" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Decrease the priority of the selected exit policy</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset resource="../res/vidalia_common.qrc" >:/images/22x22/go-down.png</iconset>
- </property>
- <property name="iconSize" >
- <size>
- <width>22</width>
- <height>22</height>
- </size>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="btnRemovePolicy" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Remove the selected exit policy</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset resource="../res/vidalia_common.qrc" >:/images/22x22/list-remove.png</iconset>
- </property>
- <property name="iconSize" >
- <size>
- <width>22</width>
- <height>22</height>
- </size>
- </property>
- </widget>
- </item>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>20</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <widget class="QPushButton" name="btnExitHelp" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>Show help topic on exit policies</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset resource="../res/vidalia_common.qrc" >:/images/22x22/help-browser.png</iconset>
- </property>
- <property name="iconSize" >
- <size>
- <width>22</width>
- <height>22</height>
- </size>
- </property>
- </widget>
- </item>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>20</width>
- <height>40</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </item>
- </layout>
- </item>
- </layout>
+ </spacer>
</item>
</layout>
- </widget>
- </item>
- <item row="0" column="0" >
- <widget class="QCheckBox" name="chkMiddleMan" >
- <property name="contextMenuPolicy" >
- <enum>Qt::NoContextMenu</enum>
- </property>
- <property name="toolTip" >
- <string>If selected, clients will not exit the Tor network through your server</string>
- </property>
- <property name="text" >
- <string>Only allow connections to other Tor servers (non-exit node)</string>
- </property>
- </widget>
- </item>
- <item row="2" column="0" >
- <spacer>
- <property name="orientation" >
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>20</width>
- <height>0</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
+ </item>
+ </layout>
+ </widget>
</widget>
</item>
</layout>
@@ -1625,8 +1242,8 @@
</property>
<property name="sizeHint" >
<size>
- <width>494</width>
- <height>16</height>
+ <width>20</width>
+ <height>40</height>
</size>
</property>
</spacer>
@@ -1652,53 +1269,5 @@
</hint>
</hints>
</connection>
- <connection>
- <sender>chkMirrorDirectory</sender>
- <signal>toggled(bool)</signal>
- <receiver>lineDirPort</receiver>
- <slot>setEnabled(bool)</slot>
- <hints>
- <hint type="sourcelabel" >
- <x>257</x>
- <y>42</y>
- </hint>
- <hint type="destinationlabel" >
- <x>257</x>
- <y>308</y>
- </hint>
- </hints>
- </connection>
- <connection>
- <sender>chkMirrorDirectory</sender>
- <signal>toggled(bool)</signal>
- <receiver>lblDirPort</receiver>
- <slot>setEnabled(bool)</slot>
- <hints>
- <hint type="sourcelabel" >
- <x>257</x>
- <y>42</y>
- </hint>
- <hint type="destinationlabel" >
- <x>257</x>
- <y>308</y>
- </hint>
- </hints>
- </connection>
- <connection>
- <sender>chkMiddleMan</sender>
- <signal>toggled(bool)</signal>
- <receiver>frmExitPolicy</receiver>
- <slot>setHidden(bool)</slot>
- <hints>
- <hint type="sourcelabel" >
- <x>266</x>
- <y>334</y>
- </hint>
- <hint type="destinationlabel" >
- <x>266</x>
- <y>456</y>
- </hint>
- </hints>
- </connection>
</connections>
</ui>