InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ICellContentMgr.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Jesse Jones (jejones)
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 #ifndef __ICellContentMgr__
25 #define __ICellContentMgr__
26 
27 #include "IPMUnknown.h"
28 #include "TablesID.h"
29 #include "TableTypes.h"
30 
31 //-----------------------------------
32 // Forward References
33 //
34 class ITableModel;
35 class TableMementoPiece;
36 
40 class ICellContentMgr : public IPMUnknown {
41 
42 //-----------------------------------
43 // API
44 //
45 public:
46  // ----- Constants -----
47  enum {kDefaultIID = IID_ICELLCONTENTMGR};
48 
49  enum ECreateRelative { eNone, eLeft, eRight, eTop, eBottom };
50 
52 
53 
75  virtual void Create(const GridArea& area, const ECreateRelative relative) = 0;
76 
83  virtual void Destroy(const GridArea& area) = 0;
84 
88  virtual PMString GetName() const = 0;
89 
93  virtual CellType GetType() const = 0;
95 
96 
98 
99 
103  virtual ImplementationID GetKey() const = 0;
104 
107  virtual void AttachingToTableModel(UID modelUID) = 0;
108 
113  virtual TableMementoPiece* Copy (const GridArea& cells) const = 0;
114 
119  virtual TableMementoPiece* Cut (const GridArea& cells) = 0;
120 
124  virtual bool16 CanClear(const GridArea& cells) const = 0;
125 
129  virtual void Clear (const GridArea& cells) = 0;
130 
135  virtual void PrePaste (const GridAddress& atAnchor, TableMementoPiece* piece) = 0;
136 
142  virtual void Paste (const GridAddress& atAnchor, TableMementoPiece* piece, TableMementoPiece* notificationPiece = nil) = 0;
143 
147  virtual ITableModel* QueryTableModel(void) const = 0;
148 
156  virtual void ConcatenateContentForMerge(const GridArea& cells) = 0;
157 
163  virtual ErrorCode Scale(const PMReal& xScale, const PMReal& yScale) = 0;
164 
171  virtual void PreConcatenateContentForMerge(const GridArea& cells, const CellType& mergedCellType) = 0;
172 
180  virtual UID PreConvertExtractData( GridAddress cell, const CellType destType ) = 0;
181 
189  virtual void PostConvertPushData( GridAddress cell, UID data ) = 0;
190 
191 };
192 
193 
194 #endif // __ICellContentMgr__