13
0
Commit Graph

14118 Commits

Author SHA1 Message Date
1cd366b606 pixfader bg has reverse gradient from fg 2014-09-02 15:58:55 -05:00
930e6eecf8 stroke black circle on top of rec circle 2014-09-02 15:57:08 -05:00
bc16da5b5a micro tweaks to ArdourButton corners 2014-09-02 15:16:37 -05:00
5d5d859c2a use new 'special' rec-en button 2014-09-02 20:43:27 +02:00
1592d04828 one off, special case rec-en button for now. (circle may need tweaking)
In the long run we want a class hierarchy:
CairoWidget
-> ArdourWidget
-> ArdourLabel
-> ArdourButton
-> SpecialArdourButton(s)
2014-09-02 20:43:15 +02:00
9cd0af6b51 compact meter+fader for > 6 channel tracks 2014-09-02 19:33:58 +02:00
5d0e4f7380 number-label: use pixel-width for given font 2014-09-02 19:27:40 +02:00
29b7cb4a05 ArdourButton: prepare for [em] based padding 2014-09-02 19:23:18 +02:00
b184df3286 static global definition for track-header width
the track-header minimum width is defined by
the name-label (IFF the 2nd row fader is not visible,
but the fader is rather small by default and and grows)

track-header width in almost all cases is:
   name-label width
 + width of three button (1 char each)
 + max size of all meters (if visible)
 + width of MIDI scroomer (if visible)
 + 2px table cellspacing (per column)
2014-09-02 18:12:39 +02:00
eed9542930 get rid of a compiler warning 2014-09-02 16:17:42 +02:00
6462cfa843 dramatically speed up track-number show/hide toggle 2014-09-02 16:17:20 +02:00
538a569d0b add a special bool option that prevents redrawing 2014-09-02 16:16:36 +02: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
88df9c28a6 fix static initialization of Gtk::SizeGroup 2014-09-02 05:14:26 +02:00
5803f26c51 add style for BarController SpinButton 2014-09-02 05:14:22 +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
540a12119b prepare Slider API cleanup 2014-09-02 02:53:05 +02:00
001e4ca684 Engine Dialog: focus OK button (press enter to cont w/previous settings) 2014-09-01 22:06:45 +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
158037bba2 Match canvas outline to rectangle
It looks like we're currently [consistently] off by 1px
everywhere. The width-1 is compensated by
TimeAxisViewItem::RIGHT_EDGE_SHIFT = 1
2014-09-01 18:05:09 +02:00
34c1465cf9 Fix crash when changing automation mode for MIDI track control automation.
Also some work towards tolerating automation controls with no automation list,
towards actually doing something for these cases, though not required just to
fix this crash (MidiTrack::set_parameter_automation_state() avoids those
paths).
2014-08-31 18:57:22 -04:00
b012f2cd18 retain track-header width regardless of number-label. 2014-09-01 00:00:20 +02:00
b469cd217f Bring back control slider on MIDI controller "tracks". 2014-08-31 17:54:16 -04:00
885f1c71ec Remove unused variables (fix warnings). 2014-08-31 17:54:16 -04:00
c95c221493 Fix mismatched initialisation order. 2014-08-31 17:54:16 -04:00
dbad29f388 the story of 0 2014-08-31 23:38:25 +02:00
cb8ce29725 rework track inset (amend 7d7b787 and bf13bf63):
Only inset red-selection rectangle (top & bottom).
Do not draw duplicate borders (waste pixels) for regular regions.
2014-08-31 23:36:38 +02:00
4718def3c4 update track-header width when removing track(s). 2014-08-31 22:54:43 +02:00
7d7b787a28 inset regions into track (don't share edges) 2014-08-31 22:24:44 +02:00
423f6e3445 fix track-header hide/show 2014-08-31 22:24:26 +02: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
0b1ee476ed proper 1px track separator 2014-08-31 20:08:38 +02:00
758c988e51 shadow-less Frame: explicitly draw background colored border. 2014-08-31 20:07:17 +02:00
f7e5d4eba2 the return of the time_axis_vbox 2014-08-31 19:43:32 +02:00
50c3177a5e remove frame from barcontroller 2014-08-31 19:36:41 +02:00
e3d982a66e set initial TAV style 2014-08-31 18:51:04 +02:00
1e0c987b77 update track-header width when changing show-track-meters 2014-08-31 16:46:11 +02:00
888f440633 move midi scroomer to right of meter and fix alignment 2014-08-31 16:15:52 +02:00
098a698052 right side track-header control buttons (for non mixbus profile) 2014-08-31 16:12:43 +02:00
db34d9a556 proper round corners on focused TextEntry
IFF [xy]thickness is set > 2 for given Entry.

It seems gtk draws a base-color rectangle on
top, after clearlooks_draw_entry() is called.
This fills the complete area and voids previous
rounded rectangles in clearlooks_draw_entry().
setting [xy]thickness decreases the size of the
base rectangle.
2014-08-31 12:46:45 +02:00
42e6c9c75d proper round corners for peak&gain display 2014-08-31 12:08:39 +02:00
f6da7c67ab experiment with track-selection box shadow 2014-08-31 08:08:36 +02:00
059e438f40 fix [potential] double clock connection:
ARDOUR_UI::set_session() starts clocking for a given session.
make sure ARDOUR_UI::parameter_changed() does not connect
before the session is active.
2014-08-31 07:54:59 +02:00
7d3f0bfd75 prepare for clang static analysis of RT-functions:
see: https://github.com/fundamental/stoat
eventually more functions should be annotated, and
a common header file should be used to
  #define REALTIME __attribute__((annotate("realtime")))
2014-08-31 07:50:17 +02:00
026c71331e distinguish global peak-reset button from meters:
With > 2 channels, the editor toolbar meters are
otherwise very similar to the reset-button.
2014-08-31 07:43:21 +02:00
d0c7984320 new min. height for midi controls 2014-08-31 07:12:41 +02:00