17 #ifndef _GAZEBO_GUI_MAINWINDOW_HH_
18 #define _GAZEBO_GUI_MAINWINDOW_HH_
23 #include "gazebo/gazebo_config.h"
25 #include "gazebo/msgs/MessageTypes.hh"
41 class MainWindowPrivate;
62 public:
unsigned int EntityId(
const std::string &_name);
67 public:
bool HasEntityName(
const std::string &_name);
72 public:
void AddToLeftColumn(
const std::string &_name, QWidget *_widget);
79 public:
void ShowLeftColumnWidget(
const std::string &_name =
"default");
93 public:
bool IsPaused()
const;
96 public slots:
void Play();
99 public slots:
void Pause();
103 public:
void SetLeftPaneVisibility(
bool _on);
107 public:
void AddMenu(QMenu *_menu);
113 public:
void ShowMenuBar(QMenuBar *_bar =
NULL);
123 public: QAction *CloneAction(QAction *_action, QObject *_parent);
138 signals:
void AddPlugins();
142 signals:
void TrackVisual(
const std::string &_visualName);
145 signals:
void Close();
147 protected:
void closeEvent(QCloseEvent *_event);
149 private:
void OnGUI(ConstGUIPtr &_msg);
151 private slots:
void ItemSelected(QTreeWidgetItem *,
int);
152 private slots:
void New();
153 private slots:
void Open();
154 private slots:
void Save();
155 private slots:
void SaveAs();
158 private slots:
void SaveINI();
161 private slots:
void Clone();
164 private slots:
void HotkeyChart();
167 private slots:
void About();
169 private slots:
void Step();
172 private slots:
void Arrow();
175 private slots:
void Translate();
178 private slots:
void Rotate();
181 private slots:
void Scale();
185 private slots:
void Align();
188 private slots:
void Snap();
190 private slots:
void CreateBox();
191 private slots:
void CreateSphere();
192 private slots:
void CreateCylinder();
193 private slots:
void CreateMesh();
194 private slots:
void CreatePointLight();
195 private slots:
void CreateSpotLight();
196 private slots:
void CreateDirectionalLight();
199 private slots:
void CaptureScreenshot();
201 private slots:
void InsertModel();
204 private slots:
void ShowGrid();
207 private slots:
void ShowOrigin();
210 private slots:
void ShowCollisions();
213 private slots:
void ShowJoints();
216 private slots:
void ShowContacts();
219 private slots:
void ShowCOM();
222 private slots:
void ShowInertia();
225 private slots:
void ShowLinkFrame();
228 private slots:
void ShowSkeleton();
231 private slots:
void FullScreen();
234 private slots:
void ShowToolbars();
236 private slots:
void FPS();
237 private slots:
void Orbit();
238 private slots:
void ViewOculus();
239 private slots:
void OnResetModelOnly();
240 private slots:
void OnResetWorld();
241 private slots:
void SetTransparent();
242 private slots:
void SetWireframe();
245 private slots:
void ShowGUIOverlays();
251 private slots:
void OnDataLoggerClosed();
254 private slots:
void SelectTopic();
260 private slots:
void OnAddPlugins();
264 private slots:
void OnTrackVisual(
const std::string &_visualName);
268 private slots:
void OnEditorGroup(QAction *_action);
272 private:
void OnFullScreen(
bool _value);
276 private:
void OnShowToolbars(
bool _value);
278 private:
void OnMoveMode(
bool _mode);
281 private:
void CreateActions();
284 private:
void DeleteActions();
287 private:
void CreateMenus();
290 private:
void CreateMenuBar();
293 private:
void CreateEditors();
295 private:
void OnModel(ConstModelPtr &_msg);
299 private:
void OnLight(ConstLightPtr &_msg);
301 private:
void OnResponse(ConstResponsePtr &_msg);
302 private:
void OnWorldModify(ConstWorldModifyPtr &_msg);
303 private:
void OnManipMode(
const std::string &_mode);
304 private:
void OnSetSelectedEntity(
const std::string &_name,
305 const std::string &_mode);
309 private:
void OnInputStepSizeChanged(
int _value);
313 private:
void OnFollow(
const std::string &_modelName);
319 private:
void CreateDisabledIcon(
const std::string &_pixmap,
324 private:
void OnWindowMode(
const std::string &_mode);
328 private: std::unique_ptr<MainWindowPrivate> dataPtr;
A widget that provides data logging functionality.
Definition: DataLogger.hh:37
#define GAZEBO_DEPRECATED(version)
Definition: CommonTypes.hh:48
Plot diagnostic information.
Definition: gui/Diagnostics.hh:34
#define NULL
Definition: CommonTypes.hh:31
Definition: MainWindow.hh:43
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
Base class for editors, such as BuildingEditor and TerrainEditor.
Definition: Editor.hh:35