Warning, /sdk/rust-qt-binding-generator/tests/rust_tree/src/implementation.rs is written in an unsupported language. File is not indexed.
0001 #![allow(unused_imports)]
0002 #![allow(unused_variables)]
0003 #![allow(dead_code)]
0004 use interface::*;
0005
0006 #[derive(Default, Clone)]
0007 struct PersonsItem {
0008 user_name: String,
0009 }
0010
0011 pub struct Persons {
0012 emit: PersonsEmitter,
0013 model: PersonsTree,
0014 list: Vec<PersonsItem>,
0015 }
0016
0017 impl PersonsTrait for Persons {
0018 fn new(emit: PersonsEmitter, model: PersonsTree) -> Persons {
0019 Persons {
0020 emit: emit,
0021 model: model,
0022 list: vec![PersonsItem::default(); 10],
0023 }
0024 }
0025 fn emit(&mut self) -> &mut PersonsEmitter {
0026 &mut self.emit
0027 }
0028 fn row_count(&self, index: Option<usize>) -> usize {
0029 self.list.len()
0030 }
0031 fn index(&self, index: Option<usize>, row: usize) -> usize {
0032 0
0033 }
0034 fn parent(&self, index: usize) -> Option<usize> {
0035 None
0036 }
0037 fn row(&self, index: usize) -> usize {
0038 index
0039 }
0040 fn check_row(&self, index: usize, _row: usize) -> Option<usize> {
0041 if index < self.list.len() {
0042 Some(index)
0043 } else {
0044 None
0045 }
0046 }
0047 fn user_name(&self, index: usize) -> &str {
0048 &self.list[index].user_name
0049 }
0050 fn set_user_name(&mut self, index: usize, v: String) -> bool {
0051 self.list[index].user_name = v;
0052 true
0053 }
0054 }
0055