X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyxfr1.C;h=c85a579eda9b472d8a8cfb1a8712e62c0905d691;hb=e8022b10a11e41d56897e3b066aa5180025165cc;hp=233ac3cfbb44faf2b988da32438ed47f32417236;hpb=dfe1bc44b44903faf77ef454c98c4c3e56c1d5e3;p=lyx.git diff --git a/src/lyxfr1.C b/src/lyxfr1.C index 233ac3cfbb..c85a579eda 100644 --- a/src/lyxfr1.C +++ b/src/lyxfr1.C @@ -1,12 +1,12 @@ /* This file is part of - * ====================================================== + * ====================================================== * * LyX, The Document Processor * * Copyright 1995 Matthias Ettrich, * Copyright 1995-1999 The LyX Team. * - * ======================================================*/ + * ====================================================== */ #include @@ -33,6 +33,7 @@ #include "lyx_gui_misc.h" #include "minibuffer.h" #include "support/lstrings.h" +#include "support/textutils.h" extern BufferView *current_view; // called too many times in this file... extern MiniBuffer *minibuffer; @@ -42,8 +43,6 @@ const int LYXSEARCH_MAXLEN = 128; // function prototypes -bool IsLetterCharOrDigit(char ch); - // If nothing selected, select the word at the cursor. // Returns the current selection // Note: this function should be in LyXText! @@ -59,10 +58,6 @@ void SetSelectionOverLenChars(LyXText *lt, int len); //------------------------------------------------------------- -bool IsLetterCharOrDigit(char ch) -{ - return IsLetterChar(ch) || isdigit(ch); -} // Returns the current selection. If nothing is selected or if the selection @@ -75,17 +70,10 @@ string const GetCurrentSelectionAsString(LyXText * lt) LyXParagraph * par = lt->cursor.par; if (lt->selection && (lt->sel_cursor.par == par)) { // (selected) and (begin/end in same paragraph) -#ifdef NEW_TEXT - LyXParagraph::size_type pos = - lt->sel_start_cursor.pos; - LyXParagraph::size_type endpos = - lt->sel_end_cursor.pos; -#else - int pos = + LyXParagraph::size_type pos = lt->sel_start_cursor.pos; - int endpos = + LyXParagraph::size_type endpos = lt->sel_end_cursor.pos; -#endif int i = 0; bool fPrevIsSpace = false; char ch; @@ -94,7 +82,7 @@ string const GetCurrentSelectionAsString(LyXText * lt) ch = par->GetChar(pos); //HB??: Maybe (ch <= ' ') - if ((ch == ' ') || (ch <= LYX_META_INSET)) { + if ((ch == ' ') || (ch <= LyXParagraph::META_INSET)) { // consecutive spaces --> 1 space char if (fPrevIsSpace) { pos++; // Next text pos @@ -130,7 +118,7 @@ void SetSelectionOverLenChars(LyXText *lt, int len) { lt->sel_cursor = lt->cursor; int i; - for (i=0; i < len; i++) + for (i= 0; i < len; i++) lt->CursorRight(); lt->SetSelection(); } @@ -141,10 +129,10 @@ void SetSelectionOverLenChars(LyXText *lt, int len) void LyXFindReplace1::StartSearch() { LyXFindReplace0::StartSearch(); - SetReplaceEnabled(!current_view->currentBuffer()->isReadonly()); + SetReplaceEnabled(!current_view->buffer()->isReadonly()); searchForward = true; if (lsSearch.empty()) - SetSearchString(GetSelectionOrWordAtCursor(current_view->currentBuffer()->text)); + SetSearchString(GetSelectionOrWordAtCursor(current_view->buffer()->text)); } @@ -155,7 +143,7 @@ void LyXFindReplace1::SearchReplaceCB() if (!current_view->getScreen()) return; - if (current_view->currentBuffer()->isReadonly()) + if (current_view->buffer()->isReadonly()) return; // CutSelection cannot cut a single space, so we have to stop @@ -171,17 +159,17 @@ void LyXFindReplace1::SearchReplaceCB() string const replacestring = ReplaceString(); current_view->getScreen()->HideCursor(); - current_view->currentBuffer()->update(-2); + current_view->buffer()->update(-2); - ltCur = current_view->currentBuffer()->text; + ltCur = current_view->buffer()->text; if (ltCur->selection) { // clear the selection (if there is any) current_view->getScreen()->ToggleSelection(false); - current_view->currentBuffer()->text-> + current_view->buffer()->text-> ReplaceSelectionWithString(replacestring.c_str()); - current_view->currentBuffer()->text-> + current_view->buffer()->text-> SetSelectionOverString(replacestring.c_str()); - current_view->currentBuffer()->update(1); + current_view->buffer()->update(1); } // jump to next match: @@ -196,7 +184,7 @@ void LyXFindReplace1::SearchReplaceAllCB() if (!current_view->getScreen()) return; - if (current_view->currentBuffer()->isReadonly()) + if (current_view->buffer()->isReadonly()) return; // CutSelection cannot cut a single space, so we have to stop @@ -214,20 +202,20 @@ void LyXFindReplace1::SearchReplaceAllCB() current_view->getScreen()->HideCursor(); // start at top - current_view->currentBuffer()->text->ClearSelection(); - current_view->currentBuffer()->text->CursorTop(); + current_view->buffer()->text->ClearSelection(); + current_view->buffer()->text->CursorTop(); int replace_count = 0; do { - ltCur = current_view->currentBuffer()->text; + ltCur = current_view->buffer()->text; if (ltCur->selection) { - current_view->currentBuffer()->update(-2); + current_view->buffer()->update(-2); current_view->getScreen()->ToggleSelection(false); - current_view->currentBuffer()->text-> + current_view->buffer()->text-> ReplaceSelectionWithString(replacestring.c_str()); - current_view->currentBuffer()->text-> + current_view->buffer()->text-> SetSelectionOverString(replacestring.c_str()); - current_view->currentBuffer()->update(1); + current_view->buffer()->update(1); replace_count++; } } while( SearchCB(true) ); @@ -259,8 +247,8 @@ bool LyXFindReplace1::SearchCB(bool fForward) return(false); current_view->getScreen()->HideCursor(); - current_view->currentBuffer()->update(-2); - ltCur = current_view->currentBuffer()->text; + current_view->buffer()->update(-2); + ltCur = current_view->buffer()->text; if (ltCur->selection) ltCur->cursor = fForward ? ltCur->sel_end_cursor : ltCur->sel_start_cursor; @@ -270,14 +258,14 @@ bool LyXFindReplace1::SearchCB(bool fForward) if (!ValidSearchData() || (fForward ? SearchForward(ltCur) : SearchBackward(ltCur))) { - current_view->currentBuffer()->update(-2); + current_view->buffer()->update(-2); // clear the selection (if there is any) current_view->getScreen()->ToggleSelection(); - current_view->currentBuffer()->text->ClearSelection(); + current_view->buffer()->text->ClearSelection(); // set the new selection - SetSelectionOverLenChars(current_view->currentBuffer()->text, iLenSelected); + SetSelectionOverLenChars(current_view->buffer()->text, iLenSelected); current_view->getScreen()->ToggleSelection(false); minibuffer->Set(_("Found.")); result = true; @@ -300,13 +288,9 @@ bool LyXFindReplace1::SearchCB(bool fForward) bool LyXFindReplace1::SearchForward(LyXText * lt) { LyXParagraph * par = lt->cursor.par; -#ifdef NEW_TEXT LyXParagraph::size_type pos = lt->cursor.pos; -#else - int pos = lt->cursor.pos; -#endif - while (par && !IsSearchStringInText(par,pos)) { + while (par && !IsSearchStringInText(par, pos)) { if (posLast()-1) pos++; else { @@ -315,7 +299,7 @@ bool LyXFindReplace1::SearchForward(LyXText * lt) } } if (par) { - lt->SetCursor(par,pos); + lt->SetCursor(par, pos); return true; } else return false; @@ -341,10 +325,10 @@ bool LyXFindReplace1::SearchBackward(LyXText *lt) pos = par->Last()-1; } while (par && pos<0); } - } while (par && !IsSearchStringInText(par,pos)); + } while (par && !IsSearchStringInText(par, pos)); if (par) { - lt->SetCursor(par,pos); + lt->SetCursor(par, pos); return true; } else return false; @@ -367,13 +351,8 @@ int LyXFindReplace1::CompareChars(char chSearch, char chText) // returns true if the search string is at the specified position // (Copied from the original "LyXText::IsStringInText" in text2.C ) -#ifdef NEW_TEXT bool LyXFindReplace1::IsSearchStringInText(LyXParagraph * par, LyXParagraph::size_type pos) -#else -bool LyXFindReplace1::IsSearchStringInText(LyXParagraph * par, - int pos) -#endif { char chSrch = 0; char chText;