VR-Forces 4.0.4 Class Documentation
include/bhave3DGui/bhaveNewSpawnTemplateDialog.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2012 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ** Created: 3/12/12 MEM
00005 ******************************************************************************/
00006 
00009 
00010 #pragma once
00011 
00012 #include <bhave3DGui/bhave3DGuiDefines.h>
00013 #include <vrvUtil/signalslib.h>
00014 #include <QtGui/QDialog>
00015 #include <QtGui/QTimeEdit>
00016 #include <QtCore/QStringList>
00017 #include <vrfGuiCoreQt/DtVrfFilteredListView.h>
00018 #include <vrfGuiCore/entityMapperKey.h>
00019 #include "bhave3DGui/bhaveNewSpawnTemplateDialogInterface.h"
00020 #include "bhave3DGui/ui_bhaveNewSpawnTemplateDialogUi.h"
00021 #include "bhaveMsgs/ifUpdateSpawnInstance.h"
00022 #include "bhaveMsgs/ifSpawnList.h"
00023 #include "vrfmsgs/rwSpawnData.h"
00024 #include <vlpi/disEnums.h>
00025 #include <vrvUtil/DtUnitConverterCollection.h>
00026 
00027 class DtIfVrfObjectCreated;
00028 class DtSimMessage;
00029 namespace makVrf
00030 {
00031    class DtIssueEntityPlanWidget;
00032 }
00033 
00034 namespace BHAVE
00035 {
00036    namespace BHAVE3DGui
00037    {
00038       class DtBhaveEntityCreatePalette;
00039 
00041       class DT_DLL_bhave3DGui DtBhaveNewSpawnTemplateDialog : public QDialog, public DtBhaveNewSpawnTemplateDialogInterface
00042       {
00043 
00044          Q_OBJECT
00045 
00046       public:
00047          
00049          DtBhaveNewSpawnTemplateDialog(makVrv::DtDe& de, QWidget* parent = 0, const Qt::WindowFlags& flags = 0);
00050 
00052          virtual ~DtBhaveNewSpawnTemplateDialog();
00053 
00055          virtual void init(bool editing = false);
00056 
00059          virtual void setSpawnData(const DtRwSpawnData & data, bool resolveDuplcateTemplateName = false);
00060          virtual const DtRwSpawnData& spawnData() const;
00061 
00063          virtual int exec();
00064 
00065          virtual void displayDialog();
00066 
00067          virtual void setTemplateNamesInUseList(const QStringList& namesInUse);
00068 
00069       public slots:
00070 
00072          virtual void onPlanButtonClicked();
00073 
00075          virtual void onAddSpawnItem();
00077          virtual void onEditSpawnItem();
00078 
00080          virtual void onDeleteSpawnItem();
00081 
00084          virtual void onEnableContinuousSpawnage(bool on);
00085 
00089          virtual void onEnableTimeOfDaySpawnage(bool on);
00090 
00094          virtual void onEnableSimTimeSpawnage(bool on);
00095 
00097          virtual void onEnableBurstCycle(bool on);
00098 
00099          virtual void onEnableCustomPlan(bool on);
00100          virtual void onEnableDefaultPlan(bool on);
00101 
00102          virtual void onAddSinkPt();
00103          virtual void slot_addSinkPt(QString sinkPtName);
00104          virtual void onRemoveSinkPt();
00105 
00106       protected:
00107 
00109          virtual void setupGui();
00110 
00111          virtual void createEntityPalette();
00112 
00113          virtual void createPlanWidget();
00114 
00117          virtual void slot_createObjectType(const makVrf::DtEntityMapperKey& x);
00118 
00120          virtual bool updateSpawnFromGui();
00121 
00122          virtual QTime convertTime(double secondsPastMidnight);
00123 
00126          virtual void keyPressEvent(QKeyEvent *e);
00127 
00128          virtual void slot_send();
00129          virtual void slot_close();
00130 
00131          virtual void refreshLabels();
00132          virtual void slot_onUnitChanged(int attribute, int from, int to);
00133          virtual void slot_displayUnitDecimalsChanged(
00134             makVrv::DtUnitConverterCollection::DisplayUnitType, int, int);
00135       
00136          virtual void sinkPointRemoved(const DtString&);
00137          virtual void sinkPointAdded(const DtString&);
00138 
00139          virtual QString patternName(const DtString& curName) const;
00140 
00141       protected slots:
00143          virtual void updateButtons();
00144 
00146          virtual void onCreateButtonClicked();
00147 
00149          virtual void onCreateObjectName(QTreeWidgetItem* i, int col);
00150          virtual void onEditObjectName(QTreeWidgetItem* i, int col);
00151 
00152          virtual void displayEntityPalette();
00153 
00155          virtual void cancel();
00156 
00157       signals:
00158 
00160          void sendSpawnData(DtRwSpawnData& spawnData);
00161          void sendSpawnData(DtRwSpawnData& spawnData,bool updatePtNames);
00162 
00164          void closing();
00165 
00166       public:
00167 
00168          Ui::bhaveNewSpawnTemplateDialogUi myUiImpl;
00169  
00170       protected:
00171          makVrv::DtDe&                       myDe;
00172          bool                                myEditing;
00173          DtBhaveEntityCreatePalette*         myEntityPalettePanel;
00174          DtRwSpawnData                       mySpawnData;
00176          int                                 myCurrentForce;
00177          DtEntityType                        myCurrentEntityType;
00178          QStringList                         myTemplateNamesInUse;
00179          makVrf::DtIssueEntityPlanWidget*    myPlanWidget;
00180       };
00181    }
00182 }

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)