User Interface Generierung für Beispiel-Objekt


! MASTER-SCRIPT

	! ---------------------------------------------------------------------- !
	! -------- U I   P A R A M E T E R ------------------------------------- !
	! ---------------------------------------------------------------------- !
	
	! ---------------------------------------------------------------------- !
	! inicialise all possible tabpage IDs dynamically
	! ---------------------------------------------------------------------- !
	
	drawBox = 1
	TABID_ROOT = -1
		
	DIM TAB_ID[],  TAB_ID_SUB[][]
	_idxTab = 1 	
	TAB_ID[1]	= _idxTab		: _idxTab = _idxTab + 1						! Allgemein
TAB_ID[2] = _idxTab : _idxTab = _idxTab + 1 ! Multi-Einträge
TAB_ID[3] = _idxTab : _idxTab = _idxTab + 1 ! Text + Rahmen
TAB_ID[4] = _idxTab : _idxTab = _idxTab + 1 ! Zeiger + Pfeil
! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! DIM TabTitles[], TabTooltip[], TabPicture[] DIM subTabTitles[][], nTabs_sub[] DIM subTabTooltip[][], subTabPicture[][] nTabs = 4
TabTitles[1] = "Allgemein"
TabTitles[2] = "Multi-Einträge"
TabTitles[3] = "Text + Rahmen"
TabTitles[4] = "Zeiger + Pfeil"
TabPicture[1] = """"
TabPicture[2] = """"
TabPicture[3] = """"
TabPicture[4] = """"
TabTooltip[1] = "Allgemein"
TabTooltip[2] = "Multi-Einträge"
TabTooltip[3] = "Text + Rahmen"
TabTooltip[4] = "Zeiger + Pfeil"
subTabTitles[1][1] = "Allgemein"
subTabTitles[2][1] = "Multi-Einträge"
subTabTitles[3][1] = "Text + Rahmen"
subTabTitles[4][1] = "Zeiger + Pfeil"
! ......................... ! nTabs_sub[4] = 1


subTabTooltip[1][1] = "Allgemein"
subTabTooltip[2][1] = "Multi-Einträge"
subTabTooltip[3][1] = "Text + Rahmen"
subTabTooltip[4][1] = "Zeiger + Pfeil"

! PARAMETER-SCRIPT

! ---------------------------------------------------------------------- !
! -------- U I   P A R A M E T E R --------------------------------------!
! ---------------------------------------------------------------------- !

! If ID is negative, set active page to button ID
IF GLOB_UI_BUTTON_ID < 0 THEN
PARAMETERS gs_ui_current_page = - GLOB_UI_BUTTON_ID
ENDIF

