mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-11-04 05:50:31 -05:00 
			
		
		
		
	1. Only the left 'band activity' display has DXCC and worked B4 status
2. Moved some of the text handling code from MainWindow to Displaytext git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3550 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
		
							parent
							
								
									4e17c5ffaa
								
							
						
					
					
						commit
						4bade4865d
					
				@ -32,3 +32,92 @@ void DisplayText::resizeEvent(QResizeEvent * event)
 | 
				
			|||||||
        _maxDisplayedCharacters = width()/_fontWidth;
 | 
					        _maxDisplayedCharacters = width()/_fontWidth;
 | 
				
			||||||
    QTextBrowser::resizeEvent(event);
 | 
					    QTextBrowser::resizeEvent(event);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void DisplayText::insertLineSpacer()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    QTextCursor cursor;
 | 
				
			||||||
 | 
					    QTextBlockFormat bf;
 | 
				
			||||||
 | 
					    QString bg="#d3d3d3";
 | 
				
			||||||
 | 
					    bf.setBackground(QBrush(QColor(bg)));
 | 
				
			||||||
 | 
					    QString tt="----------------------------------------";
 | 
				
			||||||
 | 
					    QString s = "<table border=0 cellspacing=0 width=100%><tr><td bgcolor=\"" +
 | 
				
			||||||
 | 
					            bg + "\"><pre>" + tt + "</pre></td></tr></table>";
 | 
				
			||||||
 | 
					    cursor = this->textCursor();
 | 
				
			||||||
 | 
					    cursor.movePosition(QTextCursor::End);
 | 
				
			||||||
 | 
					    bf = cursor.blockFormat();
 | 
				
			||||||
 | 
					    bf.setBackground(QBrush(QColor(bg)));
 | 
				
			||||||
 | 
					    cursor.insertHtml(s);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void DisplayText::_appendDXCCWorkedB4(/*mod*/QString& t1, QString& bg, /*uses*/LogBook logBook)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    // extract the CQer's call   TODO: does this work with all call formats?  What about 'CQ DX'?
 | 
				
			||||||
 | 
					    int s1 = 4 + t1.indexOf(" CQ ");
 | 
				
			||||||
 | 
					    int s2 = t1.indexOf(" ",s1);
 | 
				
			||||||
 | 
					    QString call = t1.mid(s1,s2-s1);
 | 
				
			||||||
 | 
					    QString countryName;
 | 
				
			||||||
 | 
					    bool callWorkedBefore;
 | 
				
			||||||
 | 
					    bool countryWorkedBefore;
 | 
				
			||||||
 | 
					    logBook.match(/*in*/call,/*out*/countryName,callWorkedBefore,countryWorkedBefore);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    int charsAvail = _maxDisplayedCharacters;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // the decoder (seems) to always generate 40 chars. For a normal CQ call, the last five are spaces
 | 
				
			||||||
 | 
					    t1 = t1.left(36);  // reduce trailing white space  TODO this magic 36 is also referenced in MainWindow::doubleClickOnCall()
 | 
				
			||||||
 | 
					    charsAvail -= 36;
 | 
				
			||||||
 | 
					    if (charsAvail > 4)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        if (!countryWorkedBefore) // therefore not worked call either
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            t1 += "!";
 | 
				
			||||||
 | 
					            bg = "#66ff66"; // strong green
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					            if (!callWorkedBefore) // but have worked the country
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                t1 += "~";
 | 
				
			||||||
 | 
					                bg = "#76cd76"; // mid green
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            else
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                t1 += " ";  // have worked this call before
 | 
				
			||||||
 | 
					                bg="#9cc79c"; // pale green
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        charsAvail -= 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (countryName.length()>charsAvail)
 | 
				
			||||||
 | 
					            countryName = countryName.left(1)+"."+countryName.right(charsAvail-2);  //abreviate the first word to the first letter, show remaining right most chars
 | 
				
			||||||
 | 
					        t1 += countryName;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void DisplayText::displayDecodedText(QString decodedText, QString myCall, bool displayDXCCEntity, LogBook logBook)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    QString bg="white";
 | 
				
			||||||
 | 
					    bool CQcall = false;
 | 
				
			||||||
 | 
					    if (decodedText.indexOf(" CQ ") > 0)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        CQcall = true;
 | 
				
			||||||
 | 
					        bg="#66ff66";  //green
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    if (myCall != "" and decodedText.indexOf(" " + myCall + " ") > 0)
 | 
				
			||||||
 | 
					        bg="#ff6666"; //red
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // if enabled add the DXCC entity and B4 status to the end of the preformated text line t1
 | 
				
			||||||
 | 
					    if (displayDXCCEntity && CQcall)
 | 
				
			||||||
 | 
					        _appendDXCCWorkedB4(/*mod*/decodedText,bg,logBook);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    QString s = "<table border=0 cellspacing=0 width=100%><tr><td bgcolor=\"" +
 | 
				
			||||||
 | 
					            bg + "\"><pre>" + decodedText + "</pre></td></tr></table>";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    QTextCursor cursor = textCursor();
 | 
				
			||||||
 | 
					    cursor.movePosition(QTextCursor::End);
 | 
				
			||||||
 | 
					    QTextBlockFormat bf = cursor.blockFormat();
 | 
				
			||||||
 | 
					    bf.setBackground(QBrush(QColor(bg)));
 | 
				
			||||||
 | 
					    cursor.insertHtml(s);
 | 
				
			||||||
 | 
					    this->setTextCursor(cursor);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -2,30 +2,33 @@
 | 
				
			|||||||
