13
0
Commit Graph

761 Commits

Author SHA1 Message Date
272c93db12 CLA approved consistent fine-grained scale modifier 2014-11-30 21:27:31 +01:00
18efe8f446 consistent step+page sizes for fader+spinbox 2014-11-30 15:05:40 +01:00
c77f4b7a18 don't move faders on click.
for one, it can mess up the value when switching to
numeric-entry. It is also rather useless and not
Fader-like (faders are not scrollbars).
Besides, "stepvalue" is way to large and causes jumps
(sometimes step-value is even negative, see
"fast lookahead limiter", "release time"
 -> some other bug)
2014-11-29 17:31:41 +01:00
16947f751b Remove dead code. 2014-11-27 04:17:15 -05:00
ea5876b836 Remove dead code. 2014-11-25 02:11:44 -05:00
976a150e6b Remove obviously dead/redundant code. 2014-11-18 02:55:03 -05:00
6b3a8915f3 add abort() to non-reached code
This cleans up a lot of false-positives in static analysis
and also helps compilers to optimize code paths in general.
(tagging the fatal stingstream operator as ‘noreturn’ is
far less trivial)
2014-11-14 11:30:08 +01:00
bb4e3a2916 add Gtkmm2ext::event_inside_widget_window() 2014-11-02 08:57:47 -05:00
b6d8805961 properly initialize variable (amend cffd18d2d8) 2014-11-02 02:50:28 +01:00
cffd18d2d8 implement spin-button internal<>interface bridge
Widgets were written to use "[User] Interface" values, but the
spinbutton in a Bar-controller should allow to directly access
the "Internal Value".
2014-11-01 18:24:31 +01:00
049c11de58 Slider Controller API Change
Prepare to allow BarController (with Spinbutton) to translate
internal/interface values for the SpinBox.

(The change is irrelevant for the fader/slider itself which
always use the [user-]interface value)
2014-11-01 18:22:29 +01:00
002ebcc4ea increase fine grained control (Ctrl+Alt+[drag|scroll]) 2014-11-01 07:27:35 +01:00
973d40e3ac Add support for USE_CAIRO_IMAGE_SURFACE when building with MSVC
(new preprocessor directive - greatly improves CPU loading)
2014-10-29 17:36:30 +00:00
dc39448a22 turn pixfader into a cairowidget 2014-10-28 02:18:46 +01:00
b04414d170 allow to use cairo-image/software surface for canvas & cairowidgets 2014-10-28 02:15:10 +01:00
e02efddb21 skip meter re-draw when no pixels are changed. 2014-10-25 17:28:14 +02:00
9239a49a32 Add some newly introduced source files to our MSVC project (gtkmm2ext) 2014-10-24 18:45:53 +01:00
2bc3ec6ab3 add new Gtk2mmext::EmScale class for measuring font-based sizing 2014-10-23 13:21:04 -04:00
ceff2e3a62 plugin widgets were written to use Internal values, so use that for now 2014-09-18 17:25:11 -05:00
9be64f2648 add a focus handling callback so that all button press events on CairoWidgets will cause a focus reset. 2014-09-16 12:42:39 -04:00
e5a20e1f9e Add 2 new source files to our 'gtkmm2ext' project (MSVC) 2014-09-13 09:56:58 +01:00
e3d063004b add required visibility macros to Gtkmm2ext::CursorInfo 2014-09-12 14:33:36 -04:00
01974b5769 API flush static cairo pattern cache
(should probably be cleaned regularly
e.g. meterbridge resize)
2014-09-11 19:30:33 +02:00
7449de6e8f fix/improve/test hotspot file parsing 2014-09-10 19:39:52 -04:00
13cd2110e6 add copyright header comments 2014-09-10 18:50:58 -04:00
90059a9504 move CursorInfo members into public access 2014-09-10 18:38:30 -04:00
c4f7aae7d5 add new (mostly) static class to permit lookup of cursor image hotspots 2014-09-10 16:50:10 -04:00
e60f03c54c fix scoomer scroll-wheel max value 2014-09-09 14:35:06 +02:00
1c6c3514ba don't start track-resize on scroomer click 2014-09-08 18:43:28 +02:00
d68275cefc one less annoying compiler warning. 2014-09-06 21:18:08 +02:00
d63a4edfbf pass-though PixFader tweaks API for scroll events 2014-09-06 12:46:03 +02:00
6af935a3b8 updated .po files 2014-09-04 22:24:41 -04:00
48a851011b add pixfader tweaks API:
* change API to hide unity/default value line
* allow to override vertical scroll [1]
* allow changing button event forwarding [2]

[1] override scrolling in track-headers
[2] dbl-click is needed for BarControllers -> switch to SpinBtn
    but a plain Slider on a track-header should not forward
    these events to the TAV (they may trigger name-edit)
2014-09-05 02:24:19 +02:00
f2c0b2e318 revert pixfader to sane state (reverts parts of bb70d426) 2014-09-03 20:48:20 +02:00
bb70d426ba bring back old pixfader outline radius to demonstrate its issues 2014-09-03 15:35:11 +02:00
73357c1923 revert pixfader radius to default 2014-09-03 15:09:54 +02:00
f684cc24ec allow to set gtk style for BarController's pixfader. 2014-09-03 02:40:27 +02:00
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