Ero inizialmente partito facendo proprio così, ma definire la finestra
come Floating dà luogo ad una serie di problematiche su Windows e
Linux (oltre a non risolvere il problema del focus sulle piattaforme
<> Mac).
On 24/giu/08, at 14:11, Massimo Valle wrote:
On 24/giu/08, at 13:38, Gilberto De Faveri wrote:
L'ho modificato leggermente in modo che su OS X la finestra del tag
non abbia l'ombra.
http://www.omnidea.it/files/realbasic/code/HelpTag.zip
Attualmente ha un difetto fastidioso: la plain box window, manda in
background la finestra attiva.
Quindi ho modificato un poco il tuo esempio per avere una toolbar
molto più simile all'originale, Quasi indistinguibile.
Si tratta semplicemente di definire la finestra come "Floating
window" ed eliminare la title bar con una declare.
Nel Constructor della finestra, invece di usare una declare per
togliere l'ombra, usi la stessa per rimuovere la title bar:
#if TargetMachO
'Forzo la rimozione della title bar su Mac OS X
Const kWindowNoTitleBarAttribute = 512
Declare Function ChangeWindowAttributes Lib "Carbon" (window as
WindowPtr, setTheseAttributes as Integer, clearTheseAttributes as
Integer) as Integer
Dim result As Integer = ChangeWindowAttributes(self,
kWindowNoShadowAttribute, 0)
#endif
Massimo Valle
--
gilberto de faveri
omnidea srl
edificio pegaso
parco scientifico tecnologico vega
via delle industrie, 15
30175 venezia marghera
tel +39 041 509 3441
fax +39 041 509 3641
www.omnidea.it
|