pulseview.git
4 years agoCMakeLists.txt: Drop superfluous "include(FindPkgConfig)".
Uwe Hermann [Thu, 3 Dec 2015 08:49:33 +0000 (09:49 +0100)]
CMakeLists.txt: Drop superfluous "include(FindPkgConfig)".

This causes the check for the pkg-config tool to be performed twice
since it is followed by another "find_package(PkgConfig)".

This can cause issues in some situation, see e.g.
https://github.com/mxe/mxe/issues/1023#issuecomment-161255930

This fixes bug #663.

4 years agoDecodeTrace: Don't dereference iterator pointing at end of container.
Tilman Sauerbeck [Wed, 2 Dec 2015 18:45:12 +0000 (19:45 +0100)]
DecodeTrace: Don't dereference iterator pointing at end of container.

4 years agoLogicSignal: Only draw the trigger marker for enabled channels.
Tilman Sauerbeck [Sat, 28 Nov 2015 11:53:56 +0000 (12:53 +0100)]
LogicSignal: Only draw the trigger marker for enabled channels.

This makes the behaviour consistent across LogicSignal's three
painting functions (paint_back(), paint_mid() and paint_fore()).

4 years agoLogicSignal: Put all trigger matches into a single trigger stage.
Tilman Sauerbeck [Mon, 23 Nov 2015 18:07:59 +0000 (19:07 +0100)]
LogicSignal: Put all trigger matches into a single trigger stage.

Previously each trigger match was assigned its own trigger stage,
which is problematic because devices may not support more than one
stage.

Ideally we would want the user to decide which matches go into
which stages, but that's a long way off and this change makes
things work just a little bit better for more devices.

Fixes bug #683.

4 years agoMainBar: Only show "total sampling time" tooltip if supported by device.
Tilman Sauerbeck [Mon, 16 Nov 2015 20:36:20 +0000 (21:36 +0100)]
MainBar: Only show "total sampling time" tooltip if supported by device.

If the device doesn't support SR_CONF_LIMIT_SAMPLES, the tooltip would
always show a sampling time of 0s.

4 years agoSession: document the purpose of sampling_mutex_.
Tilman Sauerbeck [Mon, 9 Nov 2015 17:33:42 +0000 (18:33 +0100)]
Session: document the purpose of sampling_mutex_.

4 years agoSession: don't hold sampling_mutex_ during signal emission.
Tilman Sauerbeck [Mon, 9 Nov 2015 06:28:59 +0000 (07:28 +0100)]
Session: don't hold sampling_mutex_ during signal emission.

We were holding the lock while emitting capture_state_changed.

4 years agoView: support multiple trigger markers in one acquisition.
Tilman Sauerbeck [Sun, 8 Nov 2015 20:30:13 +0000 (21:30 +0100)]
View: support multiple trigger markers in one acquisition.

Remove the previous acquisition's markers when a new acquisition
is started, and add a new one everytime we receive the SR_DF_TRIGGER
packet.

4 years agoMinor (Doxygen) comment cosmetics.
Uwe Hermann [Sun, 8 Nov 2015 18:32:00 +0000 (19:32 +0100)]
Minor (Doxygen) comment cosmetics.

4 years agoUse the TriggerMarker class to visualize the time of SR_DF_TRIGGER.
Tilman Sauerbeck [Sat, 7 Nov 2015 10:40:02 +0000 (11:40 +0100)]
Use the TriggerMarker class to visualize the time of SR_DF_TRIGGER.

This allows us to remove the name-based immovable hack from Flag.
Note that this also means that the trigger marker no longer has
a name at all.

4 years agoAdd TriggerMarker class.
Tilman Sauerbeck [Sat, 7 Nov 2015 10:24:42 +0000 (11:24 +0100)]
Add TriggerMarker class.

This will be used in a follow-up changeset for the markers that
visualize the time of SR_DF_TRIGGER.

