* connection lines: Fix line selection bug
Connection line was unselected if selection changed from input port to
output port for same connection, probably due to repaint order issue.
New variant should be more stable, yet not requiring non-standard
state variable.
* rack: Reset to noop color if unknown skin set
Some skins are initially designed to have hardcoded, color scheme. With
previously selected dark color and new dark skin, it may become close to
black.
* patchcanvas: Working Ctrl for rubberband selection
* patchcanvas: optimize calls in zoom-fit
* patchcanvas: optimize fixScaleFactors
* patchcanvas: speedup zoom_in/zoom_out
* patchcanvas: disconnect ports by Ctrl+MidButton
* patchcanvas: optimize rubberband update
* patchcanvas: correct cursor unset
* fixScaleFactor: support transform argument
* patchcanvas: speedup wheelEvent handler
Direct operations on QTransform go faster than via QGraphicsView
convenience methods.
* patchcanvas: optimize QPointF construction
* patchcanvas: Сursor for connection cut mode
* patchcanvas: rubberband scaling support
* patchcanvas: Limit top scale by canvas size
* patchcanvas: Fix box position after each movement, even creation
* minimap: Scaling support
Pressing RMB after LMB activates special scaling mode. Scroll wheel to
scale in any mode or without such.
* patchcanvas: Take port lineHinting from chosen pen
* patchcanvas: Set default port offset to 0px
Besides of more tidy look with certain themes, it also noticed to be
workaround for problem, when connection lines get under port's parent
box, after selection changes.
* patchcanvas: Finer connection placement relative to ports
* Fluidsynths: Ensure fluidsynth's defaults are set once and in one place
This makes transition fluidsynth 1.x -> 2.x a lot easier.
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
* Enable support for fluidsynth >= 2.0.0
This reverts commit e67ba7c25b.
* Fixes for fluidsynth >= 2.0.0
* preset iteration and getters have changed
* constants for most defaults are no more available in public headers -
fluidsynth wants to be asked
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
* Fluidsynths: Ensure fluidsynth's defaults are set once and in one place
This makes transition fluidsynth 1.x -> 2.x a lot easier.
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
* Enable support for fluidsynth >= 2.0.0
This reverts commit e67ba7c25b.
* Fixes for fluidsynth >= 2.0.0
* preset iteration and getters have changed
* constants for most defaults are no more available in public headers -
fluidsynth wants to be asked
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
* minimap: Update on any selection change
For now minimap is already updated when box (not port) is selected.
Also it will update if port is selected by Ctrl+C while box is already
selected. This commit just makes this behavior more stable and
predictable,
* minimap: Align frame bottom with canvas frame
* minimap: Fixed & unified cursor pos expressions
Another approach, yet working in both places without rewriting.
Don't add xp or yp, as it displaces right/bottom limit by 1px
* minimap: Better custom frame
New implementation has outer 1px shadow above parent background
and internal enlight border above background. All is pixel-aligned.
* minimap: Fix cursor position on lowest scale
When scale is close to 0.2, view area may become bigger than working
area. After such "fix" viewRect position is broken.
* minimap: Brightness-aware shading on side gaps
* mininap: Set viewRect lineHinting from proper pen
* minimap: Cliped rendering for rounded corners
* minimap: Frame width awareness
Draw content only inside frame when external qt theme is used.
* minimap: Implement full resize with any ratio
* minimap: Better cursor positioning
* minimap: Minimal corner rounding
Make rounding to look good with rounded frames, still not ugly
with square themes.
* minimap: Reworked frame
Mimic tab frame by placing existing frame as line child to QTabWidget.
Frame derivation still handy to create inner sunken frame, just like
in two other frames around.
* minimap-framewidth: Follow system style change
* minimap: Special blending modes for view cursor
Adding for dark color schemes and subtracting for light preserve more
contrast, compared to default blending. Difference is calculated from
background and rubberband colors.
* Better buttons look in sidebar fileview
* minimap: Hold cursor inside map in view move mode
* minimap: Natural move
Would be more natural to have centered position in canvas view, when
pointed in minimap.
* optimization: MainWindow resize event (no more issue #148)
minimap: Brightness-aware shading on side gaps
* CarlaStyle: more careful rounded corner drawing
Rounded rectangles have transparent corners even with opaque colors.
During compositing colors from several such objects are mixed,
producing unexpected artifacts. Also outer contour must have
bigger rounding - values for inner/outer rects are spreaded to be
around of original 2.0px, to preserve original look.
* CarlaStyle: better separator color
Create separator color from softened text color.
* paramspinbox: Keep scrollbar size closer to outer frame
Unless QStyle allowes any widget style, or it is entries and scrollbars
provide essential way to control or read frame parameters, scrollbar is
still set a bit smaller to counter theme-side deviations between
scrollbar and spinbox visible height while real height is equal.
* CarlaStyle: better light shade
* CarlaStyle: fix visible spinbox height regression
When spinbox is in one row with scrollbar or entry field, all vertically
expanding, spinbox look a bit lower.
* CarlaStyle: completed spinbox buttons light border
* CarlaStyle: fixed spinbox button rects, better borderwidth balance
Integer button rectangles now produce pixel-aligned non-overlaping,
still centered rectangles. SpinBox border width is reduced to minimum,
right enough to keep entry widget corners out of outer rounded border
parts.
* CarlaStyle: constification (SpinBox drawing)
* CarlaStyle: spinbox drawing fixes
Rely to correct buttons rectangles, handle correctly both even and odd
spinbox heights. Disappeared buttons highlight glitch, appeared when
moving mouse one button to another.
* CarlaStyle, SpinBox: contrast highlight margin between buttons
* CarlaStyle spinbox: more careful buttons highlight
* CarlaStyle, spinbox: better arrows placement
* paramspinbox: Hide scrollbar border
* CarlaStyle: nicer rounded corners in deep-dark colors (less radius deviation)
* CarlaStyle CT_ToolButton: took less space than combobox in same layout
As in designer, carla_host.ui has plus/minus buttons size 25x24, with
height equal to adjacent combobox. It seems, system carla style already
got fix.