looks up svn revision from the Internet
authordrowe67 <drowe67@01035d8c-6547-0410-b346-abe4f91aad63>
Tue, 20 Nov 2012 10:07:13 +0000 (10:07 +0000)
committerdrowe67 <drowe67@01035d8c-6547-0410-b346-abe4f91aad63>
Tue, 20 Nov 2012 10:07:13 +0000 (10:07 +0000)
git-svn-id: https://svn.code.sf.net/p/freetel/code@1040 01035d8c-6547-0410-b346-abe4f91aad63

fdmdv2/src/Makefile.linux
fdmdv2/src/Makefile.win32
fdmdv2/src/fdmdv2_main.cpp
fdmdv2/src/fdmdv2_main.h

index f14905af05ead2920f97d6a99b037234bba31f37..ac444e0f32352c4768c1061c4b975734f22aa1fd 100644 (file)
@@ -10,7 +10,7 @@ CODEC2_PATH=/home/david/codec2-dev
 
 WX_CONFIG=$(WX_GTK_PATH)/wx-config
 WX_CPPFLAGS = $(shell $(WX_CONFIG) --cxxflags)
-WX_LIBS = $(shell $(WX_CONFIG) --libs core, base, aui, adv)
+WX_LIBS = $(shell $(WX_CONFIG) --libs core, base, aui, adv, net)
 SVN_REVISION=$(shell svnversion)
 CODEC2_INC=-I$(CODEC2_PATH)/src
 CODEC2_LIB=$(CODEC2_PATH)/src/.libs/libcodec2.a
index 4c586f5b41a4cc4c0de47a69f2fa27400694f251..bdadcd9cf0b2c86d9baebf28196d0fbbbe6a9fe8 100644 (file)
@@ -10,7 +10,7 @@ INCLUDE_PATH=/usr/local/include
 
 WX_CONFIG=wx-config
 WX_CPPFLAGS = $(shell $(WX_CONFIG) --cxxflags) -D__WXDEBUG__
-WX_LIBS = $(shell $(WX_CONFIG) --libs core, base, aui, adv)
+WX_LIBS = $(shell $(WX_CONFIG) --libs core, base, aui, adv, net)
 SVN_REVISION=$(shell svnversion)
 CODEC2_INC=$(CODEC2_PATH)/src 
 CODEC2_LIB=$(CODEC2_PATH)/src/.libs/libcodec2.a
index 9013e5173ce2b34e461d75ac6acfaf696a3cde2c..6335fdae96d1c362c9d82f4833fcedcbc6531ade 100644 (file)
@@ -1108,11 +1108,42 @@ void MainFrame::OnHelpCheckUpdatesUI(wxUpdateUIEvent& event)
 //-------------------------------------------------------------------------
 void MainFrame::OnHelpAbout(wxCommandEvent& event)
 {
+    wxString svnLatestRev("Can't determine latest SVN revision.");
+
+    // Try to determine current SVN revision from the Internet
+
+    wxURL url(wxT("http://freetel.svn.sourceforge.net/svnroot/freetel/fdmdv2/"));
+    
+    if(url.GetError() == wxURL_NOERR)
+    {
+        printf("URL OK\n");
+        wxString htmldata;
+        wxInputStream *in = url.GetInputStream();
+        if(in && in->IsOk())
+        {
+            printf("In OK\n");
+            wxStringOutputStream html_stream(&htmldata);
+            in->Read(html_stream);
+            wxLogDebug(htmldata);
+            wxString s("<h2>freetel - Revision ");
+            int startIndex = htmldata.find(s) + s.Length();
+            int endIndex = htmldata.find(wxT(": /fdmdv2</h2>"));
+            svnLatestRev = wxT("Latest svn revision: ") + htmldata.SubString(startIndex, endIndex-1);
+            printf("startIndex: %d endIndex: %d\n", startIndex, endIndex);
+       }
+
+        delete in;
+    }
+    else
+        printf("failed to parse URL\n");
+
     wxString msg;
     msg.Printf( wxT("FreeDV: Narrow Band Digital Voice over Radio Application.\n\n")
                 wxT("GNU Public License V2.1\n")
                 wxT("Copyright (c) David Witten KD0EAG and David Rowe VK5DGR\n\n")
-                wxT("svn revision %s"), SVN_REV);
+                wxT("svn revision: %s\n") + svnLatestRev, SVN_REV);
 
     wxMessageBox(msg, wxT("About"), wxOK | wxICON_INFORMATION, this);
 }
index fab0a9f393f2a5cbaf920ec10f2089f22581e059..1b3ec7ceeb809438d6dfb896045d122d31be223f 100644 (file)
@@ -39,6 +39,8 @@
 #include "wx/stopwatch.h"
 #include "wx/versioninfo.h"
 #include <wx/sound.h>
+#include <wx/url.h>
+#include <wx/sstream.h>
 
 #include <samplerate.h>