2
0

navMeshTool.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #pragma once
  2. #ifndef _NAVMESH_TOOL_H_
  3. #define _NAVMESH_TOOL_H_
  4. #ifdef TORQUE_TOOLS
  5. #ifndef _SIMBASE_H_
  6. #include "console/simBase.h"
  7. #endif
  8. #ifndef _GUITYPES_H_
  9. #include "gui/core/guiTypes.h"
  10. #endif
  11. #ifndef _NAVMESH_H_
  12. #include "navigation/navMesh.h"
  13. #endif
  14. #ifndef _GUINAVEDITORCTRL_H_
  15. #include "navigation/guiNavEditorCtrl.h"
  16. #endif
  17. class UndoAction;
  18. class NavMeshTool : public SimObject
  19. {
  20. typedef SimObject Parent;
  21. protected:
  22. SimObjectPtr<NavMesh> mNavMesh;
  23. SimObjectPtr<GuiNavEditorCtrl> mCurEditor;
  24. void _submitUndo(UndoAction* action);
  25. public:
  26. NavMeshTool();
  27. virtual ~NavMeshTool();
  28. DECLARE_CONOBJECT(NavMeshTool);
  29. virtual void setActiveNavMesh(NavMesh* nav_mesh) { mNavMesh = nav_mesh; }
  30. virtual void setActiveEditor(GuiNavEditorCtrl* nav_editor) { mCurEditor = nav_editor; }
  31. virtual void onActivated(const Gui3DMouseEvent& lastEvent) {}
  32. virtual void onDeactivated() {}
  33. virtual void on3DMouseDown(const Gui3DMouseEvent& evt) {}
  34. virtual void on3DMouseUp(const Gui3DMouseEvent& evt) {}
  35. virtual void on3DMouseMove(const Gui3DMouseEvent& evt) {}
  36. virtual void on3DMouseDragged(const Gui3DMouseEvent& evt) {}
  37. virtual void on3DMouseEnter(const Gui3DMouseEvent& evt) {}
  38. virtual void on3DMouseLeave(const Gui3DMouseEvent& evt) {}
  39. virtual bool onMouseWheel(const GuiEvent& evt) { return false; }
  40. virtual void onRender3D() {}
  41. virtual void onRender2D() {}
  42. virtual void updateGizmo() {}
  43. virtual bool updateGuiInfo() { return false; }
  44. virtual void onUndoAction() {}
  45. };
  46. #endif
  47. #endif // !_NAVMESH_TOOL_H_