Blender V5.0
MOD_ui_common.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#pragma once
10
11#include <optional>
12
13#include "BLI_string_ref.hh"
14
15/* so modifier types match their defines */
16#include "MOD_modifiertypes.hh"
17
19
20struct ARegionType;
21struct Panel;
22struct PanelType;
23struct PointerRNA;
24struct bContext;
25struct uiLayout;
26
27using PanelDrawFn = void (*)(const bContext *, Panel *);
28
32void modifier_vgroup_ui(uiLayout *layout,
34 PointerRNA *ob_ptr,
35 blender::StringRefNull vgroup_prop,
36 std::optional<blender::StringRefNull> invert_vgroup_prop,
37 std::optional<blender::StringRefNull> text);
38
41
46
48
53
61 const char *name,
62 const char *label,
63 PanelDrawFn draw_header,
64 PanelDrawFn draw,
PanelType * modifier_subpanel_register(ARegionType *region_type, const char *name, const char *label, PanelDrawFn draw_header, PanelDrawFn draw, PanelType *parent)
void modifier_grease_pencil_curve_header_draw(const bContext *, Panel *panel)
void modifier_vgroup_ui(uiLayout *layout, PointerRNA *ptr, PointerRNA *ob_ptr, blender::StringRefNull vgroup_prop, std::optional< blender::StringRefNull > invert_vgroup_prop, std::optional< blender::StringRefNull > text)
void modifier_grease_pencil_curve_panel_draw(const bContext *, Panel *panel)
PanelType * modifier_panel_register(ARegionType *region_type, ModifierType type, PanelDrawFn draw)
PointerRNA * modifier_panel_get_property_pointers(Panel *panel, PointerRNA *r_ob_ptr)
void modifier_error_message_draw(uiLayout *layout, PointerRNA *ptr)
void(*)(const bContext *, Panel *) PanelDrawFn
const char * name
blender::ui::ItemType type() const
uiLayout * parent() const
PanelLayout panel(const bContext *C, blender::StringRef idname, bool default_closed)
void label(blender::StringRef name, int icon)
PointerRNA * ptr
Definition wm_files.cc:4238