File indexing completed on 2024-07-07 07:14:26

0001 // SPDX-License-Identifier: LGPL-2.1-or-later
0002 //
0003 // SPDX-FileCopyrightText: 2014 Illya Kovalevskyy <illya.kovalevskyy@gmail.com>
0004 
0005 #ifndef MEASURECONFIGDIALOG_H
0006 #define MEASURECONFIGDIALOG_H
0007 
0008 #include <QDialog>
0009 #include "ui_MeasureConfigDialog.h"
0010 #include "MeasureToolPlugin.h"
0011 
0012 namespace Marble {
0013 
0014 class MeasureConfigDialog : public QDialog
0015 {
0016     Q_OBJECT
0017 
0018 public:
0019     explicit MeasureConfigDialog(QDialog *parent = nullptr);
0020     ~MeasureConfigDialog() override;
0021 
0022     bool showBearingLabel() const;
0023     bool showBearingLabelChange() const;
0024     bool showDistanceLabels() const;
0025     bool showRadius() const;
0026     bool showPerimeter() const;
0027     bool showCircumference() const;
0028     bool showPolygonArea() const;
0029     bool showCircularArea() const;
0030     MeasureToolPlugin::PaintMode paintMode() const;
0031 
0032     void setShowBearingLabel(bool);
0033     void setShowBearingLabelChange(bool);
0034     void setShowDistanceLabels(bool);
0035     void setShowRadius(bool);
0036     void setShowPerimeter(bool);
0037     void setShowCircumference(bool);
0038     void setShowPolygonArea(bool);
0039     void setShowCircularArea(bool);
0040     void setPaintMode(MeasureToolPlugin::PaintMode);
0041 
0042 private Q_SLOTS:
0043     void updateTabs();
0044 
0045 Q_SIGNALS:
0046     void applied();
0047 
0048 private:
0049     Ui::MeasureConfigDialog *ui;
0050 };
0051 
0052 } // namespace Marble
0053 
0054 #endif // MEASURECONFIGDIALOG_H