Note that this copies a little code from the TimeMarker class,
but that seemed a better idea than deriving from it and disabling
the popup and label-drawing code.

4 years agoWhen hovering a ViewItem only change the mouse cursor for movable items.
Tilman Sauerbeck [Sat, 7 Nov 2015 14:41:58 +0000 (15:41 +0100)]
When hovering a ViewItem only change the mouse cursor for movable items.

4 years agoAdd a mechanism to make ViewItem classes immovable.
Tilman Sauerbeck [Sat, 7 Nov 2015 14:31:08 +0000 (15:31 +0100)]
Add a mechanism to make ViewItem classes immovable.

This adds a new method ViewItem::is_draggable(), which returns
true iff the view item is supposed to be draggable/movable.

Also, ViewItem::drag() is turned into a nop if the item is
not draggable.

4 years agoStoreSession: Observe proper range order
Soeren Apel [Thu, 5 Nov 2015 18:14:46 +0000 (19:14 +0100)]
StoreSession: Observe proper range order

When I wrote the original solution I wanted min() and abs()
to take care of this issue. However, I forgot that abs()
works on a difference of two uint64_t, so this subtraction
will underflow if the range is in the wrong order.
Converting them to int64_t isn't a good solution, so I'm now
using an ordinary condition instead.

4 years agoFix #685 by adding a special T marker when SR_DT_TRIGGER arrives
Soeren Apel [Thu, 5 Nov 2015 07:51:34 +0000 (08:51 +0100)]
Fix #685 by adding a special T marker when SR_DT_TRIGGER arrives

4 years agoMinor whitespace cosmetics.
Uwe Hermann [Wed, 4 Nov 2015 22:53:59 +0000 (23:53 +0100)]
Minor whitespace cosmetics.

4 years agoMainWindow: Merge save_selection_to_file() back into export_file()
Soeren Apel [Wed, 4 Nov 2015 17:38:13 +0000 (18:38 +0100)]
MainWindow: Merge save_selection_to_file() back into export_file()

4 years agoMainWindow: Add selection_only parameter to export_file()
Soeren Apel [Wed, 4 Nov 2015 17:37:39 +0000 (18:37 +0100)]
MainWindow: Add selection_only parameter to export_file()

4 years agoAdd "save selection range as..." to the export menu on the toolbar
Soeren Apel [Wed, 4 Nov 2015 16:03:26 +0000 (17:03 +0100)]
Add "save selection range as..." to the export menu on the toolbar

4 years agoMake ExportMenu accept a vector of actions
Soeren Apel [Wed, 4 Nov 2015 16:02:47 +0000 (17:02 +0100)]
Make ExportMenu accept a vector of actions

4 years agoRefactoring: move samplerate algo from View to Session
Soeren Apel [Wed, 4 Nov 2015 15:41:34 +0000 (16:41 +0100)]
Refactoring: move samplerate algo from View to Session

4 years agoIntroduce "save selection range as..." feature
Soeren Apel [Wed, 4 Nov 2015 15:33:07 +0000 (16:33 +0100)]
Introduce "save selection range as..." feature

4 years agoCMakeLists.txt: Enable unit tests by default.
Uwe Hermann [Tue, 3 Nov 2015 18:10:07 +0000 (19:10 +0100)]
CMakeLists.txt: Enable unit tests by default.

This will help to avoid missing some breakage scenarios.

4 years agoSuppress warnings from glibmm about deprecated auto_ptr
Daniel Elstner [Mon, 2 Nov 2015 21:29:46 +0000 (22:29 +0100)]
Suppress warnings from glibmm about deprecated auto_ptr

This fixes bug #654.

4 years agobuild: Limit auto-versioning to git revision hash
Daniel Elstner [Mon, 2 Nov 2015 21:14:39 +0000 (22:14 +0100)]
build: Limit auto-versioning to git revision hash

When building from a git checkout and HEAD does not exactly match
a tag, append the shortened revision hash to the hardcoded version
string. Do not attempt to provide any information beyond that.

