use scintilla_sys::{
SC_CASE_CAMEL, SC_CASE_LOWER, SC_CASE_MIXED, SC_CASE_UPPER, SC_IDLESTYLING_AFTERVISIBLE,
SC_IDLESTYLING_ALL, SC_IDLESTYLING_NONE, SC_IDLESTYLING_TOVISIBLE,
};
pub use scintilla_sys::{
STYLE_BRACEBAD, STYLE_BRACELIGHT, STYLE_CALLTIP, STYLE_CONTROLCHAR, STYLE_DEFAULT, STYLE_FOLDDISPLAYTEXT, STYLE_INDENTGUIDE, STYLE_LASTPREDEFINED, STYLE_LINENUMBER, STYLE_MAX, };
#[derive(Debug, PartialEq)]
pub enum IdleStyling {
None,
ToVisible,
AfterVisible,
All,
}
impl From<u32> for IdleStyling {
fn from(value: u32) -> Self {
match value {
SC_IDLESTYLING_NONE => Self::None,
SC_IDLESTYLING_TOVISIBLE => Self::ToVisible,
SC_IDLESTYLING_AFTERVISIBLE => Self::AfterVisible,
SC_IDLESTYLING_ALL => Self::All,
_ => Self::None,
}
}
}
impl Into<u32> for IdleStyling {
fn into(self) -> u32 {
match self {
Self::None => SC_IDLESTYLING_NONE,
Self::ToVisible => SC_IDLESTYLING_TOVISIBLE,
Self::AfterVisible => SC_IDLESTYLING_AFTERVISIBLE,
Self::All => SC_IDLESTYLING_ALL,
}
}
}
#[derive(Debug, PartialEq)]
pub enum Case {
Upper,
Lower,
Camel,
Mixed,
}
impl From<u32> for Case {
fn from(value: u32) -> Self {
match value {
SC_CASE_MIXED => Self::Mixed,
SC_CASE_UPPER => Self::Upper,
SC_CASE_LOWER => Self::Lower,
SC_CASE_CAMEL => Self::Camel,
_ => Self::Mixed,
}
}
}
impl Into<u32> for Case {
fn into(self) -> u32 {
match self {
Self::Upper => SC_CASE_UPPER,
Self::Lower => SC_CASE_LOWER,
Self::Camel => SC_CASE_CAMEL,
Self::Mixed => SC_CASE_MIXED,
}
}
}