InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IPanelMgr.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Dave Burnard
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 __IPanelMgr__
25 #define __IPanelMgr__
26 
27 #include "PMTypes.h"
28 #include "PMString.h"
29 #include "ShuksanID.h"
30 #include "AppUIID.h"
31 
32 #include "PaletteRef.h"
33 
34 class IResourceAccess;
35 class IControlView;
36 
37 //========================================================================================
38 // CLASS IPanelMgr
39 //========================================================================================
40 
48 class IPanelMgr : public IPMUnknown
49 {
50  public:
51  enum { kDefaultIID = IID_IPANELMGR };
52 
53  virtual void Startup() = 0;
54  virtual void ShutDown() = 0;
55 
61  virtual void UpdatePanelIcon(const WidgetID& widgetId, PluginID pluginId = kInvalidPlugin, RsrcID resourceId = kInvalidRsrcID) = 0;
62 
70  virtual IControlView* CreatePanel(const PMLocaleId& localeId, RsrcID panelID, const PluginID& pluginID) = 0;
71 
85  // similar to old AdoptPanel
86  virtual void RegisterPanel(PaletteRefType paletteType, IControlView* panel, bool16 isResizable, const PMString& panelName, ActionID actionID, const PMString& altMenu, PMReal altPos, const ScriptID& scriptID, PluginID paletteIconPluginID, RsrcID paletteIconRsrcID) = 0;
87 
88 
94  virtual void MovePanel(PaletteRef parentPalette, IControlView* panel) = 0;
95 
96 
102  virtual void DestroyPanel(const UID& panelUID) = 0;
103 
111  virtual IControlView* GetPanelFromWidgetID(const WidgetID& widgetId) const = 0;
112  virtual IControlView* GetPanelFromActionID(const ActionID& actionId) const = 0;
113 
122  virtual IControlView* GetVisiblePanel(const WidgetID& widgetId) const = 0;
123  virtual IControlView* GetVisiblePanelFromActionID(const ActionID& actionId) const = 0;
124 
130  virtual bool16 DoesPanelExist(const WidgetID& widgetId) const = 0;
131  virtual bool16 DoesPanelExistFromActionID(const ActionID& actionId) const = 0;
132 
138  virtual void ShowPanelByMenuID(const ActionID& id, bool16 giveKeyFocus = kTrue) = 0;
144  virtual void ShowPanelByWidgetID(const WidgetID& widgetId, bool16 giveKeyFocus = kTrue) = 0;
145 
146 
150  virtual void HidePanelByMenuID(const ActionID& id) = 0;
154  virtual void HidePanelByWidgetID(const WidgetID& widgetId) = 0;
155 
163  virtual bool16 IsPanelWithMenuIDShown(const ActionID& id) const = 0;
164  virtual bool16 IsPanelWithWidgetIDShown(const WidgetID& widgetId) const = 0;
165 
171  virtual void ArePanelsWithMenuIDMostlyVisible(const K2Vector<ActionID> & inActionList, K2Vector<bool16>& outMostlyVisibleList) const = 0;
177  virtual bool16 IsPanelWithMenuIDMostlyVisible(const ActionID& id) const = 0;
178 
179 #ifdef ID_DEPRECATED
180 
186  virtual PMString GetPanelName(const ActionID& id) const {return GetPanelMenuName(id);} //Deprecated.
187 #endif
188 
190  virtual PMString GetPanelMenuName(const ActionID& id) const = 0;
191  virtual void SetPanelMenuName(const ActionID& id, const PMString& menustr) = 0;
192 
194  virtual IControlView* GetPanelFromPaletteContainer(PaletteRef palette) const = 0;
195 
200  virtual PaletteRef GetPaletteRefContainingPanel( const IPMUnknown* panel ) const = 0;
201 
203  virtual uint32 GetPanelCount() const = 0;
204  virtual bool16 GetNthPanelInfo(uint32 index, UID& panelUID, ActionID* actionID = nil, WidgetID* widgetID = nil, PMString* panelName = nil, ScriptID* scriptID = nil) const = 0;
205 
211  virtual void SetPanelResizabilityByWidgetID(const WidgetID& widgetId, bool16 isResizable) = 0;
212 
217  virtual bool16 IsPanelWithWidgetIDResizable(const WidgetID& widgetId) const = 0;
218 
221  virtual void FitPaletteToPanel(const IControlView* panel) = 0;
222 
225  virtual void FixupPanelOrigin(IControlView* panel, PaletteRef parentPalette) const = 0;
226 
231  virtual void SetPanelPopupMenuName( IControlView* panel, const PMString& popupMenuName ) = 0 ;
232 
237  virtual PMString GetPanelPopupMenuName( IControlView* panel ) const = 0 ;
238  #ifdef MACINTOSH
239 
243  virtual void AddViewForRedrawingWhileAMenuIsOpen(IControlView* view) = 0;
244  virtual void RemoveViewForRedrawingWhileAMenuIsOpen(IControlView* view) = 0;
245  #endif
246  virtual IControlView* GetPanelFromPanelName(const PMString& panelName) const = 0;
247 
251  virtual void UsageTracking_PanelClosed(const PaletteRef& paletteRef) const = 0;
252 
256  virtual void LogPanelUsage() const = 0;
257 
263  virtual void ShowPanelByExtensionID(const PMString& extensionId, const PMString& panelId, bool16 giveKeyFocus = kTrue) = 0;
264 
265 };
266 
267 #endif