Initial settings dialog content

This commit is contained in:
Dan Paulat 2022-12-01 14:42:43 -06:00
parent 7a430da807
commit 65fd47968a
8 changed files with 418 additions and 26 deletions

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--! Font Awesome Pro 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path d="M308.5 135.3c7.1-6.3 9.9-16.2 6.2-25c-2.3-5.3-4.8-10.5-7.6-15.5L304 89.4c-3-5-6.3-9.9-9.8-14.6c-5.7-7.6-15.7-10.1-24.7-7.1l-28.2 9.3c-10.7-8.8-23-16-36.2-20.9L199 27.1c-1.9-9.3-9.1-16.7-18.5-17.8C173.7 8.4 166.9 8 160 8s-13.7 .4-20.4 1.2c-9.4 1.1-16.6 8.6-18.5 17.8L115 56.1c-13.3 5-25.5 12.1-36.2 20.9L50.5 67.8c-9-3-19-.5-24.7 7.1c-3.5 4.7-6.8 9.6-9.9 14.6l-3 5.3c-2.8 5-5.3 10.2-7.6 15.6c-3.7 8.7-.9 18.6 6.2 25l22.2 19.8C32.6 161.9 32 168.9 32 176s.6 14.1 1.7 20.9L11.5 216.7c-7.1 6.3-9.9 16.2-6.2 25c2.3 5.3 4.8 10.5 7.6 15.6l3 5.2c3 5.1 6.3 9.9 9.9 14.6c5.7 7.6 15.7 10.1 24.7 7.1l28.2-9.3c10.7 8.8 23 16 36.2 20.9l6.1 29.1c1.9 9.3 9.1 16.7 18.5 17.8c6.7 .8 13.5 1.2 20.4 1.2s13.7-.4 20.4-1.2c9.4-1.1 16.6-8.6 18.5-17.8l6.1-29.1c13.3-5 25.5-12.1 36.2-20.9l28.2 9.3c9 3 19 .5 24.7-7.1c3.5-4.7 6.8-9.5 9.8-14.6l3.1-5.4c2.8-5 5.3-10.2 7.6-15.5c3.7-8.7 .9-18.6-6.2-25l-22.2-19.8c1.1-6.8 1.7-13.8 1.7-20.9s-.6-14.1-1.7-20.9l22.2-19.8zM208 176c0 26.5-21.5 48-48 48s-48-21.5-48-48s21.5-48 48-48s48 21.5 48 48zM504.7 500.5c6.3 7.1 16.2 9.9 25 6.2c5.3-2.3 10.5-4.8 15.5-7.6l5.4-3.1c5-3 9.9-6.3 14.6-9.8c7.6-5.7 10.1-15.7 7.1-24.7l-9.3-28.2c8.8-10.7 16-23 20.9-36.2l29.1-6.1c9.3-1.9 16.7-9.1 17.8-18.5c.8-6.7 1.2-13.5 1.2-20.4s-.4-13.7-1.2-20.4c-1.1-9.4-8.6-16.6-17.8-18.5L583.9 307c-5-13.3-12.1-25.5-20.9-36.2l9.3-28.2c3-9 .5-19-7.1-24.7c-4.7-3.5-9.6-6.8-14.6-9.9l-5.3-3c-5-2.8-10.2-5.3-15.6-7.6c-8.7-3.7-18.6-.9-25 6.2l-19.8 22.2c-6.8-1.1-13.8-1.7-20.9-1.7s-14.1 .6-20.9 1.7l-19.8-22.2c-6.3-7.1-16.2-9.9-25-6.2c-5.3 2.3-10.5 4.8-15.6 7.6l-5.2 3c-5.1 3-9.9 6.3-14.6 9.9c-7.6 5.7-10.1 15.7-7.1 24.7l9.3 28.2c-8.8 10.7-16 23-20.9 36.2L315.1 313c-9.3 1.9-16.7 9.1-17.8 18.5c-.8 6.7-1.2 13.5-1.2 20.4s.4 13.7 1.2 20.4c1.1 9.4 8.6 16.6 17.8 18.5l29.1 6.1c5 13.3 12.1 25.5 20.9 36.2l-9.3 28.2c-3 9-.5 19 7.1 24.7c4.7 3.5 9.5 6.8 14.6 9.8l5.4 3.1c5 2.8 10.2 5.3 15.5 7.6c8.7 3.7 18.6 .9 25-6.2l19.8-22.2c6.8 1.1 13.8 1.7 20.9 1.7s14.1-.6 20.9-1.7l19.8 22.2zM464 400c-26.5 0-48-21.5-48-48s21.5-48 48-48s48 21.5 48 48s-21.5 48-48 48z"/></svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path d="M512 256c0 .9 0 1.8 0 2.7c-.4 36.5-33.6 61.3-70.1 61.3H344c-26.5 0-48 21.5-48 48c0 3.4 .4 6.7 1 9.9c2.1 10.2 6.5 20 10.8 29.9c6.1 13.8 12.1 27.5 12.1 42c0 31.8-21.6 60.7-53.4 62c-3.5 .1-7 .2-10.6 .2C114.6 512 0 397.4 0 256S114.6 0 256 0S512 114.6 512 256zM128 288c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32zm0-96c17.7 0 32-14.3 32-32s-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32zM288 96c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32zm96 96c17.7 0 32-14.3 32-32s-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32z"/></svg>

