typeof (b) __b = (b); \
__a > __b ? __a : __b; })
-#define M_VERSION 2.02
+#define M_VERSION 2.03
#define NCF_FILE "/var/tuxbox/config/neutrino.conf"
#define HDF_FILE "/tmp/.msgbox_hidden"
char *line_buffer=NULL, *title=NULL, *icon=NULL;
int size=24, type=0, timeout=0, refresh=3, flash=0, selection=0, tbuttons=0, buttons=0, bpline=3, echo=0, absolute=0, mute=1, header=1, cyclic=1;
-char *butmsg[16]={0};
-int rbutt[16],hide=0,radius=0, radius_small=0;
+char *butmsg[MAX_BUTTONS]={0};
+int rbutt[MAX_BUTTONS],hide=0,radius=0, radius_small=0;
// Misc
const char NOMEM[]="MsgBox <Out of memory>\n";
printf(" timeout=nn : set autoclose-timeout\n");
printf(" icon=n : n=none(0), error(1), info(2) or /path/my.png (default: \"info\")\n");
printf(" refresh=n : n=1..3, see readme.txt\n");
- printf(" select=\"Button1,..\" : Labels of up to 16 Buttons, see readme.txt\n");
+ printf(" select=\"Button1,..\" : Labels of up to 24 Buttons, see readme.txt\n");
printf(" absolute=n : n=0/1 return relative/absolute button number (default: 0)\n");
printf(" order=n : maximal buttons per line (default: 3)\n");
printf(" default=n : n=1..buttons, initially selected button, see readme.txt\n");
#include FT_CACHE_H
#include FT_CACHE_SMALL_BITMAPS_H
-#define MAX_BUTTONS 16
+#define MAX_BUTTONS 24
#define BUFSIZE 4095
enum {LEFT, CENTER, RIGHT};
Was ist die Messagebox?
----------------------------------
Die MessageBox dient beim Ausführen von Scripten zur Anzeige von Informationen auf dem
-Bildschirm und zur Abfrage von Entscheidungen des Nutzers über bis zu 16 frei beschrift-
-bare Tasten. Die Nummer der gedrückten Taste (1..16) oder 0 bei Timeout ohne gedrückte
+Bildschirm und zur Abfrage von Entscheidungen des Nutzers über bis zu 24 frei beschrift-
+bare Tasten. Die Nummer der gedrückten Taste (1..24) oder 0 bei Timeout ohne gedrückte
Taste wird als Returnwert zurückgegeben und kann vom Script über die Variable "$?" ausge-
wertet werden.
Zeit wird durch einen beliebigen tastendruck (außer OK und HOME) neu gestartet. Soll die Message-
box ohne Timeout unbegrenzt offenbleiben, ist als Wert für den Timeout "timeout=-1" anzugeben.
-In der Funktion als MessageBox ("msg=...") können bis zu 16 Tasten angezeigt und die Auswahl
+In der Funktion als MessageBox ("msg=...") können bis zu 24 Tasten angezeigt und die Auswahl
des Nutzers abgefragt werden. Anzahl und Beschriftung der Tasten werden über den Parameter
select="Label 1[,Label 2[,...]]"
-festgelegt. Dabei können 1 bis 16 Tasten mit den entsprechenden Texten (z.B. "Label 1") erzeugt
+festgelegt. Dabei können 1 bis 24 Tasten mit den entsprechenden Texten (z.B. "Label 1") erzeugt
werden. Die einzelnen Label-Bezeichner können von beliebig vielen Kommas angeführt und auch ge-
folgt werden. Ausgewertet werden nur die nichtleeren Bereiche zwischen zwei Kommas.
Die Breite der Tasten und damit auch des gesamten Fensters richtet sich nach der längsten Tas-
default=n
-die Nummer der Taste (1..16) übergeben werden, welche unmittelbar nach Anzeige der Messagebox
+die Nummer der Taste (1..24) übergeben werden, welche unmittelbar nach Anzeige der Messagebox
selektiert sein soll und nur noch mit OK bestätigt werden braucht. Dabei ist zu beachten, daß
bei "absolute=1" auch der Defaultwert absolut abgegeben werden muß.