Programming
Button Query Commands
Button Query commands reply back with a custom event. There will be one custom event for each button/state combination. Each query is assigned a unique custom event type. The following example is for debug purposes only:
NetLinx Example: CUSTOM_EVENT[device, Address, Custom event type]
DEFINE_EVENT
CUSTOM_EVENT[TP,529,1001] CUSTOM_EVENT[TP,529,1002] CUSTOM_EVENT[TP,529,1003] CUSTOM_EVENT[TP,529,1004] CUSTOM_EVENT[TP,529,1005] CUSTOM_EVENT[TP,529,1006] CUSTOM_EVENT[TP,529,1007] CUSTOM_EVENT[TP,529,1008] CUSTOM_EVENT[TP,529,1009] CUSTOM_EVENT[TP,529,1010] CUSTOM_EVENT[TP,529,1011] CUSTOM_EVENT[TP,529,1012] CUSTOM_EVENT[TP,529,1013] CUSTOM_EVENT[TP,529,1014] CUSTOM_EVENT[TP,529,1015]
{
//Text
//Bitmap
//Icon
//Text Justification
//Bitmap Justification
//Icon Justification
//Font
//Text Effect Name
//Text Effect Color
//Word Wrap
//ON state Border Color
//ON state Fill Color
//ON state Text Color
//Border Name
//Opacity
Send_String 0,"'ButtonGet Id=',ITOA(CUSTOM.ID),' Type=',ITOA(CUSTOM.TYPE)" Send_String 0,"'Flag =',ITOA(CUSTOM.FLAG)"
Send_String 0,"'VALUE1 =',ITOA(CUSTOM.VALUE1)" Send_String 0,"'VALUE2 =',ITOA(CUSTOM.VALUE2)" Send_String 0,"'VALUE3 =',ITOA(CUSTOM.VALUE3)" Send_String 0,"'TEXT =',CUSTOM.TEXT"
Send_String 0,"'TEXT LENGTH =',ITOA(LENGTH_STRING(CUSTOM.TEXT))"
}
All custom events have the following 6 fields:
Custom Event Fields
Field | Description |
|
|
Uint Flag | 0 means text is a standard string, 1 means Unicode encoded string |
|
|
slong value1 | button state number |
|
|
slong value2 | actual length of string (this is not encoded size) |
|
|
slong value3 | index of first character (usually 1 or same as optional index |
|
|
string text | the text from the button |
|
|
text length (string encode) | button text length |
|
|
129 | |
|
|