瀏覽代碼

LibGUI: Make Dialog::ScreenPosition an enum class

Sam Atkins 3 年之前
父節點
當前提交
cd5210a87a
共有 3 個文件被更改,包括 14 次插入14 次删除
  1. 1 1
      Userland/Libraries/LibGUI/CommandPalette.h
  2. 10 10
      Userland/Libraries/LibGUI/Dialog.cpp
  3. 3 3
      Userland/Libraries/LibGUI/Dialog.h

+ 1 - 1
Userland/Libraries/LibGUI/CommandPalette.h

@@ -20,7 +20,7 @@ public:
     GUI::Action const* selected_action() const { return m_selected_action; }
     GUI::Action const* selected_action() const { return m_selected_action; }
 
 
 private:
 private:
-    explicit CommandPalette(GUI::Window& parent_window, ScreenPosition screen_position = CenterWithinParent);
+    explicit CommandPalette(GUI::Window& parent_window, ScreenPosition = ScreenPosition::CenterWithinParent);
     virtual ~CommandPalette() override = default;
     virtual ~CommandPalette() override = default;
 
 
     void collect_actions(GUI::Window& parent_window);
     void collect_actions(GUI::Window& parent_window);

+ 10 - 10
Userland/Libraries/LibGUI/Dialog.cpp

@@ -35,7 +35,7 @@ Dialog::ExecResult Dialog::exec()
     auto right_align = [this, desktop_rect](Gfx::Rect<int>& rect) { rect.set_x(desktop_rect.width() - width() - 12); };
     auto right_align = [this, desktop_rect](Gfx::Rect<int>& rect) { rect.set_x(desktop_rect.width() - width() - 12); };
 
 
     switch (m_screen_position) {
     switch (m_screen_position) {
-    case CenterWithinParent:
+    case ScreenPosition::CenterWithinParent:
         if (parent() && is<Window>(parent())) {
         if (parent() && is<Window>(parent())) {
             auto& parent_window = *static_cast<Window*>(parent());
             auto& parent_window = *static_cast<Window*>(parent());
             if (parent_window.is_visible()) {
             if (parent_window.is_visible()) {
@@ -44,38 +44,38 @@ Dialog::ExecResult Dialog::exec()
             }
             }
         }
         }
         [[fallthrough]]; // Fall back to `Center` if parent window is invalid or not visible
         [[fallthrough]]; // Fall back to `Center` if parent window is invalid or not visible
-    case Center:
+    case ScreenPosition::Center:
         window_rect.center_within(desktop_rect);
         window_rect.center_within(desktop_rect);
         break;
         break;
-    case CenterLeft:
+    case ScreenPosition::CenterLeft:
         left_align(window_rect);
         left_align(window_rect);
         window_rect.center_vertically_within(desktop_rect);
         window_rect.center_vertically_within(desktop_rect);
         break;
         break;
-    case CenterRight:
+    case ScreenPosition::CenterRight:
         right_align(window_rect);
         right_align(window_rect);
         window_rect.center_vertically_within(desktop_rect);
         window_rect.center_vertically_within(desktop_rect);
         break;
         break;
-    case TopLeft:
+    case ScreenPosition::TopLeft:
         left_align(window_rect);
         left_align(window_rect);
         top_align(window_rect);
         top_align(window_rect);
         break;
         break;
-    case TopCenter:
+    case ScreenPosition::TopCenter:
         window_rect.center_horizontally_within(desktop_rect);
         window_rect.center_horizontally_within(desktop_rect);
         top_align(window_rect);
         top_align(window_rect);
         break;
         break;
-    case TopRight:
+    case ScreenPosition::TopRight:
         right_align(window_rect);
         right_align(window_rect);
         top_align(window_rect);
         top_align(window_rect);
         break;
         break;
-    case BottomLeft:
+    case ScreenPosition::BottomLeft:
         left_align(window_rect);
         left_align(window_rect);
         bottom_align(window_rect);
         bottom_align(window_rect);
         break;
         break;
-    case BottomCenter:
+    case ScreenPosition::BottomCenter:
         window_rect.center_horizontally_within(desktop_rect);
         window_rect.center_horizontally_within(desktop_rect);
         bottom_align(window_rect);
         bottom_align(window_rect);
         break;
         break;
-    case BottomRight:
+    case ScreenPosition::BottomRight:
         right_align(window_rect);
         right_align(window_rect);
         bottom_align(window_rect);
         bottom_align(window_rect);
         break;
         break;

+ 3 - 3
Userland/Libraries/LibGUI/Dialog.h

@@ -22,7 +22,7 @@ public:
         Yes = 3,
         Yes = 3,
         No = 4,
         No = 4,
     };
     };
-    enum ScreenPosition {
+    enum class ScreenPosition {
         CenterWithinParent = 0,
         CenterWithinParent = 0,
 
 
         Center = 1,
         Center = 1,
@@ -50,12 +50,12 @@ public:
     virtual void close() override;
     virtual void close() override;
 
 
 protected:
 protected:
-    explicit Dialog(Window* parent_window, ScreenPosition screen_position = CenterWithinParent);
+    explicit Dialog(Window* parent_window, ScreenPosition = ScreenPosition::CenterWithinParent);
 
 
 private:
 private:
     OwnPtr<Core::EventLoop> m_event_loop;
     OwnPtr<Core::EventLoop> m_event_loop;
     ExecResult m_result { ExecResult::Aborted };
     ExecResult m_result { ExecResult::Aborted };
-    int m_screen_position { CenterWithinParent };
+    ScreenPosition m_screen_position { ScreenPosition::CenterWithinParent };
 };
 };
 
 
 }
 }