#define DISPLAYTEXT_H
 | 
					#define DISPLAYTEXT_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <QTextBrowser>
 | 
					#include <QTextBrowser>
 | 
				
			||||||
 | 
					#include "logbook/logbook.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class DisplayText : public QTextBrowser
 | 
					class DisplayText : public QTextBrowser
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    Q_OBJECT
 | 
					    Q_OBJECT
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
  explicit DisplayText(QWidget *parent = 0);
 | 
					    explicit DisplayText(QWidget *parent = 0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  void setFont(QFont font);
 | 
					    void setFont(QFont font);
 | 
				
			||||||
  int getMaxDisplayedCharacters() { return _maxDisplayedCharacters; }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    void insertLineSpacer();
 | 
				
			||||||
 | 
					    void displayDecodedText(QString decodedText, QString myCall, bool displayDXCCEntity, LogBook logBook);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
signals:
 | 
					signals:
 | 
				
			||||||
  void selectCallsign(bool shift, bool ctrl);
 | 
					    void selectCallsign(bool shift, bool ctrl);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public slots:
 | 
					public slots:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
protected:
 | 
					protected:
 | 
				
			||||||
  void mouseDoubleClickEvent(QMouseEvent *e);
 | 
					    void mouseDoubleClickEvent(QMouseEvent *e);
 | 
				
			||||||
  void resizeEvent(QResizeEvent * event);
 | 
					    void resizeEvent(QResizeEvent * event);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
private:
 | 
					private:
 | 
				
			||||||
  int _fontWidth;
 | 
					    int _fontWidth;
 | 
				
			||||||
  int _maxDisplayedCharacters;
 | 
					    int _maxDisplayedCharacters;
 | 
				
			||||||
 | 
					    void _appendDXCCWorkedB4(/*mod*/QString& t1, QString &bg, LogBook logBook);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -117,16 +117,17 @@ void CountryDat::load()
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// return country name else ""
 | 
					// return country name else ""
 | 
				
			||||||
QString CountryDat::find(QString prefix)
 | 
					QString CountryDat::find(const QString prefix)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  	while(prefix.length() >= 1)
 | 
					    QString pf = prefix.toUpper();
 | 
				
			||||||
 | 
					    while(pf.length() >= 1)
 | 
				
			||||||
  	{
 | 
					  	{
 | 
				
			||||||
	  if (_data.contains(prefix))
 | 
					      if (_data.contains(pf))
 | 
				
			||||||
	  {
 | 
						  {
 | 
				
			||||||
	    QString country = _data.value(prefix);
 | 
					        QString country = _data.value(pf);
 | 
				
			||||||
	    return country;
 | 
						    return country;
 | 
				
			||||||
	   }
 | 
						   }
 | 
				
			||||||
	   prefix = prefix.left(prefix.length()-1);
 | 
					       pf = pf.left(pf.length()-1);
 | 
				
			||||||
	 }
 | 
						 }
 | 
				
			||||||
	 return "";
 | 
						 return "";
 | 
				
			||||||
}	   
 | 
					}	   
 | 
				
			||||||
 | 
				
			|||||||
