Try examining Template SDK. Here are some tips:
-> object basically consists of two classes - EditTime Object (this one you see and access thru layout editor) and RunTime Object - used when game's working
-> in main.h you define all fields and Action, Condition, Expression methods (called ACEs in SDK), be sure to check #define IDE_FLAGS
-> actions.cpp, conditions.cpp, expressions.cpp have implementations of these methods
-> edittime.cpp - there is a place to make init of object when it's pasted on leyout editor. You define here also Properties
-> to make extension "see" this methods, edit ACE Table.cpp - it's shown how to add ACEs and set its required parameters
-> drawing.cpp contains methods for drawing object when in layout editor and when in runtime
-> runtime.cpp - there are some initialization/freeing methods you could use for memory allocation and stuff. Most of work at runtime is done by methods in actions.cpp, conditions.cpp and expressions.cpp
-> debugging.cpp, serialization.cpp - sorry, didn't learn how to use them, but names tells everything ^^
Sorry for this kinda messed explanation, still learning C++ x(.