HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
OP3D_InputSelector Class Referenceabstract

#include <OP3D_InputSelector.h>

+ Inheritance diagram for OP3D_InputSelector:

Classes

class  DirtySelectionScope
 
class  InfoKey
 

Public Types

using LocateFilter = std::function< bool(DM_Viewport *)>
 
using HeldHotkeyCacheUPtr = UT_UniquePtr< DM_HeldHotkeyCache >
 
- Public Types inherited from OP3D_InputSelectorBase
typedef UT_IntrusivePtr< Proxy > ProxyHandle
 
typedef UT_IntrusivePtr< const
Proxy > 
ConstProxyHandle
 

Public Member Functions

 OP3D_InputSelector (OP3D_View &viewer, PI_SelectorTemplate &templ)
 
 ~OP3D_InputSelector () override
 
const char * className () const override
 
int hasLocates () const override
 
int handleMouseEvent (UI_Event *event) override
 
bool handleDoubleClickEvent (UI_Event *event) override
 
void getKeyResolveInfo (UI_KeyResolveInfo &info) override
 
int handleKeyEvent (int key, UI_Event *event, DM_Viewport &viewport) override
 
bool handleTransitoryKey (const UI_Event &event, int hotkey_id) override
 
bool willHandleKeyEvent (int key, UI_Event *event)
 
bool inputRequired () const
 
void setInputRequired (bool onoff)
 
bool useAsteriskToSelectAll () const
 
void setUseAsteriskToSelectAll (bool onoff)
 
void setUsePrimsInEdgeSelections (bool use_prims)
 
void setAllowEdgeRingSelection (bool allow)
 
void setOffsetVertexMarkersOverride (bool offset)
 
GEO_PrimTypeCompat::TypeMask primMask () const override
 
void setPrimMask (GEO_PrimTypeCompat::TypeMask primmask)
 
void setSloppyPick (bool on)
 
bool getSloppyPick () const
 
bool restrictSloppyAllowedTypesToSubset (const PI_GeometryTypeArray &types)
 
void setPickAtObjLevel (bool flag)
 
bool getPickAtObjLevel () const
 
void startSelecting () override
 
void stopSelecting () override
 
void restartWithStashedSelection ()
 
void commitViewportPreSelection (UI_Event *event, GU_SelectionRule sel_rule) override
 
void getSelectableLooks (GUI_DetailList &looklist) override
 
bool addCookedSelection (SOP_Node *sop)
 
void nodeIdForReselecting (int node_id)
 
virtual void clearSelections ()
 
virtual void consumeSelections ()
 
void removeSelectionsFromDetailLooks ()
 
void setViewer (BM_View *viewer) override
 
void setSelectionUIValues (UI_Value *sel_type, UI_Value *sel_rule, UI_Value *sel_style, UI_Value *sel_visible, UI_Value *sel_contained, UI_Value *sel_full, UI_Value *locate_always, UI_Value *finished, UI_Value *located=nullptr)
 
void setCreatorStateName (const char *state_name)
 
const UT_StringcreatorStateName ()
 
void setAllowDragSelect (bool allow_drag)
 
void setSelectFullGeometry (bool select_full)
 
void setUseExistingSelection (bool use_existing)
 
bool useExistingSelection () const
 
void setUseExistingTempSelection (bool use_existing)
 
bool useExistingTempSelection () const
 
void setUseExistingCookSelection (bool use_existing)
 
bool useExistingCookSelection () const
 
void setStashSelectionOnFinish (bool stash)
 
bool getStashSelectionOnFinish () const
 
void setAllowMultiPickLoopStart (bool allow)
 
void setInitialSelection (const char *op_path, GA_GroupType type, const char *selection_string)
 
void setSaveUndos (bool yesno)
 
bool saveUndos () const
 
bool connectOps (OP_Node &new_node, int op_input_index, const UT_String &input_parm, int *menu_idx=0, bool branch_off=false, bool multi_input=false, bool force_selection_string=false, bool force_numeric=false, const UT_IntArray *prev_input_nodes=0)
 
void addSelectedInfo (int info_i, bool set_pick_order=true)
 Some convenience methods for managing mySelectedInfoIndices. More...
 
void removeSelectedInfo (int info_i)
 
int updateSelection (const char *path, OP_Node *node, GUI_DetailLook *look, int geo_idx, GU_SelectionHandle selection, const GU_Detail &gdp)
 
UT_StringArray selectedOpPaths () const
 
OP3D_SelectionHandles selectedSelections () const
 
OP3D_SelectionHandles selectedAutoConvertedSelections () const
 
GU_SelectionHandle selectionFromOpPath (UT_StringRef path, bool only_selected=true) const
 
GU_SelectionHandle selectionFromInfoKey (const InfoKey &key, bool only_selected=true) const
 
bool hasNonEmptySelection () const
 
GU_SelectionHandle getOrCreateSelection (int node_id, int detail_index, int &info_i, GU_SelectionHandle &new_selection, GA_GroupType sel_type)
 
GU_SelectionHandle getExistingSelection (int node_id, int detail_index, int &info_i, GA_GroupType sel_type)
 