! INTERFACE-SCRIPT ! ---------------------------------------------------------------------- ! ! -------- U I - S c r i p t ----------------------------------------- ! ! ---------------------------------------------------------------------- ! ! ---------------------- H E A D E R ----------------------------------- ! objectName = "keynotes_object_bp" str_version = "0.1" datum = " 09.06.2020" ui_wid = 444 ! UI-Breite ui_hit = 266 ! UI-Höhe UI_DIALOG objectName + "V" + str_version +":"+ datum, ui_wid, ui_hit ! Parameters for ArchiCAD version and Platform Dose = 0 GDL = REQ("GDL_Version") sts = REQUEST("Name_of_program", "",TeX) IF STRSTR(TeX,".EXE") OR STRSTR(TeX,".exe") THEN Dose = 1 ! Seitendefinition ui_current_page gs_ui_current_page ! ----------------- U I - D I M E N S I O N S ------------------------ ! tx1 = 0 ! ......................... ! A L L G E M E I N ui_rand = 10 ! ui_rand links und rechts und jeweils zur Mittelachse dy_start = 40 ! ui_rand oben ui_dist = 10 ! Abstand zwischen Outfield und Infield dy = dy_start ! dynamischer Abstand in Y-Richting led = 24 ! Zeilenabstand: in der nächsten Zeile gilt: dy = dy + led outH = 16 ! Höhe des UI_OUTFIELD outH2 = led * 2 - 1 ! Höhe des UI_OUTFIELD, 2-zeilig inH = 16 ! Höhe des UI_INFIELD für Text inH2 = led -1 ! Höhe des UI_INFIELD für StIFt inH3 = 28 ! Höhe des UI_INFIELD für Material/Schraffur/Linie dyOut = 4 ! UI_OUTFIELD tiefer als UI_INFIELD ! ................................ ! 1 - S p a l t i g dx_out = ui_rand ! Offset des UI_OUTFIELD und ui_rand in X-Richtung outL = ui_wid / 2 - ui_rand * 2 ! Länge des UI_OUTFIELD (Beschreibungtext) dx_in = dx_out + outL + ui_dist ! Offset des 1. UI_INFIELD inL = ui_wid - dx_in - ui_rand ! Länge des UI_INFIELD (Texteingabefeld) ! .................................! 2 - S p a l t i g dx_out_1 = ui_rand ! Offset des UI_OUTFIELD und ui_rand in X-Richtung dx_out_2 = ui_wid / 2 + ui_rand ! Offset UI_OUTFIELD 2. Spalte outL_1 = 90 ! Länge des UI_OUTFIELD (Beschreibungtext): Spalte 1 outL_2 = 90 ! Länge des UI_OUTFIELD (Beschreibungtext): Spalte 1 dx_in_1 = dx_out_1 + outL_1 + ui_dist ! Offset des 1. UI_INFIELD dx_in_2 = ui_wid / 2 + outL_2 + ui_rand + ui_dist ! Offset des 1. UI_INFIELD inL_1 = ui_wid / 2 - ui_rand * 2 - outL_1 - ui_dist ! Länge des UI_INFIELD (Texteingabefeld) : Spalte 1 inL_2 = ui_wid / 2 - ui_rand * 2 - outL_2 - ui_dist ! Länge des UI_INFIELD (Texteingabefeld) : Spalte 2 ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! IF Dose = 1 THEN tx1 = 1 ELSE tx1 = 0 UI_STYLE tx1, 0 IF dose THEN mac = "Windows" ELSE mac = "MAC" ! ------------------------------------------------------------------------ ! Display actual tabpages using extended ui_page command ! ------------------------------------------------------------------------
ui_page TAB_ID[1], TABID_ROOT, TabTitles[1], TabPicture[1]
gosub "UI_PAGE 1"

ui_page TAB_ID[2], TABID_ROOT, TabTitles[2], TabPicture[2]
gosub "UI_PAGE 2"

ui_page TAB_ID[3], TABID_ROOT, TabTitles[3], TabPicture[3]
gosub "UI_PAGE 3"

ui_page TAB_ID[4], TABID_ROOT, TabTitles[4], TabPicture[4]
gosub "UI_PAGE 4"
! ---------------------------- E N D ----------------------------------- ! ! ---------------------------- E N D ----------------------------------- ! END ! -- END -- END -- END -- END -- END -- END -- END -- END -- END -- ! ! ---------------------------- E N D ----------------------------------- ! ! ---------------------------- E N D ----------------------------------- ! ! ---------------------------------------------------------------------- ! ! ---------------------------- I N H A L T ! ---------------------------------------------------------------------- ! "UI_PAGE 1": ! --- Allgemein

GOSUB 99 ! UI-DRAWABOX
GOSUB 100 ! UI-Tabcontrol
dy = dy_start _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Import: Dateiname", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "filename", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Kategorie der Auswahl", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "str_kat_input", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Kategorie filtern", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "str_kat_use", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Anzeige", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "int_anzeige", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Trennzeichen", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "str_trenner", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Anzahl Datensätze", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "int_anz_data", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Kürzel", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "str_kuerzel", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Kurztext", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "str_kurztext", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Langtext", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "str_langtext", _x_in, dy, _in_L, inh dy = dy + _break * led RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! "UI_PAGE 2": ! --- Multi-Einträge

GOSUB 99 ! UI-DRAWABOX
GOSUB 100 ! UI-Tabcontrol
dy = dy_start _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "gehe zu Zeile", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "zuZeile", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Aktuelle Zeile", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "aktuell", _x_in, dy, _in_L, inh dy = dy + _break * led RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! "UI_PAGE 3": ! --- Text + Rahmen

