libnotcurses_sys/widgets/tree/methods/
mod.rs1mod options;
4mod tree;
5
6pub use options::*;
7pub use tree::*;
8
9#[cfg(not(feature = "std"))]
10use alloc::ffi::CString;
11
12#[cfg(feature = "std")]
13use std::ffi::CString;
14
15use core::{ffi::c_void, ptr::null_mut};
16
17use super::NcTreeItem;
18
19impl NcTreeItem {
21 pub fn new(curry: &str, subs: Option<&mut [NcTreeItem]>, subcount: usize) -> Self {
23 if let Some(subs) = subs {
24 Self {
25 curry: CString::new(curry).unwrap().into_raw() as *mut _ as *mut c_void,
26 subs: subs.as_mut_ptr(),
27 subcount: subcount as u32,
28 }
29 } else {
30 Self {
31 curry: CString::new(curry).unwrap().into_raw() as *mut _ as *mut c_void,
32 subs: null_mut(),
33 subcount: subcount as u32,
34 }
35 }
36 }
37}