d6f3a006d2
scale CairoIcon by Gtkmm2ext::UI::ui_scale
2016-02-22 15:31:23 -05:00
b48c7c0180
revert to thin lines for close cross icon
2016-02-22 15:31:23 -05:00
914af0f0c8
move ui_scale static member from ARDOUR_UI to GtkUI
2016-02-22 15:31:22 -05:00
0819efe27c
remove unused lines
2016-02-22 15:31:22 -05:00
90845af8fa
hopefully get dynamic tabbable menu state right this time
2016-02-22 15:31:22 -05:00
e2dfc10698
thicken up lines of close cross icon
2016-02-22 15:31:22 -05:00
1c41f75488
provide a sigc::signal to track display state changes for a Tabbable
2016-02-22 15:31:22 -05:00
308f6ed828
changes to get show/hide/attach/detach working
2016-02-22 15:31:22 -05:00
fd938d95bf
change/extend Tabbable API to allow for show/hide/attach/detach
2016-02-22 15:31:22 -05:00
8e14496919
use new CairoIcon to add a tab-close "button" to tabs
2016-02-22 15:31:22 -05:00
e026adf4a9
second part of: add new CairoWidget-derived class that does nothing but shown an ArdourIcon.
2016-02-22 15:31:22 -05:00
c06c2c29db
add new CairoWidget-derived class that does nothing but shown an ArdourIcon.
...
Somewhat necessary by placement of ArdourButton class in directory heirarchy. But these are also
much simpler
2016-02-22 15:31:22 -05:00
434ef34229
add tab-closing buttons to tabs.
...
Images are non-scalable, too big and ugly. Next commit ...
2016-02-22 15:31:22 -05:00
347ba94bcd
add ::make_visible() to Tabbable class
2016-02-22 15:31:22 -05:00
436706c8d4
remove debug output
2016-02-22 15:31:22 -05:00
e46b518319
classes derived from WindowProxy are responsible for their own window creation in ::set_state().
...
Fixes a crash reported by A.Prokoudine when opening a session with visible plugin GUIs
2016-02-22 15:31:22 -05:00
37fce09a18
widespread changes to get the new (oldArdour binding scheme to be used for keyboard accelerators
2016-02-22 15:31:22 -05:00
d84f655495
add suggestive tooltips for tabs; remove position argument for Tabbable since it isn't really usable
2016-02-22 15:31:21 -05:00
552e995297
save/restore tabbable state
2016-02-22 15:31:21 -05:00
9f0ea99fac
better way to switch to a tab
2016-02-22 15:31:21 -05:00
03b354a99e
make tabs reorderable
2016-02-22 15:31:21 -05:00
a5150d500d
when tearing off a tab, make the window be the same size as the allocation of the tab
2016-02-22 15:31:21 -05:00
9010262bed
first compilable version of tabbable design.
...
I would have loved to split this apart, but there are just so many interrelated changes,
it makes little sense and would be a huge effort that would break future git bisect
use because so many intermediate commits would not compile
2016-02-22 15:31:21 -05:00
85eee3b09d
compilable version of WindowProxy
2016-02-22 15:31:21 -05:00
a29f76c1c4
initial versions of Tabbable object
2016-02-22 15:31:21 -05:00
df05e97288
first version of Gtkmm2ext::WindowProxy
2016-02-22 15:31:21 -05:00
André Nusser
1afbdaff58
Fix compilation warnings. (libs part)
2016-02-22 15:11:02 -05:00
86d27a736c
better system for managing kbd focus after cmd-w closing a dialog.
...
Key, Button and Focus In events in the editor+mixer windows cause the respective window to be noted
as the window to which focus should return after a dialog is closed with cmd/ctrl-w
2016-02-22 14:03:55 -05:00
60c4b30b7e
manually revert most of previous commit related to dialog/main window focus management
2016-02-22 13:55:31 -05:00
3a08ac5e1f
os x: an initial attempt at fixing loss of keyboard focus after cmd-w to close dialog
2016-02-22 11:49:17 -05:00
344cf05540
OS X: fix the handling of SUPER,HYPER,META (see code comment for more)
2016-02-21 10:48:35 -05:00
c92e822332
remove HYPER,SUPER,META modifier masks from Keyboard::RelevantModifierMask so that modifier_state_equals() works on OS X
...
GTK on OS X adds META when Command is pressed even though it also uses MOD2 to indicate COMMAND. So Cmd-w was actually META-MOD2-w and modifier_state_equals(MOD2)
would fail. This should have nothing but good side effects
2016-02-18 09:44:50 -05:00
dd7649a409
add a static utility function (should really be in utils.cc and public) to show modifier state in english; use said function
2016-02-18 09:43:03 -05:00
4a9ffee486
Allow partial CairoWidget exposure
2016-02-12 22:57:46 +01:00
3f43e5cd04
Remove no longer needed 'prolooks' source(s) from our MSVC projects (gtkmm2ext & gtk2_ardour)
2016-02-12 12:31:22 +00:00
e6b06597b7
remove all traces of "prolooks" and related classes
2016-02-11 13:03:24 -05:00
85b4acc916
Change CairoWidget::get_active() to be const
2016-02-11 12:15:07 +10:00
9e3299f97d
change Controllable::set_value() API to include grouped control consideration.
...
This also removes Route::group_gain_control() and associated machinery.
Not yet tested with Mackie or other surfaces. More work to done to
start using the group capabilities, and also potentially to add
or derive more controls as RouteAutomationControls
2016-01-02 04:58:30 -05:00
5d8b75386c
allow to set per item drag targets
2015-12-30 12:25:09 +01:00
2d871435ca
allow to set parent for modal dialog
2015-12-29 13:31:24 +01:00
ee541036b4
fix window-title (separate application name, thread name)
2015-12-29 11:03:09 +01:00
8e1a9f0ada
missing drag-end (fix possible crash)
2015-12-28 17:23:45 +01:00
0d9efc1148
redesign cross-thread registration/signalling system
...
This new design will work even when threads that need to receive
messages from RT threads are created *after* the RT threads. The
existing design would fail because the RT thread(s) would never
be known the later created threads, and so signals emitted by the
RT thread and causing call_slot() in the receiver would end up
being enqueued using a lock-protected list. The new design ensures
that communication always uses a lock-free FIFO instead
2015-12-28 10:14:17 -05:00
0aba08594c
allow DnD between DnDTreeView and DnDVbox
2015-12-28 04:10:39 +01:00
3ff674d583
Treeview Drag: allow to use single column as drag-widget
2015-12-24 17:26:06 +01:00
2a55e8b9b3
extend Drag/Drop mechanism
...
DnDVbox: un-hardcode TargetEntry list, add callback for secondary targets
DvDTreeview: return pointer to self
2015-12-22 04:14:12 +01:00
3d1dcacfd8
use correct source for application name when labelling a window
2015-12-12 11:12:10 -05:00
be6a43d4d3
use EventLoop::event_loop_name()
2015-12-12 11:12:10 -05:00
Edgar Aichinger
ba3936391a
update german translation
2015-12-09 13:22:25 +01:00
73d1de3b75
NOOP, remove trailing whitespace, replace tabs in python scripts
2015-11-29 17:54:31 +01:00
Nils Philippsen
e25ddc39f8
make copies of global lists before extending
...
Not doing so can make source or object files appear multiple times in
the list of files to be compiled or linked, e.g. when doing './waf build
install', subsequently leading to linker errors.
2015-11-23 08:43:19 -05:00
52e75f5a45
remove cruft
2015-10-20 15:49:59 +02:00
f1a6d7816d
remove unused "copy modifier hint"
2015-10-20 11:12:36 +02:00
nick_m
9511c9c86f
Add tooltips to user config preferences. clean up combo ordering.
2015-10-20 00:53:30 +11:00
2c9666e0ee
API to add system-specific file chooser shortcuts
2015-10-16 19:06:21 +02:00
79142a262e
prepare better solution of Glib's << operator
2015-10-15 11:22:35 +02:00
2397429e99
use quotes for in-tree pbd/glib wrapper include
2015-10-05 22:15:18 +02:00
dc36b063bf
remove unused fstream includes
2015-10-05 22:15:18 +02:00
97bd6db2b7
remove i/ofstream from libardour
...
except:
* audio-unit (ifstream is known to work on OSX)
* evoral curve algorithm debugger
* cycle-timer debug code
* export_handler's CDMarker -> TODO
2015-10-05 22:15:17 +02:00
c3b2cc46c5
remove unused API (and ifstream)
2015-10-05 22:15:17 +02:00
22b07e0233
NOOP, remove trailing tabs/whitespace.
2015-10-05 16:17:49 +02: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
8384d98c92
there's no class called "The" :)
2015-10-01 21:39:15 +02:00
f3a1ac21cb
associate label more closely with VST path button. the plugin tab needs a complete layout rethink, someday
2015-09-17 16:07:40 -05:00
7ac691ec82
use pbd's gstdio compatibility wrapper
2015-09-17 14:37:57 +02:00
eb998b3264
plug some memory leaks in libs
2015-09-12 20:05:25 +02:00
fcbf359dd6
properly clean up meter-pattern cache
2015-09-07 13:35:48 +02:00
57321bef35
consistent pango-text layout size - fixes #6490
...
Use gdk_pango_layout() for all text-size calculations.
In Canvas::Text always use the same context (local image surface)
for layouting (prior to this, local and window-context mix resulted in
different sizes).
2015-09-06 16:39:08 +02:00
42f0142bb9
remove a float loop counter
2015-09-05 15:47:00 +02:00
9bc85a553c
add API to get combobox option count.
...
The data model needs to be checked to count available options.
Directly using ComboBoxText::children()::size() counts widgets.
2015-08-11 15:38:26 +02:00
7aeead630a
adjust click box size - fixes #6499
2015-08-05 19:53:33 +02:00
46c8369328
merge fix
2015-07-16 16:13:24 -05:00
782aa6aa47
add missing return value
2015-07-16 15:34:37 +02:00
56ba08b7cb
implement scroll-wheel support for ClickBoxes
2015-07-13 15:33:15 +02:00
466af2a80b
don’t compile tracks specific sources for ardour.
2015-07-02 15:32:29 +02:00
fe5852fc1d
MSVC doesn't like us calling 'sqrt()' with integers (it doesn't have a version which takes an int)
...
So let's specify which version we'd like it to use.
2015-07-02 08:23:38 +01:00
51dd5b525b
Add some newly introduced sources to our MSVC project (gtkmm2ext)
2015-07-02 08:23:37 +01:00
ea4ffbb674
prevent stuck & vanishing tooltips
...
the window needs to be moved in place before presenting it.
Otherwise it is displayed at mouse-pos and moving it triggers enter/leave,
which in turn re-start the timeout..
2015-06-30 13:08:22 +02:00
efa170b6bc
stop PersistentTooltip flicker.
...
timeout is used for a *one-time* delayed display of the tooltip.
2015-06-30 13:05:42 +02:00
1adc5d5cf4
Revert "fix previously cherry-picked commit to be Tracks-only, since Ardour/Mixbus are not affected"
...
This reverts commit dddf76abf5
.
it is relevant for Ardour/OSX, see 58fec98a
and da43652
2015-06-30 08:11:06 +02:00
0274aafdb0
store all error/info/etc messages in a list inside Gtkmm2ext::UI, and provide a method to dump them all to a std::ostream
2015-06-29 16:27:03 -04:00
ec16c454ef
comment unused but potentially usable variables
2015-06-29 14:18:15 -04:00
0e72e8446a
update waves' fader implementation, clean up whitespace, indentation, variable initialization and remove unused members
2015-06-29 14:18:15 -04:00
d4bd394b4b
Revert "remove unused variables". They are used on OS X.
...
This reverts commit 0fba19e9e6e6c519c89ce63149581b8f24b38c8c.
2015-06-29 14:18:15 -04:00
8c4b899352
remove unused variables
2015-06-29 14:18:15 -04:00
e6b4c9f610
fix whitespace/indentation and compiler warnings
2015-06-29 14:18:15 -04:00
dddf76abf5
fix previously cherry-picked commit to be Tracks-only, since Ardour/Mixbus are not affected
2015-06-29 14:18:15 -04:00
Nikolay
55658c3aae
[Summary] Mac OS specific bug fix: Increased priority of the top menu bar events
...
[Details] g_idle_add () which was used for this purpose used G_PRIORITY_DEFAULT_IDLE>=200 which was too low for correct main menu requests processing, like showing Mixer or Big Clock Window.
The priority was increased to G_PRIORITY_HIGH_IDLE = 100.
According to GTK manual (https://developer.gnome.org/glib/stable/glib-The-Main-Event-Loop.html#G-PRIORITY-HIGH-IDLE:CAPS )
GTK+ uses G_PRIORITY_HIGH_IDLE + 10 = 110 for resizing operations, and G_PRIORITY_HIGH_IDLE + 20 = 120 for redrawing operations.
I assume that during record or playback on tracks there are too many redraw request which didn't give any chance for main menu request to be processed in time with old priority value.
This change must be considered as a hot fix so far.
The issue might be deeper. Will be investigated with Paul.
[Feature reviewed] AMishyn
[Reviewed by] PDavis, GZharun
2015-06-29 14:18:15 -04:00
c66ea2c170
add new Gtkmm2ext::pixel_size() to conveniently get width&height for a given font + string
2015-06-29 14:18:14 -04:00
96078650c9
API to set tooltip y-margin
...
Conflicts:
libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h
libs/gtkmm2ext/persistent_tooltip.cc
2015-06-29 14:18:13 -04:00
7fae6bcd87
copy all XCode project files from Tracks.
...
Rationale: the Waves team maintains the XCode project files, the Ardour crew doesn't. Thus, the Waves'
version is more canonical
2015-06-29 14:18:10 -04:00
b385d02022
merge two small pieces of code by Valeriy into libs/gtkmm2ext, conditionally used ONLY in Tracks builds.
...
This code is not acceptable for use in Ardour ... comments in code explain more.
2015-06-29 14:18:10 -04:00
8c41a412c1
fix up waves_fastmeter.cc code to work with current fastmeter API
2015-06-29 14:18:10 -04:00
e1bd9401d5
add clean and nice check for Tracks builds
2015-06-29 14:18:10 -04:00
8a9dc2c2d5
conditionally use correct fast meter implementation
2015-06-29 14:18:10 -04:00
d4c28adc6f
add Waves Tracks version of fastmeter
2015-06-29 14:18:10 -04:00
Nikolay
f3719922c8
[Summary] Changed class PersistentTooltip. Now it can be used for 'non-draggable' tooltips.
...
[Feature reviewed] MKosharnyy
[Reviewed] VKamyshniy
Manually clean up merge mess, indentation, logic weakness, initializer order, etc.
Conflicts:
libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h
libs/gtkmm2ext/persistent_tooltip.cc
2015-06-29 14:18:09 -04:00
2363fb71e3
hand-merge libs/gtkmm2ext part of f49d31a82 from Tracks; provides a way to disable/re-enable OS X main menu
2015-06-29 14:16:43 -04:00
Nikolay
7e097c5efc
[Summary] Bug fix #44332 "Please fit the Pan values monitor to channel borders"
...
[Feature reviewed] AMishyn
[Reviewed] VKamyshniy
Fixed up by Paul Davis to fix logic mistakes and unnecessary complexity,
and indentation.
Conflicts:
libs/gtkmm2ext/persistent_tooltip.cc
2015-06-29 14:16:43 -04:00
YPozdnyakov
4465fb62f3
[Summary]: add keybindings Cmd-h (hide application) for mac
...
Conflicts:
gtk2_ardour/ardour_ui.cc
gtk2_ardour/ardour_ui.h
gtk2_ardour/ardour_ui_ed.cc
2015-06-29 14:16:43 -04:00
YPozdnyakov
57dd0ef2f6
[Summary]: fix declaration of Cocoa NSApplicationDelegate methods [Reviewed by] Paul Davis
...
Conflicts:
libs/gtkmm2ext/gtkapplication_quartz.mm
2015-06-29 14:16:43 -04:00
d541fda2be
current version of valeriy's fader object requires access to libardour API (to be changed)
2015-06-29 14:16:43 -04:00
b9a09bc920
add fader implementation from Tracks
2015-06-29 14:16:43 -04: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
cc543280d9
We were 2 more debug "bits" away from overflow, so recast PBD::DEBUG mechanism away from a 64bit integer and toward std::bitset.
...
Clean up a few minor related PBD::DEBUG issues along the way
2015-06-12 18:14:09 -04:00
nick_m
b3a4c88e0e
Make absolute snap the default snap.
...
- also fixes a couple of absolute snap bugs wrt midi notes.
2015-06-11 01:36:34 +10:00
801af5df9e
Add the new (UINTSDEFINED) preprocessor directive to all out MSVC projects (just to be on the safe side)
2015-06-09 13:18:42 +01:00
e0fcd18ec6
fix duplicate inc/decrement in AutoSpin?
2015-06-02 01:01:23 +02:00
4dd5b184c8
NOOP, fix whitespace
2015-06-02 01:01:23 +02:00
86f56de656
fix the cairo-fletcher-fluctuation
...
CF reports occasional “rendering icon 1 at size 1 x 1”
always followed by “rendering icon 1 at size 21 x 21”.
Probably a GTK bug with some specific version of GTK.
2015-05-31 19:40:04 +02:00
f9abce03a9
Add some newly introduced sources to our MSVC project (gtkmm2ext)
2015-05-27 10:21:21 +01:00
78ba915fc1
Gtkmm2ext::ArdourIcon::render() is needed outside of libgtkmm2ext (so let's make it exportable)
2015-05-27 10:11:34 +01:00
d3df99e22e
more pixel rounding (small range icon)
2015-05-26 19:25:47 +02:00
45313f329f
icon pixel compatibility
...
Ensure that relevant lines always end up on a pixel
(regardless of scaling).
2015-05-26 02:45:35 +02:00
e991688e1f
refactor vector icon drawing
2015-05-26 00:52:06 +02:00
d2e4054a65
a go at a pixel-compatible vector “hand” icon.
...
..and some related ArdourIcon changes.
2015-05-25 04:42:58 +02:00
77220a745c
prepare Tool Icons (unused IDs)
2015-05-25 03:28:17 +02:00
d80d34f8dc
vectorize TAV expand and shrink icons
2015-05-25 00:25:28 +02:00
ab6a035076
construct vectorized Zoom Icons
2015-05-24 23:09:13 +02:00
1515ea69ec
introduce some lazyness
2015-05-24 23:06:49 +02:00
1be75b7bfe
NOOP, amend 3173246
comments and whitespace
2015-05-24 21:54:21 +02:00
31732462c7
migrate ArdourButton Icon rendering to Gtkmm2ext.
...
part one: add new API
2015-05-24 21:44:27 +02:00
nick_m
e8a0b1c514
Swap default snap modifiers (non-OSX) to avoid potential upgrade pain.
...
- Disable snap now defaults to alt
- Snap absolute now defaults to alt-windows
2015-05-24 05:50:31 +10:00
nick_m
119c644dc0
Document snap_delta modifier mask.
2015-05-23 23:41:26 +10:00
nick_m
5d176eefa6
Make the prefs less squashed looking, add another entry for OSX modifiers.
...
- Defaults are probably still wrong, but at least they are actual
keys.
2015-05-21 23:47:32 +10:00
nick_m
186736043c
Move ui-centric modifiers into ArdourKeyboard, set some bad defaults.
...
- Also makes "Mod4" Appear as "Windows" and adds new combination
"Alt-Windows" to the dropdown.
- Attempt to set a pair of default snap modifiers (without
knowing what it actually is for OSX)
- Copy modifier now saves
- Snap modifier modifier problem still remains.
2015-05-21 05:32:23 +10:00
nick_m
ae0759ae88
Allow all drag -related modifiers to be set, re-instate "jump after trim"
...
- Copy modifier still doesn't save
- Testers please edit the Extra section of ~/.ardourN/config to allow
defaults to "take"
- Note that the current defaults overlap.
- warning - absolute snap modifier has no default and will be always
"on" unless you set it!
2015-05-21 01:30:57 +10:00
nick_m
66221d1dea
Add more modifier preferences.
...
Note that no defaults are set - go to prefs->user interaction to
ensure that nothing is set to "no modifer"
also - the copy modifier doesn't actually save its state yet.
2015-05-20 04:00:04 +10:00
nick_m
0d8a331bca
Remove some debugging.
2015-05-19 03:29:22 +10:00
nick_m
aac167a19f
"Lock" mode is now "Constrained", make snap absolute modifier configurable.
...
- user can abs/rel modifier key in prefs->user interaction
suggested for linux - absolute->alt ignore snap->alt-shift
- Constrained mode works the same as button 2 drag (initial move
sets constraint axis).
2015-05-18 06:25:36 +10:00
198c4d1d88
gfx-card & performance testing
2015-05-02 04:54:59 +02:00
fd76f87ae1
Revert API to explicitly show tooltips:
...
gdk pointer grab offers a better solution.
2015-04-25 05:37:37 +02:00
d40ad1f6ff
fixup stuck persistent tooltips.
2015-04-25 03:00:57 +02:00
7565ebd4ed
API to set tooltip y-margin
2015-04-25 01:16:39 +02:00
a33cc51176
tweak persistent tooltip:
...
* don’t show empty tooltips
* “smaller” widgets may receive a leave event before the timeout
can show the tooltip (knobs in particula)
2015-04-25 01:02:53 +02:00
nick_m
35f69656e8
Window focus handling fixes.
...
Many windows were not getting key events.
Use magic focus infrastructure (built for widgets) to deliver key events
via window focus in/out.
2015-04-02 02:41:49 +11:00
36140d4d01
updated i18n files from ./waf i18n
2015-03-31 20:16:25 -04:00
e03882eec7
Update Russian translation
2015-03-30 09:19:00 -05:00
Edgar Aichinger
2d0adea86e
update German Translation #6213
2015-03-30 09:18:59 -05:00
Raphaël Doursenaud
6bfeb54168
Merge French translations
2015-03-28 23:35:11 +01:00
Frédéric Rech
71a32919a0
French translation update
2015-03-28 21:05:43 +01:00
Raphaël Doursenaud
e5422f3617
First pass updating french translation
2015-03-28 21:04:16 +01:00
4c2ea510e3
add API to query Gtk::ComboBoxText entries
...
..the overly complex C++ style variant.
iterate twice.. hell yeah.
2015-03-16 14:38:21 +01:00
83babb8a52
automatic error log window popup be gone.
2015-03-14 18:28:36 +01:00
nick_m
03160ee182
Tearoff windows are utility windows rather than toolbars.
2015-03-10 03:58:00 +11:00
7152634104
set name of GUI event loop thread
2015-02-05 16:31:59 -05:00
de85bfd857
fix #6117 - fader prelight
2015-01-28 02:22:52 +01:00
cab01bac6c
on OS X, do not require click to activate the application
2015-01-26 11:55:58 -05:00
bd3643a597
fix declaration of Cocoa NSApplicationDelegate methods
2015-01-25 12:52:26 -05:00
4166b05bda
Fix setting command key bindings on OSX.
2015-01-14 20:31:38 -05:00