1
0
mirror of https://github.com/fwbuilder/fwbuilder synced 2026-03-24 12:17:26 +01:00

bugfix 2577

This commit is contained in:
2008-06-01 18:58:12 +00:00
parent 1914d4972e
commit 0f6f034cdd
6 changed files with 1678 additions and 1295 deletions

View File

@ -80,7 +80,6 @@ newFirewallDialog::newFirewallDialog() : QDialog()
m_dialog->backButton,
m_dialog->cancelButton,
m_dialog->titleLabel);
/*connect( m_dialog->nextButton, SIGNAL( clicked() ),
this, SLOT( nextClicked() ));
connect( m_dialog->backButton, SIGNAL( clicked() ),
@ -99,6 +98,11 @@ newFirewallDialog::newFirewallDialog() : QDialog()
timer = new QTimer(this);
connect( timer, SIGNAL(timeout()), this, SLOT(monitor()) );
connect( m_dialog->templaterBrowseButton, SIGNAL(pressed()),this,SLOT(browseTemplate()));
connect( m_dialog->templateUseStandart, SIGNAL(pressed()),this,SLOT(useStandartTemplate()));
connect( m_dialog->useTemplate, SIGNAL(released()),this,SLOT(showHideTemplatePanel()));
m_dialog->templaterFilePath->setText(tempfname.c_str());
m_dialog->templaterFrame->setVisible(false);
/* fill in platform */
setPlatform(m_dialog->platform, "" );
@ -122,6 +126,35 @@ newFirewallDialog::newFirewallDialog() : QDialog()
showPage(0);
}
void newFirewallDialog::browseTemplate()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("FWBuilder template files"), "", tr("FWBuilder template files (*.xml *.fwb)"));
if (fileName=="")
return ;
QDir dir (fileName);
// if (dir.exists ())
// {
m_dialog->templaterFilePath->setText(fileName);
// }
}
void newFirewallDialog::useStandartTemplate()
{
m_dialog->templaterFilePath->setText(tempfname.c_str());
}
void newFirewallDialog::showHideTemplatePanel()
{
if (m_dialog->useTemplate->checkState()==Qt::Checked)
{
m_dialog->templaterFrame->setVisible(true);
}
else
{
m_dialog->templaterFrame->setVisible(false);
}
}
newFirewallDialog::~newFirewallDialog()
{
delete m_dialog;
@ -137,6 +170,7 @@ void newFirewallDialog::changed()
if (p==0)
{
setNextEnabled( p, !m_dialog->obj_name->text().isEmpty() );
}
if (p==1)
@ -390,7 +424,7 @@ void newFirewallDialog::showPage(const int page)
tmpldb = new FWObjectDatabase();
tmpldb->setReadOnly( false );
tmpldb->load( tempfname, &upgrade_predicate, librespath);
tmpldb->load( m_dialog->templaterFilePath->text().toAscii().data(), &upgrade_predicate, librespath);
}
FWObject *tlib = tmpldb->getById(TEMPLATE_LIB);

View File

@ -89,7 +89,9 @@ public slots:
virtual void getInterfacesViaSNMP();
virtual void monitor();
virtual void templateSelected(QListWidgetItem *itm);
void browseTemplate();
void useStandartTemplate();
void showHideTemplatePanel();
protected slots:
void finishClicked();

View File

