Commit Graph

83 Commits

Author SHA1 Message Date
3daad04936 don't force size allocation to recompute pixfader patterns unless size actually changes 2016-05-31 15:30:38 -04:00
4dc63966f0 globally remove all trailing whitespace from ardour code base.
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
eb998b3264 plug some memory leaks in libs 2015-09-12 20:05:25 +02:00
nick_m
57ce447fd1 Fix some workflow problems wrt automation.
- clearing automation points sets control to "off" rather than touch.
	- multiple touches on the same pass acts consistently (no more
	  fader jumps on mouse button press
	- use actual value for initial point rather than some arbitrary
	  default. clarify new semantics of add () (with_default->with_initial).
	- clean some whitespace
	- add guard points as needed in stop.
	- catch grab broken signal (i can't trigger it, but the docs seem
	  to think it is essential).
2015-06-17 09:54:22 +10:00
de85bfd857 fix #6117 - fader prelight 2015-01-28 02:22:52 +01:00
587dc283ea Fix stuck faders on very fine adjustments.
I attempted to preserve the "don't draw unless different" by ditching rounding for more
precise display_span, but that didn't work.  An alternative solution would be
to draw on adjustment change if there's text, since then we need to redraw
regardless of slider position, but it seemed weird even just with respect to
the slider, so I opted for this, which really definitely redraws when the
adjustment changes, period.

If this proves to be a performance issue we'll have to figure that out.
2014-12-05 15:19:43 -05:00
0c7dd82239 exclude fader-reserve from range 2014-12-01 17:45:27 +01:00
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
002ebcc4ea increase fine grained control (Ctrl+Alt+[drag|scroll]) 2014-11-01 07:27:35 +01:00
dc39448a22 turn pixfader into a cairowidget 2014-10-28 02:18:46 +01:00
d63a4edfbf pass-though PixFader tweaks API for scroll events 2014-09-06 12:46:03 +02: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
1cd366b606 pixfader bg has reverse gradient from fg 2014-09-02 15:58:55 -05: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
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
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
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
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
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
5bae4373c7 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-07-12 19:07:07 +02:00
7a62d31056 Episode VI: Return of the ZeroDBline 2013-07-10 15:27:16 +02:00
656cc9a0ad Episode V: the gainfader line strikes back 2013-07-10 15:27:16 +02:00
40bc6f5b83 Task Force Viking: operation green line 2013-07-10 15:27:14 +02:00
a97376dd80 fix up rather odd sizing model for ProcessorBox that affected Pixfaders used as controls
git-svn-id: svn://localhost/ardour2/branches/3.0@13994 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-24 21:58:07 +00:00
60a40dfaef patch/fix for crash when pixfader is exposed after being allocated only 1xN or Nx1 pixels
git-svn-id: svn://localhost/ardour2/branches/3.0@13986 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-24 13:15:20 +00:00
3b17107417 pixfaders should invalidate their patterns and layout on style change, helps fix #5275
git-svn-id: svn://localhost/ardour2/branches/3.0@13949 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-21 16:10:39 +00:00
b4abc10f71 fix issue with color and position of mixer strip plugin control sliders (#5275)
git-svn-id: svn://localhost/ardour2/branches/3.0@13876 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 22:33:08 +00:00
d0272c4558 cache cairo_pattern_t's for PixFader so that we don't generate one per fader, but rather one per size+color combination
git-svn-id: svn://localhost/ardour2/branches/3.0@13874 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 15:36:35 +00:00
b02e2cd25b fix problem with size of patterns used by pixfaders when they get re-size-allocated
git-svn-id: svn://localhost/ardour2/branches/3.0@13871 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 15:00:44 +00:00
53f162f921 prevent button1/2 clicks on pixfaders from being used to drive event processing in parent containers (#5272)
git-svn-id: svn://localhost/ardour2/branches/3.0@13868 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 02:41:11 +00:00
15078e5a6d fix up handling of size allocation + setting
git-svn-id: svn://localhost/ardour2/branches/3.0@13866 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 02:32:48 +00:00
e194df1fb3 fixed unity-line alignment for horiz faders.
git-svn-id: svn://localhost/ardour2/branches/3.0@13837 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-12 15:44:55 +00:00
db026c5ae4 round outside corners of pixfaders
git-svn-id: svn://localhost/ardour2/branches/3.0@13834 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-12 02:14:58 +00:00
2b58d51e50 rework pixfader design again: remove texture, draw entire (double-sized) pattern ahead of time and render appropriate part of it at expose (this may turn out to be the wrong idea if/when we use a "real" fader design); fix up color(s) in track headers for these things
git-svn-id: svn://localhost/ardour2/branches/3.0@13833 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-12 01:37:27 +00:00
9ed64a7f6c space pixfader dots better
git-svn-id: svn://localhost/ardour2/branches/3.0@13832 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-11 19:26:04 +00:00
9fcf40c94b substantive changes to pixfaders and derived classes. now fully dynamically sizable and have an added texture that currently just emulates the ardour2 belt pattern. mild color changes, not finalized yet.
git-svn-id: svn://localhost/ardour2/branches/3.0@13830 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-11 18:33:57 +00:00
7922ec1e9a remove rounded corners from non-mobile ends of pixfaders
git-svn-id: svn://localhost/ardour2/branches/3.0@13828 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-10 16:25:31 +00:00
b1029a3caf goodbye pixmaps and pixbufs (no longer) used by Gtkmm2ext::PixFader
git-svn-id: svn://localhost/ardour2/branches/3.0@13827 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-10 15:25:11 +00:00
6635c6ac6c fix #5249- small faders in the processor box are not draggable when tooltips are disabled.
git-svn-id: svn://localhost/ardour2/branches/3.0@13768 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-04 16:02:12 +00:00
e040974bed fix step increment direction for mouse-click on faders
git-svn-id: svn://localhost/ardour2/branches/3.0@13727 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-25 18:11:55 +00:00
67adc8ceed remove debug output
git-svn-id: svn://localhost/ardour2/branches/3.0@13655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-13 13:44:44 +00:00