2012-12-06 6 views
5

Ich habe ein benutzerdefiniertes (themed) NSWindow erstellt, indem Sie ein randloses Fenster erstellen und dann alle Elemente des Fensterrahmens/-hintergrunds innerhalb der Inhaltsansicht neu erstellen. Ich habe die Fenster-Widgets (Box schließen, Zoom-Box, Box minimieren) über meine eigene falsche Titelleiste mit -standardWindowButton: forStyleMask: erstellt.Wie Knopf in NSWindow anklickbar, während ein Blatt darüber ist

Das Problem ist, wenn ein Blatt auf meinem benutzerdefinierten Fenster dargestellt wird (zB „Änderungen speichern ...“, die Schaltflächen erhalten nicht die Klicks.

Weiß jemand, wie ich NSWindow sagen kann, nicht zu Abfangen der Klicks in meinem minimize-Feld? Es funktioniert mit einem Standard NSWindow.Wenn ein Blatt ist, kann ich immer noch beide zum Dock senden, oder zoomen Sie das Fenster aus.

Antwort

0

Ich dachte, vielleicht gibt es spezielle Code in der Inhaltsansicht, die Klicks in Unteransichten ignoriert, während ein Blatt geöffnet ist Aber es scheint, als ob -hitTest: ist in der Inhaltsansicht aufgerufen und gibt das minimize-Widget, aber die Aktion des Widgets nie erhalten s ausgelöst.

Ich denke, ich könnte nur ersetzen die Inhaltsansicht und führen Sie die Aktion in der Inhaltsansicht hitTest, wenn es das Widget minimieren ist ... aber das scheint ein bisschen hässlich.

+0

Es würde mich nicht überraschen, wenn Apple genau das tut. –

Verwandte Themen