13 #include <QtGui/QColor>
14 #include <QtCore/QPointF>
15 #include <QtCore/QVector>
16 #include <QtWidgets/QTableWidget>
27 class QListWidgetItem;
28 class QDoubleValidator;
35 class QAbstractButton;
40 class DtEnumerationSelectionWidget;
51 virtual QSize
sizeHint()
const {
return QSize(QTableWidget::sizeHint().width(), myMinimumHeight); };
83 virtual bool hasRange(
const DtEntityType&)
const;
88 virtual void addCommonEntityTypeEntry(
const DtEntityType&,
const std::vector<DtRangeProbEntry*>&,
bool plotCoefficientImmediately =
false);
89 virtual void createNewRangeTableForSelectedItem(
double maxRange,
double hitChance);
102 virtual void addNewRangeEntry(
int range);
103 virtual void addNewRangeEntry(
PlotData& pd,
int range,
const DtString& name =
"percentage");
105 virtual bool replotAllNotAtMaximumRange();
106 virtual QString newRangeWindowLabel()
const;
108 virtual double findMaximumRange()
const;
110 virtual void graphLineColorChanged(
const QColor& oldColor,
const QColor& newColor);
112 virtual void addPlotLine(
const DtString& key,
const QString& displayName,
const QVector<QPointF>& points,
DtRangeProbEntry* entry);
113 virtual void addNewEntryBasedOffOf(
const DtEntityType& existingType,
const DtEntityType& newType);
114 virtual void addNewRangeTableEntry(
const DtEntityType& newType);
115 virtual void addNewCoefficientTableEntry(
const DtEntityType& newType);
119 virtual void plotLineSelected(
const DtString&);
120 virtual int selectedRow()
const;
122 virtual void createRangeTableFor(
const DtEntityType&);
125 virtual bool addNewCoefficientEntry();
126 virtual void addNewCoefficientEntry(
PlotData& pd);
127 virtual bool addNewRangeEntry();
130 virtual void cellEntered(
QObject* e);
132 virtual void moveRange();
133 virtual void wheelMove(
double delta);
135 virtual int changeRangeFor(
const DtString& et,
double fromRange,
double toRange);
136 virtual int changeRangeFor(
PlotData& pd,
double fromRange,
double toRange);
138 virtual int changeRangeForColumn(
const DtString& et,
int column,
double toRange);
139 virtual int changeRangeForColumn(
PlotData& pd,
int column,
double toRange);
141 virtual void removeRange(
PlotData& pd,
int currentColumn);
143 virtual QListWidgetItem* selectedLine()
const;
145 virtual void createBasicCoefficientTable(
const DtEntityType&);
146 virtual void createBasicRangeTable(
const DtEntityType&);
148 virtual void setupGraphDataFor(
const DtString&);
149 virtual QString graphDataTitle()
const;
150 virtual void setGraphDataTitle(
const QString&);
152 virtual void createChoiceRadioButtons();
153 virtual void clearGraphData();
154 virtual void clearAllData();
155 virtual void setupEntriesFrom(
const std::vector<DtReaderWriter*>&);
157 virtual void hitTableChanged(
const QString& reason =
"");
158 virtual void addGraphDataCanvas();
159 virtual void clearPlotLines();
160 virtual void clearEntityTypes();
161 virtual void changeEquation();
169 virtual void sectionDoubleClicked(
int);
170 virtual void legendClicked(
const QVariant&,
int);
171 virtual void selectCurve(
const QPointF&);
172 virtual void changeHitPercentage();
173 virtual void plotLineSelected();
174 virtual void addEntityType();
175 virtual void removeEntityType();
176 virtual void editEntityType();
178 virtual void addRange();
179 virtual void editRange();
180 virtual void removeRange();
181 virtual void graphDataSelectionChanged();
182 virtual void hitTableChoiceChanged();
183 virtual void copyHitTable();
184 virtual void onAssignAsAttacker();
185 virtual void changeEquationType();
186 virtual void quickAddHitTableEntry();
226 typedef std::map<DtString, QListWidgetItem*>
ItemsMap;
233 std::map<DtString, DtDetectionPrbRangeCalcEntry*>
myToPlot;