b3_display_handler/
lib.rs

1//! This module contains all public exports of the b3-display-handler crate.
2
3#![warn(missing_docs)]
4
5use appkit::AppKitWindowHandler;
6
7pub mod appkit;
8
9/// Provider of a raw pointer to a system window.
10pub trait HasWindowHandler {
11    /// Returns a window handler for the current platform.
12    fn window_handler(&self) -> WindowHandler;
13}
14
15/// Window handler.
16///
17/// The window handler provides raw pointers for native system windows.
18#[non_exhaustive]
19#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
20pub enum WindowHandler {
21    /// Window handler implementation for AppKit.
22    AppKit(AppKitWindowHandler),
23}