This brings the PulseView versioning in line with the other modules
in the sigrok stack.

4 years agoavoid using deprecated std::autoptr
Aurelien Jacobs [Sat, 24 Oct 2015 20:18:42 +0000 (22:18 +0200)]
avoid using deprecated std::autoptr

This fixes the following g++-5 warning:
pv/dialogs/about.hpp:51:7: warning: â€˜template<class> class std::auto_ptr’ is deprecated [-Wdeprecated-declarations]
  std::auto_ptr<QTextDocument> supportedDoc;

4 years agowin32: Re-fix the Windows build (namespace pollution via windows.h).
Uwe Hermann [Sat, 24 Oct 2015 16:54:18 +0000 (18:54 +0200)]
win32: Re-fix the Windows build (namespace pollution via windows.h).

This brings back / extends fixes for bug #517.

4 years agoMinor update related to the libsigrok analog format changes.
Uwe Hermann [Tue, 20 Oct 2015 22:33:46 +0000 (00:33 +0200)]
Minor update related to the libsigrok analog format changes.

This is only a temporary fix, and assumes only SR_DF_ANALOG packets with
float data ever arrive. Support for other types will be needed later.

4 years agotest/CMakeLists.txt: Add missing files.
Uwe Hermann [Sun, 18 Oct 2015 14:20:46 +0000 (16:20 +0200)]
test/CMakeLists.txt: Add missing files.

4 years agoViewport: Anti-alias time items, but not row items
Joel Holdsworth [Sat, 3 Oct 2015 22:37:23 +0000 (16:37 -0600)]
Viewport: Anti-alias time items, but not row items

4 years agoView: Place non-grouped logic channels in a TraceGroup
Joel Holdsworth [Sat, 3 Oct 2015 22:29:30 +0000 (16:29 -0600)]
View: Place non-grouped logic channels in a TraceGroup

4 years agoViewWidget: Moved update() call into ViewItem
Joel Holdsworth [Mon, 7 Sep 2015 00:35:34 +0000 (18:35 -0600)]
ViewWidget: Moved update() call into ViewItem

4 years agoAnalogSignal: Apply scale handle dragging
Joel Holdsworth [Wed, 14 Oct 2015 03:17:25 +0000 (21:17 -0600)]
AnalogSignal: Apply scale handle dragging

4 years agoLogicSignal: Apply scale handle dragging
Joel Holdsworth [Wed, 14 Oct 2015 04:01:49 +0000 (22:01 -0600)]
LogicSignal: Apply scale handle dragging

4 years agoScaleSignalHandle: Initial implementation
Joel Holdsworth [Sun, 30 Aug 2015 15:52:14 +0000 (09:52 -0600)]
ScaleSignalHandle: Initial implementation

4 years agoViewWidget: Added drag-handling support for non-TraceTreeItems
Joel Holdsworth [Mon, 7 Sep 2015 00:39:29 +0000 (18:39 -0600)]
ViewWidget: Added drag-handling support for non-TraceTreeItems

4 years agoHeader: Added drag-handling support for non-TraceTreeItems
Joel Holdsworth [Sun, 30 Aug 2015 15:52:37 +0000 (09:52 -0600)]
Header: Added drag-handling support for non-TraceTreeItems

4 years agoViewItem: Make hit_box_rect take ViewItemPaintParams
Joel Holdsworth [Mon, 7 Sep 2015 02:29:31 +0000 (20:29 -0600)]
ViewItem: Make hit_box_rect take ViewItemPaintParams

4 years agoLogicSignal: Replaced SignalMargin with half font-height
Joel Holdsworth [Sun, 6 Sep 2015 23:57:54 +0000 (17:57 -0600)]
LogicSignal: Replaced SignalMargin with half font-height

4 years agoHeader: Hit-test items in reverse order
Joel Holdsworth [Sun, 6 Sep 2015 14:30:30 +0000 (08:30 -0600)]
Header: Hit-test items in reverse order

