Commit graph

655 commits

Author SHA1 Message Date
Robin Gareus
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
Paul Davis
bb4e3a2916 add Gtkmm2ext::event_inside_widget_window() 2014-11-02 08:57:47 -05:00
Robin Gareus
b6d8805961 properly initialize variable (amend cffd18d2d8) 2014-11-02 02:50:28 +01:00
Robin Gareus
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
Robin Gareus
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
Robin Gareus
002ebcc4ea increase fine grained control (Ctrl+Alt+[drag|scroll]) 2014-11-01 07:27:35 +01:00
John Emmas
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
Robin Gareus
dc39448a22 turn pixfader into a cairowidget 2014-10-28 02:18:46 +01:00
Robin Gareus
b04414d170 allow to use cairo-image/software surface for canvas & cairowidgets 2014-10-28 02:15:10 +01:00
Robin Gareus
e02efddb21 skip meter re-draw when no pixels are changed. 2014-10-25 17:28:14 +02:00
John Emmas
9239a49a32 Add some newly introduced source files to our MSVC project (gtkmm2ext) 2014-10-24 18:45:53 +01:00
Paul Davis
2bc3ec6ab3 add new Gtk2mmext::EmScale class for measuring font-based sizing 2014-10-23 13:21:04 -04:00
Ben Loftis
ceff2e3a62 plugin widgets were written to use Internal values, so use that for now 2014-09-18 17:25:11 -05:00
Paul Davis
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
John Emmas
e5a20e1f9e Add 2 new source files to our 'gtkmm2ext' project (MSVC) 2014-09-13 09:56:58 +01:00
Paul Davis
e3d063004b add required visibility macros to Gtkmm2ext::CursorInfo 2014-09-12 14:33:36 -04: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
Paul Davis
7449de6e8f fix/improve/test hotspot file parsing 2014-09-10 19:39:52 -04:00
Paul Davis
13cd2110e6 add copyright header comments 2014-09-10 18:50:58 -04:00
Paul Davis
90059a9504 move CursorInfo members into public access 2014-09-10 18:38:30 -04:00
Paul Davis
c4f7aae7d5 add new (mostly) static class to permit lookup of cursor image hotspots 2014-09-10 16:50:10 -04:00
Robin Gareus
e60f03c54c fix scoomer scroll-wheel max value 2014-09-09 14:35:06 +02:00
Robin Gareus
1c6c3514ba don't start track-resize on scroomer click 2014-09-08 18:43:28 +02:00
Robin Gareus
d68275cefc one less annoying compiler warning. 2014-09-06 21:18:08 +02:00
Robin Gareus
d63a4edfbf pass-though PixFader tweaks API for scroll events 2014-09-06 12:46:03 +02:00
Paul Davis
6af935a3b8 updated .po files 2014-09-04 22:24:41 -04:00
Robin Gareus
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
Robin Gareus
f2c0b2e318 revert pixfader to sane state (reverts parts of bb70d426) 2014-09-03 20:48:20 +02:00
Robin Gareus
bb70d426ba bring back old pixfader outline radius to demonstrate its issues 2014-09-03 15:35:11 +02:00
Robin Gareus
73357c1923 revert pixfader radius to default 2014-09-03 15:09:54 +02:00
Robin Gareus
f684cc24ec allow to set gtk style for BarController's pixfader. 2014-09-03 02:40:27 +02:00
Ben Loftis
1cd366b606 pixfader bg has reverse gradient from fg 2014-09-02 15:58:55 -05:00
Robin Gareus
9ecdb765aa don't show 'unity-line' (default value) for barcontrollers 2014-09-02 16:05:54 +02:00
Robin Gareus
3b9b65879a Barcontroller: no double expose when text chages 2014-09-02 16:05:21 +02:00
Robin Gareus
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
Robin Gareus
efb03f4596 unify BarController with Slider/Pixfader. 2014-09-02 05:14:19 +02:00
Robin Gareus
41ccf6a806 clean up pixfader API, prepare for merge w/BarController 2014-09-02 05:14:14 +02:00
Robin Gareus
3bfe91c010 remove cruft from SliderController 2014-09-02 05:14:06 +02:00
Robin Gareus
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
David Robillard
885f1c71ec Remove unused variables (fix warnings). 2014-08-31 17:54:16 -04:00
Robin Gareus
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
Robin Gareus
50c3177a5e remove frame from barcontroller 2014-08-31 19:36:41 +02:00
Robin Gareus
ca97569c55 disconnect pixfader style-change signal in dtor (amend 5a688b672) 2014-08-30 20:58:03 +02:00
Robin Gareus
5a688b672c pixfader: use parent's background color 2014-08-30 04:19:42 +02:00
Robin Gareus
f5533213c0 fix some compiler warnings 2014-08-30 02:26:36 +02:00
Robin Gareus
585fa45b62 fix cairo widget background 2014-08-30 01:43:10 +02:00
Ben Loftis
40c3e4122c try a different method of text display on automation bars 2014-08-29 16:35:20 -05:00
Ben Loftis
b0477f7f1e fix plugin bypass button action 2014-08-28 15:29:18 -05:00
Ben Loftis
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
John Emmas
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