MstnTypes.h
Go to the documentation of this file.
1 /*--------------------------------------------------------------------------------------+
2 |
3 | Supplied under applicable software license agreement.
4 |
5 | Copyright (c) 2018 Bentley Systems, Incorporated. All rights reserved.
6 |
7 +---------------------------------------------------------------------------------------*/
8 #pragma once
9 
10 #undef ERROR
11 
12 #if !defined(__midl) /* During a MIDL compile, there's nothing herein that we care about. */
13 
14 #include "basedefs.h"
15 #include "basetype.h"
16 #include <DgnPlatform\DgnCore.h>
18 
19 #define BEGIN_ELEMENT_NAMESPACE namespace Element {
20 #define END_ELEMENT_NAMESPACE }
21 #define USING_NAMESPACE_BENTLEY_MSTNPLATFORM_ELEMENT using namespace Bentley::MstnPlatform::Element;
22 
23 #define BEGIN_DGNHISTORY_UI_NAMESPACE namespace UI {
24 #define END_DGNHISTORY_UI_NAMESPACE }
25 #define USING_NAMESPACE_DGNHISTORY_UI using namespace Bentley::DgnPlatform::DgnHistory::UI;
26 
27 #define BEGIN_POINTCLOUD_NAMESPACE namespace PointCloud {
28 #define END_POINTCLOUD_NAMESPACE }
29 #define USING_NAMESPACE_POINTCLOUD using namespace Bentley::MstnPlatform::PointCloud;
30 
31 #define ELEMENT_TYPEDEFS(_name_) \
32  BEGIN_BENTLEY_MSTNPLATFORM_NAMESPACE BEGIN_ELEMENT_NAMESPACE struct _name_; END_ELEMENT_NAMESPACE END_BENTLEY_MSTNPLATFORM_NAMESPACE \
33  ADD_BENTLEY_TYPEDEFS(MstnPlatform::Element,_name_)
34 
35 #define ELEMENT_ENUM(t,tEnum) \
36  BEGIN_BENTLEY_MSTNPLATFORM_NAMESPACE BEGIN_ELEMENT_NAMESPACE enum t; END_ELEMENT_NAMESPACE END_BENTLEY_MSTNPLATFORM_NAMESPACE \
37  ADD_BENTLEY_ENUM_TYPEDEF(MstnPlatform::Element,t,tEnum)
38 
39 #define BEGIN_PRINT_NAMESPACE namespace Print {
40 #define END_PRINT_NAMESPACE }
41 #define USING_NAMESPACE_BENTLEY_MSTNPLATFORM_PRINT using namespace Bentley::MstnPlatform::Print;
42 
43 #define MSTNPLATFORM_PRINT_TYPEDEFS(_name_) \
44  BEGIN_BENTLEY_MSTNPLATFORM_NAMESPACE BEGIN_PRINT_NAMESPACE struct _name_; END_PRINT_NAMESPACE END_BENTLEY_MSTNPLATFORM_NAMESPACE \
45  ADD_BENTLEY_TYPEDEFS(MstnPlatform::Print,_name_)
46 
47 typedef struct mdlDesc MdlDesc, *MdlDescP;
49 typedef struct cellLibAsyncMsg const* CellLibAsyncMsgP;
50 typedef struct display_attribute* DisplayAttributeP;
51 typedef struct exportSharedCellContext* ExportSharedCellContextP;
52 typedef struct mdlHistoryRevisionSpecifierArray* RevisionSpecifierArrayP;
53 typedef struct mlineStyleAsynch* MlineStyleAsynchP;
54 typedef struct symbChangeAsynch const* SymbChangeAsynchP;
55 typedef struct avlTree* AvlTreeP;
56 typedef struct _EmbeddedStructArray* EmbeddedStructArrayP;
57 typedef struct _EmbeddedStructArray const * EmbeddedStructArrayConstP;
58 typedef struct winIconImageData* WinIconImageDataP;
59 typedef struct genericmenu GenericMenu;
60 typedef struct genericmenuitem GenericMenuItem;
61 typedef struct genericmenubardata GenericMenuBarData;
62 typedef struct symbolSet SymbolSet;
63 typedef struct cType CType;
65 
67 GLOBAL_TYPEDEF (DialogMessage,DialogMessage)
68 GLOBAL_TYPEDEF (DialogHookHandler,DialogHookHandler)
69 GLOBAL_TYPEDEF (DialogItemMessage,DialogItemMessage)
70 GLOBAL_TYPEDEF (DialogItem,DialogItem)
71 GLOBAL_TYPEDEF (DialogItemHookHandler,DialogItemHookHandler)
72 GLOBAL_TYPEDEF (MSDialog,MSDialog)
73 GLOBAL_TYPEDEF (MSWindow,MSWindow)
74 GLOBAL_TYPEDEF (RawItemHdr,RawItemHdr)
75 GLOBAL_TYPEDEF (DgnIndexIterator, DgnIndexIterator)
76 
77 MSTNPLATFORM_TYPEDEFS (GuiView)
78 MSTNPLATFORM_TYPEDEFS (GuiTreeCell)
79 MSTNPLATFORM_TYPEDEFS (GuiTreeColumn)
80 MSTNPLATFORM_TYPEDEFS (GuiTreeModel)
81 MSTNPLATFORM_TYPEDEFS (GuiTreeNode)
82 MSTNPLATFORM_TYPEDEFS (GuiTreeNodePath)
83 MSTNPLATFORM_TYPEDEFS (GuiLayoutHelper)
84 MSTNPLATFORM_TYPEDEFS (GuiLayoutControl)
85 MSTNPLATFORM_TYPEDEFS (GuiLayoutLabel)
86 MSTNPLATFORM_TYPEDEFS (GuiLayoutProperties)
87 MSTNPLATFORM_TYPEDEFS (GuiLayoutInterpreter)
88 MSTNPLATFORM_TYPEDEFS (GuiLayoutContainerPanel)
89 MSTNPLATFORM_TYPEDEFS (GuiLayoutTabPageList)
90 MSTNPLATFORM_TYPEDEFS (GuiSplitterHandle)
91 
92 MSTNPLATFORM_TYPEDEFS (ColorIconPopupUpdateData)
93 MSTNPLATFORM_TYPEDEFS (DgnLibIterator)
94 MSTNPLATFORM_TYPEDEFS (IPrintEventHandler);
95 MSTNPLATFORM_TYPEDEFS (IBeginPrintPageParam);
96 MSTNPLATFORM_TYPEDEFS (IEndPrintPageParam);
97 MSTNPLATFORM_TYPEDEFS (IPopupMenuManager)
98 MSTNPLATFORM_TYPEDEFS (ISessionMgr)
99 MSTNPLATFORM_TYPEDEFS (IViewOverlay)
100 MSTNPLATFORM_TYPEDEFS (LevelIterator)
101 MSTNPLATFORM_TYPEDEFS (LevelLibraryRef)
102 MSTNPLATFORM_TYPEDEFS (LevelUsageInfo)
103 MSTNPLATFORM_TYPEDEFS (MSDocumentManager)
104 MSTNPLATFORM_TYPEDEFS (MSFolder)
105 MSTNPLATFORM_TYPEDEFS (MSFolderList)
106 MSTNPLATFORM_TYPEDEFS (MSValueDescr)
107 MSTNPLATFORM_TYPEDEFS (MSIconDescr)
108 MSTNPLATFORM_TYPEDEFS (MstnEventManager)
109 MSTNPLATFORM_TYPEDEFS (NamedViewManager)
110 MSTNPLATFORM_TYPEDEFS (QueuedAction)
111 MSTNPLATFORM_TYPEDEFS (UstnViewport)
112 
113 MSTNPLATFORM_PRINT_TYPEDEFS (IPlotter);
114 MSTNPLATFORM_PRINT_TYPEDEFS (IPrintEngine);
115 
116 ELEMENT_TYPEDEFS (SymbologyRemapper)
117 //ELEMENT_TYPEDEFS (IDataTreeNode)
118 ELEMENT_ENUM (ElementTemplateStatus,ElementTemplateStatusEnum)
119 
120 /*=================================================================================**/
125 typedef struct asynch_update_view
126  {
127  Int32 active; /* true if active, false if not */
128  Int32 viewnum; /* MicroStation's view num (0-7) */
129  Int32 window; /* Win32 HWND window handle */
130  Int32 phys_screen; /* physical (or logical) screen number */
131  Point3d screen_origin; /* origins for views, screen coords */
132  Point3d screen_corner; /* corners for views, screen coords */
133  Point3d update_origin; /* origin for region that needs updating */
134  Point3d update_corner; /* corner for region that needs update */
135  DPoint3d vieworg; /* view origin (from globals) */
136  DPoint3d viewdelta; /* view delta (from globals) */
137  double rotmatrix[9]; /* rotation matrix (from globals) */
138  DgnPlatform::LevelClassMask levelClassMask; /* active levels, classes */
139  DgnPlatform::ViewFlags viewFlags; /* view flags (from globals) */
140  int incremental; /* don't erase before drawing */
141  struct MSWindow* gwP; /* view window handle (valid only within ustn process) */
143 
144 /*=================================================================================**/
149 typedef struct asynch_window_event
150  {
151  Int32 windowNumber; /* window */
152  Int32 windowId; /* MicroStation's window ID */
153  Int32 windowOp; /* operation performed */
154  Int32 numCovers; /* number of covering windows */
155  Int32 virtualScreen; /* virtual screen window is on */
156  Int32 oldVirtualScreen; /* virtual screen window was on */
157  BSIRect oldGlobal; /* old global rectangle */
158  BSIRect newGlobal; /* new global rectangle */
159  BSIRect newContent; /* new content rectangle */
160  BSIRect covers[40]; /* rectangles of covering windows */
162 
163 /*=================================================================================**/
168 typedef struct guiwattributes
169  {
170  UInt32 modal:1
171  ; /* can't be sinkable, closeable */
175  UInt32 closeOnNew:1; /* once used for floating */
177  UInt32 nonVideo:1; /* used for plotting window */
178  UInt32 requestBackingStore:1; /* Try to use backing store if supported */
179 
184  UInt32 isFocusable:1; /* can accept the input focus */
185  UInt32 refusesAutoSwitch:1; /* lose focus only explicitly */
186  UInt32 noRightIcons:1; /* draw right icons */
187  UInt32 noTitleBar:1; /* skip title bar altogether */
188 
189  UInt32 dockable:1; /* Can be docked */
190  UInt32 titleBarDocked:1; /* no title bar when docked */
191  UInt32 dockedByDefault:1; /* dock if no saved position */
194  UInt32 maximizable:1; /* if this is true, allow window maximize */
195  UInt32 noFullDrag:1; /* Don't do Full Drag style resizing */
196  UInt32 requestAlternateRaster:1; /* Try alt. drawing technique if supported */
197 
198  UInt32 outputOnly:1; /* Only applies to popup windows */
199  UInt32 mustStayVisible:1; /* must remain completely visible */
200  UInt32 resizesInward:1; /* setting extent adjusts innermost corner */
201  UInt32 motionToItems:1; /* send motion events to dialogbox items */
202  UInt32 noAutoSelectIcons:1; /* Don't auto select IconCmds in dialog */
204  UInt32 noChangeScreen:1; /* Disallow the Change Screen when using 2 app windows */
205  UInt32 noItemAdjustments:1; /* Don't adjust some of the items' x,y by -2 */
206 
207  /* Second UInt32 ... */
208  UInt32 sizeGrip:1; /* draw a resize grip in the bottom of the window */
209  UInt32 noIconCmdSynch:1; /* Dialog contains IconCmds, but no synching necessary */
210  UInt32 isChild:1; /* Window is a true child window, not just owned */
211  UInt32 isViewport:1; /* viewport child window */
212  UInt32 netDockable:1; /* Dialog is dockable within the .NET docking mechanism */
214  UInt32 noTransparency:1; /* Transparency causes unpredictable results in some dialogs -- ability to disallow */
215  UInt32 focusableNoCheck:1; /* Focusable, regardless of focusable items */
216  UInt32 docked:1; /* Runtime docked status */
217  UInt32 trackingHelp:1; /* Use Tracking style help for this dialog */
218  UInt32 alwaysBorderedItems:1; /* Always draw the item borders, regardless of userpref borderless setting */
219  UInt32 transparentBorderless:1; /* Always draw transparent and borderless - currently used for popup screen menus */
220  UInt32 useAlphaBlend:1; /* Use alpha blend - valid only when transparentBorderless is also set */
221  UInt32 doubleBuffer:1; /* Use double-buffering to reduce flicker */
222  UInt32 autoUpdateTextItems:1; /* Auto-update text item state after keystrokes and a brief delay */
224  } GuiWAttributes;
225 
226 /*=================================================================================**/
231 typedef struct v5RenderInfo
232  {
237  double gmtOffset;
238  DPoint3d solarVector;
246  } V5RenderInfo;
247 
248 #define FILLSYMBOLOGY_FLAGS_DISPLAYOUTLINE 0x01
249 #define FILLSYMBOLOGY_FLAGS_ALWAYSFILLED 0x02
250 
251 /*=================================================================================**/
256 typedef struct fillSymbology
257  {
264  } FillSymbology;
265 
266 #endif /* !defined(__midl) */
The flags that control view and window attributes.
Definition: MstnTypes.h:168
MSTNPLATFORM_TYPEDEFS(IPrintEventHandler)
Definition: msinputq.h:329
MSWindow is a base class for Microstation/PowerPlatform desktop-based windows, view windows and dialo...
Definition: MSWindow.h:24
UInt32 noItemAdjustments
Definition: MstnTypes.h:205
Dialog Item Message Structures.
Definition: dlogitem.h:2014
UInt32 minimizable
Definition: MstnTypes.h:213
struct cellLibAsyncMsg const * CellLibAsyncMsgP
Definition: MstnTypes.h:49
BSIRect covers[40]
Definition: MstnTypes.h:160
struct DgnPlatform::MSElementDescr * MSElementDescrP
Definition: DgnPlatform.h:390
UInt32 requestAlternateRaster
Definition: MstnTypes.h:196
struct fillSymbology FillSymbology
The element filll symbology.
UInt32 netDockable
Definition: MstnTypes.h:212
BSIRect oldGlobal
Definition: MstnTypes.h:157
UInt32 docked
Definition: MstnTypes.h:216
UInt32 moveable
Definition: MstnTypes.h:172
UInt32 popup
Definition: MstnTypes.h:180
UInt32 motionToItems
Definition: MstnTypes.h:201
struct v5RenderInfo V5RenderInfo
The flags that control rendering information.
UInt32 closeOnNew
Definition: MstnTypes.h:175
struct symbChangeAsynch const * SymbChangeAsynchP
Definition: MstnTypes.h:54
UInt32 doubleBuffer
Definition: MstnTypes.h:221
UInt32 nonVideo
Definition: MstnTypes.h:177
Int32 windowId
Definition: MstnTypes.h:152
double gmtOffset
Definition: MstnTypes.h:237
#define GLOBAL_TYPEDEF(_sName_, _name_)
Definition: DgnPlatform.h:67
UInt32 fillColorIndex
Definition: MstnTypes.h:259
UInt32 maximizable
Definition: MstnTypes.h:194
struct genericmenubardata GenericMenuBarData
Definition: MstnTypes.h:61
UInt32 resizesInward
Definition: MstnTypes.h:200
UInt32 dockable
Definition: MstnTypes.h:189
#define ELEMENT_TYPEDEFS(_name_)
Definition: MstnTypes.h:31
double solarIntensityScale
Definition: MstnTypes.h:235
union DgnPlatform::MSElement * MSElementP
Definition: DgnPlatform.h:531
struct _EmbeddedStructArray * EmbeddedStructArrayP
Definition: MstnTypes.h:56
Int32 windowOp
Definition: MstnTypes.h:153
UInt32 transparentBorderless
Definition: MstnTypes.h:219
struct mdlHistoryRevisionSpecifierArray * RevisionSpecifierArrayP
Definition: MstnTypes.h:52
Int32 solarShadows
Definition: MstnTypes.h:244
UInt32 noTitleBar
Definition: MstnTypes.h:187
UInt32 unused
Definition: MstnTypes.h:223
UInt32 forwardMnemonics
Definition: MstnTypes.h:192
RawItemHdr structure - contains info usually specified in item resources and other item type specific...
Definition: dlogitem.h:98
UInt32 isViewport
Definition: MstnTypes.h:211
struct display_attribute * DisplayAttributeP
Definition: MstnTypes.h:50
UInt32 focusableNoCheck
Definition: MstnTypes.h:215
UInt32 noAutoSelectIcons
Definition: MstnTypes.h:202
UInt32 sinkable
Definition: MstnTypes.h:176
RgbFactor hazeColor
Definition: MstnTypes.h:243
UInt32 noWindowControlIcon
Definition: MstnTypes.h:183
Int32 oldVirtualScreen
Definition: MstnTypes.h:156
int(* PFElemOperation)(MSElementP, CallbackArgP, int, UInt32, MSElementDescrP)
Definition: MstnTypes.h:64
uint32_t UInt32
Definition: Bentley.r.h:128
double farDepthDensity
Definition: MstnTypes.h:241
Int32 solarYear
Definition: MstnTypes.h:236
UInt32 outputOnly
Definition: MstnTypes.h:198
struct winIconImageData * WinIconImageDataP
Definition: MstnTypes.h:58
UInt32 requestBackingStore
Definition: MstnTypes.h:178
UInt32 noIconCmdSynch
Definition: MstnTypes.h:209
struct guiwattributes GuiWAttributes
The flags that control view and window attributes.
UInt32 refusesAutoSwitch
Definition: MstnTypes.h:185
Int32 numCovers
Definition: MstnTypes.h:154
UInt32 userAllocated
Definition: MstnTypes.h:182
ElementTemplateStatus
Indicates status from ElementTemplate API methods.
Definition: ElementTemplateUtils.h:19
Asynch_update_view
Definition: MstnTypes.h:142
UInt32 dockedByDefault
Definition: MstnTypes.h:191
UInt32 alwaysBorderedItems
Definition: MstnTypes.h:218
UInt32 closeable
Definition: MstnTypes.h:173
Int32 virtualScreen
Definition: MstnTypes.h:155
int32_t Int32
Definition: Bentley.r.h:119
UInt32 outlineColor
Definition: MstnTypes.h:261
struct asynch_window_event Asynch_window_event
The flags that control view information.
Dialog Item Hook Handler.
Definition: dlogitem.h:2189
UInt32 outlineColorIndex
Definition: MstnTypes.h:260
BSIRect newContent
Definition: MstnTypes.h:159
struct genericmenu GenericMenu
Definition: MstnTypes.h:59
Int32 solarShadowResolution
Definition: MstnTypes.h:245
DPoint3d solarVector
Definition: MstnTypes.h:238
UInt32 noFullDrag
Definition: MstnTypes.h:195
struct _EmbeddedStructArray const * EmbeddedStructArrayConstP
Definition: MstnTypes.h:57
UInt32 thinBorders
Definition: MstnTypes.h:193
struct exportSharedCellContext * ExportSharedCellContextP
Definition: MstnTypes.h:51
DialogItem represents a dialog item in a MicroStation/PowerPlatform dialog box.
Definition: DialogItem.h:44
UInt32 sizeGrip
Definition: MstnTypes.h:208
struct mdlDesc * MdlDescP
Definition: MstnTypes.h:47
double ambientIntensityScale
Definition: MstnTypes.h:234
UInt32 useAlphaBlend
Definition: MstnTypes.h:220
struct Bentley::RgbFactor RgbFactor
Red, green, blue color data as doubles.
Definition: msgeomstructs_typedefs.h:226
Dialog Hook Handler.
Definition: dlogitem.h:936
UInt32 outlineWeight
Definition: MstnTypes.h:263
Dialog Message Structure.
Definition: dlogitem.h:884
The element filll symbology.
Definition: MstnTypes.h:256
Int32 windowNumber
Definition: MstnTypes.h:151
UInt32 outlineStyle
Definition: MstnTypes.h:262
double nearDepthDistance
Definition: MstnTypes.h:242
UInt32 noTransparency
Definition: MstnTypes.h:214
UInt32 alwaysSaveUnder
Definition: MstnTypes.h:181
struct mlineStyleAsynch * MlineStyleAsynchP
Definition: MstnTypes.h:53
#define MSTNPLATFORM_PRINT_TYPEDEFS(_name_)
Definition: MstnTypes.h:43
struct symbolSet SymbolSet
Definition: cexpr.h:245
UInt32 modal
Definition: MstnTypes.h:171
UInt32 isFocusable
Definition: MstnTypes.h:184
void * CallbackArgP
Definition: Bentley.h:235
struct genericmenuitem GenericMenuItem
Definition: MstnTypes.h:60
Definition: MicroStation.r.h:644
UInt32 noRightIcons
Definition: MstnTypes.h:186
double flashIntensityScale
Definition: MstnTypes.h:233
UInt32 isChild
Definition: MstnTypes.h:210
struct mdlDesc MdlDesc
Definition: DgnTool.h:18
UInt32 trackingHelp
Definition: MstnTypes.h:217
UInt32 sizeable
Definition: MstnTypes.h:174
#define ELEMENT_ENUM(t, tEnum)
Definition: MstnTypes.h:35
UInt32 titleBarDocked
Definition: MstnTypes.h:190
UInt32 noBorders
Definition: MstnTypes.h:203
The flags that control view information.
Definition: MstnTypes.h:149
UInt32 mustStayVisible
Definition: MstnTypes.h:199
MSDialog is the base class for Microstation/PowerPlatform desktop-based dialog boxes and view windows...
Definition: MSDialog.h:22
UInt32 noChangeScreen
Definition: MstnTypes.h:204
double shadowTolerance
Definition: MstnTypes.h:239
The flags that control rendering information.
Definition: MstnTypes.h:231
UInt32 autoUpdateTextItems
Definition: MstnTypes.h:222
Describes a data type for the C-expression handling functions.
Definition: cexpr.h:134
double nearDepthDensity
Definition: MstnTypes.h:240
UInt32 flags
Definition: MstnTypes.h:258
BSIRect newGlobal
Definition: MstnTypes.h:158
struct avlTree * AvlTreeP
Definition: MstnTypes.h:55

Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.