const UT_StringcurrentPrompt () const
 
UT_StringcurrentPrompt ()
 
const UT_StringdefaultPrompt () const
 
UT_StringdefaultPrompt ()
 
void selectorFinished (bool drag=false)
 
void setUndoWorker (OP3D_InputSelectorUndoWorker *worker=0)
 
OP3D_InputSelectorUndoWorker * getDefaultUndoWorker ()
 
UI_Menu * getSelectorMenu () const override
 
UI_Menu * getSelectorHotkeyMenu () const override
 
void setValidForPickFilter (void *data, OP3D_ValidForPickFilter filter)
 
void setGeometryType (PI_GeometryType geo_type, bool update_buttons)
 
GA_GroupType selectionType () const
 
PI_GeometryType getGeometryTypeAtFinish () const
 
int getGroupTypeMenuValAtFinish () const
 
bool getKeepOriginalObjects () const
 
bool currentlyUpdatingGeometryTypeButtons () const
 
const PI_GeometryTypeArraygetSelectionAllowedTypes () const
 
void setSelectionAllowedTypes (const PI_GeometryTypeArray &allowedtypes)
 
PI_GeometryType getNextBestAllowedType (PI_GeometryType disallowed_type) const
 
PI_GeometryType mapToAllowedType (PI_GeometryType type, PI_GeometryType failure_type=PI_GEOTYPE_INVALID) const
 
void generateAllSelectionStrings (UT_String &sel_string, bool only_one_gdp, bool force_numeric, bool consume_selections) override
 
bool getPostMergeLoopStart (GR_PickRecord &pick)
 
void bootstrapLoopStart (const char *path, const GR_PickRecord &pick, bool only_selected_path)
 
void scriptReplaceSelection (PI_GeometryType geo_type, const UT_StringArray &paths, OP3D_SelectionHandles &selections)
 
bool getStateParmNames (UT_StringArray &ret, const char *prefix=nullptr) override
 
bool evalStateParm (const char *name, UT_StringHolder &ret) override
 
bool setStateParm (const char *name, const UT_StringHolder &val) override
 
bool pressStateButton (const char *name) override
 
void doRender (RE_Render *r, int x, int y, int ghost) override
 
void setLocateFilter (LocateFilter filter)
 
HeldHotkeyCacheUPtrgetHeldHotkeyCache ()
 
- Public Member Functions inherited from OP3D_InputSelectorBase
 OP3D_InputSelectorBase (OP3D_View &viewer, PI_SelectorTemplate &templ)
 
 ~OP3D_InputSelectorBase () override
 
void setViewer (BM_View *viewer) override
 
void startSelecting () override
 
void stopSelecting () override
 
void doRender (RE_Render *r, int x, int y, int ghost) override
 
UI_ValuefinishedValue ()
 
const UI_ValuefinishedValue () const
 
UI_Feel * getCustomToolbox () const override
 
void setPreferredSelectMode (DM_SelectMode selmode)
 
DM_SelectMode getPreferredSelectMode () const
 
bool allowDragging () const
 
void setAllowDragging (bool on)
 
bool allowFinishing () const
 
void setAllowFinishing (bool allow_finishing)
 
bool allowFinishWithExistingSelection () const
 
void setAllowFinishWithExistingSelection (bool allow)
 
bool allowQuickSelect () const
 
void setAllowQuickSelect (bool on)
 
bool allowEmptyQuickSelect () const
 
void setAllowEmptyQuickSelect (bool on)
 
void setPriorSelections (const UT_StringArray &paths, const UT_StringArray &ids, const OP3D_SelectionHandles &selections)
 
bool justDisplayedOp () const
 
void setJustDisplayedOp (bool on)
 
int handleMouseWheelEvent (UI_Event *event) override
 
bool handleTransitoryKey (const UI_Event &event, int hotkey_id) override
 
const char * cursor () const override
 
void handleSelectionStyleChange (UI_Event *event)
 
bool getStateParmNames (UT_StringArray &ret, const char *prefix=nullptr) override
 
bool evalStateParm (const char *name, UT_StringHolder &ret) override
 
bool setStateParm (const char *name, const UT_StringHolder &val) override
 
bool pressStateButton (const char *name) override
 
bool canSelectDrawables () const override
 
void enableDrawableSelection (bool select_drawables)
 
void setDrawableMask (UT_StringArray const &drawable_mask)
 
bool isValid () const
 Returns true if the proxy is still pointing to a valid selector. More...
 
void intrusive_ptr_release () const
 
- Public Member Functions inherited from DM_InputSelector
 DM_InputSelector (BM_View &viewer, PI_SelectorTemplate &templ)
 
 ~DM_InputSelector () override
 
- Public Member Functions inherited from BM_InputSelector
 BM_InputSelector (BM_View &viewer, PI_SelectorTemplate &templ)
 
 ~BM_InputSelector () override
 
virtual void handleNodeDeleted (OP_Node &node)
 
PI_SelectorTemplategetTemplate ()
 
const PI_SelectorTemplategetTemplate () const
 
virtual void overlayRender (RE_Render *r, int x, int y)
 
