diff --git a/__gui/sciter/Cargo.lock b/__gui/sciter/Cargo.lock new file mode 100644 index 0000000..70d23c0 --- /dev/null +++ b/__gui/sciter/Cargo.lock @@ -0,0 +1,76 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +[[package]] +name = "block" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "libc" +version = "0.2.94" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18794a8ad5b29321f790b55d93dfba91e125cb1a9edbd4f8e3150acc771c1a5e" + +[[package]] +name = "malloc_buf" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" +dependencies = [ + "libc", +] + +[[package]] +name = "objc" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" +dependencies = [ + "malloc_buf", +] + +[[package]] +name = "objc-foundation" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9" +dependencies = [ + "block", + "objc", + "objc_id", +] + +[[package]] +name = "objc_id" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b" +dependencies = [ + "objc", +] + +[[package]] +name = "sciter" +version = "0.1.0" +dependencies = [ + "sciter-rs", +] + +[[package]] +name = "sciter-rs" +version = "0.5.56" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "265a6c1d8f32138274afbb250d4231e7329d579589d5c5d9b8b7fb9210aac90a" +dependencies = [ + "lazy_static", + "libc", + "objc", + "objc-foundation", +] diff --git a/__gui/sciter/Cargo.toml b/__gui/sciter/Cargo.toml new file mode 100644 index 0000000..fd3fdd8 --- /dev/null +++ b/__gui/sciter/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "sciter" +version = "0.1.0" +authors = ["Hatter Jiang "] +edition = "2018" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +sciter-rs = "0.5.56" + + diff --git a/__gui/sciter/assets/app.htm b/__gui/sciter/assets/app.htm new file mode 100644 index 0000000..2c359c4 --- /dev/null +++ b/__gui/sciter/assets/app.htm @@ -0,0 +1,87 @@ + + + Sample Sciter demo + + + + + +

Sample Sciter Application

+

Running on machine

+

Sciter version rev

+ + + + + + + + + \ No newline at end of file diff --git a/__gui/sciter/assets/favicon.png b/__gui/sciter/assets/favicon.png new file mode 100644 index 0000000..30e9096 Binary files /dev/null and b/__gui/sciter/assets/favicon.png differ diff --git a/__gui/sciter/src/.gitignore b/__gui/sciter/src/.gitignore new file mode 100644 index 0000000..a04ea50 --- /dev/null +++ b/__gui/sciter/src/.gitignore @@ -0,0 +1 @@ +assets.rc diff --git a/__gui/sciter/src/main.rs b/__gui/sciter/src/main.rs new file mode 100644 index 0000000..ad0b6bb --- /dev/null +++ b/__gui/sciter/src/main.rs @@ -0,0 +1,27 @@ +#![windows_subsystem = "windows"] +extern crate sciter; + +// https://github.com/sciter-sdk/rust-sciter/blob/master/examples/minimal.rs +fn main() { + // let app_bytes = include_bytes!("app.htm"); + + // sciter::set_options(sciter::RuntimeOptions::ScriptFeatures( + // sciter::SCRIPT_RUNTIME_FEATURES::ALLOW_SYSINFO as u8 // Enables `Sciter.machineName()`. Required for opening file dialog (`view.selectFile()`) + // | sciter::SCRIPT_RUNTIME_FEATURES::ALLOW_FILE_IO as u8 // Enables opening file dialog (`view.selectFile()`) + // )).unwrap(); + + let mut frame = sciter::Window::new(); + + if cfg!(target_os="macos") { + // a temporary workaround for OSX, see + // https://sciter.com/forums/topic/global-sciter_set_debug_mode-does-not-work-in-osx/ + frame.set_options(sciter::window::Options::DebugMode(true)).unwrap(); + } + + let favicon_bytes = include_bytes!("assets.rc"); + frame.archive_handler(favicon_bytes).expect("Error load assets.rc!"); + + frame.load_file("this://app/app.htm"); + // frame.load_html(app_bytes, Some("app://app.htm")); + frame.run_app(); +}