Преглед на файлове

LibGUI: Use calculated_preferred_size in SeparatorWidget

FrHun преди 2 години
родител
ревизия
b6d45f9c1f
променени са 2 файла, в които са добавени 9 реда и са изтрити 4 реда
  1. 8 4
      Userland/Libraries/LibGUI/SeparatorWidget.cpp
  2. 1 0
      Userland/Libraries/LibGUI/SeparatorWidget.h

+ 8 - 4
Userland/Libraries/LibGUI/SeparatorWidget.cpp

@@ -17,10 +17,7 @@ namespace GUI {
 SeparatorWidget::SeparatorWidget(Gfx::Orientation orientation)
 SeparatorWidget::SeparatorWidget(Gfx::Orientation orientation)
     : m_orientation(orientation)
     : m_orientation(orientation)
 {
 {
-    if (m_orientation == Gfx::Orientation::Vertical)
-        set_fixed_width(8);
-    else
-        set_fixed_height(8);
+    set_preferred_size(SpecialDimension::Fit);
 }
 }
 
 
 void SeparatorWidget::paint_event(PaintEvent& event)
 void SeparatorWidget::paint_event(PaintEvent& event)
@@ -39,4 +36,11 @@ void SeparatorWidget::paint_event(PaintEvent& event)
     }
     }
 }
 }
 
 
+Optional<UISize> SeparatorWidget::calculated_preferred_size() const
+{
+    if (m_orientation == Gfx::Orientation::Vertical)
+        return UISize { 8, SpecialDimension::OpportunisticGrow };
+    return UISize { SpecialDimension::OpportunisticGrow, 8 };
+}
+
 }
 }

+ 1 - 0
Userland/Libraries/LibGUI/SeparatorWidget.h

@@ -22,6 +22,7 @@ protected:
 
 
 private:
 private:
     virtual void paint_event(PaintEvent&) override;
     virtual void paint_event(PaintEvent&) override;
+    virtual Optional<UISize> calculated_preferred_size() const override;
 
 
     const Gfx::Orientation m_orientation;
     const Gfx::Orientation m_orientation;
 };
 };