1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-07-24 16:38:07 +02:00

Comments on the DA conditionals.

This commit is contained in:
James Crook 2017-04-02 08:57:16 +01:00
parent bd364ea0ec
commit 9ec2bdb102
18 changed files with 47 additions and 18 deletions

View File

@ -355,6 +355,7 @@ visit our [[http://forum.audacityteam.org/|forum]].");
wxString creditStr = FormatHtmlText(
wxString( wxT("<center>") ) +
// DA: Description and provenance in About box
#ifdef EXPERIMENTAL_DA
#undef _
#define _(s) wxGetTranslation((s))
@ -370,8 +371,11 @@ visit our [[http://forum.audacityteam.org/|forum]].");
//wxT("<p>") + par2Str +
wxT("<h3>") + _("Credits") + wxT("</h3>") + wxT("<p>") +
// DA: Customisation credit
#ifdef EXPERIMENTAL_DA
wxT("<p><b>") + wxString::Format(_("DarkAudacity Customisation")) + wxT("</b><br>") +
wxT("James Crook, art, coding &amp; design<br>") +
#endif
wxT("<p><b>") + wxString::Format(_("Audacity Team Members")) + wxT("</b><br>") +
GetCreditsByRole(roleTeamMember) +
@ -395,6 +399,8 @@ visit our [[http://forum.audacityteam.org/|forum]].");
GetCreditsByRole(roleThanks) +
wxT("<p><br>Audacity website: [[http://www.audacityteam.org/|http://www.audacityteam.org/]]") +
// DA: Link for DA url too
#ifdef EXPERIMENTAL_DA
wxT("<br>DarkAudacity website: [[http://www.darkaudacity.com/|http://www.darkaudacity.com/]]") +
#endif

View File

@ -1275,6 +1275,8 @@ bool AudacityApp::OnInit()
// Don't use AUDACITY_NAME here.
// We want Audacity with a capital 'A'
// DA: App name
#ifndef EXPERIMENTAL_DA
wxString appName = wxT("Audacity");
#else
@ -1309,6 +1311,8 @@ bool AudacityApp::OnInit()
/* On Unix systems, the default temp dir is in /var/tmp. */
defaultTempDir.Printf(wxT("/var/tmp/audacity-%s"), wxGetUserId().c_str());
// DA: Path env variable.
#ifndef EXPERIMENTAL_DA
wxString pathVar = wxGetenv(wxT("AUDACITY_PATH"));
#else

View File

@ -48,7 +48,7 @@
// feature to link audio tracks to a label track
#define EXPERIMENTAL_SYNC_LOCK
// enables dark audacity theme and customisations.
// DA: Enables dark audacity theme and customisations.
#define EXPERIMENTAL_DA
// experimental theming

View File

@ -252,6 +252,7 @@ wxString FileNames::ThemeImageDefsAsCee()
wxString FileNames::ThemeCacheAsCee( )
{
// DA: Theme sourcery file name.
#ifndef EXPERIMENTAL_DA
return wxFileName( ThemeDir(), wxT("ThemeAsCeeCode.h") ).GetFullPath();
#else

View File

@ -210,7 +210,9 @@ static wxString HelpTextBuiltIn( const wxString & Key )
_("<br><br>The version of Audacity you are using is an <b>Alpha test version</b>.") + " " +
_("We strongly recommend that you use our latest stable released version, which has full documentation and support.<br><br>")+
_("You can help us get Audacity ready for release by joining our [[http://www.audacityteam.org/community/|community]].<hr><br><br>")+
#endif
#endif
// DA: Support methods text.
#ifdef EXPERIMENTAL_DA
wxT("<center><h3>DarkAudacity ") + AUDACITY_VERSION_STRING + wxT("</h3></center>") +
_("<br><br>DarkAudacity is based on Audacity:") + wxT("<ul><li>") +
@ -259,6 +261,7 @@ audio CDs]].") + wxT("</p>")
if(Key == wxT("remotehelp") )
{
// *URL* will be replaced by whatever URL we are looking for.
// DA: View the manual on line is expected.
#ifdef EXPERIMENTAL_DA
return WrapText(_("The Manual does not appear to be installed. \
Please [[*URL*|view the Manual online]].<br><br>\

View File

@ -40,6 +40,7 @@ wxChar Internat::mDecimalSeparator = wxT('.'); // default
wxArrayString Internat::exclude;
wxCharBuffer Internat::mFilename;
// DA: Use tweaked translation mechanism to replace 'Audacity' by 'DarkAudacity'.
#ifdef EXPERIMENTAL_DA
// This function allows us to replace Audacity by DarkAudacity without peppering
// the source code with changes. We split out this step, the customisation, as

View File

@ -325,7 +325,7 @@ void AudacityProject::CreateMenusAndCommands()
AudioIONotBusyFlag | UnsavedChangesFlag);
c->AddItem(wxT("SaveAs"), _("Save Project &As..."), FN(OnSaveAs));
c->BeginSubMenu( _("Save Other") );
//#ifdef EXPERIMENTAL_DA
// Enable Export audio commands only when there are audio tracks.
c->AddItem(wxT("ExportMp3"), _("Export as MP&3"), FN(OnExportMp3), wxT(""),
AudioIONotBusyFlag | WaveTracksExistFlag,
@ -338,7 +338,6 @@ void AudacityProject::CreateMenusAndCommands()
c->AddItem(wxT("ExportOgg"), _("Export as &OGG"), FN(OnExportOgg), wxT(""),
AudioIONotBusyFlag | WaveTracksExistFlag,
AudioIONotBusyFlag | WaveTracksExistFlag);
//#endif
c->AddItem(wxT("Export"), _("&Export Audio..."), FN(OnExportAudio), wxT("Ctrl+Shift+E"),
AudioIONotBusyFlag | WaveTracksExistFlag,
@ -598,6 +597,7 @@ void AudacityProject::CreateMenusAndCommands()
TracksExistFlag, TracksExistFlag);
#ifdef EXPERIMENTAL_SYNC_LOCK
// DA: Time-Locked vs Sync-Locked
#ifdef EXPERIMENTAL_DA
c->AddItem(wxT("SelSyncLockTracks"), _("In All Time-Locked Tracks"),
#else
@ -612,13 +612,11 @@ void AudacityProject::CreateMenusAndCommands()
c->AddItem(wxT("ZeroCross"), _("Ends to &Zero Crossings"), FN(OnZeroCrossing), wxT("Z"));
c->AddSeparator();
#ifndef EXPERIMENTAL_DA
c->AddItem(wxT("StoreCursorPosition"), _("Save Cursor Pos&ition"), FN(OnCursorPositionStore),
WaveTracksExistFlag,
WaveTracksExistFlag);
// Save cursor position is used in some selctions.
// Maybe there should be a restore for it?
#endif
// Audacity has 'Store Re&gion' here.
c->AddItem(wxT("SelSave"), _("Save Sele&ction"), FN(OnSelectionSave),
@ -815,8 +813,7 @@ void AudacityProject::CreateMenusAndCommands()
// Scrubbing sub-menu
GetScrubber().AddMenuItems();
#ifndef EXPERIMENTAL_DA
// JKC: ANSWER-ME: How is this different to 'Skip To' and how is it useful?
// JKC: ANSWER-ME: How is 'cursor to' different to 'Skip To' and how is it useful?
c->BeginSubMenu(_("Cursor to"));
c->AddItem(wxT("CursSelStart"), _("Selection Star&t"), FN(OnCursorSelStart));
@ -829,7 +826,6 @@ void AudacityProject::CreateMenusAndCommands()
c->AddItem(wxT("CursProjectEnd"), _("Project E&nd"), FN(OnSkipEnd), wxT("End"));
c->EndSubMenu();
#endif
c->AddSeparator();
@ -982,6 +978,7 @@ void AudacityProject::CreateMenusAndCommands()
c->AddSeparator();
#ifdef EXPERIMENTAL_SYNC_LOCK
// DA: Time-Lock vs Sync-Lock
#ifdef EXPERIMENTAL_DA
c->AddCheck(wxT("SyncLock"), _("Time-&Lock Tracks (on/off)"), FN(OnSyncLock), 0,
#else
@ -1128,15 +1125,16 @@ void AudacityProject::CreateMenusAndCommands()
c->BeginMenu(_("&Help"));
c->SetDefaultFlags(AlwaysEnabledFlag, AlwaysEnabledFlag);
#ifndef EXPERIMENTAL_DA
c->AddItem(wxT("QuickHelp"), _("&Quick Help"), FN(OnQuickHelp));
c->AddItem(wxT("Manual"), _("&Manual"), FN(OnManual));
#else
// DA: Emphasise it is the Audacity Manual (No separate DA manual).
#ifdef EXPERIMENTAL_DA
// 'Getting Started' rather than 'Quick Help' for DarkAudacity.
// At the moment the video tutorials are aspirational (aka do not exist yet).
// Emphasise that manual is for Audacity, not DarkAudacity.
c->AddItem(wxT("QuickHelp"), _("&Getting Started"), FN(OnQuickHelp));
c->AddItem(wxT("Manual"), wxT("Audacity &Manual"), FN(OnManual));
#else
c->AddItem(wxT("QuickHelp"), _("&Quick Help"), FN(OnQuickHelp));
c->AddItem(wxT("Manual"), _("&Manual"), FN(OnManual));
#endif
@ -1171,6 +1169,7 @@ void AudacityProject::CreateMenusAndCommands()
c->AddSeparator();
#endif
// DA: Does not fully support update checking.
#ifndef EXPERIMENTAL_DA
c->AddItem(wxT("Updates"), _("&Check for Updates..."), FN(OnCheckForUpdates));
#endif

View File

@ -1276,7 +1276,7 @@ void AudacityProject::UpdatePrefsVariables()
gPrefs->Read(wxT("/AudioFiles/NormalizeOnLoad"),&mNormalizeOnLoad, false);
gPrefs->Read(wxT("/GUI/AutoScroll"), &mViewInfo.bUpdateTrackIndicator, true);
gPrefs->Read(wxT("/GUI/EmptyCanBeDirty"), &mEmptyCanBeDirty, true );
// DA 2.1.3x did not ship with a manual, so default for DA is internet.
// DA: Default for DA is manual from internet.
#ifdef EXPERIMENTAL_DA
gPrefs->Read(wxT("/GUI/Help"), &mHelpPref, wxT("FromInternet") );
#else

View File

@ -189,6 +189,7 @@ WX_DEFINE_USER_EXPORTED_OBJARRAY( ArrayOfColours )
#include "AllThemeResources.h"
// Include the ImageCache...
// DA: Default theme is dark
#ifdef EXPERIMENTAL_DA
static unsigned char ImageCacheAsData[] = {
#include "DarkThemeAsCeeCode.h"
@ -524,6 +525,7 @@ int SourceOutputStream::OpenFile(const wxString & Filename)
bOk = File.Open( Filename, wxFile::write );
if( bOk )
{
// DA: Naming of output sourcery
#ifdef EXPERIMENTAL_DA
File.Write( wxT("// DarkThemeAsCeeCode.h\r\n") );
#else
@ -843,16 +845,17 @@ bool ThemeBase::ReadImageCache( teThemeType type, bool bOkIfNotFound)
// ELSE we are reading from internal storage.
else
{
#ifndef EXPERIMENTAL_DA
wxMemoryInputStream InternalStream(
(char *)ImageCacheAsData, sizeof(ImageCacheAsData));
#else
// DA: Has more built-in theme sources.
#ifdef EXPERIMENTAL_DA
wxMemoryInputStream DarkInternalStream(
(char *)ImageCacheAsData, sizeof(ImageCacheAsData));
wxMemoryInputStream LightInternalStream(
(char *)LightImageCacheAsData, sizeof(LightImageCacheAsData));
wxMemoryInputStream & InternalStream = (type == themeDark) ?
DarkInternalStream : LightInternalStream;
#else
wxMemoryInputStream InternalStream(
(char *)ImageCacheAsData, sizeof(ImageCacheAsData));
#endif
if( !ImageCache.LoadFile( InternalStream, wxBITMAP_TYPE_PNG ))
{

View File

@ -9072,6 +9072,7 @@ void TrackInfo::GetMuteSoloRect(const wxRect & rect, wxRect & dest, bool solo, b
dest.height = kTrackInfoBtnSize;
// DA: Mute solo buttons wider and higher.
#ifdef EXPERIMENTAL_DA
dest.width = 100 - 2 * kTrackInfoBtnSize;
dest.x = rect.x + (100 - dest.width)*0.5 ;
@ -9356,6 +9357,7 @@ void TrackInfo::DrawMuteSolo(wxDC * dc, const wxRect & rect, Track * t,
/* i18n-hint: This is on a button that will silence all the other tracks.*/
_("Mute");
// DA: Uses Theme to draw buttons.
#ifdef EXPERIMENTAL_DA
AColor::Bevel2(
#else

View File

@ -395,6 +395,7 @@ wxAccStatus TrackPanelAx::GetName( int childId, wxString* name )
this track is shown with a sync-locked icon.*/
// The absence of a dash between Sync and Locked is deliberate -
// if present, Jaws reads it as "dash".
// DA: Time Lock vs Sync Lock.
#ifdef EXPERIMENTAL_DA
name->Append( wxT(" ") + wxString(_( " Time Lock Selected" )) );
#else

View File

@ -90,6 +90,7 @@ bool ZoomInfo::ZoomOutAvailable() const
void ZoomInfo::SetZoom(double pixelsPerSecond)
{
zoom = std::max(gMinZoom, std::min(gMaxZoom, pixelsPerSecond));
// DA: Avoids stuck in snap-to
#ifdef EXPERIMENTAL_DA
// Disable snapping if user zooms in a long way.
// Helps stop users be trapped in snap-to.

View File

@ -34,6 +34,7 @@ enum
ID_DutyCycle,
};
// DA: DTMF for Audacity uses a different string.
#ifdef EXPERIMENTAL_DA
#define SHORT_APP_NAME "darkaudacity"
#else

View File

@ -284,6 +284,8 @@ bool EffectTruncSilence::ProcessIndependently()
if (track2->GetKind() == Track::Wave &&
!(track2 == track || track2 == link) &&
track2->GetSelected()) {
// DA: Time-Locked vs Sync-Locked
#ifdef EXPERIMENTAL_DA
::wxMessageBox(_("When truncating independently, there may only be one selected audio track in each Time-Locked Track Group."));
#else

View File

@ -192,6 +192,7 @@ bool GUIPrefs::Apply()
gPrefs->Flush();
}
// DA: Default themes differ.
#ifdef EXPERIMENTAL_DA
wxString theme = gPrefs->Read(wxT("/GUI/Theme"), wxT("dark"));
#else

View File

@ -148,6 +148,7 @@ void EditToolBar::Populate()
AddSeparator();
#ifdef EXPERIMENTAL_SYNC_LOCK
// DA: Time-Locked vs Sync-Locked
#ifndef EXPERIMENTAL_DA
AddButton(bmpSyncLockTracksUp, bmpSyncLockTracksDown, bmpSyncLockTracksUp, ETBSyncLockID,
_("Sync-Lock Tracks"), true);
@ -214,6 +215,7 @@ void EditToolBar::RegenerateTooltips()
{ ETBRedoID, wxT("Redo"), XO("Redo") },
#ifdef EXPERIMENTAL_SYNC_LOCK
// DA: No Sync Lock edit button
#ifndef EXPERIMENTAL_DA
{ ETBSyncLockID, wxT("SyncLock"), XO("Sync-Lock Tracks") },
#endif

View File

@ -38,6 +38,7 @@ enum {
ETBRedoID,
#ifdef EXPERIMENTAL_SYNC_LOCK
// DA: No Sync Lock edit button
#ifndef EXPERIMENTAL_DA
ETBSyncLockID,
#endif

View File

@ -302,6 +302,7 @@ void HelpSystem::ShowHelpDialog(wxWindow *parent,
}
else if (releasePageName == wxT("Quick_Help"))
{
// DA: No bundled help, by default, and different quick-help URL.
#ifdef EXPERIMENTAL_DA
releasePageName = wxT("video") + HelpSystem::ReleaseSuffix + anchor;
localHelpPage = wxFileName(FileNames::HtmlHelpDir(), releasePageName).GetFullPath();