This replaces almost all use of `SIGNAL()` and `SLOT()` with Qt5-style
strongly-typed connections. The `CONNECT()`, and `DCONNECT()` helpers
built around them have been removed.
Cases involving the `BUTTON_*` macros will be tackled in a separate
commit to improve clarity.
A few cases remain using `SIGNAL()` and `SLOT()` for now due to
complications that should be dealt with separately.
Since the actual interface object is now contained in the main Qt
Interface. This fixes regressions introduced by
537d41a468 which were breaking the vlc var
fetching.
this will allow to unload the interface module without unloading Qt in a
further patch.
the new structure is still a vlc object as we use it notably for logging
capacity and to interact with vlc variables
As discussed in MR #11 ([1]), `qtr()` is only meant to be used with static
strings, not constants or variables. Translation occurs through pointing
xgettext at the `qtr` keyword to find strings (as an alternative to `_()`,
taking into account the common need to convert to a Qt `String` type).
Thus use with anything other than a static string relies upon xgettext
having to recognise and ignore instances that do not actually wrap static
strings, which is considered to be wrong, even if it happens to work.
Accordingly here `qfut()` has been introduced. This is to be used in cases
where `qtr()` was incorrectly used around constant identifiers and
variables (i.e. where a combination of `qfu()` plus translation is needed,
with the string being defined elsewhere (with `N_()`)). The `qtr()` macro
itself now acts as a wrapper to `qfut()` for cases where the parameter is
in fact a static string, thus additionally marking it to be picked up by
xgettext, unlike other use of `qfut()`.
Notes for future readers, the set of macro names reflect:
- `qfu()`: Creates a Qt `String` type from UTF-8 ('f'=from, 'u'=utf8).
- `qfue()`: `qfu()` with ampersand escaping ('e'=escape).
- `qfut()`: `qfu()` with translation ('t'=translation).
- `qtu()`: Qt `String` to UTF-8 ('t'='to', 'u'=utf8).
- `qtr()`: this is a wrapper for `qfut()`, acting as an xgettext marker,
similar to `_()` except returning a Qt `String`. ('tr'=translate).
[1]: https://code.videolan.org/videolan/vlc/-/merge_requests/11
>From Qt 5.14.0, Qt::SplitBehavior enum is available and QString::split function causes warning when QString::SplitBehavior enum is used.
Signed-off-by: Pierre Lamot <pierre@videolabs.io>
Since the vout is now persistent, there is no need to store the variables on an
intermediate vlc_object_t (that was wrongly set to the interface during the
last UI merge).
IMPORTANT: the video filter settings will now only change for the main vout. We
need to define a way to change vout settings for other windows.
Note:
- Seekpoints have been replaced by title/chapters in PlayerControler
- Picture flow view has been removed
- Menuview is no longer required by VLCMenuBar
- The extension_SetInput is incompatible with the new API
Signed-off-by: Thomas Guillem <thomas@gllm.fr>
This corresponds to the previous changeset. In principles, this could
now also work for other inputs than V4L2.
This fixes two long standing deprecated warnings.
On windows last used folder was stored by its URL, which cannot by
used QFileDialog::getXXXFileName.
This patch will store last used folder by its URL systematically and
use QFileDialog::getXXXURL. This allows to store non file location (ie: smb)
Fix#19905
Signed-off-by: Hugo Beauzée-Luyssen <hugo@beauzee.fr>