InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IDialog.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Michael Burbidge
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 __IDialog__
25 #define __IDialog__
26 
27 #include "IPMUnknown.h"
28 #include "IControlView.h"
29 #include "ICursorMgr.h"
30 #include "widgetid.h"
31 
34 class IDialog : public IPMUnknown
35 {
36 public:
37  enum { kDefaultIID = IID_IDIALOG };
38 
41  {
43  kModal = 0,
48  };
49 
52  virtual void SetDialogType(DialogType dialogType) = 0;
53 
56  virtual DialogType GetDialogType() const = 0;
57 
64  virtual void Open(IControlView* ownerPanel = nil, bool16 doWait = kTrue) = 0;
65 
70  virtual void OpenWithModalCursorType(int16 modalCursorType, IControlView* ownerPanel = nil) = 0;
71 
74  virtual void Close() = 0;
75 
82  virtual void WaitForDialog(bool16 bSupressScheduled = kFalse) = 0;
83 
86  virtual bool16 GetBufferCommands() const = 0;
87 
96  virtual void SetBufferCommands(bool16 bufferCommands) = 0;
97 
105  enum DialogPosition { kNoPosition = 0, kAutoCenter, kCenterNearTop, kRememberPosition };
106 
109  virtual void SetDialogPositioningAlgorithm(DialogPosition dialogPosition) = 0;
110 
113  virtual DialogPosition GetDialogPositioningAlgorithm() const = 0;
114 
120  enum DialogFocus { kNoAutoFocus = 0, kFirstTextBox };
121 
122 
125  virtual void SetDialogFocusingAlgorithm(DialogFocus dialogFocus) = 0;
126 
129  virtual DialogFocus GetDialogFocusAlgorithm() const = 0;
130 
133  virtual bool16 IsOpen() const = 0;
134 
137  virtual bool16 HasPreviewButton() const = 0;
138 
142  virtual IControlView* GetDialogPanel() const = 0;
143 
151  virtual WidgetID SetDefaultButton(const WidgetID buttonID) = 0;
152 
156  virtual WidgetID GetDefaultButton() const = 0;
157 
158 
161  virtual void PressDefaultButton() = 0 ;
162 
165  virtual void CleanUpBeforeClose() = 0;
166 
169  virtual void CleanUpAfterClose() = 0;
170 
173  virtual void SetDialogPanelID(const WidgetID panelID) = 0;
174 
177  virtual void DialogCancelled() = 0;
178 
179 
183  virtual void SetDeleteOnClose(bool16 deleteOnClose) = 0;
184 
187  virtual bool16 GetDeleteOnClose() const = 0;
188 
189  /* Internal Use */
190  virtual void PostDelayedWaitForDialog() const = 0;
191 
194  virtual void AddResizingGripperIcon() = 0;
195 };
196 
197 #endif