InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
PstLstUINodeID.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Adobe Developer Technologies
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 // Each C++ implementation class in the plug-in and its corresponding ImplementationID
24 // should be registered in this file.
25 //
26 //========================================================================================
27 
28 #ifndef __PstLstUINodeID__
29 #define __PstLstUINodeID__
30 
31 #include "NodeID.h"
32 #include "IPMStream.h"
33 #include "PstLstUIID.h"
34 
40 {
41  public:
42  enum { kNodeType = kPstLstUITreeViewWidgetBoss };
43 
44  enum {
45  kInvalidData = -1,
46  kPageItemType = 0,
47  kPersistentListType = 1,
48  };
49 
54  static NodeID_rv Create(int32 dataType, UID uid, PMString description)
55  { return new PstLstUINodeID(dataType, uid, description); }
56 
59  virtual ~PstLstUINodeID() {}
60 
61 
64  virtual NodeType GetNodeType() const { return kNodeType; }
65 
70  virtual int32 Compare(const NodeIDClass* NodeID) const;
71 
75  virtual NodeIDClass* Clone() const;
76 
81  virtual void Read(IPMStream* stream);
82 
87  virtual void Write(IPMStream* stream) const;
88 
92  const int32& GetDataType() const { return fDataType; }
96  const UID& GetUID() const { return fUID; }
100  const PMString& GetDataDescription() const { return fDataDescription; }
101 
102 
103  private:
104  // Note we're keeping the destructor private to force use of the factory methods
105  PstLstUINodeID() {}
106 
107  PstLstUINodeID(int32 dataType, UID uid, PMString description):fDataType(dataType),fUID(uid), fDataDescription(description) {}
108 
109  int32 fDataType;
110  UID fUID;
111  PMString fDataDescription;
112 };
113 
114 #endif // __PstLstUINodeID__
115 
116