Major refactoring continued
This commit is contained in:
@@ -20,7 +20,7 @@
|
||||
|
||||
#include "channels.h"
|
||||
#include "helpers.h"
|
||||
#include "rawitemfilteredmodel.h"
|
||||
#include "filtereditemmodels.h"
|
||||
|
||||
LimitsGroup::LimitsGroup(Firmware * firmware, TableLayout * tableLayout, int row, int col, int & value, const ModelData & model, int min, int max, int deflt, ModelPanel * panel):
|
||||
firmware(firmware),
|
||||
@@ -96,14 +96,15 @@ void LimitsGroup::updateMinMax(int max)
|
||||
}
|
||||
}
|
||||
}
|
||||
ChannelsPanel::ChannelsPanel(QWidget * parent, ModelData & model, GeneralSettings & generalSettings, Firmware * firmware, ItemModelsFactory * sharedItemModels):
|
||||
ChannelsPanel::ChannelsPanel(QWidget * parent, ModelData & model, GeneralSettings & generalSettings, Firmware * firmware, CompoundItemModelFactory * sharedItemModels):
|
||||
ModelPanel(parent, model, generalSettings, firmware),
|
||||
sharedItemModels(sharedItemModels)
|
||||
{
|
||||
chnCapability = firmware->getCapability(Outputs);
|
||||
int channelNameMaxLen = firmware->getCapability(ChannelsName);
|
||||
|
||||
FILTEREDITEMMODELNOFLAGS(curveFilteredModel, ChannelsPanel, CurveId)
|
||||
curveFilteredModel = new FilteredItemModel(sharedItemModels->getItemModel(AbstractItemModel::IMID_Curve));
|
||||
connectItemModelEvents(curveFilteredModel);
|
||||
|
||||
QStringList headerLabels;
|
||||
headerLabels << "#";
|
||||
@@ -473,6 +474,12 @@ void ChannelsPanel::swapData(int idx1, int idx2)
|
||||
}
|
||||
}
|
||||
|
||||
void ChannelsPanel::connectItemModelEvents(const FilteredItemModel * itemModel)
|
||||
{
|
||||
connect(itemModel, &FilteredItemModel::aboutToBeUpdated, this, &ChannelsPanel::onItemModelAboutToBeUpdated);
|
||||
connect(itemModel, &FilteredItemModel::updateComplete, this, &ChannelsPanel::onItemModelUpdateComplete);
|
||||
}
|
||||
|
||||
void ChannelsPanel::onItemModelAboutToBeUpdated()
|
||||
{
|
||||
lock = true;
|
||||
@@ -486,5 +493,5 @@ void ChannelsPanel::onItemModelUpdateComplete()
|
||||
|
||||
void ChannelsPanel::updateItemModels()
|
||||
{
|
||||
sharedItemModels->update(AbstractItemModel::ChannelsUpdated);
|
||||
sharedItemModels->update(AbstractItemModel::IMUE_Channels);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user