ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Programmierung > SetGadgetAttrsA() | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
-1- | [ - Beitrag schreiben - ] |
10.09.2009, 16:02 Uhr AGSzabo Posts: 1663 Nutzer |
hi, ich habe ein broblem mit der größe und position von boopsi gadgets, genauergesagt mit dem colorwheel. und zwar wird es immer in der linken oberen ecke gerendert obwohl ich mit SetGadgetAttrsA() die werte richtig setze. Unter os4.1 funktioniert es, aber unter os 3.0 nicht. warum? hier wieder wie von mir gewohnt der frageliche code: code:--WGSETLAYOUT move.l xuiLI_left(a1),xuiWG_left(a0) ; left, top move.l xuiLI_width(a1),xuiWG_width(a0) ; w, h move.l a0,a4 WG_setl ; come here from set window/ make newobject tst.l xuiWG_slider(a4) beq.b .rts0 movem.w xuiWG_left(a4),d0-d3 sub.w #30,d2 cmp.w d3,d2 ble.b .flips move.w d3,d2 bra.b .flops .flips move.w d2,d3 .flops movem.w xuiWG_left(a4),d0-d2 add.w d2,d0 moveq #20,d2 sub.w d2,d0 move.l #TAG_END,-(a7) move.l d3,-(a7) move.l #GA_Height,-(a7) move.l d2,-(a7) move.l #GA_Width,-(a7) move.l d1,-(a7) move.l #GA_Top,-(a7) move.l d0,-(a7) move.l #GA_Left,-(a7) move.l xuiWG_slider(a4),a0 move.l xuiWG_window(a4),a1 move.l a7,a3 move.l intbase(pc),a6 jsr _LVOSetGadgetAttrsA(a6) lea 36(a7),a7 tst.l d0 beq.b .no_change bset #xuiWGB_CHANGE,xuiWG_flags(a4) .no_change movem.w xuiWG_left(a4),d0-d3 sub.w #30,d2 cmp.w d3,d2 ble.b .flip move.w d3,d2 bra.b .flop .flip move.w d2,d3 .flop move.l #TAG_END,-(a7) move.l d3,-(a7) move.l #GA_Height,-(a7) move.l d2,-(a7) move.l #GA_Width,-(a7) move.l d1,-(a7) move.l #GA_Top,-(a7) move.l d0,-(a7) move.l #GA_Left,-(a7) move.l xuiWG_wheel(a4),a0 move.l xuiWG_window(a4),a1 move.l a7,a3 jsr _LVOSetGadgetAttrsA(a6) lea 36(a7),a7 tst.l d0 beq.b .no_change2 bset #xuiWGB_CHANGE,xuiWG_flags(a4) .no_change2 moveq #1,d0 rts .rts0 moveq #0,d0 rts Sam mini os4.1 -- e-uae 39bb2 -- A4000D 3.0 - 2mbchip/8mbfast - Ariadne_II - ide DVD und HD -- A500 3.1 (mkick) adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110 [ - Antworten - Zitieren - Direktlink - ] |
10.09.2009, 18:07 Uhr thomas Posts: 7718 Nutzer |
@AGSzabo: Scheinbar läßt sich das colorwheel.gadget in Version 40 und älter nicht nachträglich ändern. Ich habe gerade mal ein bißchen herumprobiert, es bleibt immer an der Position, die man bei NewDTObject angegeben hat. Allerdings werden die neuen Koordinaten durchaus gesetzt. Wenn man nach der Änderung in das sichtbare Gadget klickt, passiert gar nichts. Wenn man aber an die neue Position klickt, bewegt sich der Knopf. Dir wird nichts anderes übrig bleiben, als das Gadget komplett freizugeben und neu anzulegen. Gruß Thomas -- Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de/ [ - Antworten - Zitieren - Direktlink - ] |
14.09.2009, 19:46 Uhr AGSzabo Posts: 1663 Nutzer |
@thomas: > Dir wird nichts anderes übrig bleiben, als das Gadget komplett freizugeben und neu anzulegen. ok, das habe ich jetzt mal gemacht und es funktioniert. aber der slider wird jetzt immer etwas nach rechts und nach unten verschoben gezeichnet. der maus-angriffspunkt ist an der richtigen stelle, nur die grafik ist versetzt. es sieht so aus als ob das maß der versetzung der fensterrahmen breite und höhe der titelzeile entspricht, aber das herumexperimentieren mit GA_GZZGadget bachte keine besserung. was ist nun schon wieder los? im prefs/farb-voreinsteller funktioniert es doch auch! außerdem wird 'mein' wheel im gegensatz zu dem des palette-prefs programms mit viel weniger farben gezeichnet und der slider bleibt immer grau auch wenn ich das wheel auf farbe stelle. wenn ich aber den slider bewege 'springt' er auf die farbe die im wheel eingestellt ist. all das tritt nur unter OS 3.0/3.1 auf, ab 3.5 funktioniert es. ps: unter os4.1 wird der hintergrund des wheels mit mülldaten aufgefüllt... -- Sam mini os4.1 -- e-uae 39bb2 -- A4000D 3.0 - 2mbchip/8mbfast - Ariadne_II - ide DVD und HD -- A500 3.1 (mkick) adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110 [ Dieser Beitrag wurde von AGSzabo am 15.09.2009 um 09:39 Uhr geändert. ] [ - Antworten - Zitieren - Direktlink - ] |
-1- | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Programmierung > SetGadgetAttrsA() | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |