Transparent canvas and floating windows...

Started by cormullion, April 28, 2009, 02:56:20 PM

Previous topic - Next topic

cormullion

A canvas needs a background colour if tagged objects are to get deleted properly, but you can only get transparent windows if you omit the background colour. So does this mean that I can't draw onto transparent windows and expect to be able to delete tags as well?



Another question: on MacOS X I can have floating windows - that float above other windows - is there a way to do this with gs:windows?

Lutz

#1
Quote So does this mean that I can't draw onto transparent windows and expect to be able to delete tags as well?


unfortunately you can't. There is a technique to "undraw" objects using complementary color bits in Java, but this is not supported in guiserver.jar.


Quote... floating windows - that float above other windows ...


yes, you can have that. In the newlisp-edit application (the newLISP GS GUI) there are instances where a second window is created floating above the editor; e.g. Edit/Find  (applekey-F) creates a second window. Use either gs:frame or gs:dialog (always on top of parent frame).

cormullion

#2
Thanks! I really wanted the window to float above other applications, too, but I don't think that's possible...



I've been looking for hours for a simple MacOS X app that just displays a big floating window in the middle of the screen with big writing that you can set by a simple bit of script... Apparently no such app has been written...!

Lutz

#3
well, you could have text and change/redraw it on a transparent window. See the file "frameless-demo.lsp" accessible from the "Help/Open Demo Folder" menu option. Or in a terminal window do:


newlisp /usr/share/newlisp/guiserver/frameless-demo.lsp

didn't this come from you?



So while you cannot move other objects around on a transparent window, you can have changing text.

cormullion

#4
I've been using canvasses so I'm deleting/redrawing them. I'll try with text objects...



Still want 'float above everything else' though...!