@PropEx.h 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. /******************************************************************************/
  2. /******************************************************************************/
  3. class PropEx : Property
  4. {
  5. static ObjPtrs<PropEx> props;
  6. static void Clear(PropEx &prop);
  7. ELM_TYPE elm_type;
  8. Str _desc;
  9. bool compatible(ELM_TYPE elm_type)C;
  10. void setDesc( );
  11. PropEx& desc (C Str &desc );
  12. PropEx& setEnum( );
  13. PropEx& setEnum(cchar8 *data[], int elms);
  14. PropEx& setEnum(cchar *data[], int elms);
  15. PropEx& elmType(ELM_TYPE elm_type );
  16. void clear ( );
  17. T1(TYPE) PropEx& create(C Str &name, TYPE &member );
  18. PropEx& create(C Str &name, C MemberDesc &md=MemberDesc());
  19. void dragStart(bool elm_types[ELM_NUM_ANY]); // enable textline only if the source has the same element type as this property
  20. void dragEnd ( );
  21. PropEx();
  22. ~PropEx();
  23. };
  24. /******************************************************************************/
  25. /******************************************************************************/
  26. /******************************************************************************/