refs #560, adjusted subclasses for new menus/filters from previous step

This commit is contained in:
Klaus Basan
2015-12-19 03:38:02 +01:00
parent 9fcc846b7a
commit ac99f8b984
14 changed files with 29 additions and 34 deletions

View File

@@ -38,8 +38,10 @@ namespace BlackGui
this->ui->tvp_AircraftModelsForVPilot->setAircraftModelMode(CAircraftModelListModel::VPilotRuleModel); this->ui->tvp_AircraftModelsForVPilot->setAircraftModelMode(CAircraftModelListModel::VPilotRuleModel);
this->ui->tvp_AircraftModelsForVPilot->setAllowStash(true); this->ui->tvp_AircraftModelsForVPilot->setAllowStash(true);
this->ui->tvp_AircraftModelsForVPilot->addFilterDialog();
this->ui->tvp_OwnAircraftModels->setAircraftModelMode(CAircraftModelListModel::OwnSimulatorModelMapping); this->ui->tvp_OwnAircraftModels->setAircraftModelMode(CAircraftModelListModel::OwnSimulatorModelMapping);
this->ui->tvp_OwnAircraftModels->setAllowStash(true); this->ui->tvp_OwnAircraftModels->setAllowStash(true);
this->ui->tvp_OwnAircraftModels->addFilterDialog();
// connects // connects
connect(ui->editor_Model, &CModelMappingForm::requestPublish, this, &CDbMappingComponent::ps_publishSingleModelToDb); connect(ui->editor_Model, &CModelMappingForm::requestPublish, this, &CDbMappingComponent::ps_publishSingleModelToDb);
@@ -91,6 +93,7 @@ namespace BlackGui
connect(this->ui->tvp_AircraftModelsForVPilot, &CAircraftModelView::requestStash, this, &CDbMappingComponent::stashSelectedModels); connect(this->ui->tvp_AircraftModelsForVPilot, &CAircraftModelView::requestStash, this, &CDbMappingComponent::stashSelectedModels);
this->ui->tvp_AircraftModelsForVPilot->setCustomMenu(new CMappingVPilotMenu(this, true)); this->ui->tvp_AircraftModelsForVPilot->setCustomMenu(new CMappingVPilotMenu(this, true));
this->ui->tvp_AircraftModelsForVPilot->setDisplayAutomatically(true); this->ui->tvp_AircraftModelsForVPilot->setDisplayAutomatically(true);
this->ui->tvp_AircraftModelsForVPilot->addFilterDialog();
const CAircraftModelList cachedModels(m_cachedVPilotModels.get()); const CAircraftModelList cachedModels(m_cachedVPilotModels.get());
this->ui->tvp_AircraftModelsForVPilot->updateContainerMaybeAsync(cachedModels); this->ui->tvp_AircraftModelsForVPilot->updateContainerMaybeAsync(cachedModels);
int noModels = cachedModels.size(); int noModels = cachedModels.size();

View File

@@ -34,6 +34,7 @@ namespace BlackGui
this->ui->tvp_StashAircraftModels->setAircraftModelMode(CAircraftModelListModel::StashModel); this->ui->tvp_StashAircraftModels->setAircraftModelMode(CAircraftModelListModel::StashModel);
this->ui->tvp_StashAircraftModels->allowDragDropValueObjects(false, true); this->ui->tvp_StashAircraftModels->allowDragDropValueObjects(false, true);
this->ui->tvp_StashAircraftModels->setImplementedMetaTypeIds(); this->ui->tvp_StashAircraftModels->setImplementedMetaTypeIds();
this->ui->tvp_StashAircraftModels->menuAddItems(CAircraftModelView::MenuLoadAndSave);
connect(this->ui->pb_Unstash, &QPushButton::pressed, this, &CDbStashComponent::ps_onUnstashPressed); connect(this->ui->pb_Unstash, &QPushButton::pressed, this, &CDbStashComponent::ps_onUnstashPressed);
connect(this->ui->pb_Validate, &QPushButton::pressed, this, &CDbStashComponent::ps_onValidatePressed); connect(this->ui->pb_Validate, &QPushButton::pressed, this, &CDbStashComponent::ps_onValidatePressed);

