FLImaging 6.11.25.2
DefinitionsGUIFixedView.h
1#pragma once
2#include "DefinitionsGUI.h"
3
7
9namespace FLImaging
10{
12 namespace GUI
13 {
30 {
38
47
63
72
73 EFixedViewPlacementSetSyncNumberPolicy_Count,
74 };
75
76 enum EFixedViewPropertyFlag : uint64_t
77 {
78 EFixedViewPropertyFlag_None = 0,
79 EFixedViewPropertyFlag_All = 0xffffffff,
80 EFixedViewPropertyFlag_ConstantTitle = 0x00000001,
81 EFixedViewPropertyFlag_ViewImage_PixelAccuracyX = 0x00000002,
82 EFixedViewPropertyFlag_ViewImage_PixelAccuracyY = 0x00000004,
83 EFixedViewPropertyFlag_ViewImage_PixelAccuracyUnit = 0x00000008,
84 EFixedViewPropertyFlag_ViewImage_ImageFigureBorderWidth = 0x00000010,
85 EFixedViewPropertyFlag_ViewImage_ImageFigureOpacityBorder = 0x00000020,
86 EFixedViewPropertyFlag_ViewImage_ImageFigureOpacityFill = 0x00000040,
87 EFixedViewPropertyFlag_ViewImage_ImageFigureTextOpacityBorder = 0x00000080,
88 EFixedViewPropertyFlag_ViewImage_ImageFigureTextOpacityFill = 0x00000100,
89 EFixedViewPropertyFlag_ViewImage_ImageFigureTextFont = 0x00000200,
90 EFixedViewPropertyFlag_ViewImage_ImageFigureRealSizeText = 0x00000400,
91 EFixedViewPropertyFlag_ViewImage_FigureObjectInformationTextVisibility = 0x00000800,
92 EFixedViewPropertyFlag_ViewImage_FigureObjectInformationTextRealSize = 0x00001000,
93 EFixedViewPropertyFlag_ViewImage_FigureObjectInformationTextFontSize = 0x00002000,
94 EFixedViewPropertyFlag_ViewImage_FigureObjectInformationTextOption = 0x00004000,
95 EFixedViewPropertyFlag_ViewImage_FigureObjectInformationTextNotation = 0x00008000,
96 EFixedViewPropertyFlag_ViewImage_FigureObjectInformationTextDecimalPlaces = 0x00010000,
97 EFixedViewPropertyFlag_ViewImage_FigureObjectInformationTextNotationForPixelAccuracy = 0x00020000,
98 EFixedViewPropertyFlag_ViewImage_FigureObjectInformationTextDecimalPlacesForPixelAccuracy = 0x00040000,
99 EFixedViewPropertyFlag_ViewImage_FigureObjectMagnetToImage = 0x00080000,
100 EFixedViewPropertyFlag_ViewImage_FigureObjectAngleMagnet = 0x00100000,
101
102 EFixedViewPropertyFlag_ViewDrawing_PixelAccuracyX = 0x00000002,
103 EFixedViewPropertyFlag_ViewDrawing_PixelAccuracyY = 0x00000004,
104 EFixedViewPropertyFlag_ViewDrawing_PixelAccuracyUnit = 0x00000008,
105 };
106
107 inline EFixedViewPropertyFlag operator|(EFixedViewPropertyFlag a, EFixedViewPropertyFlag b)
108 {
109 return static_cast<EFixedViewPropertyFlag>(static_cast<int64_t>(a) | static_cast<int64_t>(b));
110 }
111
112 inline EFixedViewPropertyFlag operator&(EFixedViewPropertyFlag a, EFixedViewPropertyFlag b)
113 {
114 return static_cast<EFixedViewPropertyFlag>(static_cast<int64_t>(a) & static_cast<int64_t>(b));
115 }
116
117 inline EFixedViewPropertyFlag operator~(EFixedViewPropertyFlag a)
118 {
119 return static_cast<EFixedViewPropertyFlag>(~static_cast<int64_t>(a));
120 }
121
122 inline bool operator!(EFixedViewPropertyFlag a)
123 {
124 return static_cast<bool>(!static_cast<int64_t>(a));
125 }
126
127 inline const EFixedViewPropertyFlag& operator|=(EFixedViewPropertyFlag& a, const EFixedViewPropertyFlag& b)
128 {
129 return a = a | b;
130 }
131
132 inline const EFixedViewPropertyFlag& operator&=(EFixedViewPropertyFlag& a, const EFixedViewPropertyFlag& b)
133 {
134 return a = a & b;
135 }
136
137 typedef struct sFixedViewDeclarationProperty
138 {
139 sFixedViewDeclarationProperty();
140 EFixedViewPropertyFlag eFlag = EFixedViewPropertyFlag_None;
141
142 Base::CFLString<wchar_t> strViewName;
143 Base::CFLString<wchar_t> strConstantTitle;
144
145 double f64PAX;
146 double f64PAY;
147 Foundation::ELengthUnit eLenUnit;
148
149 // IF == ImageFigure
150 int32_t i32IFBorderWidth;
151 float f32IFOpacityBorder;
152 float f32IFOpacityFill;
153 float f32IFTextOpacityBorder;
154 float f32IFTextOpacityFill;
155 bool bIFRealSizeText;
156 LOGFONT lfIFFont;
157
158 // Viof == ViewImageObjectFigure
159 bool bViofInfoTextVisibility;
160 bool bViofInfoTextRealSize;
161 float f32ViofInfoTextFontSize;
162 EFigureObjectInformationText eViofInfoTextOption;
163 bool bViofInfoTextNotation;
164 uint32_t u32ViofInfoTextDecimalPlaces;
165 bool bViofInfoTextNotationForPixelAccuracy;
166 uint32_t u32ViofInfoTextDecimalPlacesForPixelAccuracy;
167 bool bViofMagnetToImage;
168 bool bViofAngleMagnet;
169
170 }SFixedViewDeclarationProperty;
171 }
172}
Definition D2DObject.h:12
EFigureObjectInformationText
Text options representing information for a figure object.
Definition DefinitionsGUI.h:7210
EFixedViewPlacementSetSyncNumberPolicy
Defines synchronization behaviors for matching view serial numbers with preset indices in a fixed vie...
Definition DefinitionsGUIFixedView.h:30
@ EFixedViewPlacementSetSyncNumberPolicy_NoOp
Do nothing even if differences exist between view serials and preset indices.
Definition DefinitionsGUIFixedView.h:37
@ EFixedViewPlacementSetSyncNumberPolicy_RecreateMismatched
Recreates only the views whose serial numbers, indices, or view types do not match the active preset ...
Definition DefinitionsGUIFixedView.h:62
@ EFixedViewPlacementSetSyncNumberPolicy_ReindexBestEffort
Reassigns view serial numbers to best match the preset index layout without closing other views.
Definition DefinitionsGUIFixedView.h:46
@ EFixedViewPlacementSetSyncNumberPolicy_RecreateAll
Close all existing views and recreate only those defined in the active preset to align indexes.
Definition DefinitionsGUIFixedView.h:71