Update of /cvsroot/audacity/audacity-src/src/effects
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv15467
Modified Files:
Equalization.cpp Equalization.h
Log Message:
Add a grid, and a check box to turn it on and off.
Index: Equalization.cpp
===================================================================
RCS file: /cvsroot/audacity/audacity-src/src/effects/Equalization.cpp,v
retrieving revision 1.85
retrieving revision 1.86
diff -u -d -r1.85 -r1.86
--- Equalization.cpp 31 Jan 2009 11:06:28 -0000 1.85
+++ Equalization.cpp 26 Feb 2009 00:41:06 -0000 1.86
@@ -328,6 +328,7 @@
}
gPrefs->Read(wxT("/CsPresets/EQDrawMode"), &mDrawMode, true);
gPrefs->Read(wxT("/CsPresets/EQInterp"), &mInterp, 0);
+ gPrefs->Read(wxT("/CsPresets/EQDrawGrid"), &mDrawGrid, true);
mPrompting = false;
@@ -375,6 +376,7 @@
dlog.dBMax = mdBMax;
dlog.drawMode = mDrawMode;
dlog.interp = mInterp;
+ dlog.drawGrid = mDrawGrid;
dlog.CentreOnParent();
mPrompting = true; // true when previewing, false in batch
@@ -391,6 +393,7 @@
mdBMax = dlog.dBMax;
mDrawMode = dlog.drawMode;
mInterp = dlog.interp;
+ mDrawGrid = dlog.drawGrid;
gPrefs->Write(wxT("/CsPresets/EQFilterLength"),mM);
gPrefs->Write(wxT("/CsPresets/EQCurveName"),mCurveName);
@@ -399,6 +402,7 @@
gPrefs->Write(wxT("/CsPresets/EQdBMax"),mdBMax);
gPrefs->Write(wxT("/CsPresets/EQDrawMode"),mDrawMode);
gPrefs->Write(wxT("/CsPresets/EQInterp"), mInterp);
+ gPrefs->Write(wxT("/CsPresets/EQDrawGrid"), mDrawGrid);
return true;
}
@@ -830,6 +834,12 @@
if( mParent->mFaderOrDraw[0]->GetValue() )
mEnvelope->Draw(memDC, mEnvRect, 0.0, mEnvRect.width, false, dBMin,
dBMax);
+ if( mParent->drawGrid )
+ {
+ mParent->freqRuler->ruler.DrawGrid(memDC, mEnvRect.height+2, true, true,
0, 1);
+ mParent->dBRuler->ruler.DrawGrid(memDC, mEnvRect.width+2, true, true, 1,
2);
+ }
+
dc.Blit(0, 0, mWidth, mHeight,
&memDC, 0, 0, wxCOPY, FALSE);
}
@@ -897,6 +907,7 @@
EVT_RADIOBUTTON(drawRadioID, EqualizationDialog::OnDrawRadio)
EVT_RADIOBUTTON(sliderRadioID, EqualizationDialog::OnSliderRadio)
EVT_CHECKBOX(ID_LIN_FREQ, EqualizationDialog::OnLinFreq)
+ EVT_CHECKBOX(GridOnOffID, EqualizationDialog::OnGridOnOff)
END_EVENT_TABLE()
EqualizationDialog::EqualizationDialog(EffectEqualization * effect,
@@ -1276,6 +1287,11 @@
btn = new wxButton( this, ID_CLEAR, _("Flat"));
szrC->Add( btn, 0, wxALIGN_CENTRE | wxALL, 4 );
+ mGridOnOff = new wxCheckBox(this, GridOnOffID, _("Grids"),
+ wxDefaultPosition, wxDefaultSize,
+ wxALIGN_RIGHT);
+ mGridOnOff->SetName(_("Grids"));
+ szrC->Add( mGridOnOff, 0, wxALIGN_CENTRE | wxALL, 4 );
szrV->Add( szrC, 0, wxALIGN_CENTER | wxALL, 0 );
@@ -1360,6 +1376,8 @@
wxCommandEvent dummyEvent;
OnLinFreq(dummyEvent); // causes a CalcFilter
+ mGridOnOff->SetValue( drawGrid ); // checks/unchecks the box on the
interface
+
MSlider->SetValue((M-1)/2);
M = 0; // force refresh in TransferDataFromWindow()
@@ -2688,6 +2706,15 @@
//v Restore previous values?
}
+void EqualizationDialog::OnGridOnOff(wxCommandEvent & WXUNUSED(event))
+{
+ if( mGridOnOff->IsChecked() )
+ drawGrid = true;
+ else
+ drawGrid = false;
+ mPanel->Refresh(false);
+}
+
void EqualizationDialog::OnCancel(wxCommandEvent &event)
{
if(mLogEnvelope)
Index: Equalization.h
===================================================================
RCS file: /cvsroot/audacity/audacity-src/src/effects/Equalization.h,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -d -r1.36 -r1.37
--- Equalization.h 30 Jan 2009 00:20:47 -0000 1.36
+++ Equalization.h 26 Feb 2009 00:41:06 -0000 1.37
@@ -129,6 +129,7 @@
bool mDrawMode;
int mInterp;
bool mPrompting;
+ bool mDrawGrid;
public:
enum curveType {
@@ -238,6 +239,9 @@
int bandsInUse;
bool drawMode;
int interp;
+ bool drawGrid;
+ RulerPanel *dBRuler;
+ RulerPanel *freqRuler;
private:
void MakeEqualizationDialog();
@@ -276,6 +280,7 @@
sliderRadioID,
ID_INTERP,
ID_LIN_FREQ,
+ GridOnOffID,
ID_SLIDER // needs to come last
};
@@ -303,7 +308,7 @@
void OnPreview(wxCommandEvent &event);
void OnOk( wxCommandEvent &event );
void OnCancel( wxCommandEvent &event );
-
+ void OnGridOnOff( wxCommandEvent &event );
private:
EffectEqualization * m_pEffect;
@@ -329,8 +334,6 @@
wxSlider *MSlider;
wxSlider *dBMinSlider;
wxSlider *dBMaxSlider;
- RulerPanel *dBRuler;
- RulerPanel *freqRuler;
wxBoxSizer *szrC;
wxBoxSizer *szrG;
wxBoxSizer *szrV;
@@ -342,6 +345,7 @@
wxBoxSizer *szr2;
wxFlexGridSizer *szr1;
wxSize size;
+ wxCheckBox *mGridOnOff;
EQCurveArray mCurves;
------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Audacity-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/audacity-cvs