4 years agoViewItem: Added a default label_rect implementation
Joel Holdsworth [Tue, 1 Sep 2015 02:19:43 +0000 (20:19 -0600)]
ViewItem: Added a default label_rect implementation

4 years agoSignal: Added scale_handle_offset, scale_handle_dragged and scale_handle_released
Joel Holdsworth [Tue, 1 Sep 2015 02:13:08 +0000 (20:13 -0600)]
Signal: Added scale_handle_offset, scale_handle_dragged and scale_handle_released

4 years agoViewport: Render all types of RowItem
Joel Holdsworth [Tue, 1 Sep 2015 01:52:33 +0000 (19:52 -0600)]
Viewport: Render all types of RowItem

4 years agoTraceTreeItem: Update when selection state changes
Joel Holdsworth [Wed, 14 Oct 2015 03:28:14 +0000 (21:28 -0600)]
TraceTreeItem: Update when selection state changes

4 years agoViewItem: Make select virtual
Joel Holdsworth [Wed, 14 Oct 2015 03:21:32 +0000 (21:21 -0600)]
ViewItem: Make select virtual

4 years agoViewItem: Make drag_release virtual
Joel Holdsworth [Sun, 4 Oct 2015 21:56:30 +0000 (15:56 -0600)]
ViewItem: Make drag_release virtual

4 years agoViewItem: Make paint_label optional
Joel Holdsworth [Tue, 1 Sep 2015 01:51:00 +0000 (19:51 -0600)]
ViewItem: Make paint_label optional

4 years agoSignal: Derive from ViewItemOwner
Joel Holdsworth [Sun, 30 Aug 2015 15:02:28 +0000 (09:02 -0600)]
Signal: Derive from ViewItemOwner

4 years agoTraceTreeItemOwner: Removed non-const item_list accessor
Joel Holdsworth [Sun, 30 Aug 2015 15:31:17 +0000 (09:31 -0600)]
TraceTreeItemOwner: Removed non-const item_list accessor

4 years agoAdded ViewItemOwner
Joel Holdsworth [Mon, 17 Aug 2015 01:14:47 +0000 (19:14 -0600)]
Added ViewItemOwner

4 years agoRowItemIterator: Removed usage of RowItem::owner()
Joel Holdsworth [Sun, 23 Aug 2015 00:39:05 +0000 (18:39 -0600)]
RowItemIterator: Removed usage of RowItem::owner()

4 years agoSession: Removed signals_mutex(), and made signals() return a copy not a reference
Joel Holdsworth [Sat, 22 Aug 2015 16:01:49 +0000 (10:01 -0600)]
Session: Removed signals_mutex(), and made signals() return a copy not a reference

4 years agoLogicSignal: Call TriggerStage::begin with matches.begin()
Joel Holdsworth [Sun, 30 Aug 2015 15:01:53 +0000 (09:01 -0600)]
LogicSignal: Call TriggerStage::begin with matches.begin()

4 years agoTraceTreeItem: Added valid owner assert to drag_by
Joel Holdsworth [Sun, 30 Aug 2015 14:42:41 +0000 (08:42 -0600)]
TraceTreeItem: Added valid owner assert to drag_by

4 years agoUse list_by_type instead of iterator
Joel Holdsworth [Mon, 17 Aug 2015 00:20:57 +0000 (18:20 -0600)]
Use list_by_type instead of iterator

4 years agoReduce include bloat by including boost/thread/{locks,shared_mutex}.hpp directly
Joel Holdsworth [Mon, 17 Aug 2015 01:12:57 +0000 (19:12 -0600)]
Reduce include bloat by including boost/thread/{locks,shared_mutex}.hpp directly

4 years agoView: Moved in list_row_item_owners
Joel Holdsworth [Sat, 22 Aug 2015 21:54:00 +0000 (15:54 -0600)]
View: Moved in list_row_item_owners

