diff -urN fldigi-3.21.33-OLD/src/wefax/wefax-pic.cxx fldigi-3.21.33-NEW/src/wefax/wefax-pic.cxx --- fldigi-3.21.33-OLD/src/wefax/wefax-pic.cxx 2011-12-10 12:18:48.000000000 -0800 +++ fldigi-3.21.33-NEW/src/wefax/wefax-pic.cxx 2011-12-26 19:01:46.000000000 -0800 @@ -313,7 +313,7 @@ y_pos += 20 ; } /// NOTE: Might be better to redraw here and not in resize_height. - wefax_pic_rx_scroll->position( wefax_pic_rx_scroll->xposition(), y_pos ); + wefax_pic_rx_scroll->scroll_to( wefax_pic_rx_scroll->xposition(), y_pos ); FL_UNLOCK_D(); } wefax_pic_rx_picture->pixel(data, pix_pos); @@ -804,7 +804,7 @@ wefax_round_rx_auto_center->hide(); /// Back to the first line before reading next image. - wefax_pic_rx_scroll->position( 0, 0 ); + wefax_pic_rx_scroll->scroll_to( 0, 0 ); FL_UNLOCK_D(); } diff -urN fldigi-3.21.33-OLD/src/widgets/Fl_Text_Buffer_mod_1_3.cxx fldigi-3.21.33-NEW/src/widgets/Fl_Text_Buffer_mod_1_3.cxx --- fldigi-3.21.33-OLD/src/widgets/Fl_Text_Buffer_mod_1_3.cxx 2011-12-10 12:18:48.000000000 -0800 +++ fldigi-3.21.33-NEW/src/widgets/Fl_Text_Buffer_mod_1_3.cxx 2011-12-26 20:19:17.000000000 -0800 @@ -482,6 +482,8 @@ *charsDeleted = nDeleted; } + +#if 0 void Fl_Text_Buffer_mod::overlay_rectangular(int startPos, int rectStart, int rectEnd, const char *text, int *charsInserted, @@ -507,7 +509,9 @@ if (charsDeleted != NULL) *charsDeleted = nDeleted; } +#endif +#if 0 void Fl_Text_Buffer_mod::replace_rectangular(int start, int end, int rectStart, int rectEnd, const char *text) { @@ -564,7 +568,9 @@ if (nInsertedLines < nDeletedLines) free((void *) insText); } +#endif +#if 0 void Fl_Text_Buffer_mod::remove_rectangular(int start, int end, int rectStart, int rectEnd) { @@ -579,7 +585,9 @@ call_modify_callbacks(start, end - start, nInserted, 0, deletedText); free((void *) deletedText); } +#endif +#if 0 void Fl_Text_Buffer_mod::clear_rectangular(int start, int end, int rectStart, int rectEnd) { @@ -593,6 +601,7 @@ NULL, NULL); free((void *) newlineString); } +#endif char *Fl_Text_Buffer_mod::text_in_rectangle(int start, int end, int rectStart, @@ -659,6 +668,7 @@ redisplay_selection(&oldSelection, &mPrimary); } +#if 0 void Fl_Text_Buffer_mod::select_rectangular(int start, int end, int rectStart, int rectEnd) { @@ -667,18 +677,21 @@ mPrimary.set_rectangular(start, end, rectStart, rectEnd); redisplay_selection(&oldSelection, &mPrimary); } +#endif int Fl_Text_Buffer_mod::selection_position(int *start, int *end) { return mPrimary.position(start, end); } +#if 0 int Fl_Text_Buffer_mod::selection_position(int *start, int *end, int *isRect, int *rectStart, int *rectEnd) { return mPrimary.position(start, end, isRect, rectStart, rectEnd); } +#endif char *Fl_Text_Buffer_mod::selection_text() { @@ -711,6 +724,7 @@ redisplay_selection(&oldSelection, &mSecondary); } +#if 0 void Fl_Text_Buffer_mod::secondary_select_rectangular(int start, int end, int rectStart, int rectEnd) @@ -720,12 +734,14 @@ mSecondary.set_rectangular(start, end, rectStart, rectEnd); redisplay_selection(&oldSelection, &mSecondary); } +#endif int Fl_Text_Buffer_mod::secondary_selection_position(int *start, int *end) { return mSecondary.position(start, end); } +#if 0 int Fl_Text_Buffer_mod::secondary_selection_position(int *start, int *end, int *isRect, int *rectStart, @@ -733,6 +749,7 @@ { return mSecondary.position(start, end, isRect, rectStart, rectEnd); } +#endif char *Fl_Text_Buffer_mod::secondary_selection_text() { @@ -765,6 +782,7 @@ redisplay_selection(&oldSelection, &mHighlight); } +#if 0 void Fl_Text_Buffer_mod::highlight_rectangular(int start, int end, int rectStart, int rectEnd) { @@ -773,18 +791,21 @@ mHighlight.set_rectangular(start, end, rectStart, rectEnd); redisplay_selection(&oldSelection, &mHighlight); } +#endif int Fl_Text_Buffer_mod::highlight_position(int *start, int *end) { return mHighlight.position(start, end); } +#if 0 int Fl_Text_Buffer_mod::highlight_position(int *start, int *end, int *isRect, int *rectStart, int *rectEnd) { return mHighlight.position(start, end, isRect, rectStart, rectEnd); } +#endif char *Fl_Text_Buffer_mod::highlight_text() { @@ -1403,6 +1424,7 @@ free((void *) outStr); } +#if 0 void Fl_Text_Buffer_mod::remove_rectangular_(int start, int end, int rectStart, int rectEnd, int *replaceLen, int *endPos) @@ -1449,7 +1471,9 @@ *endPos = start + (outPtr - outStr) - len + endOffset; free((void *) outStr); } +#endif +#if 0 void Fl_Text_Buffer_mod::overlay_rectangular_(int startPos, int rectStart, int rectEnd, const char *insText, int *nDeleted, int *nInserted, @@ -1511,6 +1535,7 @@ *endPos = start + (outPtr - outStr) - len + endOffset; free((void *) outStr); } +#endif /* Inserts characters from single-line string \p insLine in single-line string @@ -1765,12 +1790,11 @@ *outLen = (outPtr - outStr) + strlen(linePtr); } - char *Fl_Text_Buffer_mod::selection_text_(Fl_Text_Selection * sel) const { - int start, end, isRect, rectStart, rectEnd; + int start, end; /* If there's no selection, return an allocated empty string */ - if (!sel->position(&start, &end, &isRect, &rectStart, &rectEnd)) + if (!sel->position(&start, &end)) { char *s = (char *) malloc(1); *s = '\0'; @@ -1778,24 +1802,18 @@ } /* If the selection is not rectangular, return the selected range */ - if (isRect) - return text_in_rectangle(start, end, rectStart, rectEnd); - else - return text_range(start, end); + return text_range(start, end); } void Fl_Text_Buffer_mod::remove_selection_(Fl_Text_Selection * sel) { - int start, end, isRect, rectStart, rectEnd; + int start, end; - if (!sel->position(&start, &end, &isRect, &rectStart, &rectEnd)) + if (!sel->position(&start, &end)) return; - if (isRect) - remove_rectangular(start, end, rectStart, rectEnd); - else { - remove(start, end); - //undoyankcut = undocut; - } + + remove(start, end); + //undoyankcut = undocut; } @@ -1805,14 +1823,11 @@ Fl_Text_Selection oldSelection = *sel; /* If there's no selection, return */ - int start, end, isRect, rectStart, rectEnd; - if (!sel->position(&start, &end, &isRect, &rectStart, &rectEnd)) + int start, end; + if (!sel->position(&start, &end)) return; /* Do the appropriate type of replace */ - if (isRect) - replace_rectangular(start, end, rectStart, rectEnd, text); - else replace(start, end, text); /* Unselect (happens automatically in BufReplace, but BufReplaceRect diff -urN fldigi-3.21.33-OLD/src/widgets/Fl_Text_Display_mod_1_3.cxx fldigi-3.21.33-NEW/src/widgets/Fl_Text_Display_mod_1_3.cxx --- fldigi-3.21.33-OLD/src/widgets/Fl_Text_Display_mod_1_3.cxx 2011-12-10 12:18:48.000000000 -0800 +++ fldigi-3.21.33-NEW/src/widgets/Fl_Text_Display_mod_1_3.cxx 2011-12-26 20:28:53.000000000 -0800 @@ -786,6 +786,7 @@ /** Return 1 if position (X, Y) is inside of the primary Fl_Text_Selection */ +#if 0 int Fl_Text_Display_mod::in_selection( int X, int Y ) const { int row, column, pos = xy_to_position( X, Y, CHARACTER_POS ); Fl_Text_Buffer_mod *buf = mBuffer; @@ -805,6 +806,7 @@ column = wrapped_column(row, column); return buf->primary_selection()->includes(pos, buf->line_start( pos ), column); } +#endif /** Correct a column number based on an unconstrained position (as returned by @@ -1847,12 +1849,14 @@ style = (unsigned char) styleBuf->character( pos); } } +#if 0 if (buf->primary_selection()->includes(pos, lineStartPos, dispIndex)) style |= PRIMARY_MASK; if (buf->highlight_selection()->includes(pos, lineStartPos, dispIndex)) style |= HIGHLIGHT_MASK; if (buf->secondary_selection()->includes(pos, lineStartPos, dispIndex)) style |= SECONDARY_MASK; +#endif return style; } diff -urN fldigi-3.21.33-OLD/src/widgets/Panel.cxx fldigi-3.21.33-NEW/src/widgets/Panel.cxx --- fldigi-3.21.33-OLD/src/widgets/Panel.cxx 2011-12-10 12:18:48.000000000 -0800 +++ fldigi-3.21.33-NEW/src/widgets/Panel.cxx 2011-12-26 18:48:34.000000000 -0800 @@ -9,7 +9,7 @@ // Fldigi is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or -// (at your option) aRY later version. +// (at your option) any later version. // // Fldigi is distributed in the hope that it will be useful, // but WITHOUT ARY WARRANTY; without even the implied warranty of @@ -37,7 +37,7 @@ int Panel::orgx() { int oldx = w(); - short* p = sizes()+8; + int* p = sizes()+8; for (int i=children(); i--; p += 4) if (p[1] < oldx) oldx = p[1]; return oldx; @@ -46,7 +46,7 @@ int Panel::orgy() { int oldy = h(); - short* p = sizes()+8; + int* p = sizes()+8; for (int i=children(); i--; p += 4) if (p[3] < oldy) oldy = p[3]; return oldy; @@ -55,7 +55,7 @@ void Panel::position(int oix, int oiy, int newx, int newy) { //printf("oix %3d, oiy %3d, nux %3d, nuy %3d\n", oix, oiy, newx, newy); Fl_Widget* const* a = array(); - short* p = sizes(); + int* p = sizes(); //printf("p0 %3d, p1 %3d, p2 %3d, p3 %3d\n", p[0], p[1], p[2], p[3]); //printf("p4 %3d, p5 %3d, p6 %3d, p7 %3d\n", p[0], p[1], p[2], p[3]); p += 8; // skip group & resizable's saved size @@ -90,7 +90,7 @@ // move the lower-right corner (sort of): void Panel::resize(int X,int Y,int W,int H) { // remember how much to move the child widgets: - short* p = sizes(); + int* p = sizes(); int OX = x(); int OY = y(); int OW = w(); @@ -191,8 +191,8 @@ int oldx = 0; int oldy = 0; Fl_Widget*const* a = array(); - short* q = sizes(); - short* p = q+8; + int* q = sizes(); + int* p = q+8; for (int i=children(); i--; p += 4) { Fl_Widget* o = *a++; if (o == resizable()) continue;