After

Width:  |  Height:  |  Size: 791 B

View file

@ -17,6 +17,8 @@
<file>res/icons/font-awesome-6/angle-right-solid.svg</file> <file>res/icons/font-awesome-6/angle-right-solid.svg</file>
<file>res/icons/font-awesome-6/backward-step-solid.svg</file> <file>res/icons/font-awesome-6/backward-step-solid.svg</file>
<file>res/icons/font-awesome-6/forward-step-solid.svg</file> <file>res/icons/font-awesome-6/forward-step-solid.svg</file>
<file>res/icons/font-awesome-6/gears-solid.svg</file>
<file>res/icons/font-awesome-6/palette-solid.svg</file>
<file>res/icons/font-awesome-6/sliders-solid.svg</file> <file>res/icons/font-awesome-6/sliders-solid.svg</file>
<file>res/icons/font-awesome-6/square-minus-regular.svg</file> <file>res/icons/font-awesome-6/square-minus-regular.svg</file>
<file>res/icons/font-awesome-6/square-plus-regular.svg</file> <file>res/icons/font-awesome-6/square-plus-regular.svg</file>

View file

@ -16,6 +16,7 @@
#include <scwx/qt/ui/level2_settings_widget.hpp> #include <scwx/qt/ui/level2_settings_widget.hpp>
#include <scwx/qt/ui/level3_products_widget.hpp> #include <scwx/qt/ui/level3_products_widget.hpp>
#include <scwx/qt/ui/radar_site_dialog.hpp> #include <scwx/qt/ui/radar_site_dialog.hpp>
#include <scwx/qt/ui/settings_dialog.hpp>
#include <scwx/common/characters.hpp> #include <scwx/common/characters.hpp>
#include <scwx/common/products.hpp> #include <scwx/common/products.hpp>
#include <scwx/common/vcp.hpp> #include <scwx/common/vcp.hpp>
@ -52,6 +53,7 @@ public:
alertDockWidget_ {nullptr}, alertDockWidget_ {nullptr},
imGuiDebugDialog_ {nullptr}, imGuiDebugDialog_ {nullptr},
radarSiteDialog_ {nullptr}, radarSiteDialog_ {nullptr},
settingsDialog_ {nullptr},
radarProductModel_ {nullptr}, radarProductModel_ {nullptr},
textEventManager_ {manager::TextEventManager::Instance()}, textEventManager_ {manager::TextEventManager::Instance()},
maps_ {}, maps_ {},
@ -114,6 +116,7 @@ public:
ui::AlertDockWidget* alertDockWidget_; ui::AlertDockWidget* alertDockWidget_;
ui::ImGuiDebugDialog* imGuiDebugDialog_; ui::ImGuiDebugDialog* imGuiDebugDialog_;
ui::RadarSiteDialog* radarSiteDialog_; ui::RadarSiteDialog* radarSiteDialog_;
ui::SettingsDialog* settingsDialog_;
std::unique_ptr<model::RadarProductModel> radarProductModel_; std::unique_ptr<model::RadarProductModel> radarProductModel_;
std::shared_ptr<manager::TextEventManager> textEventManager_; std::shared_ptr<manager::TextEventManager> textEventManager_;
@ -183,6 +186,9 @@ MainWindow::MainWindow(QWidget* parent) :
// Radar Site Dialog // Radar Site Dialog
p->radarSiteDialog_ = new ui::RadarSiteDialog(this); p->radarSiteDialog_ = new ui::RadarSiteDialog(this);
// Settings Dialog
p->settingsDialog_ = new ui::SettingsDialog(this);
// Add Level 2 Products // Add Level 2 Products
p->level2ProductsWidget_ = new ui::Level2ProductsWidget(this); p->level2ProductsWidget_ = new ui::Level2ProductsWidget(this);
ui->radarProductGroupBox->layout()->replaceWidget(ui->level2ProductFrame, ui->radarProductGroupBox->layout()->replaceWidget(ui->level2ProductFrame,
@ -327,6 +333,11 @@ void MainWindow::on_actionOpenTextEvent_triggered()
dialog->open(); dialog->open();
} }
void MainWindow::on_actionSettings_triggered()
{
p->settingsDialog_->show();
}
void MainWindow::on_actionExit_triggered() void MainWindow::on_actionExit_triggered()
{ {
close(); close();

View file

@ -34,6 +34,7 @@ signals:
private slots: private slots:
void on_actionOpenNexrad_triggered(); void on_actionOpenNexrad_triggered();
void on_actionOpenTextEvent_triggered(); void on_actionOpenTextEvent_triggered();
void on_actionSettings_triggered();
void on_actionExit_triggered(); void on_actionExit_triggered();
void on_actionImGuiDebug_triggered(); void on_actionImGuiDebug_triggered();
void on_radarSiteSelectButton_clicked(); void on_radarSiteSelectButton_clicked();

View file

@ -51,6 +51,8 @@
</widget> </widget>
<addaction name="menu_Open"/> <addaction name="menu_Open"/>
<addaction name="separator"/> <addaction name="separator"/>
<addaction name="actionSettings"/>
<addaction name="separator"/>
<addaction name="actionExit"/> <addaction name="actionExit"/>
</widget> </widget>
<widget class="QMenu" name="menuHelp"> <widget class="QMenu" name="menuHelp">
@ -354,6 +356,11 @@
<string>&amp;ImGui Debug</string> <string>&amp;ImGui Debug</string>
</property> </property>
</action> </action>
<action name="actionSettings">
<property name="text">
<string>&amp;Settings</string>
</property>
</action>
</widget> </widget>
<resources> <resources>
<include location="../../../../scwx-qt.qrc"/> <include location="../../../../scwx-qt.qrc"/>

View file

@ -1,6 +1,10 @@
#include "settings_dialog.hpp" #include "settings_dialog.hpp"
#include "ui_settings_dialog.h" #include "ui_settings_dialog.h"
#include <scwx/awips/phenomenon.hpp>
#include <QToolButton>
namespace scwx namespace scwx
{ {
namespace qt namespace qt
@ -8,19 +12,61 @@ namespace qt
namespace ui namespace ui
{ {
static const std::array<awips::Phenomenon, 5> kAlertPhenomena_ {
awips::Phenomenon::FlashFlood,
awips::Phenomenon::Marine,
awips::Phenomenon::SevereThunderstorm,
awips::Phenomenon::SnowSquall,
awips::Phenomenon::Tornado};
static const std::array<std::pair<std::string, std::string>, 17>
kColorTableTypes_ {std::pair {"BR", "BR"},
std::pair {"BV", "BV"},
std::pair {"SW", "SW"},
std::pair {"ZDR", "ZDR"},
std::pair {"PHI2", "PHI2"},
std::pair {"CC", "CC"},
std::pair {"DOD", "DOD"},
std::pair {"DSD", "DSD"},
std::pair {"ET", "ET"},
std::pair {"OHP", "OHP"},
std::pair {"OHPIN", "OHPIN"},
std::pair {"PHI3", "PHI3"},
std::pair {"SRV", "SRV"},
std::pair {"STP", "STP"},
std::pair {"STPIN", "STPIN"},
std::pair {"VIL", "VIL"},
std::pair {"?", "Default"}};
class SettingsDialogImpl class SettingsDialogImpl
{ {
public: public:
explicit SettingsDialogImpl() {} explicit SettingsDialogImpl(SettingsDialog* self) : self_ {self} {}
~SettingsDialogImpl() = default; ~SettingsDialogImpl() = default;
void SetupPalettesColorTablesTab();
void SetupPalettesAlertsTab();
SettingsDialog* self_;
}; };
SettingsDialog::SettingsDialog(QWidget* parent) : SettingsDialog::SettingsDialog(QWidget* parent) :
QDialog(parent), QDialog(parent),
p {std::make_unique<SettingsDialogImpl>()}, p {std::make_unique<SettingsDialogImpl>(this)},
ui(new Ui::SettingsDialog) ui(new Ui::SettingsDialog)
{ {
ui->setupUi(this); ui->setupUi(this);
// Palettes > Color Tables
p->SetupPalettesColorTablesTab();
// Palettes > Alerts
p->SetupPalettesAlertsTab();
connect(ui->listWidget,
&QListWidget::currentRowChanged,
ui->stackedWidget,
&QStackedWidget::setCurrentIndex);
} }
SettingsDialog::~SettingsDialog() SettingsDialog::~SettingsDialog()
@ -28,6 +74,75 @@ SettingsDialog::~SettingsDialog()
delete ui; delete ui;
} }
void SettingsDialogImpl::SetupPalettesColorTablesTab()
{
// Palettes > Color Tables
QGridLayout* colorTableLayout =
reinterpret_cast<QGridLayout*>(self_->ui->colorTableContents->layout());
int colorTableRow = 0;
for (auto& colorTableType : kColorTableTypes_)
{
colorTableLayout->addWidget(
new QLabel(colorTableType.second.c_str(), self_), colorTableRow, 0);
colorTableLayout->addWidget(new QLineEdit(self_), colorTableRow, 1);
colorTableLayout->addWidget(new QToolButton(self_), colorTableRow, 2);
++colorTableRow;
}
}
void SettingsDialogImpl::SetupPalettesAlertsTab()
{
// Palettes > Alerts
QGridLayout* alertsLayout =
reinterpret_cast<QGridLayout*>(self_->ui->alertsFrame->layout());
QLabel* phenomenonLabel = new QLabel(QObject::tr("Phenomenon"), self_);
QLabel* activeLabel = new QLabel(QObject::tr("Active"), self_);
QLabel* inactiveLabel = new QLabel(QObject::tr("Inactive"), self_);
QFont boldFont;
boldFont.setBold(true);
phenomenonLabel->setFont(boldFont);
activeLabel->setFont(boldFont);
inactiveLabel->setFont(boldFont);
alertsLayout->addWidget(phenomenonLabel, 0, 0);
alertsLayout->addWidget(activeLabel, 0, 1, 1, 3);
alertsLayout->addWidget(inactiveLabel, 0, 4, 1, 3);
int alertsRow = 1;
for (auto& phenomenon : kAlertPhenomena_)
{
QFrame* activeFrame = new QFrame(self_);
QFrame* inactiveFrame = new QFrame(self_);
QToolButton* activeButton = new QToolButton(self_);
QToolButton* inactiveButton = new QToolButton(self_);
activeFrame->setMinimumWidth(24);
inactiveFrame->setMinimumWidth(24);
activeButton->setIcon(
QIcon {":/res/icons/font-awesome-6/palette-solid.svg"});
inactiveButton->setIcon(
QIcon {":/res/icons/font-awesome-6/palette-solid.svg"});
alertsLayout->addWidget(
new QLabel(QObject::tr(awips::GetPhenomenonText(phenomenon).c_str()),
self_),
alertsRow,
0);
alertsLayout->addWidget(activeFrame, alertsRow, 1);
alertsLayout->addWidget(new QLineEdit(self_), alertsRow, 2);
alertsLayout->addWidget(activeButton, alertsRow, 3);
alertsLayout->addWidget(inactiveFrame, alertsRow, 4);
alertsLayout->addWidget(new QLineEdit(self_), alertsRow, 5);
alertsLayout->addWidget(inactiveButton, alertsRow, 6);
++alertsRow;
}
}
} // namespace ui } // namespace ui
} // namespace qt } // namespace qt
} // namespace scwx } // namespace scwx

View file

@ -1,39 +1,293 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"> <ui version="4.0">
<author/>
<comment/>
<exportmacro/>
<class>SettingsDialog</class> <class>SettingsDialog</class>
<widget class="QDialog" name="SettingsDialog"> <widget class="QDialog" name="SettingsDialog">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>400</width> <width>650</width>
<height>300</height> <height>500</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>Dialog</string> <string>Settings</string>
</property> </property>
<widget class="QDialogButtonBox" name="buttonBox"> <layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QFrame" name="frame">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<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="QListWidget" name="listWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="sizeAdjustPolicy">
<enum>QAbstractScrollArea::AdjustToContents</enum>
</property>
<property name="resizeMode">
<enum>QListView::Adjust</enum>
</property>
<property name="viewMode">
<enum>QListView::ListMode</enum>
</property>
<property name="uniformItemSizes">
<bool>true</bool>
</property>
<item>
<property name="text">
<string>General</string>
</property>
<property name="icon">
<iconset resource="../../../../scwx-qt.qrc">
<normaloff>:/res/icons/font-awesome-6/gears-solid.svg</normaloff>:/res/icons/font-awesome-6/gears-solid.svg</iconset>
</property>
</item>
<item>
<property name="text">
<string>Palettes</string>
</property>
<property name="icon">
<iconset resource="../../../../scwx-qt.qrc">
<normaloff>:/res/icons/font-awesome-6/palette-solid.svg</normaloff>:/res/icons/font-awesome-6/palette-solid.svg</iconset>
</property>
</item>
</widget>
</item>
<item>
<widget class="QStackedWidget" name="stackedWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex">
<number>1</number>
</property>
<widget class="QWidget" name="general">
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QFrame" name="frame_2">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QFormLayout" name="formLayout">
<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 row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Default Radar Site</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="radarSiteComboBox"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Grid Width</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QSpinBox" name="gridWidthSpinBox"/>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Grid Height</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QSpinBox" name="gridHeightSpinBox"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_4">
<property name="text">
<string>Mapbox API Key</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLineEdit" name="mapboxApiKeyLineEdit"/>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QCheckBox" name="debugEnabledCheckBox">
<property name="text">
<string>Debug Enabled</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="palettes">
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QTabWidget" name="tabWidget">
<property name="currentIndex">
<number>1</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
<string>Color Tables</string>
</attribute>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QScrollArea" name="scrollArea">
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="colorTableContents">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>30</x> <x>0</x>
<y>240</y> <y>0</y>
<width>341</width> <width>489</width>
<height>32</height> <height>382</height>
</rect> </rect>
</property> </property>
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0">
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_2">
<attribute name="title">
<string>Alerts</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QFrame" name="alertsFrame">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QGridLayout" name="gridLayout_5">
<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>
</layout>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>239</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation"> <property name="orientation">
<enum>Qt::Horizontal</enum> <enum>Qt::Horizontal</enum>
</property> </property>
<property name="standardButtons"> <property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set> <set>QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property> </property>
</widget> </widget>
</item>
</layout>
</widget> </widget>
<pixmapfunction/> <resources>
<resources/> <include location="../../../../scwx-qt.qrc"/>
</resources>
<connections> <connections>
<connection> <connection>
<sender>buttonBox</sender> <sender>buttonBox</sender>