4 years agoView: Use list_by_type to get TraceTreeItems
Joel Holdsworth [Sun, 16 Aug 2015 16:09:47 +0000 (10:09 -0600)]
View: Use list_by_type to get TraceTreeItems

4 years agoHeader: Use list_by_type in on_ungroup
Joel Holdsworth [Sun, 16 Aug 2015 15:22:08 +0000 (09:22 -0600)]
Header: Use list_by_type in on_ungroup

4 years agoTraceTreeItemOwner: Make list_by_type return a vector instead of a set
Joel Holdsworth [Fri, 16 Oct 2015 03:07:38 +0000 (21:07 -0600)]
TraceTreeItemOwner: Make list_by_type return a vector instead of a set

4 years agoTraceTreeItemOwner: Moved list_by_type template definition into header
Joel Holdsworth [Sun, 16 Aug 2015 15:44:31 +0000 (09:44 -0600)]
TraceTreeItemOwner: Moved list_by_type template definition into header

4 years agoRowItem: Moved hover_point_changed in
Joel Holdsworth [Sun, 16 Aug 2015 15:35:54 +0000 (09:35 -0600)]
RowItem: Moved hover_point_changed in

4 years agoViewItem: Make a create_popup optional
Joel Holdsworth [Mon, 27 Jul 2015 02:52:46 +0000 (20:52 -0600)]
ViewItem: Make a create_popup optional

4 years agoTraceTreeItem: Separated from RowItem
Joel Holdsworth [Mon, 27 Jul 2015 01:24:11 +0000 (19:24 -0600)]
TraceTreeItem: Separated from RowItem

4 years agoViewItemPaintParams: Added missing include
Joel Holdsworth [Tue, 1 Sep 2015 01:51:21 +0000 (19:51 -0600)]
ViewItemPaintParams: Added missing include

4 years agoAnalogSignal: Removed set_scale
Joel Holdsworth [Sun, 4 Oct 2015 23:24:03 +0000 (17:24 -0600)]
AnalogSignal: Removed set_scale

Nothing uses it now

4 years agoViewItemPaintParams: Fixed header guard
Joel Holdsworth [Mon, 27 Jul 2015 01:11:41 +0000 (19:11 -0600)]
ViewItemPaintParams: Fixed header guard

4 years agoRowItem: Corrected header guard
Joel Holdsworth [Sat, 4 Jul 2015 17:08:31 +0000 (18:08 +0100)]
RowItem: Corrected header guard

5 years agowindows: Install data files into share subdirectory
Daniel Elstner [Sat, 3 Oct 2015 15:51:00 +0000 (17:51 +0200)]
windows: Install data files into share subdirectory

This allows these files to be found on standard paths relative
to the location of the executable.

5 years agoandroid: Include firmwares in the APK
Marcus Comstedt [Wed, 30 Sep 2015 18:25:49 +0000 (20:25 +0200)]
android: Include firmwares in the APK

5 years agoandroid: Fix copylibs task to include the right libs
Marcus Comstedt [Wed, 30 Sep 2015 18:22:58 +0000 (20:22 +0200)]
android: Fix copylibs task to include the right libs

Since more and more libs are losing their versioned soname, the
heuristic of including libs with versioned sonames is an increasingly
poor one.  Instead, simply blacklist the libs we do not want.

5 years agoandroid: Don't include qtaccessiblewidgets plugin
Marcus Comstedt [Wed, 30 Sep 2015 18:20:46 +0000 (20:20 +0200)]
android: Don't include qtaccessiblewidgets plugin

Since Qt 5.4.0, accessibility is no longer a plugin.

5 years agoandroid: Check for firmware in standard locations, too
Daniel Elstner [Thu, 1 Oct 2015 12:59:03 +0000 (14:59 +0200)]
android: Check for firmware in standard locations, too

5 years agoandroid: Read firmware resources from assets
Daniel Elstner [Sat, 26 Sep 2015 23:14:11 +0000 (01:14 +0200)]
android: Read firmware resources from assets

