Update templates and example to latest version of rust_qt_binding_generator

master
Jos van den Oever 2018-08-05 14:43:06 +02:00
parent c4d9b04083
commit 26eacf2095
6 changed files with 18 additions and 17 deletions

View File

@ -1,8 +1,9 @@
project (my_rust_qt_quick_project)
cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
cmake_policy(SET CMP0046 NEW)
cmake_policy(SET CMP0063 NEW)
cmake_policy(SET CMP0071 NEW)
LIST(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
string(TOUPPER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_UPPER)
@ -43,8 +44,7 @@ SET(RUST_LIB "${RUST_DIR}/${RUST_TARGET_DIR}/librust.a")
add_custom_command(
OUTPUT "${RUST_DIR}/src/interface.rs"
"${CMAKE_CURRENT_SOURCE_DIR}/src/Bindings.h"
# if the cpp file is marked GENERATED, CMake will not check it for moc
# "${CMAKE_CURRENT_SOURCE_DIR}/src/Bindings.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/src/Bindings.cpp"
COMMAND "${RustQtBindingGenerator_EXECUTABLE}" #--overwrite-implementation
"${CMAKE_CURRENT_SOURCE_DIR}/bindings.json"
DEPENDS bindings.json

View File

@ -51,6 +51,7 @@ fn set_string_from_utf16(s: &mut String, str: *const c_ushort, len: c_int) {
#[repr(C)]
#[derive(PartialEq, Eq, Debug)]
pub enum SortOrder {
Ascending = 0,
Descending = 1,
@ -176,8 +177,8 @@ pub trait TodosTrait {
#[no_mangle]
pub extern "C" fn todos_new(
todos: *mut TodosQObject,
active_count_changed: fn(*const TodosQObject),
count_changed: fn(*const TodosQObject),
todos_active_count_changed: fn(*const TodosQObject),
todos_count_changed: fn(*const TodosQObject),
todos_new_data_ready: fn(*const TodosQObject),
todos_data_changed: fn(*const TodosQObject, usize, usize),
todos_begin_reset_model: fn(*const TodosQObject),
@ -189,8 +190,8 @@ pub extern "C" fn todos_new(
) -> *mut Todos {
let todos_emit = TodosEmitter {
qobject: Arc::new(Mutex::new(todos)),
active_count_changed: active_count_changed,
count_changed: count_changed,
active_count_changed: todos_active_count_changed,
count_changed: todos_count_changed,
new_data_ready: todos_new_data_ready,
};
let model = TodosList {

View File

@ -1,8 +1,9 @@
project (my_rust_qt_quick_project)
cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
cmake_policy(SET CMP0046 NEW)
cmake_policy(SET CMP0063 NEW)
cmake_policy(SET CMP0071 NEW)
LIST(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
string(TOUPPER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_UPPER)
@ -43,8 +44,7 @@ SET(RUST_LIB "${RUST_DIR}/${RUST_TARGET_DIR}/librust.a")
add_custom_command(
OUTPUT "${RUST_DIR}/src/interface.rs"
"${CMAKE_CURRENT_SOURCE_DIR}/src/Bindings.h"
# if the cpp file is marked GENERATED, CMake will not check it for moc
# "${CMAKE_CURRENT_SOURCE_DIR}/src/Bindings.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/src/Bindings.cpp"
COMMAND "${RustQtBindingGenerator_EXECUTABLE}"
"${CMAKE_CURRENT_SOURCE_DIR}/bindings.json"
DEPENDS bindings.json

View File

@ -72,11 +72,11 @@ pub trait SimpleTrait {
#[no_mangle]
pub extern "C" fn simple_new(
simple: *mut SimpleQObject,
message_changed: fn(*const SimpleQObject),
simple_message_changed: fn(*const SimpleQObject),
) -> *mut Simple {
let simple_emit = SimpleEmitter {
qobject: Arc::new(Mutex::new(simple)),
message_changed: message_changed,
message_changed: simple_message_changed,
};
let d_simple = Simple::new(simple_emit);
Box::into_raw(Box::new(d_simple))

View File

@ -1,8 +1,9 @@
project (my_rust_qt_widgets_project)
cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
cmake_policy(SET CMP0046 NEW)
cmake_policy(SET CMP0063 NEW)
cmake_policy(SET CMP0071 NEW)
LIST(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
string(TOUPPER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_UPPER)
@ -43,8 +44,7 @@ SET(RUST_LIB "${RUST_DIR}/${RUST_TARGET_DIR}/librust.a")
add_custom_command(
OUTPUT "${RUST_DIR}/src/interface.rs"
"${CMAKE_CURRENT_SOURCE_DIR}/src/Bindings.h"
# if the cpp file is marked GENERATED, CMake will not check it for moc
# "${CMAKE_CURRENT_SOURCE_DIR}/src/Bindings.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/src/Bindings.cpp"
COMMAND "${RustQtBindingGenerator_EXECUTABLE}"
"${CMAKE_CURRENT_SOURCE_DIR}/bindings.json"
DEPENDS bindings.json

View File

@ -72,11 +72,11 @@ pub trait SimpleTrait {
#[no_mangle]
pub extern "C" fn simple_new(
simple: *mut SimpleQObject,
message_changed: fn(*const SimpleQObject),
simple_message_changed: fn(*const SimpleQObject),
) -> *mut Simple {
let simple_emit = SimpleEmitter {
qobject: Arc::new(Mutex::new(simple)),
message_changed: message_changed,
message_changed: simple_message_changed,
};
let d_simple = Simple::new(simple_emit);
Box::into_raw(Box::new(d_simple))