1
0
mirror of https://github.com/fwbuilder/fwbuilder synced 2026-03-22 19:27:13 +01:00

Fixed #1565: added "Cancel All" button to instOptionsDialog

This commit is contained in:
Roman Bovsunivskiy 2010-07-13 17:34:38 +00:00
parent 1800b65b89
commit 92c898fe00
7 changed files with 252 additions and 192 deletions

View File

@ -1,3 +1,9 @@
2010-07-13 Roman Bovsunivskiy <a2k0001@gmail.com>
* instdialogoptions_q.ui: Added "Cancell All" button to stop all
firewalls installations, renamed OK button to "Install"
* instDialog_ui_opts.cpp (instDialog::getInstOptions): added support
for "Cancel All" dialog result code.
2010-07-12 Roman Bovsunivskiy <a2k0001@gmail.com>
* instDialog_ui_opts.cpp (intDialog::fillCompileSelectList): fixed
wrong display of non-ascii symbols in cluster member compilation

View File

@ -175,6 +175,7 @@ void instDialog::show(ProjectPanel *proj,
bool onlySelected,
std::set<Firewall*> fws)
{
canceledAll = false;
if (isVisible()) return;
lastPage = -1;
installer = NULL;
@ -349,7 +350,7 @@ void instDialog::mainLoopInstall()
enableStopButton();
if (install_fw_list.size())
if (install_fw_list.size() && !canceledAll)
{
Firewall *fw = install_fw_list.front();
@ -366,6 +367,14 @@ void instDialog::mainLoopInstall()
runInstaller(fw);
return;
}
if (canceledAll)
{
foreach(Firewall *fw, install_fw_list)
{
this->opCancelled(fw);
}
install_fw_list.clear();
}
finished = true;
setFinishEnabled(currentPage(), true);

View File

@ -132,6 +132,7 @@ class instDialog : public QDialog, public FakeWizard
bool finished;
bool onlySelected;
bool secondPageVisited;
bool canceledAll;
QTextCharFormat normal_format;
QTextCharFormat error_format;

View File

@ -1062,7 +1062,17 @@ bool instDialog::getInstOptions(Firewall *fw)
// In non-batch mode installer options from the dialog
// overwrite options set in the fw object itself.
instOptionsDialog *inst_opt_dlg = new instOptionsDialog(this, &cnf);
if (inst_opt_dlg->exec()==QDialog::Rejected)
int resultCode = inst_opt_dlg->exec();
// 0 - rejected
// 1 - accepted
// -1 - cancell all clicked
if (resultCode == -1)
{
canceledAll = true;
delete inst_opt_dlg;
return false;
}
if (resultCode == QDialog::Rejected)
{
delete inst_opt_dlg;
return false;

View File

@ -230,3 +230,8 @@ QString instOptionsDialog::getUName() { return m_dialog->uname->text(); }
QString instOptionsDialog::getPWD() { return m_dialog->pwd->text(); }
QString instOptionsDialog::getEPWD() { return m_dialog->epwd->text(); }
void instOptionsDialog::cancelAll()
{
this->done(-1);
}

View File

@ -51,6 +51,8 @@ class instOptionsDialog : public QDialog
Ui::instOptionsDialog_q *m_dialog;
public slots:
void cancelAll();
};

View File

@ -1,7 +1,8 @@
<ui version="4.0" >
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>instOptionsDialog_q</class>
<widget class="QDialog" name="instOptionsDialog_q" >
<property name="geometry" >
<widget class="QDialog" name="instOptionsDialog_q">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
@ -9,55 +10,55 @@
<height>842</height>
</rect>
</property>
<property name="sizePolicy" >
<sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize" >
<property name="maximumSize">
<size>
<width>32767</width>
<height>32767</height>
</size>
</property>
<property name="focusPolicy" >
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="windowTitle" >
<property name="windowTitle">
<string>Install options</string>
</property>
<property name="sizeGripEnabled" >
<property name="sizeGripEnabled">
<bool>false</bool>
</property>
<layout class="QGridLayout" name="gridLayout_4" >
<item row="0" column="0" >
<widget class="QFrame" name="titleFrame" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
<layout class="QGridLayout" name="gridLayout_4">
<item row="0" column="0">
<widget class="QFrame" name="titleFrame">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize" >
<property name="maximumSize">
<size>
<width>32767</width>
<height>32767</height>
</size>
</property>
<property name="frameShape" >
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow" >
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QHBoxLayout" >
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="dialogTitleLine" >
<property name="text" >
<string>&lt;p align="center">&lt;b>&lt;font size="+2">Install options for firewall '%1'&lt;/font>&lt;/b>&lt;/p></string>
<widget class="QLabel" name="dialogTitleLine">
<property name="text">
<string>&lt;p align=&quot;center&quot;&gt;&lt;b&gt;&lt;font size=&quot;+2&quot;&gt;Install options for firewall '%1'&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;</string>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
@ -65,64 +66,64 @@
</layout>
</widget>
</item>
<item row="1" column="0" >
<widget class="QFrame" name="mainBox" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Minimum" hsizetype="Preferred" >
<item row="1" column="0">
<widget class="QFrame" name="mainBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="frameShape" >
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow" >
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" name="gridLayout_3" >
<item row="0" column="0" colspan="2" >
<widget class="QFrame" name="frame15" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0" colspan="2">
<widget class="QFrame" name="frame15">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize" >
<property name="minimumSize">
<size>
<width>500</width>
<height>50</height>
</size>
</property>
<property name="frameShape" >
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow" >
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" name="gridLayout" >
<item row="0" column="0" >
<widget class="QLabel" name="unameLbl" >
<property name="text" >
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="unameLbl">
<property name="text">
<string>User name:</string>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="0" column="1" >
<widget class="QLineEdit" name="uname" />
<item row="0" column="1">
<widget class="QLineEdit" name="uname"/>
</item>
<item row="0" column="2" >
<item row="0" column="2">
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType" >
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>22</height>
@ -130,44 +131,44 @@
</property>
</spacer>
</item>
<item row="1" column="0" >
<widget class="QLabel" name="pwdLbl" >
<property name="text" >
<item row="1" column="0">
<widget class="QLabel" name="pwdLbl">
<property name="text">
<string>Password or passphrase:</string>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="1" column="1" >
<widget class="QLineEdit" name="pwd" />
<item row="1" column="1">
<widget class="QLineEdit" name="pwd"/>
</item>
<item row="2" column="0" >
<widget class="QLabel" name="epwdLbl" >
<property name="text" >
<item row="2" column="0">
<widget class="QLabel" name="epwdLbl">
<property name="text">
<string>Enable password:</string>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="2" column="1" >
<widget class="QLineEdit" name="epwd" />
<item row="2" column="1">
<widget class="QLineEdit" name="epwd"/>
</item>
<item row="3" column="0" >
<widget class="QCheckBox" name="rememberPass" >
<property name="toolTip" >
<item row="3" column="0">
<widget class="QCheckBox" name="rememberPass">
<property name="toolTip">
<string>Remember passwords for the duration of the session (passwords
are never stored permanently). To enable this option turn it on
in Preferences and configure user name used to authenticate to
the firewall in the "advanced" settings dialog of the firewall object.</string>
the firewall in the &quot;advanced&quot; settings dialog of the firewall object.</string>
</property>
<property name="layoutDirection" >
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="text" >
<property name="text">
<string>Remember passwords</string>
</property>
</widget>
@ -175,60 +176,60 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
</layout>
</widget>
</item>
<item row="1" column="0" colspan="2" >
<widget class="QGroupBox" name="PIXgroupBox" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
<item row="1" column="0" colspan="2">
<widget class="QGroupBox" name="PIXgroupBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="title" >
<property name="title">
<string/>
</property>
<property name="flat" >
<property name="flat">
<bool>false</bool>
</property>
<layout class="QGridLayout" >
<property name="margin" >
<layout class="QGridLayout">
<property name="margin">
<number>12</number>
</property>
<item row="3" column="0" colspan="2" >
<widget class="QCheckBox" name="saveStandby" >
<property name="text" >
<item row="3" column="0" colspan="2">
<widget class="QCheckBox" name="saveStandby">
<property name="text">
<string>Write configuration to standby PIX</string>
</property>
</widget>
</item>
<item row="2" column="0" colspan="2" >
<widget class="QCheckBox" name="saveDiff" >
<property name="text" >
<item row="2" column="0" colspan="2">
<widget class="QCheckBox" name="saveDiff">
<property name="text">
<string>Store configuration diff in a file</string>
</property>
</widget>
</item>
<item row="1" column="0" >
<widget class="QLabel" name="backupConfigFileLbl" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Preferred" hsizetype="Expanding" >
<item row="1" column="0">
<widget class="QLabel" name="backupConfigFileLbl">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text" >
<property name="text">
<string>Make a backup copy of the firewall configuration in this file:</string>
</property>
<property name="alignment" >
<property name="alignment">
<set>Qt::AlignVCenter</set>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="1" >
<widget class="QLineEdit" name="backupConfigFile" >
<property name="minimumSize" >
<item row="1" column="1">
<widget class="QLineEdit" name="backupConfigFile">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
@ -239,34 +240,34 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
</layout>
</widget>
</item>
<item row="2" column="0" >
<widget class="QLabel" name="altAddressLabel" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Preferred" hsizetype="Expanding" >
<item row="2" column="0">
<widget class="QLabel" name="altAddressLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text" >
<property name="text">
<string>Address that will be used to communicate with the firewall:</string>
</property>
<property name="alignment" >
<property name="alignment">
<set>Qt::AlignVCenter</set>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="2" column="1" >
<widget class="QLineEdit" name="altAddress" >
<property name="minimumSize" >
<item row="2" column="1">
<widget class="QLineEdit" name="altAddress">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="maximumSize" >
<property name="maximumSize">
<size>
<width>32767</width>
<height>32767</height>
@ -274,59 +275,59 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
</property>
</widget>
</item>
<item row="3" column="0" colspan="2" >
<widget class="QFrame" name="generalOptionsBox" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
<item row="3" column="0" colspan="2">
<widget class="QFrame" name="generalOptionsBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="frameShape" >
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow" >
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" name="gridLayout_2" >
<item row="0" column="0" >
<widget class="QCheckBox" name="test" >
<property name="text" >
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QCheckBox" name="test">
<property name="text">
<string>Dry run (commands won't be executed on the firewall)</string>
</property>
</widget>
</item>
<item row="1" column="0" >
<widget class="QCheckBox" name="quiet" >
<property name="text" >
<item row="1" column="0">
<widget class="QCheckBox" name="quiet">
<property name="text">
<string>Quiet install: do not print anything as commands are executed on the firewall</string>
</property>
</widget>
</item>
<item row="2" column="0" >
<widget class="QCheckBox" name="verbose" >
<property name="text" >
<item row="2" column="0">
<widget class="QCheckBox" name="verbose">
<property name="text">
<string>Verbose: print all commands as they are executed on the firewall</string>
</property>
</widget>
</item>
<item row="3" column="0" >
<widget class="QCheckBox" name="stripComments" >
<property name="text" >
<item row="3" column="0">
<widget class="QCheckBox" name="stripComments">
<property name="text">
<string>Remove comments from configuration</string>
</property>
</widget>
</item>
<item row="4" column="0" >
<widget class="QCheckBox" name="compressScript" >
<property name="text" >
<item row="4" column="0">
<widget class="QCheckBox" name="compressScript">
<property name="text">
<string>Compress script</string>
</property>
</widget>
</item>
<item row="5" column="0" >
<widget class="QCheckBox" name="copyFWB" >
<property name="text" >
<item row="5" column="0">
<widget class="QCheckBox" name="copyFWB">
<property name="text">
<string>Store a copy of fwb file on the firewall</string>
</property>
</widget>
@ -334,47 +335,47 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
</layout>
</widget>
</item>
<item row="4" column="0" colspan="2" >
<widget class="QFrame" name="testOptionsBox" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
<item row="4" column="0" colspan="2">
<widget class="QFrame" name="testOptionsBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="frameShape" >
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow" >
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" >
<item row="2" column="2" >
<widget class="QLabel" name="rollbackTimeUnit" >
<property name="text" >
<layout class="QGridLayout">
<item row="2" column="2">
<widget class="QLabel" name="rollbackTimeUnit">
<property name="text">
<string>min</string>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="2" column="1" >
<widget class="QSpinBox" name="rollbackTime" >
<property name="maximum" >
<item row="2" column="1">
<widget class="QSpinBox" name="rollbackTime">
<property name="maximum">
<number>99999</number>
</property>
</widget>
</item>
<item row="2" column="3" colspan="2" >
<item row="2" column="3" colspan="2">
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>140</width>
<height>20</height>
@ -382,22 +383,22 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
</property>
</spacer>
</item>
<item row="1" column="0" colspan="4" >
<widget class="QCheckBox" name="testRun" >
<property name="text" >
<item row="1" column="0" colspan="4">
<widget class="QCheckBox" name="testRun">
<property name="text">
<string>Test run: run the script on the firewall but do not store it permanently.</string>
</property>
</widget>
</item>
<item row="1" column="4" >
<item row="1" column="4">
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>30</width>
<height>20</height>
@ -405,32 +406,32 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
</property>
</spacer>
</item>
<item row="2" column="0" >
<widget class="QCheckBox" name="rollback" >
<property name="toolTip" >
<string>Rebooting the firewall will restore its original policy. To cancel reboot, install the policy with "test run" option turned off</string>
<item row="2" column="0">
<widget class="QCheckBox" name="rollback">
<property name="toolTip">
<string>Rebooting the firewall will restore its original policy. To cancel reboot, install the policy with &quot;test run&quot; option turned off</string>
</property>
<property name="text" >
<property name="text">
<string>Schedule reboot in </string>
</property>
</widget>
</item>
<item row="0" column="0" colspan="5" >
<widget class="QLabel" name="textLabel1" >
<property name="text" >
<item row="0" column="0" colspan="5">
<widget class="QLabel" name="textLabel1">
<property name="text">
<string>If you install the policy in test mode, it will not be saved permanently, so you can revert to the last working configuration by rebooting the firewall</string>
</property>
<property name="alignment" >
<property name="alignment">
<set>Qt::AlignVCenter</set>
</property>
<property name="wordWrap" >
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="3" column="0" colspan="5" >
<widget class="QCheckBox" name="cancelRollbackIfSuccess" >
<property name="text" >
<item row="3" column="0" colspan="5">
<widget class="QCheckBox" name="cancelRollbackIfSuccess">
<property name="text">
<string>Cancel reboot if policy activation was successfull</string>
</property>
</widget>
@ -438,12 +439,12 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
</layout>
</widget>
</item>
<item row="5" column="0" colspan="2" >
<spacer name="verticalSpacer" >
<property name="orientation" >
<item row="5" column="0" colspan="2">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>568</width>
<height>37</height>
@ -454,50 +455,50 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
</layout>
</widget>
</item>
<item row="2" column="0" >
<widget class="QFrame" name="buttonsFrame" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
<item row="2" column="0">
<widget class="QFrame" name="buttonsFrame">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize" >
<property name="maximumSize">
<size>
<width>32767</width>
<height>32767</height>
</size>
</property>
<property name="frameShape" >
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow" >
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" >
<item row="0" column="1" >
<widget class="QPushButton" name="okButton" >
<property name="text" >
<string>OK</string>
<layout class="QGridLayout">
<item row="0" column="1">
<widget class="QPushButton" name="okButton">
<property name="text">
<string>Install</string>
</property>
</widget>
</item>
<item row="0" column="2" >
<widget class="QPushButton" name="cancelButton" >
<property name="text" >
<item row="0" column="2">
<widget class="QPushButton" name="cancelButton">
<property name="text">
<string>Cancel</string>
</property>
</widget>
</item>
<item row="0" column="0" >
<item row="0" column="0">
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0" >
<property name="sizeHint" stdset="0">
<size>
<width>230</width>
<height>20</height>
@ -505,6 +506,13 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
</property>
</spacer>
</item>
<item row="0" column="3">
<widget class="QPushButton" name="cancelAllButton">
<property name="text">
<string>Cancel All</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
@ -538,11 +546,11 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
<receiver>instOptionsDialog_q</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>262</x>
<y>702</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
@ -554,15 +562,34 @@ the firewall in the "advanced" settings dialog of the firewall object.</string>
<receiver>instOptionsDialog_q</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel" >
<hint type="sourcelabel">
<x>433</x>
<y>702</y>
</hint>
<hint type="destinationlabel" >
<hint type="destinationlabel">
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>
<connection>
<sender>cancelAllButton</sender>
<signal>clicked()</signal>
<receiver>instOptionsDialog_q</receiver>
<slot>cancelAll()</slot>
<hints>
<hint type="sourcelabel">
<x>542</x>
<y>809</y>
</hint>
<hint type="destinationlabel">
<x>307</x>
<y>420</y>
</hint>
</hints>
</connection>
</connections>
<slots>
<slot>cancelAll()</slot>
</slots>
</ui>