InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CusDtLnkUITreeTVWidgetMgr Class Reference
Inheritance diagram for CusDtLnkUITreeTVWidgetMgr:
CTreeViewWidgetMgrITreeViewWidgetMgrIPMUnknown

Public Member Functions

 CusDtLnkUITreeTVWidgetMgr (IPMUnknown *boss)
 
virtual ~CusDtLnkUITreeTVWidgetMgr ()
 
virtual IControlViewCreateWidgetForNode (const NodeID &node) const
 
virtual WidgetID GetWidgetTypeForNode (const NodeID &node) const
 
virtual bool16 ApplyNodeIDToWidget (const NodeID &node, IControlView *widget, int32 message=0) const
 
virtual PMReal GetIndentForNode (const NodeID &node) const
 
- Public Member Functions inherited from CTreeViewWidgetMgr
 CTreeViewWidgetMgr (IPMUnknown *boss)
 
 CTreeViewWidgetMgr (IPMUnknown *boss, int32 optionFlags)
 
virtual ~CTreeViewWidgetMgr ()
 
virtual PMReal GetNodeWidgetHeight (const NodeID &node) const
 
virtual PMReal GetNodeWidgetWidth (const NodeID &node) const
 
virtual void SetStyle (int32 styleIdentifier)
 
virtual int32 GetStyle () const
 
virtual void PreDeleteWidget (IControlView *widget)
 
Widget Factory and reuse
Widget placement
Widget Style - The tree view may have different looks, i.e. Large vs. Small palette rows
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Additional Inherited Members

- Public Types inherited from ITreeViewWidgetMgr
enum  { kDefaultIID = IID_ITREEVIEWWIDGETMGR }
 
- Protected Types inherited from CTreeViewWidgetMgr
enum  Options { kList = 0, kHierarchical = 1 }
 
- Protected Member Functions inherited from CTreeViewWidgetMgr
virtual bool16 ApplyDataToWidget (const NodeID &node, IPanelControlData *widgetList, int32 message=0) const
 
virtual void RegisterStyles ()
 
virtual void ApplyIndentToWidget (const NodeID &node, IPanelControlData *widgetList, int32 message=0) const
 
virtual PMReal GetBaseIndentOffset (IControlView *styleWidget) const
 
virtual PMReal GetTreeViewWidth () const
 
virtual void ApplyHighlightToWidget (const NodeID &node, IControlView *widget, int32 message=0) const
 
virtual PMReal GetIndent (const NodeID &node) const
 
virtual void RegisterStyleWidget (int32 style, RsrcID widgetRsrcID, PluginID pluginID)
 
virtual void HideExpanderIfNotExpandable (const NodeID &node, IPanelControlData *widgetList, int32 message=0) const
 
virtual void SetNodeName (IPanelControlData *widgetList, const PMString &name, WidgetID nameWidget=kTreeNodeNameWidgetID) const
 
virtual void SetNodeIcon (IPanelControlData *widgetList, RsrcID iconRsrc, PluginID pluginID=0, WidgetID iconWidget=kTreeNodeIconWidgetID) const
 
virtual bool16 IsOptionSet (Options option) const
 
virtual void SetSelectableDlgDrawNodeSeparatorOff (IControlView *widget) const
 

Detailed Description

Implements ITreeViewWidgetMgr, providing methods to create and describe the widgets for nodes in the tree. This interface is similar to a widget factory in that this is where you will create widgets for the nodes in the tree.

For further reading on ITreeViewWidgetMgr interface, see the Widgets chapter of the User Interface technote.

Constructor & Destructor Documentation

Binds the C implementation class onto its ImplementationID making the C code callable by the application * CusDtLnkUITreeTVWidgetMgr::CusDtLnkUITreeTVWidgetMgr (IPMUnknownboss)

Constructor

Parameters
bossobject on which this interface is being aggregated
virtual CusDtLnkUITreeTVWidgetMgr::~CusDtLnkUITreeTVWidgetMgr ()
inlinevirtual

Destructor

Member Function Documentation

bool16 CusDtLnkUITreeTVWidgetMgr::ApplyNodeIDToWidget (const NodeIDnode,
IControlViewwidget,
int32 message = 0 
) const
virtual

Determine how to render the given node to the specified control. Figure out how you're going to render it based on properties of the node such as whether is has children or not (don't show expander if no children, for instance).

Parameters
node[IN] refers to the node that we're trying to render
widget[IN] the control into which this node's appearance is going to be rendered
message[IN] specifies ???
Returns
kTrue if the node has been rendered successfully, kFalse otherwise

Reimplemented from CTreeViewWidgetMgr.

IControlView * CusDtLnkUITreeTVWidgetMgr::CreateWidgetForNode (const NodeIDnode) const
virtual

Create instance of the widget that represents given node in the tree.

Parameters
node[IN] specifies node of interest
Returns
return reference to a newly instantiated object that is suitable for this node

Reimplemented from CTreeViewWidgetMgr.

PMReal CusDtLnkUITreeTVWidgetMgr::GetIndentForNode (const NodeIDnode) const
virtual

Given a particular node, how far should it be indented? This method returns a value in pixels that is used to indent the displayed node from the left edge of the tree-view control.

Parameters
node[IN] specifies node of interest
Returns
an indent for this particular node from the left edge of tree-view

Reimplemented from CTreeViewWidgetMgr.

WidgetID CusDtLnkUITreeTVWidgetMgr::GetWidgetTypeForNode (const NodeIDnode) const
virtual

Retrieve ID of a widget that has the right appearance for the node that you're trying to display. Here we use the same widget types for all the nodes, but vary the appearance by showing or hiding the expander widget depending on the number of children associated with a node.

Parameters
node[IN] specifies node of interest
Returns
the ID of a widget that has the correct appearance for the given node type

Reimplemented from CTreeViewWidgetMgr.