objc2_app_kit/generated/
NSFontPanel.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelmodemask?language=objc)
11// NS_OPTIONS
12#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct NSFontPanelModeMask(pub NSUInteger);
15bitflags::bitflags! {
16    impl NSFontPanelModeMask: NSUInteger {
17        #[doc(alias = "NSFontPanelModeMaskFace")]
18        const ModeMaskFace = 1<<0;
19        #[doc(alias = "NSFontPanelModeMaskSize")]
20        const ModeMaskSize = 1<<1;
21        #[doc(alias = "NSFontPanelModeMaskCollection")]
22        const ModeMaskCollection = 1<<2;
23        #[doc(alias = "NSFontPanelModeMaskUnderlineEffect")]
24        const ModeMaskUnderlineEffect = 1<<8;
25        #[doc(alias = "NSFontPanelModeMaskStrikethroughEffect")]
26        const ModeMaskStrikethroughEffect = 1<<9;
27        #[doc(alias = "NSFontPanelModeMaskTextColorEffect")]
28        const ModeMaskTextColorEffect = 1<<10;
29        #[doc(alias = "NSFontPanelModeMaskDocumentColorEffect")]
30        const ModeMaskDocumentColorEffect = 1<<11;
31        #[doc(alias = "NSFontPanelModeMaskShadowEffect")]
32        const ModeMaskShadowEffect = 1<<12;
33        #[doc(alias = "NSFontPanelModeMaskAllEffects")]
34        const ModeMaskAllEffects = 0xFFF00;
35        #[doc(alias = "NSFontPanelModesMaskStandardModes")]
36        const ModesMaskStandardModes = 0xFFFF;
37        #[doc(alias = "NSFontPanelModesMaskAllModes")]
38        const ModesMaskAllModes = 0xFFFFFFFF;
39    }
40}
41
42unsafe impl Encode for NSFontPanelModeMask {
43    const ENCODING: Encoding = NSUInteger::ENCODING;
44}
45
46unsafe impl RefEncode for NSFontPanelModeMask {
47    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
48}
49
50extern_protocol!(
51    /// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontchanging?language=objc)
52    pub unsafe trait NSFontChanging: NSObjectProtocol + MainThreadOnly {
53        #[cfg(feature = "NSFontManager")]
54        #[optional]
55        #[unsafe(method(changeFont:))]
56        #[unsafe(method_family = none)]
57        fn changeFont(&self, sender: Option<&NSFontManager>);
58
59        #[cfg(all(feature = "NSPanel", feature = "NSResponder", feature = "NSWindow"))]
60        #[optional]
61        #[unsafe(method(validModesForFontPanel:))]
62        #[unsafe(method_family = none)]
63        fn validModesForFontPanel(&self, font_panel: &NSFontPanel) -> NSFontPanelModeMask;
64    }
65);
66
67extern_class!(
68    /// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanel?language=objc)
69    #[unsafe(super(NSPanel, NSWindow, NSResponder, NSObject))]
70    #[derive(Debug, PartialEq, Eq, Hash)]
71    #[cfg(all(feature = "NSPanel", feature = "NSResponder", feature = "NSWindow"))]
72    pub struct NSFontPanel;
73);
74
75#[cfg(all(
76    feature = "NSAccessibilityProtocols",
77    feature = "NSPanel",
78    feature = "NSResponder",
79    feature = "NSWindow"
80))]
81extern_conformance!(
82    unsafe impl NSAccessibility for NSFontPanel {}
83);
84
85#[cfg(all(
86    feature = "NSAccessibilityProtocols",
87    feature = "NSPanel",
88    feature = "NSResponder",
89    feature = "NSWindow"
90))]
91extern_conformance!(
92    unsafe impl NSAccessibilityElementProtocol for NSFontPanel {}
93);
94
95#[cfg(all(
96    feature = "NSAnimation",
97    feature = "NSPanel",
98    feature = "NSResponder",
99    feature = "NSWindow"
100))]
101extern_conformance!(
102    unsafe impl NSAnimatablePropertyContainer for NSFontPanel {}
103);
104
105#[cfg(all(
106    feature = "NSAppearance",
107    feature = "NSPanel",
108    feature = "NSResponder",
109    feature = "NSWindow"
110))]
111extern_conformance!(
112    unsafe impl NSAppearanceCustomization for NSFontPanel {}
113);
114
115#[cfg(all(feature = "NSPanel", feature = "NSResponder", feature = "NSWindow"))]
116extern_conformance!(
117    unsafe impl NSCoding for NSFontPanel {}
118);
119
120#[cfg(all(
121    feature = "NSMenu",
122    feature = "NSPanel",
123    feature = "NSResponder",
124    feature = "NSWindow"
125))]
126extern_conformance!(
127    unsafe impl NSMenuItemValidation for NSFontPanel {}
128);
129
130#[cfg(all(feature = "NSPanel", feature = "NSResponder", feature = "NSWindow"))]
131extern_conformance!(
132    unsafe impl NSObjectProtocol for NSFontPanel {}
133);
134
135#[cfg(all(
136    feature = "NSPanel",
137    feature = "NSResponder",
138    feature = "NSUserInterfaceItemIdentification",
139    feature = "NSWindow"
140))]
141extern_conformance!(
142    unsafe impl NSUserInterfaceItemIdentification for NSFontPanel {}
143);
144
145#[cfg(all(
146    feature = "NSPanel",
147    feature = "NSResponder",
148    feature = "NSUserInterfaceValidation",
149    feature = "NSWindow"
150))]
151extern_conformance!(
152    unsafe impl NSUserInterfaceValidations for NSFontPanel {}
153);
154
155#[cfg(all(feature = "NSPanel", feature = "NSResponder", feature = "NSWindow"))]
156impl NSFontPanel {
157    extern_methods!(
158        #[unsafe(method(sharedFontPanel))]
159        #[unsafe(method_family = none)]
160        pub fn sharedFontPanel(mtm: MainThreadMarker) -> Retained<NSFontPanel>;
161
162        #[unsafe(method(sharedFontPanelExists))]
163        #[unsafe(method_family = none)]
164        pub fn sharedFontPanelExists(mtm: MainThreadMarker) -> bool;
165
166        #[cfg(feature = "NSView")]
167        #[unsafe(method(accessoryView))]
168        #[unsafe(method_family = none)]
169        pub fn accessoryView(&self) -> Option<Retained<NSView>>;
170
171        #[cfg(feature = "NSView")]
172        /// Setter for [`accessoryView`][Self::accessoryView].
173        #[unsafe(method(setAccessoryView:))]
174        #[unsafe(method_family = none)]
175        pub fn setAccessoryView(&self, accessory_view: Option<&NSView>);
176
177        #[cfg(feature = "NSFont")]
178        #[unsafe(method(setPanelFont:isMultiple:))]
179        #[unsafe(method_family = none)]
180        pub fn setPanelFont_isMultiple(&self, font_obj: &NSFont, flag: bool);
181
182        #[cfg(feature = "NSFont")]
183        #[unsafe(method(panelConvertFont:))]
184        #[unsafe(method_family = none)]
185        pub fn panelConvertFont(&self, font_obj: &NSFont) -> Retained<NSFont>;
186
187        #[unsafe(method(worksWhenModal))]
188        #[unsafe(method_family = none)]
189        pub fn worksWhenModal(&self) -> bool;
190
191        /// Setter for [`worksWhenModal`][Self::worksWhenModal].
192        #[unsafe(method(setWorksWhenModal:))]
193        #[unsafe(method_family = none)]
194        pub fn setWorksWhenModal(&self, works_when_modal: bool);
195
196        #[unsafe(method(isEnabled))]
197        #[unsafe(method_family = none)]
198        pub fn isEnabled(&self) -> bool;
199
200        /// Setter for [`isEnabled`][Self::isEnabled].
201        #[unsafe(method(setEnabled:))]
202        #[unsafe(method_family = none)]
203        pub fn setEnabled(&self, enabled: bool);
204
205        #[unsafe(method(reloadDefaultFontFamilies))]
206        #[unsafe(method_family = none)]
207        pub fn reloadDefaultFontFamilies(&self);
208    );
209}
210
211/// Methods declared on superclass `NSWindow`.
212#[cfg(all(feature = "NSPanel", feature = "NSResponder", feature = "NSWindow"))]
213impl NSFontPanel {
214    extern_methods!(
215        #[cfg(feature = "NSGraphics")]
216        #[unsafe(method(initWithContentRect:styleMask:backing:defer:))]
217        #[unsafe(method_family = init)]
218        pub unsafe fn initWithContentRect_styleMask_backing_defer(
219            this: Allocated<Self>,
220            content_rect: NSRect,
221            style: NSWindowStyleMask,
222            backing_store_type: NSBackingStoreType,
223            flag: bool,
224        ) -> Retained<Self>;
225
226        #[cfg(all(feature = "NSGraphics", feature = "NSScreen"))]
227        #[unsafe(method(initWithContentRect:styleMask:backing:defer:screen:))]
228        #[unsafe(method_family = init)]
229        pub unsafe fn initWithContentRect_styleMask_backing_defer_screen(
230            this: Allocated<Self>,
231            content_rect: NSRect,
232            style: NSWindowStyleMask,
233            backing_store_type: NSBackingStoreType,
234            flag: bool,
235            screen: Option<&NSScreen>,
236        ) -> Retained<Self>;
237
238        /// # Safety
239        ///
240        /// `coder` possibly has further requirements.
241        #[unsafe(method(initWithCoder:))]
242        #[unsafe(method_family = init)]
243        pub unsafe fn initWithCoder(this: Allocated<Self>, coder: &NSCoder) -> Retained<Self>;
244
245        #[cfg(feature = "NSViewController")]
246        /// Convenience method for creating an autoreleased titled window with the given contentViewController. A basic NSWindow with the following attributes is made: titled, closable, resizable, miniaturizable. The window's title is automatically bound to the contentViewController's title. The size of the window can easily be controlled by utilizing autolayout and applying size constraints to the view (or its subviews). The window has isReleasedWhenClosed set to NO, and it must be explicitly retained to keep the window instance alive. To have it automatically be freed when it is closed, do the following: [window retain] and [window setReleasedWhenClosed:YES].
247        #[unsafe(method(windowWithContentViewController:))]
248        #[unsafe(method_family = none)]
249        pub fn windowWithContentViewController(
250            content_view_controller: &NSViewController,
251        ) -> Retained<Self>;
252    );
253}
254
255/// Methods declared on superclass `NSResponder`.
256#[cfg(all(feature = "NSPanel", feature = "NSResponder", feature = "NSWindow"))]
257impl NSFontPanel {
258    extern_methods!(
259        #[unsafe(method(init))]
260        #[unsafe(method_family = init)]
261        pub fn init(this: Allocated<Self>) -> Retained<Self>;
262    );
263}
264
265/// Methods declared on superclass `NSObject`.
266#[cfg(all(feature = "NSPanel", feature = "NSResponder", feature = "NSWindow"))]
267impl NSFontPanel {
268    extern_methods!(
269        #[unsafe(method(new))]
270        #[unsafe(method_family = new)]
271        pub fn new(mtm: MainThreadMarker) -> Retained<Self>;
272    );
273}
274
275/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelfacemodemask?language=objc)
276pub const NSFontPanelFaceModeMask: c_uint = 1 << 0;
277/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelsizemodemask?language=objc)
278pub const NSFontPanelSizeModeMask: c_uint = 1 << 1;
279/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelcollectionmodemask?language=objc)
280pub const NSFontPanelCollectionModeMask: c_uint = 1 << 2;
281/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelunderlineeffectmodemask?language=objc)
282pub const NSFontPanelUnderlineEffectModeMask: c_uint = 1 << 8;
283/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelstrikethrougheffectmodemask?language=objc)
284pub const NSFontPanelStrikethroughEffectModeMask: c_uint = 1 << 9;
285/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpaneltextcoloreffectmodemask?language=objc)
286pub const NSFontPanelTextColorEffectModeMask: c_uint = 1 << 10;
287/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpaneldocumentcoloreffectmodemask?language=objc)
288pub const NSFontPanelDocumentColorEffectModeMask: c_uint = 1 << 11;
289/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelshadoweffectmodemask?language=objc)
290pub const NSFontPanelShadowEffectModeMask: c_uint = 1 << 12;
291/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelalleffectsmodemask?language=objc)
292pub const NSFontPanelAllEffectsModeMask: c_uint = 0xFFF00;
293/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelstandardmodesmask?language=objc)
294pub const NSFontPanelStandardModesMask: c_uint = 0xFFFF;
295/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfontpanelallmodesmask?language=objc)
296pub const NSFontPanelAllModesMask: c_uint = 0xFFFFFFFF;
297
298/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfppreviewbutton?language=objc)
299#[deprecated]
300pub const NSFPPreviewButton: c_uint = 131;
301/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfprevertbutton?language=objc)
302#[deprecated]
303pub const NSFPRevertButton: c_uint = 130;
304/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfpsetbutton?language=objc)
305#[deprecated]
306pub const NSFPSetButton: c_uint = 132;
307/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfppreviewfield?language=objc)
308#[deprecated]
309pub const NSFPPreviewField: c_uint = 128;
310/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfpsizefield?language=objc)
311#[deprecated]
312pub const NSFPSizeField: c_uint = 129;
313/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfpsizetitle?language=objc)
314#[deprecated]
315pub const NSFPSizeTitle: c_uint = 133;
316/// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsfpcurrentfield?language=objc)
317#[deprecated]
318pub const NSFPCurrentField: c_uint = 134;