diff --git a/source/tycho/bindings.json b/source/tycho/bindings.json index f52365a..1926fd2 100644 --- a/source/tycho/bindings.json +++ b/source/tycho/bindings.json @@ -2,9 +2,16 @@ "cppFile": "", "rust": { "dir": "", - "interfaceModule": "interface", - "implementationModule": "implementation" + "interfaceModule": "qintr", + "implementationModule": "qimpl" }, "objects": { + "Project": { + "type": "Object", + "properties": { + }, + "itemProperties": { + } + } } } diff --git a/source/tycho/cc_source/menu.cc b/source/tycho/cc_source/menu.cc index caed18b..4044bca 100644 --- a/source/tycho/cc_source/menu.cc +++ b/source/tycho/cc_source/menu.cc @@ -3,6 +3,7 @@ #include "menu.h" #include "../ui/ui_menu.h" #include "../ui/ui_about.h" +#include "bindings.h" #include #include @@ -23,7 +24,7 @@ Menu::~Menu() void Menu::mapNew() { - // TODO + Project obj{this}; } void Menu::mapOpen() diff --git a/source/tycho/source/main.rs b/source/tycho/source/main.rs index 3e47c38..feb5954 100644 --- a/source/tycho/source/main.rs +++ b/source/tycho/source/main.rs @@ -1,5 +1,8 @@ use maraiah::durandal::{err::*, ffi}; +mod qimpl; +mod qintr; + extern "C" { fn main_cc(app_name: *mut ffi::c_char); } diff --git a/source/tycho/source/qimpl.rs b/source/tycho/source/qimpl.rs new file mode 100644 index 0000000..ee53413 --- /dev/null +++ b/source/tycho/source/qimpl.rs @@ -0,0 +1,30 @@ +use crate::qintr::*; + +pub struct Project +{ + emit: ProjectEmitter, +} + +impl Drop for Project +{ + fn drop(&mut self) + { + println!("drop Project"); + } +} + +impl ProjectTrait for Project +{ + fn new(emit: ProjectEmitter) -> Project + { + println!("new Project"); + Project{emit} + } + + fn emit(&mut self) -> &mut ProjectEmitter + { + &mut self.emit + } +} + +// EOF diff --git a/source/tycho/source/qintr.rs b/source/tycho/source/qintr.rs new file mode 100644 index 0000000..2e45006 --- /dev/null +++ b/source/tycho/source/qintr.rs @@ -0,0 +1,8 @@ +#![allow(unused_imports)] +#![allow(dead_code)] + +use maraiah::durandal::ffi as libc; + +include!(concat!(env!("OUT_DIR"), "/src/qintr.rs")); + +// EOF