Crate sciter

Source
Expand description

§Rust bindings library for Sciter engine.

Sciter is an embeddable multiplatform HTML/CSS/script engine with GPU accelerated rendering designed to render modern desktop application UI. It’s a compact, single dll/dylib/so file (4-8 mb) engine without any additional dependencies.

Check the screenshot gallery of the desktop UI examples.

Sciter supports all standard elements defined in HTML5 specification with some additions. CSS is extended to better support the Desktop UI development, e.g. flow and flex units, vertical and horizontal alignment, OS theming.

Sciter SDK comes with a demo “browser” with builtin DOM inspector, script debugger and documentation viewer:

Sciter tools

Check https://sciter.com website and its documentation resources for engine principles, architecture and more.

§Brief look:

Here is a minimal sciter app:

extern crate sciter;

fn main() {
    let mut frame = sciter::Window::new();
    frame.load_file("minimal.htm");
    frame.run_app();
}

It looks similar like this:

Minimal sciter sample

Check rust-sciter/examples folder for more complex usage and module-level sections for the guides about:

Re-exports§

pub use dom::Element;
pub use dom::event::EventHandler;
pub use host::Archive;
pub use host::Host;
pub use host::HostHandler;
pub use value::Value;
pub use value::FromValue;
pub use window::Window;

Modules§

dom
DOM access methods via the dom::Element.
graphics
Sciter’s platform independent graphics interface.
host
Sciter host application helpers.
macros
Macros
om
Sciter Object Model (SOM passport).
request
Sciter Request API.
types
Export platform-dependent types used by Sciter.
utf
UTF-8 <> UTF-16 conversion support.
value
Rust interface to the sciter::value.
video
Sciter video rendering.
window
High-level native window wrapper.
windowless
Windowless Sciter.

Macros§

dispatch_script_call
Dispatch script calls to native code. Used in dom::EventHandler implementations.
make_args
Pack arguments into a [Value] array to call Sciter script functions.
s2u
Rust string to UTF-8 conversion. See also utf::u2s.
s2un
Rust string to UTF-8 conversion. See also utf::u2s.
s2w
Rust string to UTF-16 conversion. See also utf::w2s.
s2wn
Rust string to UTF-16 conversion. See also utf::w2s.
u2s
UTF-8 to String conversion.
varray
Creates a sciter::Value (of array type) containing the arguments.
vmap
Create a sciter::Value (of map type) from a list of key-value pairs.
w2s
UTF-16 to String conversion.

Enums§

GFX_LAYER
Sciter graphics rendering backend.
RuntimeOptions
Various global Sciter engine options.
SCRIPT_RUNTIME_FEATURES
Script runtime options.

Functions§

api_version
Sciter API version.
is_windowless
Returns true for windowless builds.
set_host_api
Set the Sciter API coming from SciterLibraryInit.
set_library
Set a custom path to the Sciter dynamic library.
set_options
Set various global Sciter engine options, see the RuntimeOptions.
set_variable
Set a global variable by its path to all windows.
version
Sciter engine version string (e.g. “3.3.2.0”).
version_num
Sciter engine version number (e.g. 0x03030200).

Type Aliases§

WindowBuilder
Builder pattern for window creation. See window::Builder documentation.