13
0
Commit Graph

724 Commits

Author SHA1 Message Date
1cd366b606 pixfader bg has reverse gradient from fg 2014-09-02 15:58:55 -05:00
9ecdb765aa don't show 'unity-line' (default value) for barcontrollers 2014-09-02 16:05:54 +02:00
3b9b65879a Barcontroller: no double expose when text chages 2014-09-02 16:05:21 +02:00
ecf5d5f137 tweak pixfader:
* update reserve so that round corners don't overlap
* draw complete 1px outline
* add API to hide/show the unity line
* don't show unity line at either end
* allow to shrink when the font-scaling changes
2014-09-02 16:00:24 +02:00
efb03f4596 unify BarController with Slider/Pixfader. 2014-09-02 05:14:19 +02:00
41ccf6a806 clean up pixfader API, prepare for merge w/BarController 2014-09-02 05:14:14 +02:00
3bfe91c010 remove cruft from SliderController 2014-09-02 05:14:06 +02:00
9f0caacc5c rework pixfader:
* re-introduce static pattern cache
  (cairo's cache is not nearly large enough for A3 + plugins)
* only use cairo_clip on rectangles (not arbitrary paths
  -> major performance boost
* re-add fader pixel reserve
* fix mouse + scroll interaction
* fix unity line display (1px wider, brighten by 150%)
* cache text size
* fix various other issues and consistent whitespace

This reverts large parts of commit d439e93b1e.
2014-09-01 22:02:51 +02:00
885f1c71ec Remove unused variables (fix warnings). 2014-08-31 17:54:16 -04:00
154621978a track-header fader tweaks:
* align height to button-height.
* align width to label text-entry
* increase min width
2014-08-31 21:32:22 +02:00
50c3177a5e remove frame from barcontroller 2014-08-31 19:36:41 +02:00
ca97569c55 disconnect pixfader style-change signal in dtor (amend 5a688b672) 2014-08-30 20:58:03 +02:00
5a688b672c pixfader: use parent's background color 2014-08-30 04:19:42 +02:00
f5533213c0 fix some compiler warnings 2014-08-30 02:26:36 +02:00
585fa45b62 fix cairo widget background 2014-08-30 01:43:10 +02:00
40c3e4122c try a different method of text display on automation bars 2014-08-29 16:35:20 -05:00
b0477f7f1e fix plugin bypass button action 2014-08-28 15:29:18 -05:00
3f297f7dab Fix ArdourButton event sequence.
Always give ArdourButton a chance to handle Press or Release events if you override them.
This allows ArdourButtons to do the "Pressed" animation
And it now correctly eats the event so button clicks don't select the channelstrip.
2014-08-28 10:31:57 -05:00
65715dd298 Make sure all our VC projects agree that the product is called 'Mixbus3' (as opposed to just 'Mixbus')
It'd be nice if we could use 'ARDOUR::config_dir_name' for this purpose (or perhaps 'PROGRAM_VERSION'). However, neither is implemented widely enough at present to make this practical. Keep an eye on them though, as possible future strategies.
2014-08-28 07:57:20 +01:00
d439e93b1e Standardize drawing of PixFader and BarController; implement flat_buttons and prelight.
Prepare for using Controllable interfaces, instead of passing in Adjustments.
ToDo:  reimplement image caching in a standardized way across widgets
2014-08-27 11:58:09 -05:00
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
a7226133a9 refactor _grabbed into cairo_widget 2014-08-22 11:49:59 -05:00
45afed5e9a Modify our VC project files to work with msvc32-fixup.pl 2014-08-04 09:02:17 +01:00
b75b88a1eb Use text to specify combo box padding for better font/display tolerance.
Consistent mixer strip button height.

The latter works by setting all the button size request heights to the
calculated height of the alphabet.  Thus, all buttons of the same class will be
the same height regardless of their actual text.
2014-07-30 18:30:42 -04:00
df2a8fccc7 disallow selection of the fader and meter processor entries 2014-07-28 10:08:26 -05:00
67788b7136 monitor knobs tweaked to better match the theme of other buttons 2014-07-15 14:58:43 -05:00
928881b24a Update vcproj files for changed LILV config define. 2014-07-15 15:50:12 -04:00
8859ebe56e add Gtkmm2ext::Keyboard::reset_bindings() 2014-07-10 11:04:04 -04:00
b9c53ea395 add std::string variant of set_size_request_to_display_given_string() 2014-07-09 16:48:36 -04:00
08b1a9d520 add ActionManager::enable_accelerators(), which takes all known Actions and registers them via the UIManager as accelerators.
This makes them available for use with key bindings/shortcuts/accelerators even if they have no proxy widget
2014-07-04 07:48:41 -04:00
f147846863 add ability to save current action sensitivities and restore them, and to disable all action sensitivity.
This is needed to be able to lock the application fully on OS X, where the global menu bar would still allow interaction
even when a modal dialog is displayed.
2014-06-24 09:56:16 -04:00
cb6934a189 Remove unused header includes 2014-06-17 21:30:51 +10:00
36be1a3a9b plug some leaks 2014-06-15 13:24:41 +02:00
dada765e7a Include stdint.h for int64_t type 2014-06-07 13:49:12 +10:00
55009368c5 allow public access to CairoWidget::render() 2014-06-05 12:04:41 -04:00
4347ceb173 fix for OSX 10.0/clang (missing symbol) by cth 2014-05-23 20:49:21 +02:00
030a8f189d yet another gettimeofday() removal (glibmm idle) 2014-05-16 18:34:59 +02:00
f075981330 Bug fix imported from Mixbus2 (SVN r11025)
Fix a crashing bug when trying to launch in a non-English locale (possibly only affects Windows)
2014-05-10 08:35:27 +01:00
1b989a93c2 remove redundant os.path.join() calls when specifying install path as bld.env['LIBDIR'] 2014-04-28 21:18:02 -04:00
058986f77b finish unfinished work at basing all install paths on the program name 2014-04-28 21:11:08 -04:00
unknown
6cc2812f2e interim vst fixes 2014-04-11 14:23:29 -05:00
077a194430 Add the main VC project files for building Ardour3 with Microsoft Visual Studio
Note that there's no 'VS Solution' file at present and some targets haven't been built yet (e.g. 'fst')
2014-04-08 09:49:35 +01:00
abab819bb3 Avoid some ambiguous calls to 'floor()' which were upsetting MSVC 2014-03-21 18:24:36 +00:00
9d7efe7865 tweak meter-peak hold when using LED-striped meters 2014-03-21 14:15:38 +01:00
ab44e41dfd change the meters into CairoWidget, add expose_area to CairoWidget::render() 2014-03-20 23:50:40 +01:00
3e4278a0fb g_close() is only available in select versions of glib; fix up non-standard use of glib/cerr to report errors and other related mess 2014-03-17 10:16:45 -04:00
96244e2afa Close a temporary file as soon as we know we've created it (the function which needs the file will re-open it itself) 2014-03-15 14:42:20 +00:00
f05fe6a3fb removed duplicated (and dangerous) call to close(2) 2014-03-14 15:16:15 -04:00
2fc52ec5fd paths dialog: use selection as default when adding new dirs 2014-03-08 18:28:16 +01:00
e4e6010cd4 add on_name_changed() virtual method to CairoWidget
If a CairoWidget does not a GtkRC-defined style, then changing its name does not trigger on_style_changed(). Since we want to use CairoWidget::set_name()
to trigger changes in the rendering of a widget, this is ... bad. Adding on_name_changed() provides a workaround for that.
2014-03-06 09:44:33 -05:00
76fb7278dd paths-dialog gtkmm-2.20 compatibility (part two) 2014-03-02 22:51:04 +01:00
f303c9ebb2 paths-dialog gtkmm-2.20 compatibility 2014-03-02 22:38:29 +01:00
e6c3cece64 remove recently added conflation of mingw64 and msvc with respect to symbol export 2014-03-02 14:59:08 -05:00
c626e83a64 ardour now requires export visibility macros for all added classes 2014-03-01 16:17:33 -05:00
19395ac258 when mingw is mingw64, it appears that we need to use __declspec() and not __attribute__((visibility)) for export control 2014-03-01 15:16:39 -05:00
597db6421a re-work VST paths configuration.
environment vars provide the "default", but are no longer
relevant once ardour-internal paths are configured.
2014-03-01 01:01:42 +01:00
a5d7bf0f24 path-dialogue: check for and disallow duplicates 2014-02-28 17:48:21 +01:00
3cf5dcb64c move Paths Dialog to libgtkmm2ext 2014-02-28 00:05:47 +01:00
f8ed1bbcf4 i18n updates (specifically .de from edgar a, but also contains results of ./waf i18n 2014-02-10 12:19:43 -05:00
25a6296f86 Merge branch 'windows+cc' into cairocanvas 2014-01-20 18:18:21 +00:00
b5e9e7c04c 'libs/gtkmm2ext' - DLL visibility stuff and associated changes needed for building with MSVC. Currently includes debugging information and things that are just commented out until we have known compatibility with the other platforms (i.e. contains stuff to be removed at a later date) 2014-01-20 17:01:58 +00:00
5451b5fb13 remove unused static member from MouseButton 2014-01-20 11:33:28 -05:00
016a9cc533 add Gtkmm2ext::event_type_string() 2014-01-16 10:14:42 -05:00
5062a00c7d move -fvisibility=hidden to the top of the source tree, and remove its internal use; use libtimecode as a shared lib again 2014-01-12 15:40:47 -05:00
658bb3ccd4 finished merge of cairocanvas with windows and windows+cc branches 2014-01-10 17:11:10 -05:00
3020b224fa Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there 2014-01-10 16:07:57 -05:00
d15fda6d75 fix merge errors with master 2014-01-10 14:53:03 -05:00
04ad07babf add [missing] left_half_rectangle util 2014-01-09 20:48:04 +01:00
36c233fe6c Merge branch 'master' into cairocanvas 2014-01-07 21:37:48 -05:00
7eca991971 fix fader default-value line position 2014-01-05 13:09:08 +01:00
d89573f8e7 update slider rendering & set style for faders
* render background -- outside of rounded corners
* visually align unity-location with fader at 0.
* sharp lines (no more AA blur) x/y offset, radius
2014-01-05 13:07:31 +01:00
e8e4e677aa processor drag box only 2014-01-04 05:43:20 +01:00
52d6cbc1e9 fix PixFader size allocation
previously faders in the processor box were only sized correctly
after the 2nd iteration: allocate -> request -> allocate
2014-01-04 05:42:31 +01:00
10c8b48235 tweak design of time axis view item name text handling 2014-01-02 14:29:07 -05:00
b0e4f81eb3 merge exportvis branch into cairocanvas, to reduce the number of "floating" branches.
Still need to add API export/visibility macros for the canvas library.
2013-12-27 14:29:06 -05:00
3a885d6177 Only use __declspec(dllimport/dllexport) for MSVC compiler
Use the gcc visibility attributes when building with the MinGW compiler(gcc).
GCC also supports the __declspec syntax but it will not compile at the moment
until the issues(which may not even be exactly the same issues as with MSVC)
are resolved.
2013-12-05 21:11:18 +10:00
8648a8a13b fix up wscript/build issues in exportvis after merge with master 2013-12-03 11:51:25 -05:00
08371ae2cf resolve merge with master (?) 2013-11-26 10:24:51 -05:00
fa22520fd2 Merge branch 'master' into cairocanvas 2013-11-25 09:26:35 -05:00
3ce39cc410 update .po files with --no-fuzzy-matching in use 2013-11-05 11:15:46 -05:00
ea1ccb869a fix merge with master 2013-10-31 13:16:51 -04:00
4316eda89f remove fuzzy and obsolete translations 2013-10-23 20:01:23 +02:00
f85c67501c reverse the visibility.h files assumptions that we don't build shared libs by default
This avoids having to define define LIBFOO_DLL=1 all over the place. If we ever go with static libs we will
need to define LIBFOO_STATIC=1 but hopefully in some central location like the top level wscript.

Oh, and I also dropped support for gcc older than version 4.x because ardour will already not build
on such an old version.
2013-10-18 11:50:44 -04:00
b855e5f322 Merge remote-tracking branch 'remotes/origin/exportvis' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/wscript
	libs/ardour/ardour/audioregion.h
	libs/ardour/ardour/debug.h
	libs/ardour/ardour/directory_names.h
	libs/ardour/ardour/filesystem_paths.h
	libs/ardour/ardour/session_event.h
	libs/gtkmm2ext/gtkmm2ext/utils.h
	libs/panners/1in2out/wscript
	libs/panners/2in2out/wscript
	libs/panners/vbap/wscript
	libs/pbd/pbd/debug.h
	libs/pbd/pbd/file_utils.h
	libs/pbd/pbd/pathexpand.h
	libs/pbd/pbd/ringbuffer.h
	libs/pbd/pbd/ringbufferNPT.h
	libs/pbd/pbd/search_path.h
	libs/pbd/pbd/stacktrace.h
	libs/pbd/pbd/uuid.h
	libs/pbd/pbd/uuid_boost.h
	libs/surfaces/control_protocol/control_protocol/basic_ui.h
	libs/surfaces/control_protocol/control_protocol/control_protocol.h
2013-10-18 10:03:22 +01:00
2fab8182cc add -fvisibility=hidden to libgtkmm2ext, and make things work 2013-10-17 14:36:41 -04:00
f3d2ca0d9a get everything compiling with libardour built using -fvisibility=hidden 2013-10-17 12:41:28 -04:00
08fbc53d52 add new visibility macro headers omitted from previous commits 2013-10-17 12:41:11 -04:00
15471ca7dd add export control to libgtkmm2ext 2013-10-17 11:26:01 -04:00
e5888d3983 merge with master and fix 2 conflicts 2013-10-16 22:06:56 -04:00
fb313fb174 Merge branch 'master' into windows 2013-10-16 21:57:17 -04:00
75b933eadb Merge remote-tracking branch 'remotes/origin/master' into windows+cc 2013-10-16 15:55:59 +01:00
56fa4d9045 update russian translation (again) 2013-10-15 14:03:59 -04:00
fa71d82dda Merge branch 'windows' into windows+cc 2013-10-11 18:23:53 +01:00
2a6a16f980 merge with master, fixing conflicts in 3 wscript files 2013-10-09 14:00:42 -04:00
5265ceec51 change tortured GtkUI startup process into something just a little more sane, and remove "stopping" code since that belongs in a destructor 2013-10-07 20:27:04 -04:00
19bb2b33a8 Merge remote-tracking branch 'remotes/origin/cairocanvas' into windows
Conflicts (hopefully resolved):
	gtk2_ardour/marker.cc
	gtk2_ardour/midi_region_view.h
	gtk2_ardour/region_gain_line.h
	gtk2_ardour/utils.cc
	gtk2_ardour/video_image_frame.cc
	gtk2_ardour/wscript
	libs/backends/jack/wscript
2013-09-21 09:17:25 +01:00
e5c426ed41 Merge branch 'windows' of git.ardour.org:ardour/ardour into windows 2013-09-18 10:16:40 +01:00
6b1261ed30 'libs/gtkmm2ext/idle_adjustment.cc' - Add a missing header file 2013-09-18 10:02:20 +01:00
5e0e41e068 Merge branch 'master' into cairocanvas 2013-09-16 22:11:50 -04:00
fb45fdc052 fix conflicts and merge with master 2013-09-16 22:11:06 -04:00
710ee36eaa a few DEBUG_TRACE improvements 2013-09-16 22:02:36 -04:00
7a30e63eaa fix merge conflicts with master 2013-09-14 16:42:40 -04:00
2f3c62c5da 'libs/gtkmm2ext' - Minor modification to prevent MSVC from complaining about a malformed comment 2013-09-04 15:46:14 +01:00
e99a85ac92 'libs/gtkmm2ext' - Add the file 'gtkapplication_win32.c' to complement gtkapplication_x11 and gtkapplication_quartz 2013-09-04 15:43:35 +01:00
d074bc586e Merge branch 'master' into audioengine 2013-09-03 17:41:49 -04:00
0013feddbf Merge branch 'master' into windows 2013-09-03 08:34:27 -04:00
66292718a1 improve scroll and drag behaviour of volume-controller knob 2013-09-01 03:19:13 +02:00
dd0a1cd846 fix keyboard interaction with volume knobs (monitor section) 2013-08-31 20:37:02 +02:00
9482702bdc 'libs/gtkmm2ext' - Compiler specific includes 2013-08-26 17:47:28 +01:00
316b72eb0e 'libs/gtkmm2ext' - Main body of changes required for building with MSVC (mostly #includes and casting) 2013-08-26 17:45:18 +01:00
c1a25550d1 'libs/gtkmm2ext' - Use 'std::vector' instead of dynamically sized arrays (required to be buildable with MSVC) 2013-08-26 17:28:03 +01:00
9a877a54e8 'libs/gtkmm2ext' - Remove "using namespace Gdk;" to avoid confusion (in 'fastmeter.cc') over whether we want namespace ::Cairo or namespace Gdk::Cairo 2013-08-26 15:43:20 +01:00
ee1b49f87e fix merge conflicts from master 2013-08-24 12:18:06 -04:00
1421a34e52 pot/po file updates caused by waf i18n 2013-08-24 11:46:45 -04:00
7fe7e7ad4b update czech translations from pavel fric 2013-08-15 14:55:10 -04:00
2de09888b6 some const_cast<> additions for OS X where gcc believes that volatile int* means const int* 2013-08-14 12:40:49 -04:00
6b02d50d5e clean up some valgrid "Uninitialised value was created by a heap allocation" wanings 2013-08-08 15:26:18 -04:00
69c6ef1aa1 initialize some uninitialized values 2013-08-08 15:26:18 -04:00
b6b614acac minimize meter-peak re-draw area 2013-08-08 15:26:18 -04:00
82e1d9655f use 3px for peak-hold in LED mode -> display 2 bright lines 2013-08-08 15:26:16 -04:00
3098e5963c tweak meter-LED style 2013-08-08 15:26:01 -04:00
11c49ab8d1 cache shaded meter-background regardless of color
previously, shaded patterns were assumed to have different colors as well.
2013-08-08 15:26:01 -04:00
2bdd29d3ac fix meter background redraw issue #5601 2013-08-08 15:26:01 -04:00
12c9055659 [re]implement horizontal meter 2013-08-08 15:26:01 -04:00
ba8742edd1 align gradient with meter-metrics 2013-08-08 15:25:40 -04:00
d10b712897 increase saturation of meter-shader 2013-08-08 15:24:49 -04:00
bc66985710 allow to en/disable shade and LED meter style 2013-08-08 15:24:49 -04:00
1da655c2eb Fix special handling of 'zoom vertical' scroll wheel modifier key.
gtkmm2ext/keyboard.cc has a special case to emit a signal on the key-up of
the modifier key used to adjust track heights in conjunction with the
scroll wheel, so that the same track continues to be resized even when
it's shrunk to no longer be under the mouse cursor. However, this code
assumed that the modifier key for this was <Shift>.

Fix it to use the event->state bit corresponding to
ScrollZoomVerticalModifier instead, and rename the relevant functions to
clarify that it's the 'zoom vertical' modifier key they're dealing with.

Partially fixes #5610.
2013-08-08 15:24:15 -04:00
dbe31bcf22 add a stripe-pattern to the meters 2013-08-08 15:23:10 -04:00
a4edd1ed7a possible fix for http://tracker.ardour.org/view.php?id=5586 2013-08-08 15:23:10 -04:00
e3978edabb add option to disable cairo-RGBA overlays for meters. 2013-08-08 15:23:09 -04:00
a0ac0dca85 implement visual-sensitivity (gray out) for faders
Note: bar-controller sensitivity state is not yet set if
automation-mode changes to/from play, but the widget now
supports that.
2013-08-08 15:23:08 -04:00
443c0a2240 minor peak-meter performance tweak
* redraw only missing parts of the outside rectangle,
* don't redraw RMS meter if value has not changed
2013-08-08 15:23:08 -04:00
c209078c12 fix compiler warning 2013-08-08 15:23:08 -04:00
6a436fd826 fix merge conflict from master 2013-07-31 20:11:15 -04:00
7a02d9e08d clean up some valgrid "Uninitialised value was created by a heap allocation" wanings 2013-07-31 19:29:20 +02:00
b5a2b4e84e initialize some uninitialized values 2013-07-31 15:22:51 +02:00
476da4f3df minimize meter-peak re-draw area 2013-07-31 01:59:50 +02:00
893e26cc68 use 3px for peak-hold in LED mode -> display 2 bright lines 2013-07-28 21:24:27 +02:00
d1c2d53afe tweak meter-LED style 2013-07-28 18:29:39 +02:00
069fd15c79 cache shaded meter-background regardless of color
previously, shaded patterns were assumed to have different colors as well.
2013-07-26 17:17:05 +02:00
cd35040535 fix meter background redraw issue #5601 2013-07-26 17:10:05 +02:00
43bd836778 [re]implement horizontal meter 2013-07-25 19:04:52 +02:00
2ec45cfd1b align gradient with meter-metrics 2013-07-24 22:57:25 +02:00
33b067c12c increase saturation of meter-shader 2013-07-24 16:15:12 +02:00
fa332f31fa allow to en/disable shade and LED meter style 2013-07-24 02:47:37 +02:00
8e376f7a2a Fix special handling of 'zoom vertical' scroll wheel modifier key.
gtkmm2ext/keyboard.cc has a special case to emit a signal on the key-up of
the modifier key used to adjust track heights in conjunction with the
scroll wheel, so that the same track continues to be resized even when
it's shrunk to no longer be under the mouse cursor. However, this code
assumed that the modifier key for this was <Shift>.

Fix it to use the event->state bit corresponding to
ScrollZoomVerticalModifier instead, and rename the relevant functions to
clarify that it's the 'zoom vertical' modifier key they're dealing with.

Partially fixes #5610.
2013-07-23 16:42:34 +01:00
533e40ca52 Work around badly chosen argument name in giomm/dbusmessage.h
interface is defined in windows/mingw headers. hopefully this will
be fixed in giomm at some point and this crap can be removed
2013-07-22 13:44:32 +10:00
d51a1ec06b add a stripe-pattern to the meters 2013-07-17 22:45:08 +02:00
650964f320 Merge branch 'master' into windows 2013-07-17 08:05:59 -04:00