ImageAssetInspectors.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #pragma once
  2. #include "ImageAsset.h"
  3. #ifndef _GUI_INSPECTOR_TYPES_H_
  4. #include "gui/editor/guiInspectorTypes.h"
  5. #endif
  6. #include <gui/controls/guiBitmapCtrl.h>
  7. #ifdef TORQUE_TOOLS
  8. class GuiInspectorTypeImageAssetPtr : public GuiInspectorTypeFileName
  9. {
  10. typedef GuiInspectorTypeFileName Parent;
  11. public:
  12. GuiTextCtrl* mLabel = NULL;
  13. GuiBitmapButtonCtrl* mPreviewBorderButton = NULL;
  14. GuiBitmapCtrl* mPreviewImage = NULL;
  15. GuiBitmapButtonCtrl* mEditButton = NULL;
  16. bool mIsDeleteButtonVisible;
  17. DECLARE_CONOBJECT(GuiInspectorTypeImageAssetPtr);
  18. static void consoleInit();
  19. GuiControl* constructEditControl() override;
  20. bool updateRects() override;
  21. bool renderTooltip(const Point2I& hoverPos, const Point2I& cursorPos, const char* tipText = NULL);
  22. void updateValue() override;
  23. void updatePreviewImage();
  24. void setPreviewImage(StringTableEntry assetId);
  25. /// Sets this control's caption text, usually set within setInspectorField,
  26. /// this is exposed in case someone wants to override the normal caption.
  27. void setCaption(StringTableEntry caption) override;
  28. void setIsDeleteBtnVisible(const bool& isVisible)
  29. {
  30. if (mEditButton)
  31. mEditButton->setVisible(isVisible);
  32. }
  33. };
  34. class GuiInspectorTypeImageAssetId : public GuiInspectorTypeImageAssetPtr
  35. {
  36. typedef GuiInspectorTypeImageAssetPtr Parent;
  37. public:
  38. DECLARE_CONOBJECT(GuiInspectorTypeImageAssetId);
  39. static void consoleInit();
  40. };
  41. #endif