diff options
author | Harry Jeffery <harry@exec64.co.uk> | 2017-08-20 17:58:41 +0100 |
---|---|---|
committer | Harry Jeffery <harry@exec64.co.uk> | 2017-08-20 17:59:04 +0100 |
commit | dd8c5293705b2baeb5ca8c0a4fa9a594cd8e4cd9 (patch) | |
tree | eacdb734ca9c5702b781712923dbf4d14773856f /src | |
parent | 167f1280ce974247dfce30dac840f4b3130bd12d (diff) | |
download | imv-dd8c5293705b2baeb5ca8c0a4fa9a594cd8e4cd9.tar.gz |
Implement documented -l flag
Diffstat (limited to 'src')
-rw-r--r-- | src/imv.c | 5 | ||||
-rw-r--r-- | src/navigator.c | 12 | ||||
-rw-r--r-- | src/navigator.h | 7 |
3 files changed, 24 insertions, 0 deletions
@@ -503,6 +503,11 @@ bool imv_run(struct imv *imv) } } + if(imv->list_at_exit) { + for(int i = 0; i < imv_navigator_length(imv->navigator); ++i) + puts(imv_navigator_at(imv->navigator, i)); + } + return false; } diff --git a/src/navigator.c b/src/navigator.c index ae7bccd..094964f 100644 --- a/src/navigator.c +++ b/src/navigator.c @@ -259,5 +259,17 @@ int imv_navigator_wrapped(struct imv_navigator *nav) return nav->wrapped; } +int imv_navigator_length(struct imv_navigator *nav) +{ + return nav->num_paths; +} + +char *imv_navigator_at(struct imv_navigator *nav, int index) +{ + if(index >= 0 && index < nav->num_paths) { + return nav->paths[index]; + } + return NULL; +} /* vim:set ts=2 sts=2 sw=2 et: */ diff --git a/src/navigator.h b/src/navigator.h index 0d56fa7..71c0948 100644 --- a/src/navigator.h +++ b/src/navigator.h @@ -72,6 +72,13 @@ int imv_navigator_poll_changed(struct imv_navigator *nav); /* Check whether navigator wrapped around paths list */ int imv_navigator_wrapped(struct imv_navigator *nav); +/* Return how many paths in navigator */ +int imv_navigator_length(struct imv_navigator *nav); + +/* Return a path for a given index */ +char *imv_navigator_at(struct imv_navigator *nav, int index); + + #endif |