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

LibGUI: Convert GProgressBar to ObjectPtr

Andreas Kling преди 5 години
родител
ревизия
ceb5508fea
променени са 4 файла, в които са добавени 7 реда и са изтрити 5 реда
  1. 1 1
      Applications/FileManager/main.cpp
  2. 2 2
      Demos/WidgetGallery/main.cpp
  3. 1 1
      DevTools/VisualBuilder/VBWidgetRegistry.cpp
  4. 3 1
      Libraries/LibGUI/GProgressBar.h

+ 1 - 1
Applications/FileManager/main.cpp

@@ -68,7 +68,7 @@ int main(int argc, char** argv)
 
     auto statusbar = GStatusBar::construct(widget);
 
-    auto* progressbar = new GProgressBar(statusbar);
+    auto progressbar = GProgressBar::construct(statusbar);
     progressbar->set_caption("Generating thumbnails: ");
     progressbar->set_format(GProgressBar::Format::ValueSlashMax);
     progressbar->set_visible(false);

+ 2 - 2
Demos/WidgetGallery/main.cpp

@@ -43,8 +43,8 @@ int main(int argc, char** argv)
     auto* button2 = new GButton("GButton 2", main_widget);
     button2->set_enabled(false);
 
-    auto* progress1 = new GProgressBar(main_widget);
-    auto timer = CTimer::create(100, [progress1] {
+    auto progress1 = GProgressBar::construct(main_widget);
+    auto timer = CTimer::create(100, [&] {
         progress1->set_value(progress1->value() + 1);
         if (progress1->value() == progress1->max())
             progress1->set_value(progress1->min());

+ 1 - 1
DevTools/VisualBuilder/VBWidgetRegistry.cpp

@@ -100,7 +100,7 @@ static GWidget* build_gwidget(VBWidgetType type, GWidget* parent)
         return editor;
     }
     case VBWidgetType::GProgressBar: {
-        auto* bar = new GProgressBar(parent);
+        auto bar = GProgressBar::construct(parent);
         bar->set_format(GProgressBar::Format::NoText);
         bar->set_range(0, 100);
         bar->set_value(50);

+ 3 - 1
Libraries/LibGUI/GProgressBar.h

@@ -3,8 +3,8 @@
 #include <LibGUI/GFrame.h>
 
 class GProgressBar : public GFrame {
+    C_OBJECT(GProgressBar)
 public:
-    explicit GProgressBar(GWidget* parent);
     virtual ~GProgressBar() override;
 
     void set_range(int min, int max);
@@ -28,6 +28,8 @@ public:
     void set_format(Format format) { m_format = format; }
 
 protected:
+    explicit GProgressBar(GWidget* parent);
+
     virtual void paint_event(GPaintEvent&) override;
 
 private: