- Added a curveToPolygon function that creates a curved polygon,
eliminating the need to generate lots of small ones to make a curve look
smooth.
- Cleaned up the rest of the code a bit
- UBGraphicsScene calls UBGraphicsStroke::addPoint, which returns a list
of points that can be drawn. It may be none (e.g we discard very small
segments), one (if we do no interpolation) or several.
- Added a UBInterpolator base, abstract class. Various interpolation
methods can be added easily.
- Current methods: Basic spline (custom), Catmull-Rom spline (based on
alglib), and Bézier
- Added a setting to toggle interpolation. Added this to the UI as well
Caused problems e.g with podcast mode, where if the control and display
views were swapped in the preferences, the wrong screen would be recorded
when switching to desktop mode during recording of the podcast.
This happened even if only one screen was plugged in, so a black screen
was recorded in that case (at least on OS X 10.10)
- Qt plugins and libraries (and associated files) bundled only if necessary
- Dependencies corrected (for Ubuntu 14.04 and 16.04, at least),
mostly manually for now
- run.sh sets Qt plugin path environment variable (=> qt.conf
no longer needed; removed)
- Separated building and packaging
- OpenBoard is now installed in /opt/openboard instead of
/usr/local/OpenBoard-$VERSION/
- Placed a shortcut to run.sh in /usr/bin (so it can be executed with
the `openboard` command)
- Corrected .deb control files to avoid warnings e.g when installing via
software center on Ubuntu
- Added xdg bindings so that .ubz files are recognized and opened
automatically with OpenBoard
- Moved the release scripts into their own folder to clean up the
repository root a bit
(Merge branch 'new-release-script-linux' into dev)