Changeset 78 for trunk/src


Ignore:
Timestamp:
06/01/13 23:50:55 (12 years ago)
Author:
epyon
Message:
  • types.hh - basing totally on typeid now
  • types.hh - removed hash_string and name registration defines (get_type_name template)
  • types.hh - name is defined at registration via create_type
  • types.hh - overall the code is much cleaner now
Location:
trunk/src
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/io_event.cc

    r67 r78  
    4949#       undef NV_KEY
    5050        };
    51         db->create_type<key_code>().enums( key_enums );
     51        db->create_type<key_code>("key_code").enums( key_enums );
    5252
    5353        type_enum mouse_enums[] = {
     
    5656#       undef NV_MOUSE
    5757        };
    58         db->create_type<mouse_code>().enums( mouse_enums );
     58        db->create_type<mouse_code>("mouse_code").enums( mouse_enums );
    5959
    6060        type_enum io_event_enums[] = {
     
    6363#       undef NV_IO_EVENT
    6464        };
    65         db->create_type<io_event_code>().enums( io_event_enums );
     65        db->create_type<io_event_code>("event_code").enums( io_event_enums );
    6666
    6767        type_field key_fields[] = {
     
    7373                type_field( "pressed", &key_event::pressed ),
    7474        };
    75         db->create_type<key_event>().fields( key_fields );
     75        db->create_type<key_event>("key_event").fields( key_fields );
    7676
    7777        type_field mouse_button_fields[] = {
     
    8282                type_field( "code",    &mouse_button_event::code ),
    8383        };
    84         db->create_type<mouse_button_event>().fields( mouse_button_fields );
     84        db->create_type<mouse_button_event>("mouse_button_event").fields( mouse_button_fields );
    8585
    8686        type_field mouse_move_fields[] = {
     
    9292                type_field( "code",    &mouse_move_event::code ),
    9393        };
    94         db->create_type<mouse_move_event>().fields( mouse_move_fields );
     94        db->create_type<mouse_move_event>("mouse_move_event").fields( mouse_move_fields );
    9595
    9696        type_field system_fields[] = {
     
    9999                type_field( "param2",   &system_event::param2 ),
    100100        };
    101         db->create_type<system_event>().fields( system_fields );
     101        db->create_type<system_event>("system_event").fields( system_fields );
    102102}
  • trunk/src/lua/lua_state.cc

    r77 r78  
    296296        if (!t) return ref_none;
    297297        stack_guard guard( this );
    298         lua_getglobal( L, t->name.text );
     298        lua_getglobal( L, t->name.c_str() );
    299299        if ( lua_isnil( L, -1 ) )
    300300        {
    301                 NV_THROW( runtime_error, std::string( t->name.text ) + " type not registered!" );
     301                NV_THROW( runtime_error, std::string( t->name ) + " type not registered!" );
    302302        }
    303303        deep_pointer_copy( -1, o );
  • trunk/src/object.cc

    r77 r78  
    192192                type_field("children"   , &object::m_children).flag( TF_READONLY ),
    193193        };
    194         db->create_type<object>().fields(fields);
     194        db->create_type<object>("object").fields(fields);
    195195}
Note: See TracChangeset for help on using the changeset viewer.