InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IQuickApplyService.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Kevin Van Wiel
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 __IQuickApplyService__
25 #define __IQuickApplyService__
26 
27 #include <list>
28 
29 #include "IIdleTask.h" // for IdleTimer include
30 #include "QuickApplyFindListNode.h"
31 
32 #include "FindChangeID.h"
33 #include "IPMUnknown.h"
34 
35 class IActiveContext;
36 class IEvent;
37 
38 
49 {
50 public:
53 
56 
58  uint32 fItemID;
59 
61  bool16 fActive;
62 };
63 
65 typedef std::list<QuickApplyItemRecord> TypesHandledList;
66 
68 typedef std::list<uint32> TypesIDList;
69 
70 
77 {
78 public:
81  enum { kDefaultIID = IID_IQUICKAPPLYSERVICE };
82 
89  virtual void BeginServiceSession() = 0;
90 
96  virtual void EndServiceSession() = 0;
97 
104  virtual TypesHandledList GetItemTypesHandled(const TypesHandledList &existingItemTypes) = 0;
105 
116  virtual void LoadItems(IActiveContext *ac, K2Vector<QuickApplyFindListNode> *masterList, IdleTimer *timeCheck, uint32 itemTypeToLoad) = 0;
117 
128  virtual bool16 LoadItemsIsComplete(uint32 idType) = 0;
129 
140  virtual bool16 ApplyItem(IActiveContext *ac, const QuickApplyFindListNode &itemToApply, IEvent *e, bool16 edit) = 0;
141 
148  virtual void ResetProvider() = 0;
149 };
150 
151 
152 #endif // __IQuickApplyService__