Commit Graph

169 Commits

Author SHA1 Message Date
Martin Piatka
f6100f1f66 GUI: workaround qmake not knowing about c++17 2022-08-16 10:32:55 +02:00
Martin Piatka
66a7a3058a GUI: settings: replace QRandomGenerator by std random 2022-08-16 10:32:55 +02:00
Martin Piatka
95d064d41a GUI: Use random key for preview sockets 2022-08-16 10:32:55 +02:00
Martin Piatka
80a2540c8b GUI: previewWidget: take key as string_view 2022-08-16 10:31:50 +02:00
Martin Piatka
7509ec4c9a GUI: settings: generate a random string as preview key 2022-08-16 10:31:50 +02:00
Martin Piatka
9f21eba57d GUI: Bump C++ version to c++17 2022-08-16 10:00:00 +02:00
Martin Piatka
09ba7d0dad GUI: Remove unnecessary spacer 2022-06-28 16:50:28 +02:00
Martin Piatka
9daac0b249 GUI: Adjust layout resizing behaviour
* Layout groupboxes directly in grid layout
* Disable combo boxes resizing based on contents (sizeAdjustPolicy)
* Reduce minimum combo box width to 8
2022-06-28 16:50:28 +02:00
Martin Piatka
25f528fd93 GUI: Fix blocking process termination 2022-06-24 13:40:24 +02:00
Martin Piatka
d201d382c3 GUI/preview: Fix loading non multiple of 4 width textures 2022-06-24 13:40:24 +02:00
Martin Piatka
e835a6b983 GUI/preview: Add "debug.hpp" include to satisfy assert 2022-06-24 13:40:24 +02:00
Martin Piatka
ca620bc6cc GUI: switch to unix socket based preview 2022-06-24 13:40:24 +02:00
Martin Piatka
4e0e35d3de GUI: Set default surface format before creating window
This fixes "OpenGL 3.3 needed" error on MacOS introduced in
33219c3687
2022-06-20 13:29:09 +02:00
Martin Piatka
7ac17735c0 GUI: Fix assert condition 2022-06-20 10:28:09 +02:00
Martin Piatka
060f31aa2f GUI: Fix preview not updating on input change on win32 2022-06-15 12:58:02 +02:00
Martin Piatka
14fdb7b395 GUI: processMngr: verify that process started 2022-06-10 14:33:34 +02:00
Martin Piatka
07c44d499a GUI: Add ASSERT_GUI macro with a QMessageBox 2022-06-10 14:33:33 +02:00
Martin Piatka
1c817b003c GUI: Do not treat ug exiting by itself as a crash 2022-06-10 14:33:33 +02:00
Martin Piatka
bb93f54614 GUI: Reduce preview launch timeout 2022-06-10 14:33:33 +02:00
Martin Piatka
6d6762c7e5 GUI: Add DEBUG_ASSERT 2022-06-10 14:33:32 +02:00
Martin Piatka
c987f17986 GUI: Stop ultragrid processes asynchronously
Blocking until the process is finished was not very robust - in some
cases it could cause a deadlock preventing graceful exit. For example,
if the ug process is communicating with GUI through a socket and uses
blocking send - ug will wait for GUI to receive the data and GUI will
block waiting for ug to terminate.

