990c365ebf
ISO C++03 14.2/4 compatibility for clang.
...
http://stackoverflow.com/questions/3786360/confusing-template-error
(hopefully other compilers which didn't mind the missing "template"
are still fine with this)
2016-02-27 21:02:30 +01:00
d3634c5779
Accommodate 'lua' search paths in various projects where they're needed
...
(i.e. so that MSVC can find header files from lua).
2016-02-27 16:29:55 +00:00
269e88671e
Accommodate newly introduced source(s) in our MSVC project (lua)
2016-02-27 16:29:54 +00:00
3c9c30abe1
Accommodate newly introduced source(s) in our MSVC project (libardour)
2016-02-27 16:29:53 +00:00
77abe6c928
Accommodate newly introduced source(s) in our MSVC project (gtkmm2ext)
2016-02-27 16:29:53 +00:00
22ed6fb1f7
Accommodate newly introduced source(s) in our MSVC project (libpbd)
2016-02-27 16:29:52 +00:00
0106047fd2
avoid "show_all" -- closes #6797
2016-02-27 12:53:09 +01:00
e4a7e5a239
improve size and positioning of Tabbable's after being torn off, hidden, reshown, etc
2016-02-26 18:51:32 -05:00
9472200727
fix hang at exit (after freewheeling) with PA-nonblocking backend
2016-02-27 00:50:02 +01:00
e5340dc258
when looking up a key event, switch to the lowercase keyval
...
Our bindings always use the lowercase form. Shift-e generates the GDK keyval for 'E'
rather than 'e' (with the event state including GDK_SHIFT_MODIFIER). So we have to
take this into account when doing the lookup
2016-02-26 15:47:50 -05:00
1bee17d3b9
prevent livelock on NaN, inf control parameters - fixes #6789
...
|: Gtk::Adjustment::value_changed AutomationControl::set_value Controllable::Changed
GUI Event Loop Gtk::Adjustment::set_value :|
TODO: check portability of `isfinite ()`
2016-02-26 14:51:06 +01:00
59aa283f38
remove declaration of non-existent method
2016-02-25 15:07:34 -05:00
a6af411af7
potential mem corruption at session close:
...
ARDOUR::Session::~Session()
ARDOUR::Route::~Route()
ARDOUR::InternalReturn::~InternalReturn()
ARDOUR::Return::~Return()
ARDOUR::Session::unmark_return_id(unsigned int)
boost::dynamic_bitset<unsigned int, std::allocator<unsigned int> >::reference::do_assign(bool)
-> Invalid write of size 4
-> 0 bytes inside a block of size 4 free'd
Thanks to The_CLA for valgrinding this.
2016-02-24 23:36:52 +01:00
0e36f8e2d7
missing include for rand() in self-tests
2016-02-23 22:55:17 +01:00
70222e8133
fix LV2Plugin::requires_fixed_sized_buffers()
...
ARDOUR::Plugin() does not inherit from ARDOUR::Processor(),
the virtual function was never called.
2016-02-23 22:22:19 +01:00
68a8b5613e
Add new sources to MSVC project (libardour)
...
adapted from John Emmas' lua branch
2016-02-23 15:41:26 +01:00
f4553880f6
Implement Lua session-scripts
2016-02-23 15:41:21 +01:00
51385ced3c
Implement Lua DSP processor/plugin
2016-02-23 15:41:08 +01:00
d8008b2db1
libardour lua-script-manager
2016-02-23 15:41:06 +01:00
f0b6c8e111
include static liblua with libardour & prepare bindings
2016-02-23 15:41:02 +01:00
7d7f63363b
basic DSP lib (for lua bindings)
2016-02-22 22:06:47 +01:00
4303fbfc05
add lua search path
2016-02-22 22:06:47 +01:00
f2afb95c5d
add realloc pool to MSVC project
2016-02-22 22:06:47 +01:00
3c87629c7e
realloc-pool unit-test
2016-02-22 22:06:47 +01:00
6cf5e989c0
time-bound memory-pool
...
O(1) realloc() for use with Lua.
A standard malloc/free/realloc API is exposed for testing and other
potential use-cases.
The current configuration it's performs well for lua-metatables
(regular calls to realloc() with varying tiny chunks ~1-50 bytes)
For the use-case at hand it outperforms TLSF.
2016-02-22 22:06:47 +01:00
77ded21da9
Add a VC project for building the new lua branch with MSVC
...
(untested, new paths -- adopted from John Emmas project)
2016-02-22 22:06:47 +01:00
a8ae47ada2
LuaBridge: support argument references via table return
2016-02-22 22:06:47 +01:00
12a58015a3
customize LuaBridge
...
* introduce boost::shared_ptr support
* support enum & const
* allow to add non-class member functions
* STL iterators (vector, list, set, bitset & map)
* support reference arguments (framecnt_t&)
* add support for arrays of basic types (e.g. float*, int*)
* fix compiler warnings
2016-02-22 22:06:47 +01:00
5b40e073e9
add liblua wrapper and build-scripts
2016-02-22 22:06:47 +01:00
2b575e4746
NO-OP whitespace
2016-02-22 22:06:47 +01:00
e98f21dd29
add LuaBridge
...
https://github.com/vinniefalco/LuaBridge
2016-02-22 22:06:47 +01:00
c8973f67a6
add lua-5.3.2
2016-02-22 22:06:47 +01:00
21c3d17ae1
fix merge/rebase mistake
2016-02-22 15:31:26 -05:00
276b820923
fix an error during merge/rebase fixups
2016-02-22 15:31:25 -05:00
c932c56233
cleanup post-rebase-against-master messes
2016-02-22 15:31:25 -05:00
a29fd4542e
a bunch of stuff to make tab/window switching work better, and provide Alt-m to toggle between editor+mixer in a sane way
2016-02-22 15:31:25 -05:00
361c8421df
provide Tabbable::change_visibility(), which has slightly odd semantics that are neither toggle nor one-shot
2016-02-22 15:31:25 -05:00
51d403d485
allow pixbuf_from_string() to return the full size pixbuf, with optional padding
2016-02-22 15:31:25 -05:00
1e537cb539
remove tab-related code for tabbed notebook, add tooltips to new buttons
2016-02-22 15:31:25 -05:00
51879285c5
tab-free tabbed display, part 1.2
2016-02-22 15:31:25 -05:00
e9234c856a
add syntax and scaffolding for MIDI binding maps to refer to selected tracks/busses.
...
THIS DOES NOT WORK YET. Selection information is not available in libardour at this time
2016-02-22 15:31:25 -05:00
e0f32182df
fix tooltip text to accurately describe how to reattach window.
...
This commit incorrectly describes top level menu structure inside a file in libs/gtkmm2ext.
2016-02-22 15:31:25 -05:00
a598c5d4ac
fix inadvertent case change
2016-02-22 15:31:25 -05:00
d2a6fec03a
additional GTKOSX => __APPLE__ changes missed in previous commit
2016-02-22 15:31:25 -05:00
329c096066
add a clarifying comment
2016-02-22 15:31:25 -05:00
b23c5264f2
change operator<< for Keyboardkey to show state in hex
2016-02-22 15:31:25 -05:00
2cc44e7668
no more munging with keyvals/accels on OS X
2016-02-22 15:31:24 -05:00
aa71d60ab9
remove Bindings::ignored_state and use Keyboard::RelevantModifierMask
2016-02-22 15:31:24 -05:00
fbc985f913
set PrimaryModifier on OS X to match the actual bits used by GTK for Command
2016-02-22 15:31:24 -05:00
aba063bfaa
remove Gtkmm2ext::possibly_translate_mod_to_make_legal_accelerator().
...
This is no longer needed because we can set the modifier to the actual bits that GTK uses for Command (META+MOD2)
2016-02-22 15:31:24 -05:00
6991a07902
remove all trace of SAE from source code.
...
This had become incoherent over time, and posed a development hazard and burden going forward
2016-02-22 15:31:24 -05:00
bc487bb4b0
replicate the remove-all-trailing whitespace commit(s) in master
2016-02-22 15:31:24 -05:00
589f2a1ab8
change suffix of keybinding files to ".keys" to avoid conflict with earlier versions.
...
Move some code around that should never have been inside libs/ardour to begin with.
2016-02-22 15:31:24 -05:00
379bc35948
update Mackie code to use new API to get all actions
2016-02-22 15:31:24 -05:00
b944532f67
cleanup Bindings/ActionMap API to get all actions for various purposes
2016-02-22 15:31:24 -05:00
66e0328a93
create a two-way association between an action map and a bindings object, rather than just one way.
...
This helps us lookup bindings when printing out lists for the user
2016-02-22 15:31:24 -05:00
949163f806
more changes to Bindings, Keyboard APIs
2016-02-22 15:31:24 -05:00
67e19c177f
radically change Keyboard/Binding API design to disconnect Gtk::Action lookup from binding definition
...
We need this because we need binding information/objects before all
Actions have been defined.
2016-02-22 15:31:24 -05:00
29b69b0ab4
various fixes for saving bindings state
2016-02-22 15:31:24 -05:00
f028a6bffb
fix memory lifetime management issue
2016-02-22 15:31:24 -05:00
36023db8aa
change/extend/rework Bindings API to allow replacement and provide stub/hook/call to save bindings
2016-02-22 15:31:23 -05:00
04a9ce757c
initial compilable version of saving key bindings with "new" scheme
2016-02-22 15:31:23 -05:00
00933950b7
small rationalization of naming and code for managing plugin GUI visibility
2016-02-22 15:31:23 -05:00
e13322e7f5
bindings: prevent double registration and double signal connection, and provide get_all_actions() methods
2016-02-22 15:31:23 -05:00
d0fc12bd22
remove all action-registering API from Gtkmm2ext::ActionManager
2016-02-22 15:31:23 -05:00
0f17508e6c
changes to Bindings and Keyboard API to support (mostly) GTK-free keyboard bindings
2016-02-22 15:31:23 -05:00
077bb13e94
extend API for tabbable visibility management
2016-02-22 15:31:23 -05:00
d4664434f7
set "close-button" data on Tabbable contents.
...
I tried doing this in the constructor and got a segfault for reasons I don't understand
but probably should
2016-02-22 15:31:23 -05:00
5e0337a4a3
convert CairoIcon into a NO_WINDOW widget that just draws into its parent widget
2016-02-22 15:31:23 -05:00
a48684c692
if _need_bg is set to false in a CairoWidget, then don't actually draw the background
2016-02-22 15:31:23 -05:00
b6c4ae46d0
clean up tabbable state maintainance; drop Gtk::Button unintentionally used for close cross image
2016-02-22 15:31:23 -05:00
d6f3a006d2
scale CairoIcon by Gtkmm2ext::UI::ui_scale
2016-02-22 15:31:23 -05:00
b48c7c0180
revert to thin lines for close cross icon
2016-02-22 15:31:23 -05:00
914af0f0c8
move ui_scale static member from ARDOUR_UI to GtkUI
2016-02-22 15:31:22 -05:00
0819efe27c
remove unused lines
2016-02-22 15:31:22 -05:00
90845af8fa
hopefully get dynamic tabbable menu state right this time
2016-02-22 15:31:22 -05:00
e2dfc10698
thicken up lines of close cross icon
2016-02-22 15:31:22 -05:00
1c41f75488
provide a sigc::signal to track display state changes for a Tabbable
2016-02-22 15:31:22 -05:00
308f6ed828
changes to get show/hide/attach/detach working
2016-02-22 15:31:22 -05:00
fd938d95bf
change/extend Tabbable API to allow for show/hide/attach/detach
2016-02-22 15:31:22 -05:00
8e14496919
use new CairoIcon to add a tab-close "button" to tabs
2016-02-22 15:31:22 -05:00
e026adf4a9
second part of: add new CairoWidget-derived class that does nothing but shown an ArdourIcon.
2016-02-22 15:31:22 -05:00
c06c2c29db
add new CairoWidget-derived class that does nothing but shown an ArdourIcon.
...
Somewhat necessary by placement of ArdourButton class in directory heirarchy. But these are also
much simpler
2016-02-22 15:31:22 -05:00
434ef34229
add tab-closing buttons to tabs.
...
Images are non-scalable, too big and ugly. Next commit ...
2016-02-22 15:31:22 -05:00
347ba94bcd
add ::make_visible() to Tabbable class
2016-02-22 15:31:22 -05:00
436706c8d4
remove debug output
2016-02-22 15:31:22 -05:00
e46b518319
classes derived from WindowProxy are responsible for their own window creation in ::set_state().
...
Fixes a crash reported by A.Prokoudine when opening a session with visible plugin GUIs
2016-02-22 15:31:22 -05:00
37fce09a18
widespread changes to get the new (oldArdour binding scheme to be used for keyboard accelerators
2016-02-22 15:31:22 -05:00
d84f655495
add suggestive tooltips for tabs; remove position argument for Tabbable since it isn't really usable
2016-02-22 15:31:21 -05:00
552e995297
save/restore tabbable state
2016-02-22 15:31:21 -05:00
9f0ea99fac
better way to switch to a tab
2016-02-22 15:31:21 -05:00
03b354a99e
make tabs reorderable
2016-02-22 15:31:21 -05:00
a5150d500d
when tearing off a tab, make the window be the same size as the allocation of the tab
2016-02-22 15:31:21 -05:00
9010262bed
first compilable version of tabbable design.
...
I would have loved to split this apart, but there are just so many interrelated changes,
it makes little sense and would be a huge effort that would break future git bisect
use because so many intermediate commits would not compile
2016-02-22 15:31:21 -05:00
85eee3b09d
compilable version of WindowProxy
2016-02-22 15:31:21 -05:00
a29f76c1c4
initial versions of Tabbable object
2016-02-22 15:31:21 -05:00
df05e97288
first version of Gtkmm2ext::WindowProxy
2016-02-22 15:31:21 -05:00
Adrian Knoth
6fa88273aa
Spelling correction patch from Debian
...
Patch taken (and forward-ported to HEAD) from
<https://anonscm.debian.org/cgit/pkg-multimedia/ardour.git/plain/debian/patches/0100-fix-typos.patch >
2016-02-22 15:13:01 -05:00
André Nusser
1afbdaff58
Fix compilation warnings. (libs part)
2016-02-22 15:11:02 -05:00
86d27a736c
better system for managing kbd focus after cmd-w closing a dialog.
...
Key, Button and Focus In events in the editor+mixer windows cause the respective window to be noted
as the window to which focus should return after a dialog is closed with cmd/ctrl-w
2016-02-22 14:03:55 -05:00