Changeset 256 for trunk/src/object.cc


Ignore:
Timestamp:
06/14/14 21:06:00 (11 years ago)
Author:
epyon
Message:
  • various minor fixes
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/object.cc

    r217 r256  
    4141        if ( m_root )
    4242        {
    43                 uid_store*  store = get_root()->get_uid_store();
    44                 if (store)
    45                 {
    46                         m_uid = store->insert( this );
    47                 }
    48         }
    49 
     43                m_root->object_created( this );
     44        }
    5045}
    5146
     
    10499object::~object()
    105100{
    106         if ( m_lua_index != lua::ref_none )
    107         {
    108                 lua::state* state = get_root()->get_lua_state();
    109                 state->unregister_object( this );
    110         }
    111         if ( m_uid != 0 && m_root )
    112         {
    113                 uid_store* store = get_root()->get_uid_store();
    114                 if (store) store->remove( m_uid );
     101        if ( m_root )
     102        {
     103                m_root->object_destroyed( this );
    115104        }
    116105        detach();
     
    194183}
    195184
    196 void object::register_type( type_database* db )
    197 {
    198         type_field fields[] = {
    199                 type_field("id",          &object::m_id),
    200                 type_field("uid",         &object::m_uid).flag( TF_READONLY ),
    201                 type_field("lua_index",   &object::m_lua_index).flag( TF_READONLY | TF_NOSERIALIZE ),
    202                 type_field("parent",      &object::m_parent).flag( TF_READONLY | TF_NOSERIALIZE ),
    203                 type_field("child_count", &object::m_child_count).flag( TF_READONLY ),
    204                 type_field("children"   , &object::m_children).flag( TF_READONLY ),
    205         };
    206         db->create_type<object>("object").fields(fields);
    207 }
     185// void object::register_type( type_database* db )
     186// {
     187//      type_field fields[] = {
     188//              type_field("id",          &object::m_id),
     189//              type_field("uid",         &object::m_uid).flag( TF_READONLY ),
     190//              type_field("lua_index",   &object::m_lua_index).flag( TF_READONLY | TF_NOSERIALIZE ),
     191//              type_field("parent",      &object::m_parent).flag( TF_READONLY | TF_NOSERIALIZE ),
     192//              type_field("child_count", &object::m_child_count).flag( TF_READONLY ),
     193//              type_field("children"   , &object::m_children).flag( TF_READONLY ),
     194//      };
     195//      db->create_type<object>("object").fields(fields);
     196// }
    208197
    209198void nv::object::register_with_lua( const char* lua_name, const char* storage )
Note: See TracChangeset for help on using the changeset viewer.