[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#750084: trustedqsl: Please update to use wxwidgets3.0



Package: trustedqsl
Version: 2.0.2-1
Severity: important
Tags: patch
User: freewx-maint@lists.alioth.debian.org
Usertags: wx3.0

Dear maintainer,

We're aiming to migrate the archive to using wxwidgets3.0 instead of
wxwidgets2.8, and intend to drop wxwidgets2.8 before jessie is released.

I've rebuilt your package using the attached patch.  I don't have the
necessary data files to exercise much of the GUI, but it launches OK
and I can open the about and preferences dialogs.

I'm happy to NMU this change if you wish me to - just let me know.

Cheers,
    Olly
diff -Nru trustedqsl-2.0.2/debian/changelog trustedqsl-2.0.2/debian/changelog
--- trustedqsl-2.0.2/debian/changelog	2014-04-17 04:56:18.000000000 +1200
+++ trustedqsl-2.0.2/debian/changelog	2014-06-01 21:57:52.000000000 +1200
@@ -1,3 +1,10 @@
+trustedqsl (2.0.2-1.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Update to use wxWidgets 3.0 (new patch 02-wx3.0-compat.patch).
+
+ -- Olly Betts <olly@survex.com>  Sun, 01 Jun 2014 21:57:40 +1200
+
 trustedqsl (2.0.2-1) unstable; urgency=medium
 
   * New upstream release
diff -Nru trustedqsl-2.0.2/debian/control trustedqsl-2.0.2/debian/control
--- trustedqsl-2.0.2/debian/control	2014-04-17 04:54:45.000000000 +1200
+++ trustedqsl-2.0.2/debian/control	2014-05-28 00:40:55.000000000 +1200
@@ -4,7 +4,7 @@
 Maintainer: Debian Hamradio Maintainers <debian-hams@lists.debian.org>
 Uploaders: Kamal Mostafa <kamal@whence.com>, Jaime Robles <jaime@debian.org>, Patrick Ouellette <pouelle@debian.org>, Hamish Moffatt <hamish@debian.org>, Jerry Stueve <k4int@arrl.net>
 Standards-Version: 3.9.5
-Build-Depends: debhelper (>= 9), cmake, libwxgtk2.8-dev, zlib1g-dev, libexpat1-dev, libssl-dev, libdb-dev, libcurl4-openssl-dev
+Build-Depends: debhelper (>= 9), cmake, libwxgtk3.0-dev, zlib1g-dev, libexpat1-dev, libssl-dev, libdb-dev, libcurl4-openssl-dev
 Homepage: http://sourceforge.net/projects/trustedqsl/
 Vcs-Git: git://git.code.sf.net/p/trustedqsl/tqsl
 Vcs-Browser: http://sourceforge.net/p/trustedqsl/tqsl/ci/master/tree/
diff -Nru trustedqsl-2.0.2/debian/patches/02-wx3.0-compat.patch trustedqsl-2.0.2/debian/patches/02-wx3.0-compat.patch
--- trustedqsl-2.0.2/debian/patches/02-wx3.0-compat.patch	1970-01-01 12:00:00.000000000 +1200
+++ trustedqsl-2.0.2/debian/patches/02-wx3.0-compat.patch	2014-06-01 21:57:23.000000000 +1200
@@ -0,0 +1,177 @@
+Description: Fix to build with wxwidgets3.0
+Author: Olly Betts <olly@survex.com>
+Last-Update: 2014-05-28
+
+--- a/apps/loadcertwiz.cpp
++++ b/apps/loadcertwiz.cpp
+@@ -228,7 +228,7 @@
+ 
+ 	wxString path = config->Read(wxT("CertFilePath"), wxT(""));
+ 	wxString filename = wxFileSelector(wxT("Select Certificate File"), path,
+-		wxT(""), ext, wild, wxOPEN|wxFILE_MUST_EXIST);
++		wxT(""), ext, wild, wxFD_OPEN|wxFD_FILE_MUST_EXIST);
+ 	if (filename == wxT("")) {
+ 		// Cancelled!
+ 		_first = 0;
+--- a/apps/tqsl.cpp
++++ b/apps/tqsl.cpp
+@@ -1297,7 +1297,7 @@
+ 	}
+ 	s_fname = wxFileSelector(wxT("Log File"), wxT(""), wxT("tqsldiag.log"), wxT("log"),
+ 			wxT("Log files (*.log)|*.log|All files (*.*)|*.*"),
+-			wxSAVE|wxOVERWRITE_PROMPT, this);
++			wxFD_SAVE|wxFD_OVERWRITE_PROMPT, this);
+ 	if (s_fname == wxT("")) {
+ 		file_menu->Check(tm_f_diag, false); //would be better to not check at all, but no, apparently that's a crazy thing to want
+ 		return;
+@@ -1413,7 +1413,7 @@
+ #else
+ 			wxT("ADIF files (*.adi;*.adif)|*.adi;*.adif|All files (*.*)|*.*"),
+ #endif
+-			wxSAVE|wxOVERWRITE_PROMPT, this);
++			wxFD_SAVE|wxFD_OVERWRITE_PROMPT, this);
+ 		if (s_fname == wxT(""))
+ 			return;
+ 		wxConfig::Get()->Write(wxT("QSODataPath"), wxPathOnly(s_fname));
+@@ -1495,7 +1495,7 @@
+ #else
+ 			wxT("ADIF files (*.adi;*.adif)|*.adi;*.adif|All files (*.*)|*.*"),
+ #endif
+-			wxOPEN|wxFILE_MUST_EXIST, this);
++			wxFD_OPEN|wxFD_FILE_MUST_EXIST, this);
+ 	if (file == wxT(""))
+ 		return;
+ 	init_modes();
+@@ -2075,7 +2075,7 @@
+ 	virtual wxThread::ExitCode Entry() {
+ 		int ret = curl_easy_perform(handle);
+ 		wxCommandEvent evt(wxEVT_LOGUPLOAD_DONE, wxID_ANY);
+-		dial->AddPendingEvent(evt);
++		dial->GetEventHandler()->AddPendingEvent(evt);
+ 		return (wxThread::ExitCode)((intptr_t)ret);
+ 	}
+ };
+@@ -3245,7 +3245,7 @@
+ 		if (defext.IsEmpty() || !defFound)
+ 			defext = wxString(wxT("adi"));
+ 		infile = wxFileSelector(wxT("Select file to Sign"), path, wxT(""), defext, filter,
+-			wxOPEN|wxFILE_MUST_EXIST, this);
++			wxFD_OPEN|wxFD_FILE_MUST_EXIST, this);
+ 		if (infile == wxT(""))
+ 			return;
+ 		wxString inPath;
+@@ -3264,7 +3264,7 @@
+ 		basename += wxT(".") + deftype;
+ 		wxString outfile = wxFileSelector(wxT("Select file to write to"),
+ 			path, basename, deftype, filter + wxT("|All files (*.*)|*.*"),
+-			wxSAVE|wxOVERWRITE_PROMPT, this);
++			wxFD_SAVE|wxFD_OVERWRITE_PROMPT, this);
+ 		if (outfile == wxT(""))
+ 			return;
+ 		config->Write(wxT("ExportPath"), wxPathOnly(outfile));
+@@ -3355,7 +3355,7 @@
+ 		if (defext.IsEmpty() || !defFound)
+ 			defext = wxString(wxT("adi"));
+ 		infile = wxFileSelector(wxT("Select file to Sign"), path, wxT(""), defext, filter,
+-			wxOPEN|wxFILE_MUST_EXIST, this);
++			wxFD_OPEN|wxFD_FILE_MUST_EXIST, this);
+ 		if (infile == wxT(""))
+ 			return;
+ 		wxString inPath;
+@@ -3668,7 +3668,7 @@
+ 		wxString file_default = wxT("tqslconfig.tbk");
+ 		wxString filename = wxFileSelector(wxT("Enter file to save to"), wxT(""),
+ 			file_default, wxT(".tbk"), wxT("Configuration files (*.tbk)|*.tbk|All files (*.*)|*.*"),
+-			wxSAVE|wxOVERWRITE_PROMPT, this);
++			wxFD_SAVE|wxFD_OVERWRITE_PROMPT, this);
+ 		if (filename == wxT(""))
+ 			return;
+ 
+@@ -3952,7 +3952,7 @@
+ 	tqslTrace("MyFrame::OnLoadConfig");
+ 	wxString filename = wxFileSelector(wxT("Select saved configuration file"), wxT(""),
+ 					   wxT("tqslconfig.tbk"), wxT("tbk"), wxT("Saved configuration files (*.tbk)|*.tbk"),
+-					   wxOPEN|wxFILE_MUST_EXIST);
++					   wxFD_OPEN|wxFD_FILE_MUST_EXIST);
+ 	if (filename == wxT(""))
+ 		return;
+ 
+@@ -4075,23 +4075,23 @@
+ 	wxCmdLineParser parser;
+ 
+ 	static const wxCmdLineEntryDesc cmdLineDesc[] = {
+-	        { wxCMD_LINE_OPTION, wxT("a"), wxT("action"),	wxT("Specify dialog action - abort, all, compliant or ask") },
+-	        { wxCMD_LINE_OPTION, wxT("b"), wxT("begindate"), wxT("Specify start date for QSOs to sign") },
+-	        { wxCMD_LINE_OPTION, wxT("e"), wxT("enddate"),	wxT("Specify end date for QSOs to sign") },
+-	        { wxCMD_LINE_SWITCH, wxT("d"), wxT("nodate"),	wxT("Suppress date range dialog") },
+-	        { wxCMD_LINE_OPTION, wxT("i"), wxT("import"),	wxT("Import a certificate file (.p12 or .tq6)") },
+-	        { wxCMD_LINE_OPTION, wxT("l"), wxT("location"),	wxT("Selects Station Location") },
+-	        { wxCMD_LINE_SWITCH, wxT("s"), wxT("editlocation"), wxT("Edit (if used with -l) or create Station Location") },
+-	        { wxCMD_LINE_OPTION, wxT("o"), wxT("output"),	wxT("Output file name (defaults to input name minus extension plus .tq8") },
+-	        { wxCMD_LINE_SWITCH, wxT("u"), wxT("upload"),	wxT("Upload after signing instead of saving") },
+-	        { wxCMD_LINE_SWITCH, wxT("x"), wxT("batch"),	wxT("Exit after processing log (otherwise start normally)") },
+-	        { wxCMD_LINE_OPTION, wxT("p"), wxT("password"),	wxT("Password for the signing key") },
+-	        { wxCMD_LINE_SWITCH, wxT("q"), wxT("quiet"),	wxT("Quiet Mode - same behavior as -x") },
+-	        { wxCMD_LINE_OPTION, wxT("t"), wxT("diagnose"),	wxT("File name for diagnostic tracking log") },
+-	        { wxCMD_LINE_SWITCH, wxT("v"), wxT("version"),  wxT("Display the version information and exit") },
+-	        { wxCMD_LINE_SWITCH, wxT("n"), wxT("updates"),	wxT("Check for updates to tqsl and the configuration file") },
+-	        { wxCMD_LINE_SWITCH, wxT("h"), wxT("help"),	wxT("Display command line help"), wxCMD_LINE_VAL_NONE, wxCMD_LINE_OPTION_HELP },
+-	        { wxCMD_LINE_PARAM,  NULL,     NULL,		wxT("Input ADIF or Cabrillo log file to sign"), wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
++	        { wxCMD_LINE_OPTION, "a", "action",	"Specify dialog action - abort, all, compliant or ask" },
++	        { wxCMD_LINE_OPTION, "b", "begindate", "Specify start date for QSOs to sign" },
++	        { wxCMD_LINE_OPTION, "e", "enddate",	"Specify end date for QSOs to sign" },
++	        { wxCMD_LINE_SWITCH, "d", "nodate",	"Suppress date range dialog" },
++	        { wxCMD_LINE_OPTION, "i", "import",	"Import a certificate file (.p12 or .tq6)" },
++	        { wxCMD_LINE_OPTION, "l", "location",	"Selects Station Location" },
++	        { wxCMD_LINE_SWITCH, "s", "editlocation", "Edit (if used with -l) or create Station Location" },
++	        { wxCMD_LINE_OPTION, "o", "output",	"Output file name (defaults to input name minus extension plus .tq8" },
++	        { wxCMD_LINE_SWITCH, "u", "upload",	"Upload after signing instead of saving" },
++	        { wxCMD_LINE_SWITCH, "x", "batch",	"Exit after processing log (otherwise start normally)" },
++	        { wxCMD_LINE_OPTION, "p", "password",	"Password for the signing key" },
++	        { wxCMD_LINE_SWITCH, "q", "quiet",	"Quiet Mode - same behavior as -x" },
++	        { wxCMD_LINE_OPTION, "t", "diagnose",	"File name for diagnostic tracking log" },
++	        { wxCMD_LINE_SWITCH, "v", "version",  "Display the version information and exit" },
++	        { wxCMD_LINE_SWITCH, "n", "updates",	"Check for updates to tqsl and the configuration file" },
++	        { wxCMD_LINE_SWITCH, "h", "help",	"Display command line help", wxCMD_LINE_VAL_NONE, wxCMD_LINE_OPTION_HELP },
++	        { wxCMD_LINE_PARAM,  NULL,     NULL,		"Input ADIF or Cabrillo log file to sign", wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
+ 	        { wxCMD_LINE_NONE }
+ 	};
+ 
+@@ -4100,7 +4100,7 @@
+ 	for (int i = 1; i < argc; i++) {
+ 		origCommandLine += wxT(" ");
+ 		origCommandLine += argv[i];
+-		if (argv[i] && (argv[i][0] == wxT('-') || argv[i][0] == wxT('/')))
++		if (!argv[i].empty() && (argv[i][0] == wxT('-') || argv[i][0] == wxT('/')))
+ 			if (wxIsalpha(argv[i][1]) && wxIsupper(argv[i][1]))
+ 				argv[i][1] = wxTolower(argv[i][1]);
+ 	}
+@@ -4662,7 +4662,7 @@
+ 			file = wxFileSelector(wxT("Save request"), wxT(""), file, wxT(TQSL_CRQ_FILE_EXT),
+ 				wxT("tQSL Cert Request files (*.") wxT(TQSL_CRQ_FILE_EXT) wxT(")|*.") wxT(TQSL_CRQ_FILE_EXT)
+ 					wxT("|All files (") wxT(ALLFILESWILD) wxT(")|") wxT(ALLFILESWILD),
+-				wxSAVE | wxOVERWRITE_PROMPT);
++				wxFD_SAVE | wxFD_OVERWRITE_PROMPT);
+ 			if (file.IsEmpty()) {
+ 				wxLogMessage(wxT("Request cancelled"));
+ 				return;
+@@ -4848,7 +4848,7 @@
+ 	wxString path = wxConfig::Get()->Read(wxT("CertFilePath"), wxT(""));
+ 	wxString filename = wxFileSelector(wxT("Enter the name for the new Certificate Container file"), path,
+ 		file_default, wxT(".p12"), wxT("Certificate Container files (*.p12)|*.p12|All files (*.*)|*.*"),
+-		wxSAVE|wxOVERWRITE_PROMPT, this);
++		wxFD_SAVE|wxFD_OVERWRITE_PROMPT, this);
+ 	if (filename == wxT(""))
+ 		return;
+ 	wxConfig::Get()->Write(wxT("CertFilePath"), wxPathOnly(filename));
+--- a/apps/tqslwiz.cpp
++++ b/apps/tqslwiz.cpp
+@@ -79,7 +79,7 @@
+ }
+ 
+ void TQSLWizCertPage::OnSize(wxSizeEvent& ev) {
+-	TQSLWizPage::OnSize(ev); //fix this
++	TQSLWizPage::ProcessWindowEventLocally(ev); //fix this
+ 	UpdateFields();
+ }
+ 
diff -Nru trustedqsl-2.0.2/debian/patches/series trustedqsl-2.0.2/debian/patches/series
--- trustedqsl-2.0.2/debian/patches/series	2014-04-17 04:32:08.000000000 +1200
+++ trustedqsl-2.0.2/debian/patches/series	2014-05-28 00:46:30.000000000 +1200
@@ -1 +1,2 @@
 01-install-libtqsllib-so-in-usr-lib-trustedqsl.patch
+02-wx3.0-compat.patch
diff -Nru trustedqsl-2.0.2/debian/rules trustedqsl-2.0.2/debian/rules
--- trustedqsl-2.0.2/debian/rules	2014-04-17 04:32:08.000000000 +1200
+++ trustedqsl-2.0.2/debian/rules	2014-06-01 22:37:37.000000000 +1200
@@ -3,6 +3,9 @@
 # Uncomment this to turn on verbose mode.
 #export DH_VERBOSE=1
 
+# Disable WXDEBUG assertions, which are on by default in wx3.0.
+export DEB_CXXFLAGS_MAINT_APPEND=-DNDEBUG
+
 %:
 	dh $@
 

Reply to: