Paul Licameli
116ff70756
static TrackFactory::Get()...
...
... not member functions of AudacityProject
2019-05-23 13:55:14 -04:00
Paul Licameli
4ba4d0978b
static CommandManager::Get()...
...
... not member functions of AudacityProject
2019-05-23 13:17:29 -04:00
Paul Licameli
805af452a4
static DirManager::Get()...
...
... not member functions of AudacityProject
This puts DirManager.cpp and four others back into the big strongly connected
component of link dependencies. They will break out again when Project.cpp
becomes a low-level file.
2019-05-23 13:10:19 -04:00
Paul Licameli
72b7c776a8
static UndoManager::Get()...
...
... not member functions of AudacityProject
2019-05-23 12:58:47 -04:00
Paul Licameli
b5a57682b6
static ViewInfo::Get() and ZoomInfo::Get()...
...
... not member functions of AudacityProject
2019-05-23 12:58:47 -04:00
Paul Licameli
14ab93a01f
static TrackList::Get()...
...
... not member function of AudacityProject
2019-05-23 12:58:47 -04:00
Paul Licameli
af039f19ff
Generalize means for decoupled code to add data to core structures...
...
... Generalizing what was first done at 280e8d9 for certain menu command
handlers.
Allow core data structures to host data attached by other code, on which it
need have no compilation or link dependencies.
2019-05-21 10:08:56 -04:00
Paul Licameli
62899a32f4
All things with an UpdatePrefs() message listen for an event...
...
... Still to do, improve the handling of updates of only subsets of the prefs
2019-05-20 21:38:13 -04:00
Paul Licameli
dccb716f39
enum PlayMode tells whether there's cut preview; out of Project.h
2019-05-20 21:38:12 -04:00
Paul Licameli
0bd9bb3b90
Some steps of ResetProjectToEmpty into a new function
2019-05-20 21:38:11 -04:00
Paul Licameli
582b0ee40c
Repeated code moved into new AudacityProject::CloseLock()
2019-05-20 21:38:11 -04:00
Paul Licameli
b3257c56da
Remove AudacityProject::ExportFromTimerRecording
2019-05-20 21:38:10 -04:00
Paul Licameli
9c75ebe7f7
TrackPanel subscribes directly to ODManager for events...
...
... cutting middleman AudacityProject out
2019-05-20 21:38:10 -04:00
Paul Licameli
22f6ee789c
Move function from AudacityProject to TransportActions
2019-05-20 21:38:10 -04:00
Paul Licameli
d2717cac21
Move functions from AudacityProject to SelectActions
2019-05-20 21:38:09 -04:00
Paul Licameli
5ed9fa972b
AudacityProject::mIsBeingDeleted was redundant
2019-05-20 21:38:09 -04:00
Paul Licameli
9f377b3b75
Prepare to decouple factories for TP & Ruler into their own sources
2019-05-20 21:38:09 -04:00
Paul Licameli
ada9f2baad
Remove AudacityProject::IsCapturing()...
...
... because it was in fact tracking global state, not any per-project state.
2019-05-20 21:38:08 -04:00
Paul Licameli
f123ea5faa
Missing alias dialog tracking is non-intrusive in class AudacityProject
2019-05-20 21:38:08 -04:00
Paul Licameli
e227d4dfb1
Remove some unnecessary declarations in class AudacityProject
2019-05-20 21:38:07 -04:00
Paul Licameli
390af96796
Dispatch read of top-level project XML tags with a table of functions...
...
... which makes Project.cpp a bit less dependent on some details of other
classes
This puts Tags.cpp back into the big strongly connected component of the
dependency graph. That will be remedied later when Project.cpp becomes a
low-level file
2019-05-20 21:38:07 -04:00
Paul Licameli
a3edf9f6d7
New AudacityProject::ReadProjectFile for some steps of project opening
2019-05-20 21:38:06 -04:00
Paul Licameli
7fc3adb54d
ThemePrefs.cpp has fewer dependencies...
...
... Send an event via the app that projects listen to for theme update; don't
push it to projects directly.
This frees three files from dependency cycles.
2019-05-18 20:29:25 -04:00
Paul Licameli
d68db39b5c
HelpSystem.cpp has fewer dependencies...
...
... There was no reason to store the help location preferences as per-project
state. Also move the dialog for quick fixes near its only use in
HelpMenus.cpp.
This takes 22 files out of the big strongly connected component, notably
the much used lower level utilities, ErrorDialog and AudacityException.
HelpSystem itself is still in a small cycle with LinkingHtmlWindow.
2019-05-18 20:29:25 -04:00
Paul Licameli
db8c4c5e5a
Global keyboard capture handling into new files, better comments...
...
... and break its compile dependency on CommandManager.h by letting it install
callbacks.
This also removes Objective-C mixed code from CommmandManager.
This also eliminates four inclusions of Project.h!
Capture handler state is also global, not per project, though the
CommandManager's callbacks still do depend on the active project.
2019-05-18 15:14:18 -04:00
Paul Licameli
187e3be0d6
Move SaveWindowSize to Project.cpp & it no longer needs AudacityApp.h
2019-05-17 16:29:04 -04:00
Paul Licameli
d4b0fd1b83
AudacityProject.cpp does not need gIsQuitting from AudacityApp.h
2019-05-17 16:29:04 -04:00
Paul Licameli
0ab29d21e9
Some naming consistency...
...
Prefer "MissingAliasFiles" not other permutations of the words
2019-05-17 06:47:53 -04:00
Paul Licameli
338d7cd164
A class encapsulating the global clipboard
2019-05-17 06:47:53 -04:00
Paul Licameli
548192fcf3
Remove redundant #include-s from .h files...
...
Redundant, because transitively implied. But don't do this for inclusions of
Audacity.h or Experimental.h.
2019-05-16 14:58:34 -04:00
Paul Licameli
56f51d8176
Revert "Remove redundant #include-s from .h files..."
...
This reverts commit b7fe62d17067b4441530dd36b25052cea3ad44b5.
2019-05-16 14:33:55 -04:00
Paul Licameli
b7fe62d170
Remove redundant #include-s from .h files...
...
Redundant, because transitively implied. But don't do this for inclusions of
Audacity.h or Experimental.h.
2019-05-16 14:15:05 -04:00
Paul Licameli
c46fbd919c
rename function as AudacityProject::GetProjectName...
...
... So it does not hide inherited wxWindow::GetName().
And make it const.
2019-04-26 14:10:05 -04:00
Paul Licameli
8f55d55869
Remove two call-through functions to TrackPanel from AudacityProject
2019-04-26 14:05:57 -04:00
Paul Licameli
2b32884596
Remove some unnecessary toolbar related declarations, fix comments
2019-04-23 17:02:04 -04:00
Paul Licameli
34f318cd41
Remove wx/{imaglist,generic/dragimgg,gauge,dynarray}.h from *.h
2019-03-30 12:51:12 -04:00
Paul Licameli
c982cf6a41
Remove wx/intl.h, wx/brush.h, wx/bitmap.h from headers
2019-03-30 11:45:20 -04:00
Paul Licameli
870c08ac06
Remove wx/{log.h, image.h, listctrl.h, utils.h} from headers
2019-03-30 11:21:51 -04:00
Paul Licameli
1a49362e3c
Fix Linux build
2019-03-30 11:13:44 -04:00
Paul Licameli
08c16b6eb7
Remove wx/{html/htmlwin,fileconf,dragimag,debug,dcclient}.h from *.h
2019-03-30 10:53:22 -04:00
Paul Licameli
bcc2e0d13b
Remove wx/frame.h, wx/sizer.h, wx/access.h from headers
2019-03-28 11:21:15 -04:00
Paul Licameli
cfde442bcd
Remove a few small member functions from AudacityProject
2019-03-27 13:32:54 -04:00
Paul Licameli
69962f62d3
Remove AudacityProject::GetScreenEndTime
2019-03-27 13:32:54 -04:00
Paul Licameli
ca5bb78abe
Remove AudacityProject::GetSelection
2019-03-27 13:32:54 -04:00
Paul Licameli
4018b191b4
Remove Get/Set functions for selection bounds from AudacityProject
2019-03-27 13:32:53 -04:00
Paul Licameli
c3aad2e026
Remove wx/event.h from headers
2019-03-27 04:36:51 -04:00
Paul Licameli
71adb89342
Remove non-UI functions in TrackPanelListener
2019-03-27 04:06:15 -04:00
Paul Licameli
40b4361732
Remove wx/arrstr.h from headers
2019-03-26 12:41:44 -04:00
Paul Licameli
02db402b54
Bug2064: ESC key should abort drags in time ruler on Linux...
...
... Reimplement the ESC key handling in TrackPanel and time ruler on all
operating systems so that it does not rely on the focused window, but instead
uses the application-wide event filter.
This includes reversion of 9491605cfc8a7d60117365884fd494996b5ebbaf
2019-03-18 12:43:14 -04:00
Paul Licameli
173a300427
Include nothing before Audacity.h, as comments say we should...
...
... and remove some duplicated inclusions
2019-03-17 21:41:39 -04:00