21 #include <QtWidgets/QAction>
35 class DtVrfBackendState;
36 class DtVrfTaskSetMenu;
37 class DtScriptedTaskConfigurableMenu;
38 class DtTaskSetDialogInterface;
39 class DtVrfTaskSetAction;
71 virtual QAction* registerMenuItem(
const QString& title,
QWidget* parent,
int iAction,
const QString& iconBaseName);
74 virtual void on_triggered();
134 virtual void slot_onSendSetRequest(std::vector<DtUUID> names,
const DtSetDataRequest&);
140 boost::signal<void (std::vector<DtUUID> names,
const DtSetDataRequest&)> signal_sendSetRequest;
145 virtual void slot_onSendTaskRequest(std::vector<DtUUID> names,
const DtSimTask&);
151 boost::signal<void (std::vector<DtUUID> names,
const DtSimTask&)> signal_sendTaskRequest;
166 virtual void on_triggered();
192 virtual void setValidate(
bool b);
195 virtual void setShowAllItems(
bool b);
202 virtual void setPartOfPlanDialog(
int b);
204 virtual void setMenuItemValidation(
bool b);
208 virtual void setHideDisabledItem(
bool yesNo);
211 virtual void setSignalDialogCreation(
bool b);
213 bool signalDialogCreation()
const
215 return mySignalDialogCreation;
218 virtual void setValidationsDisabled(
bool);
219 bool validationsDisabled()
const
221 return myValidationsDisabled;
226 virtual void setSignalTaskSetRequests(
bool b);
228 bool signalTaskSetRequests()
const
230 return mySignalTaskSetRequests;
233 int partOfPlanDialog()
const
235 return myPartOfPlanDialog;
244 virtual void setAlwaysStartAsEnabled(
bool b);
246 bool alwaysStartAsEnabled()
const
248 return myAlwaysStartAsEnabled;
252 void setValidateIfNoPendingRequests(
bool b)
254 myValidateIfNoPendingRequests = b;
257 bool validateIfNoPendingRequests()
const
259 return myValidateIfNoPendingRequests;
268 return myValidatedFor;
282 virtual void clearMenu();
287 virtual bool updateSubMenuVisibilityState(
QMenu*,
bool hasRadio =
true);
293 virtual std::set<QAction*> actionsThatSupport(
int)
const;
300 virtual const char* supportedToolbar()
const = 0;
301 virtual const char* supportedMenu()
const = 0;
305 virtual void recreateMenu() = 0;
320 virtual bool hasSupportForActionType(
int)
const;
323 boost::signal<void (std::vector<DtUUID> names,
const DtSetDataRequest&)> signal_sendSetRequest;
324 boost::signal<void (std::vector<DtUUID> names,
const DtSimTask&)> signal_sendTaskRequest;
335 virtual void slot_sendSetRequest(std::vector<DtUUID> names,
const DtSetDataRequest& s);
336 virtual void slot_sendTaskRequest(std::vector<DtUUID> names,
const DtSimTask& s);
340 const std::vector<makVrv::DtSimEntry*>&,
int);
346 const std::vector<makVrv::DtSimEntry*>& data,
int partOfPlan);
353 bool maintainOriginalOrder =
false);
356 virtual void validate();
359 virtual void radioMenuDestroyed();
360 virtual void dialogDestroyed();
365 virtual void renameIfDuplicate(
QAction*);
369 virtual QString alternateName(
QAction*)
const;
375 virtual bool eventFilter(
QObject *, QEvent *);
376 virtual void actionAdded(QEvent*);
377 virtual void addTaskAction(
QAction*);
378 virtual void rebuildToolbar(
const std::string&);
380 virtual void validateMenuItems(
int terrainPatchOffset);
382 virtual bool available(
int menu, std::vector<int>& l)
const;
386 virtual void availableMenuItems(
388 std::vector<int>& available,
389 bool noTaskSetValueMeansAll);
395 virtual std::vector<DtUUID> whoShouldITask(
const std::vector<DtUUID>& name,
const DtSimTask& newTask);
407 bool useGlobalMenuManager =
false,
bool recreateToolbars =
false);