mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-13 11:42:38 +03:00
3a33b8ea08
It's now possible to edit widget properties inline in the properties window. We're currently relying on the basic GVariant conversion functions to do all the "parsing" but that's not gonna be good enough.
36 lines
803 B
C++
36 lines
803 B
C++
#pragma once
|
|
|
|
#include <LibGUI/GWidget.h>
|
|
|
|
class GButton;
|
|
class GTextEditor;
|
|
|
|
class GSpinBox : public GWidget {
|
|
public:
|
|
GSpinBox(GWidget* parent = nullptr);
|
|
virtual ~GSpinBox() override;
|
|
|
|
int value() const { return m_value; }
|
|
void set_value(int);
|
|
|
|
int min() const { return m_min; }
|
|
int max() const { return m_max; }
|
|
void set_min(int min) { set_range(min, max()); }
|
|
void set_max(int max) { set_range(min(), max); }
|
|
void set_range(int min, int max);
|
|
|
|
Function<void(int value)> on_change;
|
|
|
|
protected:
|
|
virtual void resize_event(GResizeEvent&) override;
|
|
|
|
private:
|
|
GTextEditor* m_editor { nullptr };
|
|
GButton* m_increment_button { nullptr };
|
|
GButton* m_decrement_button { nullptr };
|
|
|
|
int m_min { 0 };
|
|
int m_max { 100 };
|
|
int m_value { 0 };
|
|
};
|