Set up a resource reader to load firmware resources as assets
bundled with the APK.

5 years agoSAMPLERATE is a guint64
Jonathan Dahan [Mon, 10 Aug 2015 18:37:34 +0000 (14:37 -0400)]
SAMPLERATE is a guint64

This fixes bug #621.

5 years agoRuler: Don't use a function that is only available in recent boost versions
Jens Steinhauser [Fri, 4 Sep 2015 16:31:48 +0000 (18:31 +0200)]
Ruler: Don't use a function that is only available in recent boost versions

5 years agoRuler: Prevent ticks from disappearing at high zoom levels
Jens Steinhauser [Fri, 4 Sep 2015 16:23:02 +0000 (18:23 +0200)]
Ruler: Prevent ticks from disappearing at high zoom levels

5 years agoBuild: Substitute build configuration into NSIS script
Daniel Elstner [Fri, 4 Sep 2015 13:24:59 +0000 (15:24 +0200)]
Build: Substitute build configuration into NSIS script

This enables out-of-source builds of the Windows installer,
and no longer hardcodes the MXE/mingw prefix.

5 years agoBuild: Fix build with Qt 4 moc
Daniel Elstner [Fri, 4 Sep 2015 14:02:03 +0000 (16:02 +0200)]
Build: Fix build with Qt 4 moc

5 years agoViewItem: Adjust the threshold between dark and light colors
Jens Steinhauser [Thu, 3 Sep 2015 12:47:13 +0000 (14:47 +0200)]
ViewItem: Adjust the threshold between dark and light colors

Previously, the function returned 'Qt::black' for all used colors except
when black itself was passed in, making the text on brown, blue or violet
backgrounds very hard to read.

5 years agoViewport: Don't draw the cursors and markers antialiased
Jens Steinhauser [Thu, 3 Sep 2015 13:19:20 +0000 (15:19 +0200)]
Viewport: Don't draw the cursors and markers antialiased

After adding them or zooming around, the cursors and markers could
appear washed out.

5 years agoRuler: Don't draw the tick marks antialiased
Jens Steinhauser [Thu, 3 Sep 2015 12:42:40 +0000 (14:42 +0200)]
Ruler: Don't draw the tick marks antialiased

Next to the sharp font of the timestamp labels the washed out markers
didn't look that good.

5 years agoUntangle the time formatting functions a bit
Jens Steinhauser [Thu, 3 Sep 2015 11:50:53 +0000 (13:50 +0200)]
Untangle the time formatting functions a bit

The formatting depending on the distance between two timestamps is
reintroduced with the responding function residing in the 'Ruler' class
(the prime user of that function).

Fixes a rounding bug for the least significant digit in the
'format_time_minutes()' function.

The 'Cursor' and 'CursorPair' classes now use the same precision when
formatting timestamps as the rest of the program.

5 years agoView: Do not emit superfluous signals in a loop
Jens Steinhauser [Wed, 2 Sep 2015 11:37:56 +0000 (13:37 +0200)]
View: Do not emit superfluous signals in a loop

5 years agoView: Change the type of tick_period to pv::util::Timestamp
Jens Steinhauser [Wed, 2 Sep 2015 09:25:37 +0000 (11:25 +0200)]
View: Change the type of tick_period to pv::util::Timestamp

This makes the tick position/label calculation in the ruler more precise,
avoiding rounded values for zero which would yield to "+0" or "-0" labels.

5 years agoRuler: Factor out the calculation of the tick spacing
Jens Steinhauser [Thu, 3 Sep 2015 13:26:17 +0000 (15:26 +0200)]
Ruler: Factor out the calculation of the tick spacing

This avoids useless recalculations of the tick spacings on every mouse
pointer move and makes the function easier to test.

