objc2_app_kit/generated/
NSUserInterfaceItemSearching.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
10extern_protocol!(
11    /// [Apple's documentation](https://developer.apple.com/documentation/appkit/nsuserinterfaceitemsearching?language=objc)
12    pub unsafe trait NSUserInterfaceItemSearching: NSObjectProtocol {
13        #[cfg(feature = "block2")]
14        #[unsafe(method(searchForItemsWithSearchString:resultLimit:matchedItemHandler:))]
15        #[unsafe(method_family = none)]
16        fn searchForItemsWithSearchString_resultLimit_matchedItemHandler(
17            &self,
18            search_string: &NSString,
19            result_limit: NSInteger,
20            handle_matched_items: &block2::DynBlock<dyn Fn(NonNull<NSArray>)>,
21        );
22
23        /// # Safety
24        ///
25        /// `item` should be of the correct type.
26        #[unsafe(method(localizedTitlesForItem:))]
27        #[unsafe(method_family = none)]
28        unsafe fn localizedTitlesForItem(&self, item: &AnyObject) -> Retained<NSArray<NSString>>;
29
30        /// # Safety
31        ///
32        /// `item` should be of the correct type.
33        #[optional]
34        #[unsafe(method(performActionForItem:))]
35        #[unsafe(method_family = none)]
36        unsafe fn performActionForItem(&self, item: &AnyObject);
37
38        #[optional]
39        #[unsafe(method(showAllHelpTopicsForSearchString:))]
40        #[unsafe(method_family = none)]
41        fn showAllHelpTopicsForSearchString(&self, search_string: &NSString);
42    }
43);
44
45/// NSUserInterfaceItemSearching.
46#[cfg(all(feature = "NSApplication", feature = "NSResponder"))]
47impl NSApplication {
48    extern_methods!(
49        #[unsafe(method(registerUserInterfaceItemSearchHandler:))]
50        #[unsafe(method_family = none)]
51        pub fn registerUserInterfaceItemSearchHandler(
52            &self,
53            handler: &ProtocolObject<dyn NSUserInterfaceItemSearching>,
54        );
55
56        #[unsafe(method(unregisterUserInterfaceItemSearchHandler:))]
57        #[unsafe(method_family = none)]
58        pub fn unregisterUserInterfaceItemSearchHandler(
59            &self,
60            handler: &ProtocolObject<dyn NSUserInterfaceItemSearching>,
61        );
62
63        /// # Safety
64        ///
65        /// `found_range` must be a valid pointer or null.
66        #[unsafe(method(searchString:inUserInterfaceItemString:searchRange:foundRange:))]
67        #[unsafe(method_family = none)]
68        pub unsafe fn searchString_inUserInterfaceItemString_searchRange_foundRange(
69            &self,
70            search_string: &NSString,
71            string_to_search: &NSString,
72            search_range: NSRange,
73            found_range: *mut NSRange,
74        ) -> bool;
75    );
76}