void initializeUI ()
 
- Public Member Functions inherited from AP_Interface
 AP_Interface ()
 
 AP_Interface (const char *myname, const char *const *names, UI_EventMethod const *methods)
 
 ~AP_Interface () override
 
const char * className () const override
 
const UT_StringgetName () const
 Return the name passed in the constructor. More...
 
void wireInterface (UI_Manager *uims)
 
void unwireInterface (UI_Manager *uims)
 
bool readUIFile (const char *ui_filename, bool quiet=false)
 
bool readPreferenceFile (const char *pref_filename, bool quiet=false)
 
void setValueSymbol (const char *symbol, UI_Value *value, bool warn=true)
 
UI_ValuefindValueSymbol (const char *symbol) const
 Find the UI_Value for the given named value symbol. More...
 
UI_ValuegetValueSymbol (const char *symbol, int create=1)
 
int getValueSymbols (UT_StringArray &symbols, UT_Array< UI_Value * > &values) const
 
void setObjectSymbol (const char *symbol, UI_Object *who, int warn=1)
 
UI_ObjectgetObjectSymbol (const char *symbol) const
 
UI_Feel * getFeelSymbol (const char *symbol) const
 
UI_Feel * findValueFeel (UI_Value *value) const
 
int getFeelSymbols (UT_StringArray &symbols, UT_Array< UI_Feel * > &feels) const
 
void setKeyDelegateSymbol (const char *symbol, UI_KeyDelegateSPtr delegate, bool warn=true)
 
bool hasKeyDelegateSymbol (const char *symbol) const
 Returns whether the current key delegate symbol is defined. More...
 
UI_KeyDelegateSPtr findKeyDelegateSymbol (const char *symbol) const
 Find the UI_KeyDelegate for the given named key delegate symbol. More...
 
UI_KeyDelegateSPtr getKeyDelegateSymbol (const char *symbol, int create=1)
 
void removeObjectSymbol (const char *symbol)
 Delete the entry for the given object symbol name. More...
 
void removeValueSymbol (const char *symbol)
 Delete the entry for the given value symbol name. More...
 
template<typename T >
TfindObject (const char *name) const
 
template<typename T >
TfindValue (const char *name) const
 
virtual void outputUsage (int argc, const char **argv) const
 
void resetApplication ()
 
void handleEvent (UI_Event *event) override
 
virtual int saveAppData (const char *filename)
 
virtual int loadAppState ()
 
virtual int saveAppState ()
 
virtual void saveOnCoreDump ()
 
virtual bool getCoreDumpFileName (UT_WorkBuffer &name)
 
bool loadUIInitPrefs ()
 
void saveUIInitPrefs (const char *layout_level, fpreal uiscale, int playbarui)
 
bool restoreUIInitPrefs ()
 
bool getFunctionKeyScript (int key, UI_Event *event, UT_String &script)
 
void setKeyBindingProxySrc (const char *symbol, UI_Feel *src, bool warn=true)
 
void addKeyBindingProxyRef (const char *symbol, UI_Feel *ref, bool warn=true)
 
- Public Member Functions inherited from UI_Object
 UI_Object ()
 
virtual ~UI_Object ()
 
 UI_Object (const UI_Object &)=delete
 
UI_Objectoperator= (const UI_Object &)=delete
 
virtual int interestingEvent (UI_EventType t, UI_DeviceEvent *event) const
 
virtual void deleteReferences (UI_Object *to_whom)
 
UI_ObjectgetParent () const
 
void setParent (UI_Object *p)
 
bool isAncestor (const UI_Object *who) const
 
void addDependent (UI_Object *who)
 
bool removeDependent (UI_Object *who)
 
bool replaceDependent (UI_Object *who, UI_Object *with)
 
bool isDependent (UI_Object *who) const
 
bool hasDependents () const
 
const UI_ObjectListdependents () const
 
void sendEvent (const UI_Event &e) const
 
void distributeEvent (UI_Event *event, int upwards)
 
void relayEvent (UI_Event *event, UI_Object *target)
 
void generateEvent (UI_EventType t, UI_Object *target)
 
void purgeEvents (UI_EventType t, UI_Object *target, UI_EventMethod method=0)
 
void triggerImmediateEvent (UI_Event *event, int upwards)
 
int getProxyId ()
 
void bumpQueueCount (int dir)
 
void setName (const char *symbolName)
 
const char * getName () const
 
void buildFullPath (UT_WorkBuffer &string) const
 
void debugQueueEventsFor (const UI_Value *value, const char *name, UI_EventType t=UI_EVENT_NO_EVENT) const
 
const UI_ValueListvalueInterests () const
 
void interestedInValue (UI_Value *)
 
void removeValueInterest (UI_Value *)
 
void addKeyDelegateClientship (UI_KeyDelegate *)
 
void removeKeyDelegateClientship (UI_KeyDelegate *)
 

Static Public Member Functions

static SOP_NodecreateObjectMerge (OP_Network *network, UT_String &path, GU_SelectionHandle selection, const UT_String &creator_state_name, bool keep_original_objects, bool display_origina_objects)
 
