InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ILibraryScrapController.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Mark VerMurlen
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 // Reviewed: 9/25/98
24 //
25 // Purpose:
26 // This interface is responsible for managing the Library Panel's Scrap.
27 //
28 //========================================================================================
29 
30 #ifndef __ILibraryScrapController__
31 #define __ILibraryScrapController__
32 
33 #include "CDataExchangeController.h"
34 #include "ShuksanID.h"
35 
36 
38 class IDataBase;
39 class ILibraryAsset;
40 
49 {
50  // ----- Constructor/Destructor
51  public:
53  virtual ~ILibraryScrapController() {};
54 
55  // ----- Active handler
56  public:
63  virtual IDataExchangeHandler* QueryHandlerForInternalize(DataExchangeResponse& response, const PMFlavor& internalizedFlavor = kNoFlavor) const = 0;
64 
65  // ----- Scrap Conversion
66  public:
72  virtual bool16 NeedsToInternalize() const = 0;
73 
77  virtual ErrorCode ExternalizeToLibrary() const = 0;
78 
82  virtual ErrorCode InternalizeFromLibrary() = 0;
83 
87  virtual ErrorCode InternalizeFromOldLibrary() = 0;
88 
94  virtual ErrorCode FulfillPromise(IPMDataObject* whichItem, const ExternalPMFlavor& whichFlavor) const = 0;
95 
99  virtual ErrorCode Clear() = 0;
100 
104  virtual void SetWorkingLibraryAsset( ILibraryAsset *libraryAsset ) = 0;
105 
108  virtual void Cleanup() = 0;
109 };
110 
111 #endif