Using this approach also allows to ignore crashes on exit, which are not
really worth reporting.
2022-06-10 14:33:32 +02:00
Martin Piatka
cc3a28d095 GUI: When killing processes leave a message in log
When ug process doesn't respond to termination GUI needs to kill it.
This makes the return code equal to 9 and GUI complains about a crash.
Without a message in the log this could have been confusing.
2022-06-09 12:57:37 +02:00
Martin Piatka
1749ad4398 GUI: preview: don't needlessly repeat gl calls
*setting attrib ptrs needs to be done only once
*don't update the texture on every draw
2022-05-31 14:19:50 +02:00
Martin Piatka
dd37b3f1ee GUI/preview: Split frame loading into a function 2022-05-31 14:16:27 +02:00
Martin Piatka
597cd2bb8c GUI: preview: make gl context current before getting funcs 2022-05-31 14:16:27 +02:00
Martin Piatka
33219c3687 GUI: Open the window as soon as possible
With this change the window should appear immediately. It will still be
unusable and frozen until all capababilities are queried, but should at
least give the user some indication that something is happening.
2022-05-31 14:03:49 +02:00
Martin Piatka
ab5f025ef2 GUI/qmake: compile astat directly
A bit simpler and prevents needless recompilation if the files don't
change
2022-05-27 11:34:35 +02:00
Martin Pulec
d5e0ac7354 GUI: missing override warning fix 2022-05-23 10:13:12 +02:00
Martin Piatka
588ce18c52 GUI/vuMeter: Simplify a bit 2022-03-24 14:38:35 +01:00
Martin Piatka
243c7e112a GUI: Fix warnings about local helper functions 2022-03-24 14:38:35 +01:00
Martin Piatka
2f63651d6f GUI/preview: Properly free gl objects, fix coverity uninit warn 2022-03-24 14:38:34 +01:00
Martin Piatka
6008925116 Makefile: Make GUI compilation less verbose 2022-03-23 10:00:30 +01:00
Martin Piatka
4badf76d92 GUI: Fix direct OpenGL calls 2022-03-09 14:56:43 +01:00
Martin Pulec
bbcf9e3e87 Added NDI branding 2022-01-12 13:48:00 +01:00
Martin Pulec
dcbfdf3e82 Basic Qt6 compat 2021-04-08 13:57:45 +02:00
Martin Piatka
41775b81d4 GUI: Move the "Advanced" menu item to settings with better name
Probably all of the useful devices are now reported by capabilities, so
it's likely to be not even needed, so to avoid confusion it's moved into
the settings window and given a more descriptive name
2021-03-15 14:59:55 +01:00
Martin Piatka
cf357e516c GUI: Fix inconsistent formatting 2021-03-15 14:59:54 +01:00
Martin Piatka
152f8d95b0 GUI: Parse embedded audio support 2021-03-15 14:59:54 +01:00
Martin Piatka
15f5234b5f GUI: Remove unneeded video codec array 2021-03-12 13:48:04 +01:00
Martin Piatka
859a819cdb Revert "GUI: Fix embedded audio playback devices not appearing"
This was a dirty fix for #106. Video display devices were reported with
the module name and device option (e.g. "decklink:device=0"). The
display devices are now reported as separate module name and device
option strings, which means that we can test for exact match.

This reverts commit dc9ede91f1.
2021-03-12 13:48:04 +01:00
Martin Piatka
bc3946af0d GUI: move settings generation into settings class 2021-03-12 13:48:04 +01:00
Martin Piatka
2101b6234f GUI: Remove the need to specify device option for each module
All device configuration is now reported from capabilities in the same
way. Therefore it is now possible to generate the .device settings keys
during runtime for all reported modules
2021-03-12 13:48:03 +01:00
Martin Piatka
c2fb0b15f8 GUI: Allow adding only unique suboptions 2021-03-12 13:48:03 +01:00
Martin Piatka
ee4a2f3b11 GUI: Parse the new capabilities version 2021-03-12 13:48:03 +01:00
Martin Piatka
2b7f6006c3 GUI: Make sure modes are only displayed for associated device 2021-03-12 13:48:03 +01:00
Martin Piatka
9938384929 GUI: Check if capabilities are complete and have correct version 2021-03-09 14:39:44 +01:00
Martin Piatka
1777866a65 GUI: simplify device parsing 2021-03-09 14:39:43 +01:00
Martin Piatka
45d8002f66 GUI: iterate over the --capabilities lines only once 2021-03-09 14:39:43 +01:00
Martin Piatka
e534c32fb1 GUI: Parse codec priority and sort codecs according to it 2021-03-09 14:39:43 +01:00
Martin Piatka
57bf1ab13e GUI: codec options tab 2021-03-09 14:39:43 +01:00