maxscript/UI/uiextend.h File Reference
 
 
 
maxscript/UI/uiextend.h File Reference
#include "../kernel/value.h"

Classes

class   MSRightClickMenu
class   MSSelectFilterCallback
class   MSDisplayFilterCallback

Defines

#define  MF_SUBMENU_START   (MF_SEPARATOR+10)
#define  MF_SUBMENU_END   (MF_SEPARATOR+11)
#define  is_RCMenu(o)   ((o)->tag == class_tag(RCMenu))

Functions

  visible_class_debug_ok (MenuItem) class MenuItem
  visible_class_debug_ok (RCMenu) class RCMenu

Define Documentation

#define MF_SUBMENU_START   (MF_SEPARATOR+10)
#define MF_SUBMENU_END   (MF_SEPARATOR+11)
#define is_RCMenu (   o )    ((o)->tag == class_tag(RCMenu))

Function Documentation

visible_class_debug_ok ( MenuItem  )
               : public Value
{       
public:
        Value   *name, *caption, *flt_fn;
        Value   **keyparms;
        RCMenu  *menu;
        HMENU   hmenu;
        UINT    hmenu_index;

        int             keyparm_count;
        UINT    flags;
        
                        MenuItem (RCMenu *m, Value* n, Value* c, Value  **keyparms, int keyparm_count, UINT f=0);
                        MenuItem () {menu= NULL; name=caption=NULL; keyparms=NULL; flags=keyparm_count=hmenu_index=0; hmenu = NULL;} 
                        ~MenuItem ();

        ScripterExport void     setup_params();
        void    collect();
        void    gc_trace();
        ScripterExport void sprin1(CharStream* s);

        virtual Value*  get_property(Value** arg_list, int count);
        virtual Value*  set_property(Value** arg_list, int count);
};
visible_class_debug_ok ( RCMenu  )
             : public Value
{
public:
        Value*          name;                                           // menu name
        HashTable*  local_scope;                                // local name space     
        MenuItem**      items;                                          // menu item array
        int                     item_count;                                     //   "    "  count
        Value**         locals;                                         // local var array      
        Value**         local_inits;                            //   "    "    "  init vals     
        int                     local_count;                            //   "    "  count      
        HashTable*      handlers;                                       // handler tables       
        short           flags;                                          // menu flags
        BOOL            init_values;                            // whether to init ctrl/local values on (re)open 
        BOOL            end_rcmenu_mode;                        // signals end of rcmenu mode
        MSRightClickMenu msmenu;                                // right-click menu
        // command mode locals...
        Value*          result;                                         // rcmenu result
        MSPlugin*       plugin;                                         // current plugin under manip if non-NULL

                                RCMenu(short iflags);
        void            init(Value* name, int local_count, Value** inits, HashTable* local_scope, MenuItem** iitems, int iitem_count, HashTable* handlers);
                           ~RCMenu();

#       define is_RCMenu(o) ((o)->tag == class_tag(RCMenu))  // LAM - defect 307069
                                classof_methods (RCMenu, Value);
        void    collect();
        void            gc_trace();
        ScripterExport void sprin1(CharStream* s);

        Value*          get_event_handler(Value* name, Value* event);
        BOOL            call_event_handler(Value* name, Value* event, Value** arg_list, int count);
        

        virtual Value*  get_property(Value** arg_list, int count);
        virtual Value*  set_property(Value** arg_list, int count);

        // added 3/21/05. Used by debugger to dump locals and externals to standard out
        void            dump_local_vars_and_externals(int indentLevel);
};