Radish alpha
r
Radicle terminal user interface
Radicle
Git (anonymous pull)
Log in to clone via SSH
tui: Pass widget props to command handler
Erik Kundt committed 3 years ago
commit ee628881016fbfc216791b04d0ca2a23d3f2a40b
parent efda39e801531b6b8fcef942face76cc798b866d
5 files changed +11 -11
modified radicle-tui/src/ui/components/container.rs
@@ -25,7 +25,7 @@ impl WidgetComponent for GlobalListener {
        State::None
    }

-
    fn perform(&mut self, _cmd: Cmd) -> CmdResult {
+
    fn perform(&mut self, _properties: &Props, _cmd: Cmd) -> CmdResult {
        CmdResult::None
    }
}
@@ -94,7 +94,7 @@ impl WidgetComponent for Tabs {
        State::One(StateValue::U16(self.state.selected))
    }

-
    fn perform(&mut self, cmd: Cmd) -> CmdResult {
+
    fn perform(&mut self, _properties: &Props, cmd: Cmd) -> CmdResult {
        use tuirealm::command::Direction;

        match cmd {
@@ -147,7 +147,7 @@ impl WidgetComponent for Header {
        State::None
    }

-
    fn perform(&mut self, _cmd: Cmd) -> CmdResult {
+
    fn perform(&mut self, _properties: &Props, _cmd: Cmd) -> CmdResult {
        CmdResult::None
    }
}
@@ -205,7 +205,7 @@ impl WidgetComponent for LabeledContainer {
        State::None
    }

-
    fn perform(&mut self, cmd: Cmd) -> CmdResult {
+
    fn perform(&mut self, _properties: &Props, cmd: Cmd) -> CmdResult {
        self.component.perform(cmd)
    }
}
modified radicle-tui/src/ui/components/context.rs
@@ -50,7 +50,7 @@ impl WidgetComponent for Shortcut {
        State::None
    }

-
    fn perform(&mut self, _cmd: Cmd) -> CmdResult {
+
    fn perform(&mut self, _properties: &Props, _cmd: Cmd) -> CmdResult {
        CmdResult::None
    }
}
@@ -98,7 +98,7 @@ impl WidgetComponent for Shortcuts {
        State::None
    }

-
    fn perform(&mut self, _cmd: Cmd) -> CmdResult {
+
    fn perform(&mut self, _properties: &Props, _cmd: Cmd) -> CmdResult {
        CmdResult::None
    }
}
modified radicle-tui/src/ui/components/label.rs
@@ -49,7 +49,7 @@ impl WidgetComponent for Label {
        State::None
    }

-
    fn perform(&mut self, _cmd: Cmd) -> CmdResult {
+
    fn perform(&mut self, _properties: &Props, _cmd: Cmd) -> CmdResult {
        CmdResult::None
    }
}
modified radicle-tui/src/ui/components/list.rs
@@ -58,7 +58,7 @@ impl WidgetComponent for Property {
        State::None
    }

-
    fn perform(&mut self, _cmd: Cmd) -> CmdResult {
+
    fn perform(&mut self, _properties: &Props, _cmd: Cmd) -> CmdResult {
        CmdResult::None
    }
}
@@ -99,7 +99,7 @@ impl WidgetComponent for PropertyList {
        State::None
    }

-
    fn perform(&mut self, _cmd: Cmd) -> CmdResult {
+
    fn perform(&mut self, _properties: &Props, _cmd: Cmd) -> CmdResult {
        CmdResult::None
    }
}
modified radicle-tui/src/ui/widget.rs
@@ -12,7 +12,7 @@ pub trait WidgetComponent {

    fn state(&self) -> State;

-
    fn perform(&mut self, cmd: Cmd) -> CmdResult;
+
    fn perform(&mut self, properties: &Props, cmd: Cmd) -> CmdResult;
}

#[derive(Clone)]
@@ -95,6 +95,6 @@ impl<T: WidgetComponent> MockComponent for Widget<T> {
    }

    fn perform(&mut self, cmd: Cmd) -> CmdResult {
-
        self.component.perform(cmd)
+
        self.component.perform(&self.properties, cmd)
    }
}