static void generateMergedSelectionString (UT_String &sel_string, UT_StringArray &paths, OP3D_SelectionHandles &selections, bool ordered, bool collapse, bool use_ast_to_select_all, bool force_numeric)
 
static bool createSelectionFromObjects (const OP_NodeList &objects, DM_Viewport &viewport, PI_GeometryType geo_type, UT_StringArray &paths, OP3D_SelectionHandles &selections)
 
- Static Public Member Functions inherited from OP3D_InputSelectorBase
static bool getPickingMenuOn ()
 
static void setPickingMenuOn (bool val)
 
static bool getAllowUseExistingSelection ()
 
static void setAllowUseExistingSelection (bool val)
 
static bool getSelectFullLoops ()
 
static void setSelectFullLoops (bool val)
 
static GU_ConstDetailHandle getGeometryFromPath (const char *path)
 
static OP_NodegetNodeFromPath (const char *path)
 
static const SIM_ObjectgetSimObjectFromPath (const char *path)
 
static const SIM_DatagetSimModifierFromPath (const char *path)
 
static const char * getFloodFillSelectionHotkeyStringRef (UT_WorkBuffer &buffer)
 
static const char * getLoopSelectionHotkeyStringRef (UT_WorkBuffer &buffer)
 
static bool isTransitoryLoopSelectionHotkey (const UI_DeviceEvent &state, int hotkey_id=0)
 
static bool isTransitoryLoopSelectionHotkeyPressed (DM_Viewport *viewport, UT_UniquePtr< DM_HeldHotkeyCache > &cache)
 
static void showLoopSelectionMessage (DM_Workbench &workbench)
 
static void showSelectionHintsMessage (DM_Workbench &workbench)
 
- Static Public Member Functions inherited from AP_Interface
static FILE * createPreferenceFile (const char *filename)
 
static int mapStrToInt (const char *label, const std::pair< const char *, int > *map)
 
static const char * mapIntToStr (int index, const std::pair< const char *, int > *map)
 
static void setAppExitCode (int exit_code)
 
static int getAppExitCode ()
 
static bool isAppExiting ()
 Returns true if the application is exiting. More...
 
static const char * getStartupDesktop ()
 
- Static Public Member Functions inherited from UI_Object
static UI_ManagergetManager ()
 
static UI_Queue * getInputQueue ()
 
static int keycmp (const char *, int key)
 
static int keycmp (const char *, int key, const UI_HotkeyEcho &)
 
static void keyEcho (const char *, const UI_HotkeyEcho &)
 
static void actionKeyEcho (const char *, const char *custom_suffix=0)
 
static void toggleKeyEcho (const char *, bool new_value)
 

Protected Member Functions

virtual void handleSelectionTypeChange (UI_Event *event)
 
virtual void updateGroupMenuValue (PI_GeometryType geo_type, int &group_menu_type)=0
 
virtual void addToSelection (UI_Event *event, const char *path, GU_SelectionHandle sel, GU_SelectResult &added_geo)
 
virtual bool handleNoPick (UI_Event *event)
 
virtual void appendToLastNode (SOP_Node *&, const UT_String &, bool)
 
virtual void generateAdditionalInputNodes (SOP_Node &, SOP_Node *, const UT_String &, const UT_String &)
 
virtual void setNodeParameters (OP_Node &)
 
int singlePickMask (GU_SelectionRule sel_rule) const
 
int areaPickMask (GU_SelectionRule sel_rule) const
 
int displayPickMask () const
 
void overrideSelectionValues (int sel_type, int sel_rule, int sel_style, int sel_full, int locate)
 
void restoreSelectionValues ()
 
void saveForUndo () override
 
bool getPickName (const OP3D_PickId &pickid, UT_String &name, bool descriptivename) const override
 
bool needObjectPick () const override
 
bool emptySelections (const char *path_to_skip=0, bool refresh=true)
 
void dirtySelection (SOP_Node *sop_node, DirtySelectionScope *scope)
 
void dirtySelection (const GUI_DetailLook &geo_look, int geo_idx, DirtySelectionScope *scope)
 
void dirtySelection (const OP3D_SelectionInfo &sel_info, DirtySelectionScope *scope)
 
void clearSelectionInfos ()
 
void clearSelectedInfoIndices ()
 
int computeNextPickOrder (GA_GroupType sel_type) const
 
int findInfo (int node_id, int detail_index) const
 
int findInfo (const char *path) const
 
- Protected Member Functions inherited from OP3D_InputSelectorBase
OP3D_View & viewer ()
 
const OP3D_View & viewer () const
 
DM_Workbench & workbench ()
 
const DM_Workbench & workbench () const
 
void setFinishedValuePtr (UI_Value *new_value)
 
UI_ValuegetFinishedValuePtr () const
 
void setLocatedValuePtr (UI_Value *new_value)
 
UI_ValuegetLocatedValuePtr () const
 
void setSelectionStylePtr (UI_Value *new_value)
 
UI_ValuegetSelectionStylePtr () const
 
DM_SelectionStyle selectionStyle () const
 
void setVisiblePickPtr (UI_Value *new_value)
 
UI_ValuegetVisiblePickPtr () const
 
