Rhino C++ API  8.14
Classes | Public Member Functions | Protected Member Functions | List of all members
IRhRdkTaskOrigin Class Referenceabstract

#include <RhRdkTask.h>

Classes

class  IRequestHandler
 

Public Member Functions

virtual void AcceptNewContent (const CRhRdkContentArray &aContent) const =0
 
virtual CRhRdkContentKindList AllowedKinds (void) const =0
 
virtual const wchar_t * ChildSlotName (void) const =0
 
virtual RhRdkUserControl Control (void) const =0
 
virtual CRhRdkControllerPtr Controller (void) const =0
 
virtual void DeleteThis (void)=0
 
virtual void * EVF (const wchar_t *wszFunc, void *pvData)=0
 
virtual void GetNewContent (OUT CRhRdkContentArray &aContent) const =0
 
virtual int GetSelectedCount (void) const =0
 
virtual void GetSelection (OUT CRhRdkContentArray &aContent, bool bForModify=false) const =0
 
virtual void GetSelectionImpl (CRhRdkContentArray &aContentOut) const =0
 
virtual int GetState (void) const =0
 
virtual bool IsAmbivalent (void) const =0
 
virtual void OnBeginAskUserSure (const UUID &uuidTask) const =0
 
virtual void OnEndAskUserSure (const UUID &uuidTask, RhRdkMbResult) const =0
 
virtual_su CRhRdkContentParent (void) const
 
virtual const class CRhRdkPreviewAppearance * PreviewAppearance (void) const =0
 
virtual bool ReplacingSelection (void) const =0
 
virtual bool SendTaskRequestExecute (const UUID &uuidTask) const =0
 
virtual void SendTaskRequestUpdate (const UUID &uuidTask, IRhRdkTaskUpdate &tu) const =0
 
virtual bool SupportsTask (const CRhRdkTask &t) const =0
 
virtual CRhRdkContent::Kinds TopLevelKind (void) const =0
 

Protected Member Functions

virtual ~IRhRdkTaskOrigin ()
 

Detailed Description

A task origin represents the place in the UI where the user clicked to invoke a menu or other UI that displays tasks.

Constructor & Destructor Documentation

◆ ~IRhRdkTaskOrigin()

virtual IRhRdkTaskOrigin::~IRhRdkTaskOrigin ( )
inlineprotectedvirtual

Member Function Documentation

◆ AcceptNewContent()

virtual void IRhRdkTaskOrigin::AcceptNewContent ( const CRhRdkContentArray aContent) const
pure virtual

Some tasks create new contents. When that happens, this method is called with the content array. The task origin temporarily stores the pointers so that the originating UI can examine them.

◆ AllowedKinds()

virtual CRhRdkContentKindList IRhRdkTaskOrigin::AllowedKinds ( void  ) const
pure virtual

Gets the allowed kinds for creating new contents.

◆ ChildSlotName()

virtual const wchar_t* IRhRdkTaskOrigin::ChildSlotName ( void  ) const
pure virtual
Returns
the child slot name. If the task origin is not a sub-node, returns null.

◆ Control()

virtual RhRdkUserControl IRhRdkTaskOrigin::Control ( void  ) const
pure virtual
Returns
the control type that was clicked on.

◆ Controller()

virtual CRhRdkControllerPtr IRhRdkTaskOrigin::Controller ( void  ) const
pure virtual
Returns
The controller of the control that the user is interacting with.

◆ DeleteThis()

virtual void IRhRdkTaskOrigin::DeleteThis ( void  )
pure virtual

This method is implemented as

delete this;

◆ EVF()

virtual void* IRhRdkTaskOrigin::EVF ( const wchar_t *  wszFunc,
void *  pvData 
)
pure virtual

Emergency virtual function for future expansion.

◆ GetNewContent()

virtual void IRhRdkTaskOrigin::GetNewContent ( OUT CRhRdkContentArray aContent) const
pure virtual

Gets the array of contents stored by AcceptNewContent().

◆ GetSelectedCount()

virtual int IRhRdkTaskOrigin::GetSelectedCount ( void  ) const
pure virtual

Gets the number of selected contents.

◆ GetSelection()

virtual void IRhRdkTaskOrigin::GetSelection ( OUT CRhRdkContentArray aContent,
bool  bForModify = false 
) const
pure virtual

Get the contents that have been selected by the user.

Parameters
aContentaccepts the selected contents.
bForModifyindicates if the operation is planning to modify the contents.

◆ GetSelectionImpl()

virtual void IRhRdkTaskOrigin::GetSelectionImpl ( CRhRdkContentArray aContentOut) const
pure virtual

Gets the contents that have been selected by the user.

Parameters
aContentOutaccepts the selected contents.

◆ GetState()

virtual int IRhRdkTaskOrigin::GetState ( void  ) const
pure virtual

TODO: Docs

◆ IsAmbivalent()

virtual bool IRhRdkTaskOrigin::IsAmbivalent ( void  ) const
pure virtual

An origin is 'ambivalent' when it wants to show tasks for both top-level and child contents on the same menu. This is a special quirk of the spanner menu.

◆ OnBeginAskUserSure()

virtual void IRhRdkTaskOrigin::OnBeginAskUserSure ( const UUID &  uuidTask) const
pure virtual

TODO: Docs

◆ OnEndAskUserSure()

virtual void IRhRdkTaskOrigin::OnEndAskUserSure ( const UUID &  uuidTask,
RhRdkMbResult   
) const
pure virtual

TODO: Docs

◆ Parent()

virtual_su CRhRdkContent* IRhRdkTaskOrigin::Parent ( void  ) const
Returns
the parent. If the task origin is not a sub-node, returns null.

◆ PreviewAppearance()

virtual const class CRhRdkPreviewAppearance* IRhRdkTaskOrigin::PreviewAppearance ( void  ) const
pure virtual

Gets the preview appearance if the origin is a thumbnail list.

◆ ReplacingSelection()

virtual bool IRhRdkTaskOrigin::ReplacingSelection ( void  ) const
pure virtual
Returns
true if tasks can replace the selected content.

◆ SendTaskRequestExecute()

virtual bool IRhRdkTaskOrigin::SendTaskRequestExecute ( const UUID &  uuidTask) const
pure virtual

Send a task-execute request to the UI that created this task origin. This enables the UI to execute tasks that are UI-bound.

◆ SendTaskRequestUpdate()

virtual void IRhRdkTaskOrigin::SendTaskRequestUpdate ( const UUID &  uuidTask,
IRhRdkTaskUpdate tu 
) const
pure virtual

Send a task-update request to the UI that created this task origin. This enables the UI to update tasks that are UI-bound.

◆ SupportsTask()

virtual bool IRhRdkTaskOrigin::SupportsTask ( const CRhRdkTask t) const
pure virtual
Returns
true if the origin supports the execution of a particular task.

◆ TopLevelKind()

virtual CRhRdkContent::Kinds IRhRdkTaskOrigin::TopLevelKind ( void  ) const
pure virtual

Gets the kind of top-level content in the UI. Note that this is not necessarily the same kind as the editor is displaying. For example, the Textures panel displays textures but the top-level kind of a particular texture could be a material.