@ -94,6 +94,11 @@ newHostDialog::newHostDialog() : QDialog()
timer = new QTimer(this);
connect( timer, SIGNAL(timeout()), this, SLOT(monitor()) );
connect( m_dialog->templaterBrowseButton, SIGNAL(pressed()),this,SLOT(browseTemplate()));
connect( m_dialog->templateUseStandart, SIGNAL(pressed()),this,SLOT(useStandartTemplate()));
connect( m_dialog->useTemplate, SIGNAL(released()),this,SLOT(showHideTemplatePanel()));
m_dialog->templaterFilePath->setText(tempfname.c_str());
m_dialog->templaterFrame->setVisible(false);
setNextEnabled( OBJECT_NAME_PAGE, false );
@ -104,6 +109,36 @@ newHostDialog::newHostDialog() : QDialog()
showPage(0);
}
void newHostDialog::browseTemplate()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("FWBuilder template files"), "", tr("FWBuilder template files (*.xml *.fwb)"));
if (fileName=="")
return ;
QDir dir (fileName);
// if (dir.exists ())
// {
m_dialog->templaterFilePath->setText(fileName);
// }
}
void newHostDialog::useStandartTemplate()
{
m_dialog->templaterFilePath->setText(tempfname.c_str());
}
void newHostDialog::showHideTemplatePanel()
{
if (m_dialog->useTemplate->checkState()==Qt::Checked)
{
m_dialog->templaterFrame->setVisible(true);
}
else
{
m_dialog->templaterFrame->setVisible(false);
}
}
newHostDialog::~newHostDialog()
{
delete m_dialog;

View File

@ -67,7 +67,7 @@ class newHostDialog : public QDialog, public FakeWizard
void fillInterfaceData(libfwbuilder::Interface *intf, QTextBrowser *qte);
bool validateAddressAndMask(const QString &addr, const QString &netm);
public:
newHostDialog();
virtual ~newHostDialog();
@ -89,7 +89,9 @@ public slots:
virtual void selectedInterface(QTreeWidgetItem*,QTreeWidgetItem*);
virtual void templateSelected(QListWidgetItem *itm);
void browseTemplate();
void useStandartTemplate();
void showHideTemplatePanel();
protected slots:

File diff suppressed because it is too large Load Diff

View File

@ -5,23 +5,30 @@
<rect>
<x>0</x>
<y>0</y>
<width>486</width>
<width>488</width>
<height>701</height>
</rect>
</property>
<layout class="QVBoxLayout" >
<property name="margin" >
<number>9</number>
</property>
<property name="spacing" >
<number>6</number>
</property>
<property name="leftMargin" >
<number>9</number>
</property>
<property name="topMargin" >
<number>9</number>
</property>
<property name="rightMargin" >
<number>9</number>
</property>
<property name="bottomMargin" >
<number>9</number>
</property>
<item>
<widget class="QLabel" name="titleLabel" >
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>3</hsizetype>
<vsizetype>0</vsizetype>
<sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -52,24 +59,32 @@
<item>
<widget class="QStackedWidget" name="stackedWidget" >
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>5</hsizetype>
<vsizetype>5</vsizetype>
<sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex" >
<number>3</number>
<number>0</number>
</property>
<widget class="QWidget" name="page0" >
<layout class="QGridLayout" >
<property name="margin" >
<number>0</number>
</property>
<property name="spacing" >
<number>6</number>
</property>
<item row="0" column="1" >
<spacer>
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" >
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="0" >
<widget class="QLabel" name="label631" >
<property name="text" >
@ -102,44 +117,10 @@
</property>
</spacer>
</item>
<item row="0" column="1" >
<spacer>
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" >
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="6" column="1" >
<spacer>
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" >
<size>
<width>20</width>
<height>150</height>
</size>
</property>
</spacer>
</item>
<item row="4" column="0" colspan="3" >
<item row="2" column="0" colspan="3" >
<widget class="Line" name="line1" >
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>1</hsizetype>
<vsizetype>0</vsizetype>
<sizepolicy vsizetype="Fixed" hsizetype="Minimum" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -161,21 +142,101 @@
</property>
</widget>
</item>
<item row="5" column="0" colspan="3" >
<item row="3" column="0" colspan="3" >
<widget class="QCheckBox" name="useTemplate" >
<property name="text" >
<string>Use preconfigured template host objects</string>
</property>
</widget>
</item>
<item row="4" column="0" colspan="3" >
<widget class="QFrame" name="templaterFrame" >
<property name="frameShape" >
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow" >
<enum>QFrame::Raised</enum>
</property>
<layout class="QGridLayout" >
<item row="0" column="0" >
<widget class="QLabel" name="label_2" >
<property name="text" >
<string>Template file:</string>
</property>
</widget>
</item>
<item row="0" column="1" >
<widget class="QLineEdit" name="templaterFilePath" />
</item>
<item row="1" column="0" >
<widget class="QPushButton" name="templaterBrowseButton" >
<property name="text" >
<string>Browse</string>
</property>
</widget>
</item>
<item row="1" column="1" >
<widget class="QPushButton" name="templateUseStandart" >
<property name="text" >
<string>Use standard template library</string>
</property>
</widget>
</item>
<item row="1" column="2" >
<spacer>
<property name="orientation" >
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType" >
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" >
<size>
<width>100</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
<item row="5" column="1" >
<spacer>
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" >
<size>
<width>144</width>
<height>341</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="page1" >
<layout class="QGridLayout" >
<property name="margin" >
<property name="leftMargin" >
<number>0</number>
</property>
<property name="spacing" >
<property name="topMargin" >
<number>0</number>
</property>
<property name="rightMargin" >
<number>0</number>
</property>
<property name="bottomMargin" >
<number>0</number>
</property>
<property name="horizontalSpacing" >
<number>6</number>
</property>
<property name="verticalSpacing" >
<number>6</number>
</property>
<item row="0" column="0" >
@ -213,10 +274,22 @@
<string/>
</property>
<layout class="QGridLayout" >
<property name="margin" >
<property name="leftMargin" >
<number>0</number>
</property>
<property name="spacing" >
<property name="topMargin" >
<number>0</number>
</property>
<property name="rightMargin" >
<number>0</number>
</property>
<property name="bottomMargin" >
<number>0</number>
</property>
<property name="horizontalSpacing" >
<number>6</number>
</property>
<property name="verticalSpacing" >
<number>6</number>
</property>
<item row="0" column="0" >
@ -241,10 +314,22 @@
</item>
<item row="3" column="0" >
<layout class="QGridLayout" >
<property name="margin" >
<property name="leftMargin" >
<number>0</number>
</property>
<property name="spacing" >
<property name="topMargin" >
<number>0</number>
</property>
<property name="rightMargin" >
<number>0</number>
</property>
<property name="bottomMargin" >
<number>0</number>
</property>
<property name="horizontalSpacing" >
<number>6</number>
</property>
<property name="verticalSpacing" >
<number>6</number>
</property>
<item row="1" column="4" >
@ -327,18 +412,28 @@
</widget>
<widget class="QWidget" name="page2" >
<layout class="QGridLayout" >
<property name="margin" >
<property name="leftMargin" >
<number>0</number>
</property>
<property name="spacing" >
<property name="topMargin" >
<number>0</number>
</property>
<property name="rightMargin" >
<number>0</number>
</property>
<property name="bottomMargin" >
<number>0</number>
</property>
<property name="horizontalSpacing" >
<number>6</number>
</property>
<property name="verticalSpacing" >
<number>6</number>
</property>
<item row="0" column="0" >
<widget class="QLabel" name="label632" >
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>5</hsizetype>
<vsizetype>0</vsizetype>
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -357,9 +452,7 @@
<item row="1" column="0" >
<widget class="QLabel" name="label660" >
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>5</hsizetype>
<vsizetype>0</vsizetype>
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -378,9 +471,7 @@
<item row="2" column="0" >
<widget class="QLabel" name="label661" >
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>5</hsizetype>
<vsizetype>0</vsizetype>
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -412,9 +503,7 @@
<item row="4" column="0" >
<widget class="QFrame" name="frame149" >
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>7</hsizetype>
<vsizetype>7</vsizetype>
<sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -426,10 +515,22 @@
<enum>QFrame::Sunken</enum>
</property>
<layout class="QGridLayout" >
<property name="margin" >
<property name="leftMargin" >
<number>11</number>
</property>
<property name="spacing" >
<property name="topMargin" >
<number>11</number>
</property>
<property name="rightMargin" >
<number>11</number>
</property>
<property name="bottomMargin" >
<number>11</number>
</property>
<property name="horizontalSpacing" >
<number>6</number>
</property>
<property name="verticalSpacing" >
<number>6</number>
</property>
<item row="1" column="0" >
@ -574,12 +675,21 @@
</item>
<item row="5" column="0" colspan="4" >
<layout class="QHBoxLayout" >
<property name="margin" >
<number>0</number>
</property>
<property name="spacing" >
<number>6</number>
</property>
<property name="leftMargin" >
<number>0</number>
</property>
<property name="topMargin" >
<number>0</number>
</property>
<property name="rightMargin" >
<number>0</number>
</property>
<property name="bottomMargin" >
<number>0</number>
</property>
<item>
<widget class="QPushButton" name="addBtn" >
<property name="text" >
@ -610,18 +720,28 @@
</widget>
<widget class="QWidget" name="page3" >
<layout class="QGridLayout" >
<property name="margin" >
<property name="leftMargin" >
<number>0</number>
</property>
<property name="spacing" >
<property name="topMargin" >
<number>0</number>
</property>
<property name="rightMargin" >
<number>0</number>
</property>
<property name="bottomMargin" >
<number>0</number>
</property>
<property name="horizontalSpacing" >
<number>6</number>
</property>
<property name="verticalSpacing" >
<number>6</number>
</property>
<item row="1" column="1" >
<widget class="QFrame" name="frame5" >
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>0</hsizetype>
<vsizetype>0</vsizetype>
<sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -648,9 +768,7 @@
</rect>
</property>
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>1</hsizetype>
<vsizetype>0</vsizetype>
<sizepolicy vsizetype="Fixed" hsizetype="Minimum" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -681,9 +799,7 @@
</rect>
</property>
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>0</hsizetype>
<vsizetype>1</vsizetype>
<sizepolicy vsizetype="Minimum" hsizetype="Fixed" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -781,9 +897,7 @@
</rect>
</property>
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>0</hsizetype>
<vsizetype>1</vsizetype>
<sizepolicy vsizetype="Minimum" hsizetype="Fixed" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -832,9 +946,7 @@
<item>
<widget class="QFrame" name="frame" >
<property name="sizePolicy" >
<sizepolicy>
<hsizetype>3</hsizetype>
<vsizetype>0</vsizetype>
<sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" >
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -852,12 +964,21 @@
<enum>QFrame::Raised</enum>
</property>
<layout class="QHBoxLayout" >
<property name="margin" >
<number>9</number>
</property>
<property name="spacing" >
<number>6</number>
</property>
<property name="leftMargin" >
<number>9</number>
</property>
<property name="topMargin" >
<number>9</number>
</property>
<property name="rightMargin" >
<number>9</number>
</property>
<property name="bottomMargin" >
<number>9</number>
</property>
<item>
<spacer>
<property name="orientation" >