CFx SDK Documentation
2020SP3
SDK
CFx
inc
FxDesignResourceModel.h
Go to the documentation of this file.
1
//
2
// (C) Copyright 2005-2020 by Graebert GmbH.
3
//
4
// Permission to use, copy, modify, and distribute this software in
5
// object code form for any purpose and without fee is hereby granted,
6
// provided that the above copyright notice appears in all copies and
7
// that both that copyright notice and the limited warranty and
8
// restricted rights notice below appear in all supporting
9
// documentation.
10
//
11
// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
12
// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
13
// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
14
// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
15
// UNINTERRUPTED OR ERROR FREE.
16
17
#pragma once
18
19
#include "
DDKERNEL.h
"
20
21
#include "
FxPragmaPush.h
"
22
23
class
CFxString
;
24
class
CFxDesignDataItem
;
25
26
class
DDKERNEL_API
CFxDesignResourceModel
27
{
28
public
:
32
enum
ItemType
33
{
34
eNoneItem = -1,
35
eRootItem = 0,
//This type of item can be added as root only or under Favorite node. Add to favorites and Set As Home not allowed.
36
eShortCutItem
,
//eShortCutItem not displayed in Source view.
37
eFolderItem
,
38
eDrawingItem
,
//No sub item can be added under this type of item using AppendChild
39
eImageItem
,
//No sub item can be added under this type of item using AppendChild.
40
eLinkItem
,
//This type of item can be added under only Favorites node using AppendChild. Add To Favorites not allowed
41
eNetworkComputer
,
42
43
/* Following type of items created and added internally. */
44
eBlockTable
,
45
eDimStyleTable
,
46
eLayerTable
,
47
eLineStyleTable
,
48
eXrefDrawings
,
49
eSheets
,
50
eTableStyles
,
51
eTextStyleTable
,
52
eMLeaderStyles
,
53
eBlock
,
54
eDimStyle
,
55
eLayer
,
56
eLineStyle
,
57
eXrefDrawing
,
58
eSheet
,
59
eTableStyle
,
60
eTextStyle
,
61
eMLeaderStyle
,
62
eLastStyle
,
63
};
64
68
enum
DrawignSubItemVisibilty
69
{
70
eNone = 0,
71
eBlocksVisible = 1,
72
eDimStylesVisible = 2,
73
eLayersVisible = 4,
74
eLineStylesVisible = 8,
75
eXrefDrawingsVisible = 16,
76
eSheetsVisible = 32,
77
eTableStylesVisible = 64,
78
eTextStylesVisible = 128,
79
eMLeaderStylesVisible = 256,
80
eAll = eBlocksVisible | eDimStylesVisible | eLayersVisible | eLineStylesVisible |
81
eXrefDrawingsVisible |eSheetsVisible | eTableStylesVisible | eTextStylesVisible |eMLeaderStylesVisible,
82
};
83
87
enum
Operation
88
{
89
eOpenInApplication = 0,
90
eInsertAsBlock
,
91
eAttachAsXref
,
92
eInsertBlock
,
93
eAddDimStyle
,
94
eAddLayer
,
95
eAddLineStyle
,
96
eAttachXref
,
97
eAddSheet
,
98
eAddTableStyle
,
99
eAddTextStyle
,
100
eAddMLeaderStyle
,
101
eAttachImage
,
102
eRefreshSource
,
103
eExplore
104
};
105
109
enum
DataType
110
{
111
eInt = 0,
112
eDouble
,
113
eString
,
114
eDate
115
};
116
117
public
:
118
virtual
~CFxDesignResourceModel
(
void
);
119
137
virtual
CFxDesignDataItem
*
CreateItem
(
const
CFxString
& sText,
138
CFxDesignResourceModel::ItemType
type
,
139
bool
bExpandable =
true
)
const
= 0;
140
141
150
virtual
CFxDesignDataItem
*
ItemAt
(
CFxDesignDataItem
* pParent,
int
iIndex )
const
= 0;
151
160
virtual
bool
AppendChild
(
CFxDesignDataItem
* pParent,
CFxDesignDataItem
* pChild ) = 0;
161
169
virtual
int
GetChildCount
(
const
CFxDesignDataItem
* pItem )
const
= 0;
170
178
virtual
bool
RemoveAllChildren
(
CFxDesignDataItem
* pParent) = 0;
179
185
virtual
bool
RemoveItem
(
CFxDesignDataItem
* pItem ) = 0;
186
194
virtual
CFxDesignDataItem
*
GetParentItem
(
const
CFxDesignDataItem
* pItem )
const
= 0;
195
201
virtual
bool
IsDrawingSubItem
(
CFxString
& sURL) = 0;
202
211
virtual
bool
RemoveDatabaseFromCache
(
const
CFxString
& sURL) = 0;
212
216
virtual
CFxDesignDataItem
*
GetExploredItem
() = 0;
217
223
virtual
void
ExploreItem
(
CFxDesignDataItem
* pItem ) = 0;
224
225
protected
:
226
CFxDesignResourceModel
();
227
228
};
229
230
#include "
FxPragmaPop.h
"
FxPragmaPop.h
CFxDesignResourceModel::DataType
DataType
Definition:
FxDesignResourceModel.h:110
CFxDesignResourceModel::ItemAt
virtual CFxDesignDataItem * ItemAt(CFxDesignDataItem *pParent, int iIndex) const =0
CFxDesignResourceModel::eMLeaderStyle
@ eMLeaderStyle
Definition:
FxDesignResourceModel.h:61
CFxDesignResourceModel::eXrefDrawings
@ eXrefDrawings
Definition:
FxDesignResourceModel.h:48
CFxDesignResourceModel::eInsertBlock
@ eInsertBlock
Definition:
FxDesignResourceModel.h:92
CFxDesignResourceModel::AppendChild
virtual bool AppendChild(CFxDesignDataItem *pParent, CFxDesignDataItem *pChild)=0
CFxDesignResourceModel::eLayerTable
@ eLayerTable
Definition:
FxDesignResourceModel.h:46
CFxDesignResourceModel::~CFxDesignResourceModel
virtual ~CFxDesignResourceModel(void)
type
GLuint GLsizei GLsizei GLint GLenum * type
Definition:
gles2_ext.h:274
CFxDesignResourceModel::eLineStyle
@ eLineStyle
Definition:
FxDesignResourceModel.h:56
CFxDesignResourceModel::eAttachXref
@ eAttachXref
Definition:
FxDesignResourceModel.h:96
CFxDesignResourceModel::GetParentItem
virtual CFxDesignDataItem * GetParentItem(const CFxDesignDataItem *pItem) const =0
CFxDesignResourceModel::eRefreshSource
@ eRefreshSource
Definition:
FxDesignResourceModel.h:102
CFxDesignResourceModel::eSheet
@ eSheet
Definition:
FxDesignResourceModel.h:58
CFxDesignResourceModel::Operation
Operation
Definition:
FxDesignResourceModel.h:88
CFxDesignDataItem
Definition:
FxDesignDataItem.h:35
DDKERNEL.h
CFxDesignResourceModel::eLayer
@ eLayer
Definition:
FxDesignResourceModel.h:55
CFxDesignResourceModel::ItemType
ItemType
Definition:
FxDesignResourceModel.h:33
CFxDesignResourceModel::eShortCutItem
@ eShortCutItem
Definition:
FxDesignResourceModel.h:36
CFxDesignResourceModel::CreateItem
virtual CFxDesignDataItem * CreateItem(const CFxString &sText, CFxDesignResourceModel::ItemType type, bool bExpandable=true) const =0
CFxString
Definition:
FxString.h:48
CFxDesignResourceModel::eTextStyle
@ eTextStyle
Definition:
FxDesignResourceModel.h:60
CFxDesignResourceModel::RemoveItem
virtual bool RemoveItem(CFxDesignDataItem *pItem)=0
CFxDesignResourceModel::eTableStyles
@ eTableStyles
Definition:
FxDesignResourceModel.h:50
CFxDesignResourceModel::eAddSheet
@ eAddSheet
Definition:
FxDesignResourceModel.h:97
CFxDesignResourceModel::eInsertAsBlock
@ eInsertAsBlock
Definition:
FxDesignResourceModel.h:90
CFxDesignResourceModel::eAddTableStyle
@ eAddTableStyle
Definition:
FxDesignResourceModel.h:98
CFxDesignResourceModel::CFxDesignResourceModel
CFxDesignResourceModel()
CFxDesignResourceModel::eAttachAsXref
@ eAttachAsXref
Definition:
FxDesignResourceModel.h:91
CFxDesignResourceModel::eTextStyleTable
@ eTextStyleTable
Definition:
FxDesignResourceModel.h:51
CFxDesignResourceModel::eImageItem
@ eImageItem
Definition:
FxDesignResourceModel.h:39
CFxDesignResourceModel::IsDrawingSubItem
virtual bool IsDrawingSubItem(CFxString &sURL)=0
CFxDesignResourceModel::eLineStyleTable
@ eLineStyleTable
Definition:
FxDesignResourceModel.h:47
CFxDesignResourceModel::eAttachImage
@ eAttachImage
Definition:
FxDesignResourceModel.h:101
CFxDesignResourceModel::eXrefDrawing
@ eXrefDrawing
Definition:
FxDesignResourceModel.h:57
DDKERNEL_API
#define DDKERNEL_API
Definition:
DDKERNEL.h:32
CFxDesignResourceModel::eAddLayer
@ eAddLayer
Definition:
FxDesignResourceModel.h:94
CFxDesignResourceModel::eSheets
@ eSheets
Definition:
FxDesignResourceModel.h:49
CFxDesignResourceModel::eNetworkComputer
@ eNetworkComputer
Definition:
FxDesignResourceModel.h:41
CFxDesignResourceModel::DrawignSubItemVisibilty
DrawignSubItemVisibilty
Definition:
FxDesignResourceModel.h:69
CFxDesignResourceModel::eLinkItem
@ eLinkItem
Definition:
FxDesignResourceModel.h:40
CFxDesignResourceModel::eString
@ eString
Definition:
FxDesignResourceModel.h:113
CFxDesignResourceModel::eTableStyle
@ eTableStyle
Definition:
FxDesignResourceModel.h:59
CFxDesignResourceModel::RemoveDatabaseFromCache
virtual bool RemoveDatabaseFromCache(const CFxString &sURL)=0
CFxDesignResourceModel::eDrawingItem
@ eDrawingItem
Definition:
FxDesignResourceModel.h:38
CFxDesignResourceModel::eAddMLeaderStyle
@ eAddMLeaderStyle
Definition:
FxDesignResourceModel.h:100
CFxDesignResourceModel::eAddTextStyle
@ eAddTextStyle
Definition:
FxDesignResourceModel.h:99
CFxDesignResourceModel::eDimStyle
@ eDimStyle
Definition:
FxDesignResourceModel.h:54
CFxDesignResourceModel::eFolderItem
@ eFolderItem
Definition:
FxDesignResourceModel.h:37
CFxDesignResourceModel::eAddDimStyle
@ eAddDimStyle
Definition:
FxDesignResourceModel.h:93
CFxDesignResourceModel::eDimStyleTable
@ eDimStyleTable
Definition:
FxDesignResourceModel.h:45
CFxDesignResourceModel::eDouble
@ eDouble
Definition:
FxDesignResourceModel.h:112
CFxDesignResourceModel::ExploreItem
virtual void ExploreItem(CFxDesignDataItem *pItem)=0
FxPragmaPush.h
CFxDesignResourceModel::eBlockTable
@ eBlockTable
Definition:
FxDesignResourceModel.h:44
CFxDesignResourceModel::RemoveAllChildren
virtual bool RemoveAllChildren(CFxDesignDataItem *pParent)=0
CFxDesignResourceModel::eAddLineStyle
@ eAddLineStyle
Definition:
FxDesignResourceModel.h:95
CFxDesignResourceModel::eLastStyle
@ eLastStyle
Definition:
FxDesignResourceModel.h:62
CFxDesignResourceModel::GetChildCount
virtual int GetChildCount(const CFxDesignDataItem *pItem) const =0
CFxDesignResourceModel::eBlock
@ eBlock
Definition:
FxDesignResourceModel.h:53
CFxDesignResourceModel::eMLeaderStyles
@ eMLeaderStyles
Definition:
FxDesignResourceModel.h:52
CFxDesignResourceModel
Definition:
FxDesignResourceModel.h:27
CFxDesignResourceModel::GetExploredItem
virtual CFxDesignDataItem * GetExploredItem()=0
Generated on Mon Oct 12 2020 11:49:32