bool getVisiblePick () const
 
void setContainedPickPtr (UI_Value *new_value)
 
UI_ValuegetContainedPickPtr () const
 
bool getContainedPick () const
 
void setSelectionRulePtr (UI_Value *new_value)
 
UI_ValuegetSelectionRulePtr () const
 
GU_SelectionRule selectionRule () const
 
void selectionRule (GU_SelectionRule srule)
 
SI_Brush * getPickBrushPtr () const
 
SI_Brush * getPickLaserPtr () const
 
SI_Lasso * getPickLassoPtr () const
 
bool isDragSelectActive () const
 
bool selectModeMatchesTemplateType ()
 
bool pickChosenOp (UT_Array< GR_PickRecord > &pick_records, bool *changed=nullptr)
 
GU_ConstDetailHandle getGeometryFromPickRecord (const GR_PickRecord &pick, GUI_DetailLook **detail_look=nullptr)
 
virtual OP_NodeswitchToChosenOp (OP_Node *parent, bool *changed=nullptr)
 
void enablePicker (UI_Event *event)
 
void disablePicker ()
 
void disableActivePicking ()
 
bool isActivePicking () const
 
bool visibleSelectToggle (UI_Event *event, const char *echo_hotkey)
 
bool containedSelectToggle (UI_Event *event, const char *echo_hotkey)
 
const UT_StringArraydrawableMask () const override
 
void onLocateDrawableSelection () override
 
unsigned drawablePickMask (unsigned pick_mask) const
 
bool filterDrawable (const char *drawable_name) const
 
ProxyHandle getProxy ()
 
ConstProxyHandle getProxy () const
 
- Protected Member Functions inherited from BM_InputSelector
BM_View & baseViewer ()
 
const BM_View & baseViewer () const
 
void initApplication (UI_Manager *, int, const char **) override
 
- Protected Member Functions inherited from AP_Interface
UI_NamedValueMapgetValueTable () const
 
UI_NamedObjectMapgetObjectTable () const
 
void processKeyBindingProxyRequests ()
 
- Protected Member Functions inherited from UI_Object
UI_ObjectListdependents ()
 
virtual void preTerminateCallback ()
 

Friends

class OP3D_InputSelectorUndo
 

Additional Inherited Members

- Static Public Attributes inherited from AP_Interface
static const std::pair< const
char *, int
theFileChooserStyleMap []
 Menu items and their mapping for file chooser style preference. More...
 
- Static Protected Member Functions inherited from OP3D_InputSelectorBase
static fpreal getTime ()
 
- Static Protected Member Functions inherited from AP_Interface
static void setTheMainApplication (AP_Interface *app)
 
static AP_InterfacegetMainApplication ()
 
static void clearTheMainApplication ()
 
static void loadWindowGeometry (UI_Window *window, bool default_maximized, bool use_pref)
 
static bool getWindowGeometry (int &width, int &height, int &left, int &bottom, bool &maximized, bool use_pref)
 
static bool getSaveWindowGeoPref ()
 
static void saveWindowGeoPref ()
 
static bool loadWindowGeoPref (int &w, int &h, int &left, int &bottom, bool &maximized)
 
- Protected Attributes inherited from AP_Interface
UT_String myName
 
const char *const * myValueNames
 
UI_EventMethod const * myMethods
 

Detailed Description

Definition at line 94 of file OP3D_InputSelector.h.

Member Typedef Documentation

Definition at line 566 of file OP3D_InputSelector.h.

using OP3D_InputSelector::LocateFilter = std::function<bool(DM_Viewport *)>

Definition at line 562 of file OP3D_InputSelector.h.

Constructor & Destructor Documentation

OP3D_InputSelector::OP3D_InputSelector ( OP3D_View &  viewer,
PI_SelectorTemplate templ 
)
OP3D_InputSelector::~OP3D_InputSelector ( )
override

Member Function Documentation

bool OP3D_InputSelector::addCookedSelection ( SOP_Node sop)
void OP3D_InputSelector::addSelectedInfo ( int  info_i,
bool  set_pick_order = true 
)

Some convenience methods for managing mySelectedInfoIndices.

virtual void OP3D_InputSelector::addToSelection ( UI_Event event,
const char *  path,
GU_SelectionHandle  sel,
GU_SelectResult added_geo 
)
inlineprotectedvirtual

Definition at line 581 of file OP3D_InputSelector.h.

virtual void OP3D_InputSelector::appendToLastNode ( SOP_Node *&  ,
const UT_String ,
bool   
)
inlineprotectedvirtual

Definition at line 593 of file OP3D_InputSelector.h.

int OP3D_InputSelector::areaPickMask ( GU_SelectionRule  sel_rule) const
protected
void OP3D_InputSelector::bootstrapLoopStart ( const char *  path,
const GR_PickRecord pick,
bool  only_selected_path 
)
const char* OP3D_InputSelector::className ( ) const
overridevirtual

Reimplemented from DM_InputSelector.

Reimplemented in HDK_Sample::MSS_BrushHairLenSelector.

