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->setAllowStash(true);
this->ui->tvp_AircraftModelsForVPilot->addFilterDialog();
this->ui->tvp_OwnAircraftModels->setAircraftModelMode(CAircraftModelListModel::OwnSimulatorModelMapping);
this->ui->tvp_OwnAircraftModels->setAllowStash(true);
this->ui->tvp_OwnAircraftModels->addFilterDialog();
// connects
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);
this->ui->tvp_AircraftModelsForVPilot->setCustomMenu(new CMappingVPilotMenu(this, true));
this->ui->tvp_AircraftModelsForVPilot->setDisplayAutomatically(true);
this->ui->tvp_AircraftModelsForVPilot->addFilterDialog();
const CAircraftModelList cachedModels(m_cachedVPilotModels.get());
this->ui->tvp_AircraftModelsForVPilot->updateContainerMaybeAsync(cachedModels);
int noModels = cachedModels.size();

View File

@@ -34,6 +34,7 @@ namespace BlackGui
this->ui->tvp_StashAircraftModels->setAircraftModelMode(CAircraftModelListModel::StashModel);
this->ui->tvp_StashAircraftModels->allowDragDropValueObjects(false, true);
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_Validate, &QPushButton::pressed, this, &CDbStashComponent::ps_onValidatePressed);

View File

@@ -43,9 +43,11 @@ namespace BlackGui
{
ui->setupUi(this);
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->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::rowCountChanged, this, &CMappingComponent::ps_onRowCountChanged);

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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