summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-08-26Editor zooming: Config preference to define how much zooming will be easily ↵Ben Loftis
allowed beyond the session_ui_extents()
2017-08-26Editor zooming:Ben Loftis
Add config setting for playhead-scroll-speed. Default to 100% for now, but for new users we might later default it to something slower. If you want to scroll quickly, it is preferred to zoom out first, then scroll.
2017-08-26Editor zooming: Tweak the Summary to stop at right edge, use ↵Ben Loftis
session_gui_extents().
2017-08-26Editor zooming: refactor zoom-limiting code into editor::session_gui_extents.Ben Loftis
2017-08-26Editor zooming:Ben Loftis
New function session_gui_extents() reports the extents of all playlists. ToDo: include region playlists, when they become available. also: slow-down autoscroll (ToDo: make a config variable for this)
2017-08-26Editor zooming: Initialize leftmost_frame, for sessions that start at high ↵Ben Loftis
timecodes.
2017-08-26mp4chaps Lua script: don't clutter global environmentRobin Gareus
2017-08-26Fix too restrictive Lua sandboxRobin Gareus
Don't limit the environment when evaluating bytecode (factory function).
2017-08-26Fix a compiler problem when building 'gtk2_ardour/template_dialog.cc' with MSVCJohn Emmas
When setting up the 'TemplatesImported' signal, these 2 calls appear in the c'tor for class TemplateDialog:- boost::bind (&RouteTemplateManager::init, route_tm) boost::bind (&SessionTemplateManager::init, session_tm) However - '&RouteTemplateManager::init' and '&SessionTemplateManager::init' are in fact the address of the same function. This seems to be causing a problem, either for boost::bind, or MSVC (or both). In earlier builds they were 2 separate functions. So let's put them back that way (since the current code actually crashes the compiler!!)
2017-08-25Remove unneeded testJulien "_FrnchFrgg_" RIVAUD
The for loop will not be executed if |port_connections| is empty, no need to check beforehand.
2017-08-25Secondary clock visibility is a global pref, not a per-session setting.Ben Loftis
2017-08-25OSC: same fix for /select/*Len Ovens
2017-08-25OSC: account for user sending the wrong number of paramters gracefullyLen Ovens
2017-08-25Some fixes for ruler-visibility. Secondary-clock coming soon.Ben Loftis
2017-08-25Templates: attempt to set ruler and clock visibility. Not working.Ben Loftis
2017-08-24Track Templates: tweaks to MIDI Bus description text.Ben Loftis
2017-08-24Allow to send immediate PC messages without closing the dialog.Robin Gareus
Perhaps every change should trigger a PC (without "Apply") button?!
2017-08-24Fix typo in dea8ee7fRobin Gareus
2017-08-24Make clicks on io menu bundles always connectJulien "_FrnchFrgg_" RIVAUD
If a bundle was already connected, a click on the corresponding entry disconnected it, essentially giving toggle semantics to the io menus. This behavior has three problems: — When clicking on a not yet connected bundle, the new bundle replaces any already connected one. This is not consistent with a toggle mode. — It is a less discoverable and less easy way to disconnect a bundle than the already present "Disconnect" menu entry. — Bundles that match the I/O channels only partially (recently added to cater for e.g. MIDI+STEREO tracks connecting to Master) are never considered "connected" because the channels are not connected 1:1. Those will thus never toggle, making the behavior inconsistent. Change the semantics to ensure a bundle is connected on click instead.
2017-08-24Remove all manual accounting of connected user bundlesJulien "_FrnchFrgg_" RIVAUD
IO used to manually keep a list of user bundles it was connected to, but it didn't work correctly: sometimes it didn't notice that a bundle wasn't connected anymore, and the list wasn't correctly persisted across save/reloads among other things. Moreover, it wasn't needed at all, since the user bundles are correctly listed by _session.bundles() and IO already notices they are connected ! Remove all occurrences of |_bundles_connected| and |check_bundles_connected|.
2017-08-24when connecting to sigc signals, use sigc methods, not boost::bindPaul Davis
2017-08-24fix waf template installRobin Gareus
2017-08-23Track Templates:Ben Loftis
* Re-rename Track Wizard to Live Band. * Various ui tweaks to Live Band template script.
2017-08-24Lua Script Example to toggle monitor sectionRobin Gareus
2017-08-24Fix session-open after selecting new, template, then backRobin Gareus
2017-08-23Deploy Session-templatesRobin Gareus
2017-08-23Make the output menu able to connect partial matchesJulien "_FrnchFrgg_" RIVAUD
Use the new partial connection feature of IO::connect_ports_to_bundle.
2017-08-23Make IO::connect_ports_to_bundle able to partially connectJulien "_FrnchFrgg_" RIVAUD
Forward the optional |allow_partial| boolean to |Bundle::connect|.
2017-08-23Make Bundle::connect able to connect only some DataTypesJulien "_FrnchFrgg_" RIVAUD
When |allow_partial| is true, only when the number of channels of a given DataType is the same for both bundles are the corresponding channels connected together. When |allow_partial| is false (the default), the number of channels must match for each DataType (the ChanCounts must be equal) for the connection to be attempted. This also fixes the logic in case two bundles have the same number of channels, or even the same ChanCounts, but not with the DataTypes in the same order (so connecting the ith channel of the bundle to the ith channel of the other bundle makes no sense).
2017-08-23Improve getting a Bundle total channel countJulien "_FrnchFrgg_" RIVAUD
|Bundle::nchannels()| creates a ChanCount on demand, by iterating over the |_channel| member variable. The sum of all |nchannels().n(t)| over all non-NIL DataTypes |t| is thus equal to |_channel.size()|. Consequently, calling |nchannels().n_total()| is a convoluted (and slow) way of getting |_channel.size()|. Add a method |Bundle::n_total()| that directly returns the latter.
2017-08-23Populate strips output menus with a more user-friendly heuristicJulien "_FrnchFrgg_" RIVAUD
Ensure the master bus is the first proposed bundle if it is present. Also propose internal route inputs before physical outs or other software via JACK. Last, but not least, add to the menu not only exactly matching bundles, but also bundles that have the same number of channels than the route output when considering only the DataType we think the user wants to use. This covers both the case of a MIDI+STEREO instrument track connecting to master, and the case of a STEREO track connecting to a MIDI+STEREO vocoder track.
2017-08-23Improve maybe_add_bundle_to_output_menuJulien "_FrnchFrgg_" RIVAUD
Avoid proposing the monitor section in the list if the current route is not the master bus. Also allow the caller to pass a DataType as argument to allow partial bundle match on that datatype only.
2017-08-23Use port enumeration instead of manual indexed loopJulien "_FrnchFrgg_" RIVAUD
2017-08-23Generalise heuristic for user-intended main type of a route's IOJulien "_FrnchFrgg_" RIVAUD
The heuristic currently used to display port connections in a compact user-friendly way only considers Audio and MIDI data types. Replace it by a better heuristic that does essentially the same thing with all DataTypes, assuming they are ordered by likeliness of usage. Currently the result is the same since there are only two DataTypes.
2017-08-23Add a method to get the first DataTypeJulien "_FrnchFrgg_" RIVAUD
Also put a comment about the ordering of DataTypes.
2017-08-23Remove never changing and/or unused argumentsJulien "_FrnchFrgg_" RIVAUD
2017-08-23Use DataType iteration instead of assuming integersJulien "_FrnchFrgg_" RIVAUD
2017-08-23Fix Route-template file suffixRobin Gareus
2017-08-23Example Stereo to 2 x Mono track Lua scriptRobin Gareus
2017-08-23Use new separate_by_channel APIRobin Gareus
2017-08-23Update "separate_by_channel" API & add Lua bindingsRobin Gareus
This breaks compilation (GUI)
2017-08-23Track Templates: remove uninteresting script.Ben Loftis
2017-08-23Use literal for compatibilityRobin Gareus
2017-08-23backends: jack: display playback only devicesStefan Müller-Klieser
When starting ardour using the jack backend, playback only devices currently do not get displayed. Mixing and Mastering only workspaces with e.g. a single USB Dac should be a common use case. Take this use case into account by adding them to the device list. Tested on Linux with jack-alsa.
2017-08-22Track Templates: Add verbose descriptions for the built-in track types.Ben Loftis
2017-08-22Track templates: clean-up widget sensitivity based on selection.Ben Loftis
2017-08-22RouteDialog: implicit "Add (+close)" on <enter> or double-clickRobin Gareus
2017-08-22Reset RouteDialog: name edited by-userRobin Gareus
* after each "Add" operation * when cleaning the name field
2017-08-22Tweak RouteDialog bottom areaRobin Gareus
2017-08-22Track Templates: yet another layout tweak.Ben Loftis