Common/UserInterface/DTO/
QuickPickOptionsDTO.rs

1//! # QuickPickOptionsDTO
2//!
3//! Defines the Data Transfer Object for the options of a quick pick UI.
4
5use serde::{Deserialize, Serialize};
6
7/// A serializable struct that holds all configuration options for a quick pick
8/// UI.
9#[derive(Serialize, Deserialize, Debug, Clone, Default)]
10#[serde(rename_all = "PascalCase")]
11pub struct QuickPickOptionsDTO {
12	/// An optional title for the quick pick window.
13	#[serde(skip_serializing_if = "Option::is_none")]
14	pub Title:Option<String>,
15
16	/// Placeholder text to show in the filter input box when it is empty.
17	#[serde(skip_serializing_if = "Option::is_none")]
18	pub PlaceHolder:Option<String>,
19
20	/// If `true`, the user can select more than one item.
21	#[serde(skip_serializing_if = "Option::is_none")]
22	pub CanPickMany:Option<bool>,
23
24	/// If `true`, the quick pick will not close when it loses focus.
25	#[serde(skip_serializing_if = "Option::is_none")]
26	pub IgnoreFocusOut:Option<bool>,
27}