pub mod app;
#[macro_use]
pub mod component;
pub mod css;
pub mod event;
pub mod geometry;
pub mod layout;
#[macro_use]
pub mod macros;
pub mod platform;
pub mod render;
pub mod theme;
pub mod widget;
#[cfg(feature = "macros")]
pub use openkit_macros::{Widget, Component, Styleable, component, prop, state, event};
pub mod prelude {
pub use crate::app::App;
pub use crate::css::{StyleManager, StyleBuilder, CssLoadError};
pub use crate::event::{Event, MouseButton, MouseEvent, KeyEvent, Key, Modifiers};
pub use crate::geometry::{Point, Size, Rect, Color, BorderRadius, EdgeInsets};
pub use crate::layout::{Layout, Alignment, Padding};
pub use crate::theme::Theme;
pub use crate::widget::{Widget, WidgetId};
pub use crate::widget::avatar::{Avatar, AvatarSize, AvatarShape};
pub use crate::widget::bar::{Bar, BarPosition, BarVariant};
pub use crate::widget::button::{Button, ButtonVariant};
pub use crate::widget::card::{Card, CardVariant};
pub use crate::widget::checkbox::Checkbox;
pub use crate::widget::clock::{Clock, ClockFormat, DateFormat};
pub use crate::widget::container::{Column, Row};
pub use crate::widget::context_menu::{ContextMenu, MenuItem};
pub use crate::widget::desktop::{Desktop, DesktopIcon, Wallpaper, WallpaperMode, GradientDirection};
pub use crate::widget::dropdown::{Dropdown, DropdownOption};
pub use crate::widget::icon_button::{IconButton, IconButtonSize, IconButtonVariant};
pub use crate::widget::label::Label;
pub use crate::widget::list_view::{ListView, ListItem, SelectionMode};
pub use crate::widget::notification::{Notification, NotificationUrgency};
pub use crate::widget::password_field::PasswordField;
pub use crate::widget::progress::{Progress, ProgressVariant, ProgressSize};
pub use crate::widget::scroll_view::{ScrollView, ScrollBarVisibility};
pub use crate::widget::separator::{Separator, SeparatorOrientation};
pub use crate::widget::slider::{Slider, SliderOrientation};
pub use crate::widget::spacer::Spacer;
pub use crate::widget::spinner::{Spinner, SpinnerSize};
pub use crate::widget::switch::{ToggleSwitch, ToggleSwitchSize};
pub use crate::widget::system_tray::{SystemTray, TrayIcon};
pub use crate::widget::tabs::{Tabs, Tab, TabPosition, TabVariant};
pub use crate::widget::textfield::TextField;
pub use crate::widget::tooltip::{Tooltip, TooltipPosition};
pub use crate::widget::window::{Window, WindowVariant, WindowControlsStyle};
pub use crate::widget::workspace::{WorkspaceSwitcher, WorkspaceItem};
pub use crate::component::{
State, EventEmitter, Model, Binding,
ComponentBuilder, BuiltComponent, ComponentContext,
component,
Lifecycle, Changes,
If, For, Switch,
Pipe, UppercasePipe, LowercasePipe, CurrencyPipe,
};
pub use crate::{
view, col, row, class, style,
button, checkbox, textfield, label,
when, match_widget, for_each, spacer, dbg_widget,
define_component, ng_if, ng_for, ng_switch,
bind, on, model,
};
#[cfg(feature = "macros")]
pub use openkit_macros::{Widget, Component, Styleable, component, prop, state, event};
pub use crate::platform::{init as platform_init, platform_name, is_desktop};
}
pub use crate::app::AppError;