{$if not def AP_OBERFL_H} CONST AP_OBERFL_H = 0; { ** Modifiziert die Koordinaten eines Gadgets so, daß sie sich fontsensitiv anpassen ** } PROCEDURE SensitivGadget(VAR ng:NewGadget); BEGIN ng.ng_LeftEdge := ComputeX(ng.ng_LeftEdge)+xoff; ng.ng_TopEdge := ComputeY(ng.ng_TopEdge)+yoff; ng.ng_Width := ComputeX(ng.ng_Width); ng.ng_Height := ComputeY(ng.ng_Height); END; { -- Zeichnet eine BevelBox -- } PROCEDURE Rahmen(VAR wo : p_Window; x,y,b,h : INTEGER; recessed : BOOLEAN); BEGIN t[1] := TagItem(GT_VisualInfo,LONG(vi)); t[2] := TagItem(GTBB_Recessed, LONG(recessed)); t[3].ti_Tag := TAG_DONE; DrawBevelBoxA(wo^.RPort,xoff+ComputeX(x),yoff+ComputeY(y),ComputeX(b),ComputeY(h),^t); END; FUNCTION GetString(VAR g:p_Gadget) : STR; VAR si : p_StringInfo; BEGIN IF (g^.GadgetType AND GTYP_STRGADGET)=0 THEN EXIT; si := g^.SpecialInfo; GetString := si^.Buffer; END; PROCEDURE GhostGadget(VAR gad:p_Gadget; VAR wp:p_Window; status:BOOLEAN); BEGIN t[1] := TagItem(GA_Disabled, ORD(status)); t[2].ti_Tag := TAG_DONE; GT_SetGadgetAttrsA(gad, wp, NIL, ^t); END; PROCEDURE raster(win:p_window,x,y,b,h:INTEGER); { zeichnet ein Raster } { Thanks And Greetings To PackMAN !!!!!!!!!!!! ....... } VAR pattern : array[0..1] of word; rp:p_rastport; BEGIN rp:=win^.rport; b:=computex(b+x)+xoff; h:=computey(h+y)+yoff; x:=computex(x)+xoff; y:=computey(y)+yoff; pattern[0]:=$AAAA; { Pattern ausfüllen } pattern[1]:=$5555; SetAfPt(RP,^pattern,1); { Pattern setzen } SetAPen(RP,2); { Farben für Raster } SetBPen(RP,0); SetDrMd(RP,JAM2); { Schreibmodus setzen } RectFill(RP,x,y,b,h); SetAfPt(RP,NIL,0); { Pattern zurücksetzen } END; PROCEDURE clearq(win:p_window;x,y,b,h:INTEGER); {löscht einen Quadratischen ähm rechteckigen Bereich} VAR rp:p_rastport; BEGIN rp:=win^.rport; b:=computex(b+x)+xoff; { bis ich hier die richtige Formel hatte! Sche°@} h:=computey(h+y)+yoff; x:=Computex(x)+xoff; y:=Computey(y)+yoff; SetApen(rp,0); Setdrmd(rp,JAM2); rectfill(rp,x,y,b,h); END; { -- Die Editgadgets definieren -- } PROCEDURE SetEditGads; BEGIN ComputeFont(EditWinWidth,EditWinHeight); ww := ComputeX(EditWinWidth); wh := ComputeY(EditWinHeight); gl1 := NIL; gl1 := CreateContext(^gl1); t[1] := TagItem(GT_Underscore,LONG("_")); t[2] := TagItem(GTST_MaxChars,namelength-1); t[3] := TagItem(GTST_String, LONG(^nbuf)); t[4].ti_Tag := TAG_DONE; ng := NewGadget(100,4,405,14, "_Name",mytattr, 1,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); egad[1] := CreateGadgetA(STRING_KIND,gl1,^ng,^t); ng := NewGadget(100,19,405,14, "_Vorname",MyTattr, 2,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[2].ti_Data := vnamelength-1; t[3].ti_Data := LONG(^vbuf); egad[2] := CreateGadgetA(STRING_KIND,egad[1],^ng,^t); ng := NewGadget(100,34,405,14, "Str_aße",MyTattr, 3,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[2].ti_Data := strasselength-1; t[3].ti_Data := LONG(^sbuf); egad[3] := CreateGadgetA(STRING_KIND,egad[2],^ng,^t); ng := NewGadget(100,49,100,14, "_PLZ",MyTattr, 4,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[2].ti_Data := plzlength-1; t[3].ti_Data := LONG(^pbuf); egad[4] := CreateGadgetA(STRING_KIND,egad[3],^ng,^t); ng := NewGadget(245,49,260,14, "_Ort",MyTattr, 5,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[2].ti_Data := ortlength-1; t[3].ti_Data := LONG(^obuf); egad[5] := CreateGadgetA(STRING_KIND,egad[4],^ng,^t); ng := NewGadget(100,64,150,14, "_Telefon",MyTattr, 6,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[2].ti_Data := tellength-1; t[3].ti_Data := LONG(^tbuf); egad[6] := CreateGadgetA(STRING_KIND,egad[5],^ng,^t); ng := NewGadget(320,64,150,14, "_Fax",MyTattr, 7,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[2].ti_Data := faxlength-1; t[3].ti_Data := LONG(^fbuf); egad[7] := CreateGadgetA(STRING_KIND,egad[6],^ng,^t); ng := NewGadget(100,79,150,14, "_Geburtst.",MyTattr, 8,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[2].ti_Data := geblength-1; t[3].ti_Data := LONG(^gbuf); egad[8] := CreateGadgetA(STRING_KIND,egad[7],^ng,^t); ng := NewGadget(100,94,150,14, "EMail _1",MyTattr, 9,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GTST_String, LONG(^em1buf)); t[2] := TagItem(GTST_MaxChars, EMailLength-1); t[3] := TagItem(GT_Underscore, LONG("_")); t[4].ti_Tag := TAG_DONE; egad[9] := CreateGadgetA(STRING_KIND,egad[8],^ng,^t); ng := NewGadget(320,94,150,14, "EMail _2",MyTattr, 10,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GTST_String, LONG(^em2buf)); t[2] := TagItem(GTST_MaxChars, EMailLength-1); t[3] := TagItem(GT_Underscore, LONG("_")); t[4].ti_Tag := TAG_DONE; egad[10] := CreateGadgetA(STRING_KIND,egad[9],^ng,^t); ng := NewGadget(100,109,405,14, "_Kommentar:",MyTattr, 11,PLACETEXT_LEFT, vi,NIL); sensitivgadget(ng); t[1] := TagItem(GTST_String, LONG(^kombuf)); t[2] := TagItem(GTST_MaxChars, komlength-1); egad[11] := CreateGadgetA(STRING_KIND,egad[10],^ng,^t); ng := NewGadget(5,158,150,14, "_Übernehmen",^tattr, 12,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GT_Underscore, LONG("_")); t[2].ti_Tag := TAG_DONE; egad[12] := CreateGadgetA(BUTTON_KIND,egad[11],^ng,^t); ng := NewGadget(468,158,150,14, "A_bbruch",MyTattr, 13,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); egad[13] := CreateGadgetA(BUTTON_KIND,egad[12],^ng,^t); j := 7; k := 128; FOR i := 1 TO 10 DO BEGIN ng := NewGadget(j,k,27,CHECKBOX_HEIGHT, SelectTexte[i],MyTattr, i+13,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GTCB_Checked,0); t[2] := TagItem(GTCB_Scaled,1); t[3].ti_Tag := TAG_DONE; egad[i+13] := CreateGadgetA(CHECKBOX_KIND,egad[i+12],^ng,^t); j := j + 124; IF j > 620 THEN BEGIN j := 7; k := k + 13; END; END; MXLabels[1] := "Firma (_3)"; MXLabels[2] := "Herrn (_4)"; MXLabels[3] := "Frau (_5)"; MXLabels[4] := "_#"; MXLabels[5] := NIL; ng := NewGadget(520,5,MX_WIDTH,fontx, NIL,MyTattr, 24,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GTMX_Labels, LONG(^MXLabels)); t[2] := TagItem(GTMX_Scaled, 1); t[3] := TagItem(GTMX_Spacing, 2); t[4] := TagItem(GTMX_Active, anrede_z); t[5] := TagItem(GT_Underscore, LONG("_")); t[6].ti_Tag := TAG_DONE; egad[24] := CreateGadgetA(MX_KIND,egad[23],^ng,^t); {**} ng := NewGadget(520,{10}49, 80,14, NIL,mytattr, 25,0, vi,NIL); SensitivGadget(ng); { ng.ng_TopEdge := ng.ng_TopEdge + egad[24]^.Height;} t[1] := TagItem(GTST_String,LONG(^anredebuf)); t[2] := TagItem(GTST_MaxChars, 9); t[3].ti_Tag := TAG_DONE; IF anrede_z < 3 THEN t[3] := TagItem(GA_Disabled, 1); t[4].ti_Tag := TAG_DONE; egad[25] := CreateGadgetA(STRING_KIND,egad[24],^ng,^t); END; PROCEDURE SortierenOberfläche; BEGIN ComputeFont(276,80); ww := ComputeX(276); wh := ComputeY(80); gl2 := NIL; gl2 := CreateContext(^gl2); MXLabels[1] := "_Name"; MXLabels[2] := "_Vorname"; MXLabels[3] := "Stra_ße"; MXLabels[4] := "_Postleitzahl"; MXLabels[5] := "_Ort"; MXLabels[6] := "_Telefon"; MXLabels[7] := "_Fax"; MXLabels[8] := NIL; ng := NewGadget(15,7,MX_WIDTH,fontx, NIL,MyTattr, 1,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GT_Underscore, LONG("_")); t[2] := TagItem(GTMX_Scaled, 1); t[3] := TagItem(GTMX_Spacing, 2); t[4] := TagItem(GTMX_Active, 0); t[5] := TagItem(GTMX_Labels, LONG(^MXLabels)); t[6].ti_Tag := TAG_DONE; egad[1] := CreateGadgetA(MX_KIND,gl2,^ng,^t); ng := NewGadget(150,4,120,12, '_Aufwärts',MyTattr, 2,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); t[2].ti_tag := TAG_DONE; egad[2] := CreateGadgetA(BUTTON_KIND,egad[1],^ng,^t); ng := NewGadget(150,18,120,12, 'Ab_wärts',MyTattr, 3,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); egad[3] := CreateGadgetA(BUTTON_KIND,egad[2],^ng,^t); ng := NewGadget(150,32,120,12, 'Ab_bruch (Esc)',MyTattr, 4,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); egad[4] := CreateGadgetA(BUTTON_KIND,egad[3],^ng,^t); END; PROCEDURE SuchenOberfläche; BEGIN ComputeFont(322,149); ww := ComputeX(322); wh := ComputeY(149); gl2 := NIL; gl2 := CreateContext(^gl2); ng := NewGadget(110,8,200,14, "_Suchstring:",MyTattr, 1,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GT_UNDERSCORE,LONG('_')); t[2] := TagItem(GTST_String,LONG(^suchbuf)); t[3] := TagItem(GTST_MaxChars,39); t[4].ti_Tag := TAG_DONE; sgad[1] := CreateGadgetA(STRING_KIND,gl2,^ng,^t); ng := NewGadget(18,25,26,CHECKBOX_HEIGHT, '_Name',MyTattr, 2,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); t[2] := TagItem(GTCB_SCALED,1); t[3] := TagItem(GTCB_CHECKED,1); sgad[2] := CreateGadgetA(CHECKBOX_KIND,sgad[1],^ng,^t); ng := NewGadget(18,38,26,CHECKBOX_HEIGHT, '_Vorname',MyTattr, 3,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); t[3].ti_Tag := TAG_DONE; sgad[3] := CreateGadgetA(CHECKBOX_KIND,sgad[2],^ng,^t); ng := NewGadget(18,51,26,CHECKBOX_HEIGHT, 'Stra_ße',MyTattr, 4,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[4] := CreateGadgetA(CHECKBOX_KIND,sgad[3],^ng,^t); ng := NewGadget(18,64,26,CHECKBOX_HEIGHT, '_Plz',MyTattr, 5,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[5] := CreateGadgetA(CHECKBOX_KIND,sgad[4],^ng,^t); ng := NewGadget(18,77,26,CHECKBOX_HEIGHT, '_Ort',MyTattr, 6,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[6] := CreateGadgetA(CHECKBOX_KIND,sgad[5],^ng,^t); ng := NewGadget(18,90,26,CHECKBOX_HEIGHT, '_Telefon',MyTattr, 7,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[7] := CreateGadgetA(CHECKBOX_KIND,sgad[6],^ng,^t); ng := NewGadget(18,103,26,CHECKBOX_HEIGHT, 'G_eburtstag',MyTattr, 8,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[8] := CreateGadgetA(CHECKBOX_KIND,sgad[7],^ng,^t); ng := NewGadget(18,116,26,CHECKBOX_HEIGHT, '_Fax',MyTattr, 9,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[9] := CreateGadgetA(CHECKBOX_KIND,sgad[8],^ng,^t); ng := NewGadget(150,25,26,CHECKBOX_HEIGHT, 'Email _1',MyTattr, 10,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[10] := CreateGadgetA(CHECKBOX_KIND,sgad[9],^ng,^t); ng := NewGadget(150,38,26,CHECKBOX_HEIGHT, 'Email _2',MyTattr, 11,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[11] := CreateGadgetA(CHECKBOX_KIND,sgad[10],^ng,^t); ng := NewGadget(150,51,26,CHECKBOX_HEIGHT, 'Ko_mmentar',MyTattr, 12,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[12] := CreateGadgetA(CHECKBOX_KIND,sgad[11],^ng,^t); ng:=NewGadget(150,64,26,CHECKBOX_HEIGHT,'_Alle aktivieren',mytattr, 13,PLACETEXT_RIGHT, vi,NIL); sensitivgadget(ng); sgad[13]:=CreateGadgetA(CHECKBOX_KIND,sgad[12],^ng,^t); { ng:=NewGadget(231,64,78,12,'_Keine',mytattr, 14,PLACETEXT_IN, vi,NIL); sensitivgadget(ng); sgad[14]:=CreateGadgetA(BUTTON_KIND,sgad[13],^ng,^t);} ng := NewGadget(150,77,26,CHECKBOX_HEIGHT, '_genau ',MyTattr, 15,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); sgad[15] := CreateGadgetA(CHECKBOX_KIND,sgad[13],^ng,^t); ng := NewGadget(150,90,26,CHECKBOX_HEIGHT, 'G/k _ignorieren',MyTattr, 16,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); t[2] := TagItem(GTCB_SCALED,1); t[3] := TagItem(GTCB_CHECKED,1); t[4].ti_Tag := TAG_DONE; sgad[16] := CreateGadgetA(CHECKBOX_KIND,sgad[15],^ng,^t); ng := NewGadget(150,103,26,CHECKBOX_HEIGHT, 'von Anfang _.',MyTattr, 17,PLACETEXT_RIGHT, vi,NIL); SensitivGadget(ng); t[3].ti_Tag := TAG_DONE; sgad[17] := CreateGadgetA(CHECKBOX_KIND,sgad[16],^ng,^t); ng:=NewGadget(150,116,140,12,'Datensatz _zeigen',mytattr, 18,PLACETEXT_IN, vi,NIL); sensitivgadget(ng); sgad[18]:=CreateGadgetA(BUTTON_KIND,sgad[17],^ng,^t); ng:=NewGadget(6,134,140,15,'S_uchen',mytattr, 19,PLACETEXT_IN, vi,NIL); sensitivgadget(ng); sgad[19]:=CreateGadgetA(BUTTON_KIND,sgad[18],^ng,^t); ng:=NewGadget(179,134,140,15,'Ab_bruch (Esc)',mytattr, 20 ,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); sgad[20]:=CreateGadgetA(BUTTON_KIND,sgad[19],^ng,^t); END; FUNCTION speichernalsOberfläche:BOOLEAN; TYPE labels=ARRAY[0..12] OF STR; VAR CYCLELABELS:labels; zustand:INTEGER; PROCEDURE kram; BEGIN t[2] := TagItem(GTCB_SCALED,1); t[3] := TagItem(GTCB_CHECKED,1); t[4].ti_Tag := TAG_DONE; IF ((sgad[2]^.flags AND selected) = SELECTED) THEN t[3].ti_data:=0; GT_SetGadgetAttrsA(sgad[2],wp2,NIL,^t); si:=sgad[1]^.specialinfo; passwort:=si^.buffer; t[2]:=TagItem(GTST_Maxchars,200); t[3]:=TagItem(GTST_String,LONG(^passwort)); t[4]:=TagItem(GA_DISABLED,1); IF ((sgad[2]^.flags AND selected) = SELECTED) THEN t[4].ti_data:=0; t[5].ti_tag:=TAG_DONE; GT_SetGadgetAttrsA(sgad[1],wp2,NIL,^t); END; BEGIN Cyclelabels:=labels('Aktueller Datensatz', 'Alle Datensätze', Selecttexte[1], Selecttexte[2], Selecttexte[3], Selecttexte[4], Selecttexte[5], Selecttexte[6], Selecttexte[7], Selecttexte[8], Selecttexte[9], Selecttexte[10],NIL); dummy:=FALSE; Computefont(460,64); ww:=computeX(460); wh:=computeY(64); gl1:=NIL; gl1:=CreateContext(^gl1); t[1]:=TAGITEM(GT_UNDERSCORE,LONG('_')); t[2]:=TagItem(GTST_Maxchars,200); t[3]:=TagItem(GTST_String,LONG(^passwort)); t[4]:=TagItem(GA_DISABLED,1); t[5].ti_tag:=TAG_DONE; ng:=NewGadget(86,8,200,15,'_Passwort',mytattr, 1,PLACETEXT_LEFT, vi,NIL); sensitivgadget(ng); sgad[1]:=CreateGadgetA(STRING_KIND,^gl1,^ng,^t); t[2].ti_tag:=TAG_DONE; t[2] := TagItem(GTCB_SCALED,1); t[3] := TagItem(GTCB_CHECKED,0); t[4].ti_tag:=TAG_DONE; ng:=NewGadget(418,9,26,CHECKBOX_HEIGHT,'_Verschlüsseln',mytattr, 2,PLACETEXT_LEFT, vi,NIL); sensitivgadget(ng); sgad[2]:=CreateGadgetA(CHECKBOX_KIND,sgad[1],^ng,^t); zustand:=1; t[2]:=TagItem(GTCY_ACTIVE,zustand); t[3]:=TagItem(GTCY_Labels,LONG(^Cyclelabels)); t[4].ti_tag:=TAG_DONE; ng:=NewGadget(104,26,200,14,'Date_nsätze',mytattr, 3,PLACETEXT_LEFT, vi,NIL); sensitivgadget(ng); sgad[3]:=CreateGadgetA(CYCLE_KIND,sgad[2],^ng,^t); t[2].ti_tag:=TAG_DONE; ng:=NewGadget(6,47,160,15,'_Speichern (Return)',mytattr, 4,PLACETEXT_IN, vi,NIL); sensitivgadget(ng); sgad[4]:=CreateGadgetA(BUTTON_KIND,sgad[3],^ng,^t); ng:=NewGadget(334,47,120,15,'A_bbruch (Esc)',mytattr, 5,PLACETEXT_IN, vi,NIL); sensitivgadget(ng); sgad[5]:=CreateGadgetA(BUTTON_KIND,sgad[4],^ng,^t); t[1] := TagItem(WA_Innerwidth,ww); t[2] := TagItem(WA_Innerheight,wh); t[3] := Tagitem(WA_Top,druckwintop); t[4] := TagItem(WA_Left,druckwinleft); t[5].ti_Tag := WA_Title; t[5].ti_Data := "AddiPro - Speichern als ..."; t[6] := TagItem(WA_Idcmp,IDCMP_CLOSEWINDOW+IDCMP_GADGETUP+IDCMP_RAWKEY); t[7] := TagItem(WA_Flags,WFLG_CLOSEGADGET+WFLG_DRAGBAR+WFLG_ACTIVATE+WFLG_DEPTHGADGET+ WFLG_RMBTRAP+WFLG_SMART_REFRESH+WFLG_NOCAREREFRESH); t[8].ti_Tag := TAG_DONE; IF pubname <> "" THEN BEGIN t[8] := TagItem(WA_PubScreenFallBack, 1); t[9] := TagItem(WA_PubScreenName, LONG(pubname)); t[10].ti_Tag := TAG_DONE; END; wp2 := OpenWindowTagList(NIL,^t); IF wp2=NIL THEN exit; {*} raster(wp2,0,1,459,63{-1}); clearq(wp2,6,4,448,39); Rahmen(wp2,6,4,448,40,TRUE); l:=addgList(wp2,gl1,0,-1,NIL); refreshglist(wp2^.firstgadget,wp2,NIL,-1); GT_Refreshwindow(wp2,NIL); dummy:=FALSE; REPEAT GetMessage(wp2,class,code,qual,gadnum); CASE Class OF IDCMP_CLOSEWINDOW: dummy:=TRUE; IDCMP_RAWKEY: IF qual in [32768,32769,32770,32772] THEN BEGIN CASE code OF 53,69:BEGIN {B, ESC} Butselecter(wp2,sgad[5]); dummy:=TRUE; speichernalsoberfläche:=FALSE; END; 33,68 : BEGIN {S,CR} Butselecter(wp2,sgad[4]); dummy:=TRUE; speichernalsoberfläche:=TRUE; END; 52 : BEGIN {V} kram; END; 25 : BEGIN {P} IF ((sgad[1]^.flags AND gadgdisabled) = GADGDISABLED) THEN kram; ok:=ActivateGadget(sgad[1],wp2,NIL) END; 54 : BEGIN {N} changecycler(wp2,sgad[3],PTR(^Cyclelabels),12,zustand); END; ELSE END; END; IDCMP_GadgetUP: CASE gadnum OF 2: BEGIN si:=sgad[1]^.specialinfo; passwort:=si^.buffer; t[2]:=TagItem(GTST_Maxchars,200); t[3]:=TagItem(GTST_String,LONG(^passwort)); t[4]:=TagItem(GA_DISABLED,0); t[5].ti_tag:=TAG_DONE; IF ((sgad[2]^.flags AND selected) <> SELECTED) THEN t[4].ti_data:=1; GT_SetGadgetAttrsA(sgad[1],wp2,NIL,^t); END; 3:IF zustand<12 THEN inc(zustand) ELSE zustand:=0; 4:BEGIN dummy:=TRUE; speichernalsoberfläche:=TRUE; END; 5:BEGIN dummy:=TRUE; speichernalsoberfläche:=FALSE; END; ELSE END; ELSE END; UNTIL dummy; dummy:=FALSE; si:=sgad[1]^.specialinfo; passwort:=si^.buffer; druckwintop:=wp2^.topedge; druckwinleft:=wp2^.leftedge; IF ((sgad[2]^.flags AND selected) = SELECTED) THEN verschluesseln:=TRUE ELSE verschluesseln:=FALSE; j:=Cyclezustand(wp2,sgad[3],zustand); err:=removegList(wp2,wp2^.firstgadget,-1); Fenster_zu(wp2); Freegadgets(gl2); ComputeFont(MainWinWidth,MainWinHeight); END; FUNCTION passwortladenOberfläche:BOOLEAN; BEGIN ComputeFont(308,44); ww := ComputeX(308); wh := ComputeY(44); gl2 := NIL; gl2 := CreateContext(^gl2); ng := NewGadget(94,8,200,14, "_Passwort:",MyTattr, 1,PLACETEXT_LEFT, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GT_UNDERSCORE,LONG('_')); t[2] := TagItem(GTST_String,LONG(^passwort)); t[3] := TagItem(GTST_MaxChars,39); t[4].ti_Tag := TAG_DONE; sgad[1] := CreateGadgetA(STRING_KIND,gl2,^ng,^t); ng := NewGadget(6,29,120,12, '_Laden',MyTattr, 2,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); t[2].ti_Tag:=TAG_DONE sgad[2] := CreateGadgetA(BUTTON_KIND,sgad[1],^ng,^t); ng := NewGadget(182,29,120,12, 'A_bbruch (ESC)',MyTattr, 3,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); t[3].ti_Tag := TAG_DONE; sgad[3] := CreateGadgetA(BUTTON_KIND,sgad[2],^ng,^t); t[1] := TagItem(WA_Innerwidth,ww); t[2] := TagItem(WA_Innerheight,wh); t[3] := Tagitem(WA_Top,druckwintop); t[4] := TagItem(WA_Left,druckwinleft); t[5].ti_Tag := WA_Title; t[5].ti_Data := "Datei ist passwortgeschützt !"; t[6] := TagItem(WA_Idcmp,IDCMP_CLOSEWINDOW+IDCMP_GADGETUP+IDCMP_GADGETDOWN+IDCMP_RAWKEY); t[7] := TagItem(WA_Flags,WFLG_CLOSEGADGET+WFLG_DRAGBAR+WFLG_ACTIVATE+WFLG_DEPTHGADGET+ WFLG_RMBTRAP+WFLG_SMART_REFRESH+WFLG_NOCAREREFRESH); t[8].ti_Tag := TAG_DONE; IF pubname <> "" THEN BEGIN t[8] := TagItem(WA_PubScreenFallBack, 1); t[9] := TagItem(WA_PubScreenName, LONG(pubname)); t[10].ti_Tag := TAG_DONE; END; wp2 := OpenWindowTagList(NIL,^t); IF wp2=NIL THEN exit; raster(wp2,0,1,307,43{-1}); clearq(wp2,6,4,296,21); Rahmen(wp2,6,4,296,22,TRUE); l:=addgList(wp2,gl2,0,-1,NIL); refreshglist(wp2^.firstgadget,wp2,NIL,-1); GT_Refreshwindow(wp2,NIL); dummy:=FALSE; REPEAT GetMessage(wp2,class,code,qual,gadnum); CASE Class OF IDCMP_CLOSEWINDOW: dummy:=TRUE; IDCMP_RAWKEY: IF qual in [32768,32769,32770,32772] THEN BEGIN CASE code OF 53,69:BEGIN {B, ESC} Butselecter(wp2,sgad[3]); dummy:=TRUE; passwortladenoberfläche:=FALSE; END; 40 : BEGIN {A} Butselecter(wp2,sgad[2]); dummy:=TRUE; passwortladenoberfläche:=TRUE; END; 25 : ok:=activateGadget(sgad[1],wp2,NIL); ELSE END; END; IDCMP_GadgetUP,IDCMP_GADGETDOWN: CASE gadnum OF 2 : BEGIN dummy:=TRUE; passwortladenoberfläche:=FALSE; END; 3 : BEGIN dummy:=TRUE; passwortladenoberfläche:=TRUE; END; ELSE END; ELSE END; UNTIL dummy; si:=sgad[1]^.specialinfo; passwort:=si^.buffer; druckwintop:=wp2^.topedge; druckwinleft:=wp2^.leftedge; err:=removegList(wp2,wp2^.firstgadget,-1); Fenster_zu(wp2); Freegadgets(gl2); ComputeFont(MainWinWidth,MainWinHeight); END; VAR popi:p_propinfo;STATIC; popigad:p_gadget;STATIC; PROCEDURE SetMainGads; BEGIN gl:=NIL; gl:=CreateContext(^gl); {2} ng := NewGadget(3,47,452,100, NIL,MyTattr, M_LV,0, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GTLV_Labels, LONG(PList)); t[2] := TagItem(GTLV_ReadOnly, LONG(FALSE)); t[3] := TagItem(GTLV_ShowSelected, 0); t[4] := TagItem(GTLV_Selected, 0); IF iconified THEN t[4].ti_data:=aktuellgewählt; t[5].ti_Tag := TAG_DONE; mgad[1] := CreateGadgetA(LISTVIEW_KIND,gl,^ng,^t); popigad:=gl^.nextgadget^.nextgadget; { welches denn nun? Falk? } {-------- OS2 <--> OS3 Gadtools-Inkompatibilität ---------} IF NOT OS39 THEN WHILE (popigad^.Nextgadget<>NIL) DO popigad:=popigad^.NextGadget; {---------------------------------------------------------} POPI:=NIL; PopI:=popigad^.SpecialInfo; IF POPI<>NIL THEN PopI^.Flags:= PopI^.Flags+PROPNEWLOOK; { ----- stolen from PackMANs ZMore --- THANKS !!! } ng := NewGadget(3,2,150,14, "_Neuer Eintrag",MyTattr, M_NEU,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); t[1] := TagItem(GT_Underscore,LONG("_")); t[2].ti_Tag := TAG_DONE; mgad[2] := CreateGadgetA(BUTTON_KIND,mgad[1],^ng,^t); { 17 } ng := NewGadget(154,2,150,14, "Eintrag _ändern",MyTattr, M_ÄNDERN,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); IF AktuellePerson = NIL THEN BEGIN t[2] := TagItem(GA_Disabled,LONG(TRUE)); t[3].ti_Tag := TAG_DONE; END; mgad[3] := CreateGadgetA(BUTTON_KIND,mgad[2],^ng,^t); t[2].ti_Tag := TAG_DONE; IF AktuellePerson = NIL THEN BEGIN t[2] := TagItem(GA_Disabled,LONG(TRUE)); t[3].ti_Tag := TAG_DONE; END; { 32 } ng := NewGadget(305,2,150,14, "Eintrag l_öschen",^tattr, M_LÖSCHEN,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); mgad[4] := CreateGadgetA(BUTTON_KIND,mgad[3],^ng,^t); t[2].ti_Tag := TAG_DONE; { 47 } ng := NewGadget(3,17,150,14, "Su_chen",MyTattr, M_SUCHEN,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); mgad[5] := CreateGadgetA(BUTTON_KIND,mgad[4],^ng,^t); t[2].ti_Tag := TAG_DONE; {92} ng := NewGadget(154,17,150,14, "S_ortieren",MyTattr, M_SORTIEREN,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); mgad[M_SORTIEREN] := CreateGadgetA(BUTTON_KIND,mgad[5],^ng,^t); {77} ng := NewGadget(305,17,150,14, "_Blättern",MyTattr, M_BLÄTTERN,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); IF Anzahl = 0 THEN BEGIN t[2] := TagItem(GA_Disabled, LONG(TRUE)); t[3].ti_Tag := TAG_DONE; END; mgad[M_BLÄTTERN] := CreateGadgetA(BUTTON_KIND,mgad[M_SORTIEREN],^ng,^t); t[2].ti_Tag := TAG_DONE ng := NewGadget(3,32,150,14, "_Serienbriefdruck",MyTattr, M_SERIENDRUCK,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); mgad[M_SERIENDRUCK] := CreateGadgetA(BUTTON_KIND,mgad[M_BLÄTTERN],^ng,^t); ng := NewGadget(154,32,150,14, "_Formulardruck",MyTattr, M_FORMULARDRUCK,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); mgad[M_FORMULARDRUCK] := CreateGadgetA(BUTTON_KIND,mgad[M_SERIENDRUCK],^ng,^t); ng := NewGadget(305,32,150,14, "_Listendruck",MyTattr, M_LISTENDRUCK,PLACETEXT_IN, vi,NIL); SensitivGadget(ng); mgad[M_LISTENDRUCK] := CreateGadgetA(BUTTON_KIND,mgad[M_FORMULARDRUCK],^ng,^t); END; {$endif}