@@ -1802,6 +1802,39 @@ impl NSWindow for id {
18021802 // TODO: Constraint-Based Layouts
18031803}
18041804
1805+ pub trait NSPanel : Sized {
1806+ unsafe fn alloc ( _: Self ) -> id {
1807+ msg_send ! [ class!( NSPanel ) , alloc]
1808+ }
1809+
1810+ // NSPanel subclasses NSWindow, hence we only add the added methods
1811+ // https://developer.apple.com/documentation/appkit/nspanel
1812+ unsafe fn setBecomesKeyOnlyIfNeeded ( self , becomesKeyOnlyIfNeeded : BOOL ) ;
1813+ unsafe fn becomesKeyOnlyIfNeeded ( self ) -> BOOL ;
1814+ unsafe fn setFloatingPanel ( self , floatingPanel : BOOL ) ;
1815+ unsafe fn floatingPanel ( self ) -> BOOL ;
1816+ }
1817+
1818+ impl NSPanel for id {
1819+ // NSPanel subclasses NSWindow, hence we only add the added methods
1820+ // https://developer.apple.com/documentation/appkit/nspanel
1821+ unsafe fn setBecomesKeyOnlyIfNeeded ( self , becomesKeyOnlyIfNeeded : BOOL ) {
1822+ msg_send ! [ self , setBecomesKeyOnlyIfNeeded: becomesKeyOnlyIfNeeded]
1823+ }
1824+
1825+ unsafe fn becomesKeyOnlyIfNeeded ( self ) -> BOOL {
1826+ msg_send ! [ self , becomesKeyOnlyIfNeeded]
1827+ }
1828+
1829+ unsafe fn setFloatingPanel ( self , floatingPanel : BOOL ) {
1830+ msg_send ! [ self , setFloatingPanel: floatingPanel]
1831+ }
1832+
1833+ unsafe fn floatingPanel ( self ) -> BOOL {
1834+ msg_send ! [ self , isFloatingPanel]
1835+ }
1836+ }
1837+
18051838#[ repr( i64 ) ]
18061839#[ derive( Clone , Copy , Debug , PartialEq ) ]
18071840pub enum NSModalResponse {
0 commit comments