7 releases
0.1.19 | Nov 25, 2023 |
---|---|
0.1.18 | Nov 2, 2023 |
0.1.17 | Oct 31, 2023 |
#153 in Multimedia
165KB
3K
SLoC
Agera SDK API
This crate provides the Agera SDK APIs for developing rich internet applications.
lib.rs
:
The foundational APIs used to write Agera rich internet applications.
The Basics
Agera applications are created either through the Agera command line interface or
an integrated development environment. Rust programs should include the following use
item:
use agera::common::*;
Nodes
Agera uses a Node graph using the util::inheritance
module.
You can define your own classes that extend other Node classes.
Graphical Experience
The agera::display
and agera::controls
modules are used to display graphics and controls
to the screen. Agera supports in-depth settings of display objects, such as registration point and filters
and operations such as measurement of object bounds.
Working with Files
The agera::file
module provides ways of operating on files, either by path or by reference.
It abstracts away working with files that belong to the application.
use agera::file::*;
// A file path
let file = File::new("app://asset.svg");
// Synchronous operation
println!("{}", file.exists());
// Asynchronous operation
println!("{}", file.exists_async().await);
Working with Events
Event conditions are commonly expressed as EventEmitter
objects, to which the programmer
may attach listeners by using the .listener
method.
// Registering listener
let listener = button.on_click().listener(|e| {
// Action
});
// Removing listener
listener.remove();
Dependencies
~6–19MB
~268K SLoC