mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-09-21 02:08:12 +03:00
VisualBuilder: Convert Vector<OwnPtr> to NonnullOwnPtrVector.
This commit is contained in:
parent
31a2a6ca2d
commit
e2798d6208
Notes:
sideshowbarker
2024-07-19 13:04:21 +09:00
Author: https://github.com/awesomekling Commit: https://github.com/SerenityOS/serenity/commit/e2798d62083
@ -89,7 +89,7 @@ Direction VBWidget::grabber_at(const Point& position) const
|
||||
void VBWidget::for_each_property(Function<void(VBProperty&)> callback)
|
||||
{
|
||||
for (auto& it : m_properties) {
|
||||
callback(*it);
|
||||
callback(it);
|
||||
}
|
||||
}
|
||||
|
||||
@ -176,8 +176,8 @@ void VBWidget::setup_properties()
|
||||
void VBWidget::synchronize_properties()
|
||||
{
|
||||
for (auto& prop : m_properties) {
|
||||
if (prop->m_getter)
|
||||
prop->m_value = prop->m_getter(*gwidget());
|
||||
if (prop.m_getter)
|
||||
prop.m_value = prop.m_getter(*gwidget());
|
||||
}
|
||||
|
||||
m_property_model->update();
|
||||
@ -186,11 +186,11 @@ void VBWidget::synchronize_properties()
|
||||
VBProperty& VBWidget::property(const String& name)
|
||||
{
|
||||
for (auto& prop : m_properties) {
|
||||
if (prop->name() == name)
|
||||
return *prop;
|
||||
if (prop.name() == name)
|
||||
return prop;
|
||||
}
|
||||
m_properties.append(make<VBProperty>(*this, name, GVariant()));
|
||||
return *m_properties.last();
|
||||
return m_properties.last();
|
||||
}
|
||||
|
||||
void VBWidget::property_did_change()
|
||||
|
@ -3,8 +3,9 @@
|
||||
#include "VBWidgetType.h"
|
||||
#include <AK/Function.h>
|
||||
#include <AK/HashMap.h>
|
||||
#include <AK/RefCounted.h>
|
||||
#include <AK/NonnullOwnPtrVector.h>
|
||||
#include <AK/NonnullRefPtr.h>
|
||||
#include <AK/RefCounted.h>
|
||||
#include <AK/Weakable.h>
|
||||
#include <LibDraw/Rect.h>
|
||||
|
||||
@ -79,7 +80,7 @@ private:
|
||||
VBWidgetType m_type { VBWidgetType::None };
|
||||
VBForm& m_form;
|
||||
GWidget* m_gwidget { nullptr };
|
||||
Vector<OwnPtr<VBProperty>> m_properties;
|
||||
NonnullOwnPtrVector<VBProperty> m_properties;
|
||||
NonnullRefPtr<VBWidgetPropertyModel> m_property_model;
|
||||
Rect m_transform_origin_rect;
|
||||
};
|
||||
|
@ -42,13 +42,13 @@ GModel::ColumnMetadata VBWidgetPropertyModel::column_metadata(int column) const
|
||||
GVariant VBWidgetPropertyModel::data(const GModelIndex& index, Role role) const
|
||||
{
|
||||
if (role == Role::Custom) {
|
||||
auto& property = *m_widget.m_properties[index.row()];
|
||||
auto& property = m_widget.m_properties[index.row()];
|
||||
if (index.column() == Column::Type)
|
||||
return (int)property.value().type();
|
||||
return {};
|
||||
}
|
||||
if (role == Role::Display) {
|
||||
auto& property = *m_widget.m_properties[index.row()];
|
||||
auto& property = m_widget.m_properties[index.row()];
|
||||
switch (index.column()) {
|
||||
case Column::Name:
|
||||
return property.name();
|
||||
@ -60,7 +60,7 @@ GVariant VBWidgetPropertyModel::data(const GModelIndex& index, Role role) const
|
||||
ASSERT_NOT_REACHED();
|
||||
}
|
||||
if (role == Role::ForegroundColor) {
|
||||
auto& property = *m_widget.m_properties[index.row()];
|
||||
auto& property = m_widget.m_properties[index.row()];
|
||||
switch (index.column()) {
|
||||
case Column::Name:
|
||||
return Color::Black;
|
||||
@ -77,7 +77,7 @@ GVariant VBWidgetPropertyModel::data(const GModelIndex& index, Role role) const
|
||||
void VBWidgetPropertyModel::set_data(const GModelIndex& index, const GVariant& value)
|
||||
{
|
||||
ASSERT(index.column() == Column::Value);
|
||||
auto& property = *m_widget.m_properties[index.row()];
|
||||
auto& property = m_widget.m_properties[index.row()];
|
||||
ASSERT(!property.is_readonly());
|
||||
property.set_value(value);
|
||||
}
|
||||
@ -86,6 +86,6 @@ bool VBWidgetPropertyModel::is_editable(const GModelIndex& index) const
|
||||
{
|
||||
if (index.column() != Column::Value)
|
||||
return false;
|
||||
auto& property = *m_widget.m_properties[index.row()];
|
||||
auto& property = m_widget.m_properties[index.row()];
|
||||
return !property.is_readonly();
|
||||
}
|
||||
|
@ -125,7 +125,7 @@ static GWidget* build_gwidget(VBWidgetType type, GWidget* parent)
|
||||
}
|
||||
}
|
||||
|
||||
GWidget* VBWidgetRegistry::build_gwidget(VBWidget& widget, VBWidgetType type, GWidget* parent, Vector<OwnPtr<VBProperty>>& properties)
|
||||
GWidget* VBWidgetRegistry::build_gwidget(VBWidget& widget, VBWidgetType type, GWidget* parent, NonnullOwnPtrVector<VBProperty>& properties)
|
||||
{
|
||||
auto* gwidget = ::build_gwidget(type, parent);
|
||||
auto add_readonly_property = [&](const String& name, const GVariant& value) {
|
||||
|
@ -3,6 +3,7 @@
|
||||
#include "VBWidgetType.h"
|
||||
#include <AK/AKString.h>
|
||||
#include <AK/HashMap.h>
|
||||
#include <AK/NonnullOwnPtrVector.h>
|
||||
#include <AK/OwnPtr.h>
|
||||
|
||||
class GWidget;
|
||||
@ -18,7 +19,7 @@ public:
|
||||
callback((VBWidgetType)i);
|
||||
}
|
||||
|
||||
static GWidget* build_gwidget(VBWidget&, VBWidgetType, GWidget* parent, Vector<OwnPtr<VBProperty>>&);
|
||||
static GWidget* build_gwidget(VBWidget&, VBWidgetType, GWidget* parent, NonnullOwnPtrVector<VBProperty>&);
|
||||
};
|
||||
|
||||
String to_class_name(VBWidgetType);
|
||||
|
Loading…
Reference in New Issue
Block a user