void OP3D_InputSelector::clearSelectedInfoIndices ( )
protected
void OP3D_InputSelector::clearSelectionInfos ( )
protected
virtual void OP3D_InputSelector::clearSelections ( )
virtual
void OP3D_InputSelector::commitViewportPreSelection ( UI_Event event,
GU_SelectionRule  sel_rule 
)
overridevirtual

Reimplemented from DM_InputSelector.

int OP3D_InputSelector::computeNextPickOrder ( GA_GroupType  sel_type) const
protected
bool OP3D_InputSelector::connectOps ( OP_Node new_node,
int  op_input_index,
const UT_String input_parm,
int menu_idx = 0,
bool  branch_off = false,
bool  multi_input = false,
bool  force_selection_string = false,
bool  force_numeric = false,
const UT_IntArray prev_input_nodes = 0 
)
virtual void OP3D_InputSelector::consumeSelections ( )
virtual
static SOP_Node* OP3D_InputSelector::createObjectMerge ( OP_Network network,
UT_String path,
GU_SelectionHandle  selection,
const UT_String creator_state_name,
bool  keep_original_objects,
bool  display_origina_objects 
)
static
static bool OP3D_InputSelector::createSelectionFromObjects ( const OP_NodeList objects,
DM_Viewport &  viewport,
PI_GeometryType  geo_type,
UT_StringArray paths,
OP3D_SelectionHandles selections 
)
static
const UT_String& OP3D_InputSelector::creatorStateName ( )
inline

Definition at line 255 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::currentlyUpdatingGeometryTypeButtons ( ) const
const UT_String& OP3D_InputSelector::currentPrompt ( ) const
inline

Definition at line 407 of file OP3D_InputSelector.h.

UT_String& OP3D_InputSelector::currentPrompt ( )
inline

Definition at line 408 of file OP3D_InputSelector.h.

const UT_String& OP3D_InputSelector::defaultPrompt ( ) const
inline

Definition at line 409 of file OP3D_InputSelector.h.

UT_String& OP3D_InputSelector::defaultPrompt ( )
inline

Definition at line 410 of file OP3D_InputSelector.h.

void OP3D_InputSelector::dirtySelection ( SOP_Node sop_node,
DirtySelectionScope scope 
)
protected
void OP3D_InputSelector::dirtySelection ( const GUI_DetailLook geo_look,
int  geo_idx,
DirtySelectionScope scope 
)
protected
void OP3D_InputSelector::dirtySelection ( const OP3D_SelectionInfo sel_info,
DirtySelectionScope scope 
)
protected
int OP3D_InputSelector::displayPickMask ( ) const
protected
void OP3D_InputSelector::doRender ( RE_Render r,
int  x,
int  y,
int  ghost 
)
overridevirtual

Reimplemented from BM_InputSelector.

bool OP3D_InputSelector::emptySelections ( const char *  path_to_skip = 0,
bool  refresh = true 
)
protected
bool OP3D_InputSelector::evalStateParm ( const char *  name,
UT_StringHolder ret 
)
overridevirtual

Reimplemented from BM_InputSelector.

int OP3D_InputSelector::findInfo ( int  node_id,
int  detail_index 
) const
protected
int OP3D_InputSelector::findInfo ( const char *  path) const
protected
virtual void OP3D_InputSelector::generateAdditionalInputNodes ( SOP_Node ,
SOP_Node ,
const UT_String ,
const UT_String  
)
inlineprotectedvirtual

Definition at line 598 of file OP3D_InputSelector.h.

void OP3D_InputSelector::generateAllSelectionStrings ( UT_String sel_string,
bool  only_one_gdp,
bool  force_numeric,
bool  consume_selections 
)
overridevirtual

Reimplemented from DM_InputSelector.

static void OP3D_InputSelector::generateMergedSelectionString ( UT_String sel_string,
UT_StringArray paths,
OP3D_SelectionHandles selections,
bool  ordered,
bool  collapse,
bool  use_ast_to_select_all,
bool  force_numeric 
)
static
OP3D_InputSelectorUndoWorker* OP3D_InputSelector::getDefaultUndoWorker ( )
GU_SelectionHandle OP3D_InputSelector::getExistingSelection ( int  node_id,
int  detail_index,
int info_i,
GA_GroupType  sel_type 
)
PI_GeometryType OP3D_InputSelector::getGeometryTypeAtFinish ( ) const
int OP3D_InputSelector::getGroupTypeMenuValAtFinish ( ) const
HeldHotkeyCacheUPtr& OP3D_InputSelector::getHeldHotkeyCache ( )
inline

Definition at line 567 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::getKeepOriginalObjects ( ) const
void OP3D_InputSelector::getKeyResolveInfo ( UI_KeyResolveInfo &  info)
overridevirtual

Implements DM_InputSelector.

PI_GeometryType OP3D_InputSelector::getNextBestAllowedType ( PI_GeometryType  disallowed_type) const
GU_SelectionHandle OP3D_InputSelector::getOrCreateSelection ( int  node_id,
int  detail_index,
int info_i,
GU_SelectionHandle new_selection,
GA_GroupType  sel_type 
)
bool OP3D_InputSelector::getPickAtObjLevel ( ) const
inline

