VR-Forces 4.0.4 Class Documentation
include/vrfGuiCoreQt/DtEditPlanWidgetLogic.h
Go to the documentation of this file.
00001 /****************************************************************************** 
00002 ** Copyright (c) 2009 MAK Technologies, Inc. 
00003 ** All rights reserved. 
00004 ******************************************************************************/ 
00005 /****************************************************************************** 
00006 ** $RCSfile: DtEditPlanWidgetLogic.h,v $ $Revision: 1.3 $ $State: Exp $ 
00007 ******************************************************************************/ 
00008  
00011 
00013 
00014 #pragma once
00015 
00016 #include <vrfGuiCoreQt/vrfGuiCoreQt.h>
00017 #include <vrfGuiCoreQt/DtBasePlanWidgetLogic.h>
00018 #include <vrfGuiCoreQt/DtPlanCommandSignaler.h>
00019 #include <vrfplan/createObjectCommand.h>
00020 
00021 namespace makVrv
00022 {
00023    class DtDe;
00024    struct DtEntityState;
00025 }
00026 
00027 namespace makVrf
00028 {
00029    class DtSimCommandObjectWrapper;   
00030 
00031    class DT_DLL_VRFGUICOREQT DtEditPlanWidgetLogic : public DtBasePlanWidgetLogic
00032    {
00033 
00034    public: 
00035       
00037       DtEditPlanWidgetLogic(makVrv::DtDe& de, DtPlanWidgetInterface* iFace );
00038          
00040       virtual ~DtEditPlanWidgetLogic();
00041 
00042    protected:
00044       virtual void requestPlan(const std::vector<std::string>&);
00045 
00046       virtual void setPlanIsModified(bool);
00047 
00048       virtual void registerPlanCallbacks(const std::vector<std::string>& names);
00049       virtual void unregisterPlanCallbacks(const std::vector<std::string>& names);
00050 
00051       virtual bool planIsModified() const
00052       {
00053          return myPlanModified;
00054       }
00055 
00056       virtual void processReceivePlan(const DtString& name, 
00057          bool isGlobal, const DtList& statements);
00058 
00059       virtual void processReceiveCurrentStatement(const DtString& name, bool isGlobal, DtPlanStatus status);
00060       virtual void processReceivePlanComplete(const DtString& name, bool isGlobal);
00061       virtual void processPlanStatement(const DtString& name, bool isGlobal, DtPlanStatus status);
00062 
00064       virtual bool isWatching(const std::string&) const;
00065 
00067       virtual void addStatementAfter(DtSimStatement* stmt, const DtPlanListBoxItem* listItem);
00068 
00070       virtual void addConditional(const DtSimStatement& stmt);
00071 
00074       virtual void planRequestComplete();
00075 
00076       virtual void planSelectionChanged();
00077       virtual void replacePlan();
00078       virtual void enableReplacePlan();
00079 
00080       virtual bool deleteStatement(const DtPlanListBoxItem*);
00081       virtual void deleteAllStatements();
00082 
00083       virtual void addSetRequest(const DtSetDataRequest&);
00084       virtual void addTaskRequest(const DtSimTask&);
00085       virtual void addCommandRequest(DtSimCommand&);
00086       virtual void replaceStatement(DtSimStatement* stmt, DtPlanListBoxItem* listItem);
00087 
00088       virtual bool statementIsEditable(DtSimStatement* stmt) const;
00089       virtual void editCurrentPlanStatement(const std::vector<makVrv::DtSimEntry*>&);
00090       virtual bool editPlanStatement(const std::vector<makVrv::DtSimEntry*>&, DtSimStatement* stmt);
00091       virtual bool editConditionalExpression(int type, const DtSimCondExpr* stmt, const std::vector<makVrv::DtSimEntry*>& data);
00092       virtual void editPlanStatementFor(const DtEntityType& t, const DtCreateObjectCommand* simStmt);
00093       virtual void editPlanStatementForTacticalGraphic(const DtCreateObjectCommand* simStmt);
00094       virtual void editPlanStatementForEntity(const DtCreateObjectCommand* simStmt);
00095 
00096       virtual void finalizeObjectCreation(const DtEntityType&, std::string name, int, const std::vector<DtVector>&, double, bool, bool);      
00097       virtual void slot_stoppedObjectCreation();
00098 
00099       virtual void finalizeTacticalGraphicObjectCreation(const DtEntityType& t, int f, const std::vector<DtVector>& p,
00100             const QString& name);
00101       
00102       virtual void finalizeEntityObjectCreation(const DtEntityType& t, int f, const std::vector<DtVector>& p, double entityHeading, bool isClampedToGround, bool isAggregated, 
00103             const QString& name);
00104 
00105    protected:
00106       virtual void slot_onConditionEditingComplete(const DtSimStatement&);
00107 
00109       virtual void slot_onEditSimCommandRequest(const DtSimCommandObjectWrapper&);
00110 
00111       virtual void slot_objectCreateComplete();
00112 
00113       virtual bool globalPlan() const;
00114 
00116       virtual void cancel(bool force = false);
00117 
00118    protected:
00119       bool myRequestingPlan;
00120       bool myPlanModified;
00121       bool myPlanEditMode;
00122       int myCurrentStatement;
00123       DtPlanStatus myPlanStatus;
00124       std::vector<std::string>   myRegisteredNames;
00125    };
00126 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)