![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00008 00010 00011 #pragma once 00012 00013 #include <vrfGuiCoreQt/vrfGuiCoreQt.h> 00014 00015 #include <vector> 00016 #include <QtCore/QString> 00017 00018 namespace makVrv 00019 { 00020 class DtDe; 00021 class DtSimEntry; 00022 } 00023 00024 class DtSimTask; 00025 class DtSetDataRequest; 00026 class DtSimStatement; 00027 class DtSimCommand; 00028 00029 namespace makVrf 00030 { 00031 class DtVrfSelectionFilter; 00032 class DtCommandAssignmentWidgetInterface; 00033 class DtCommandDialogExtensionInterface; 00034 class DtSimCommandObjectWrapper; 00035 00037 class DT_DLL_VRFGUICOREQT DtCommandAssignmentWidgetLogic 00038 { 00039 public: 00040 DtCommandAssignmentWidgetLogic(makVrv::DtDe&, DtCommandAssignmentWidgetInterface* iFace); 00041 00043 virtual ~DtCommandAssignmentWidgetLogic(); 00044 00046 virtual void setupUi(const std::vector<makVrv::DtSimEntry*>&, const DtSimStatement* stmt = NULL); 00047 00049 virtual void setAllowBroadcast(bool); 00050 00052 virtual void broadcastChanged(); 00053 00054 virtual void attachExtension(DtCommandDialogExtensionInterface*); 00055 virtual void detachExtension(DtCommandDialogExtensionInterface*); 00056 00058 virtual void pickOK(const DtSimTask*, const std::vector<std::string>& names); 00059 00061 virtual void pickOK(const DtSimCommandObjectWrapper*); 00062 00064 virtual std::string objectNameFromStatement(const DtSimStatement*) const; 00065 00068 virtual std::string objectNameFromStatement(const DtSimCommand*) const; 00069 00072 virtual DtSimStatement* editableStatement(const DtSimStatement*) const; 00073 00074 virtual bool valid() const; 00075 00076 public: 00077 virtual void slot_validStateChanged(bool b); 00078 virtual void slot_onCancel(); 00079 virtual void slot_onNameChanged(const QString&); 00080 00081 protected: 00082 virtual void slot_taskRequest(std::vector<std::string> names, const DtSimTask&); 00083 virtual void slot_setRequest(std::vector<std::string> names, const DtSetDataRequest&); 00084 virtual void slot_commandRequest(const DtSimCommandObjectWrapper&); 00085 virtual void slot_commandActivated(std::vector<std::string> names, const DtSimTask&); 00086 00087 protected: 00088 virtual void addFilter(const DtVrfSelectionFilter* filter); 00089 virtual void setSelectedName(const QString& s); 00090 virtual QString selectedName() const; 00091 virtual void selectFilter(int); 00092 00095 virtual std::vector<std::string> names() const; 00096 00097 virtual void editStatement(const std::vector<makVrv::DtSimEntry*>&, const DtSimStatement* stmt); 00098 00099 virtual bool allowBroadcasting() const; 00100 virtual void addFiltersFromCollection(const std::string& filterCollection); 00101 00102 protected: 00103 makVrv::DtDe& myDe; 00104 DtCommandAssignmentWidgetInterface* myIFace; 00105 bool myIsPossiblyImmediate; 00106 }; 00107 }