1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-10-25 15:53:52 +02:00

Compensate for wxW 3 tab navigation deficiencies on Mac...

... using char hook event handlers.  We don't need to go the extreme length
of patching wxWidgets source.
This commit is contained in:
Paul Licameli
2016-06-25 14:18:23 -04:00
committed by Paul Licameli
parent ae14cb0dbc
commit 4739f3e27b
50 changed files with 231 additions and 144 deletions

View File

@@ -220,7 +220,7 @@ bool ExportPlugin::DisplayOptions(wxWindow * WXUNUSED(parent), int WXUNUSED(form
wxWindow *ExportPlugin::OptionsCreate(wxWindow *parent, int WXUNUSED(format))
{
wxASSERT(parent); // To justify safenew
wxPanel *p = safenew wxPanel(parent, wxID_ANY);
wxPanel *p = safenew wxPanelWrapper(parent, wxID_ANY);
ShuttleGui S(p, eIsCreatingFromPrefs);
S.StartHorizontalLay(wxCENTER);
@@ -985,7 +985,7 @@ bool Exporter::SetAutoExportOptions(AudacityProject *project) {
// ExportMixerPanel
//----------------------------------------------------------------------------
BEGIN_EVENT_TABLE(ExportMixerPanel, wxPanel)
BEGIN_EVENT_TABLE(ExportMixerPanel, wxPanelWrapper)
EVT_PAINT(ExportMixerPanel::OnPaint)
EVT_MOUSE_EVENTS(ExportMixerPanel::OnMouseEvent)
END_EVENT_TABLE()
@@ -993,7 +993,7 @@ END_EVENT_TABLE()
ExportMixerPanel::ExportMixerPanel( MixerSpec *mixerSpec,
wxArrayString trackNames,wxWindow *parent, wxWindowID id,
const wxPoint& pos, const wxSize& size):
wxPanel(parent, id, pos, size)
wxPanelWrapper(parent, id, pos, size)
{
mBitmap = NULL;
mWidth = 0;

View File

@@ -16,10 +16,10 @@
#include <wx/dialog.h>
#include <wx/dynarray.h>
#include <wx/filename.h>
#include <wx/panel.h>
#include <wx/simplebook.h>
#include "../Tags.h"
#include "../SampleFormat.h"
#include "../widgets/wxPanelWrapper.h"
#include "FileDialog.h"
@@ -215,7 +215,7 @@ private:
//----------------------------------------------------------------------------
// ExportMixerPanel
//----------------------------------------------------------------------------
class ExportMixerPanel final : public wxPanel
class ExportMixerPanel final : public wxPanelWrapper
{
public:
ExportMixerPanel( MixerSpec *mixerSpec, wxArrayString trackNames,

View File

@@ -39,7 +39,7 @@
// ExportCLOptions
//----------------------------------------------------------------------------
class ExportCLOptions final : public wxPanel
class ExportCLOptions final : public wxPanelWrapper
{
public:
ExportCLOptions(wxWindow *parent, int format);
@@ -60,14 +60,14 @@ private:
#define ID_BROWSE 5000
BEGIN_EVENT_TABLE(ExportCLOptions, wxPanel)
BEGIN_EVENT_TABLE(ExportCLOptions, wxPanelWrapper)
EVT_BUTTON(ID_BROWSE, ExportCLOptions::OnBrowse)
END_EVENT_TABLE()
///
///
ExportCLOptions::ExportCLOptions(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
mHistory.Load(*gPrefs, wxT("/FileFormats/ExternalProgramHistory"));

View File

@@ -142,7 +142,7 @@ const int ExportFFmpegAC3Options::iAC3BitRates[] = { 32000, 40000, 48000, 56000,
const int ExportFFmpegAC3Options::iAC3SampleRates[] = { 32000, 44100, 48000, 0 };
ExportFFmpegAC3Options::ExportFFmpegAC3Options(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
for (unsigned int i=0; i < (sizeof(iAC3BitRates)/sizeof(int)); i++)
{
@@ -205,7 +205,7 @@ bool ExportFFmpegAC3Options::TransferDataFromWindow()
//----------------------------------------------------------------------------
ExportFFmpegAACOptions::ExportFFmpegAACOptions(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
ShuttleGui S(this, eIsCreatingFromPrefs);
PopulateOrExchange(S);
@@ -268,7 +268,7 @@ int ExportFFmpegAMRNBOptions::iAMRNBBitRate[] =
{ 4750, 5150, 5900, 6700, 7400, 7950, 10200, 12200 };
ExportFFmpegAMRNBOptions::ExportFFmpegAMRNBOptions(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
for (unsigned int i=0; i < (sizeof(iAMRNBBitRate)/sizeof(int)); i++)
{
@@ -338,7 +338,7 @@ const int ExportFFmpegWMAOptions::iWMABitRate[] =
{ 24000, 32000, 40000, 48000, 64000, 80000, 96000, 128000, 160000, 192000, 256000, 320000 };
ExportFFmpegWMAOptions::ExportFFmpegWMAOptions(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
for (unsigned int i=0; i < (sizeof(iWMABitRate)/sizeof(int)); i++)
{
@@ -402,12 +402,12 @@ bool ExportFFmpegWMAOptions::TransferDataFromWindow()
#define OpenID 9000
BEGIN_EVENT_TABLE(ExportFFmpegCustomOptions, wxPanel)
BEGIN_EVENT_TABLE(ExportFFmpegCustomOptions, wxPanelWrapper)
EVT_BUTTON(OpenID, ExportFFmpegCustomOptions::OnOpen)
END_EVENT_TABLE()
ExportFFmpegCustomOptions::ExportFFmpegCustomOptions(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
ShuttleGui S(this, eIsCreatingFromPrefs);
PopulateOrExchange(S);

View File

@@ -20,6 +20,7 @@ LRN
#include <wx/listimpl.cpp>
#include "../xml/XMLFileReader.h"
#include "../FileNames.h"
#include "../widgets/wxPanelWrapper.h"
/// Identifiers for pre-set export types.
@@ -58,7 +59,7 @@ struct CompatibilityEntry
/// AC3 export options dialog
class ExportFFmpegAC3Options final : public wxPanel
class ExportFFmpegAC3Options final : public wxPanelWrapper
{
public:
@@ -84,7 +85,7 @@ private:
int mBitRateFromChoice;
};
class ExportFFmpegAACOptions final : public wxPanel
class ExportFFmpegAACOptions final : public wxPanelWrapper
{
public:
@@ -100,7 +101,7 @@ private:
wxSpinCtrl *mQualitySpin;
};
class ExportFFmpegAMRNBOptions final : public wxPanel
class ExportFFmpegAMRNBOptions final : public wxPanelWrapper
{
public:
@@ -122,7 +123,7 @@ private:
int mBitRateFromChoice;
};
class ExportFFmpegWMAOptions final : public wxPanel
class ExportFFmpegWMAOptions final : public wxPanelWrapper
{
public:
@@ -145,7 +146,7 @@ private:
int mBitRateFromChoice;
};
class ExportFFmpegCustomOptions final : public wxPanel
class ExportFFmpegCustomOptions final : public wxPanelWrapper
{
public:

View File

@@ -47,7 +47,7 @@ and libvorbis examples, Monty <monty@xiph.org>
// ExportFLACOptions Class
//----------------------------------------------------------------------------
class ExportFLACOptions final : public wxPanel
class ExportFLACOptions final : public wxPanelWrapper
{
public:
@@ -62,7 +62,7 @@ public:
///
///
ExportFLACOptions::ExportFLACOptions(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
ShuttleGui S(this, eIsCreatingFromPrefs);
PopulateOrExchange(S);

View File

@@ -82,7 +82,7 @@ static int iBitrates[] = {
192, 224, 256, 320, 384
};
class ExportMP2Options final : public wxPanel
class ExportMP2Options final : public wxPanelWrapper
{
public:
ExportMP2Options(wxWindow *parent, int format);
@@ -100,7 +100,7 @@ private:
///
///
ExportMP2Options::ExportMP2Options(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
for (unsigned int i=0; i < (sizeof(iBitrates)/sizeof(int)); i++)
{

View File

@@ -262,7 +262,7 @@ static void InitMP3_Statics()
}
}
class ExportMP3Options final : public wxPanel
class ExportMP3Options final : public wxPanelWrapper
{
public:
@@ -305,7 +305,7 @@ private:
DECLARE_EVENT_TABLE()
};
BEGIN_EVENT_TABLE(ExportMP3Options, wxPanel)
BEGIN_EVENT_TABLE(ExportMP3Options, wxPanelWrapper)
EVT_RADIOBUTTON(ID_SET, ExportMP3Options::OnSET)
EVT_RADIOBUTTON(ID_VBR, ExportMP3Options::OnVBR)
EVT_RADIOBUTTON(ID_ABR, ExportMP3Options::OnABR)
@@ -317,7 +317,7 @@ END_EVENT_TABLE()
///
///
ExportMP3Options::ExportMP3Options(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
InitMP3_Statics();

View File

@@ -42,7 +42,7 @@
// ExportOGGOptions
//----------------------------------------------------------------------------
class ExportOGGOptions final : public wxPanel
class ExportOGGOptions final : public wxPanelWrapper
{
public:
@@ -61,7 +61,7 @@ private:
///
///
ExportOGGOptions::ExportOGGOptions(wxWindow *parent, int WXUNUSED(format))
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
mOggQualityUnscaled = gPrefs->Read(wxT("/FileFormats/OggExportQuality"),50)/10;

View File

@@ -92,7 +92,7 @@ static void WriteExportFormatPref(int format)
#define ID_HEADER_CHOICE 7102
#define ID_ENCODING_CHOICE 7103
class ExportPCMOptions final : public wxPanel
class ExportPCMOptions final : public wxPanelWrapper
{
public:
@@ -123,12 +123,12 @@ private:
DECLARE_EVENT_TABLE()
};
BEGIN_EVENT_TABLE(ExportPCMOptions, wxPanel)
BEGIN_EVENT_TABLE(ExportPCMOptions, wxPanelWrapper)
EVT_CHOICE(ID_HEADER_CHOICE, ExportPCMOptions::OnHeaderChoice)
END_EVENT_TABLE()
ExportPCMOptions::ExportPCMOptions(wxWindow *parent, int selformat)
: wxPanel(parent, wxID_ANY)
: wxPanelWrapper(parent, wxID_ANY)
{
int format;