Sack Library Documentation
ContentsIndexReferenceHome
PreviousUpNext
sack::PSI::ControlRegistration_tag Structure
C++
struct ControlRegistration_tag {
  CTEXTSTR name;
  struct control_extra_data {
    struct width_height_tag {
      _32 width, height;
    } stuff;
    _32 extra;
    _32 default_border;
  } stuff;
  int (__cdecl * init)(PSI_CONTROL);
  int (__cdecl * load)(PSI_CONTROL , PTEXT parameters);
  int (__cdecl * draw)(PSI_CONTROL);
  int (__cdecl * mouse)(PSI_CONTROL , S_32 x, S_32 y, _32 b);
  int (__cdecl * key)(PSI_CONTROL , _32);
  void (__cdecl * destroy)(PSI_CONTROL);
  PSI_CONTROL (__cdecl * prop_page)(PSI_CONTROL pc);
  void (__cdecl * apply_prop)(PSI_CONTROL pc, PSI_CONTROL frame);
  void (__cdecl * save)(PSI_CONTROL pc, PVARTEXT pvt);
  void (__cdecl * AddedControl)(PSI_CONTROL me, PSI_CONTROL pcAdding);
  void (__cdecl * CaptionChanged)(PSI_CONTROL pc);
  int (__cdecl * FocusChanged)(PSI_CONTROL pc, LOGICAL bFocused);
  void (__cdecl * PositionChanging)(PSI_CONTROL pc, LOGICAL bStart);
  _32 TypeID;
};
Members 
Description 
CTEXTSTR name; 
This is the name of this type of control. Future controls can be created using this name. The name may not contain slashes, but may contain spaces and other punctuation marks. 
struct control_extra_data {
struct width_height_tag {
_32 width, height;
} stuff;
_32 extra;
_32 default_border;
} stuff; 
This member is never referenced by name, it defines stuff about the control like default width and height, size of the extra data associated with the control (size of user data), and the default border style of the control. 
struct width_height_tag {
_32 width, height;
} stuff; 
This member is never referenced by name, it defines stuff about the control like default width and height 
_32 height; 
default width of the control default height of the contorl 
_32 width; 
default width of the control default height of the contorl 
_32 extra; 
default width, height for right-click creation. 
_32 default_border; 
default border style of the control see BorderOptionTypes CTEXTSTR master_config; struct ControlRegistration_tag *pMasterConfig; 
int (__cdecl * init)(PSI_CONTROL); 
 
int (__cdecl * load)(PSI_CONTROL , PTEXT parameters); 
This is depricated? Never figured a good way of saving extra data in frames? 
int (__cdecl * draw)(PSI_CONTROL); 
 
int (__cdecl * mouse)(PSI_CONTROL , S_32 x, S_32 y, _32 b); 
 
int (__cdecl * key)(PSI_CONTROL , _32); 
 
void (__cdecl * destroy)(PSI_CONTROL); 
 
PSI_CONTROL (__cdecl * prop_page)(PSI_CONTROL pc); 
 
void (__cdecl * apply_prop)(PSI_CONTROL pc, PSI_CONTROL frame); 
 
int (__cdecl * FocusChanged)(PSI_CONTROL pc, LOGICAL bFocused); 
 
void (__cdecl * PositionChanging)(PSI_CONTROL pc, LOGICAL bStart); 
 
_32 TypeID; 
result data - uninitialized this is filled in by the registrar (handler of registration). This Should have been moved up, but it was meant to indicate the end of the registration structure. This type ID is filled in by DoRegisterControl. This type ID is a numeric ID that can be checked to identify the type of the control, and make sure that the user data retreived from the control is the correct type. 

Control Registration structure. Obsolete method of registering a control and the methods of a control. Internally these methods are just registered as they would with the procedure registration methods

Created with a commercial version of Doc-O-Matic. In order to make this message disappear you need to register this software. If you have problems registering this software please contact us at support@toolsfactory.com.
Copyright (c) 2000+. All rights reserved.
What do you think about this topic? Send feedback!