Definition at line 194 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::getPickName ( const OP3D_PickId pickid,
UT_String name,
bool  descriptivename 
) const
overrideprotectedvirtual
bool OP3D_InputSelector::getPostMergeLoopStart ( GR_PickRecord pick)
void OP3D_InputSelector::getSelectableLooks ( GUI_DetailList looklist)
overridevirtual

Reimplemented from DM_InputSelector.

const PI_GeometryTypeArray& OP3D_InputSelector::getSelectionAllowedTypes ( ) const
UI_Menu* OP3D_InputSelector::getSelectorHotkeyMenu ( ) const
overridevirtual

Reimplemented from DM_InputSelector.

UI_Menu* OP3D_InputSelector::getSelectorMenu ( ) const
overridevirtual

Implements DM_InputSelector.

bool OP3D_InputSelector::getSloppyPick ( ) const
inline

Definition at line 179 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::getStashSelectionOnFinish ( ) const
inline

Definition at line 299 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::getStateParmNames ( UT_StringArray ret,
const char *  prefix = nullptr 
)
overridevirtual

Reimplemented from BM_InputSelector.

bool OP3D_InputSelector::handleDoubleClickEvent ( UI_Event event)
overridevirtual

Reimplemented from BM_InputSelector.

int OP3D_InputSelector::handleKeyEvent ( int  key,
UI_Event event,
DM_Viewport &  viewport 
)
overridevirtual

Implements DM_InputSelector.

int OP3D_InputSelector::handleMouseEvent ( UI_Event event)
overridevirtual

Reimplemented from BM_InputSelector.

virtual bool OP3D_InputSelector::handleNoPick ( UI_Event event)
protectedvirtual
virtual void OP3D_InputSelector::handleSelectionTypeChange ( UI_Event event)
protectedvirtual
bool OP3D_InputSelector::handleTransitoryKey ( const UI_Event event,
int  hotkey_id 
)
overridevirtual

Reimplemented from DM_InputSelector.

int OP3D_InputSelector::hasLocates ( ) const
inlineoverridevirtual

Reimplemented from BM_InputSelector.

Definition at line 104 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::hasNonEmptySelection ( ) const
bool OP3D_InputSelector::inputRequired ( ) const
inline

Definition at line 127 of file OP3D_InputSelector.h.

PI_GeometryType OP3D_InputSelector::mapToAllowedType ( PI_GeometryType  type,
PI_GeometryType  failure_type = PI_GEOTYPE_INVALID 
) const
bool OP3D_InputSelector::needObjectPick ( ) const
overrideprotectedvirtual

Reimplemented from OP3D_InputSelectorBase.

void OP3D_InputSelector::nodeIdForReselecting ( int  node_id)
inline

Definition at line 216 of file OP3D_InputSelector.h.

void OP3D_InputSelector::overrideSelectionValues ( int  sel_type,
int  sel_rule,
int  sel_style,
int  sel_full,
int  locate 
)
protected
bool OP3D_InputSelector::pressStateButton ( const char *  name)
overridevirtual

Reimplemented from BM_InputSelector.

GEO_PrimTypeCompat::TypeMask OP3D_InputSelector::primMask ( ) const
inlineoverridevirtual

Reimplemented from DM_InputSelector.

Definition at line 159 of file OP3D_InputSelector.h.

void OP3D_InputSelector::removeSelectedInfo ( int  info_i)
void OP3D_InputSelector::removeSelectionsFromDetailLooks ( )
void OP3D_InputSelector::restartWithStashedSelection ( )
void OP3D_InputSelector::restoreSelectionValues ( )
protected
bool OP3D_InputSelector::restrictSloppyAllowedTypesToSubset ( const PI_GeometryTypeArray types)
void OP3D_InputSelector::saveForUndo ( )
overrideprotectedvirtual

Reimplemented from OP3D_InputSelectorBase.

bool OP3D_InputSelector::saveUndos ( ) const
inline

Definition at line 318 of file OP3D_InputSelector.h.

void OP3D_InputSelector::scriptReplaceSelection ( PI_GeometryType  geo_type,
const UT_StringArray paths,
OP3D_SelectionHandles selections 
)
OP3D_SelectionHandles OP3D_InputSelector::selectedAutoConvertedSelections ( ) const

Returns the current set of auto converted (to the best allowed selection type) selection objects for each op used for selection. The size of this array matches that of the array returned by selectedOpPaths. The conversion is done in selectorFinished(), so if this method is called before this it is identical to calling selectedSelections(). Typically you'll want to use this method wherever you call either getGeometryTypeAtFinish() or getGroupTypeMenuValAtFinish(). Unlike selectedSelections(), entries may be empty or even NULL.

UT_StringArray OP3D_InputSelector::selectedOpPaths ( ) const

Returns the current set of ops that have selections on them using this selector. The size of the array matches that of the array returned by selectedselections and selectedAutoConvertedSelections.

OP3D_SelectionHandles OP3D_InputSelector::selectedSelections ( ) const

Returns the current set of selection objects used to mark the component selection for each op used for selection. The size of this array matches that of the array returned by selectedOpPaths.

