InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IPreflightRuleUI.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Matt Phillips
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 
25 #include "IPMUnknown.h"
26 #include "PackageAndPreflightUIID.h"
27 #include "IPreflightRuleData.h"
28 #include <map>
29 
30 class IControlView;
31 class IDataBase;
32 
61 {
62 public:
63  enum { kDefaultIID = IID_IPREFLIGHTRULEUI };
64 
65 public:
71  virtual bool HasUI() const = 0;
72 
76  virtual IControlView* CreateCustomUI (IDataBase* iUIDataBase) const = 0;
77 
84  virtual bool ApplyDataToCustomUI (IControlView* iCustomUI, IPreflightRuleData* iRuleDataToApply) const = 0;
85 
102  virtual bool GetDataFromCustomUI (IControlView* iCustomUI, IPreflightRuleData* iRuleData) const = 0;
103 
108  virtual PMString GetDataParemeterDescription (const IPreflightRuleData::Key& key) const = 0;
109 
114  enum UnitType
115  {
137 
149 
154 
158  };
163  virtual UnitType GetDataParemeterUnitType (const IPreflightRuleData::Key& key) const = 0;
164 
171  virtual bool GetDataParemeterRange (const IPreflightRuleData::Key& key, ScriptData& maxData, ScriptData& minData) const = 0;
172 
184  virtual bool ValidateParameterData (const IPreflightRuleData::Key& key, const ScriptData& newData, PMString& errorString) const = 0;
185 
194  virtual bool GetDataParemeterMapping (const IPreflightRuleData::Key& key, ScriptListData& enumData, ScriptListData& stringData) const = 0;
195 
199  virtual IPreflightRuleData::Key GetDataParamRoot () const = 0;
200 
206  virtual void GetDataParamParent (const IPreflightRuleData::Key& key, IPreflightRuleData::Key& keyParent) const = 0;
207 
213  virtual bool GetDataParamDirectChildren (const IPreflightRuleData::Key& key, std::vector<IPreflightRuleData::Key>& keyList) const = 0;
214 
215 };
216