View File

@@ -43,9 +43,11 @@ namespace BlackGui
{ {
ui->setupUi(this); ui->setupUi(this);
this->ui->tvp_AircraftModels->setAircraftModelMode(CAircraftModelListModel::OwnSimulatorModel); this->ui->tvp_AircraftModels->setAircraftModelMode(CAircraftModelListModel::OwnSimulatorModel);
this->ui->tvp_AircraftModels->setResizeMode(CAircraftModelView::ResizingOff);
this->ui->tvp_AircraftModels->addFilterDialog();
this->ui->tvp_SimulatedAircraft->setAircraftMode(CSimulatedAircraftListModel::ModelMode); this->ui->tvp_SimulatedAircraft->setAircraftMode(CSimulatedAircraftListModel::ModelMode);
this->ui->tvp_SimulatedAircraft->setResizeMode(CAircraftModelView::ResizingOnce); this->ui->tvp_SimulatedAircraft->setResizeMode(CAircraftModelView::ResizingOnce);
this->ui->tvp_AircraftModels->setResizeMode(CAircraftModelView::ResizingOff);
connect(this->ui->tvp_AircraftModels, &CAircraftModelView::requestUpdate, this, &CMappingComponent::ps_onModelsUpdateRequested); connect(this->ui->tvp_AircraftModels, &CAircraftModelView::requestUpdate, this, &CMappingComponent::ps_onModelsUpdateRequested);
connect(this->ui->tvp_AircraftModels, &CAircraftModelView::rowCountChanged, this, &CMappingComponent::ps_onRowCountChanged); connect(this->ui->tvp_AircraftModels, &CAircraftModelView::rowCountChanged, this, &CMappingComponent::ps_onRowCountChanged);

View File

@@ -19,7 +19,7 @@ namespace BlackGui
{ {
CAircraftIcaoCodeView::CAircraftIcaoCodeView(QWidget *parent) : CViewBase(parent) CAircraftIcaoCodeView::CAircraftIcaoCodeView(QWidget *parent) : CViewBase(parent)
{ {
this->m_withMenuItemBackend = true; this->m_menus |= MenuBackend;
this->standardInit(new CAircraftIcaoCodeListModel(this)); this->standardInit(new CAircraftIcaoCodeListModel(this));
} }
} }

View File

@@ -35,11 +35,6 @@ namespace BlackGui
// default // default
this->standardInit(new CAircraftModelListModel(CAircraftModelListModel::OwnSimulatorModel, this)); this->standardInit(new CAircraftModelListModel(CAircraftModelListModel::OwnSimulatorModel, this));
// filter
QWidget *mainWindow = this->mainApplicationWindowWidget();
Q_ASSERT_X(mainWindow, Q_FUNC_INFO, "no main window found");
this->setFilterDialog(new CAircraftModelFilterDialog(mainWindow));
// shortcut // shortcut
new QShortcut(CShortcut::keyStash(), this, SLOT(ps_stashShortcut()), nullptr, Qt::WidgetShortcut); new QShortcut(CShortcut::keyStash(), this, SLOT(ps_stashShortcut()), nullptr, Qt::WidgetShortcut);
@@ -50,43 +45,30 @@ namespace BlackGui
void CAircraftModelView::setAircraftModelMode(CAircraftModelListModel::AircraftModelMode mode) void CAircraftModelView::setAircraftModelMode(CAircraftModelListModel::AircraftModelMode mode)
{ {
this->m_withMenuDisplayAutomatically = false;
this->setCustomMenu(nullptr, false); // delete everything this->setCustomMenu(nullptr, false); // delete everything
derivedModel()->setAircraftModelMode(mode); derivedModel()->setAircraftModelMode(mode);
switch (mode) switch (mode)
{ {
case CAircraftModelListModel::StashModel: case CAircraftModelListModel::StashModel:
this->m_withMenuItemClear = true; this->m_menus = MenuClear;
this->m_withMenuItemRefresh = false;
this->m_withMenuItemBackend = false;
this->setCustomMenu(new CHighlightDbModelsMenu(this, true)); this->setCustomMenu(new CHighlightDbModelsMenu(this, true));
break; break;
case CAircraftModelListModel::Database: case CAircraftModelListModel::Database:
this->m_withMenuItemClear = false; this->m_menus = MenuBackend;
this->m_withMenuItemRefresh = false;
this->m_withMenuItemBackend = true;
break; break;
case CAircraftModelListModel::VPilotRuleModel: case CAircraftModelListModel::VPilotRuleModel:
this->m_withMenuItemClear = false; this->m_menus = MenuRefresh;
this->m_withMenuItemRefresh = true;
this->m_withMenuItemBackend = false;
this->setCustomMenu(new CHighlightDbModelsMenu(this, true)); this->setCustomMenu(new CHighlightDbModelsMenu(this, true));
this->setCustomMenu(new CHighlightStashedModelsMenu(this, true)); this->setCustomMenu(new CHighlightStashedModelsMenu(this, true));
break; break;
case CAircraftModelListModel::OwnSimulatorModelMapping: case CAircraftModelListModel::OwnSimulatorModelMapping:
this->m_withMenuDisplayAutomatically = true; this->m_menus = MenuDisplayAutomatically;
this->m_withMenuItemClear = false;
this->m_withMenuItemRefresh = false;
this->m_withMenuItemBackend = false;
this->setCustomMenu(new CHighlightDbModelsMenu(this, true)); this->setCustomMenu(new CHighlightDbModelsMenu(this, true));
this->setCustomMenu(new CHighlightStashedModelsMenu(this, true)); this->setCustomMenu(new CHighlightStashedModelsMenu(this, true));
break; break;
case CAircraftModelListModel::OwnSimulatorModel: case CAircraftModelListModel::OwnSimulatorModel:
default: default:
this->m_withMenuDisplayAutomatically = true; this->m_menus = MenuDisplayAutomatically | MenuBackend | MenuRefresh;
this->m_withMenuItemClear = false;
this->m_withMenuItemRefresh = true;
this->m_withMenuItemBackend = true;
this->setCustomMenu(new CHighlightDbModelsMenu(this, true)); this->setCustomMenu(new CHighlightDbModelsMenu(this, true));
break; break;
} }
@@ -130,6 +112,11 @@ namespace BlackGui
}); });
} }
void CAircraftModelView::addFilterDialog()
{
this->setFilterDialog(new CAircraftModelFilterDialog(this));
}
void CAircraftModelView::dropEvent(QDropEvent *event) void CAircraftModelView::dropEvent(QDropEvent *event)
{ {
if (!isDropAllowed()) { return; } if (!isDropAllowed()) { return; }

View File

@@ -52,6 +52,9 @@ namespace BlackGui
//! Add the technically supported metatypes as allows //! Add the technically supported metatypes as allows
void setImplementedMetaTypeIds(); void setImplementedMetaTypeIds();
//! Add my own filter dialog
void addFilterDialog();
signals: signals:
//! Request to stash if applicable //! Request to stash if applicable
void requestStash(); void requestStash();

View File

@@ -19,7 +19,7 @@ namespace BlackGui
{ {
CAirlineIcaoCodeView::CAirlineIcaoCodeView(QWidget *parent) : CViewBase(parent) CAirlineIcaoCodeView::CAirlineIcaoCodeView(QWidget *parent) : CViewBase(parent)
{ {
this->m_withMenuItemBackend = true; this->m_menus |= MenuBackend;
this->standardInit(new CAirlineIcaoCodeListModel(this)); this->standardInit(new CAirlineIcaoCodeListModel(this));
} }
} }

View File

@@ -23,8 +23,7 @@ namespace BlackGui
CAtcStationView::CAtcStationView(QWidget *parent) : CViewBase(parent) CAtcStationView::CAtcStationView(QWidget *parent) : CViewBase(parent)
{ {
this->standardInit(new CAtcStationListModel(CAtcStationListModel::StationsOnline, this)); this->standardInit(new CAtcStationListModel(CAtcStationListModel::StationsOnline, this));
this->m_withMenuItemClear = true; this->m_menus |= (MenuClear | MenuRefresh);
this->m_withMenuItemRefresh = true;
} }
void CAtcStationView::setStationMode(CAtcStationListModel::AtcStationMode stationMode) void CAtcStationView::setStationMode(CAtcStationListModel::AtcStationMode stationMode)

View File

@@ -18,7 +18,7 @@ namespace BlackGui
{ {
CCountryView::CCountryView(QWidget *parent) : CViewBase(parent) CCountryView::CCountryView(QWidget *parent) : CViewBase(parent)
{ {
this->m_withMenuItemBackend = true; this->m_menus |= MenuBackend;
this->standardInit(new CCountryListModel(this)); this->standardInit(new CCountryListModel(this));
} }
} }

View File

@@ -18,7 +18,7 @@ namespace BlackGui
{ {
CDistributorView::CDistributorView(QWidget *parent) : CViewBase(parent) CDistributorView::CDistributorView(QWidget *parent) : CViewBase(parent)
{ {
this->m_withMenuItemBackend = true; this->m_menus |= MenuBackend;
this->standardInit(new CDistributorListModel(this)); this->standardInit(new CDistributorListModel(this));
} }
} }

View File

@@ -18,7 +18,7 @@ namespace BlackGui
{ {
CLiveryView::CLiveryView(QWidget *parent) : CViewBase(parent) CLiveryView::CLiveryView(QWidget *parent) : CViewBase(parent)
{ {
this->m_withMenuItemBackend = true; this->m_menus |= MenuBackend;
this->standardInit(new CLiveryListModel(this)); this->standardInit(new CLiveryListModel(this));
} }
} }

View File

@@ -22,7 +22,7 @@ namespace BlackGui
CSimulatedAircraftView::CSimulatedAircraftView(QWidget *parent) : CViewBase(parent) CSimulatedAircraftView::CSimulatedAircraftView(QWidget *parent) : CViewBase(parent)
{ {
this->standardInit(new CSimulatedAircraftListModel(this)); this->standardInit(new CSimulatedAircraftListModel(this));
this->m_withMenuItemRefresh = true; this->m_menus |= MenuRefresh;
} }
void CSimulatedAircraftView::setAircraftMode(CSimulatedAircraftListModel::AircraftMode mode) void CSimulatedAircraftView::setAircraftMode(CSimulatedAircraftListModel::AircraftMode mode)

View File

@@ -20,7 +20,7 @@ namespace BlackGui
{ {
CStatusMessageView::CStatusMessageView(QWidget *parent) : CViewBase(parent) CStatusMessageView::CStatusMessageView(QWidget *parent) : CViewBase(parent)
{ {
m_withMenuItemClear = true; m_menus |= MenuClear;
m_acceptRowSelected = true; m_acceptRowSelected = true;
this->standardInit(new CStatusMessageListModel(this)); this->standardInit(new CStatusMessageListModel(this));
} }

View File

@@ -20,7 +20,7 @@ namespace BlackGui
CTextMessageView::CTextMessageView(QWidget *parent) : CViewBase(parent) CTextMessageView::CTextMessageView(QWidget *parent) : CViewBase(parent)
{ {
this->standardInit(new CTextMessageListModel(CTextMessageListModel::FromTo, this)); this->standardInit(new CTextMessageListModel(CTextMessageListModel::FromTo, this));
this->m_withMenuItemClear = true; this->m_menus |= MenuClear;
} }
void CTextMessageView::setTextMessageMode(CTextMessageListModel::TextMessageMode mode) void CTextMessageView::setTextMessageMode(CTextMessageListModel::TextMessageMode mode)