set Changelog UI to display log from selected channel in ChannelsList UI
Dependencies
- [2]
XERTHGSYconsolidated `pijul log` UI elements into their own component - [3]
PL4TK55Oadded command-line argument to specify executable path - [4]
IQY5LHENadd GUI element to display simple `pijul log` results - [5]
6M4YFQEBadded command-line argument to specify repository path - [6]
G2CHQAOPparsed `pijul log` text blob into individual entries & fields - [7]
6ECOC7L5parsed `pijul channel` text blob into individual UI components - [8]
NSE6BLWAinit slint project from https://github.com/slint-ui/slint-rust-template - [9]
4RPYR65Cconnect GUI to pijul to display simple channel list - [*]
NCRTU7M4cargo init
Change contents
- replacement in ui/app-window.slint at line 177
callback request-changes-log();callback request-changes-log(string); - replacement in ui/app-window.slint at line 185
root.request-changes-log();root.request-changes-log(chs.channels[chs.selected]); - replacement in ui/app-window.slint at line 191
chs := ChannelsList { }chs := ChannelsList {selection-changed => {root.request-changes-log(chs.channels[chs.selected]);}} - replacement in src/main.rs at line 55
move || {move |ch_name: SharedString| {let ch_name = ch_name.as_str(); - replacement in src/main.rs at line 64
let log_output = log(exe_path, repo_path);let log_output = log(exe_path,repo_path,Some(ch_name).filter(|cn| !cn.is_empty()),); - replacement in src/cmds.rs at line 33
pub fn log(exe: &std::path::Path, repo: &std::path::Path) -> Result<Vec<ChangelogEntry>, Error> {pub fn log(exe: &std::path::Path,repo: &std::path::Path,ch_name_maybe: Option<&str>,) -> Result<Vec<ChangelogEntry>, Error> { - replacement in src/cmds.rs at line 39
let cmd = cmd.arg("log")cmd.arg("log") - edit in src/cmds.rs at line 45
if let Some(ch_name) = ch_name_maybe {cmd.arg("--channel").arg(ch_name);} - replacement in src/cmds.rs at line 49
check_exit_status(cmd, output.status)?;check_exit_status(&cmd, output.status)?;