Die slot Funktionen sind in der Header Datei enthalten, die von "mask<X>" inkludiert wird. Sie müssen diese Funktionen ausfüllen, um Ihre eigene Logik zu programmieren. Viele nützliche Slot Funktionen sollen in dieser Dokumentation aufgelistet werden. Diese Vorlagen können Sie dann per Copy&Paste in Ihren eigenen pvserver übernehmen.
DATA definiert Ihre lokale Datenstruktur der Maske. Das kann mit den privaten Variablen einer Klasse verglichen werden, obwohl dies in ANSI C ausgedrückt wird.
slot<X> behandelt die Ereignisse, die auftreten. Innerhalb von slot<X> können Sie die Widget Id auswerten, die in dem Enum der Maske mask<X> aufgelistet ist.
//############################################################### //# mask1_slots.h for ProcessViewServer created: Di Okt 6 11:25:46 2009 //# please fill out these slots //# here you find all possible events //# Yours: Lehrig Software Engineering //############################################################### // todo: uncomment me if you want to use this data aquisiton // also uncomment this classes in main.cpp and pvapp.h // also remember to uncomment rllib in the project file //extern rlModbusClient modbus; //extern rlSiemensTCPClient siemensTCP; //extern rlPPIClient ppi; typedef struct // (todo: define your data structure here) { } DATA; static int slotInit(PARAM *p, DATA *d) { if(p == NULL || d == NULL) return -1; //memset(d,0,sizeof(DATA)); return 0; } static int slotNullEvent(PARAM *p, DATA *d) { if(p == NULL || d == NULL) return -1; return 0; } static int slotButtonEvent(PARAM *p, int id, DATA *d) { if(p == NULL || id == 0 || d == NULL) return -1; return 0; } static int slotButtonPressedEvent(PARAM *p, int id, DATA *d) { if(p == NULL || id == 0 || d == NULL) return -1; return 0; } static int slotButtonReleasedEvent(PARAM *p, int id, DATA *d) { if(p == NULL || id == 0 || d == NULL) return -1; return 0; } static int slotTextEvent(PARAM *p, int id, DATA *d, const char *text) { if(p == NULL || id == 0 || d == NULL || text == NULL) return -1; return 0; } static int slotSliderEvent(PARAM *p, int id, DATA *d, int val) { if(p == NULL || id == 0 || d == NULL || val < -1000) return -1; return 0; } static int slotCheckboxEvent(PARAM *p, int id, DATA *d, const char *text) { if(p == NULL || id == 0 || d == NULL || text == NULL) return -1; return 0; } static int slotRadioButtonEvent(PARAM *p, int id, DATA *d, const char *text) { if(p == NULL || id == 0 || d == NULL || text == NULL) return -1; return 0; } static int slotGlInitializeEvent(PARAM *p, int id, DATA *d) { if(p == NULL || id == 0 || d == NULL) return -1; return 0; } static int slotGlPaintEvent(PARAM *p, int id, DATA *d) { if(p == NULL || id == 0 || d == NULL) return -1; return 0; } static int slotGlResizeEvent(PARAM *p, int id, DATA *d, int width, int height) { if(p == NULL || id == 0 || d == NULL || width < 0 || height < 0) return -1; return 0; } static int slotGlIdleEvent(PARAM *p, int id, DATA *d) { if(p == NULL || id == 0 || d == NULL) return -1; return 0; } static int slotTabEvent(PARAM *p, int id, DATA *d, int val) { if(p == NULL || id == 0 || d == NULL || val < -1000) return -1; return 0; } static int slotTableTextEvent(PARAM *p, int id, DATA *d, int x, int y, const char *text) { if(p == NULL || id == 0 || d == NULL || x < -1000 || y < -1000 || text == NULL) return -1; return 0; } static int slotTableClickedEvent(PARAM *p, int id, DATA *d, int x, int y, int button) { if(p == NULL || id == 0 || d == NULL || x < -1000 || y < -1000 || button < 0) return -1; return 0; } static int slotSelectionEvent(PARAM *p, int id, DATA *d, int val, const char *text) { if(p == NULL || id == 0 || d == NULL || val < -1000 || text == NULL) return -1; return 0; } static int slotClipboardEvent(PARAM *p, int id, DATA *d, int val) { if(p == NULL || id == 0 || d == NULL || val < -1000) return -1; return 0; } static int slotRightMouseEvent(PARAM *p, int id, DATA *d, const char *text) { if(p == NULL || id == 0 || d == NULL || text == NULL) return -1; //pvPopupMenu(p,-1,"Menu1,Menu2,,Menu3"); return 0; } static int slotKeyboardEvent(PARAM *p, int id, DATA *d, int val, int modifier) { if(p == NULL || id == 0 || d == NULL || val < -1000 || modifier < -1000) return -1; return 0; } static int slotMouseMovedEvent(PARAM *p, int id, DATA *d, float x, float y) { if(p == NULL || id == 0 || d == NULL || x < -1000 || y < -1000) return -1; return 0; } static int slotMousePressedEvent(PARAM *p, int id, DATA *d, float x, float y) { if(p == NULL || id == 0 || d == NULL || x < -1000 || y < -1000) return -1; return 0; } static int slotMouseReleasedEvent(PARAM *p, int id, DATA *d, float x, float y) { if(p == NULL || id == 0 || d == NULL || x < -1000 || y < -1000) return -1; return 0; } static int slotMouseOverEvent(PARAM *p, int id, DATA *d, int enter) { if(p == NULL || id == 0 || d == NULL || enter < -1000) return -1; return 0; } static int slotUserEvent(PARAM *p, int id, DATA *d, const char *text) { if(p == NULL || id == 0 || d == NULL || text == NULL) return -1; return 0; }