home *** CD-ROM | disk | FTP | other *** search
- /***************************************************************************\
-
- (c) 1994-1996, ProtoView Development Co., All rights reserved
- \***************************************************************************/
-
-
- /********************************************************************
- *
- * Source File: pvido.h
- * Module: Header file for pvido application
- *
- ********************************************************************/
-
-
- #ifndef __PVIDO__H
- #define __PVIDO__H
-
-
-
- #define rgb_BLACK RGB( 0, 0, 0)
- #define rgb_BLUE RGB( 0, 0,128)
- #define rgb_GREEN RGB( 0,128, 0)
- #define rgb_CYAN RGB( 0,128,128)
- #define rgb_RED RGB(128, 0, 0)
- #define rgb_MAGENTA RGB(128, 0,128)
- #define rgb_BROWN RGB(128,128, 0)
- #define rgb_WHITE RGB(255,255,255)
- #define rgb_GRAY RGB(192,192,192)
- #define rgb_LTBLUE RGB( 0, 0,255)
- #define rgb_LTGREEN RGB( 0,255, 0)
- #define rgb_LTCYAN RGB( 0,255,255)
- #define rgb_LTRED RGB(255, 0, 0)
- #define rgb_LTMAGENTA RGB(255, 0,255)
- #define rgb_YELLOW RGB(255,255, 0)
-
-
- // zero
- #define zero 0
-
-
-
-
-
- // copy @ pvGraphx
- typedef enum
- {
- STYLE_3D_OUTDENT = zero,
- STYLE_3D_HEAVY_OUTDENT,
- STYLE_3D_INDENT,
- STYLE_3D_HEAVY_INDENT,
- STYLE_3D_SHADOW,
- STYLE_3D_NONE
- } THREE_D_STYLE;
-
-
- typedef enum
- {
- MS_INET2 = zero,
- MS_INET3,
- NETSCAPE
- } INET_HOST;
-
-
-
- // Font Style definitions
- #define FS_BOLD 1
- #define FS_ITALIC 2
- #define FS_UNDERLINE 4
- #define FS_STRIKEOUT 8
-
-
- // IDO Styles
- //#define IDOS_LINETEXT 0x0001
- #define IDOS_NOMOVE 0x0002
- #define IDOS_NOMOVEENDPOINTS 0x0002
- #define IDOS_NORESIZE 0x0004
- #define IDOS_NOMOVEMIDPOINTS 0x0004
- #define IDOS_NODELETE 0x0008
- #define IDOS_NOEDIT 0x0010
- #define IDOS_AUTORESIZE 0x0020
- #define IDOS_NOSOURCE 0x0040 // entity not valid source for snapping a new line
- #define IDOS_TRANSPARENT 0x0080
- #define IDOS_STRETCHBITMAP 0x0100
-
-
- // property page defines
- #define PP_ENTITY_TEXT 0
- #define PP_ENTITY_COLORS 1
- #define PP_ENTITY_STYLES 2
- #define PP_ENTITY_GRAPHICS 3
- #define PP_ENTITY_INTERNET 4
- #define IDO_PPE_TEXT 0
- #define IDO_PPE_COLORS 1
- #define IDO_PPE_STYLES 2
- #define IDO_PPE_GRAPHICS 3
- #define IDO_PPE_INTERNET 4
-
- #define PP_LINE_TEXT 0
- #define PP_LINE_COLORS 1
- #define PP_LINE_STYLES 2
- #define IDO_PPR_TEXT 0
- #define IDO_PPR_COLORS 1
- #define IDO_PPR_STYLES 2
-
- #define PP_IDO_COLORS 0
- #define PP_IDO_GRID 1
- #define IDO_PPI_COLORS 0
- #define IDO_PPI_GRID 1
-
-
-
- typedef enum // Used for adding entities based on relation to current entity
- {
- RELATIVEPOS_NULL = zero,
- RELATIVEPOS_LEFT,
- RELATIVEPOS_RIGHT,
- RELATIVEPOS_UP,
- RELATIVEPOS_DOWN,
- RELATIVEPOS_UPLEFT,
- RELATIVEPOS_UPRIGHT,
- RELATIVEPOS_DOWNLEFT,
- RELATIVEPOS_DOWNRIGHT
-
- } RELATIVEPOSITION;
-
- typedef enum
- {
- OBJECTTYPE_ENTITY = zero,
- OBJECTTYPE_LINE,
- OBJECTTYPE_CONTAINER
-
- } OBJECTTYPE;
-
- typedef enum
- {
- // Simple shapes
- ENTITYSHAPE_CIRCLE = zero,
- ENTITYSHAPE_RECTANGLE,
- ENTITYSHAPE_ROUNDRECT,
- ENTITYSHAPE_OCTAGON,
-
- // Flow chart symbols
- // ENTITYSHAPE_DECISIONBLOCK,
- // ENTITYSHAPE_DOCUMENT,
- // ENTITYSHAPE_DISPLAY,
- // ENTITYSHAPE_ONLINESTORAGE,
- // ENTITYSHAPE_MANUALINPUT,
- // ENTITYSHAPE_MANUALOPERATION,
- // ENTITYSHAPE_INPUTOUTPUT,
- // ENTITYSHAPE_CONNECTOR,
- // ENTITYSHAPE_MAGNETICTAPE,
- // ENTITYSHAPE_PREPARATION,
- // ENTITYSHAPE_TERMINAL,
- // ENTITYSHAPE_OFFPAGECONNECTOR,
- // ENTITYSHAPE_SUBPROCESS,
- // ENTITYSHAPE_QUEUE
-
- } ENTITYSHAPE;
-
- // copy @ pvGraphx
- typedef enum
- {
- ARROWSTYLE_NONE = zero,
- ARROWSTYLE_STANDARD,
- ARROWSTYLE_NARROW,
- ARROWSTYLE_WIDE,
- ARROWSTYLE_SWEEPED,
- ARROWSTYLE_WHITECIRCLE,
- ARROWSTYLE_BLACKCIRCLE
- } ARROWSTYLE;
-
- typedef enum
- {
- RELPOS_FREE = zero,
- RELPOS_TOP,
- RELPOS_BOTTOM,
- RELPOS_LEFT,
- RELPOS_RIGHT,
- RELPOS_TOPLEFT,
- RELPOS_TOPRIGHT,
- RELPOS_BOTTOMLEFT,
- RELPOS_BOTTOMRIGHT
- } RELPOS;
-
- typedef enum
- {
- LINESTYLE_STRAIGHT = zero,
- LINESTYLE_90DEGREE,
- LINESTYLE_3PT,
- LINESTYLE_4PT
- } LINESTYLE;
-
- typedef enum
- {
- TEXTPOS_BOTTOM = zero,
- TEXTPOS_TOP,
- TEXTPOS_LEFT,
- TEXTPOS_RIGHT,
- TEXTPOS_CENTER
- } TEXTPOSSTYLE;
-
-
-
-
- //next 199
-
- // IDO Messages
- #define IDOM_RESET WM_USER + 101 // !
- #define IDOM_READFILE WM_USER + 102 // !
- #define IDOM_SAVEFILE WM_USER + 103 // !
- #define IDOM_RESETPALETTE WM_USER + 167 // !
- #define IDOM_READPALETTE WM_USER + 165 // !
- #define IDOM_SAVEPALETTE WM_USER + 166 // !
- #define IDOM_GETFILENAME WM_USER + 104 // !
- #define IDOM_SETFILENAME WM_USER + 188 // !
- #define IDOM_GETVERSION WM_USER + 105 // !
- #define IDOM_GETINETPATH WM_USER + 192 // !
- #define IDOM_SETINETPATH WM_USER + 193 // !
-
- #define IDOM_GETMODIFIED WM_USER + 194 // !
- #define IDOM_SETMODIFIED WM_USER + 195 // !
-
- #define IDOM_READJOBSFILE WM_USER + 106 // !
-
-
- #define IDOM_ZOOM WM_USER + 107 // !
- #define IDOM_GETZOOMVALUE WM_USER + 196 // !
- #define IDOM_PRINT WM_USER + 108 // !
-
- #define IDOM_MANAGECLASSES WM_USER + 110 // !
- #define IDOM_MANAGERULES WM_USER + 161 // !
- #define IDOM_SETUSERMENU WM_USER + 111 // !
- #define IDOM_GETUSERMENU WM_USER + 162 // !
-
- #define IDOM_PROPERTYPAGEIDO WM_USER + 112 // !
- #define IDOM_PROPERTYPAGEENTITY WM_USER + 113 // !
- #define IDOM_PROPERTYPAGELINE WM_USER + 114 // !
-
- #define IDOM_SETGRIDCOLOR WM_USER + 115 // !
- #define IDOM_SETIDOBKCOLOR WM_USER + 116 // !
- #define IDOM_GETGRIDCOLOR WM_USER + 117 // !
- #define IDOM_GETIDOBKCOLOR WM_USER + 118 // !
-
- #define IDOM_SETSHOWPRINTPAGES WM_USER + 189 // !
- #define IDOM_GETSHOWPRINTPAGES WM_USER + 190 // !
-
- #define IDOM_SETGRIDLINES WM_USER + 119 // !
- #define IDOM_ISGRIDVISIBLE WM_USER + 120 // !
- #define IDOM_SETSNAPTOGRID WM_USER + 121 // !
- #define IDOM_ISSNAPTOGRID WM_USER + 122 // !
- #define IDOM_SETPALETTEVISIBLE WM_USER + 123 // !
- #define IDOM_ISPALETTEVISIBLE WM_USER + 124 // !
- #define IDOM_SETEDITMODE WM_USER + 125 // !
- #define IDOM_GETEDITMODE WM_USER + 126 // !
- #define IDOM_SETENFORCERULES WM_USER + 127 // !
- #define IDOM_ARERULESENFORCED WM_USER + 128 // !
- #define IDOM_GETGRIDHEIGHT WM_USER + 181 // !
- #define IDOM_SETGRIDHEIGHT WM_USER + 182 // !
- #define IDOM_GETGRIDWIDTH WM_USER + 183 // !
- #define IDOM_SETGRIDWIDTH WM_USER + 184 // !
-
- #define IDOM_SETTOOLSPALETTEBUTTONTEXT WM_USER + 191 // !
-
- #define IDOM_ITERATEENTITYCLASSFIRST WM_USER + 131 // !
- #define IDOM_ITERATEENTITYCLASSNEXT WM_USER + 132 // !
- #define IDOM_ADDENTITYCLASS WM_USER + 163 // !
- #define IDOM_DELETEENTITYCLASS WM_USER + 175 // !
- #define IDOM_DOESENTITYCLASSEXIST WM_USER + 179 // !
- #define IDOM_REDEFINEFROMENTITYCLASS WM_USER + 177 // !
-
- #define IDOM_ITERATERELATIONCLASSFIRST WM_USER + 133 // !
- #define IDOM_ITERATERELATIONCLASSNEXT WM_USER + 134 // !
- #define IDOM_ADDRELATIONCLASS WM_USER + 164 // !
- #define IDOM_DELETERELATIONCLASS WM_USER + 176 // !
- #define IDOM_DOESRELATIONCLASSEXIST WM_USER + 180 // !
- #define IDOM_REDEFINEFROMRELATIONCLASS WM_USER + 178 // !
-
- #define IDOM_ITERATERULEFIRST WM_USER + 129 // !
- #define IDOM_ITERATERULENEXT WM_USER + 130 // !
- #define IDOM_ADDRULE WM_USER + 172 // !
- #define IDOM_DELETERULE WM_USER + 173 // !
- #define IDOM_DOESRULEEXIST WM_USER + 174 // !
-
- #define IDOM_ITERATEENTITYFIRST WM_USER + 135 // !
- #define IDOM_ITERATEENTITYNEXT WM_USER + 136 // !
- #define IDOM_ITERATERELATIONFIRST WM_USER + 137 // !
- #define IDOM_ITERATERELATIONNEXT WM_USER + 138 // !
-
- #define IDOM_ITERATESELENTITYFIRST WM_USER + 139 // !
- #define IDOM_ITERATESELENTITYNEXT WM_USER + 140 // !
-
-
- #define IDOM_GETNUMENTITIES WM_USER + 141 // !
- #define IDOM_GETNUMLINES WM_USER + 142 // !
- #define IDOM_GETSELENTITYCOUNT WM_USER + 143 // !
- #define IDOM_SETSELECTENTITY WM_USER + 185 // !
- #define IDOM_GETSELECTENTITY WM_USER + 186 // !
-
-
- #define IDOM_GETCURRENTENTITY WM_USER + 146 // !
- #define IDOM_SETCURRENTENTITY WM_USER + 147 // !
-
- #define IDOM_SETENTITYCOORDX WM_USER + 148 // !
- #define IDOM_SETENTITYCOORDY WM_USER + 149 // !
- #define IDOM_GETENTITYCOORDX WM_USER + 150 // !
- #define IDOM_GETENTITYCOORDY WM_USER + 151 // !
-
- #define IDOM_GETCURRENTLINE WM_USER + 159 // !
- #define IDOM_SETCURRENTLINE WM_USER + 160 // !
-
- #define IDOM_SETENTITYTEXT WM_USER + 154 // !
- #define IDOM_DOESENTITYEXIST WM_USER + 155 // !
- #define IDOM_DOESRELATIONEXIST WM_USER + 187 // !
-
-
- #define IDOM_SETPROPERTY WM_USER + 156 // !
- #define IDOM_GETPROPERTY WM_USER + 157 // !
- #define IDOM_SETINTERACTPROPERTY WM_USER + 197 // !
- #define IDOM_GETINTERACTPROPERTY WM_USER + 198 // !
- #define IDOM_SELECTOBJECT WM_USER + 158 // !
-
- #define IDOM_DRAGADDENTITY WM_USER + 170 // !
- #define IDOM_DRAGADDRELATION WM_USER + 171 // !
-
- #define IDOM_ADDENTITYFROMCLASS WM_USER + 202 // !
- #define IDO_NOTIFY_NOADDENTITY 1
- #define IDO_NOTIFY_ADDENTITY 2
-
- #define IDOM_DELETEENTITY WM_USER + 203 // !
- #define IDO_NOTIFY_NODELETEENTITY 1
- #define IDO_NOTIFY_DELETEENTITY 2
-
- #define IDOM_ADDRELATIONFROMCLASS WM_USER + 204 // !
- #define IDO_NOTIFY_NOADDRELATION 1
- #define IDO_NOTIFY_ADDRELATION 2
-
- #define IDOM_DELETERELATION WM_USER + 205 // !
- #define IDO_NOTIFY_NODELETERELATION 1
- #define IDO_NOTIFY_DELETERELATION 2
-
-
- #define IDOM_NOTIFYRESULT WM_USER + 201 // !
- #define IDOM_GETCURRENTID WM_USER + 168 // !
- #define IDOM_GETCURRENTNAME WM_USER + 169 // !
-
-
-
- // for IDOM_SAVEFILE
- #define SF_ALL 0
- #define SF_RULES_AND_CLASSES_ONLY 2
-
- // for IDOM_READFILE
- #define RF_ALL 0
- #define RF_RULES_AND_CLASSES_ONLY 1
-
- // SETUSERMENU flags
- #define IDOMENU_IDO 1
- #define IDOMENU_ENTITY 2
- #define IDOMENU_LINE 3
-
- // ZOOM flags
- #define IDO_ZOOM_IN 1
- #define IDO_ZOOM_OUT 2
- #define IDO_ZOOM_TO_FIT 4
- #define IDO_ZOOM_PERCENT 8
- // these are defined in MFC headers
- //#define ZOOM_IN 1
- //#define ZOOM_OUT 2
- //#define ZOOM_TO_FIT 4
- //#define ZOOM_PERCENT 8
-
- // for IDOM_SELECTOBJECT
- #define BY_ID 1
- #define BY_NAME 2
- #define BY_CLASSNAME 4
- #define OBJ_ENTITY 8
- #define OBJ_LINE 16
-
- // properties for InterAct
- #define PROP_IPRINTLANDSCAPE 101
-
- // properties for all items
- #define PROP_TEXT 1
- #define PROP_TEXTCOLOR 2
- #define PROP_BKCOLOR 3
- #define PROP_OBJECT_REPAINT 4 // repaint the object
- #define PROP_USERDATA 5
- #define PROP_FONT 11
- #define PROP_STYLE 13
- #define PROP_BRINGINTOVIEW 15
-
- #define PROP_LTEXT 6
- #define PROP_LTEXTCOLOR 7
- #define PROP_LBKCOLOR 8
- #define PROP_LOBJECT_REPAINT 9 // repaint the object
- #define PROP_LUSERDATA 10
- #define PROP_LFONT 12
- #define PROP_LSTYLE 14
- #define PROP_LBRINGINTOVIEW 16
-
- // props for entities alone
- #define PROP_ENTITY_SHAPE 30
- #define PROP_ENTITY_3D 31
- #define PROP_ENTITY_CONTAINER 32
- #define PROP_ENTITY_GRAPHIC 33
- #define PROP_ENTITY_RECT 34
- #define PROP_ENTITY_TEXTORIENTATION 35 // text for entity w/ graphic
- #define PROP_ENTITY_GETNUMAWAYLINES 36 // # lines pointing away from entity
- #define PROP_ENTITY_ITERATEFIRSTAWAYLINE 37 // info for line
- #define PROP_ENTITY_ITERATENEXTAWAYLINE 38 // info for line
- #define PROP_ENTITY_GETNUMHOMELINES 39 // # lines pointing to entity
- #define PROP_ENTITY_ITERATEFIRSTHOMELINE 40 // info for line
- #define PROP_ENTITY_ITERATENEXTHOMELINE 41 // info for line
- #define PROP_ENTITY_ITERATEFIRSTCONTAINED 42
- #define PROP_ENTITY_ITERATENEXTCONTAINED 43
- #define PROP_ENTITY_CONTAINEDCOUNT 44
- #define PROP_ENTITY_ADDTOCONTAINER 45
- #define PROP_ENTITY_REMOVEFROMCONTAINER 46
- #define PROP_ENTITY_BORDER 47
- #define PROP_ENTITY_INETHOST 48
- #define PROP_ENTITY_INETURL 49
- // props for lines alone
- #define PROP_LINE_STYLE 70
- #define PROP_LINE_SRC_ARROW_STYLE 71
- #define PROP_LINE_DST_ARROW_STYLE 72
- #define PROP_LINE_THICKNESS 73
- #define PROP_LINE_SRCENTITY 74
- #define PROP_LINE_DSTENTITY 75
-
-
-
-
- // IDO return values
- #define IDOR_SUCCESS 1
-
- #define IDOR_FAILURE -2
- #define IDOR_FILE_NOT_FOUND -3
- #define IDOR_FILE_NOT_VALID -4
- #define IDOR_FILE_VERSION_NOT_VALID -5
- #define IDOR_OBJECT_NOT_FOUND -6
- #define IDOR_INVALID_PARAMETER -7
- #define IDOR_CLASS_NOT_FOUND -8
- #define IDOR_DUPLICATE_USER_ID -10
- #define IDOR_DUPLICATE_USER_NAME -11
- #define IDOR_SRC_DEST_SAME -12
- #define IDOR_INVALID_OBJECT -13
-
-
- // IDO Notifications
- #define IDON_SELCHANGE 0x06
- #define IDON_SETFOCUS 0x07
- #define IDON_KILLFOCUS 0x08
-
- // these are message-based notifications
- #define NOTIFYBASE 300
-
- #define IDOM_NOTIFY_BEFOREDIAGRAMSAVED WM_USER + NOTIFYBASE +23 //!
- #define IDOM_NOTIFY_DIAGRAMSAVED WM_USER + NOTIFYBASE +24 //!
- #define IDOM_NOTIFY_BEFOREDIAGRAMLOADED WM_USER + NOTIFYBASE +25 //!
- #define IDOM_NOTIFY_DIAGRAMLOADED WM_USER + NOTIFYBASE +26 //!
- #define IDOM_NOTIFY_BEFOREDIAGRAMRESET WM_USER + NOTIFYBASE +27 //!
- #define IDOM_NOTIFY_DIAGRAMRESET WM_USER + NOTIFYBASE +28 //!
- #define IDOM_N_BEFOREDIAGRAMSAVED IDOM_NOTIFY_BEFOREDIAGRAMSAVED
- #define IDOM_N_DIAGRAMSAVED IDOM_NOTIFY_DIAGRAMSAVED
- #define IDOM_N_BEFOREDIAGRAMLOADED IDOM_NOTIFY_BEFOREDIAGRAMLOADED
- #define IDOM_N_DIAGRAMLOADED IDOM_NOTIFY_DIAGRAMLOADED
- #define IDOM_N_BEFOREDIAGRAMRESET IDOM_NOTIFY_BEFOREDIAGRAMRESET
- #define IDOM_N_DIAGRAMRESET IDOM_NOTIFY_DIAGRAMRESET
-
-
- #define IDOM_NOTIFY_BEFOREPALETTESAVED WM_USER + NOTIFYBASE +29 //!
- #define IDOM_NOTIFY_PALETTESAVED WM_USER + NOTIFYBASE +30 //!
- #define IDOM_NOTIFY_BEFOREPALETTELOADED WM_USER + NOTIFYBASE +31 //!
- #define IDOM_NOTIFY_PALETTELOADED WM_USER + NOTIFYBASE +32 //!
- #define IDOM_NOTIFY_BEFOREPALETTERESET WM_USER + NOTIFYBASE +33 //!
- #define IDOM_NOTIFY_PALETTERESET WM_USER + NOTIFYBASE +34 //!
- #define IDOM_N_BEFOREPALETTESAVED IDOM_NOTIFY_BEFOREPALETTESAVED
- #define IDOM_N_PALETTESAVED IDOM_NOTIFY_PALETTESAVED
- #define IDOM_N_BEFOREPALETTELOADED IDOM_NOTIFY_BEFOREPALETTELOADED
- #define IDOM_N_PALETTELOADED IDOM_NOTIFY_PALETTELOADED
- #define IDOM_N_BEFOREPALETTERESET IDOM_NOTIFY_BEFOREPALETTERESET
- #define IDOM_N_PALETTERESET IDOM_NOTIFY_PALETTERESET
-
-
- #define IDOM_NOTIFY_BEFOREDISPLAYOPTIONSMENU WM_USER + NOTIFYBASE +35 //!
- #define IDOM_NOTIFY_BEFOREDISPLAYHELP WM_USER + NOTIFYBASE +36 //!
- #define IDOM_NOTIFY_BEFOREDISPLAYMANAGERULES WM_USER + NOTIFYBASE +37 //!
- #define IDOM_NOTIFY_BEFOREDISPLAYMANAGECLASSES WM_USER + NOTIFYBASE +38 //!
- #define IDOM_NOTIFY_DISPLAYMANAGERULESBUTTON WM_USER + NOTIFYBASE +39
- #define IDOM_NOTIFY_BEFOREDISPLAYTOOLSPALETTE WM_USER + NOTIFYBASE +40 //!
- #define IDOM_NOTIFY_BEFOREHIDETOOLSPALETTE WM_USER + NOTIFYBASE +41 //!
- #define IDOM_N_BEFOREDISPLAYOPTIONSMENU IDOM_NOTIFY_BEFOREDISPLAYOPTIONSMENU
- #define IDOM_N_BEFOREDISPLAYHELP IDOM_NOTIFY_BEFOREDISPLAYHELP
- #define IDOM_N_BEFOREDISPLAYMANAGERULES IDOM_NOTIFY_BEFOREDISPLAYMANAGERULES
- #define IDOM_N_BEFOREDISPLAYMANAGECLASSES IDOM_NOTIFY_BEFOREDISPLAYMANAGECLASSES
- #define IDOM_N_DISPLAYMANAGERULESBUTTON IDOM_NOTIFY_DISPLAYMANAGERULESBUTTON
- #define IDOM_N_BEFOREDISPLAYTOOLSPALETTE IDOM_NOTIFY_BEFOREDISPLAYTOOLSPALETTE
- #define IDOM_N_BEFOREHIDETOOLSPALETTE IDOM_NOTIFY_BEFOREHIDETOOLSPALETTE
-
-
- #define IDOM_NOTIFY_INVALIDEDITEVENT WM_USER + NOTIFYBASE +3
- #define IDOM_N_INVALIDEDITEVENT IDOM_NOTIFY_INVALIDEDITEVENT
-
- #define IDOM_NOTIFY_ENTITYADDREQUEST WM_USER + NOTIFYBASE +4
- #define IDOM_NOTIFY_ENTITYADDED WM_USER + NOTIFYBASE +5
- #define IDOM_N_ENTITYADDREQUEST IDOM_NOTIFY_ENTITYADDREQUEST
- #define IDOM_N_ENTITYADDED IDOM_NOTIFY_ENTITYADDED
-
- #define IDOM_NOTIFY_ENTITYDELETEREQUEST WM_USER + NOTIFYBASE +6
- #define IDOM_NOTIFY_ENTITYDELETED WM_USER + NOTIFYBASE +7
- #define IDOM_N_ENTITYDELETEREQUEST IDOM_NOTIFY_ENTITYDELETEREQUEST
- #define IDOM_N_ENTITYDELETED IDOM_NOTIFY_ENTITYDELETED
-
- #define IDOM_NOTIFY_ENTITYBEFOREMOVE WM_USER + NOTIFYBASE +42
- #define IDOM_NOTIFY_ENTITYMOVED WM_USER + NOTIFYBASE +43
- #define IDOM_N_ENTITYBEFOREMOVE IDOM_NOTIFY_ENTITYBEFOREMOVE
- #define IDOM_N_ENTITYMOVED IDOM_NOTIFY_ENTITYMOVED
-
-
- #define IDOM_NOTIFY_RELATIONADDREQUEST WM_USER + NOTIFYBASE +9
- #define IDOM_NOTIFY_RELATIONADDED WM_USER + NOTIFYBASE +10
- #define IDOM_N_RELATIONADDREQUEST IDOM_NOTIFY_RELATIONADDREQUEST
- #define IDOM_N_RELATIONADDED IDOM_NOTIFY_RELATIONADDED
-
- #define IDOM_NOTIFY_RELATIONDELETEREQUEST WM_USER + NOTIFYBASE +11
- #define IDOM_NOTIFY_RELATIONDELETED WM_USER + NOTIFYBASE +12
- #define IDOM_N_RELATIONDELETEREQUEST IDOM_NOTIFY_RELATIONDELETEREQUEST
- #define IDOM_N_RELATIONDELETED IDOM_NOTIFY_RELATIONDELETED
-
-
- #define IDOM_NOTIFY_CLICK_ENTITY WM_USER + NOTIFYBASE +20 //!
- #define IDOM_NOTIFY_CLICK_RELATION WM_USER + NOTIFYBASE +21 //!
- #define IDOM_NOTIFY_CLICK_IDO WM_USER + NOTIFYBASE +22 //!
- #define IDOM_NOTIFY_CLICK_INTERACT WM_USER + NOTIFYBASE +22 //!
- #define IDOM_N_CLICK_ENTITY IDOM_NOTIFY_CLICK_ENTITY
- #define IDOM_N_CLICK_RELATION IDOM_NOTIFY_CLICK_RELATION
- #define IDOM_N_CLICK_IDO IDOM_NOTIFY_CLICK_INTERACT
- #define IDOM_N_CLICK_INTERACT IDOM_NOTIFY_CLICK_INTERACT
-
- #define NOTIFY_CLICK_LEFT 1 // passed in lParam
- #define NOTIFY_CLICK_RIGHT 2
- #define NOTIFY_CLICK_LEFT_DBL 3
- #define NOTIFY_CLICK_RIGHT_DBL 4
-
-
- #ifndef _RC_INVOKED
-
- #pragma pack(1)
- typedef struct
- {
- char szClassName[99+1];
- char szBitmapName[99+1];
- } IDO_NEWCLASS, FAR * LPIDO_NEWCLASS;
- #pragma pack()
-
- #pragma pack(1)
- typedef struct
- {
- char szFontName[99+1];
- int cSize;
- BOOL bBold;
- BOOL bItalic;
- BOOL bUnderline;
- BOOL bStrikeout;
- } IDO_FONT, FAR * LPIDO_FONT;
- #pragma pack()
-
- #pragma pack(1)
- typedef struct
- {
- char E1[99+1];
- char R1[99+1];
- char E2[99+1];
- int MaxCount;
- } IDO_RULE, FAR * LPIDO_RULE;
- #pragma pack()
-
- #pragma pack(1)
- typedef struct
- {
- long id;
- char name[99+1];
- char classname[99+1];
- char text[99+1];
- RECT rect;
- HWND hIDO;
- } ENTITY_CLASS_STRUCT, FAR * LPENTITY_CLASS_STRUCT;
- #pragma pack()
-
- #define ENTITY ENTITY_CLASS_STRUCT
- #define LPENTITY LPENTITY_CLASS_STRUCT
-
- #pragma pack(1)
- typedef struct
- {
- long Src_id;
- long Dst_id;
- long id;
- char Src_name[99+1];
- char Dst_name[99+1];
- char name[99+1];
- char classname[99+1];
- char text[99+1];
- HWND hIDO;
- } LINE_CLASS_STRUCT, FAR * LPLINE_CLASS_STRUCT;
- #pragma pack()
-
-
- #define RELATION LINE_CLASS_STRUCT
- #define LPRELATION LPLINE_CLASS_STRUCT
-
- #endif // __RC_FILE
-
-
- #ifdef __cplusplus
- extern "C"
- {
- #endif
-
- // ido properties
- BOOL WINAPI idoGetEditMode(HWND);
- void WINAPI idoSetEditMode(HWND, BOOL);
-
- int WINAPI idoGetGridHeight(HWND);
- void WINAPI idoSetGridHeight(HWND, int);
-
- int WINAPI idoGetGridWidth(HWND);
- void WINAPI idoSetGridWidth(HWND, int);
-
- COLORREF WINAPI idoGetGridLineColor(HWND);
- void WINAPI idoSetGridLineColor(HWND, COLORREF);
-
- COLORREF WINAPI idoGetBackColor(HWND);
- void WINAPI idoSetBackColor(HWND, COLORREF);
-
- BOOL WINAPI idoGetGridLines(HWND);
- void WINAPI idoSetGridLines(HWND, BOOL);
-
- BOOL WINAPI idoGetPrinterLines(HWND);
- void WINAPI idoSetPrinterLines(HWND, BOOL);
-
- BOOL WINAPI idoGetPrinterLandscape(HWND);
- void WINAPI idoSetPrinterLandscape(HWND, BOOL);
-
- BOOL WINAPI idoGetSnapToGrid(HWND);
- void WINAPI idoSetSnapToGrid(HWND, BOOL);
-
- BOOL WINAPI idoGetToolsPalette(HWND);
- void WINAPI idoSetToolsPalette(HWND, BOOL);
- BOOL WINAPI idoSetToolsPaletteButtonText(HWND, LPCSTR);
-
- BOOL WINAPI idoGetRulesEnforced(HWND);
- void WINAPI idoSetRulesEnforced(HWND, BOOL);
-
- BOOL WINAPI idoGetCurrentEntity(HWND, LPENTITY);
- BOOL WINAPI idoSetCurrentEntity(HWND, LPENTITY);
-
- BOOL WINAPI idoGetCurrentRelation(HWND, LPRELATION);
- BOOL WINAPI idoSetCurrentRelation(HWND, LPRELATION);
-
- BOOL WINAPI idoGetPopupMenu(HWND, long);
- BOOL WINAPI idoSetPopupMenu(HWND, long, BOOL);
-
- void WINAPI idoSetModified(HWND, BOOL);
- BOOL WINAPI idoGetModified(HWND);
-
- void WINAPI idoSetWindowStyle(HWND, long);
- long WINAPI idoGetWindowStyle(HWND);
-
- void WINAPI idoSetBorder(HWND, BOOL);
- BOOL WINAPI idoGetBorder(HWND);
-
- void WINAPI idoSetScrollBars(HWND, long);
- long WINAPI idoGetScrollBars(HWND);
- #define IDO_NONE 0
- #define IDO_HSCROLL 1
- #define IDO_VSCROLL 2
- #define IDO_BOTH 3
-
- BOOL WINAPI idoGetRedraw(HWND);
- void WINAPI idoSetRedraw(HWND, BOOL);
-
-
- // ido methods
-
- // responses to notifications
- void WINAPI idoCancelAction(HWND);
- void WINAPI idoAllowAction(HWND);
-
- BOOL WINAPI idoGetNotifyEntity(HWND, LPENTITY);
- BOOL WINAPI idoGetNotifyRelation(HWND, LPRELATION);
- long WINAPI idoGetNotifyID(HWND);
- LPCSTR WINAPI idoGetNotifyName(HWND);
-
-
- // retrieve count
- long WINAPI idoGetNumberOfSelectedEntities(HWND);
- long WINAPI idoGetNumberOfEntities(HWND);
- long WINAPI idoGetNumberOfRelations(HWND);
-
- // selection
- BOOL WINAPI idoIterateSelectedEntityFirst(HWND);
- BOOL WINAPI idoIterateSelectedEntityNext(HWND, LPENTITY);
- BOOL WINAPI idoEntityGetSelect(LPENTITY);
- void WINAPI idoEntitySetSelect(LPENTITY, BOOL);
-
-
- // entities
- BOOL WINAPI idoIterateEntityFirst(HWND);
- BOOL WINAPI idoIterateEntityNext(HWND, LPENTITY);
-
- BOOL WINAPI idoDragAddEntity(HWND, LPCSTR);
- BOOL WINAPI idoAddEntityFromClass(HWND, long, LPSTR, LPSTR, LPSTR, int, int, int, int);
- BOOL WINAPI idoDeleteEntity(HWND, LPENTITY);
- BOOL WINAPI idoDoesEntityExist(HWND, long, LPCSTR);
- BOOL WINAPI idoEntityDelete(LPENTITY);
-
- // relations
- BOOL WINAPI idoIterateRelationFirst(HWND);
- BOOL WINAPI idoIterateRelationNext(HWND, LPRELATION);
-
- BOOL WINAPI idoDragAddRelation(HWND, LPCSTR);
- BOOL WINAPI idoAddRelationFromClass(HWND, long, LPSTR, LPSTR, LPSTR, long, LPSTR, long, LPSTR);
- BOOL WINAPI idoDeleteRelation(HWND, LPRELATION);
- BOOL WINAPI idoDoesRelationExist(HWND, long, LPCSTR);
- BOOL WINAPI idoRelationDelete(LPRELATION);
-
- // file IO
- long WINAPI idoGetVersion(HWND);
-
- LPCSTR WINAPI idoGetFileName(HWND);
- void WINAPI idoSetFileName(HWND, LPCSTR);
-
- void WINAPI idoResetDiagram(HWND);
- BOOL WINAPI idoReadDiagram(HWND, LPSTR);
- BOOL WINAPI idoSaveDiagram(HWND, LPSTR);
-
- void WINAPI idoResetPalette(HWND);
- BOOL WINAPI idoReadPalette(HWND, LPSTR);
- BOOL WINAPI idoSavePalette(HWND, LPSTR);
-
- BOOL WINAPI idoReadJobsFile(HWND, LPSTR);
-
- // misc
- void WINAPI idoZoom(HWND, int, long);
- short WINAPI idoGetZoomValue(HWND);
- void WINAPI idoSetZoomValue(HWND, short);
-
- // inet new support
- LPCSTR WINAPI idoGetInetPath(HWND);
- void WINAPI idoSetInetPath(HWND, LPCSTR);
- void WINAPI idoEntitySetInetHost(LPENTITY, INET_HOST);
- INET_HOST WINAPI idoEntityGetInetHost(LPENTITY);
- void WINAPI idoEntitySetInetUrl(LPENTITY, LPCSTR);
- LPCSTR WINAPI idoEntityGetInetUrl(LPENTITY);
-
- // clipboard support
- void WINAPI idoCut(HWND);
- void WINAPI idoCopy(HWND);
- void WINAPI idoPaste(HWND);
-
- // internal dialogs
- void WINAPI idoManageClasses(HWND);
- void WINAPI idoManageRules(HWND);
- void WINAPI idoPrintDiagram(HWND);
- void WINAPI idoPropertyPage(HWND, int);
- void WINAPI idoEntityPropertyPage(LPENTITY, int);
- void WINAPI idoRelationPropertyPage(LPRELATION, int);
-
- // classes
- BOOL WINAPI idoAddEntityClass(HWND, LPSTR, LPSTR, LPENTITY);
- BOOL WINAPI idoDeleteEntityClass(HWND, LPSTR);
- BOOL WINAPI idoRedefineFromEntityClass(HWND, LPSTR);
- BOOL WINAPI idoGetEntityClass(HWND, LPSTR, LPENTITY);
- BOOL WINAPI idoIterateEntityClassFirst(HWND);
- BOOL WINAPI idoIterateEntityClassNext(HWND, LPSTR);
- BOOL WINAPI idoDoesEntityClassExist(HWND, LPSTR);
-
- BOOL WINAPI idoAddRelationClass(HWND, LPSTR, LPSTR, LPRELATION);
- BOOL WINAPI idoDeleteRelationClass(HWND, LPSTR);
- BOOL WINAPI idoRedefineFromRelationClass(HWND, LPSTR);
- BOOL WINAPI idoGetRelationClass(HWND, LPSTR, LPRELATION);
- BOOL WINAPI idoIterateRelationClassFirst(HWND);
- BOOL WINAPI idoIterateRelationClassNext(HWND, LPSTR);
- BOOL WINAPI idoDoesRelationClassExist(HWND, LPSTR);
-
- // rules
- BOOL WINAPI idoAddRule(HWND, LPSTR, LPSTR, LPSTR);
- BOOL WINAPI idoDeleteRule(HWND, LPIDO_RULE);
- BOOL WINAPI idoDoesRuleExist(HWND, LPSTR, LPSTR, LPSTR);
- BOOL WINAPI idoIterateRuleFirst(HWND);
- BOOL WINAPI idoIterateRuleNext(HWND, LPIDO_RULE);
-
- // object retrieval
- BOOL WINAPI idoGetEntity(HWND, long, LPSTR, LPENTITY);
- BOOL WINAPI idoGetRelation(HWND, long, LPSTR, LPRELATION);
-
-
-
- // entity properties
- void WINAPI idoEntitySetBorder(LPENTITY, BOOL);
- BOOL WINAPI idoEntityGetBorder(LPENTITY);
- void WINAPI idoEntitySetFont(LPENTITY, LPIDO_FONT);
- LPIDO_FONT WINAPI idoEntityGetFont(LPENTITY);
- void WINAPI idoEntitySetUserData(LPENTITY, LPVOID);
- LPVOID WINAPI idoEntityGetUserData(LPENTITY);
- void WINAPI idoEntitySetBackColor(LPENTITY, COLORREF);
- COLORREF WINAPI idoEntityGetBackColor(LPENTITY);
- void WINAPI idoEntitySetTextColor(LPENTITY, COLORREF);
- COLORREF WINAPI idoEntityGetTextColor(LPENTITY);
- void WINAPI idoEntitySetText(LPENTITY, LPCSTR);
- LPCSTR WINAPI idoEntityGetText(LPENTITY);
- void WINAPI idoEntitySetShape(LPENTITY, ENTITYSHAPE);
- ENTITYSHAPE WINAPI idoEntityGetShape(LPENTITY);
- void WINAPI idoEntitySetFrame(LPENTITY, THREE_D_STYLE);
- THREE_D_STYLE WINAPI idoEntityGetFrame(LPENTITY);
- void WINAPI idoEntitySetContainer(LPENTITY, long);
- long WINAPI idoEntityGetContainer(LPENTITY);
- void WINAPI idoEntitySetGraphic(LPENTITY, LPCSTR);
- LPCSTR WINAPI idoEntityGetGraphic(LPENTITY);
- void WINAPI idoEntitySetTextOrientation(LPENTITY, TEXTPOSSTYLE);
- TEXTPOSSTYLE WINAPI idoEntityGetTextOrientation(LPENTITY);
- void WINAPI idoEntitySetCoordX(LPENTITY, int);
- int WINAPI idoEntityGetCoordX(LPENTITY);
- void WINAPI idoEntitySetCoordY(LPENTITY, int);
- int WINAPI idoEntityGetCoordY(LPENTITY);
- int WINAPI idoEntityGetTop(LPENTITY);
- void WINAPI idoEntitySetTop(LPENTITY, int);
- int WINAPI idoEntityGetLeft(LPENTITY);
- void WINAPI idoEntitySetLeft(LPENTITY, int);
- int WINAPI idoEntityGetRight(LPENTITY);
- void WINAPI idoEntitySetRight(LPENTITY, int);
- int WINAPI idoEntityGetBottom(LPENTITY);
- void WINAPI idoEntitySetBottom(LPENTITY, int);
- BOOL WINAPI idoEntityGetRect(LPENTITY, LPRECT);
- void WINAPI idoEntitySetRect(LPENTITY, LPRECT);
- BOOL WINAPI idoEntityGetValidRelationDragSource(LPENTITY);
- void WINAPI idoEntitySetValidRelationDragSource(LPENTITY, BOOL);
- BOOL WINAPI idoEntityGetCanResize(LPENTITY);
- void WINAPI idoEntitySetCanResize(LPENTITY, BOOL);
- BOOL WINAPI idoEntityGetCanMove(LPENTITY);
- void WINAPI idoEntitySetCanMove(LPENTITY, BOOL);
- BOOL WINAPI idoEntityGetCanDelete(LPENTITY);
- void WINAPI idoEntitySetCanDelete(LPENTITY, BOOL);
- BOOL WINAPI idoEntityGetReadOnly(LPENTITY);
- void WINAPI idoEntitySetReadOnly(LPENTITY, BOOL);
- BOOL WINAPI idoEntityGetAutoResize(LPENTITY);
- void WINAPI idoEntitySetAutoResize(LPENTITY, BOOL);
- BOOL WINAPI idoEntityGetStretchBitmap(LPENTITY);
- void WINAPI idoEntitySetStretchBitmap(LPENTITY, BOOL);
- BOOL WINAPI idoEntityGetTransparent(LPENTITY);
- void WINAPI idoEntitySetTransparent(LPENTITY, BOOL);
- BOOL WINAPI idoEntityGetStyle(LPENTITY, long);
- void WINAPI idoEntitySetStyle(LPENTITY, BOOL, long);
-
- // entity methods
- long WINAPI idoEntityGetRelationInCount(LPENTITY);
- BOOL WINAPI idoEntityIterateRelationInFirst(LPENTITY);
- BOOL WINAPI idoEntityIterateRelationInNext(LPENTITY, LPRELATION);
- long WINAPI idoEntityGetRelationOutCount(LPENTITY);
- BOOL WINAPI idoEntityIterateRelationOutFirst(LPENTITY);
- BOOL WINAPI idoEntityIterateRelationOutNext(LPENTITY, LPRELATION);
- BOOL WINAPI idoEntityRepaint(LPENTITY);
- BOOL WINAPI idoEntityIterateContainedEntityFirst(LPENTITY);
- BOOL WINAPI idoEntityIterateContainedEntityNext(LPENTITY, LPENTITY);
- long WINAPI idoEntityGetContainedEntityCount(LPENTITY);
- BOOL WINAPI idoEntityAddEntityToContainer(LPENTITY, LPENTITY);
- BOOL WINAPI idoEntityRemoveEntityFromContainer(LPENTITY, LPENTITY);
- long WINAPI idoEntityUserID(LPENTITY);
- LPCSTR WINAPI idoEntityUserName(LPENTITY);
- LPCSTR WINAPI idoEntityClassName(LPENTITY);
- BOOL WINAPI idoEntityBringIntoView(LPENTITY);
-
-
- // relation properties
- void WINAPI idoRelationSetFont(LPRELATION, LPIDO_FONT);
- LPIDO_FONT WINAPI idoRelationGetFont(LPRELATION);
- void WINAPI idoRelationSetUserData(LPRELATION, LPVOID);
- LPVOID WINAPI idoRelationGetUserData(LPRELATION);
- void WINAPI idoRelationSetBackColor(LPRELATION, COLORREF);
- COLORREF WINAPI idoRelationGetBackColor(LPRELATION);
- void WINAPI idoRelationSetTextColor(LPRELATION, COLORREF);
- COLORREF WINAPI idoRelationGetTextColor(LPRELATION);
- void WINAPI idoRelationSetText(LPRELATION, LPCSTR);
- LPCSTR WINAPI idoRelationGetText(LPRELATION);
- void WINAPI idoRelationSetSourceArrow(LPRELATION, ARROWSTYLE);
- ARROWSTYLE WINAPI idoRelationGetSourceArrow(LPRELATION);
- void WINAPI idoRelationSetDestinationArrow(LPRELATION, ARROWSTYLE);
- ARROWSTYLE WINAPI idoRelationGetDestinationArrow(LPRELATION);
- void WINAPI idoRelationSetType(LPRELATION, LINESTYLE);
- LINESTYLE WINAPI idoRelationGetType(LPRELATION);
- void WINAPI idoRelationSetThickness(LPRELATION, long);
- long WINAPI idoRelationGetThickness(LPRELATION);
- BOOL WINAPI idoRelationGetReadOnly(LPRELATION);
- void WINAPI idoRelationSetReadOnly(LPRELATION, BOOL);
- BOOL WINAPI idoRelationGetCanDelete(LPRELATION);
- void WINAPI idoRelationSetCanDelete(LPRELATION, BOOL);
- BOOL WINAPI idoRelationGetCanMoveEndPoints(LPRELATION);
- void WINAPI idoRelationSetCanMoveEndPoints(LPRELATION, BOOL);
- BOOL WINAPI idoRelationGetCanMoveMidPoints(LPRELATION);
- void WINAPI idoRelationSetCanMoveMidPoints(LPRELATION, BOOL);
- BOOL WINAPI idoRelationGetStyle(LPRELATION, long);
- void WINAPI idoRelationSetStyle(LPRELATION, BOOL, long);
-
- // relation methods
- BOOL WINAPI idoRelationSourceEntity(LPRELATION, LPENTITY);
- BOOL WINAPI idoRelationDestinationEntity(LPRELATION, LPENTITY);
- BOOL WINAPI idoRelationRepaint(LPRELATION);
- long WINAPI idoRelationUserID(LPRELATION);
- LPCSTR WINAPI idoRelationUserName(LPRELATION);
- LPCSTR WINAPI idoRelationClassName(LPRELATION);
- BOOL WINAPI idoRelationBringIntoView(LPRELATION);
-
-
- // rule methods
- LPCSTR WINAPI idoRuleDestinationEntityClassName(LPIDO_RULE);
- LPCSTR WINAPI idoRuleSourceEntityClassName(LPIDO_RULE);
- LPCSTR WINAPI idoRuleRelationClassName(LPIDO_RULE);
-
- #ifdef __cplusplus
- }
- #endif
-
-
- #endif // __PVIDO__H
-
-
-
-