GOSUB 99 ! UI-DRAWABOX
GOSUB 100 ! UI-Tabcontrol
dy = dy_start _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Form Etikett", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "int_label_form", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Font-Typ", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "fontType", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Textgröße", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "text_size", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Schriftstil", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "FONT_STYLE2", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Textausrichtung", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "TEXT_ALIGN", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Textfarbe", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "TEXT_PEN", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Zeilenabstandsfaktor", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "line_spacing", _x_in, dy, _in_L, inH2 dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Zeilenumbruch", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "TEXT_WRAP", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Breitenfaktor", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "width_factor", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Faktor Buchstabenabstand", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "charspace_factor", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Abstand Text zum Rand", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "FRAME_OFFSET", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Schraffur", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "gs_fill_type", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Schraffurstift", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "gs_fill_pen", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Schraffur im Etikett", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "b_fill", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Hintergrundstift", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "TEXT_BG_PEN", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Etikettrahmen", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "FRAME_ON", _x_in, dy, _in_L, inh dy = dy + _break * led RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! "UI_PAGE 4": ! --- Zeiger + Pfeil

GOSUB 99 ! UI-DRAWABOX
GOSUB 100 ! UI-Tabcontrol
dy = dy_start _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Form Pfeil", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "int_form_pfeil", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Eigener Pfeil", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "custom_arrow", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Stiftfarbe Pfeil", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "arrow_pen", _x_in, dy, _in_L, inh dy = dy + _break * led _x_out = dx_out : _x_in = dx_in : _out_L = outL : _in_L = inL : _break = 1 UI_OUTFIELD "Pfeilgröße", _x_out, dy + dyOut, _out_L, outH, 1 UI_INFIELD "arrow_width", _x_in, dy, _in_L, inh dy = dy + _break * led RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! "page_content": dy = dy_start
! B e i s p i e l Z e i l e 1:
UI_OUTFIELD "Länge", dx_out, dy + dyOut, outL, outH, 1 UI_INFIELD "A", dx_in, dy, inL, inH UI_OUTFIELD "Breite", dx_out, dy + dyOut, outL, outH, 1 UI_INFIELD "B", dx_in, dy, inL, inH dy = dy + led UI_OUTFIELD "Material Holz", dx_out, dy + dyOut, outL, outH2, 1 UI_INFIELD "mat_01", dx_in, dy, inL, inH3 UI_OUTFIELD "Schraffur-Definition", dx_out, dy + dyOut, outL, outH2, 1 UI_INFIELD "gs_fill_type", dx_in, dy, inL, inH3 dy = dy + led hinweis = "Ist Ihr Objekt aktuell?" UI_OUTFIELD hinweis, dx_out, dy + 6, 150, outH, 1 UI_BUTTON UI_LINK, "aktuell?", dx_in, dy, 100, inH , 1 , \
"https://www.b-prisma.de/uptodate/objekt_aktuell.php?gsm=" + objectName +".gsm&version=" + str_version UI_TOOLTIP "Check for Updates" RETURN

