mirror of
https://github.com/ciphervance/supercell-wx.git
synced 2025-11-01 03:10:04 +00:00
Add radar toolbox items to collapsible widgets
This commit is contained in:
parent
396f64f0d4
commit
6d9d923081
2 changed files with 51 additions and 71 deletions
|
|
@ -13,10 +13,11 @@
|
||||||
#include <scwx/qt/map/map_provider.hpp>
|
#include <scwx/qt/map/map_provider.hpp>
|
||||||
#include <scwx/qt/map/map_widget.hpp>
|
#include <scwx/qt/map/map_widget.hpp>
|
||||||
#include <scwx/qt/model/radar_product_model.hpp>
|
#include <scwx/qt/model/radar_product_model.hpp>
|
||||||
#include <scwx/qt/ui/alert_dock_widget.hpp>
|
|
||||||
#include <scwx/qt/ui/flow_layout.hpp>
|
|
||||||
#include <scwx/qt/ui/about_dialog.hpp>
|
#include <scwx/qt/ui/about_dialog.hpp>
|
||||||
|
#include <scwx/qt/ui/alert_dock_widget.hpp>
|
||||||
#include <scwx/qt/ui/animation_dock_widget.hpp>
|
#include <scwx/qt/ui/animation_dock_widget.hpp>
|
||||||
|
#include <scwx/qt/ui/collapsible_group.hpp>
|
||||||
|
#include <scwx/qt/ui/flow_layout.hpp>
|
||||||
#include <scwx/qt/ui/imgui_debug_dialog.hpp>
|
#include <scwx/qt/ui/imgui_debug_dialog.hpp>
|
||||||
#include <scwx/qt/ui/level2_products_widget.hpp>
|
#include <scwx/qt/ui/level2_products_widget.hpp>
|
||||||
#include <scwx/qt/ui/level2_settings_widget.hpp>
|
#include <scwx/qt/ui/level2_settings_widget.hpp>
|
||||||
|
|
@ -61,6 +62,10 @@ public:
|
||||||
mainWindow_ {mainWindow},
|
mainWindow_ {mainWindow},
|
||||||
settings_ {},
|
settings_ {},
|
||||||
activeMap_ {nullptr},
|
activeMap_ {nullptr},
|
||||||
|
mapSettingsGroup_ {nullptr},
|
||||||
|
level2ProductsGroup_ {nullptr},
|
||||||
|
level2SettingsGroup_ {nullptr},
|
||||||
|
level3ProductsGroup_ {nullptr},
|
||||||
level2ProductsWidget_ {nullptr},
|
level2ProductsWidget_ {nullptr},
|
||||||
level2SettingsWidget_ {nullptr},
|
level2SettingsWidget_ {nullptr},
|
||||||
level3ProductsWidget_ {nullptr},
|
level3ProductsWidget_ {nullptr},
|
||||||
|
|
@ -142,6 +147,10 @@ public:
|
||||||
map::MapProvider mapProvider_;
|
map::MapProvider mapProvider_;
|
||||||
map::MapWidget* activeMap_;
|
map::MapWidget* activeMap_;
|
||||||
|
|
||||||
|
ui::CollapsibleGroup* mapSettingsGroup_;
|
||||||
|
ui::CollapsibleGroup* level2ProductsGroup_;
|
||||||
|
ui::CollapsibleGroup* level2SettingsGroup_;
|
||||||
|
ui::CollapsibleGroup* level3ProductsGroup_;
|
||||||
ui::Level2ProductsWidget* level2ProductsWidget_;
|
ui::Level2ProductsWidget* level2ProductsWidget_;
|
||||||
ui::Level2SettingsWidget* level2SettingsWidget_;
|
ui::Level2SettingsWidget* level2SettingsWidget_;
|
||||||
|
|
||||||
|
|
@ -240,24 +249,49 @@ MainWindow::MainWindow(QWidget* parent) :
|
||||||
// Settings Dialog
|
// Settings Dialog
|
||||||
p->settingsDialog_ = new ui::SettingsDialog(this);
|
p->settingsDialog_ = new ui::SettingsDialog(this);
|
||||||
|
|
||||||
|
// Map Settings
|
||||||
|
p->mapSettingsGroup_ = new ui::CollapsibleGroup(tr("Map Settings"), this);
|
||||||
|
p->mapSettingsGroup_->GetContentsLayout()->addWidget(ui->mapStyleLabel);
|
||||||
|
p->mapSettingsGroup_->GetContentsLayout()->addWidget(ui->mapStyleComboBox);
|
||||||
|
ui->radarToolboxScrollAreaContents->layout()->replaceWidget(
|
||||||
|
ui->mapSettingsGroupBox, p->mapSettingsGroup_);
|
||||||
|
ui->mapSettingsGroupBox->setVisible(false);
|
||||||
|
|
||||||
// Add Level 2 Products
|
// Add Level 2 Products
|
||||||
|
p->level2ProductsGroup_ =
|
||||||
|
new ui::CollapsibleGroup(tr("Level 2 Products"), this);
|
||||||
p->level2ProductsWidget_ = new ui::Level2ProductsWidget(this);
|
p->level2ProductsWidget_ = new ui::Level2ProductsWidget(this);
|
||||||
ui->radarProductGroupBox->layout()->replaceWidget(ui->level2ProductFrame,
|
p->level2ProductsGroup_->GetContentsLayout()->addWidget(
|
||||||
p->level2ProductsWidget_);
|
p->level2ProductsWidget_);
|
||||||
delete ui->level2ProductFrame;
|
ui->radarToolboxScrollAreaContents->layout()->addWidget(
|
||||||
ui->level2ProductFrame = p->level2ProductsWidget_;
|
p->level2ProductsGroup_);
|
||||||
|
|
||||||
// Add Level 3 Products
|
// Add Level 3 Products
|
||||||
|
p->level3ProductsGroup_ =
|
||||||
|
new ui::CollapsibleGroup(tr("Level 3 Products"), this);
|
||||||
p->level3ProductsWidget_ = new ui::Level3ProductsWidget(this);
|
p->level3ProductsWidget_ = new ui::Level3ProductsWidget(this);
|
||||||
ui->radarProductGroupBox->layout()->replaceWidget(ui->level3ProductFrame,
|
p->level3ProductsGroup_->GetContentsLayout()->addWidget(
|
||||||
p->level3ProductsWidget_);
|
p->level3ProductsWidget_);
|
||||||
delete ui->level3ProductFrame;
|
ui->radarToolboxScrollAreaContents->layout()->addWidget(
|
||||||
ui->level3ProductFrame = p->level3ProductsWidget_;
|
p->level3ProductsGroup_);
|
||||||
|
|
||||||
// Add Level 2 Settings
|
// Add Level 2 Settings
|
||||||
p->level2SettingsWidget_ = new ui::Level2SettingsWidget(ui->settingsFrame);
|
p->level2SettingsGroup_ =
|
||||||
ui->settingsFrame->layout()->addWidget(p->level2SettingsWidget_);
|
new ui::CollapsibleGroup(tr("Level 2 Settings"), this);
|
||||||
p->level2SettingsWidget_->setVisible(false);
|
p->level2SettingsWidget_ = new ui::Level2SettingsWidget(this);
|
||||||
|
p->level2SettingsGroup_->GetContentsLayout()->addWidget(
|
||||||
|
p->level2SettingsWidget_);
|
||||||
|
ui->radarToolboxScrollAreaContents->layout()->addWidget(
|
||||||
|
p->level2SettingsGroup_);
|
||||||
|
p->level2SettingsGroup_->setVisible(false);
|
||||||
|
ui->radarToolboxScrollAreaContents->layout()->addWidget(
|
||||||
|
p->level2SettingsGroup_);
|
||||||
|
|
||||||
|
// Reset toolbox spacer at the bottom
|
||||||
|
ui->radarToolboxScrollAreaContents->layout()->removeItem(
|
||||||
|
ui->radarToolboxSpacer);
|
||||||
|
ui->radarToolboxScrollAreaContents->layout()->addItem(
|
||||||
|
ui->radarToolboxSpacer);
|
||||||
|
|
||||||
// ImGui Debug Dialog
|
// ImGui Debug Dialog
|
||||||
p->imGuiDebugDialog_ = new ui::ImGuiDebugDialog(this);
|
p->imGuiDebugDialog_ = new ui::ImGuiDebugDialog(this);
|
||||||
|
|
@ -1011,11 +1045,11 @@ void MainWindowImpl::UpdateRadarProductSettings()
|
||||||
if (activeMap_->GetRadarProductGroup() == common::RadarProductGroup::Level2)
|
if (activeMap_->GetRadarProductGroup() == common::RadarProductGroup::Level2)
|
||||||
{
|
{
|
||||||
level2SettingsWidget_->UpdateSettings(activeMap_);
|
level2SettingsWidget_->UpdateSettings(activeMap_);
|
||||||
level2SettingsWidget_->setVisible(true);
|
level2SettingsGroup_->setVisible(true);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
level2SettingsWidget_->setVisible(false);
|
level2SettingsGroup_->setVisible(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -134,8 +134,8 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>175</width>
|
<width>157</width>
|
||||||
<height>696</height>
|
<height>702</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_6">
|
<layout class="QVBoxLayout" name="verticalLayout_6">
|
||||||
|
|
@ -240,60 +240,6 @@
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
|
||||||
<widget class="QGroupBox" name="radarProductGroupBox">
|
|
||||||
<property name="title">
|
|
||||||
<string>Radar Products</string>
|
|
||||||
</property>
|
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
|
||||||
<item>
|
|
||||||
<widget class="QLabel" name="level2Label">
|
|
||||||
<property name="text">
|
|
||||||
<string>Level 2</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QWidget" name="level2ProductFrame" native="true"/>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="Line" name="level2Separator">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QLabel" name="level3Label">
|
|
||||||
<property name="text">
|
|
||||||
<string>Level 3</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QWidget" name="level3ProductFrame" native="true"/>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QWidget" name="settingsFrame" native="true">
|
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_4">
|
|
||||||
<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>
|
<item>
|
||||||
<spacer name="radarToolboxSpacer">
|
<spacer name="radarToolboxSpacer">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue