Crate famiq

Crate famiq 

Source
Expand description

Experimental GUI library, powered by Bevy engine.

Example:

use bevy::prelude::*;
use famiq::prelude::*;

fn main() {
    App::new()
       .add_plugins(DefaultPlugins)
       .add_plugins(FamiqPlugin::new()) // add plugin
       .add_systems(Startup, setup_ui)
       .run();
}

fn setup_ui(
    mut fa_query: FaQuery, // required
    mut famiq_res: ResMut<FamiqResource>, // required
) {
    FamiqBuilder::new(&mut fa_query, &mut famiq_res).inject();

    let txt = text!(text: "Hello world");
    let btn = button!(text: "Press me");
    container!(children: [txt, btn]);

    // or

    container!(children: [
        text!(text: "Hello world"),
        button!(text: "Press me")
    ]);
}

Re-exports§

pub use prelude::*;

Modules§

errors
event_writer
plugin
Famiq’s plugin.
prelude
reactivity
resources
Famiq’s global resources, used by all modules.
utils
widgets
Famiq’s built-in widgets.

Macros§

button
Macro for creating a button.
button_attributes
checkbox
Macro for creating a checkbox.
choices_attributes
circular
Macro for creating a spinning circular.
circular_attributes
common_attributes
Macro for setting common attributes to a widget.
container
Macro for creating a container.
container_attributes
dialog
Macro for creating a modal.
dialog_attributes
extract_children
Macro to extract children’s entities from children attributes.
fps
Macro for creating fps count.
fps_text_attributes
image
Macro for creating an image.
image_attributes
progress_bar
Macro for creating a progress bar.
progress_bar_attributes
scroll
Macro for creating a scrollable container.
scroll_attributes
selection
Macro for creating a single choice selector.
selection_attributes
text
Macro for creating a text.
text_attributes
text_input
Macro for creating a single line text input. Clipboard is not supported yet on WASM.
text_input_attributes