Skip to content

Commit

Permalink
v1.36 05.07.2013
Browse files Browse the repository at this point in the history
- Preliminary TX8M support

v1.37 17.11.2013
- Added SetRegistryKey("Satrian") in InitInstance() to maintain registry
  access compatibility with UAC
- ExtIO DLL is now a default data method (was audio interfaces earlier)
- ExtIORegistryUpdateTask() now writes all changes down after every
  second and checks update flag in 100ms (was 10sec and 1sec)
- ExtIODialog stuff modified to use HWType field, not fetching value 
  from registry.
- Debug console initialization and removal moved to Init/ExitInstance()
  code

v1.38 21.11.2013
- Re-layouted GUI to acommodate RF gain control controls
- LibUSB-win32 version checking is now relaxed to 1.2.2.0, since we can
  live with this and Atmel FLIP utility is reverting us to old version.
  Not nice, but could still be used, so lets not complain.
- Replaced all _beginthread stuff with AfxBeginThread() to be more MCF
  compatible
- Panadapter speed slider made to work
- OnTimer() disables scroll timer temporarily to avoid any possibility
  for recursion (although there probably wasnt any)
- UI Controls conditional enabling and disabling logic cleaned up.
- Included memwatch 2.71 to the build from
  http://www.linkdata.se/sourcecode/memwatch/ Old, but functional, 
  since our dynamic memory allocation is using ANSI memory functions
  anyway.
- Fixed task scheduling issues related to panadapter and ExtIODataTask()
- Eliminated ExtIOCallbackTask() associated double buffering. HDSDR does
  not block on data callback and therefore callback is possible to
  initiate straight from ExtIODataTask()

v1.39 5.12.2013
- UI converted to tabbed dialog (Although only ExtIO tab is implemented)
- Dialog initialization and cleanup revisited and (most of the) leaks fixed
  • Loading branch information
satrian committed Dec 5, 2013
1 parent e257337 commit 58da176
Show file tree
Hide file tree
Showing 27 changed files with 5,555 additions and 796 deletions.
33 changes: 33 additions & 0 deletions AdvancedDialog.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
// AdvancedDialog.cpp : implementation file
//

#include "stdafx.h"
#include "ExtIODll.h"
#include "AdvancedDialog.h"


// CAdvancedDialog dialog

IMPLEMENT_DYNAMIC(CAdvancedDialog, CDialog)

CAdvancedDialog::CAdvancedDialog(CWnd* pParent /*=NULL*/)
: CDialog(CAdvancedDialog::IDD, pParent)
{

}

CAdvancedDialog::~CAdvancedDialog()
{
}

void CAdvancedDialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}


BEGIN_MESSAGE_MAP(CAdvancedDialog, CDialog)
END_MESSAGE_MAP()


// CAdvancedDialog message handlers
21 changes: 21 additions & 0 deletions AdvancedDialog.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#pragma once


// CAdvancedDialog dialog

class CAdvancedDialog : public CDialog
{
DECLARE_DYNAMIC(CAdvancedDialog)

public:
CAdvancedDialog(CWnd* pParent = NULL); // standard constructor
virtual ~CAdvancedDialog();

// Dialog Data
enum { IDD = IDD_ADVANCEDDIALOG };

protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support

DECLARE_MESSAGE_MAP()
};
19 changes: 19 additions & 0 deletions AdvancedDialog.htm
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<HTML>
<BODY ID=CAdvancedDialog BGCOLOR=LIGHTGREY>

<TABLE WIDTH=100%>
<TR>
<TD ALIGN=RIGHT>
<BUTTON STYLE="WIDTH:100" ID="ButtonOK">OK</BUTTON><BR>
<BUTTON STYLE="WIDTH:100" ID="ButtonCancel">Cancel</BUTTON>
</TD>
</TR>
<TR WIDTH=100% HEIGHT=75>
<TD ALIGN=CENTER VALIGN=BOTTOM>
TODO: Place controls here.
</TD>
</TR>
</TABLE>

</BODY>
</HTML>
22 changes: 16 additions & 6 deletions DialogClasses.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,28 @@
#include "ExtIODialog.h"


// Our empty class definition template. While there are likely more beutiful ways for this
// Our empty class definition template. While there are likely more beautiful ways for this
// in c++, this one works, so there are no experiments with templates.

// All the classes are left empty, because we are communicating using messages with the
// controls on dialog screen. All the setup for the controls is performed at the
// This approach is useful for getting the DDX variablesset up for objects, so we
// can use DDX method for communication.

// All the classes are left empty, since we really need these only as a variables
// of the right type. All the setup for the controls is performed at the
// ExtIODlg.cpp OnInitDialog() to keep all control initializations at the same place
//
// Basically, what you need to do is following:
//
// - Create control on the resource screen
// - Add class definition with the macro here and ExtIODialogClasses.h, be sure to use appropriate public class
// - Add class definition with the macro here and DialogClasses.h, be sure to use appropriate public class
// - Add class to the CExtIODialog class definition at ExtIODialog.h
// - Add DDX message handler to the ExtIODialog.cpp CExtIODialog::DoDataExchange()
// - If the main dialog has to receive specific events from control, add appropriate
// messaging definitions to ExtIODialog.cpp message map.
//
// See also: http://msdn.microsoft.com/en-us/library/xwz5tb1x%28v=vs.110%29.asp


// NB! If the main dialog has to receive specific events from control, appropriate messaging definitions
// still have to be added to message map at ExtIODialog.cpp
//

#define DialogClass(ClassName, PublicClass) \
Expand Down Expand Up @@ -49,6 +56,9 @@ DialogClass(CPhaseInfo, CEdit)
DialogClass(CTransparencySlider, CSliderCtrl)
DialogClass(CCheckBoxDllIQ, CButton)
DialogClass(CCheckBoxDebugConsole, CButton)
DialogClass(CCheckBoxAGC, CButton)
DialogClass(CRFGainASlider, CSliderCtrl)
DialogClass(CRFGainBSlider, CSliderCtrl)
DialogClass(CDataRateInfo, CEdit)
DialogClass(CButton1, CButton)

Expand Down
3 changes: 3 additions & 0 deletions DialogClasses.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,9 @@ DialogClassDef(CPhaseInfo, CEdit)
DialogClassDef(CTransparencySlider, CSliderCtrl)
DialogClassDef(CCheckBoxDllIQ, CButton)
DialogClassDef(CCheckBoxDebugConsole, CButton)
DialogClassDef(CCheckBoxAGC, CButton)
DialogClassDef(CRFGainASlider, CSliderCtrl)
DialogClassDef(CRFGainBSlider, CSliderCtrl)
DialogClassDef(CDataRateInfo, CEdit)
DialogClassDef(CButton1, CButton)

Expand Down
Loading

0 comments on commit 58da176

Please sign in to comment.