2
0

BsEditorSettings.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #pragma once
  2. #include "BsEditorPrerequisites.h"
  3. #include "BsDegree.h"
  4. namespace BansheeEngine
  5. {
  6. class BS_ED_EXPORT EditorSettings
  7. {
  8. public:
  9. EditorSettings();
  10. bool getMoveHandleSnapActive() const { return mMoveSnapActive; }
  11. bool getRotateHandleSnapActive() const { return mRotateSnapActive; }
  12. bool getScaleHandleSnapActive() const { return mScaleSnapActive; }
  13. float getMoveHandleSnap() const { return mMoveSnap; }
  14. Degree getRotationHandleSnap() const { return mRotationSnap; }
  15. float getScaleHandleSnap() const { return mScaleSnap; }
  16. UINT32 getGridSize() const { return mGridSize; }
  17. float getGridSpacing() const { return mGridAxisSpacing; }
  18. UINT32 getGridMajorAxisSpacing() const { return mGridMajorAxisSpacing; }
  19. UINT32 getGridAxisMarkerSpacing() const { return mGridAxisMarkerSpacing; }
  20. float getHandleSize() const { return mHandleSize; }
  21. void setMoveHandleSnapActive(bool snapActive) { mMoveSnapActive = snapActive; markAsDirty(); }
  22. void setRotateHandleSnapActive(bool snapActive) { mRotateSnapActive = snapActive; markAsDirty(); }
  23. void setScaleHandleSnapActive(bool snapActive) { mScaleSnapActive = snapActive; markAsDirty(); }
  24. void setMoveHandleSnap(float value) { mMoveSnap = value; markAsDirty(); }
  25. void setRotationHandleSnap(Degree value) { mRotationSnap = value; markAsDirty(); }
  26. void setScaleHandleSnap(float value) { mScaleSnap = value; markAsDirty(); }
  27. void setGridSize(UINT32 value) { mGridSize = value; markAsDirty(); }
  28. void setGridSpacing(float value) { mGridAxisSpacing = value; markAsDirty(); }
  29. void setGridMajorAxisSpacing(UINT32 value) { mGridMajorAxisSpacing = value; markAsDirty(); }
  30. void setGridAxisMarkerSpacing(UINT32 value) { mGridMajorAxisSpacing = value; markAsDirty(); }
  31. void setHandleSize(float value) { mHandleSize = value; markAsDirty(); }
  32. UINT32 getHash() const { return mHash; }
  33. private:
  34. void markAsDirty() const { mHash++; }
  35. bool mMoveSnapActive;
  36. bool mRotateSnapActive;
  37. bool mScaleSnapActive;
  38. float mMoveSnap;
  39. Degree mRotationSnap;
  40. float mScaleSnap;
  41. UINT32 mGridSize;
  42. float mGridAxisSpacing;
  43. UINT32 mGridMajorAxisSpacing;
  44. UINT32 mGridAxisMarkerSpacing;
  45. float mHandleSize;
  46. mutable UINT32 mHash;
  47. };
  48. }