InDesign SDK
20.5
InDesign SDK
Documentation
Bosses
Sample plug-ins
Class Index
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
ILink.h
1
//========================================================================================
2
//
3
// $File$
4
//
5
// Owner: Michael Easter
6
//
7
// $Author$
8
//
9
// $DateTime$
10
//
11
// $Revision$
12
//
13
// $Change$
14
//
15
// Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16
//
17
// NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18
// with the terms of the Adobe license agreement accompanying it. If you have received
19
// this file from a source other than Adobe, then your use, modification, or
20
// distribution of it requires the prior written permission of Adobe.
21
//
22
//
23
// Description:
24
// This class defines an interface used to establish a relationship between an
25
// ILinkObject and an ILinkResource.
26
//
27
//========================================================================================
28
29
#ifndef __ILink__
30
#define __ILink__
31
32
// ----- Includes -----
33
#include "IPMUnknown.h"
34
#include "LinksID.h"
35
36
class
IPMStream
;
37
class
IDTime
;
38
class
UIDList
;
39
40
61
class
ILink
:
public
IPMUnknown
62
{
63
public
:
64
enum
{ kDefaultIID = IID_ILINK };
65
69
enum
LinkType
{
74
kImport
= 0,
79
kExport
,
86
kBidirectional
,
95
kChild
96
};
97
102
virtual
LinkType
GetLinkType
()
const
= 0;
103
108
virtual
LinkClientID
GetClientID
()
const
= 0;
109
115
virtual
UID
GetResource
()
const
= 0;
116
121
virtual
void
SetResource
(
UID
resourceUID) = 0;
122
127
enum
ResourceModificationState
{
129
kResourceModified
= 0,
131
kResourceUnmodified
132
};
133
139
virtual
ResourceModificationState
GetResourceModificationState
()
const
= 0;
140
146
virtual
void
SetResourceModificationState
(
ResourceModificationState
modState) = 0;
147
153
virtual
UID
GetObject
()
const
= 0;
154
159
virtual
void
SetObject
(
UID
objectUID) = 0;
160
165
enum
ObjectModificationState
{
167
kObjectModified
= 0,
169
kObjectUnmodified
170
};
171
177
virtual
ObjectModificationState
GetObjectModificationState
()
const
= 0;
178
184
virtual
void
SetObjectModificationState
(
ObjectModificationState
modState) = 0;
185
190
virtual
bool16
GetShowInUI
()
const
= 0;
191
197
virtual
void
SetShowInUI
(bool16 bShowInUI) = 0;
198
203
virtual
bool16
GetCanEmbed
()
const
= 0;
204
210
virtual
void
SetCanEmbed
(bool16 bCanEmbed) = 0;
211
216
virtual
bool16
GetCanUnembed
()
const
= 0;
217
223
virtual
void
SetCanUnembed
(bool16 bCanUnembed) = 0;
224
229
virtual
bool16
GetCanPackage
()
const
= 0;
230
236
virtual
void
SetCanPackage
(bool16 bCanPackage) = 0;
237
242
enum
ImportPolicy
{
244
kNoAutoImport
= 0,
246
kImportOnModify
247
};
248
255
virtual
ImportPolicy
GetImportPolicy
()
const
= 0;
256
263
virtual
void
SetImportPolicy
(
ImportPolicy
policy) = 0;
264
270
virtual
WideString
GetImportStamp
()
const
= 0;
271
277
virtual
IDTime
GetImportModTime
()
const
= 0;
278
284
virtual
IDTime
GetLastImportTime
()
const
= 0;
285
290
enum
ExportPolicy
{
292
kNoAutoExport
= 0,
294
kExportOnModify
,
296
kExportOnClose
,
298
kExportOnSave
299
};
300
307
virtual
ExportPolicy
GetExportPolicy
()
const
= 0;
308
315
virtual
void
SetExportPolicy
(
ExportPolicy
policy) = 0;
316
322
virtual
IDTime
GetLastExportTime
()
const
= 0;
323
331
virtual
void
AddChildren
(
const
UIDList
& children) = 0;
332
340
virtual
void
DeleteChildren
(
const
UIDList
& children) = 0;
341
349
virtual
uint32
GetChildren
(
UIDList
& children)
const
= 0;
350
357
virtual
uint32
GetNumChildren
()
const
= 0;
358
363
virtual
UID
GetParent
()
const
= 0;
364
375
virtual
ErrorCode
Update
(
bool
bForceUpdate, UIFlags uiFlags,
UID
& linkUID) = 0;
376
383
virtual
ErrorCode
CopyAttributes
(
const
UIDRef
& linkRef) = 0;
384
385
private
:
386
friend
class
LinkManager;
387
friend
class
ScrapLinkManager;
388
399
virtual
bool
Init(
LinkClientID
clientId,
UID
resourceUID,
UID
objectUID) = 0;
400
401
friend
class
LinkScriptProvider;
402
virtual
void
InitFromINX(
IDataBase
* db,
403
LinkType
type,
404
LinkClientID
clientId,
405
const
WideString
& importStamp,
406
const
IDTime
& importModTime,
407
const
IDTime
& lastImportTime,
408
const
IDTime
& lastExportTime,
409
bool16 isSharedContentLink = kFalse) = 0;
410
411
virtual
ErrorCode
CopyAttributes
(
const
ILink
* pLink) = 0;
412
};
413
414
#endif // __ILink__
tmpdoxygeninput
ILink.h
Generated on Sat Jul 19 2025 02:54:14 for InDesign SDK by
1.8.3.1