🔒 Repository is read-only – file editing is disabled.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546
//! # libluna
//!
//! **Fasada** całego toolkitu — jedno wejście dla aplikacji. Zamiast dodawać cztery
//! zależności i pamiętać o ścieżkach re-eksportów, wystarczy:
//!
//! ```toml
//! [dependencies]
//! libluna = { path = "../libluna/crates/libluna" } # albo { git = "…" }
//! ```
//!
//! i w kodzie:
//!
//! ```
//! use libluna::prelude::*;
//! ```
//!
//! ## Warstwy (dostępne też pod pełnymi nazwami)
//! - [`core`] — geometria, kolor, zdarzenia, tokeny motywu, ustawienia wyglądu.
//! - [`render`] — graf sceny i backend rysowania (CPU).
//! - [`platform`] — okna Wayland, wejście, pętla zdarzeń.
//! - [`i18n`] — wielojęzyczność oraz makro [`t!`](crate::t).
//!
//! ## Najszybszy start
//! Zobacz [`prelude`] oraz przykład `examples/minimal.rs`
//! (`cargo run -p libluna --example minimal`).
pub use libluna_core as core;
pub use libluna_i18n as i18n;
pub use libluna_platform as platform;
pub use libluna_render as render;
pub use libluna_widgets as widgets;
/// Makro tłumaczeń z `libluna-i18n` (np. `t!("Application")`).
pub use libluna_i18n::t;
/// Najczęściej używane typy — wystarczy `use libluna::prelude::*;`.
pub mod prelude {
pub use crate::core::event::{ButtonState, Event, KeyEvent, Modifiers, PointerButton};
pub use crate::core::{
Accent, Color, Insets, Point, Rect, Size, Theme, ThemePreference, ThemeSettings,
};
pub use crate::i18n::{set_locale, tr, Locale};
pub use crate::platform::{run, AppConfig, Frame};
pub use crate::render::{Scene, SoftwareRenderer, TextEngine, TextRun};
pub use crate::widgets::{NavEntry, NavList, PaintCtx, ViewSwitcher};
}