[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Sc-devel] drawFunc called despite window not visible
hi fredrik,
i have gone through the refreshing behaviour of drawFunc and
drawHook, and updated both. i'm sorry to say that they still behave
different than those in cocoaGUI, but at least i think they have
reasonable consistency now (see the introductory section of
JSCUserView help file). Here's an example:
GUI.swing
// JSCWindow : drawHook
(
w= GUI.window.new;
w.drawHook= {
1111.postln; // NO
};
)
w.front; // YES
w.drawHook = { 2222.postln }; // YES
w.visible = false;
w.drawHook = { 3333.postln }; // NO
w.visible = true; // YES
w.visible = false;
w.visible = true;
w.close;
// JSCUserView : drawFunc
(
w = GUI.window.new;
u = GUI.userView.new( w, w.view.bounds.insetBy( 10, 10 )).background_
( Color.blue );
u.drawFunc= {
1111.postln; // NO
};
)
w.front; // YES
u.drawFunc = { 2222.postln }; // YES
u.visible = false;
u.drawFunc = { 3333.postln }; // NO
u.visible = true; // YES
w.visible = false;
u.drawFunc = { 4444.postln }; // NO
w.visible = true; // YES
w.close;
// JSCUserView inside container
(
w = GUI.window.new;
x = GUI.compositeView.new( w, w.view.bounds.insetBy( 10,
10 )).background_( Color.red );
u = GUI.userView.new( x, x.bounds.insetBy( 10, 10 )).background_
( Color.blue );
u.drawFunc= {
1111.postln; // NO
};
)
w.front; // YES
u.drawFunc = { 2222.postln }; // YES
u.visible = false;
u.drawFunc = { 3333.postln }; // NO
u.visible = true; // YES
x.visible = false;
u.drawFunc = { 4444.postln }; // NO
x.visible = true; // YES
x.visible = false;
u.visible = false;
u.drawFunc = { 5555.postln }; // NO
x.visible = true; // NO
u.visible = true; // YES
x.visible = false;
u.visible = false;
u.drawFunc = { 6666.postln }; // NO
u.visible = true; // NO
w.visible = false;
x.visible = true; // NO
w.visible = true; // YES
w.close;
ciao, -sciss-
Am 16.01.2008 um 16:01 schrieb Fredrik Olofsson:
more swing vs cocoa differences.
how can i avoid that these functions are called. the windows are not
visible and shouldn't refresh!
GUI.cocoa
GUI.swing
(
var w= GUI.window.new;
w.drawHook= {
1111.postln; //cocoa yes, swing no
};
)
(
var w= GUI.window.new;
var u= GUI.userView.new(w, Rect(0, 0, 10, 10));
u.drawFunc= {
1111.postln; //cocoa yes, swing yes
};
)
#|
fredrikolofsson.com klippav.org musicalfieldsforever.com
|#
_______________________________________________
Sc-devel mailing list
Sc-devel@xxxxxxxxxxxxxxx
http://lists.create.ucsb.edu/mailman/listinfo/sc-devel