00001 #ifndef AXIS_LIMITS_DIALOG_H 00002 #define AXIS_LIMITS_DIALOG_H 00003 00004 #include <QDialog> 00005 #include <QRadialGradient> 00006 #include "PlotJuggler/plotdata.h" 00007 00008 namespace Ui { 00009 class AxisLimitsDialog; 00010 } 00011 00012 class AxisLimitsDialog : public QDialog 00013 { 00014 Q_OBJECT 00015 00016 public: 00017 explicit AxisLimitsDialog(QWidget *parent = 0); 00018 ~AxisLimitsDialog(); 00019 00020 void setDefaultRange(PlotData::RangeValue range); 00021 00022 void enableMin(bool enabled, double value); 00023 00024 void enableMax(bool enabled, double value); 00025 00026 bool limitsEnabled() const; 00027 00028 PlotData::RangeValue rangeY() const { return _limits; } 00029 00030 private slots: 00031 void on_checkBoxMinY_toggled(bool checked); 00032 00033 void on_checkBoxMaxY_toggled(bool checked); 00034 00035 void on_pushButtonDone_pressed(); 00036 00037 void on_pushButtonMinY_pressed(); 00038 00039 void on_pushButtonMaxY_pressed(); 00040 00041 00042 private: 00043 00044 virtual void closeEvent(QCloseEvent *event) override; 00045 00046 Ui::AxisLimitsDialog *ui; 00047 00048 PlotData::RangeValue _parent_limits; 00049 00050 PlotData::RangeValue _limits; 00051 00052 }; 00053 00054 #endif // AXIS_LIMITS_DIALOG_H