5 years agoRuler: Fix tick mark calculation
Jens Steinhauser [Sun, 30 Aug 2015 12:16:11 +0000 (14:16 +0200)]
Ruler: Fix tick mark calculation

Prior to this change, due to floating point errors the loop that
calculates the tick mark positions could loop thousands of iterations
while zooming in at high time values, blocking the whole UI and leading
to distorted text in the end.

5 years agoUse typesafe enum classes in pv::util
Jens Steinhauser [Sun, 30 Aug 2015 21:20:21 +0000 (23:20 +0200)]
Use typesafe enum classes in pv::util

5 years agoAdd a spin box widget for timestamp values
Jens Steinhauser [Sat, 29 Aug 2015 14:40:13 +0000 (16:40 +0200)]
Add a spin box widget for timestamp values

5 years agoformat_time(): Use the timestamp type in the calculation
Jens Steinhauser [Sun, 30 Aug 2015 21:11:31 +0000 (23:11 +0200)]
format_time(): Use the timestamp type in the calculation

5 years agoformat_si_value(): Use the timestamp type in the calculation
Jens Steinhauser [Sat, 29 Aug 2015 14:57:37 +0000 (16:57 +0200)]
format_si_value(): Use the timestamp type in the calculation

5 years agoUse a type with a greater resolution to represent time values
Jens Steinhauser [Sun, 30 Aug 2015 21:00:34 +0000 (23:00 +0200)]
Use a type with a greater resolution to represent time values

Fixes #627.

5 years agoRemove unused arguments from 'format_time()'
Jens Steinhauser [Fri, 28 Aug 2015 15:34:29 +0000 (17:34 +0200)]
Remove unused arguments from 'format_time()'

This function is already complicated enough (it tries to guess in what
context it is currently used and changes its behaviour accordingly), so
remove the unused parameters to make it somewhat comprehensible.

5 years agoFix #605 by closing current device when another is selected
Soeren Apel [Fri, 4 Sep 2015 01:34:08 +0000 (03:34 +0200)]
Fix #605 by closing current device when another is selected

As the device manager class holds a pointer to all devices
they will never be destroyed until PV exits. Devices are
opened with the first call to create() but only closed in
the destructor. Together, this results in devices never
being closed.

This patch fixes this by renaming create() to open()
and introducing a matching close() method that the
session class calls when a different device is to be
selected.

5 years agoFix #592 completely by showing the actual error message
Soeren Apel [Fri, 28 Aug 2015 06:35:56 +0000 (08:35 +0200)]
Fix #592 completely by showing the actual error message

Before, the supplied infoMessage was ignored (unnamed parameter)
and instead the local variable infoMessage was used, which was
empty. For this reason, the cause of the error never showed.

5 years agoDon't try to store a reference to a shared pointer.
Martin Ling [Tue, 25 Aug 2015 18:30:39 +0000 (19:30 +0100)]
Don't try to store a reference to a shared pointer.

Fixes #596.

5 years agoRuler scale calculation optimization
Soeren Apel [Mon, 24 Aug 2015 19:25:04 +0000 (21:25 +0200)]
Ruler scale calculation optimization

5 years agoFix wrong ruler scale after loading a file
Soeren Apel [Mon, 24 Aug 2015 19:23:32 +0000 (21:23 +0200)]
Fix wrong ruler scale after loading a file

5 years agoFix #595 by correctly handling UINT64_MAX and INT_MAX boundaries
Soeren Apel [Mon, 24 Aug 2015 16:21:15 +0000 (18:21 +0200)]
Fix #595 by correctly handling UINT64_MAX and INT_MAX boundaries

By using an int64_t to hold UINT64_MAX, it was made to overflow
to -1. This lead to range_min=0 and range_max=-1, resulting in
a disabled spin button.

5 years agoFix #597 by disabling device-related toolbar buttons as necessary
Soeren Apel [Mon, 24 Aug 2015 14:56:05 +0000 (16:56 +0200)]
Fix #597 by disabling device-related toolbar buttons as necessary