1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-28 05:46:38 +02:00

core: factorize functions to search text in window

This commit is contained in:
Sébastien Helleu
2015-07-26 19:49:35 +02:00
parent 8e6f525b59
commit 5c5df1b068
3 changed files with 9 additions and 28 deletions
+2 -2
View File
@@ -578,7 +578,7 @@ gui_input_search_text_here (struct t_gui_buffer *buffer)
window = gui_window_search_with_buffer (buffer);
if (window && (window->buffer->text_search == GUI_TEXT_SEARCH_DISABLED))
{
gui_window_search_start_here (window);
gui_window_search_start (window, window->scroll->start_line);
gui_input_search_signal (buffer);
}
}
@@ -595,7 +595,7 @@ gui_input_search_text (struct t_gui_buffer *buffer)
window = gui_window_search_with_buffer (buffer);
if (window && (window->buffer->text_search == GUI_TEXT_SEARCH_DISABLED))
{
gui_window_search_start (window);
gui_window_search_start (window, NULL);
gui_input_search_signal (buffer);
}
}
+5 -24
View File
@@ -1569,12 +1569,15 @@ gui_window_search_text (struct t_gui_window *window)
}
/*
* Begins search in a buffer (helper function).
* Starts search in a buffer at a given position
* (or in whole buffer if text_search_start_line is NULL).
*/
void
gui_window_search_begin (struct t_gui_window *window)
gui_window_search_start (struct t_gui_window *window,
struct t_gui_line *text_search_start_line)
{
window->scroll->text_search_start_line = text_search_start_line;
window->buffer->text_search =
(window->buffer->type == GUI_BUFFER_TYPE_FORMATTED) ?
GUI_TEXT_SEARCH_BACKWARD : GUI_TEXT_SEARCH_FORWARD;
@@ -1620,28 +1623,6 @@ gui_window_search_begin (struct t_gui_window *window)
gui_input_delete_line (window->buffer);
}
/*
* Starts search in a buffer at current position.
*/
void
gui_window_search_start_here (struct t_gui_window *window)
{
gui_window_search_begin (window);
window->scroll->text_search_start_line = window->scroll->start_line;
}
/*
* Starts search in a buffer.
*/
void
gui_window_search_start (struct t_gui_window *window)
{
gui_window_search_begin (window);
window->scroll->text_search_start_line = NULL;
}
/*
* Restarts search (after input changes or exact flag (un)set).
*/
+2 -2
View File
@@ -183,8 +183,8 @@ extern void gui_window_scroll_horiz (struct t_gui_window *window, char *scroll);
extern void gui_window_scroll_previous_highlight (struct t_gui_window *window);
extern void gui_window_scroll_next_highlight (struct t_gui_window *window);
extern void gui_window_scroll_unread (struct t_gui_window *window);
extern void gui_window_search_start_here (struct t_gui_window *window);
extern void gui_window_search_start (struct t_gui_window *window);
extern void gui_window_search_start (struct t_gui_window *window,
struct t_gui_line *text_search_start_line);
extern void gui_window_search_restart (struct t_gui_window *window);
extern void gui_window_search_stop_here (struct t_gui_window *window);
extern void gui_window_search_stop (struct t_gui_window *window);