// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _IFSelect_Activator_HeaderFile #define _IFSelect_Activator_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_IFSelect_Activator_HeaderFile #include #endif #ifndef _TCollection_AsciiString_HeaderFile #include #endif #ifndef _MMgt_TShared_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Standard_CString_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Handle_TColStd_HSequenceOfAsciiString_HeaderFile #include #endif #ifndef _IFSelect_ReturnStatus_HeaderFile #include #endif #ifndef _Handle_IFSelect_SessionPilot_HeaderFile #include #endif class Standard_DomainError; class TCollection_AsciiString; class TColStd_HSequenceOfAsciiString; class IFSelect_SessionPilot; //! Defines the general frame for working with a SessionPilot.
//! Each Activator treats a set of Commands. Commands are given as
//! alphanumeric strings. They can be of two main forms :
//! - classic, to list, evaluate, enrich the session (by itself) :
//! no specific remark, its complete execution must be described
//! - creation of a new item : instead of creatinf it plus adding
//! it to the session (which is a classic way), it is possible
//! to create it and make it recorded by the SessionPilot :
//! then, the Pilot will add it to the session; this way allows
//! the Pilot to manage itself named items
//!
//! In order to make easier the use of Activator, this class
//! provides a simple way to Select an Actor for a Command :
//! each sub-class of SectionActor defines the command titles it
//! recognizes, plus attaches a Number, unique for this sub-class,
//! to each distinct command title.
//!
//! Each time an action is required, the corresponding Number
//! can then be given to help the selection of the action to do.
//!
//! The result of an Execution must indicate if it is worth to be
//! recorded or not : see method Do
class IFSelect_Activator : public MMgt_TShared { public: //! Records, in a Dictionary available for all the Activators,
//! the command title an Activator can process, attached with
//! its number, proper for this Activator
//! allows to distinguish various execution modes
//! 0: default mode; 1 : for xset
Standard_EXPORT static void Adding(const Handle(IFSelect_Activator)& actor,const Standard_Integer number,const Standard_CString command,const Standard_Integer mode) ; //! Allows a self-definition by an Activator of the Commands it
//! processes, call the class method Adding (mode 0)
Standard_EXPORT void Add(const Standard_Integer number,const Standard_CString command) const; //! Same as Add but specifies that this command is candidate for
//! xset (creation of items, xset : named items; mode 1)
Standard_EXPORT void AddSet(const Standard_Integer number,const Standard_CString command) const; //! Removes a Command, if it is recorded (else, does nothing)
Standard_EXPORT static void Remove(const Standard_CString command) ; //! Records, for a configuration named , that the command
//! may be aliased by another command
//!
//! To be used by call to Alias (no automatic redirection)
//! The configuration typically refers to a norm
Standard_EXPORT static void SetAlias(const Standard_CString conf,const Standard_CString command,const Standard_CString aliasname) ; //! Sets as current configuration for aliases
Standard_EXPORT static void SetCurrentAlias(const Standard_CString conf) ; //! Returns, in the current configuration, what alias has been
//! recorded for
//! The returned string is empty if no alias is recorded
Standard_EXPORT static TCollection_AsciiString Alias(const Standard_CString command) ; //! Selects, for a Command given by its title, an actor with its
//! command number. Returns True if found, False else
Standard_EXPORT static Standard_Boolean Select(const Standard_CString command,Standard_Integer& number,Handle(IFSelect_Activator)& actor) ; //! Returns mode recorded for a command. -1 if not found
Standard_EXPORT static Standard_Integer Mode(const Standard_CString command) ; //! Returns, for a root of command title, the list of possible
//! commands.
//! : -1 (D) for all commands if is empty
//! -1 + command : about a Group , >= 0 see Adding
//! By default, it returns the whole list of known commands.
Standard_EXPORT static Handle_TColStd_HSequenceOfAsciiString Commands(const Standard_Integer mode = -1,const Standard_CString command = "") ; //! Tries to execute a Command Line. is the number of the
//! command for this Activator. It Must forecast to record the
//! result of the execution, for need of Undo-Redo
//! Must Returns : 0 for a void command (not to be recorded),
//! 1 if execution OK, -1 if command incorrect, -2 if error
//! on execution
Standard_EXPORT virtual IFSelect_ReturnStatus Do(const Standard_Integer number,const Handle(IFSelect_SessionPilot)& pilot) = 0; //! Sends a short help message for a given command identified by
//! it number for this Activator (must take one line max)
Standard_EXPORT virtual Standard_CString Help(const Standard_Integer number) const = 0; Standard_EXPORT Standard_CString Group() const; Standard_EXPORT Standard_CString File() const; //! Group and SetGroup define a "Group of commands" which
//! correspond to an Activator. Default is "XSTEP"
//! Also a file may be attached
Standard_EXPORT void SetForGroup(const Standard_CString group,const Standard_CString file = "") ; DEFINE_STANDARD_RTTI(IFSelect_Activator) protected: //! Sets the default values
Standard_EXPORT IFSelect_Activator(); private: TCollection_AsciiString thegroup; TCollection_AsciiString thefile; }; // other Inline functions and methods (like "C++: function call" methods) #endif