summaryrefslogtreecommitdiffstats
path: root/src/files_sub_source.hh
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-07 04:48:35 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-07 04:48:35 +0000
commit207df6fc406e81bfeebdff7f404bd242ff3f099f (patch)
treea1a796b056909dd0a04ffec163db9363a8757808 /src/files_sub_source.hh
parentReleasing progress-linux version 0.11.2-1~progress7.99u1. (diff)
downloadlnav-207df6fc406e81bfeebdff7f404bd242ff3f099f.tar.xz
lnav-207df6fc406e81bfeebdff7f404bd242ff3f099f.zip
Merging upstream version 0.12.2.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/files_sub_source.hh')
-rw-r--r--src/files_sub_source.hh31
1 files changed, 15 insertions, 16 deletions
diff --git a/src/files_sub_source.hh b/src/files_sub_source.hh
index 7c3b325..90bcb02 100644
--- a/src/files_sub_source.hh
+++ b/src/files_sub_source.hh
@@ -35,7 +35,8 @@
class files_sub_source
: public text_sub_source
- , public list_input_delegate {
+ , public list_input_delegate
+ , public text_delegate {
public:
files_sub_source();
@@ -60,21 +61,24 @@ public:
int line,
line_flags_t raw) override;
+ bool text_handle_mouse(textview_curses& tc,
+ const listview_curses::display_line_content_t&,
+ mouse_event& me) override;
+
size_t fss_last_line_len{0};
+ attr_line_t fss_curr_line;
};
struct files_overlay_source : public list_overlay_source {
- bool list_value_for_overlay(const listview_curses& lv,
- int y,
- int bottom,
- vis_line_t line,
- attr_line_t& value_out) override;
+ bool list_static_overlay(const listview_curses& lv,
+ int y,
+ int bottom,
+ attr_line_t& value_out) override;
};
namespace files_model {
-struct no_selection {
-};
+struct no_selection {};
template<typename C, typename T>
struct selection_base {
@@ -91,21 +95,16 @@ struct selection_base {
}
};
-struct error_selection
- : public selection_base<error_selection,
- std::map<std::string, file_error_info>::iterator> {
-};
+struct error_selection : public selection_base<error_selection, std::string> {};
struct other_selection
: public selection_base<
other_selection,
- std::map<std::string, other_file_descriptor>::iterator> {
-};
+ std::map<std::string, other_file_descriptor>::iterator> {};
struct file_selection
: public selection_base<file_selection,
- std::vector<std::shared_ptr<logfile>>::iterator> {
-};
+ std::vector<std::shared_ptr<logfile>>::iterator> {};
using files_list_selection = mapbox::util::
variant<no_selection, error_selection, other_selection, file_selection>;