Vesa-Pekka Palmu [Sun, 20 Nov 2022 18:45:09 +0000 (20:45 +0200)]
CMakeLists.txt: consistent whitespace in atomics check
Previous CMakeLists.txt rules used to mix TAB and SPACE indentation.
Consistently use TAB instead. This amends commit 4da54b6be6a1 which
introduced the check for the atomics library.
[ no change in behaviour, see whitespace ignoring diff to verify ]
Gerhard Sittig [Mon, 21 Nov 2022 13:20:53 +0000 (14:20 +0100)]
Signal: Add missing item separator in channel names list
The SCL item in the ChannelNames[] table lacked the separator, which
made it "run into" the next item (preprocessor string concatenation).
Add the missing separator.
This amends commits 9e40e83daf6a (which introduced the lack of the
separator while it did not take effect yet) and 7d5a9c3e79cb (which
made it take effect when items got added and rearranged).
Gerhard Sittig [Sat, 29 Oct 2022 19:37:21 +0000 (21:37 +0200)]
viewport: event->position() isn't Qt 5.12, tweak version check
According to https://doc.qt.io/qt-5/qwheelevent.html#position the
QWheelEvent::position() method was introduced in Qt 5.14. Adjust
the Qt version check to unbreak builds with Qt 5.12.
Self Not Found [Wed, 14 Sep 2022 13:44:04 +0000 (21:44 +0800)]
Settings: Fix the default item in the language combobox
If the language is not set, the default language will be English, but the combobox will show "German"(The first item in language combobox)
This is because the current_language will set to "" if the language is not set, and it doesn't match the default language "en"
Gerhard Sittig [Mon, 3 Oct 2022 19:10:40 +0000 (21:10 +0200)]
DecodeSignal: Process late annotations which are sent upon EOF
When protocol decoders learn about the end of the input data, they may
emit more annotations before their operation terminates or gets reset
and re-fed. Do process these late annotations in the application, too.
Without this change, the last annotations are not seen. See bug #292
for an example.
Łukasz Stelmach [Mon, 7 Dec 2020 17:09:43 +0000 (18:09 +0100)]
Viewport: scroll horizontally with the vertical wheel and the shift key
Some software (notably Gimp and Inkscape) allows horizontal scrolling
with the vertical wheel when the shift key is pressed. Implement this
behaviour for easier navigation with single wheel mice.
Gerhard Sittig [Sun, 2 Oct 2022 14:07:10 +0000 (16:07 +0200)]
manual: add cmake project() directive for standalone operation
The cmake rules in the manual/ subdirectory are designed to work both in
the context of the application build, as well as for exclusive creation
of the manual.
Add a project() directive in the manual/ cmake rules. Its absence was
not fatal but resulted in warnings. This amends commit 074da67ee25a.
Paul Kasemir [Tue, 30 Aug 2022 18:32:49 +0000 (12:32 -0600)]
Segment: Include <memory> so we don't get error at compile time
Example build failure:
In file included from /home/paul/sigrok-util/cross-compile/mingw/build_release_64/pulseview/pv/data/segment.cpp:21:
/home/paul/sigrok-util/cross-compile/mingw/build_release_64/pulseview/pv/data/segment.hpp:130:14: error: 'shared_ptr' in namespace 'std' does not name a template type
130 | typedef std::shared_ptr<pv::data::Segment> SharedPtrToSegment;
| ^~~~~~~~~~
/home/paul/sigrok-util/cross-compile/mingw/build_release_64/pulseview/pv/data/segment.hpp:32:1: note: 'std::shared_ptr' is defined in header '<memory>'; did you forget to '#include <memory>'?
31 | #include <QObject>
+++ |+#include <memory>
32 |
Gerhard Sittig [Tue, 22 Feb 2022 00:34:25 +0000 (01:34 +0100)]
Device: Display "continuous" checkbox when settable in the driver.
This has gone unnoticed because the majority of acquisition devices
either have local memory or require streaming. Only few support both
approaches and users can select the most appropriate approach for
their respective use case. Observed with Kingst LA devices.
Gerhard Sittig [Sun, 26 Dec 2021 06:54:36 +0000 (07:54 +0100)]
cmake: check for optional libsigrokdecode features (send EOF)
Implement a feature check for the srd_session_send_eof() routine which
depends on the libsigrokdecode version. This test implementation is a
little more redundant than necessary, check_symbol_exists() would be
preferred instead but would not work in my local setup.
Ralf [Sun, 10 Jan 2021 09:07:14 +0000 (10:07 +0100)]
Save dialog: Fix cancellation
Without the fix cancellation of save data does not work
How to reproduce:
1. Start PV with demo device and generate sufficient data, e.g. demo device 1GSa/s, 10MSa
2. Save data (should take at least 30s) and try to cancel saving
3. PV continues saving data and dialog reappears after next progress update
Stefan Brüns [Wed, 28 Apr 2021 00:14:47 +0000 (02:14 +0200)]
Fix broken build due to C++ template behind C linkage
glib/gatomic.h since 2.68 includes type_traits, which causes a compilation
error:
In file included from /usr/include/glib-2.0/glib/gatomic.h:31,
from /usr/include/glib-2.0/glib/gthread.h:32,
from /usr/include/glib-2.0/glib/gasyncqueue.h:32,
from /usr/include/glib-2.0/glib.h:32,
from /usr/include/libsigrokdecode/libsigrokdecode.h:25,
from /home/abuild/rpmbuild/BUILD/pulseview-0.4.2/pv/data/decode/annotation.cpp:21:
/usr/include/c++/10/type_traits:2308:3: error: template with C linkage
2308 | template<typename _CTp, typename _Rp>
As libsigrokdecode.h declares extern C linkage itself where necessary,
remove it from pulseviews include statements from the last two occasions.
Soeren Apel [Thu, 7 Jan 2021 09:03:23 +0000 (10:03 +0100)]
Don't set unicode to true
NSIS 2.x doesn't know the unicode switch and chokes, 3.07 defaults
it to true as well.
As there doesn't seem to be a graceful way to handle 2.x versions,
we have to remove the unicode switch and the warning in 3.x (< 3.7)
installers shall be ignored.
1) Fixed use of raw pointers to shared_ptr-managed instances
2) Fixed bug due to newly-introduced shared_from_this
3) More nullptr checks
4) Add muxer thread interrupting
Gerhard Sittig [Thu, 20 Aug 2020 07:11:20 +0000 (09:11 +0200)]
cmake: move project() before other statements
The included GNUInstallDirs logic needs to know about the programming
languages which are used in the project. Without this spec a verbose
developer message gets emitted:
CMake Warning (dev) at $HOME/share/cmake-3.18/Modules/GNUInstallDirs.cmake:225 (message):
Unable to determine default CMAKE_INSTALL_LIBDIR directory because no
target architecture is known. Please enable at least one language before
including GNUInstallDirs.
Call Stack (most recent call first):
CMakeLists.txt:24 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
Move the project() statement in CMakeList.txt before the include(), and
specify the C and C++ programming languages (C is needed at configuration
time for feature detection, before the application's C++ sources get built).
1) Window didn't immediately show when signal color was changed
2) Removing a PD and adding another caused the window to stay empty
forever if "hide hidden" was enabled
3) Changing the PD showed the previous PD's content in the window
until the mouse cursor moved into the main trace view to cause a
repaint