Skip to main content

tree_table/args/
args_select.rs

1use crate::SpanKey;
2use crate::statics::default_emit_event_for_api;
3use crate::statics::default_undo_for_api;
4use alloc::string::String;
5use alloc::vec::Vec;
6
7#[cfg_attr(feature = "tsify", derive(tsify::Tsify))]
8#[cfg_attr(feature = "tsify", tsify(from_wasm_abi))]
9#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10#[derive(Debug, Clone, PartialEq)]
11pub struct AddSelectionArgs {
12    pub key: SpanKey,
13    pub current: bool,
14    pub emit: bool,
15    pub undo: bool,
16}
17
18impl Default for AddSelectionArgs {
19    fn default() -> Self {
20        AddSelectionArgs {
21            key: SpanKey::None,
22            current: true,
23            emit: default_emit_event_for_api(),
24            undo: default_undo_for_api(),
25        }
26    }
27}
28
29#[cfg_attr(feature = "tsify", derive(tsify::Tsify))]
30#[cfg_attr(feature = "tsify", tsify(from_wasm_abi))]
31#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
32#[derive(Debug, Clone, PartialEq)]
33pub struct SelectRowsColsArgs {
34    pub items: Vec<String>,
35    pub replace: bool,
36    pub current: bool,
37    pub emit: bool,
38    pub undo: bool,
39}
40
41#[cfg_attr(feature = "tsify", derive(tsify::Tsify))]
42#[cfg_attr(feature = "tsify", tsify(from_wasm_abi))]
43#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
44#[derive(Debug, Clone, PartialEq)]
45pub struct SelectionClearArgs {
46    pub emit: bool,
47    pub undo: bool,
48}
49
50impl Default for SelectionClearArgs {
51    fn default() -> Self {
52        SelectionClearArgs {
53            emit: default_emit_event_for_api(),
54            undo: default_undo_for_api(),
55        }
56    }
57}