diff options
Diffstat (limited to 'include/cru/osx/gui')
| -rw-r--r-- | include/cru/osx/gui/Clipboard.h | 31 | ||||
| -rw-r--r-- | include/cru/osx/gui/Cursor.h | 43 | ||||
| -rw-r--r-- | include/cru/osx/gui/InputMethod.h | 56 | ||||
| -rw-r--r-- | include/cru/osx/gui/Keyboard.h | 7 | ||||
| -rw-r--r-- | include/cru/osx/gui/Menu.h | 67 | ||||
| -rw-r--r-- | include/cru/osx/gui/Resource.h | 24 | ||||
| -rw-r--r-- | include/cru/osx/gui/UiApplication.h | 64 | ||||
| -rw-r--r-- | include/cru/osx/gui/Window.h | 90 | 
8 files changed, 0 insertions, 382 deletions
| diff --git a/include/cru/osx/gui/Clipboard.h b/include/cru/osx/gui/Clipboard.h deleted file mode 100644 index b4dcce4c..00000000 --- a/include/cru/osx/gui/Clipboard.h +++ /dev/null @@ -1,31 +0,0 @@ -#pragma once -#include "Resource.h" - -#include "cru/platform/gui/Base.h" -#include "cru/platform/gui/Clipboard.h" - -#include <memory> - -namespace cru::platform::gui::osx { -namespace details { -class OsxClipboardPrivate; -} - -class OsxClipboard : public OsxGuiResource, public virtual IClipboard { - public: -  OsxClipboard(cru::platform::gui::IUiApplication* ui_application, -               std::unique_ptr<details::OsxClipboardPrivate> p); - -  CRU_DELETE_COPY(OsxClipboard) -  CRU_DELETE_MOVE(OsxClipboard) - -  ~OsxClipboard() override; - - public: -  String GetText() override; -  void SetText(String text) override; - - private: -  std::unique_ptr<details::OsxClipboardPrivate> p_; -}; -}  // namespace cru::platform::gui::osx diff --git a/include/cru/osx/gui/Cursor.h b/include/cru/osx/gui/Cursor.h deleted file mode 100644 index 6cfd400a..00000000 --- a/include/cru/osx/gui/Cursor.h +++ /dev/null @@ -1,43 +0,0 @@ -#pragma once -#include "Resource.h" -#include "cru/platform/gui/Cursor.h" - -#include <memory> - -namespace cru::platform::gui::osx { -namespace details { -class OsxWindowPrivate; -class OsxCursorPrivate; -class OsxCursorManagerPrivate; -}  // namespace details - -class OsxCursor : public OsxGuiResource, public virtual ICursor { -  friend class OsxWindow; -  friend class details::OsxWindowPrivate; - - public: -  OsxCursor(IUiApplication* ui_application, SystemCursorType cursor_type); -  CRU_DELETE_COPY(OsxCursor) -  CRU_DELETE_MOVE(OsxCursor) - -  ~OsxCursor() override; - - private: -  std::unique_ptr<details::OsxCursorPrivate> p_; -}; - -class OsxCursorManager : public OsxGuiResource, public virtual ICursorManager { - public: -  explicit OsxCursorManager(IUiApplication* ui_application); - -  CRU_DELETE_COPY(OsxCursorManager) -  CRU_DELETE_MOVE(OsxCursorManager) - -  ~OsxCursorManager() override; - -  std::shared_ptr<ICursor> GetSystemCursor(SystemCursorType type) override; - - private: -  std::unique_ptr<details::OsxCursorManagerPrivate> p_; -}; -}  // namespace cru::platform::gui::osx diff --git a/include/cru/osx/gui/InputMethod.h b/include/cru/osx/gui/InputMethod.h deleted file mode 100644 index cbfdae6c..00000000 --- a/include/cru/osx/gui/InputMethod.h +++ /dev/null @@ -1,56 +0,0 @@ -#pragma once -#include "Resource.h" - -#include "cru/platform/gui/InputMethod.h" - -namespace cru::platform::gui::osx { -class OsxWindow; - -namespace details { -class OsxWindowPrivate; -class OsxInputMethodContextPrivate; -}  // namespace details - -class OsxInputMethodContext : public OsxGuiResource, -                              public virtual IInputMethodContext { -  friend OsxWindow; -  friend details::OsxWindowPrivate; -  friend details::OsxInputMethodContextPrivate; - - public: -  explicit OsxInputMethodContext(OsxWindow* window); - -  CRU_DELETE_COPY(OsxInputMethodContext) -  CRU_DELETE_MOVE(OsxInputMethodContext) - -  ~OsxInputMethodContext() override; - - public: -  bool ShouldManuallyDrawCompositionText() override; - -  void EnableIME() override; - -  void DisableIME() override; - -  void CompleteComposition() override; - -  void CancelComposition() override; - -  CompositionText GetCompositionText() override; - -  void SetCandidateWindowPosition(const Point& point) override; - -  IEvent<std::nullptr_t>* CompositionStartEvent() override; - -  IEvent<std::nullptr_t>* CompositionEndEvent() override; - -  IEvent<std::nullptr_t>* CompositionEvent() override; - -  IEvent<StringView>* TextEvent() override; - -  bool IsEnabled(); - - private: -  std::unique_ptr<details::OsxInputMethodContextPrivate> p_; -}; -}  // namespace cru::platform::gui::osx diff --git a/include/cru/osx/gui/Keyboard.h b/include/cru/osx/gui/Keyboard.h deleted file mode 100644 index 89e0fa05..00000000 --- a/include/cru/osx/gui/Keyboard.h +++ /dev/null @@ -1,7 +0,0 @@ -#pragma once -#include "cru/platform/gui/Keyboard.h" - -namespace cru::platform::gui::osx { -KeyCode KeyCodeFromOsxToCru(unsigned short n); -unsigned short KeyCodeFromCruToOsx(KeyCode k); -}  // namespace cru::platform::gui::osx diff --git a/include/cru/osx/gui/Menu.h b/include/cru/osx/gui/Menu.h deleted file mode 100644 index c5cc756a..00000000 --- a/include/cru/osx/gui/Menu.h +++ /dev/null @@ -1,67 +0,0 @@ -#pragma once -#include "Resource.h" - -#include "cru/platform/gui/Menu.h" - -namespace cru::platform::gui::osx { -namespace details { -struct OsxMenuItemPrivate; -struct OsxMenuPrivate; -}  // namespace details - -class OsxMenu; - -class OsxMenuItem : public OsxGuiResource, public virtual IMenuItem { -  friend OsxMenu; -  friend details::OsxMenuPrivate; - - private: -  explicit OsxMenuItem(IUiApplication* ui_application); - - public: -  CRU_DELETE_COPY(OsxMenuItem) -  CRU_DELETE_MOVE(OsxMenuItem) - -  ~OsxMenuItem() override; - - public: -  String GetTitle() override; -  void SetTitle(String title) override; -  bool IsEnabled() override; -  void SetEnabled(bool enabled) override; -  IMenu* GetParentMenu() override; -  IMenu* GetSubmenu() override; -  void SetKeyboardShortcut(KeyCode key, KeyModifier modifiers) override; -  void DeleteKeyboardShortcut() override; -  void SetOnClickHandler(std::function<void()> handler) override; - - private: -  details::OsxMenuItemPrivate* p_; -}; - -class OsxMenu : public OsxGuiResource, public virtual IMenu { -  friend OsxMenuItem; -  friend details::OsxMenuPrivate; -  friend details::OsxMenuItemPrivate; - - private: -  explicit OsxMenu(IUiApplication* ui_application); - - public: -  static OsxMenu* CreateOrGetApplicationMenu(IUiApplication* ui_application); - -  CRU_DELETE_COPY(OsxMenu) -  CRU_DELETE_MOVE(OsxMenu) - -  ~OsxMenu() override; - - public: -  IMenuItem* GetItemAt(int index) override; -  int GetItemCount() override; -  IMenuItem* CreateItemAt(int index) override; -  void RemoveItemAt(int index) override; - - private: -  details::OsxMenuPrivate* p_; -}; -}  // namespace cru::platform::gui::osx diff --git a/include/cru/osx/gui/Resource.h b/include/cru/osx/gui/Resource.h deleted file mode 100644 index bc3f9cd6..00000000 --- a/include/cru/osx/gui/Resource.h +++ /dev/null @@ -1,24 +0,0 @@ -#pragma once -#include "../Resource.h" - -#include "cru/platform/gui/Base.h" - -namespace cru::platform::gui::osx { -class OsxGuiResource : public platform::osx::OsxResource { - public: -  explicit OsxGuiResource(IUiApplication* ui_application); - -  CRU_DELETE_COPY(OsxGuiResource) -  CRU_DELETE_MOVE(OsxGuiResource) - -  ~OsxGuiResource() override = default; - - public: -  String GetPlatformId() const override { return u"OSX GUI"; } - -  IUiApplication* GetUiApplication() const { return ui_application_; } - - private: -  IUiApplication* ui_application_; -}; -}  // namespace cru::platform::gui::osx diff --git a/include/cru/osx/gui/UiApplication.h b/include/cru/osx/gui/UiApplication.h deleted file mode 100644 index 2d2c119c..00000000 --- a/include/cru/osx/gui/UiApplication.h +++ /dev/null @@ -1,64 +0,0 @@ -#pragma once -#include "Resource.h" -#include "cru/platform/gui/UiApplication.h" - -#include <functional> -#include <memory> - -namespace cru::platform::gui::osx { -class OsxWindow; - -namespace details { -class OsxUiApplicationPrivate; -} - -class OsxUiApplication : public OsxGuiResource, public virtual IUiApplication { -  friend details::OsxUiApplicationPrivate; -  friend OsxWindow; - - public: -  OsxUiApplication(); - -  CRU_DELETE_COPY(OsxUiApplication) -  CRU_DELETE_MOVE(OsxUiApplication) - -  ~OsxUiApplication() override; - - public: -  int Run() override; - -  void RequestQuit(int quit_code) override; -  void AddOnQuitHandler(std::function<void()> handler) override; -  bool IsQuitOnAllWindowClosed() override; -  void SetQuitOnAllWindowClosed(bool quit_on_all_window_closed) override; - -  long long SetImmediate(std::function<void()> action) override; -  long long SetTimeout(std::chrono::milliseconds milliseconds, -                       std::function<void()> action) override; -  long long SetInterval(std::chrono::milliseconds milliseconds, -                        std::function<void()> action) override; -  void CancelTimer(long long id) override; - -  std::vector<INativeWindow*> GetAllWindow() override; - -  INativeWindow* CreateWindow() override; - -  cru::platform::graphics::IGraphicsFactory* GetGraphicsFactory() override; - -  ICursorManager* GetCursorManager() override; - -  IClipboard* GetClipboard() override; - -  IMenu* GetApplicationMenu() override; - -  std::optional<String> ShowSaveDialog(SaveDialogOptions options) override; - -  std::optional<std::vector<String>> ShowOpenDialog( -      OpenDialogOptions options) override; - - private: -  void UnregisterWindow(OsxWindow* window); - -  std::unique_ptr<details::OsxUiApplicationPrivate> p_; -}; -}  // namespace cru::platform::gui::osx diff --git a/include/cru/osx/gui/Window.h b/include/cru/osx/gui/Window.h deleted file mode 100644 index 6cefbe8e..00000000 --- a/include/cru/osx/gui/Window.h +++ /dev/null @@ -1,90 +0,0 @@ -#pragma once -#include "Resource.h" -#include "cru/platform/gui/Base.h" -#include "cru/platform/gui/InputMethod.h" -#include "cru/platform/gui/Window.h" - -#include <memory> - -namespace cru::platform::gui::osx { -namespace details { -class OsxWindowPrivate; -class OsxInputMethodContextPrivate; -}  // namespace details - -class OsxUiApplication; -class OsxInputMethodContext; - -class OsxWindow : public OsxGuiResource, public INativeWindow { -  friend details::OsxWindowPrivate; -  friend details::OsxInputMethodContextPrivate; - - public: -  OsxWindow(OsxUiApplication* ui_application); - -  CRU_DELETE_COPY(OsxWindow) -  CRU_DELETE_MOVE(OsxWindow) - -  ~OsxWindow() override; - - public: -  void Close() override; - -  INativeWindow* GetParent() override; -  void SetParent(INativeWindow* parent) override; - -  WindowStyleFlag GetStyleFlag() override; -  void SetStyleFlag(WindowStyleFlag flag) override; - -  String GetTitle() override; -  void SetTitle(String title) override; - -  WindowVisibilityType GetVisibility() override; -  void SetVisibility(WindowVisibilityType visibility) override; - -  Size GetClientSize() override; -  void SetClientSize(const Size& size) override; - -  Rect GetClientRect() override; -  void SetClientRect(const Rect& rect) override; - -  Rect GetWindowRect() override; -  void SetWindowRect(const Rect& rect) override; - -  bool RequestFocus() override; - -  Point GetMousePosition() override; - -  bool CaptureMouse() override; -  bool ReleaseMouse() override; - -  void SetCursor(std::shared_ptr<ICursor> cursor) override; - -  void SetToForeground() override; - -  void RequestRepaint() override; - -  std::unique_ptr<graphics::IPainter> BeginPaint() override; - -  IEvent<std::nullptr_t>* CreateEvent() override; -  IEvent<std::nullptr_t>* DestroyEvent() override; -  IEvent<std::nullptr_t>* PaintEvent() override; - -  IEvent<WindowVisibilityType>* VisibilityChangeEvent() override; -  IEvent<Size>* ResizeEvent() override; -  IEvent<FocusChangeType>* FocusEvent() override; - -  IEvent<MouseEnterLeaveType>* MouseEnterLeaveEvent() override; -  IEvent<Point>* MouseMoveEvent() override; -  IEvent<NativeMouseButtonEventArgs>* MouseDownEvent() override; -  IEvent<NativeMouseButtonEventArgs>* MouseUpEvent() override; -  IEvent<NativeMouseWheelEventArgs>* MouseWheelEvent() override; -  IEvent<NativeKeyEventArgs>* KeyDownEvent() override; -  IEvent<NativeKeyEventArgs>* KeyUpEvent() override; - -  IInputMethodContext* GetInputMethodContext() override; - - private: -  std::unique_ptr<details::OsxWindowPrivate> p_; -}; -}  // namespace cru::platform::gui::osx | 
