config: add workspace window criteria
This commit is contained in:
parent
5ad6ca4dd3
commit
51e752992f
13 changed files with 88 additions and 3 deletions
|
|
@ -14,6 +14,7 @@ pub type TlmMatchTag = TlmMatchString<TagAccess>;
|
|||
pub type TlmMatchClass = TlmMatchString<ClassAccess>;
|
||||
pub type TlmMatchInstance = TlmMatchString<InstanceAccess>;
|
||||
pub type TlmMatchRole = TlmMatchString<RoleAccess>;
|
||||
pub type TlmMatchWorkspace = TlmMatchString<WorkspaceAccess>;
|
||||
|
||||
pub struct TitleAccess;
|
||||
pub struct AppIdAccess;
|
||||
|
|
@ -21,6 +22,7 @@ pub struct TagAccess;
|
|||
pub struct ClassAccess;
|
||||
pub struct InstanceAccess;
|
||||
pub struct RoleAccess;
|
||||
pub struct WorkspaceAccess;
|
||||
|
||||
impl StringAccess<ToplevelData> for TitleAccess {
|
||||
fn with_string(data: &ToplevelData, f: impl FnOnce(&str) -> bool) -> bool {
|
||||
|
|
@ -93,3 +95,16 @@ impl StringAccess<ToplevelData> for RoleAccess {
|
|||
&roots.role
|
||||
}
|
||||
}
|
||||
|
||||
impl StringAccess<ToplevelData> for WorkspaceAccess {
|
||||
fn with_string(data: &ToplevelData, f: impl FnOnce(&str) -> bool) -> bool {
|
||||
if let Some(ws) = data.workspace.get() {
|
||||
return f(&ws.name);
|
||||
}
|
||||
false
|
||||
}
|
||||
|
||||
fn nodes(roots: &RootMatchers) -> &TlmRootMatcherMap<TlmMatchString<Self>> {
|
||||
&roots.workspace
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue