AxisSettings.h
1 //##################################################################################################
2 //
3 // Ceetron Desktop Components
4 // Component: Plot2d
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2016, Ceetron AS
8 // This is UNPUBLISHED PROPRIETARY SOURCE CODE of Ceetron AS. The contents of this file may
9 // not be disclosed to third parties, copied or duplicated in any form, in whole or in part,
10 // without the prior written permission of Ceetron AS.
11 //##################################################################################################
12 
13 #pragma once
14 
15 #include "CeePlot2d/Base.h"
16 
17 #include "CeeCore/Color3f.h"
18 #include "CeeCore/Str.h"
19 
20 #include "CeeVisualization/Font.h"
21 
22 namespace cee {
23 namespace plt {
24 
25 //==================================================================================================
26 //
27 //
28 //
29 //==================================================================================================
30 class CEE_PLT_EXPORT AxisSettings
31 {
32 public:
33  virtual ~AxisSettings();
34 
35  Color3f axisColor() const;
36  void setAxisColor(const Color3f& color);
37 
38  Str xAxisTitle() const;
39  void setXAxisTitle(const Str& title);
40 
41  Str yAxisTitle() const;
42  void setYAxisTitle(const Str& title);
43 
44  bool drawGridLines() const;
45  void setDrawGridLines(bool drawGridLines);
46 
47  bool showRangeInTitle() const;
48  void setShowRangeInTitle(bool show);
49 
50  Color3f gridLinesColor() const;
51  void setGridLinesColor(const Color3f& color);
52 
53  bool useAutoRange() const;
54  void setUseAutoRange(bool autoRange);
55 
56  double xAxisRangeMinimum() const;
57  double xAxisRangeMaximum() const;
58  void setXAxisRange(double min, double max);
59 
60  double yAxisRangeMinimum() const;
61  double yAxisRangeMaximum() const;
62  void setYAxisRange(double min, double max);
63 
64  void setYAxisUseLogarithmicScale(bool useLog);
65  bool yAxisUseLogarithmicScale() const;
66  void setXAxisUseLogarithmicScale(bool useLog);
67  bool xAxisUseLogarithmicScale() const;
68 
69  void forceRangeUpdate();
70 
71 private:
72  AxisSettings();
73 
74 private:
75  CEE_PRIVATE_F(OverlayPlot);
76  CEE_PRIVATE_IMPL(AxisSettings);
77  CEE_DISALLOW_COPY_AND_ASSIGN(AxisSettings);
78 };
79 
80 } // namespace plt
81 } // namespace cee
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppComponent.cpp:26
A general unicode based string class.
Definition: Str.h:28
Class for storing an RGB color triplet.
Definition: Color3f.h:25
Overlay item with basic 2D plotting.
Definition: OverlayPlot.h:38
Axis settings for an OverlayPlot object.
Definition: AxisSettings.h:30