@ -19,7 +19,7 @@ class CountryDat
 | 
				
			|||||||
	public:
 | 
						public:
 | 
				
			||||||
        void init(const QString filename);
 | 
					        void init(const QString filename);
 | 
				
			||||||
		void load();
 | 
							void load();
 | 
				
			||||||
        QString find(QString prefix); // return country name or ""
 | 
					        QString find(const QString prefix); // return country name or ""
 | 
				
			||||||
		QStringList  getCountryNames() { return _countryNames; };
 | 
							QStringList  getCountryNames() { return _countryNames; };
 | 
				
			||||||
   
 | 
					   
 | 
				
			||||||
	private:
 | 
						private:
 | 
				
			||||||
 | 
				
			|||||||
@ -23,6 +23,13 @@ void LogBook::init()
 | 
				
			|||||||
    int count = _worked.getWorkedCount();
 | 
					    int count = _worked.getWorkedCount();
 | 
				
			||||||
    qDebug() << QSOcount << "QSOs and" << count << "countries worked in file" << logFilename;
 | 
					    qDebug() << QSOcount << "QSOs and" << count << "countries worked in file" << logFilename;
 | 
				
			||||||
*/
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//    QString call = "ok1ct";
 | 
				
			||||||
 | 
					//    QString countryName;
 | 
				
			||||||
 | 
					//    bool callWorkedBefore,countryWorkedBefore;
 | 
				
			||||||
 | 
					//    match(/*in*/call, /*out*/ countryName,callWorkedBefore,countryWorkedBefore);
 | 
				
			||||||
 | 
					//    qDebug() << countryName;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										108
									
								
								mainwindow.cpp
									
									
									
									
									
								
							
							
						
						
									
										108
									
								
								mainwindow.cpp
									
									
									
									
									
								
							@ -1406,100 +1406,30 @@ void MainWindow::readFromStdout()                             //readFromStdout
 | 
				
			|||||||
      out << t.mid(0,n-2) << endl;
 | 
					      out << t.mid(0,n-2) << endl;
 | 
				
			||||||
      f.close();
 | 
					      f.close();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      QTextCursor cursor;
 | 
					
 | 
				
			||||||
      QTextBlockFormat bf;
 | 
					      if(m_insertBlank and m_blankLine and jt9com_.nagain==0)
 | 
				
			||||||
      if(m_insertBlank and m_blankLine and jt9com_.nagain==0) {
 | 
					      {
 | 
				
			||||||
        QString bg="#d3d3d3";
 | 
					          ui->decodedTextBrowser->insertLineSpacer();
 | 
				
			||||||
        bf.setBackground(QBrush(QColor(bg)));
 | 
					          m_blankLine=false;
 | 
				
			||||||
        QString tt="----------------------------------------";
 | 
					 | 
				
			||||||
        QString s = "<table border=0 cellspacing=0 width=100%><tr><td bgcolor=\"" +
 | 
					 | 
				
			||||||
            bg + "\"><pre>" + tt + "</pre></td></tr></table>";
 | 
					 | 
				
			||||||
        cursor = ui->decodedTextBrowser->textCursor();
 | 
					 | 
				
			||||||
        cursor.movePosition(QTextCursor::End);
 | 
					 | 
				
			||||||
        bf = cursor.blockFormat();
 | 
					 | 
				
			||||||
        bf.setBackground(QBrush(QColor(bg)));
 | 
					 | 
				
			||||||
        cursor.insertHtml(s);
 | 
					 | 
				
			||||||
        m_blankLine=false;
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      QString bg="white";
 | 
					 | 
				
			||||||
      if(t.indexOf(" CQ ")>0) bg="#66ff66";                          //green
 | 
					 | 
				
			||||||
      if(m_myCall!="" and t.indexOf(" "+m_myCall+" ")>0) bg="#ff6666"; //red
 | 
					 | 
				
			||||||
      bool bQSO=abs(t.mid(14,4).toInt() - m_wideGraph->rxFreq()) <= 10;
 | 
					 | 
				
			||||||
      QString t1=t.replace("\n","").mid(0,t.length()-4);
 | 
					      QString t1=t.replace("\n","").mid(0,t.length()-4);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      // if enabled add the DXCC entity and B4 status to the end of the preformated text line t1
 | 
					      // the left band display
 | 
				
			||||||
      int cqi = t.indexOf(" CQ ");
 | 
					      ui->decodedTextBrowser->displayDecodedText(t1,m_myCall,m_displayDXCCEntity,m_logBook);
 | 
				
			||||||
      if (m_displayDXCCEntity && (cqi >= 0))
 | 
					
 | 
				
			||||||
 | 
					      if (abs(t1.mid(14,4).toInt() - m_wideGraph->rxFreq()) <= 10) // this msg is within 10 hertz of our tuned frequency
 | 
				
			||||||
      {
 | 
					      {
 | 
				
			||||||
          // extract the CQer's call   TODO: does this work with all call formats?  What about 'CQ DX'?
 | 
					          // the right QSO window
 | 
				
			||||||
          int s1 = 4 + t.indexOf(" CQ ");
 | 
					          ui->decodedTextBrowser2->displayDecodedText(t1,m_myCall,false,m_logBook);
 | 
				
			||||||
          int s2 = t.indexOf(" ",s1);
 | 
					 | 
				
			||||||
          QString call = t.mid(s1,s2-s1);
 | 
					 | 
				
			||||||
          QString countryName;
 | 
					 | 
				
			||||||
          bool callWorkedBefore;
 | 
					 | 
				
			||||||
          bool countryWorkedBefore;
 | 
					 | 
				
			||||||
          m_logBook.match(/*in*/call,/*out*/countryName,callWorkedBefore,countryWorkedBefore);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
          int charsAvail = ui->decodedTextBrowser->getMaxDisplayedCharacters();
 | 
					          bool b65=t1.indexOf("#")==19;
 | 
				
			||||||
 | 
					          if(b65 and m_modeTx!="JT65") on_pbTxMode_clicked();
 | 
				
			||||||
          // the decoder (seems) to always generate 40 chars. For a normal CQ call, the last five are spaces
 | 
					          if(!b65 and m_modeTx=="JT65") on_pbTxMode_clicked();
 | 
				
			||||||
          t1 = t1.left(36);  // reduce trailing white space
 | 
					          m_QSOmsg=t1;
 | 
				
			||||||
          charsAvail -= 36;
 | 
					 | 
				
			||||||
          if (charsAvail > 4)
 | 
					 | 
				
			||||||
          {
 | 
					 | 
				
			||||||
              if (!countryWorkedBefore) // therefore not worked call either
 | 
					 | 
				
			||||||
              {
 | 
					 | 
				
			||||||
                  t1 += "!";
 | 
					 | 
				
			||||||
                  bg = "#66ff66"; // strong green
 | 
					 | 
				
			||||||
              }
 | 
					 | 
				
			||||||
              else
 | 
					 | 
				
			||||||
                  if (!callWorkedBefore) // but have worked the country
 | 
					 | 
				
			||||||
                  {
 | 
					 | 
				
			||||||
                      t1 += "~";
 | 
					 | 
				
			||||||
                      bg = "#76cd76"; // mid green
 | 
					 | 
				
			||||||
                  }
 | 
					 | 
				
			||||||
                  else
 | 
					 | 
				
			||||||
                  {
 | 
					 | 
				
			||||||
                      t1 += " ";  // have worked this call before
 | 
					 | 
				
			||||||
                      bg="#9cc79c"; // pale green
 | 
					 | 
				
			||||||
                  }
 | 
					 | 
				
			||||||
              charsAvail -= 1;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
              if (countryName.length()>charsAvail)
 | 
					 | 
				
			||||||
                  countryName = countryName.left(1)+"."+countryName.right(charsAvail-2);  //abreviate the first word to the first letter, show remaining right most chars
 | 
					 | 
				
			||||||
              t1 += countryName;
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      QString s = "<table border=0 cellspacing=0 width=100%><tr><td bgcolor=\"" +
 | 
					 | 
				
			||||||
                   bg + "\"><pre>" + t1 + "</pre></td></tr></table>";
 | 
					 | 
				
			||||||
      bool b65=t1.indexOf("#")==19;
 | 
					 | 
				
			||||||
      if(bQSO) {
 | 
					 | 
				
			||||||
        cursor = ui->decodedTextBrowser2->textCursor();
 | 
					 | 
				
			||||||
        cursor.movePosition(QTextCursor::End);
 | 
					 | 
				
			||||||
        bf = cursor.blockFormat();
 | 
					 | 
				
			||||||
        bf.setBackground(QBrush(QColor(bg)));
 | 
					 | 
				
			||||||
        cursor.insertHtml(s);
 | 
					 | 
				
			||||||
        ui->decodedTextBrowser2->setTextCursor(cursor);
 | 
					 | 
				
			||||||
        m_QSOmsg=t1;
 | 
					 | 
				
			||||||
        if(b65 and m_modeTx!="JT65") on_pbTxMode_clicked();
 | 
					 | 
				
			||||||
        if(!b65 and m_modeTx=="JT65") on_pbTxMode_clicked();
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      if(jt9com_.nagain==0) {
 | 
					 | 
				
			||||||
        if(m_myCall!="" and t.indexOf(" "+m_myCall+" ")>0) bg="#ff6666"; //red
 | 
					 | 
				
			||||||
        QString s = "<table border=0 cellspacing=0 width=100%><tr><td bgcolor=\"" +
 | 
					 | 
				
			||||||
                     bg + "\"><pre>" + t1 + "</pre></td></tr></table>";
 | 
					 | 
				
			||||||
        cursor = ui->decodedTextBrowser->textCursor();
 | 
					 | 
				
			||||||
        cursor.movePosition(QTextCursor::End);
 | 
					 | 
				
			||||||
        bf = cursor.blockFormat();
 | 
					 | 
				
			||||||
        bf.setBackground(QBrush(QColor(bg)));
 | 
					 | 
				
			||||||
        cursor.insertHtml(s);
 | 
					 | 
				
			||||||
        ui->decodedTextBrowser->setTextCursor(cursor);
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      // find and extract any report
 | 
				
			||||||
      QString msg=t.mid(21);
 | 
					      QString msg=t.mid(21);
 | 
				
			||||||
      int i1=msg.indexOf("\r");
 | 
					      int i1=msg.indexOf("\r");
 | 
				
			||||||
      if(i1>0) msg=msg.mid(0,i1-1) + "                      ";
 | 
					      if(i1>0) msg=msg.mid(0,i1-1) + "                      ";
 | 
				
			||||||
@ -1522,9 +1452,11 @@ void MainWindow::readFromStdout()                             //readFromStdout
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      // extract details and send to PSKreporter
 | 
				
			||||||
      int nsec=QDateTime::currentMSecsSinceEpoch()/1000-m_secBandChanged;
 | 
					      int nsec=QDateTime::currentMSecsSinceEpoch()/1000-m_secBandChanged;
 | 
				
			||||||
      bool okToPost=(nsec>50);
 | 
					      bool okToPost=(nsec>50);
 | 
				
			||||||
      QString msgmode="JT9";
 | 
					      QString msgmode="JT9";
 | 
				
			||||||
 | 
					      bool b65=t1.indexOf("#")==19;
 | 
				
			||||||
      if(b65) msgmode="JT65";
 | 
					      if(b65) msgmode="JT65";
 | 
				
			||||||
      i1=msg.indexOf(" ");
 | 
					      i1=msg.indexOf(" ");
 | 
				
			||||||
      QString c2=msg.mid(i1+1);
 | 
					      QString c2=msg.mid(i1+1);
 | 
				
			||||||
@ -2021,6 +1953,10 @@ void MainWindow::doubleClickOnCall(bool shift, bool ctrl)
 | 
				
			|||||||
  QString t1 = t.mid(0,i2);              //contents up to \n on selected line
 | 
					  QString t1 = t.mid(0,i2);              //contents up to \n on selected line
 | 
				
			||||||
  int i1=t1.lastIndexOf("\n") + 1;       //points to first char of line
 | 
					  int i1=t1.lastIndexOf("\n") + 1;       //points to first char of line
 | 
				
			||||||
  QString t2 = t1.mid(i1,i2-i1);         //selected line
 | 
					  QString t2 = t1.mid(i1,i2-i1);         //selected line
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if (t2.indexOf(" CQ ") > 0)
 | 
				
			||||||
 | 
					      t2 = t2.left(36);  // to remove DXCC entity and worked B4 status. TODO need a better way to do this
 | 
				
			||||||
 | 
					
 | 
				
			||||||
//  if(t2.indexOf("Tx")==6) return;        //Ignore Tx line
 | 
					//  if(t2.indexOf("Tx")==6) return;        //Ignore Tx line
 | 
				
			||||||
  int i4=t.mid(i1).length();
 | 
					  int i4=t.mid(i1).length();
 | 
				
			||||||
  if(i4>55) i4=55;
 | 
					  if(i4>55) i4=55;
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user