1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-25 16:48:44 +02:00

71 Commits

Author SHA1 Message Date
Paul Licameli
4d09705a73 Change XO to XXO in many more places, with no effects at all...
... because the two macros have the same expansion, and are both checked for
in the --keyword arguments passed to msgfmt by locale/update_po_files.sh.

This commit makes ONLY such changes, and comments in Internat.h.  It is big
but quite harmless.

The intention is to introduce a type distinction in a later release, by defining
XXO differently.  XXO is used where & characters in strings (for hotkeys of menu
items or control prompts) are permitted, XO where not.
2020-05-22 13:07:50 -04:00
Leland Lucius
668bcfc82e Bug 2315 - Mac: Keyboard Preferences is unusable until scrolled.
Second attempt with this bug.  I see a pattern emerging for my
"fixes"!!! :-(
2020-03-08 23:18:51 -05:00
Leland Lucius
e994141c5f Fix for refresh issue on several preference panes
See bug #2315, but this should be review and removed
after moving to wx3.1.3.
2020-02-25 09:18:51 -06:00
Paul Licameli
a333b7d35a Redefine PrefsPanel::Registration with new Registry system...
... preserving the existing ordering of pages with a combination of
preferences and ordering hints
2020-02-01 07:13:03 -05:00
Paul Licameli
e110f66ff8 PrefsPanel classes registered; PrefsDialog.cpp independent of headers 2020-01-20 00:19:13 -05:00
Paul Licameli
c9a9c06bd0 Pass AudacityProject * into preference panel factories 2020-01-04 12:37:57 -05:00
Paul Licameli
747c35645a TranslatableString for checkbox captions 2019-12-23 19:15:34 -05:00
Paul Licameli
455d3185a8 TranslatableString for list control column headers, menus 2019-12-23 19:02:21 -05:00
Paul Licameli
b404eb7800 TranslatableString for static text box captions 2019-12-23 18:52:37 -05:00
Paul Licameli
1944ac2040 TranslatableString for labels of ShuttleGui buttons 2019-12-23 15:35:48 -05:00
Paul Licameli
dc39f22442 AudacityMessageBox takes TranslatableString message and caption 2019-12-20 21:32:50 -05:00
Paul Licameli
618fee21ec TranslatableString for ComponentInterface::GetDescription() 2019-12-16 14:21:57 -05:00
Paul Licameli
681950fc61 TranslatableString for names, labels, tooltips of wxPanelWrapper...
... and Grabber too
2019-12-16 10:58:05 -05:00
Paul Licameli
d32d464471 Uses of TranslatableString in src/import 2019-12-14 01:48:15 -05:00
Paul Licameli
96291c5476 Remove second argument of AddWindow(), use Position() instead 2019-12-02 22:01:22 -05:00
Paul Licameli
ae353fe61f Specify list control columns and styles all in one call 2019-11-28 14:24:44 -05:00
Paul Licameli
d4ffbe0d68 Group setting path & default value arguments of Tie...() functions 2019-11-28 13:26:23 -05:00
Paul Licameli
f86403378b Move AudacityMessageBox to its own files...
... breaking cycles among low-level files introduced by 273ba9f
2019-05-20 14:48:36 -04:00
Paul Licameli
bf005c0dec PrefsPanel::Factory is a specialization of std::function...
... We don't need to define a class for it
2019-05-16 12:14:51 -04:00
Paul Licameli
f6adeed47b Remove some unnecessary #include directives 2019-05-15 14:14:18 -04:00
James Crook
3b312f9d1b Add ComponentInterface to PrefsPanel
This is so that we can have plug-in prefs panels loaded from a dll, and introspect what we have.
2019-04-15 13:26:18 +01:00
Paul Licameli
3002aa5362 Remove Tags.h, Grid.h from headers 2019-03-31 16:01:02 -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
Paul Licameli
2a1bf3a77f More std:: style for wxString...
... Remove all uses of the three-valued Cmp comparison member function, which
returns 0 for equality, except in one place.  Use operators == and != instead.

(C++20's spaceship operator hasn't landed here yet!)
2019-03-10 14:45:20 -04:00
Paul Licameli
2db49dc1f0 Use standard library style members of wxArrayString (and wxString) ...
... which will make it easier to change the types of those containers to
std::vectors of other string-like classes

for wxString,

IsEmpty => empty
Clear => clear
Alloc => reserve

for wxArrayString,

Count => size
GetCount => size
IsEmpty => empty
Add => push_back
Clear => clear
Empty => clear
Sort => std::sort (only with default comparator)
SetCount => resize
Last => back
Item => operator []
Alloc => reserve
2019-03-10 14:43:57 -04:00
Paul Licameli
3b32d39b54 Remove wxArrays of pointers 2018-02-21 19:33:32 -05:00
Paul Licameli
228388a63c Follow wxWidgets argument conventions for PrefsPanel factories 2018-02-21 19:21:04 -05:00
Paul Licameli
4644b5cb16 Simplify condition 2018-01-26 10:12:14 -05:00
James Crook
a019addafb All preferences in scrollers
We now do not need to worry about the preference dialogs getting too big for small screens.
2018-01-17 20:41:40 +00:00
Paul Licameli
ccb4bbac33 Translate "Message" as default title of message box...
... This required a sweeping change of all calls to wxMessageBox!  But it seems
safe to me, despite the great number of touched files.
2018-01-01 17:50:02 -05:00
Paul Licameli
66d5861360 i18n-hints 2017-11-06 11:01:05 -05:00
Paul Licameli
48202284b2 Change virtual function interface of PrefsPanel 2017-06-25 11:42:20 -04:00
Steve Daulton
e16f6f9221 Add small help button to Prefs pages 2017-05-14 19:02:36 +01:00
Paul Licameli
5036583549 Fewer inclusions of AudacityApp.h 2017-03-17 17:52:24 -04:00
James Crook
0f5260e600 Bug 1512 - Extended Import: Crash dragging an importer when there are no rules 2016-09-12 20:49:49 +01:00
Sven Giermann
ce09f4b883 Make RuleTable scrollable & DnD move instead of copy
Having lots of rules in RuleTable may lead to an assertion failure on opening preferences dialog:

> assert "sz.x <= 1000 && sz.y <= 750" failed in
> PrefsDialog::PrefsDialog(): Preferences dialog exceeds max size

This change will make the RuleTable scrollable (as it is/was when creating many rules) instead of expanding the dialog size.
Further I had to fix the calculation of the clicked row from the given coords. Even without this proposed change for scrolling, the calculated row has always been the one above the clicked row - maybe this changed in wxWidgets 3.0.
Now it uses CalcUnscrolledPosition() which seems to work fine even without scrolling.

Last change is for drag and drop mode: rules are not being copied, but moved on dnd - I changed this to reflect this mode on the cursor while dragging an item.
2016-09-12 17:09:42 +01:00
Paul Licameli
8226441210 use vector of smart pointers to ExtImportItem objects 2016-08-11 11:51:33 -04:00
Paul Licameli
256a595d0f Use const 2016-08-11 11:51:33 -04:00
Paul Licameli
8572b425c1 More safenew 2016-08-10 11:05:51 -04:00
Paul Licameli
70bd46b8ad travis 2016-04-09 22:55:15 -04:00
Steve Daulton
f536354330 Fix by Matěj Fiala for bug 1168
Thanks to Matěj Fiala for this fix.
2016-03-24 10:02:20 +00:00
Paul Licameli
97a69e9ccc A few more safenew 2016-02-18 07:17:26 -05:00
Paul Licameli
df6a7c5464 More uses of safenew for classes we derive from wxWindow classes...
... Also removed some unnecessary deletes of widgets that are managed by parent
windows
2016-02-14 20:39:28 -05:00
Paul Licameli
8399effc45 Table-driven construction of Prefs dialog. A factory for each kind of panel...
... and maybe a future plug-in protocol to break compilation dependency on
all of the PrefsPanel subclasses.
2015-07-26 19:41:20 -04:00
lllucius
1eeb4d979a The fabled realtime effects...
I've made it where you can enable and disable via experimentals:

EXPERIMENTAL_REALTIME_EFFECTS
EXPERIMENTAL_EFFECTS_RACK

You will notice that, as of now, the only effects currently set up for
realtime are VSTs.  Now that this is in, I will start converting the
rest.

As I start to convert the effects, the astute of you may notice that
they no longer directly access tracks or any "internal" Audacity
objects.  This isolates the effects from changes in Audacity and makes
it much easier to add new ones.

Anyway, all 3 platforms can now display VST effects in graphical mode.
Yes, that means Linux too.  There are quite a few VSTs for Linux if
you search for them.

The so-called "rack" definitely needs some discussion, work, and attention
from someone much better at graphics than me.  I'm not really sure it should
stay in as-is.  I'd originally planned for it to be simply a utility window
where you can store your (preconfigured) favorite effects.  It should probably
revert back to that idea.

You may notice that this DOES include the API work I did.  The realtime effects
were too tied to it and I didn't want to redo the whole thing.  As I mentioned
elsewhere, the API stuff may or may not be very future proof.

So, let the critter complaints commence.  I absolute KNOW there will be some.
(I know I'll be hearing from the Linux peeps pretty darn quickly.  ;-))
2014-10-26 03:24:10 +00:00
benjamin.drung@gmail.com
277932dccb Remove trailing spaces. 2014-06-03 20:30:19 +00:00
stevethefiddle@gmail.com
b216e802a3 Bug 442 - Extended Import segfault pressing Move Rule Up when there are no rules or filters. 2014-05-17 13:33:41 +00:00
martynshaw99
4ce2643d5f Remove the
// Indentation settings for Vim and Emacs
etc. lines from all files, as Campbell's patch (except for other changes to Languages.cpp)
2013-09-24 00:14:37 +00:00
james.k.crook@gmail.com
dba81b3f1c Cleanup: Fixed lots of trivial MSVC warnings. 2013-08-25 21:51:26 +00:00
windinthew
308cef62ae Add a few missing access keys 2012-08-29 06:27:51 +00:00