! ---------------------------------------------------------------------- ! ! ---------------------------- T A B C O N T R O L ! ---------------------------------------------------------------------- ! 99: ! Draw Box einfach: Rahmen unten ohn Subpages IF drawBox THEN
UI_SEPARATOR 1, 30, 1, 265 ! Hauptfeld Linie Senkrecht Links UI_SEPARATOR ui_wid - 3, 30, ui_wid - 3, 265 ! Hauptfeld Linie Senkrecht Rechts UI_SEPARATOR 3 - dose * 1, 263, ui_wid - 2, 263 ! Hauptfeld Linie Waagerecht unten ENDIF RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! 100: ! Tab Control Standard (Tabs oben) ! Linien mit UI_SEPERATOR curX = 1 xAddition = round_int (ui_wid / nTabs)-1 for i = 1 to nTabs IF gs_ui_current_page = TAB_ID[i] THEN UI_STYLE tx1, 1 UI_OUTFIELD TabTitles[i], curX+4, 8, xAddition-9, 16, 2 UI_STYLE tx1, 0 IF i = nTabs THEN tzu = 1 ELSE tzu = 0 UI_SEPARATOR curX, 2, curX, 30 + dose * 1 ! Tab Senkrecht Links UI_SEPARATOR curX + 2 - dose * 2, 1, curX + xAddition-2, 1 ! Tab Linie Oben UI_SEPARATOR curX + xAddition-4-tzu, 3 - dose * 1,curX + xAddition-4-tzu, 31 ! Tab Senkrecht rechts IF curX > 1 THEN UI_SEPARATOR 3 - dose * 2, 29, curX+1, 29 ! Linie Waagerecht links neben Tab ENDIF IF curX < ui_wid THEN UI_SEPARATOR curX + xAddition - 2 - dose * 2 , 29, ui_wid - 2 + dose * 1, 29 ! Linie Waagerecht rechts neben Tab ENDIF else UI_BUTTON UI_FUNCTION, TabTitles[i], curX+1, 2, xAddition - 3, 24, - TAB_ID[i] UI_TOOLTIP TabTooltip[i] ENDIF curX = curX + xAddition next i RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! 200: ! Tab Control Standard (Tabs oben bei Subpage) ! Linien mit UI_SEPERATOR _nr_TabTitles = ii curX = 1 xAddition = round_int (ui_wid / nTabs)-1 curX = curX + xAddition * (ii - 1) UI_STYLE tx1, 1 UI_OUTFIELD TabTitles[_nr_TabTitles], curX+4, 8, xAddition-9, 16, 2 UI_STYLE tx1, 0 IF i = nTabs THEN tzu = 1 ELSE tzu = 0 UI_SEPARATOR curX, 2, curX, 30 + dose * 1 ! Tab Senkrecht Links UI_SEPARATOR curX + 2 - dose * 2, 1, curX + xAddition-2, 1 ! Tab Linie Oben UI_SEPARATOR curX + xAddition-4-tzu, 3 - dose * 1, curX + xAddition-4-tzu, 31 ! Tab Senkrecht rechts IF curX > 1 THEN UI_SEPARATOR 3 - dose * 2, 29, curX+1, 29 ! Linie Waagerecht links neben Tab ENDIF IF curX < ui_wid THEN UI_SEPARATOR curX + xAddition - 2 - dose * 2 , 29, ui_wid - 2 + dose * 1, 29 ! Linie Waagerecht rechts neben Tab ENDIF curX = 1 xAddition = round_int (ui_wid / nTabs)-1 for i = 1 to nTabs IF i # _nr_TabTitles THEN UI_BUTTON UI_FUNCTION, TabTitles[i], curX+1, 2, xAddition - 3, 24, - TAB_ID[i] UI_TOOLTIP TabTooltip[i] curX = curX + xAddition next i RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! 300: ! Draw Box mit Tabs unten für gs_ui_sub_tabpages GOSUB 111 xAddition = round_int (ui_wid / nTabs_sub[ii]) - 1 IF gs_ui_current_page = TAB_ID[ii] THEN UI_STYLE tx1, 1 UI_OUTFIELD subTabTitles[ii][1], curX+4, 248, xAddition-9, 16, 2 UI_STYLE tx1, 0 GOSUB 112 else UI_BUTTON UI_FUNCTION, subTabTitles[ii][1], curX+1, 245, xAddition - 3, 20, - TAB_ID[ii] UI_TOOLTIP subTabTooltip[ii][1] ENDIF curX = curX + xAddition for i = 1 to nTabs_sub[ii] - 1 IF gs_ui_current_page = TAB_ID_SUB[ii][i] THEN UI_STYLE tx1, 1 UI_OUTFIELD subTabTitles[ii][i + 1], curX+4, 248, xAddition-9, 16, 2 UI_STYLE tx1, 0 GOSUB 112 else UI_BUTTON UI_FUNCTION, subTabTitles[ii][i + 1], curX+1, 245, xAddition - 3, 20, - TAB_ID_SUB[ii][i] UI_TOOLTIP subTabTooltip[ii][i+1] ENDIF curX = curX + xAddition next i RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! 111: ! Linien Seite, wenn es TABs unten gibt IF drawBox THEN UI_SEPARATOR 1, 30, 1, 243 ! senkrechte Linie links UI_SEPARATOR ui_wid - 3, 30, ui_wid - 3, 243 ! senkrechte Linie rechts ENDIF curX = 1 RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- ! 112: ! Tab-Linien unten bei TABs unten UI_SEPARATOR curX, 243 - dose * 2, curX, 265 ! senkrechte Linie links UI_SEPARATOR curX + 2 - dose * 2, 264, curX + xAddition-2, 264 ! waagerechte Linie unten UI_SEPARATOR curX + xAddition-4, 243 - dose * 2, curX + xAddition-4, 265 ! senkrechte Linie rechts IF curX > 1 THEN UI_SEPARATOR 3 - dose * 2, 241, curX+1, 241 ! waagrechte Linie links neben TAB ENDIF IF curX < 333 THEN UI_SEPARATOR curX + xAddition - 2 - dose * 2, 241, ui_wid - 2, 241 ! waagrechte Linie rechts neben TAB ENDIF RETURN ! ---------------------------------------------------------------------- ! ! ---------------------------------------------------------------------- !