FLImaging 6.5.8.1
DefinitionsGUIViewGraph.h
1#pragma once
2
14namespace FLImagingCLR
15{
19 namespace GUI
20 {
27 public enum class EGraphType
28 {
35 Chart = 1,
36
44 };
45
52 public enum class EChartType
53 {
60 Unknown,
61
68 Bar,
69
76 Line,
77
84 Scatter,
85 };
86
93 public enum class EViewGraphLoadOption
94 {
101 Default = 0x00000000,
102
109 Load = 0x00000001,
110
117 Append = 0x00000002,
118
125 OpenDialog = 0x00100000,
126 };
127
129 {
130 return static_cast<EViewGraphLoadOption>(static_cast<int32_t>(a) | static_cast<int32_t>(b));
131 }
132
134 {
135 return static_cast<EViewGraphLoadOption>(static_cast<int32_t>(a) & static_cast<int32_t>(b));
136 }
137
139 {
140 return static_cast<EViewGraphLoadOption>(~static_cast<int32_t>(a));
141 }
142
143 inline bool operator!(EViewGraphLoadOption a)
144 {
145 return static_cast<bool>(!static_cast<int32_t>(a));
146 }
147
154 public enum class EViewGraphIndicateType
155 {
162 None = 0x00000000,
163
170 Line = 0x00000001,
171
178 Value = 0x00000002,
179
186 Name = 0x00000004,
187
194 Arrow = 0x00000008,
195
202 All = 0x0000000f,
203 };
204
206 {
207 return static_cast<EViewGraphIndicateType>(static_cast<int32_t>(a) | static_cast<int32_t>(b));
208 }
209
211 {
212 return static_cast<EViewGraphIndicateType>(static_cast<int32_t>(a) & static_cast<int32_t>(b));
213 }
214
216 {
217 return static_cast<EViewGraphIndicateType>(~static_cast<int32_t>(a));
218 }
219
220 inline bool operator!(EViewGraphIndicateType a)
221 {
222 return static_cast<bool>(!static_cast<int32_t>(a));
223 }
224
225 inline const EViewGraphIndicateType& operator|=(EViewGraphIndicateType& a, const EViewGraphIndicateType& b)
226 {
227 return a = a | b;
228 }
229
230 inline const EViewGraphIndicateType& operator&=(EViewGraphIndicateType& a, const EViewGraphIndicateType& b)
231 {
232 return a = a & b;
233 }
234
241 public enum class EViewGraphExtrema
242 {
249 None = 0x00000000,
250
257 MinX = 0x00000001,
258
265 MaxX = 0x00000002,
266
273 MinY = 0x00000004,
274
281 MaxY = 0x00000008,
282 };
283
285 {
286 return static_cast<EViewGraphExtrema>(static_cast<int32_t>(a) | static_cast<int32_t>(b));
287 }
288
290 {
291 return static_cast<EViewGraphExtrema>(static_cast<int32_t>(a) & static_cast<int32_t>(b));
292 }
293
294 inline EViewGraphExtrema operator~(EViewGraphExtrema a)
295 {
296 return static_cast<EViewGraphExtrema>(~static_cast<int32_t>(a));
297 }
298
299 inline bool operator!(EViewGraphExtrema a)
300 {
301 return static_cast<bool>(!static_cast<int32_t>(a));
302 }
303
310 public enum class EViewGraphMenuItem
311 {
318 None = 300,
319
326 Load,
327
334 Append,
335
342 Save,
343
350 Close,
351
358 Clear,
359
366 Copy,
367
375
382 Paste,
383
391
399
407
415
423
431
439
447
454 Help,
455
463
471
479
487
495
503
511
519
526 ZoomIn,
527
534 ZoomOut,
535
542 ZoomFit,
543
550 Panning,
551
559
567
575
583
591
599
607
614 AddData,
615
623
631
638 ShowGraph,
639
646 Indicate = ShowGraph + 100,
647
655
663
670 RemoveData = RemoveGraph + 100,
671
678 EditData,
679
687
695
703
711
719
727
735
743 };
744
751 public enum class EAvailableViewGraphContextMenu : uint64_t
752 {
759 None = 0x00000000,
760
767 All = 0xffffffffffffffff,
768
775 Load = 0x00000001,
776
783 Append = 0x00000002,
784
791 Save = 0x00000004,
792
799 Close = 0x00000008,
800
807 Clear = 0x00000010,
808
815 Copy = 0x00000020,
816
823 ClearThenPaste = 0x00000040,
824
831 Paste = 0x00000080,
832
839 ToggleLogScale = 0x00000100,
840
847 ClearDisplayedValue = 0x00000400,
848
855 ChangeChartType = 0x00000800,
856
863 ShowToolBar = 0x00004000,
864
871 Zoom = 0x00008000,
872
879 ViewSettings = 0x00010000,
880
887 Help = 0x00020000,
888
895 ChangeColor = 0x00040000,
896
903 EditChartName = 0x00080000,
904
911 ShowCrosshair = 0x00100000,
912
919 ShowLegend = 0x00200000,
920
927 MagnetCrosshair = 0x00400000,
928
935 ChangeGraphOrder = 0x00800000,
936
943 GetTrendline = 0x01000000,
944
951 ZoomAxisNone = 0x02000000,
952
959 ZoomAxisHorz = 0x04000000,
960
967 ZoomAxisVert = 0x08000000,
968
975 EditAxisLabel = 0x10000000,
976
983 SwitchAxis = 0x20000000,
984
991 EditExpression = 0x40000000,
992
999 AddExpression = 0x80000000,
1000
1007 AddData = 0x100000000,
1008
1015 AddDataByClick = 0x200000000,
1016
1023 ShowGraph = 0x800000000,
1024
1031 RemoveGraph = 0x2000000000,
1032
1039 RemoveData = 0x4000000000,
1040
1047 EditData = 0x8000000000,
1048
1055 Panning = 0x10000000000,
1056
1063 IndicateMinMax = 0x20000000000,
1064
1071 SetRange = 0x40000000000,
1072
1079 SetOpacityOfLegend = 0x80000000000,
1080
1088 ShowLayers = 0x100000000000,
1089
1097 LayerProperties = 0x200000000000,
1098
1106 ClearLayers = 0x400000000000,
1107 };
1108
1110 {
1111 return static_cast<EAvailableViewGraphContextMenu>(static_cast<int64_t>(a) | static_cast<int64_t>(b));
1112 }
1113
1115 {
1116 return static_cast<EAvailableViewGraphContextMenu>(static_cast<int64_t>(a) & static_cast<int64_t>(b));
1117 }
1118
1120 {
1121 return a = a | b;
1122 }
1123
1125 {
1126 return a = a & b;
1127 }
1128
1130 {
1131 return static_cast<EAvailableViewGraphContextMenu>(~static_cast<int64_t>(a));
1132 }
1133
1134 inline bool operator!(EAvailableViewGraphContextMenu a)
1135 {
1136 return static_cast<bool>(!static_cast<int64_t>(a));
1137 }
1138
1145 public enum class EGUIViewGraphHitArea
1146 {
1153 None = 0x000000,
1154
1161 Graph = 0x000001,
1162
1169 Legend = 0x000002,
1170
1177 AxisX = 0x000004,
1178
1185 AxisY = 0x000008,
1186 };
1187
1189 {
1190 return static_cast<EGUIViewGraphHitArea>(static_cast<int32_t>(a) | static_cast<int32_t>(b));
1191 }
1192
1194 {
1195 return static_cast<EGUIViewGraphHitArea>(static_cast<int32_t>(a) & static_cast<int32_t>(b));
1196 }
1197
1198 inline EGUIViewGraphHitArea operator~(EGUIViewGraphHitArea a)
1199 {
1200 return static_cast<EGUIViewGraphHitArea>(~static_cast<int32_t>(a));
1201 }
1202
1203 inline bool operator!(EGUIViewGraphHitArea a)
1204 {
1205 return static_cast<bool>(!static_cast<int32_t>(a));
1206 }
1207 }
1208}
EChartType
Chart type of graph.
Definition DefinitionsGUIViewGraph.h:53
EViewGraphMenuItem
ViewGraph Menu Item.
Definition DefinitionsGUIViewGraph.h:311
@ ClearAllLayers
Clear drawings of all the layers.
@ Indicate
Show the maximum/maximum value of the graph.
@ ClearDisplayedValue
Clear double-clicked values.
@ ClearThenPaste
Paste csv data from clipboard into graph view. Close and paste existing loaded graph.
@ ZoomAxisNone
Default zoom axis mode.
@ RemoveMultipleGraph
Remove multiple graph.
@ Paste
Csv data from clipboard is appended and pasted into graph view.
@ ShowLayer_Drawing
Show drawing layer.
@ Copy
Copy graphs to clipboard in csv format.
@ ToggleLogScale
Log scale mode toggle menu.
@ Help
Display the help dialog.
@ MagnetCrosshair
Set crosshairs to be drawn in the nearest graph coordinates.
@ ZoomAxisHorz
Only horizontal zoom axis mode.
@ ClearNamedLayer
Clear drawings on named layer.
@ ShowNamedLayer
Show drawing layer by name.
@ ChangeGraphOrder
Change the drawing order of the graph.
@ ChangeType_ScatterChart
Change to scatter graph.
@ ChangeType_BarChart
Change to bar graph.
@ SetLogBase
Log base setting menu.
@ LayerProperties
Show layer properties pane dialog.
@ ClearLayer
Clear drawings on selected layer.
@ ShowMultipleGraph
Show multiple graph.
@ SetOpacityOfLegend
Set opacity of legend.
@ ChangeType_LineGraph
Change to line graph.
@ ZoomAxisVert
Only vertical zoom axis mode.
EViewGraphExtrema
Extrema of Graph View.
Definition DefinitionsGUIViewGraph.h:242
@ None
Do not select a value.
EViewGraphLoadOption
Load Options for Graph View.
Definition DefinitionsGUIViewGraph.h:94
EGUIViewGraphHitArea
Hit area.
Definition DefinitionsGUIViewGraph.h:1146
EAvailableViewGraphContextMenu
Available context menu for graph view.
Definition DefinitionsGUIViewGraph.h:752
@ ClearDisplayedValue
Clear double-clicked values.
@ ClearThenPaste
Paste csv data from clipboard into graph view. Close and paste existing loaded graph.
@ Paste
Csv data from clipboard is appended and pasted into graph view.
@ Copy
Copy graphs to clipboard in csv format.
@ MagnetCrosshair
Set crosshairs to be drawn in the nearest graph coordinates.
@ ZoomAxisHorz
Only horizontal zoom axis mode.
@ IndicateMinMax
Show the maximum/maximum value of the graph.
@ ChangeGraphOrder
Change the drawing order of the graph.
@ LayerProperties
Show layer properties pane dialog.
@ ZoomAxisVert
Only vertical zoom axis mode.
EGraphType
Graph Type.
Definition DefinitionsGUIViewGraph.h:28
EViewGraphIndicateType
Indicate type.
Definition DefinitionsGUIViewGraph.h:155
@ Arrow
Display a arrow at the corresponding value location.
@ Line
Display a line at the corresponding value location.
@ Name
Display the name of the graph.
@ Value
Display the corresponding value.