33#include <NDEVR/QTModelManager.h>
35#include <NDEVR/MouseController.h>
36#include <NDEVR/GeometryMaker.h>
50 class QTResourceListener;
54 class NDEVR_API DrawCommandsWidget :
public QWidget
58 DrawCommandsWidget(QTModelManager* manager, QWidget *parent =
nullptr);
59 ~DrawCommandsWidget();
60 void setupRibbonStep(RibbonGroup* group);
61 void setupRibbon(RibbonGroup* group,
bool add_2D,
bool add_3D);
62 void setControl(GeometryMaker::GeometryCreateMode mode);
63 void setControlEnabled(
bool enabled);
64 void removeControl(
bool keep_existing);
65 void hideEvent(QHideEvent *event)
override;
66 void showLocalRibbon(
bool show_ribbon);
67 GeometryMaker::GeometryCreateMode mode()
const;
68 void addCustomDrawWidget(GeometryMaker::GeometryCreateMode create_mode, Editor* widget);
69 void removeCustomDrawWidget(GeometryMaker::GeometryCreateMode create_mode);
71 void refreshUI(
bool force);
72 void updateSnapIcon();
73 String specIcon(GeometryMaker::GeometrySpecMode spec);
74 TranslatedString specText(GeometryMaker::GeometrySpecMode spec);
75 void updateSpecificContainer();
77 bool requestVisibleSignal(
bool visible);
78 void controlModeSet(GeometryMaker::GeometryCreateMode mode);
80 void onSelectedSlot(Buffer<UUID> ids,
bool is_selected);
81 void onDeletedSlot(UUID
id);
82 void setStep(uint04 step, GeometryMaker::GeometrySpecMode mode);
84 Resource<Model*> root_model;
87 void setupRibbonSteps(RibbonGroup* group);
88 void setupRibbon2D(uint04 index, RibbonGroup* group);
89 void setupRibbon3D(uint04 index, RibbonGroup* group);
91 Dictionary<GeometryMaker::GeometryCreateMode, QPointer<Editor>> m_custom_draw_widgets;
92 Buffer<DynamicPointer<MouseController>> m_mouse_controllers;
93 GeometryMaker m_geometry_controller;
94 QTModelManager* m_manager;
95 DesignWidget* m_design_widget;
96 Buffer<uint04> m_key_draw_action_indices;
98 Ribbon* m_draw_type_ribbon;
100 Buffer<Buffer<Button*>> m_mode_buttons;
101 Buffer<Buffer<Button*>> m_step_buttons;
102 Buffer<Buffer<Buffer<QAction*>>> m_step_actions;
103 QTResourceListener* m_enabled_listener;
106 GeometryMaker::GeometryCreateMode m_last_mode;
107 UUID m_controller_id;
108 Buffer<Button*> m_finished_buttons;
109 Buffer<Button*> m_clear_buttons;
112 bool m_measurement_mode;
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:96
Definition FontEditor.h:6