add enum Role
This will make it easier to ensure we are always using the appropriate data type in the DataChanged signal since we won't need to hand pass i32s around and instead define them once in the function get_role.
This commit is contained in:
parent
0f0f16e069
commit
6377182ab3
1 changed files with 29 additions and 1 deletions
|
@ -106,6 +106,24 @@ mod slide_model {
|
||||||
ActiveChanged,
|
ActiveChanged,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum Role {
|
||||||
|
ActiveRole,
|
||||||
|
SelectedRole,
|
||||||
|
LoopingRole,
|
||||||
|
TextRole,
|
||||||
|
}
|
||||||
|
|
||||||
|
// impl Role {
|
||||||
|
// pub fn get_role(&self) -> i32 {
|
||||||
|
// match self {
|
||||||
|
// Role::ActiveRole => 12,
|
||||||
|
// Role::SelectedRole => 13,
|
||||||
|
// Role::LoopingRole => 14,
|
||||||
|
// Role::TextRole => 1,
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
impl qobject::SlideyMod {
|
impl qobject::SlideyMod {
|
||||||
// #[qinvokable]
|
// #[qinvokable]
|
||||||
// pub fn add(self: Pin<&mut Self>) {
|
// pub fn add(self: Pin<&mut Self>) {
|
||||||
|
@ -662,7 +680,7 @@ mod slide_model {
|
||||||
let tl = &self.as_ref().index(0, 0, &QModelIndex::default());
|
let tl = &self.as_ref().index(0, 0, &QModelIndex::default());
|
||||||
let br = &self.as_ref().index(rc, 0, &QModelIndex::default());
|
let br = &self.as_ref().index(rc, 0, &QModelIndex::default());
|
||||||
let mut vector_roles = QVector_i32::default();
|
let mut vector_roles = QVector_i32::default();
|
||||||
vector_roles.append(12);
|
vector_roles.append(self.get_role(Role::ActiveRole));
|
||||||
for slide in self.as_mut().slides_mut().iter_mut() {
|
for slide in self.as_mut().slides_mut().iter_mut() {
|
||||||
// println!("slide is deactivating {:?}", i);
|
// println!("slide is deactivating {:?}", i);
|
||||||
slide.active = false;
|
slide.active = false;
|
||||||
|
@ -682,6 +700,16 @@ mod slide_model {
|
||||||
false
|
false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn get_role(&self, role: Role) -> i32 {
|
||||||
|
match role {
|
||||||
|
Role::ActiveRole => 12,
|
||||||
|
Role::SelectedRole => 13,
|
||||||
|
Role::LoopingRole => 14,
|
||||||
|
Role::TextRole => 1,
|
||||||
|
_ => 0,
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create Rust bindings for C++ functions of the base class (QAbstractItemModel)
|
// Create Rust bindings for C++ functions of the base class (QAbstractItemModel)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue