From f1d33d30ceaa8c5ef0e22839f75543f603b303bc Mon Sep 17 00:00:00 2001 From: Chris Allegretta Date: Sat, 19 Aug 2000 03:53:39 +0000 Subject: [PATCH] Get rid of lack of update when searching andmark is set git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@185 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- BUGS | 2 ++ ChangeLog | 11 +++++++++++ po/nano.pot | 46 +++++++++++++++++++++++----------------------- proto.h | 2 +- search.c | 2 ++ winio.c | 12 +++++++++++- 6 files changed, 50 insertions(+), 25 deletions(-) diff --git a/BUGS b/BUGS index d52f76be..a8cccc87 100644 --- a/BUGS +++ b/BUGS @@ -51,6 +51,8 @@ written out to disk when saved..... (37). [FIXED] - Page up and page down do not work the same way as Pico (# of lines). (38) [FIXED] +- When doing a search and the marker is set, the screen does not always + properly update the inverted text (39). [FIXED] ** Open BUGS ** - Marked cutting sometimes leaves a newline in the file unintelligently, diff --git a/ChangeLog b/ChangeLog index 300a481b..5cee4e32 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,15 @@ CVS Code +- winio.c: + total_refresh() + - Added edit_refresh() call to actually update the screen if messy. + edit_refresh_clearok() + - New function, does a total update for edit refresh, needed to fix + lack of reversed text on searching with MARK_ISSET. +- search.c: + search_abort() + - Now calls edit_refresh_clearok when MARK_ISSET to handle screen + ugliness bug (reported by Ken Tyler). + nano-0.9.16 - 08/09/2000 - cut.c: do_cut_text() diff --git a/po/nano.pot b/po/nano.pot index d49cc4c6..df108f8f 100644 --- a/po/nano.pot +++ b/po/nano.pot @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2000-08-07 11:03-0400\n" +"POT-Creation-Date: 2000-08-18 23:52-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -344,7 +344,7 @@ msgid "Case Sens" msgstr "" #: global.c:285 global.c:304 global.c:314 global.c:330 global.c:334 -#: global.c:340 winio.c:984 +#: global.c:340 winio.c:994 msgid "Cancel" msgstr "" @@ -691,47 +691,47 @@ msgstr "" msgid "Search Wrapped" msgstr "" -#: search.c:241 +#: search.c:243 #, c-format msgid "Replaced %d occurences" msgstr "" -#: search.c:243 +#: search.c:245 msgid "Replaced 1 occurence" msgstr "" -#: search.c:378 search.c:399 search.c:422 +#: search.c:380 search.c:401 search.c:424 msgid "Replace Cancelled" msgstr "" -#: search.c:395 +#: search.c:397 #, c-format msgid "Replace with [%s]" msgstr "" #. last_search is empty -#: search.c:420 +#: search.c:422 msgid "Replace with" msgstr "" -#: search.c:461 +#: search.c:463 msgid "Replace this instance?" msgstr "" #. Ask for it -#: search.c:512 +#: search.c:514 msgid "Enter line number" msgstr "" -#: search.c:514 +#: search.c:516 msgid "Aborted" msgstr "" -#: search.c:534 +#: search.c:536 msgid "Come on, be reasonable" msgstr "" -#: search.c:539 +#: search.c:541 #, c-format msgid "Only %d lines available, skipping to last line" msgstr "" @@ -758,50 +758,50 @@ msgstr "" msgid "Modified" msgstr "" -#: winio.c:900 +#: winio.c:910 #, c-format msgid "Moved to (%d, %d) in edit buffer\n" msgstr "" -#: winio.c:911 +#: winio.c:921 #, c-format msgid "current->data = \"%s\"\n" msgstr "" -#: winio.c:954 +#: winio.c:964 #, c-format msgid "I got \"%s\"\n" msgstr "" -#: winio.c:979 +#: winio.c:989 msgid "Yes" msgstr "" -#: winio.c:981 +#: winio.c:991 msgid "All" msgstr "" -#: winio.c:983 +#: winio.c:993 msgid "No" msgstr "" -#: winio.c:1119 +#: winio.c:1129 #, c-format msgid "do_cursorpos: linepct = %f, bytepct = %f\n" msgstr "" -#: winio.c:1123 +#: winio.c:1133 msgid "line %d of %d (%.0f%%), character %d of %d (%.0f%%)" msgstr "" -#: winio.c:1247 +#: winio.c:1257 msgid "Dumping file buffer to stderr...\n" msgstr "" -#: winio.c:1249 +#: winio.c:1259 msgid "Dumping cutbuffer to stderr...\n" msgstr "" -#: winio.c:1251 +#: winio.c:1261 msgid "Dumping a buffer to stderr...\n" msgstr "" diff --git a/proto.h b/proto.h index a55bc9a0..a9f4955e 100644 --- a/proto.h +++ b/proto.h @@ -80,7 +80,7 @@ void blank_bottombars(void); void check_wrap(filestruct * inptr, char ch); void dump_buffer(filestruct * inptr); void align(char **strp); -void edit_refresh(void); +void edit_refresh(void), edit_refresh_clearok(void); void edit_update(filestruct * fileptr, int topmidbot); void update_cursor(void); void delete_node(filestruct * fileptr); diff --git a/search.c b/search.c index 9b2370ea..e5a3b05d 100644 --- a/search.c +++ b/search.c @@ -201,6 +201,8 @@ void search_abort(void) UNSET(KEEP_CUTBUFFER); display_main_list(); wrefresh(bottomwin); + if (ISSET(MARK_ISSET)) + edit_refresh_clearok(); #ifdef _POSIX_VERSION if (ISSET(REGEXP_COMPILED)) diff --git a/winio.c b/winio.c index 9a1226b3..1e450113 100644 --- a/winio.c +++ b/winio.c @@ -862,6 +862,16 @@ void edit_refresh(void) editbot = temp; } +/* + * Same as above, but touch the window first so everything is redrawn. + */ +void edit_refresh_clearok(void) +{ + clearok(edit, TRUE); + edit_refresh(); + clearok(edit, FALSE); +} + /* * Nice generic routine to update the edit buffer given a pointer to the * file struct =) @@ -1074,7 +1084,7 @@ int total_refresh(void) clearok(edit, FALSE); clearok(topwin, FALSE); clearok(bottomwin, FALSE); - + edit_refresh(); return 1; } -- 2.39.5