Added new macro tag which shadows the function of the T/R
    button.  T/R button requires a mouse click.  Macro key T/R
    can be accessed from the keyboard.  Note:  The Pause / Esc
    key combination also serves this purpose.  This was added
    to accommodate users migrating from Digipan a very popular
    MS application.

    Modified the default macro definitions to make F9 the T/R
    function key button.
pull/2/head
David Freese 2010-03-12 16:27:45 -06:00
rodzic 48552e1c75
commit 6639fef3db
3 zmienionych plików z 47 dodań i 15 usunięć

Wyświetl plik

@ -111,6 +111,7 @@ void loadBrowser(Fl_Widget *widget) {
w->add(LINE_SEP);
w->add(_("<RX>\treceive"));
w->add(_("<TX>\ttransmit"));
w->add(_("<TX/RX>\ttoggle T/R"));
w->add(_("<SRCHUP>\tsearch UP for signal"));
w->add(_("<SRCHDN>\tsearch DOWN for signal"));
w->add(_("<GOHOME>\treturn to sweet spot"));

Wyświetl plik

@ -42,6 +42,7 @@
#include "trx.h"
#include "modem.h"
#include "qrunner.h"
#include "waterfall.h"
#include <FL/Fl.H>
#include <FL/filename.H>
@ -59,6 +60,7 @@ using namespace std;
MACROTEXT macros;
CONTESTCNTR contest_count;
static bool TransmitON = false;
static bool ToggleTXRX = false;
int mNbr;
struct MTAGS { const char *mTAG; void (*fp)(string &, size_t &);};
@ -85,6 +87,7 @@ void pTEXT(string &, size_t &);
void pCWID(string &, size_t &);
void pRX(string &, size_t &);
void pTX(string &, size_t &);
void pTXRX(string &, size_t &);
void pVER(string &, size_t &);
void pCNTR(string &, size_t &);
void pDECR(string &, size_t &);
@ -144,6 +147,7 @@ MTAGS mtags[] = {
{"<CWID>", pCWID},
{"<RX>", pRX},
{"<TX>", pTX},
{"<TX/RX>", pTXRX},
{"<VER>", pVER},
{"<CNTR>", pCNTR},
{"<DECR>", pDECR},
@ -501,6 +505,13 @@ void pTX(string &s, size_t &i)
TransmitON = true;
}
void pTXRX(string &s, size_t &i)
{
s.erase(i, 6);
ToggleTXRX = true;
}
void pVER(string &s, size_t &i)
{
string progname;
@ -1010,6 +1021,7 @@ string MACROTEXT::expandMacro(int n)
size_t idx = 0;
expand = true;
TransmitON = false;
ToggleTXRX = false;
mNbr = n;
expanded = text[n];
MTAGS *pMtags;
@ -1115,9 +1127,23 @@ void finishWait(void *)
text2send.clear();
}
static void set_button(Fl_Button* button, bool value)
{
button->value(value);
button->do_callback();
}
void MACROTEXT::execute(int n)
{
text2send = expandMacro(n);
if (ToggleTXRX) {
text2send.clear();
if (!wf->xmtrcv->value())
REQ(set_button, wf->xmtrcv, true);
else
REQ(set_button, wf->xmtrcv, false);
return;
}
if (useWait && waitTime > 0) {
Fl::add_timeout(waitTime, finishWait);
useWait = false;

Wyświetl plik

@ -70,14 +70,14 @@ tnx fer QSO <NAME>, 73, God bless.\n\
<ZDT> <CALL> de <MYCALL> sk\n\
<RX>";
label[5] = "Me";
text[5] = " my name is <MYNAME> <MYNAME> ";
label[5] = "Me/Qth";
text[5] = "\n\
my name ... <MYNAME> <MYNAME>\n\
my QTH .... <MYQTH>\n\
my LOC .... <MYLOC>\n";
label[6] = "QTH";
text[6] = " my QTH is <MYQTH>, loc: <MYLOC> ";
label[7] = "Brag";
text[7] = "\n\
label[6] = "Brag";
text[6] = "\n\
<< <MYCALL>, <MYNAME> >>\n\
Age: \n\
Rig: \n\
@ -88,17 +88,22 @@ Soft: <VER>\n\
Web: \n\
Email: ";
label[8] = "Tx @>>";
text[8] = "<TX>";
label[7] = "";
text[7] = "";
label[9] = "Rx @||";
text[9] = "<RX>";
label[8] = "T/R";
text[8] = "<TX/RX>";
label[10] = "";
text[10] = "";
label[9] = "Tx @>>";
text[9] = "<TX>";
label[11] = "";
text[11] = "";
label[10] = "Rx @||";
text[10] = "<RX>";
label[11] = "TX @>|";
text[11] = "<TX>\n\
de <MYCALL> k\n\
<RX>";
label[12] = "C Ans @>|";
text[12] = "<TX>de <MYCALL> <MYCALL><RX>";