InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IStoryLabel.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Scott Binns
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 
24 #include "IPMUnknown.h"
25 #include "WideString.h"
26 #include "InCopySharedID.h"
27 
28 #ifndef __IStoryLabel__
29 #define __IStoryLabel__
30 
32 class IStoryLabel : public IPMUnknown
33 {
34  public:
35  enum { kDefaultIID = IID_ISTORYLABEL };
36 
37  //----------------------------------------------------------------------------------------
38  // GetLabel
39  //
40  // Try to get the label from the story metadata (XMP data)
41  // else
42  // use the filename from the datalink
43  // else
44  // use "Untitled Story" + story list index (if more than one user accessible story).
45  //
46  // Returns a non-empty string.
47  //----------------------------------------------------------------------------------------
55  virtual PMString GetLabel() = 0;
56 
57  //----------------------------------------------------------------------------------------
58  // SetLabel
59  //
60  // Uses commands to set the title field in story metadata (XMP data), creates a new
61  // metadata structure if story metadata does not exist.
62  //----------------------------------------------------------------------------------------
67  virtual ErrorCode SetLabel(
68  const PMString& label
69  ) = 0;
70 
75  virtual void ReadWrite(
76  IPMStream *s,
77  ImplementationID prop
78  ) = 0;
79 };
80 
81 #endif //__IStoryLabel__