VR-Forces 4.1 Class Documentation
DtObserverSettingsLogic.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCoreQt/vrvCoreQt.h>
14 
15 namespace makVrv
16 {
17  class DtDe;
18  class DtObserverSettingsInterface;
19  class DtPersistenceControlsInterface;
20  class DtSettingsBackup;
21  class DtInputDriver;
22  class DtObserver;
23  class DtSensor;
24 
28  {
29  public:
30 
33  DtObserverSettingsInterface* observerModeEditorIf );
34 
37 
39  virtual void setSelectedObserver( const std::string& observerName );
40 
42  virtual void setSelectedObserverMode( const std::string& ObserverModeName );
43 
44  virtual void modelSetChanged( int modelSet );
45  virtual void sensorChanged( const std::string& sensor);
46  virtual void keyMapChanged( const std::string& keyMap );
47  virtual void projectionChanged( const std::string& projection );
48  virtual void settingChanged( int settingKey, bool value );
49 
51  virtual void setModelScaleFactor( int factor );
52 
54  virtual void setModelScaleType( DtObserverObject::ScaleType type );
55 
57  virtual void setMaxModelScaleFactor( double maxScaleFactor );
58 
60  virtual void setLinearSpeedGain( int gain );
61 
63  virtual void setRotationSpeedGain( int gain );
64 
66  virtual void setOrbitSpeedGain( int gain );
67 
68  virtual void createObserver( const std::string& ObserverName );
69  virtual void deleteObserver( const std::string& ObserverName );
70  virtual void renameObserver( const std::string& oldName, const std::string& newName );
71 
72  virtual void createObserverMode( const std::string& ObserverModeName );
73  virtual void deleteObserverMode( const std::string& ObserverModeName );
74  virtual void renameObserverMode( const std::string& oldName, const std::string& newName );
75 
76  protected:
77 
78  virtual void observerModesRestored(const DtSettingsBackup*);
79 
81  void setupValues();
82 
83  // called by setupValues, and also when projection or model set changes
84  // the update the settings pane
85  void setupSettings();
86 
87  void setupSpeedSliders();
88  void setupModelScaleFactorSlider();
89  void setupModelScaleTypeSelector();
90  void setupMaxModelScaleFactorSpinBox();
91 
92  void setupObserverList();
93  void setupObserverModeList();
94 
95  std::string projectionToString( bool is2D );
96  bool projectionFromString( const std::string& is2D );
97 
99  virtual void onExport();
100 
102  virtual void onExportSelected();
103 
106  virtual void onExportFilenameChosen(const std::string&, bool selected);
107 
110  virtual void onImport();
111 
114  virtual void onImportFilenameChosen(const std::string&);
115 
118  virtual void onMerge();
119 
122  virtual void onMergeFilenameChosen( const std::string& );
123 
124  virtual void updateDeleteEnabledState( const std::string& channelKeyToIgnore = "" );
125 
126  virtual void setCurrentObserverSelected();
127 
128  protected:
129  void slot_observerModeNameChanged( int modeId );
130  void slot_observerModeSettingChanged( int modeId );
131 
134  void slot_channelConfigurationModified();
135 
138  void slot_channelToBeDestroyed(const std::string& displayName,
139  const std::string& windowName, const std::string& channelName );
140 
143  void slot_channelConfigurationAdded();
144 
148  void slot_sensorAdded(DtSensor* sensor);
149 
153  void slot_sensorRemoved(DtSensor* sensor);
154 
158  void slot_sensorRenamed(DtSensor* sensor, const std::string& oldName);
159 
161  void slot_observerCreated( DtInputDriver* inputDriver,
162  DtObserver* observer );
163 
165  void slot_observerAboutToBeDestroyed( DtInputDriver* inputDriver,
166  DtObserver* observer );
167 
169  void slot_observerModeChanged( DtObserver* observer, int newObserverMode );
170 
171  protected:
176  // We need this so we don't make an observer that's being deleted the
177  // new selected observer
179  };
180 }

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)