CStateButton

#include "StateButton.h"


Description

State button class


Private variables

Type Name Description
PPluginAction PluginAction Variable used to communicate with AQQ
TTimer* BlinkTimer Timer used to blink button icon
int BlinkActualIcon ID of active button icon
int Timeout Blink timeout
int Elapsed Blink elapsed

Public variables

Type Name Description
int BlinkStartIcon Button start icon ID
int BlinkStopIcon Button stop icon ID
UnicodeString Action Name of action available in AQQ
UnicodeString Name Internal name
UnicodeString Caption Caption
int Position Position. 0 = auto
int IconID ID of icon loaded to AQQ. -1 = none
UnicodeString Service Name of service to call after click
UnicodeString PopupName Name of popup menu attatched to button
UnicodeString Shortcut Shortcut in Delphi text format
UnicodeString Hint Hover hint
UnicodeString PositionAfter Name of item after which you want to add button

Public methods

Type Name Description
CStateButton() Constructor
~CStateButton() Destructor
PPluginAction AQQFormat() Function converts this object to AQQ structure
void SDKFormat(PPluginAction PluginAction) Function converts AQQ structure to this object
void CreateButton() Function creates button using data stored in this object
void CreateButton(UnicodeString Name, int Position, int Icon, UnicodeString ServiceFunction, UnicodeString PopupName) Function creates button using specified properties
void CreateButton(UnicodeString Name, UnicodeString positionAfter, int Icon, UnicodeString ServiceFunction, UnicodeString PopupName) Function creates button using specified properties
void DestroyButton() Function removes button
void Update() Function updates button
void Blink() Function starts blink button icon every second. Use function StopBlink() to stop
void Blink(int Timeout) Function works like Blink() function, but automatically stops blinking at the end of time specified in Timeout parameter. Timeout must be given in seconds
void StopBlink() Function stops blinking and sets icon specified in BlinkStopIcon

Example

Example plugin that using CStateButton class you may find here.