InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IFormFieldUIFactory.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Tim Wright
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 // User-Interface related routines for a particular form field type.
24 // (attached to the FormFieldService boss along with IFormFieldFactory)
25 //
26 //========================================================================================
27 
28 #ifndef __IFormFieldUIFactory_h__
29 #define __IFormFieldUIFactory_h__
30 
31 #include "IPMUnknown.h"
32 #include "PMString.h"
33 #include "FormFieldTypes.h"
34 #include "FormFieldUIID.h"
35 
36 //=============================================================================
37 
38 class IDocument;
40 class IPanelControlData;
42 class IDialogController;
43 
47 {
48 public:
49  enum { kDefaultIID = IID_IFORMFIELDUIFACTORY };
50 
53  virtual ActionID GetToolActionID() const = 0;
54 
56  virtual WidgetID GetPropertiesWidget() const = 0;
57 
61  virtual WidgetID ValidatePropertyFields( IPanelControlData* inPanelData ) = 0;
62 
64  virtual IControlView* CreatePanel() const = 0;
65 
70  virtual void InitializePropertyFields( IPanelControlData* inPanelData, IGraphicAttributeSuite* inGraphicAttrSuite ) = 0;
71 
76  virtual void GetPropertyAttributes( IPanelControlData* inPanelData, IGraphicStyleAttributeBossList* ioProperties ) = 0;
77 };
78 
79 //=============================================================================
80 
81 #endif //
82 
83 // IFormFieldUIFactory.h.