| | |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | #ifndef MEASURE_TASKMEASURE_H |
| | #define MEASURE_TASKMEASURE_H |
| |
|
| | #include <qcolumnview.h> |
| | #include <QString> |
| | #include <QComboBox> |
| | #include <QLineEdit> |
| | #include <QCheckBox> |
| |
|
| | #include <App/Application.h> |
| | #include <App/Document.h> |
| | #include <App/MeasureManager.h> |
| | #include <Gui/Document.h> |
| |
|
| | #include <Mod/Measure/App/MeasureBase.h> |
| | #include <Mod/Measure/Gui/ViewProviderMeasureBase.h> |
| |
|
| |
|
| | #include <Gui/TaskView/TaskDialog.h> |
| | #include <Gui/TaskView/TaskView.h> |
| | #include <Gui/Selection/Selection.h> |
| |
|
| | #include <fastsignals/connection.h> |
| |
|
| | namespace MeasureGui |
| | { |
| |
|
| | class TaskMeasure: public Gui::TaskView::TaskDialog, public Gui::SelectionObserver |
| | { |
| |
|
| | public: |
| | TaskMeasure(); |
| | ~TaskMeasure() override; |
| |
|
| | void modifyStandardButtons(QDialogButtonBox* box) override; |
| | QDialogButtonBox::StandardButtons getStandardButtons() const override |
| | { |
| | return QDialogButtonBox::Apply | QDialogButtonBox::Abort | QDialogButtonBox::Reset; |
| | } |
| |
|
| | void invoke(); |
| | void update(); |
| | void closeDialog(); |
| | bool apply(); |
| | bool apply(bool reset); |
| | bool reject() override; |
| | void reset(); |
| |
|
| | bool hasSelection(); |
| | void clearSelection(); |
| |
|
| | private: |
| | void setupShortcuts(QWidget* parent); |
| | void tryUpdate(); |
| | void onSelectionChanged(const Gui::SelectionChanges& msg) override; |
| | void onObjectDeleted(const App::DocumentObject& obj); |
| | void saveMeasurement(); |
| | void quitMeasurement(); |
| |
|
| | Measure::MeasureBase* _mMeasureObject = nullptr; |
| |
|
| | QLineEdit* valueResult {nullptr}; |
| | QComboBox* modeSwitch {nullptr}; |
| | QCheckBox* showDelta {nullptr}; |
| | QLabel* showDeltaLabel {nullptr}; |
| | QAction* autoSaveAction {nullptr}; |
| | QAction* newMeasurementBehaviourAction {nullptr}; |
| | QToolButton* mSettings {nullptr}; |
| |
|
| | fastsignals::connection m_deletedConnection; |
| |
|
| | void removeObject(); |
| | void onModeChanged(int index); |
| | void showDeltaChanged(int checkState); |
| | void autoSaveChanged(bool checked); |
| | void newMeasurementBehaviourChanged(bool checked); |
| | void setModeSilent(App::MeasureType* mode); |
| | App::MeasureType* getMeasureType(); |
| | void enableAnnotateButton(bool state); |
| | void createObject(const App::MeasureType* measureType); |
| | void ensureGroup(Measure::MeasureBase* measurement); |
| | void setDeltaPossible(bool possible); |
| | void initViewObject(Measure::MeasureBase* measure); |
| |
|
| | |
| | bool explicitMode = false; |
| |
|
| | |
| | bool delta = true; |
| | bool mAutoSave = false; |
| | }; |
| |
|
| | } |
| |
|
| | #endif |
| |
|