In many cases you should use selectedAutoConvertedSelections instead of this method.

GU_SelectionHandle OP3D_InputSelector::selectionFromInfoKey ( const InfoKey key,
bool  only_selected = true 
) const
GU_SelectionHandle OP3D_InputSelector::selectionFromOpPath ( UT_StringRef  path,
bool  only_selected = true 
) const

Returns a selection handle, given an op path. If the selector is not holding a matching op path, then an empty handle is returned.

GA_GroupType OP3D_InputSelector::selectionType ( ) const
void OP3D_InputSelector::selectorFinished ( bool  drag = false)
void OP3D_InputSelector::setAllowDragSelect ( bool  allow_drag)
inline

Definition at line 259 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setAllowEdgeRingSelection ( bool  allow)
inline

Definition at line 147 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setAllowMultiPickLoopStart ( bool  allow)
inline

Definition at line 302 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setCreatorStateName ( const char *  state_name)
inline

Definition at line 253 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setGeometryType ( PI_GeometryType  geo_type,
bool  update_buttons 
)
void OP3D_InputSelector::setInitialSelection ( const char *  op_path,
GA_GroupType  type,
const char *  selection_string 
)
void OP3D_InputSelector::setInputRequired ( bool  onoff)
inline

Definition at line 128 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setLocateFilter ( LocateFilter  filter)
inline

Definition at line 563 of file OP3D_InputSelector.h.

virtual void OP3D_InputSelector::setNodeParameters ( OP_Node )
inlineprotectedvirtual

Definition at line 604 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setOffsetVertexMarkersOverride ( bool  offset)
inline

Definition at line 152 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setPickAtObjLevel ( bool  flag)
inline

Definition at line 192 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setPrimMask ( GEO_PrimTypeCompat::TypeMask  primmask)
inline

Definition at line 161 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setSaveUndos ( bool  yesno)
inline

Definition at line 317 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setSelectFullGeometry ( bool  select_full)
inline

Definition at line 263 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setSelectionAllowedTypes ( const PI_GeometryTypeArray allowedtypes)
void OP3D_InputSelector::setSelectionUIValues ( UI_Value sel_type,
UI_Value sel_rule,
UI_Value sel_style,
UI_Value sel_visible,
UI_Value sel_contained,
UI_Value sel_full,
UI_Value locate_always,
UI_Value finished,
UI_Value located = nullptr 
)
void OP3D_InputSelector::setSloppyPick ( bool  on)
void OP3D_InputSelector::setStashSelectionOnFinish ( bool  stash)
inline

Definition at line 297 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::setStateParm ( const char *  name,
const UT_StringHolder val 
)
overridevirtual

Reimplemented from BM_InputSelector.

void OP3D_InputSelector::setUndoWorker ( OP3D_InputSelectorUndoWorker *  worker = 0)
void OP3D_InputSelector::setUseAsteriskToSelectAll ( bool  onoff)
inline

Definition at line 136 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setUseExistingCookSelection ( bool  use_existing)
inline

Definition at line 291 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setUseExistingSelection ( bool  use_existing)
inline

Definition at line 270 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setUseExistingTempSelection ( bool  use_existing)
inline

Definition at line 283 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setUsePrimsInEdgeSelections ( bool  use_prims)
inline

Definition at line 142 of file OP3D_InputSelector.h.

void OP3D_InputSelector::setValidForPickFilter ( void data,
OP3D_ValidForPickFilter  filter 
)
void OP3D_InputSelector::setViewer ( BM_View *  viewer)
overridevirtual

Reimplemented from BM_InputSelector.

int OP3D_InputSelector::singlePickMask ( GU_SelectionRule  sel_rule) const
protected
void OP3D_InputSelector::startSelecting ( )
overridevirtual

Reimplemented from BM_InputSelector.

void OP3D_InputSelector::stopSelecting ( )
overridevirtual

Reimplemented from BM_InputSelector.

virtual void OP3D_InputSelector::updateGroupMenuValue ( PI_GeometryType  geo_type,
int group_menu_type 
)
protectedpure virtual

Called when selection finishes and we need to stash away the group menu index that gets set for the target operator of this selector.

Implemented in OP3D_GenericSelector.

int OP3D_InputSelector::updateSelection ( const char *  path,
OP_Node node,
GUI_DetailLook look,
int  geo_idx,
GU_SelectionHandle  selection,
const GU_Detail gdp 
)

Update our internal selection cache and the detail look, if any, with the provided selection.

bool OP3D_InputSelector::useAsteriskToSelectAll ( ) const
inline

Definition at line 134 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::useExistingCookSelection ( ) const
inline

Definition at line 293 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::useExistingSelection ( ) const
inline

Definition at line 275 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::useExistingTempSelection ( ) const
inline

Definition at line 285 of file OP3D_InputSelector.h.

bool OP3D_InputSelector::willHandleKeyEvent ( int  key,
UI_Event event 
)

Friends And Related Function Documentation

friend class OP3D_InputSelectorUndo
friend

Definition at line 686 of file OP3D_InputSelector.h.


The documentation for this class was generated from the following file: