View Categories

MCEXT.DIALOG

//SCRIPT :MCEXT.DIALOG.MCFSCR
//Oeffnet ein universelles Eingabe Dialogfenster mit Titel, Beschreibung undverschiedenen Eingabeelementen (Textbox, Combobox oder CheckedListBox).

//Parameter:
//-Titel
//Textzeile ueber dem Dialog, fett und unterstrichen.

//- Beschreibung
//Mehrzeilig, Auto Height, max. 2 bis 3 Zeilen.
//Wenn RTFText =" true wird diese Beschreibung als RTF formatiert."

//- Array
//Werteliste getrennt durch Semikolon.
//Beispiel: "A;B;C"

//- Typ
//text - Eingabe Textbox (RichTextBox)
//combo - Combobox
//list - CheckedListBox

//- Sorted
//true / false / 1 / 0

//- ControlHeight
//- FontSize
//- Breite
//- Hoehe

//OPTIONALE Formatierung fuer Typ text:
//- /lcase / ucase
//- FormatTextTyp
//string / zahl / datum

//- FormatAllow
//Liste erlaubter Zeichen z.B. "0123456789."

//- FormatMaxLen
//Maximale Zeichenlaenge.

//OPTIONALE Regeln fuer CheckedListBox:
//- ListCountSelectedMin
//- ListCountSelectedMax
//Wenn Min =" 1 und Max = 1 arbeitet die Liste automatisch wie ein Radiobutton Feld."

//- MultiLine
//true / 1
//Aktiviert mehrzeilige RichTextBox.

//- BackColor
//Fenster Hintergrundfarbe (Name oder HEX).

//- ForeColor
//Farbe fuer Titel und Beschreibung.
//- RTFText
//true / 1
//Beschreibung wird als RTF interpretiert (fett, unterstrichen usw.).
//Wenn leer oder false wird normaler Text angezeigt.
// /
//Rueckgabe:
//Textbox: eingegebener Text
//Combo: ausgewaehlter Wert
//List: markierte Eintraege als "A;B;C"
//Abbruch: Leerstring

QUELLE={APPPATH}\CONFIG\
FILE_TYP="ini"
$GL=CHAR{123}
$GR=CHAR{125}

START:
TITEL="Zeigt die Möglichkeiten von MCEXT.DIALOG"
BESCHREIBUNG="Wählen Sie die gewünschte Dialog-Form"
ABFRAGE-ARRAY="TeXT;CombO;LIsT"
ABFRAGE-ARRAY=UCASE{ABFRAGE-ARRAY}
SORTED="true"
FONTSIZE="9"
FORMATTEXTTYP=""
WIDTH="370"
HEIGHT="200"
BACKCOLOR=""
FORECOLOR=""
RTFTEXT="false"
TYP=MCEXT.DIALOG{{Titel},{BESCHREIBUNG},{ABFRAGE-ARRAY},combo,{SORTED},{LISTHEIGHT},{FONTSIZE},{WIDTH},{HEIGHT},{FORMATTEXT},{FORMATTEXTTYP},{FORMATALLOW},{FORMATMAXLEN},{LISTCOUNTSELECTEDMIN},{LISTCOUNTSELECTEDMAX},false,{BACKCOLOR},{FORECOLOR},{RTFTEXT}}
IFBLOCK{TYP=}
	EXIT=EXITSCRIPT{}
