[vlc-devel] [PATCH] qt: main_interface: remove deprecation warning on qmlRegisterType
Jean-Baptiste Kempf
jb at videolan.org
Wed Apr 8 16:39:23 CEST 2020
LGTM.
However, I would put this generic fonction in a different file, tbh.
On Mon, Apr 6, 2020, at 15:55, Alexandre Janniaux wrote:
> qmlRegisterType is deprecated in Qt 5.14 in favour of
> qmlRegisterAnonymousType which is introduced in 5.14.
>
> The warning was spamming multiple time as it was used multiple time.
> ---
> modules/gui/qt/maininterface/main_interface.cpp | 10 +++++-----
> modules/gui/qt/maininterface/main_interface.hpp | 15 +++++++++++++++
> 2 files changed, 20 insertions(+), 5 deletions(-)
>
> diff --git a/modules/gui/qt/maininterface/main_interface.cpp
> b/modules/gui/qt/maininterface/main_interface.cpp
> index 8027b116cb..3bc869cd35 100644
> --- a/modules/gui/qt/maininterface/main_interface.cpp
> +++ b/modules/gui/qt/maininterface/main_interface.cpp
> @@ -357,11 +357,11 @@ void MainInterface::createMainWidget( QSettings *
> )
> qmlRegisterType<MlFoldersModel>( "org.videolan.medialib", 0,
> 1, "MLFolderModel");
>
> //expose base object, they aren't instanciable from QML side
> - qmlRegisterType<MLAlbum>();
> - qmlRegisterType<MLArtist>();
> - qmlRegisterType<MLAlbumTrack>();
> - qmlRegisterType<MLGenre>();
> - qmlRegisterType<MLVideo>();
> + registerAnonymousType<MLAlbum>( "org.videolan.medialib", 1 );
> + registerAnonymousType<MLArtist>( "org.videolan.medialib", 1 );
> + registerAnonymousType<MLAlbumTrack>( "org.videolan.medialib", 1 );
> + registerAnonymousType<MLGenre>( "org.videolan.medialib", 1 );
> + registerAnonymousType<MLVideo>( "org.videolan.medialib", 1 );
> }
>
> qmlRegisterUncreatableType<NavigationHistory>("org.videolan.vlc",
> 0, 1, "History", "Type of global variable history" );
> diff --git a/modules/gui/qt/maininterface/main_interface.hpp
> b/modules/gui/qt/maininterface/main_interface.hpp
> index 9333d9918d..e04ae8b1d8 100644
> --- a/modules/gui/qt/maininterface/main_interface.hpp
> +++ b/modules/gui/qt/maininterface/main_interface.hpp
> @@ -30,6 +30,7 @@
> #include "player/player_controller.hpp"
> #include "voutwindow/qvoutwindow.hpp"
>
> +#include <QtGlobal>
> #include <QSystemTrayIcon>
> #include <QStackedWidget>
> #include <QtQuick/QQuickView>
> @@ -262,6 +263,20 @@ signals:
> void hasEmbededVideoChanged(bool);
> void toolBarConfUpdated();
> void showRemainingTimeChanged(bool);
> +
> +private:
> + template<class T>
> + void registerAnonymousType( const char *uri, int versionMajor );
> };
>
> +template<class T>
> +void MainInterface::registerAnonymousType( const char *uri, int versionMajor )
> +{
> +#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
> + qmlRegisterAnonymousType<T>( uri, versionMajor );
> +#else
> + qmlRegisterType<T>();
> +#endif
> +}
> +
> #endif
> --
> 2.26.0
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
--
Jean-Baptiste Kempf - President
+33 672 704 734
More information about the vlc-devel
mailing list