Commit graph

664 commits

Author SHA1 Message Date
Robin Gareus
78d0b2eebb un-hardcode "*.ardour" file filters 2015-01-05 18:36:43 +01:00
Tim Mayberry
02a7bbce76 Fix for Clock updates 2015-01-02 22:07:50 +07:00
Tim Mayberry
b5c9a92a58 Move Timers/Timeouts from ARDOUR_UI into functions in timers.h and use PBD::Timers 2015-01-01 19:04:14 +07:00
Robin Gareus
bec521c6a7 proper default setup and fallbacks for video on windows 2014-12-24 01:36:46 +01:00
Paul Davis
1f0fbea628 reorder members and constructors to ensure null pointers for ARDOUR_UI::{editor,mixer} 2014-12-22 19:48:30 -05:00
Paul Davis
64fa63212f move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration 2014-12-22 13:39:46 -05:00
Paul Davis
0d771999ac expand help menu with various useful entries.
From Georg Kraus. Addresses #5783, and was github pull request #67. Manually applied via .diff because of merge mechanics issues
2014-12-18 11:09:10 -05:00
Paul Davis
f6e88ead01 move theme manager into preferences window 2014-12-15 12:32:41 -05:00
Paul Davis
1e0c1751a5 more DEBUG::Butler output, formatting corrections, and a warning on cerr if capture/playback buffers are too full/empty 2014-12-09 16:36:52 -05:00
Paul Davis
9ac551abab another metric ton of color work 2014-12-08 22:02:38 -05:00
Paul Davis
8f4ab08e20 revert UIConfiguration back to a normal member of ARDOUR_UI 2014-12-07 13:12:48 -05:00
Paul Davis
e9768e934f move creation of UIConfiguration object to precede creation of ArdourUI.
This is pretty kludgy but we need the UIConfiguration object (or any color management object) to be the first to connect to
the ColorsChanged signal.

Might be better to make the UIConfiguration object a delegate for the ThemeManager.
2014-11-26 18:22:22 +02:00
John Emmas
fcd7ec92d4 With printf() / snprintf() etc "%f" actually requests a double, not a float
Let's pass the correct type, since we can't rely on these functions to do intelligent conversion
2014-11-26 09:57:14 +00:00
Robin Gareus
ad739cd018 add some assert() messages.
as hints clang static analyzer "Called C++ object pointer is null"
2014-11-17 03:49:19 +01:00
Robin Gareus
47f4005dbc fix logic (and possible segfault if !editor) 2014-11-17 03:28:33 +01:00
Robin Gareus
533b545295 add popup message and error log for AU crash reports 2014-11-12 13:35:15 +01:00
Robin Gareus
c0a28fca09 add win IRC channel 2014-10-28 02:40:04 +01:00
Robin Gareus
baea04713f combine short periodic timeout functions for windows.
Fixes excessive CPU usage (spinlock instead of sleep/WaitForSingleObject)

MS Windows has a scheduler time-slice of 15ms.
Ardour has two fast timeout functions: The FPS timeout (20-60Hz, clock
video-monitor) and a fast-screen-update (25Hz, meters etc).
They are loosely coupled (async) and scheduled from the main application
thread (gtk main).

