TX Wrap disable

Disable word wrap when file insert or drag-n-drop operation
  is performed.  Restore word wrap to former state after TX
  is finished or TX panel is cleared.
pull/2/head
David Freese 2010-06-04 18:43:12 -05:00
rodzic 9464c4b42b
commit e3f6f9b4b3
5 zmienionych plików z 44 dodań i 3 usunięć

Wyświetl plik

@ -832,6 +832,23 @@ void cb_wMain(Fl_Widget*, void*)
fl_digi_main->hide();
}
int squelch_val;
void rsid_squelch_timer(void*)
{
progStatus.sqlonoff = squelch_val;
if (progStatus.sqlonoff)
btnSQL->value(1);
}
void init_modem_squelch(trx_mode mode, int freq)
{
squelch_val = progStatus.sqlonoff;
progStatus.sqlonoff = 0;
btnSQL->value(0);
Fl::add_timeout(progdefaults.rsid_squelch, rsid_squelch_timer);
init_modem(mode, freq);
}
void init_modem(trx_mode mode, int freq)
{
ENSURE_THREAD(FLMAIN_TID);

Wyświetl plik

@ -55,7 +55,7 @@ public:
virtual int handle(int event);
virtual void handle_context_menu(void) { }
virtual void clear(void) { tbuf->text(""); sbuf->text(""); }
virtual void clear(void);//{ tbuf->text(""); sbuf->text(""); }
void set_word_wrap(bool b);
bool get_word_wrap(void) { return wrap; }
@ -101,6 +101,8 @@ protected:
int wrap_col;
int max_lines;
bool scroll_hint;
bool restore_wrap;
// bool wrap_restore;
private:
int oldw, oldh, olds;

Wyświetl plik

@ -213,6 +213,7 @@ extern bool QuerySqlOnOff();
extern void init_modem(trx_mode mode, int freq = 0);
extern void init_modem_sync(trx_mode mode, int freq = 0);
extern void init_modem_squelch(trx_mode mode, int freq = 0);
extern void start_tx();
extern void abort_tx();

Wyświetl plik

@ -536,6 +536,7 @@ void FTextRX::menu_cb(size_t item)
case RX_MENU_WRAP:
set_word_wrap(!wrap);
restore_wrap = wrap;
break;
case RX_MENU_SCROLL_HINTS:
@ -748,6 +749,7 @@ void FTextTX::clear_sent(void)
txpos = 0;
bkspaces = 0;
PauseBreak = false;
set_word_wrap(restore_wrap);
}
/// Returns boolean <eot> end of text
@ -962,8 +964,9 @@ int FTextTX::handle_key_macro(int key)
int FTextTX::handle_dnd_drag(int pos)
{
if (pos >= txpos)
if (pos >= txpos) {
return FTextEdit::handle_dnd_drag(pos);
}
else // refuse drop inside transmitted text
return 0;
}
@ -1050,11 +1053,15 @@ void FTextTX::menu_cb(size_t item)
case TX_MENU_PASTE:
kf_paste(0, this);
break;
case TX_MENU_READ:
case TX_MENU_READ: {
restore_wrap = wrap;
set_word_wrap(false);
readFile();
break;
}
case TX_MENU_WRAP:
set_word_wrap(!wrap);
restore_wrap = wrap;
break;
}
}

Wyświetl plik

@ -75,6 +75,8 @@ FTextBase::FTextBase(int x, int y, int w, int h, const char *l)
cursor_style(Fl_Text_Editor_mod::NORMAL_CURSOR);
wrap_mode(wrap, wrap_col);
restore_wrap = wrap;
// wrap_restore = true;
// Do we want narrower scrollbars? The default width is 16.
// scrollbar_width((int)floor(scrollbar_width() * 3.0/4.0));
@ -82,6 +84,13 @@ FTextBase::FTextBase(int x, int y, int w, int h, const char *l)
reset_styles(SET_FONT | SET_SIZE | SET_COLOR);
}
void FTextBase::clear()
{
tbuf->text("");
sbuf->text("");
set_word_wrap(restore_wrap);
}
int FTextBase::handle(int event)
{
if (event == FL_MOUSEWHEEL && !Fl::event_inside(this))
@ -558,6 +567,7 @@ void FTextView::menu_cb(size_t item)
break;
case VIEW_MENU_WRAP:
set_word_wrap(!wrap);
restore_wrap = wrap;
break;
}
}
@ -754,6 +764,9 @@ int FTextEdit::handle_dnd_drag(int pos)
/// @return 1 or FTextBase::handle(FL_PASTE)
int FTextEdit::handle_dnd_drop(void)
{
restore_wrap = wrap;
set_word_wrap(false);
if (Fl::event_shift())
return FTextBase::handle(FL_PASTE);
@ -831,6 +844,7 @@ void FTextEdit::menu_cb(size_t item)
break;
case EDIT_MENU_WRAP:
set_word_wrap(!wrap);
restore_wrap = wrap;
break;
}
}