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
그래프의 차트 타입
Definition DefinitionsGUIViewGraph.h:53
@ Line
꺾은선 그래프
@ Unknown
알려지지 않음
EViewGraphMenuItem
그래프 뷰의 팝업 메뉴 아이템
Definition DefinitionsGUIViewGraph.h:311
@ ClearAllLayers
모든 레이어 정리 메뉴
@ Indicate
전체 그래프의 최대/최솟값 표시
@ EditData
선택한 데이터 값 수정
@ ShowGraph
그래프의 show/hide 상태 수정
@ ClearDisplayedValue
더블 클릭으로 띄운 값 지우기
@ ClearThenPaste
클립보드의 csv 데이터를 그래프 뷰에 붙여 넣는 메뉴. 기존에 로드 된 그래프를 닫은 후 붙여 넣기 수행
@ ZoomAxisNone
배율 조정 기본 모드
@ SwitchAxis
x축과 y축을 변경
@ RemoveMultipleGraph
여러 그래프 삭제
@ Paste
클립보드의 csv 데이터를 그래프 뷰에 Append 하며 붙여 넣는 메뉴
@ Append
불러온 파일을 현재 그래프 뷰에 추가
@ ShowLayer_Drawing
그리기 레이어 보이기 메뉴
@ ShowAllLayers
모든 레이어 보이기 메뉴
@ RemoveData
선택한 데이터 삭제
@ EditChartName
그래프 이름 변경
@ ZoomFit
화면에 그래프가 모두 들어오도록 배율 맞춤
@ Copy
그래프를 클립보드에 csv 형식으로 복사하는 메뉴
@ ToggleLogScale
로그 스케일 모드 토글 메뉴
@ Help
도움말 다이얼로그를 띄우는 메뉴
@ MagnetCrosshair
십자선이 가장 가까운 그래프 좌표에 그려지도록 설정
@ ZoomAxisHorz
배율 조정을 x 축에 대해서만 수행하는 모드
@ ClearNamedLayer
이름으로 정의된 레이어 위 도형 및 텍스트 제거 메뉴
@ ShowNamedLayer
이름으로 정의된 그리기 레이어 보이기 메뉴
@ ShowToolBar
툴바 보이기 메뉴
@ ChangeGraphOrder
그래프의 드로잉 순서 변경
@ AddDataByClick
클릭으로 데이터 값 추가
@ HideAllLayers
모든 레이어 감추기 메뉴
@ ChangeType_ScatterChart
점 그래프로 변환
@ ChangeType_BarChart
막대 그래프로 변환
@ SetLogBase
로그 밑 설정 메뉴
@ LayerProperties
레이어 속성 다이얼로그를 띄우는 메뉴
@ EditAxisLabel
축의 이름을 변경
@ ClearLayer
레이어 위 도형 및 텍스트 제거 메뉴
@ ShowMultipleGraph
여러 그래프의 show/hide 상태 수정
@ SetOpacityOfLegend
그래프 뷰의 레전드에 대한 불투명도 설정
@ ChangeType_LineGraph
꺾은선 그래프로 변환
@ ViewSettings
그래프 뷰 설정
@ ZoomAxisVert
배율 조정을 y 축에 대해서만 수행하는 모드
EViewGraphExtrema
그래프 뷰의 최대/최소 값
Definition DefinitionsGUIViewGraph.h:242
@ None
값을 선택하지 않음
EViewGraphLoadOption
그래프 뷰의 불러오기 옵션
Definition DefinitionsGUIViewGraph.h:94
@ OpenDialog
열기 다이얼로그
EGUIViewGraphHitArea
그래프 뷰 위에서의 마우스의 위치
Definition DefinitionsGUIViewGraph.h:1146
EAvailableViewGraphContextMenu
그래프 뷰에 대해 가능한 컨텍스트 메뉴
Definition DefinitionsGUIViewGraph.h:752
@ EditData
선택한 데이터 값 수정
@ ShowGraph
그래프의 show/hide 상태 수정
@ ClearDisplayedValue
더블 클릭으로 띄운 값 지우기
@ ClearThenPaste
클립보드의 csv 데이터를 그래프 뷰에 붙여 넣는 메뉴. 기존에 로드 된 그래프를 닫은 후 붙여 넣기 수행
@ SetRange
그래프 뷰의 표시 범위 지정
@ Paste
클립보드의 csv 데이터를 그래프 뷰에 Append 하며 붙여 넣는 메뉴
@ Append
불러온 파일을 현재 그래프 뷰에 추가
@ Copy
그래프를 클립보드에 csv 형식으로 복사하는 메뉴
@ ToggleLogScale
로그 스케일 토글 모드
@ Help
도움말 다이얼로그를 띄우는 메뉴
@ MagnetCrosshair
십자선이 가장 가까운 그래프 좌표에 그려지도록 설정
@ ZoomAxisHorz
배율 조정을 x 축에 대해서만 수행하는 모드
@ IndicateMinMax
그래프의 최대/최솟값 표시
@ ChangeGraphOrder
그래프의 드로잉 순서 변경
@ AddDataByClick
클릭으로 데이터 값 추가
@ LayerProperties
레이어 속성 다이얼로그를 띄우는 메뉴
@ SetOpacityOfLegend
그래프 뷰의 레전드에 대한 불투명도 설정
@ ZoomAxisVert
배율 조정을 y 축에 대해서만 수행하는 모드
EGraphType
그래프 타입
Definition DefinitionsGUIViewGraph.h:28
EViewGraphIndicateType
표시 유형
Definition DefinitionsGUIViewGraph.h:155
@ Arrow
해당 값 위치에 화살표를 표시
@ Line
해당 값 위치에 선을 표시
@ Name
그래프의 이름을 표시