Since they're async, gtk schedules them as needed. Even though the actual
period of the separate timeouts is larger. The effective period between
all timeout callbacks is <15ms and the main application thread never idles.
2014-10-25 19:21:15 +02:00
Robin Gareus
730e09ce65 another round of compiler warning fixes 2014-10-23 05:31:40 +02:00
Robin Gareus
c6a3d6bc48 small round of compiler warning fixes 2014-10-23 03:43:04 +02:00
Robin Gareus
aa7fdf82a0 windows: allow loading session with absolute path 2014-10-22 15:22:55 +02:00
Ben Loftis
8b98125ad3 fix various loop-initiation faults 2014-09-15 12:44:45 -05:00
Robin Gareus
01974b5769 API flush static cairo pattern cache
(should probably be cleaned regularly
e.g. meterbridge resize)
2014-09-11 19:30:33 +02:00
Robin Gareus
5dd5bb7830 make valgrind output a bit more readable. 2014-09-11 03:04:12 +02:00
Robin Gareus
eb8ae5053f minimize rebuild after reconfigure:
Don't add VERSIONSTRING to the c-flags of
gtk2_ardour, use a dedicated file instead.
2014-09-06 21:18:08 +02:00
Robin Gareus
3a75fab244 speed up session load (display updates) 2014-09-06 12:52:29 +02:00
Robin Gareus
dfbc9da79a update clocks and video-frames at FPS 2014-08-30 20:57:27 +02:00
Robin Gareus
16443f44a2 add an idle callback at FPS 2014-08-30 20:57:22 +02:00
Ben Loftis
e7a15027e8 refactor flat_buttons into cairowidget, and add a canvas-like convenience function for setting cairo color with a Gtk::Color 2014-08-27 10:55:01 -05:00
Ben Loftis
74f313dd6b Rationalize ArdourButton and lots of associated theming issues.
ArdourButtons now have a "pushed" animation.
The gradient is now implemented in the button, rather than providing 2 colors in the theme, which was burdensome.
Lots of code cleanup in ArdourButton.  Removed several unnecessary flags.
Refactor more stuff into route_ui.
2014-08-22 11:51:20 -05:00
Ben Loftis
b128271f29 consistently use mixed-case labels 2014-08-01 14:31:18 -05:00
John Emmas
74ec58c12e Add a couple of function calls so that Ardour will perform some basic cleanup when the user exits
Up until now we were relying on various d'tors to do this cleanup for us. However, because we were calling 'exit()' (to terminate the program) those d'tors were never getting called. We should probably review the use of exit() as a termination strategy.
2014-07-15 13:19:33 +01:00
Paul Davis
15fa465013 add comment/doxygen doc 2014-07-10 08:14:41 -04:00
Ben Loftis
9f4a00fa89 add mixbus profile which removes the tearoffs 2014-07-09 15:12:05 -05:00
Paul Davis
ec0b7cc1da add new TRX-only function for unusual global-record-enable semantics 2014-07-09 12:07:05 -04:00
Paul Davis
b64634e32e move location of menus file loading and call ActionManager::enable_accelerators() to get all actions setup for binding options 2014-07-04 07:49:26 -04:00
Ben Loftis
555a5d6348 lots of keybinding changes. added a new action to allow removing markers at the playhead location. numpad now allows you to access marks higher than 9. to locate to a marker, use the numpad decimal to start and end the operation - for example press .19. to locate to marker 19. also added alternate bindings for redo, delete, and several other alternates that will be needed in subsequent commits. tab is not working, using either Tab or nabla in the binding.in file 2014-07-03 17:50:14 -05:00
Ben Loftis
043b76569d fix the naming and behavior of always-play-range to match the button, which is follow-edits. when you select a range, the playhead should jump to the start of the range and begin to play the selection. BUT (unlike previous implementation) if the user wants to relocate the playhead, then that should be allowed. The user should always remain in charge of the playhead location. NOTE: your previous config setting will be invalidated. You must re-save a session to overwrite with the new config variable 2014-07-03 12:56:33 -05:00
Robin Gareus
c52cb37bf2 suspend route redisplay for (rec-en, solo, mute and monitor) batch changes 2014-06-29 02:52:56 +02:00
Robin Gareus
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
Tim Mayberry
0e96d84079 Change PBD::PathScanner API to return results by value to avoid inadvertent memory leaks 2014-06-17 21:13:05 +10:00
Robin Gareus
12cf9d5be8 fix pathscanner / stl_vector related memory leaks 2014-06-15 13:24:39 +02:00
Robin Gareus
7b64448dbb simply future debugging of exit at start. 2014-06-14 16:25:18 +02:00
Colin Fletcher
be7da2e952 Fix opening of recent sessions with mismatched directory & file names
When populating the list of recent sessions, and there's only one session
file in the session folder, don't assume that the base name of the session
file is the same as the name of the session directory.

Allows loading sessions that were created with trailing spaces in their
names from the recent sessions list, and also helps in the case that the
session file (or directory) was renamed.

There are actually two implementations of the 'recent sessions' chooser:
this applies to both. I suppose a useful project one of these days
would be to unify the two...
2014-06-12 23:20:06 +01:00
Paul Davis
e8d3c16187 remove unused variable 2014-05-19 14:00:36 -04:00
Robin Gareus
1ea6321ad5 update GUI while waiting for video server to respond 2014-04-20 02:51:27 +02:00
Paul Davis
3131ab8bbd new transport option, "loop-is-mode" which optionally changes the role of the "play loop" button.
If enabled, then the button simply changes the behaviour of the "play" button rather than actually starting playback. If disabled
transport behaviour should be unchanged from before.
2014-04-17 09:47:06 -04:00
Robin Gareus
15c5d12321 clean up 6cc2812f2e (interim vst fixes) 2014-04-14 15:10:28 +02:00
unknown
6cc2812f2e interim vst fixes 2014-04-11 14:23:29 -05:00
Paul Davis
32fc7a81c5 clean up use of JACK name in messages 2014-04-10 10:21:47 -04:00