ENDIF
START_TYP:
//Beispiel-Arrays
ORI_ARRAY=""
ORI_ARRAY=MCEXT.GET_FILES_IN_PATH{{QUELLE},{FILE_TYP},true}
//ARRAY="Anton;Berta,Bernd;Cäsar,Siegfried,Anton;Vorname,Nachname;Berta,Bernd;Cäsar,Siegfried,Anton;Berta,Bernd;Cäsar,Siegfried;Anton;Berta,Bernd;Cäsar,Siegfried,Anton;Vorname,Nachname;Berta,Bernd;Cäsar,Siegfried,Anton;Berta,Bernd;Cäsar,Siegfried"
TITEL=Das ist das Beispiel für {TYP}
BESCHREIBUNG=Zeigt die Möglichkeiten von DIALOG.{TYP}
//TEXT=""
WIDTH="500"
FONTSIZE="9"
IFBLOCK{TYP=TEXT}
	TITEL=Das sind die möglichen Typen für {TYP}
	BESCHREIBUNG="Wahlen Sie einen FORMATTEXTTYP"
	TMP_ARRAY="STRING;ZAHL;DATUM;DATETIMEPICKER"
	BACKCOLOR="#54699c"
	FORECOLOR="#ffffff"
	FORMATTEXTTYP=MCEXT.DIALOG{{Titel},{BESCHREIBUNG},{TMP_ARRAY},combo,{SORTED},{LISTHEIGHT},{FONTSIZE},370,200,{FORMATTEXT},{FORMATTEXTTYP},{FORMATALLOW},{FORMATMAXLEN},{LISTCOUNTSELECTEDMIN},{LISTCOUNTSELECTEDMAX},false,{BACKCOLOR},{FORECOLOR},{RTFTEXT}}
	IFBLOCK{FORMATTEXTTYP=}
		GO{START}
	ENDIF
	MULTILINE="true"
	FORMATTEXT=""
	FORMATALLOW=""
	FORMATMAXLEN=""
	TITEL=Das ist FORMATTEXTTYP {FORMATTEXTTYP}
	IFBLOCK{FORMATTEXTTYP=STRING}
		HEIGHT="230"
		IFBLOCK{MULTILINE=true}
			HEIGHT=SUM{{CONTROLHEIGHT}+{HEIGHT}+80}
		ENDIF
		CONTROLHEIGHT="150"
		BESCHREIBUNG="Sie können alles eingeben!"
		BACKCOLOR="#1d1d1d"
		FORECOLOR="orange"
	ELSEIF{FORMATTEXTTYP=DATETIMEPICKER}
		FORMATTEXTTYP=MCEXT.DATETIMEPICKER{Beispieldatum,{DATE},{AUFDATUM},{ENTDATUM},true,true,10,#1D222C,#128FDC}
		IFBLOCK{FORMATTEXTTYP!}
			DLG=DLGMESSAGE{{FORMATTEXTTYP}}
		ENDIF
		GO{START_TYP}
	ELSE
		HEIGHT="200"
		WIDTH="300"
		CONTROLHEIGHT="20"
		IFBLOCK{FORMATTEXTTYP=DATUM}
			BACKCOLOR="black"
			FORECOLOR="#3b7cef"
			BESCHREIBUNG="Geben Sie ein gültiges Datum ein!"
		ELSE
			BACKCOLOR="#3b7cef"
			FORECOLOR="white"
			BESCHREIBUNG="Geben Sie eine gültige Zahl ein!"
		ENDIF
	ENDIF
ELSEIF{TYP=COMBO}
	SORTED="true"
	WIDTH="400"
	HEIGHT="200"
ELSE
	CONTROLHEIGHT="150"
	SORTED="true"
	LISTCOUNTSELECTEDMIN="1"
	LISTCOUNTSELECTEDMAX="2"
	HEIGHT="320"
	BACKCOLOR="#1d222c"
	FORECOLOR="#f4b208"
	IFBLOCK{LISTCOUNTSELECTEDMIN!}
		BESCHREIBUNG={BESCHREIBUNG} Sie müssen mindestens {LISTCOUNTSELECTEDMIN} Einträge auswählen!
	ENDIF
	IFBLOCK{LISTCOUNTSELECTEDMAX!}
		BESCHREIBUNG={BESCHREIBUNG} Sie dürfen höchstens {LISTCOUNTSELECTEDMAX} Einträge auswählen!
	ENDIF
ENDIF
ABFRAGE-ARRAY=UCASE{{ABFRAGE-ARRAY}}
AUSWAHL=MCEXT.DIALOG{{Titel},{BESCHREIBUNG},{ORI_ARRAY},{TYP},{SORTED},{CONTROLHEIGHT},{FONTSIZE},{WIDTH},{HEIGHT},{FORMATTEXT},{FORMATTEXTTYP},{FORMATALLOW},{FORMATMAXLEN},{LISTCOUNTSELECTEDMIN},{LISTCOUNTSELECTEDMAX},{MULTILINE},{BACKCOLOR},{FORECOLOR},{RTFTEXT}}
IFBLOCK{FORMATTEXTTYP!}
	IFBLOCK{AUSWAHL!}
		DLG=DLGMESSAGE{{AUSWAHL}}

	ENDIF
	GO{START_TYP}
ENDIF

IFBLOCK{AUSWAHL!}
	DLG=DLGMESSAGE{{AUSWAHL}}

ENDIF
GO{START}