1
0
Fork 0
mirror of https://github.com/HenkKalkwater/harbour-sailfin.git synced 2024-12-22 22:15:17 +00:00

Merge branch 'master' into qtquick

This commit is contained in:
Chris Josten 2021-03-19 21:28:41 +01:00
commit 96e19548d7
585 changed files with 108386 additions and 1352 deletions

1
.gitignore vendored
View file

@ -4,6 +4,7 @@ rpm/*.spec
# Build folders
build/
build-*/
.dub/
# IDE files
*.user

View file

@ -4,23 +4,24 @@ set (CMAKE_CXX_STANDARD 17)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")
set(CMAKE_AUTOMOC ON)
cmake_policy(SET CMP0048 NEW)
set(CMAKE_CXX_STANDARD 17)
# Options
option(SAILFISHOS "Build SailfishOS version of application")
option(PLATFORM_QTQUICK "Build QtQuick version of application")
option(PLATFORM_SAILFISHOS "Build SailfishOS version of application" OFF)
option(PLATFORM_QTQUICK "Build QtQuick version of application" ON)
if (NOT SAILFIN_VERSION)
set(SAILFIN_VERSION "1.0.0")
endif()
if(SAILFISHOS)
if(PLATFORM_SAILFISHOS)
# Hardcode this less?
set(CMAKE_INSTALL_LIBDIR "${CMAKE_INSTALL_PREFIX}/share/harbour-sailfin/lib")
endif()
add_subdirectory(core)
if(SAILFISHOS)
if(PLATFORM_SAILFISHOS)
add_subdirectory(sailfish)
else()
elseif(PLATFORM_QTQUICK)
add_subdirectory(qtquick)
endif()

View file

@ -2,34 +2,50 @@ project(jellyfin-qt VERSION 0.1.0)
find_package(Qt5 5.6 COMPONENTS Multimedia Network Qml WebSockets REQUIRED)
include(GNUInstallDirs)
include(GeneratedSources.cmake)
set(jellyfin-qt_SOURCES
src/credentialmanager.cpp
src/jellyfin.cpp
src/jellyfinapiclient.cpp
src/jellyfinapimodel.cpp
src/jellyfindeviceprofile.cpp
src/jellyfinitem.cpp
src/jellyfinplaybackmanager.cpp
src/jellyfinwebsocket.cpp
src/jsonhelper.cpp
src/serverdiscoverymodel.cpp)
# src/DTO/dto.cpp
src/support/loader.cpp
src/apiclient.cpp
src/apimodel.cpp
src/credentialmanager.cpp
src/deviceprofile.cpp
src/jellyfin.cpp
src/jsonhelper.cpp
src/playbackmanager.cpp
src/remotedata.cpp
src/serverdiscoverymodel.cpp
src/websocket.cpp)
list(APPEND jellyfin-qt_SOURCES ${openapi_SOURCES})
set(jellyfin-qt_HEADERS
include/JellyfinQt/credentialmanager.h
include/JellyfinQt/jellyfin.h
include/JellyfinQt/jellyfinapiclient.h
include/JellyfinQt/jellyfinapimodel.h
include/JellyfinQt/jellyfindeviceprofile.h
include/JellyfinQt/jellyfinitem.h
include/JellyfinQt/jellyfinplaybackmanager.h
include/JellyfinQt/jellyfinwebsocket.h
include/JellyfinQt/jsonhelper.h
include/JellyfinQt/serverdiscoverymodel.h)
# include/JellyfinQt/DTO/dto.h
include/JellyfinQt/support/loader.h
include/JellyfinQt/apiclient.h
include/JellyfinQt/apimodel.h
include/JellyfinQt/credentialmanager.h
include/JellyfinQt/deviceprofile.h
include/JellyfinQt/jellyfin.h
include/JellyfinQt/jsonhelper.h
include/JellyfinQt/playbackmanager.h
include/JellyfinQt/remotedata.h
include/JellyfinQt/serverdiscoverymodel.h
include/JellyfinQt/websocket.h)
list(APPEND jellyfin-qt_SOURCES ${openapi_HEADERS})
add_definitions(-DSAILFIN_VERSION=\"${SAILFIN_VERSION}\")
if (PLATFORM_SAILFISHOS)
add_definitions(-DPLATFORM_SAILFISHOS=1)
endif()
add_library(jellyfin-qt ${jellyfin-qt_SOURCES} ${jellyfin-qt_HEADERS})
if(${CMAKE_VERSION} VERSION_GREATER "3.16.0")
target_precompile_headers(jellyfin-qt PRIVATE ${jellyfin-qt_HEADERS})
endif()
target_include_directories(jellyfin-qt
PUBLIC "include"
PUBLIC "include" "generated/include"
)
target_link_libraries(jellyfin-qt PUBLIC Qt5::Core Qt5::Multimedia Qt5::Network Qt5::Qml Qt5::WebSockets)
set_target_properties(jellyfin-qt PROPERTIES CXX_VISIBILITY_PRESET default)

563
core/GeneratedSources.cmake Normal file
View file

@ -0,0 +1,563 @@
cmake_minimum_required(VERSION 3.0)
#[[
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
]]
set(openapi_HEADERS
./include/JellyfinQt/DTO/loglevel.h
./include/JellyfinQt/DTO/activitylogentry.h
./include/JellyfinQt/DTO/activitylogentryqueryresult.h
./include/JellyfinQt/DTO/authenticationinfo.h
./include/JellyfinQt/DTO/authenticationinfoqueryresult.h
./include/JellyfinQt/DTO/itemfields.h
./include/JellyfinQt/DTO/itemfilter.h
./include/JellyfinQt/DTO/imagetype.h
./include/JellyfinQt/DTO/video3dformat.h
./include/JellyfinQt/DTO/externalurl.h
./include/JellyfinQt/DTO/mediaprotocol.h
./include/JellyfinQt/DTO/mediasourcetype.h
./include/JellyfinQt/DTO/videotype.h
./include/JellyfinQt/DTO/isotype.h
./include/JellyfinQt/DTO/mediastreamtype.h
./include/JellyfinQt/DTO/subtitledeliverymethod.h
./include/JellyfinQt/DTO/mediastream.h
./include/JellyfinQt/DTO/mediaattachment.h
./include/JellyfinQt/DTO/transportstreamtimestamp.h
./include/JellyfinQt/DTO/mediasourceinfo.h
./include/JellyfinQt/DTO/playaccess.h
./include/JellyfinQt/DTO/mediaurl.h
./include/JellyfinQt/DTO/baseitemperson.h
./include/JellyfinQt/DTO/nameguidpair.h
./include/JellyfinQt/DTO/useritemdatadto.h
./include/JellyfinQt/DTO/dayofweek.h
./include/JellyfinQt/DTO/chapterinfo.h
./include/JellyfinQt/DTO/locationtype.h
./include/JellyfinQt/DTO/metadatafield.h
./include/JellyfinQt/DTO/imageorientation.h
./include/JellyfinQt/DTO/channeltype.h
./include/JellyfinQt/DTO/programaudio.h
./include/JellyfinQt/DTO/baseitemdto.h
./include/JellyfinQt/DTO/baseitemdtoqueryresult.h
./include/JellyfinQt/DTO/encodingcontext.h
./include/JellyfinQt/DTO/brandingoptions.h
./include/JellyfinQt/DTO/channelmediatype.h
./include/JellyfinQt/DTO/channelmediacontenttype.h
./include/JellyfinQt/DTO/channelitemsortfield.h
./include/JellyfinQt/DTO/channelfeatures.h
./include/JellyfinQt/DTO/collectioncreationresult.h
./include/JellyfinQt/DTO/version.h
./include/JellyfinQt/DTO/imagesavingconvention.h
./include/JellyfinQt/DTO/metadataoptions.h
./include/JellyfinQt/DTO/namevaluepair.h
./include/JellyfinQt/DTO/repositoryinfo.h
./include/JellyfinQt/DTO/pathsubstitution.h
./include/JellyfinQt/DTO/serverconfiguration.h
./include/JellyfinQt/DTO/mediaencoderpathdto.h
./include/JellyfinQt/DTO/problemdetails.h
./include/JellyfinQt/DTO/configurationpagetype.h
./include/JellyfinQt/DTO/configurationpageinfo.h
./include/JellyfinQt/DTO/generalcommandtype.h
./include/JellyfinQt/DTO/headermatchtype.h
./include/JellyfinQt/DTO/httpheaderinfo.h
./include/JellyfinQt/DTO/deviceidentification.h
./include/JellyfinQt/DTO/xmlattribute.h
./include/JellyfinQt/DTO/dlnaprofiletype.h
./include/JellyfinQt/DTO/directplayprofile.h
./include/JellyfinQt/DTO/transcodeseekinfo.h
./include/JellyfinQt/DTO/transcodingprofile.h
./include/JellyfinQt/DTO/profileconditiontype.h
./include/JellyfinQt/DTO/profileconditionvalue.h
./include/JellyfinQt/DTO/profilecondition.h
./include/JellyfinQt/DTO/containerprofile.h
./include/JellyfinQt/DTO/codectype.h
./include/JellyfinQt/DTO/codecprofile.h
./include/JellyfinQt/DTO/responseprofile.h
./include/JellyfinQt/DTO/subtitleprofile.h
./include/JellyfinQt/DTO/deviceprofile.h
./include/JellyfinQt/DTO/clientcapabilities.h
./include/JellyfinQt/DTO/deviceinfo.h
./include/JellyfinQt/DTO/deviceinfoqueryresult.h
./include/JellyfinQt/DTO/deviceoptions.h
./include/JellyfinQt/DTO/scrolldirection.h
./include/JellyfinQt/DTO/sortorder.h
./include/JellyfinQt/DTO/displaypreferencesdto.h
./include/JellyfinQt/DTO/deviceprofiletype.h
./include/JellyfinQt/DTO/deviceprofileinfo.h
./include/JellyfinQt/DTO/controlresponse.h
./include/JellyfinQt/DTO/defaultdirectorybrowserinfodto.h
./include/JellyfinQt/DTO/filesystementrytype.h
./include/JellyfinQt/DTO/filesystementryinfo.h
./include/JellyfinQt/DTO/validatepathdto.h
./include/JellyfinQt/DTO/queryfilterslegacy.h
./include/JellyfinQt/DTO/queryfilters.h
./include/JellyfinQt/DTO/imageformat.h
./include/JellyfinQt/DTO/imageinfo.h
./include/JellyfinQt/DTO/imagebynameinfo.h
./include/JellyfinQt/DTO/externalidmediatype.h
./include/JellyfinQt/DTO/externalidinfo.h
./include/JellyfinQt/DTO/remotesearchresult.h
./include/JellyfinQt/DTO/bookinfo.h
./include/JellyfinQt/DTO/bookinforemotesearchquery.h
./include/JellyfinQt/DTO/boxsetinfo.h
./include/JellyfinQt/DTO/boxsetinforemotesearchquery.h
./include/JellyfinQt/DTO/movieinfo.h
./include/JellyfinQt/DTO/movieinforemotesearchquery.h
./include/JellyfinQt/DTO/songinfo.h
./include/JellyfinQt/DTO/albuminfo.h
./include/JellyfinQt/DTO/albuminforemotesearchquery.h
./include/JellyfinQt/DTO/artistinfo.h
./include/JellyfinQt/DTO/artistinforemotesearchquery.h
./include/JellyfinQt/DTO/musicvideoinfo.h
./include/JellyfinQt/DTO/musicvideoinforemotesearchquery.h
./include/JellyfinQt/DTO/personlookupinfo.h
./include/JellyfinQt/DTO/personlookupinforemotesearchquery.h
./include/JellyfinQt/DTO/seriesinfo.h
./include/JellyfinQt/DTO/seriesinforemotesearchquery.h
./include/JellyfinQt/DTO/trailerinfo.h
./include/JellyfinQt/DTO/trailerinforemotesearchquery.h
./include/JellyfinQt/DTO/metadatarefreshmode.h
./include/JellyfinQt/DTO/seriesstatus.h
./include/JellyfinQt/DTO/parentalrating.h
./include/JellyfinQt/DTO/countryinfo.h
./include/JellyfinQt/DTO/culturedto.h
./include/JellyfinQt/DTO/metadataeditorinfo.h
./include/JellyfinQt/DTO/thememediaresult.h
./include/JellyfinQt/DTO/allthememediaresult.h
./include/JellyfinQt/DTO/itemcounts.h
./include/JellyfinQt/DTO/libraryoptioninfodto.h
./include/JellyfinQt/DTO/imageoption.h
./include/JellyfinQt/DTO/librarytypeoptionsdto.h
./include/JellyfinQt/DTO/libraryoptionsresultdto.h
./include/JellyfinQt/DTO/mediaupdateinfodto.h
./include/JellyfinQt/DTO/mediapathinfo.h
./include/JellyfinQt/DTO/typeoptions.h
./include/JellyfinQt/DTO/libraryoptions.h
./include/JellyfinQt/DTO/virtualfolderinfo.h
./include/JellyfinQt/DTO/addvirtualfolderdto.h
./include/JellyfinQt/DTO/updatelibraryoptionsdto.h
./include/JellyfinQt/DTO/mediapathdto.h
./include/JellyfinQt/DTO/tunerchannelmapping.h
./include/JellyfinQt/DTO/nameidpair.h
./include/JellyfinQt/DTO/channelmappingoptionsdto.h
./include/JellyfinQt/DTO/setchannelmappingdto.h
./include/JellyfinQt/DTO/guideinfo.h
./include/JellyfinQt/DTO/livetvservicestatus.h
./include/JellyfinQt/DTO/livetvserviceinfo.h
./include/JellyfinQt/DTO/livetvinfo.h
./include/JellyfinQt/DTO/listingsproviderinfo.h
./include/JellyfinQt/DTO/getprogramsdto.h
./include/JellyfinQt/DTO/recordingstatus.h
./include/JellyfinQt/DTO/keepuntil.h
./include/JellyfinQt/DTO/daypattern.h
./include/JellyfinQt/DTO/seriestimerinfodto.h
./include/JellyfinQt/DTO/seriestimerinfodtoqueryresult.h
./include/JellyfinQt/DTO/timerinfodto.h
./include/JellyfinQt/DTO/timerinfodtoqueryresult.h
./include/JellyfinQt/DTO/tunerhostinfo.h
./include/JellyfinQt/DTO/localizationoption.h
./include/JellyfinQt/DTO/playbackerrorcode.h
./include/JellyfinQt/DTO/playbackinforesponse.h
./include/JellyfinQt/DTO/playbackinfodto.h
./include/JellyfinQt/DTO/openlivestreamdto.h
./include/JellyfinQt/DTO/livestreamresponse.h
./include/JellyfinQt/DTO/recommendationtype.h
./include/JellyfinQt/DTO/recommendationdto.h
./include/JellyfinQt/DTO/notificationlevel.h
./include/JellyfinQt/DTO/notificationdto.h
./include/JellyfinQt/DTO/notificationresultdto.h
./include/JellyfinQt/DTO/notificationssummarydto.h
./include/JellyfinQt/DTO/notificationtypeinfo.h
./include/JellyfinQt/DTO/versioninfo.h
./include/JellyfinQt/DTO/packageinfo.h
./include/JellyfinQt/DTO/createplaylistdto.h
./include/JellyfinQt/DTO/playlistcreationresult.h
./include/JellyfinQt/DTO/playmethod.h
./include/JellyfinQt/DTO/repeatmode.h
./include/JellyfinQt/DTO/queueitem.h
./include/JellyfinQt/DTO/playbackstartinfo.h
./include/JellyfinQt/DTO/playbackprogressinfo.h
./include/JellyfinQt/DTO/playbackstopinfo.h
./include/JellyfinQt/DTO/pluginstatus.h
./include/JellyfinQt/DTO/plugininfo.h
./include/JellyfinQt/DTO/basepluginconfiguration.h
./include/JellyfinQt/DTO/pluginsecurityinfo.h
./include/JellyfinQt/DTO/quickconnectstate.h
./include/JellyfinQt/DTO/quickconnectresult.h
./include/JellyfinQt/DTO/ratingtype.h
./include/JellyfinQt/DTO/remoteimageinfo.h
./include/JellyfinQt/DTO/remoteimageresult.h
./include/JellyfinQt/DTO/imageproviderinfo.h
./include/JellyfinQt/DTO/taskstate.h
./include/JellyfinQt/DTO/taskcompletionstatus.h
./include/JellyfinQt/DTO/taskresult.h
./include/JellyfinQt/DTO/tasktriggerinfo.h
./include/JellyfinQt/DTO/taskinfo.h
./include/JellyfinQt/DTO/searchhint.h
./include/JellyfinQt/DTO/searchhintresult.h
./include/JellyfinQt/DTO/playerstateinfo.h
./include/JellyfinQt/DTO/sessionuserinfo.h
./include/JellyfinQt/DTO/baseitem.h
./include/JellyfinQt/DTO/transcodereason.h
./include/JellyfinQt/DTO/transcodinginfo.h
./include/JellyfinQt/DTO/sessioninfo.h
./include/JellyfinQt/DTO/generalcommand.h
./include/JellyfinQt/DTO/playcommand.h
./include/JellyfinQt/DTO/playstatecommand.h
./include/JellyfinQt/DTO/clientcapabilitiesdto.h
./include/JellyfinQt/DTO/startupconfigurationdto.h
./include/JellyfinQt/DTO/startupuserdto.h
./include/JellyfinQt/DTO/startupremoteaccessdto.h
./include/JellyfinQt/DTO/fontfile.h
./include/JellyfinQt/DTO/remotesubtitleinfo.h
./include/JellyfinQt/DTO/uploadsubtitledto.h
./include/JellyfinQt/DTO/bufferrequestdto.h
./include/JellyfinQt/DTO/joingrouprequestdto.h
./include/JellyfinQt/DTO/groupstatetype.h
./include/JellyfinQt/DTO/groupinfodto.h
./include/JellyfinQt/DTO/moveplaylistitemrequestdto.h
./include/JellyfinQt/DTO/newgrouprequestdto.h
./include/JellyfinQt/DTO/nextitemrequestdto.h
./include/JellyfinQt/DTO/pingrequestdto.h
./include/JellyfinQt/DTO/previousitemrequestdto.h
./include/JellyfinQt/DTO/groupqueuemode.h
./include/JellyfinQt/DTO/queuerequestdto.h
./include/JellyfinQt/DTO/readyrequestdto.h
./include/JellyfinQt/DTO/removefromplaylistrequestdto.h
./include/JellyfinQt/DTO/seekrequestdto.h
./include/JellyfinQt/DTO/ignorewaitrequestdto.h
./include/JellyfinQt/DTO/playrequestdto.h
./include/JellyfinQt/DTO/setplaylistitemrequestdto.h
./include/JellyfinQt/DTO/grouprepeatmode.h
./include/JellyfinQt/DTO/setrepeatmoderequestdto.h
./include/JellyfinQt/DTO/groupshufflemode.h
./include/JellyfinQt/DTO/setshufflemoderequestdto.h
./include/JellyfinQt/DTO/endpointinfo.h
./include/JellyfinQt/DTO/installationinfo.h
./include/JellyfinQt/DTO/ffmpeglocation.h
./include/JellyfinQt/DTO/architecture.h
./include/JellyfinQt/DTO/systeminfo.h
./include/JellyfinQt/DTO/publicsysteminfo.h
./include/JellyfinQt/DTO/logfile.h
./include/JellyfinQt/DTO/wakeonlaninfo.h
./include/JellyfinQt/DTO/utctimeresponse.h
./include/JellyfinQt/DTO/subtitleplaybackmode.h
./include/JellyfinQt/DTO/userconfiguration.h
./include/JellyfinQt/DTO/dynamicdayofweek.h
./include/JellyfinQt/DTO/accessschedule.h
./include/JellyfinQt/DTO/unrateditem.h
./include/JellyfinQt/DTO/syncplayuseraccesstype.h
./include/JellyfinQt/DTO/userpolicy.h
./include/JellyfinQt/DTO/userdto.h
./include/JellyfinQt/DTO/authenticationresult.h
./include/JellyfinQt/DTO/updateusereasypassword.h
./include/JellyfinQt/DTO/updateuserpassword.h
./include/JellyfinQt/DTO/authenticateuserbyname.h
./include/JellyfinQt/DTO/quickconnectdto.h
./include/JellyfinQt/DTO/forgotpassworddto.h
./include/JellyfinQt/DTO/forgotpasswordaction.h
./include/JellyfinQt/DTO/forgotpasswordresult.h
./include/JellyfinQt/DTO/pinredeemresult.h
./include/JellyfinQt/DTO/createuserbyname.h
./include/JellyfinQt/DTO/specialviewoptiondto.h
./include/JellyfinQt/DTO/libraryupdateinfo.h
./include/JellyfinQt/DTO/iplugin.h
./include/JellyfinQt/DTO/playrequest.h
./include/JellyfinQt/DTO/playstaterequest.h
./include/JellyfinQt/DTO/timereventinfo.h
./include/JellyfinQt/DTO/sendcommandtype.h
./include/JellyfinQt/DTO/sendcommand.h
./include/JellyfinQt/DTO/groupupdatetype.h
./include/JellyfinQt/DTO/objectgroupupdate.h)
set(openapi_SOURCES
./src/DTO/loglevel.cpp
./src/DTO/activitylogentry.cpp
./src/DTO/activitylogentryqueryresult.cpp
./src/DTO/authenticationinfo.cpp
./src/DTO/authenticationinfoqueryresult.cpp
./src/DTO/itemfields.cpp
./src/DTO/itemfilter.cpp
./src/DTO/imagetype.cpp
./src/DTO/video3dformat.cpp
./src/DTO/externalurl.cpp
./src/DTO/mediaprotocol.cpp
./src/DTO/mediasourcetype.cpp
./src/DTO/videotype.cpp
./src/DTO/isotype.cpp
./src/DTO/mediastreamtype.cpp
./src/DTO/subtitledeliverymethod.cpp
./src/DTO/mediastream.cpp
./src/DTO/mediaattachment.cpp
./src/DTO/transportstreamtimestamp.cpp
./src/DTO/mediasourceinfo.cpp
./src/DTO/playaccess.cpp
./src/DTO/mediaurl.cpp
./src/DTO/baseitemperson.cpp
./src/DTO/nameguidpair.cpp
./src/DTO/useritemdatadto.cpp
./src/DTO/dayofweek.cpp
./src/DTO/chapterinfo.cpp
./src/DTO/locationtype.cpp
./src/DTO/metadatafield.cpp
./src/DTO/imageorientation.cpp
./src/DTO/channeltype.cpp
./src/DTO/programaudio.cpp
./src/DTO/baseitemdto.cpp
./src/DTO/baseitemdtoqueryresult.cpp
./src/DTO/encodingcontext.cpp
./src/DTO/brandingoptions.cpp
./src/DTO/channelmediatype.cpp
./src/DTO/channelmediacontenttype.cpp
./src/DTO/channelitemsortfield.cpp
./src/DTO/channelfeatures.cpp
./src/DTO/collectioncreationresult.cpp
./src/DTO/version.cpp
./src/DTO/imagesavingconvention.cpp
./src/DTO/metadataoptions.cpp
./src/DTO/namevaluepair.cpp
./src/DTO/repositoryinfo.cpp
./src/DTO/pathsubstitution.cpp
./src/DTO/serverconfiguration.cpp
./src/DTO/mediaencoderpathdto.cpp
./src/DTO/problemdetails.cpp
./src/DTO/configurationpagetype.cpp
./src/DTO/configurationpageinfo.cpp
./src/DTO/generalcommandtype.cpp
./src/DTO/headermatchtype.cpp
./src/DTO/httpheaderinfo.cpp
./src/DTO/deviceidentification.cpp
./src/DTO/xmlattribute.cpp
./src/DTO/dlnaprofiletype.cpp
./src/DTO/directplayprofile.cpp
./src/DTO/transcodeseekinfo.cpp
./src/DTO/transcodingprofile.cpp
./src/DTO/profileconditiontype.cpp
./src/DTO/profileconditionvalue.cpp
./src/DTO/profilecondition.cpp
./src/DTO/containerprofile.cpp
./src/DTO/codectype.cpp
./src/DTO/codecprofile.cpp
./src/DTO/responseprofile.cpp
./src/DTO/subtitleprofile.cpp
./src/DTO/deviceprofile.cpp
./src/DTO/clientcapabilities.cpp
./src/DTO/deviceinfo.cpp
./src/DTO/deviceinfoqueryresult.cpp
./src/DTO/deviceoptions.cpp
./src/DTO/scrolldirection.cpp
./src/DTO/sortorder.cpp
./src/DTO/displaypreferencesdto.cpp
./src/DTO/deviceprofiletype.cpp
./src/DTO/deviceprofileinfo.cpp
./src/DTO/controlresponse.cpp
./src/DTO/defaultdirectorybrowserinfodto.cpp
./src/DTO/filesystementrytype.cpp
./src/DTO/filesystementryinfo.cpp
./src/DTO/validatepathdto.cpp
./src/DTO/queryfilterslegacy.cpp
./src/DTO/queryfilters.cpp
./src/DTO/imageformat.cpp
./src/DTO/imageinfo.cpp
./src/DTO/imagebynameinfo.cpp
./src/DTO/externalidmediatype.cpp
./src/DTO/externalidinfo.cpp
./src/DTO/remotesearchresult.cpp
./src/DTO/bookinfo.cpp
./src/DTO/bookinforemotesearchquery.cpp
./src/DTO/boxsetinfo.cpp
./src/DTO/boxsetinforemotesearchquery.cpp
./src/DTO/movieinfo.cpp
./src/DTO/movieinforemotesearchquery.cpp
./src/DTO/songinfo.cpp
./src/DTO/albuminfo.cpp
./src/DTO/albuminforemotesearchquery.cpp
./src/DTO/artistinfo.cpp
./src/DTO/artistinforemotesearchquery.cpp
./src/DTO/musicvideoinfo.cpp
./src/DTO/musicvideoinforemotesearchquery.cpp
./src/DTO/personlookupinfo.cpp
./src/DTO/personlookupinforemotesearchquery.cpp
./src/DTO/seriesinfo.cpp
./src/DTO/seriesinforemotesearchquery.cpp
./src/DTO/trailerinfo.cpp
./src/DTO/trailerinforemotesearchquery.cpp
./src/DTO/metadatarefreshmode.cpp
./src/DTO/seriesstatus.cpp
./src/DTO/parentalrating.cpp
./src/DTO/countryinfo.cpp
./src/DTO/culturedto.cpp
./src/DTO/metadataeditorinfo.cpp
./src/DTO/thememediaresult.cpp
./src/DTO/allthememediaresult.cpp
./src/DTO/itemcounts.cpp
./src/DTO/libraryoptioninfodto.cpp
./src/DTO/imageoption.cpp
./src/DTO/librarytypeoptionsdto.cpp
./src/DTO/libraryoptionsresultdto.cpp
./src/DTO/mediaupdateinfodto.cpp
./src/DTO/mediapathinfo.cpp
./src/DTO/typeoptions.cpp
./src/DTO/libraryoptions.cpp
./src/DTO/virtualfolderinfo.cpp
./src/DTO/addvirtualfolderdto.cpp
./src/DTO/updatelibraryoptionsdto.cpp
./src/DTO/mediapathdto.cpp
./src/DTO/tunerchannelmapping.cpp
./src/DTO/nameidpair.cpp
./src/DTO/channelmappingoptionsdto.cpp
./src/DTO/setchannelmappingdto.cpp
./src/DTO/guideinfo.cpp
./src/DTO/livetvservicestatus.cpp
./src/DTO/livetvserviceinfo.cpp
./src/DTO/livetvinfo.cpp
./src/DTO/listingsproviderinfo.cpp
./src/DTO/getprogramsdto.cpp
./src/DTO/recordingstatus.cpp
./src/DTO/keepuntil.cpp
./src/DTO/daypattern.cpp
./src/DTO/seriestimerinfodto.cpp
./src/DTO/seriestimerinfodtoqueryresult.cpp
./src/DTO/timerinfodto.cpp
./src/DTO/timerinfodtoqueryresult.cpp
./src/DTO/tunerhostinfo.cpp
./src/DTO/localizationoption.cpp
./src/DTO/playbackerrorcode.cpp
./src/DTO/playbackinforesponse.cpp
./src/DTO/playbackinfodto.cpp
./src/DTO/openlivestreamdto.cpp
./src/DTO/livestreamresponse.cpp
./src/DTO/recommendationtype.cpp
./src/DTO/recommendationdto.cpp
./src/DTO/notificationlevel.cpp
./src/DTO/notificationdto.cpp
./src/DTO/notificationresultdto.cpp
./src/DTO/notificationssummarydto.cpp
./src/DTO/notificationtypeinfo.cpp
./src/DTO/versioninfo.cpp
./src/DTO/packageinfo.cpp
./src/DTO/createplaylistdto.cpp
./src/DTO/playlistcreationresult.cpp
./src/DTO/playmethod.cpp
./src/DTO/repeatmode.cpp
./src/DTO/queueitem.cpp
./src/DTO/playbackstartinfo.cpp
./src/DTO/playbackprogressinfo.cpp
./src/DTO/playbackstopinfo.cpp
./src/DTO/pluginstatus.cpp
./src/DTO/plugininfo.cpp
./src/DTO/basepluginconfiguration.cpp
./src/DTO/pluginsecurityinfo.cpp
./src/DTO/quickconnectstate.cpp
./src/DTO/quickconnectresult.cpp
./src/DTO/ratingtype.cpp
./src/DTO/remoteimageinfo.cpp
./src/DTO/remoteimageresult.cpp
./src/DTO/imageproviderinfo.cpp
./src/DTO/taskstate.cpp
./src/DTO/taskcompletionstatus.cpp
./src/DTO/taskresult.cpp
./src/DTO/tasktriggerinfo.cpp
./src/DTO/taskinfo.cpp
./src/DTO/searchhint.cpp
./src/DTO/searchhintresult.cpp
./src/DTO/playerstateinfo.cpp
./src/DTO/sessionuserinfo.cpp
./src/DTO/baseitem.cpp
./src/DTO/transcodereason.cpp
./src/DTO/transcodinginfo.cpp
./src/DTO/sessioninfo.cpp
./src/DTO/generalcommand.cpp
./src/DTO/playcommand.cpp
./src/DTO/playstatecommand.cpp
./src/DTO/clientcapabilitiesdto.cpp
./src/DTO/startupconfigurationdto.cpp
./src/DTO/startupuserdto.cpp
./src/DTO/startupremoteaccessdto.cpp
./src/DTO/fontfile.cpp
./src/DTO/remotesubtitleinfo.cpp
./src/DTO/uploadsubtitledto.cpp
./src/DTO/bufferrequestdto.cpp
./src/DTO/joingrouprequestdto.cpp
./src/DTO/groupstatetype.cpp
./src/DTO/groupinfodto.cpp
./src/DTO/moveplaylistitemrequestdto.cpp
./src/DTO/newgrouprequestdto.cpp
./src/DTO/nextitemrequestdto.cpp
./src/DTO/pingrequestdto.cpp
./src/DTO/previousitemrequestdto.cpp
./src/DTO/groupqueuemode.cpp
./src/DTO/queuerequestdto.cpp
./src/DTO/readyrequestdto.cpp
./src/DTO/removefromplaylistrequestdto.cpp
./src/DTO/seekrequestdto.cpp
./src/DTO/ignorewaitrequestdto.cpp
./src/DTO/playrequestdto.cpp
./src/DTO/setplaylistitemrequestdto.cpp
./src/DTO/grouprepeatmode.cpp
./src/DTO/setrepeatmoderequestdto.cpp
./src/DTO/groupshufflemode.cpp
./src/DTO/setshufflemoderequestdto.cpp
./src/DTO/endpointinfo.cpp
./src/DTO/installationinfo.cpp
./src/DTO/ffmpeglocation.cpp
./src/DTO/architecture.cpp
./src/DTO/systeminfo.cpp
./src/DTO/publicsysteminfo.cpp
./src/DTO/logfile.cpp
./src/DTO/wakeonlaninfo.cpp
./src/DTO/utctimeresponse.cpp
./src/DTO/subtitleplaybackmode.cpp
./src/DTO/userconfiguration.cpp
./src/DTO/dynamicdayofweek.cpp
./src/DTO/accessschedule.cpp
./src/DTO/unrateditem.cpp
./src/DTO/syncplayuseraccesstype.cpp
./src/DTO/userpolicy.cpp
./src/DTO/userdto.cpp
./src/DTO/authenticationresult.cpp
./src/DTO/updateusereasypassword.cpp
./src/DTO/updateuserpassword.cpp
./src/DTO/authenticateuserbyname.cpp
./src/DTO/quickconnectdto.cpp
./src/DTO/forgotpassworddto.cpp
./src/DTO/forgotpasswordaction.cpp
./src/DTO/forgotpasswordresult.cpp
./src/DTO/pinredeemresult.cpp
./src/DTO/createuserbyname.cpp
./src/DTO/specialviewoptiondto.cpp
./src/DTO/libraryupdateinfo.cpp
./src/DTO/iplugin.cpp
./src/DTO/playrequest.cpp
./src/DTO/playstaterequest.cpp
./src/DTO/timereventinfo.cpp
./src/DTO/sendcommandtype.cpp
./src/DTO/sendcommand.cpp
./src/DTO/groupupdatetype.cpp
./src/DTO/objectgroupupdate.cpp)

9
core/README.md Normal file
View file

@ -0,0 +1,9 @@
# Jellyfin-Qt
This folder contains the core library containing most of the non-interface UI logic and platform-independent parts.
## Code generation.
Parts of the code (notably the data models) are generated from the OpenApi description provided by the
Jellyfin server. The code generator uses [the D programming language](https://dlang.org/)
and expects to be run through [DMD](https://github.com/dlang/dub). Make sure both a D compiler and DMD are installed.
Afterwards, on Unix-like systems, marking the "script" as executable and running it should be enough. On Windows,
one probably needs to run `dub.exe openapigenerator.d`, but I haven't verified it myself.

View file

@ -0,0 +1,100 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ACCESSSCHEDULE_H
#define JELLYFIN_DTO_ACCESSSCHEDULE_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/dynamicdayofweek.h"
namespace Jellyfin {
namespace DTO {
class AccessSchedule : public QObject {
Q_OBJECT
public:
explicit AccessSchedule(QObject *parent = nullptr);
static AccessSchedule *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the id of this instance.
*/
Q_PROPERTY(qint32 jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
/**
* @brief Gets or sets the id of the associated user.
*/
Q_PROPERTY(QString userId READ userId WRITE setUserId NOTIFY userIdChanged)
Q_PROPERTY(DynamicDayOfWeek dayOfWeek READ dayOfWeek WRITE setDayOfWeek NOTIFY dayOfWeekChanged)
/**
* @brief Gets or sets the start hour.
*/
Q_PROPERTY(double startHour READ startHour WRITE setStartHour NOTIFY startHourChanged)
/**
* @brief Gets or sets the end hour.
*/
Q_PROPERTY(double endHour READ endHour WRITE setEndHour NOTIFY endHourChanged)
qint32 jellyfinId() const;
void setJellyfinId(qint32 newJellyfinId);
QString userId() const;
void setUserId(QString newUserId);
DynamicDayOfWeek dayOfWeek() const;
void setDayOfWeek(DynamicDayOfWeek newDayOfWeek);
double startHour() const;
void setStartHour(double newStartHour);
double endHour() const;
void setEndHour(double newEndHour);
signals:
void jellyfinIdChanged(qint32 newJellyfinId);
void userIdChanged(QString newUserId);
void dayOfWeekChanged(DynamicDayOfWeek newDayOfWeek);
void startHourChanged(double newStartHour);
void endHourChanged(double newEndHour);
protected:
qint32 m_jellyfinId;
QString m_userId;
DynamicDayOfWeek m_dayOfWeek;
double m_startHour;
double m_endHour;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ACCESSSCHEDULE_H

View file

@ -0,0 +1,146 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ACTIVITYLOGENTRY_H
#define JELLYFIN_DTO_ACTIVITYLOGENTRY_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/loglevel.h"
namespace Jellyfin {
namespace DTO {
class ActivityLogEntry : public QObject {
Q_OBJECT
public:
explicit ActivityLogEntry(QObject *parent = nullptr);
static ActivityLogEntry *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the identifier.
*/
Q_PROPERTY(qint64 jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the overview.
*/
Q_PROPERTY(QString overview READ overview WRITE setOverview NOTIFY overviewChanged)
/**
* @brief Gets or sets the short overview.
*/
Q_PROPERTY(QString shortOverview READ shortOverview WRITE setShortOverview NOTIFY shortOverviewChanged)
/**
* @brief Gets or sets the type.
*/
Q_PROPERTY(QString type READ type WRITE setType NOTIFY typeChanged)
/**
* @brief Gets or sets the item identifier.
*/
Q_PROPERTY(QString itemId READ itemId WRITE setItemId NOTIFY itemIdChanged)
/**
* @brief Gets or sets the date.
*/
Q_PROPERTY(QDateTime date READ date WRITE setDate NOTIFY dateChanged)
/**
* @brief Gets or sets the user identifier.
*/
Q_PROPERTY(QString userId READ userId WRITE setUserId NOTIFY userIdChanged)
/**
* @brief Gets or sets the user primary image tag.
*/
Q_PROPERTY(QString userPrimaryImageTag READ userPrimaryImageTag WRITE setUserPrimaryImageTag NOTIFY userPrimaryImageTagChanged)
Q_PROPERTY(LogLevel severity READ severity WRITE setSeverity NOTIFY severityChanged)
qint64 jellyfinId() const;
void setJellyfinId(qint64 newJellyfinId);
QString name() const;
void setName(QString newName);
QString overview() const;
void setOverview(QString newOverview);
QString shortOverview() const;
void setShortOverview(QString newShortOverview);
QString type() const;
void setType(QString newType);
QString itemId() const;
void setItemId(QString newItemId);
QDateTime date() const;
void setDate(QDateTime newDate);
QString userId() const;
void setUserId(QString newUserId);
QString userPrimaryImageTag() const;
void setUserPrimaryImageTag(QString newUserPrimaryImageTag);
LogLevel severity() const;
void setSeverity(LogLevel newSeverity);
signals:
void jellyfinIdChanged(qint64 newJellyfinId);
void nameChanged(QString newName);
void overviewChanged(QString newOverview);
void shortOverviewChanged(QString newShortOverview);
void typeChanged(QString newType);
void itemIdChanged(QString newItemId);
void dateChanged(QDateTime newDate);
void userIdChanged(QString newUserId);
void userPrimaryImageTagChanged(QString newUserPrimaryImageTag);
void severityChanged(LogLevel newSeverity);
protected:
qint64 m_jellyfinId;
QString m_name;
QString m_overview;
QString m_shortOverview;
QString m_type;
QString m_itemId;
QDateTime m_date;
QString m_userId;
QString m_userPrimaryImageTag;
LogLevel m_severity;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ACTIVITYLOGENTRY_H

View file

@ -0,0 +1,86 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ACTIVITYLOGENTRYQUERYRESULT_H
#define JELLYFIN_DTO_ACTIVITYLOGENTRYQUERYRESULT_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class ActivityLogEntry;
class ActivityLogEntryQueryResult : public QObject {
Q_OBJECT
public:
explicit ActivityLogEntryQueryResult(QObject *parent = nullptr);
static ActivityLogEntryQueryResult *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the items.
*/
Q_PROPERTY(QList<ActivityLogEntry *> items READ items WRITE setItems NOTIFY itemsChanged)
/**
* @brief The total number of records available.
*/
Q_PROPERTY(qint32 totalRecordCount READ totalRecordCount WRITE setTotalRecordCount NOTIFY totalRecordCountChanged)
/**
* @brief The index of the first record in Items.
*/
Q_PROPERTY(qint32 startIndex READ startIndex WRITE setStartIndex NOTIFY startIndexChanged)
QList<ActivityLogEntry *> items() const;
void setItems(QList<ActivityLogEntry *> newItems);
qint32 totalRecordCount() const;
void setTotalRecordCount(qint32 newTotalRecordCount);
qint32 startIndex() const;
void setStartIndex(qint32 newStartIndex);
signals:
void itemsChanged(QList<ActivityLogEntry *> newItems);
void totalRecordCountChanged(qint32 newTotalRecordCount);
void startIndexChanged(qint32 newStartIndex);
protected:
QList<ActivityLogEntry *> m_items;
qint32 m_totalRecordCount;
qint32 m_startIndex;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ACTIVITYLOGENTRYQUERYRESULT_H

View file

@ -0,0 +1,63 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ADDVIRTUALFOLDERDTO_H
#define JELLYFIN_DTO_ADDVIRTUALFOLDERDTO_H
#include <QJsonObject>
#include <QObject>
namespace Jellyfin {
namespace DTO {
class LibraryOptions;
class AddVirtualFolderDto : public QObject {
Q_OBJECT
public:
explicit AddVirtualFolderDto(QObject *parent = nullptr);
static AddVirtualFolderDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(LibraryOptions * libraryOptions READ libraryOptions WRITE setLibraryOptions NOTIFY libraryOptionsChanged)
LibraryOptions * libraryOptions() const;
void setLibraryOptions(LibraryOptions * newLibraryOptions);
signals:
void libraryOptionsChanged(LibraryOptions * newLibraryOptions);
protected:
LibraryOptions * m_libraryOptions = nullptr;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ADDVIRTUALFOLDERDTO_H

View file

@ -0,0 +1,163 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ALBUMINFO_H
#define JELLYFIN_DTO_ALBUMINFO_H
#include <QDateTime>
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class SongInfo;
class AlbumInfo : public QObject {
Q_OBJECT
public:
explicit AlbumInfo(QObject *parent = nullptr);
static AlbumInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the path.
*/
Q_PROPERTY(QString path READ path WRITE setPath NOTIFY pathChanged)
/**
* @brief Gets or sets the metadata language.
*/
Q_PROPERTY(QString metadataLanguage READ metadataLanguage WRITE setMetadataLanguage NOTIFY metadataLanguageChanged)
/**
* @brief Gets or sets the metadata country code.
*/
Q_PROPERTY(QString metadataCountryCode READ metadataCountryCode WRITE setMetadataCountryCode NOTIFY metadataCountryCodeChanged)
/**
* @brief Gets or sets the provider ids.
*/
Q_PROPERTY(QJsonObject providerIds READ providerIds WRITE setProviderIds NOTIFY providerIdsChanged)
/**
* @brief Gets or sets the year.
*/
Q_PROPERTY(qint32 year READ year WRITE setYear NOTIFY yearChanged)
Q_PROPERTY(qint32 indexNumber READ indexNumber WRITE setIndexNumber NOTIFY indexNumberChanged)
Q_PROPERTY(qint32 parentIndexNumber READ parentIndexNumber WRITE setParentIndexNumber NOTIFY parentIndexNumberChanged)
Q_PROPERTY(QDateTime premiereDate READ premiereDate WRITE setPremiereDate NOTIFY premiereDateChanged)
Q_PROPERTY(bool isAutomated READ isAutomated WRITE setIsAutomated NOTIFY isAutomatedChanged)
/**
* @brief Gets or sets the album artist.
*/
Q_PROPERTY(QStringList albumArtists READ albumArtists WRITE setAlbumArtists NOTIFY albumArtistsChanged)
/**
* @brief Gets or sets the artist provider ids.
*/
Q_PROPERTY(QJsonObject artistProviderIds READ artistProviderIds WRITE setArtistProviderIds NOTIFY artistProviderIdsChanged)
Q_PROPERTY(QList<SongInfo *> songInfos READ songInfos WRITE setSongInfos NOTIFY songInfosChanged)
QString name() const;
void setName(QString newName);
QString path() const;
void setPath(QString newPath);
QString metadataLanguage() const;
void setMetadataLanguage(QString newMetadataLanguage);
QString metadataCountryCode() const;
void setMetadataCountryCode(QString newMetadataCountryCode);
QJsonObject providerIds() const;
void setProviderIds(QJsonObject newProviderIds);
qint32 year() const;
void setYear(qint32 newYear);
qint32 indexNumber() const;
void setIndexNumber(qint32 newIndexNumber);
qint32 parentIndexNumber() const;
void setParentIndexNumber(qint32 newParentIndexNumber);
QDateTime premiereDate() const;
void setPremiereDate(QDateTime newPremiereDate);
bool isAutomated() const;
void setIsAutomated(bool newIsAutomated);
QStringList albumArtists() const;
void setAlbumArtists(QStringList newAlbumArtists);
QJsonObject artistProviderIds() const;
void setArtistProviderIds(QJsonObject newArtistProviderIds);
QList<SongInfo *> songInfos() const;
void setSongInfos(QList<SongInfo *> newSongInfos);
signals:
void nameChanged(QString newName);
void pathChanged(QString newPath);
void metadataLanguageChanged(QString newMetadataLanguage);
void metadataCountryCodeChanged(QString newMetadataCountryCode);
void providerIdsChanged(QJsonObject newProviderIds);
void yearChanged(qint32 newYear);
void indexNumberChanged(qint32 newIndexNumber);
void parentIndexNumberChanged(qint32 newParentIndexNumber);
void premiereDateChanged(QDateTime newPremiereDate);
void isAutomatedChanged(bool newIsAutomated);
void albumArtistsChanged(QStringList newAlbumArtists);
void artistProviderIdsChanged(QJsonObject newArtistProviderIds);
void songInfosChanged(QList<SongInfo *> newSongInfos);
protected:
QString m_name;
QString m_path;
QString m_metadataLanguage;
QString m_metadataCountryCode;
QJsonObject m_providerIds;
qint32 m_year;
qint32 m_indexNumber;
qint32 m_parentIndexNumber;
QDateTime m_premiereDate;
bool m_isAutomated;
QStringList m_albumArtists;
QJsonObject m_artistProviderIds;
QList<SongInfo *> m_songInfos;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ALBUMINFO_H

View file

@ -0,0 +1,88 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ALBUMINFOREMOTESEARCHQUERY_H
#define JELLYFIN_DTO_ALBUMINFOREMOTESEARCHQUERY_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class AlbumInfo;
class AlbumInfoRemoteSearchQuery : public QObject {
Q_OBJECT
public:
explicit AlbumInfoRemoteSearchQuery(QObject *parent = nullptr);
static AlbumInfoRemoteSearchQuery *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(AlbumInfo * searchInfo READ searchInfo WRITE setSearchInfo NOTIFY searchInfoChanged)
Q_PROPERTY(QString itemId READ itemId WRITE setItemId NOTIFY itemIdChanged)
/**
* @brief Will only search within the given provider when set.
*/
Q_PROPERTY(QString searchProviderName READ searchProviderName WRITE setSearchProviderName NOTIFY searchProviderNameChanged)
/**
* @brief Gets or sets a value indicating whether disabled providers should be included.
*/
Q_PROPERTY(bool includeDisabledProviders READ includeDisabledProviders WRITE setIncludeDisabledProviders NOTIFY includeDisabledProvidersChanged)
AlbumInfo * searchInfo() const;
void setSearchInfo(AlbumInfo * newSearchInfo);
QString itemId() const;
void setItemId(QString newItemId);
QString searchProviderName() const;
void setSearchProviderName(QString newSearchProviderName);
bool includeDisabledProviders() const;
void setIncludeDisabledProviders(bool newIncludeDisabledProviders);
signals:
void searchInfoChanged(AlbumInfo * newSearchInfo);
void itemIdChanged(QString newItemId);
void searchProviderNameChanged(QString newSearchProviderName);
void includeDisabledProvidersChanged(bool newIncludeDisabledProviders);
protected:
AlbumInfo * m_searchInfo = nullptr;
QString m_itemId;
QString m_searchProviderName;
bool m_includeDisabledProviders;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ALBUMINFOREMOTESEARCHQUERY_H

View file

@ -0,0 +1,77 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ALLTHEMEMEDIARESULT_H
#define JELLYFIN_DTO_ALLTHEMEMEDIARESULT_H
#include <QJsonObject>
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ThemeMediaResult;
class ThemeMediaResult;
class ThemeMediaResult;
class AllThemeMediaResult : public QObject {
Q_OBJECT
public:
explicit AllThemeMediaResult(QObject *parent = nullptr);
static AllThemeMediaResult *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(ThemeMediaResult * themeVideosResult READ themeVideosResult WRITE setThemeVideosResult NOTIFY themeVideosResultChanged)
Q_PROPERTY(ThemeMediaResult * themeSongsResult READ themeSongsResult WRITE setThemeSongsResult NOTIFY themeSongsResultChanged)
Q_PROPERTY(ThemeMediaResult * soundtrackSongsResult READ soundtrackSongsResult WRITE setSoundtrackSongsResult NOTIFY soundtrackSongsResultChanged)
ThemeMediaResult * themeVideosResult() const;
void setThemeVideosResult(ThemeMediaResult * newThemeVideosResult);
ThemeMediaResult * themeSongsResult() const;
void setThemeSongsResult(ThemeMediaResult * newThemeSongsResult);
ThemeMediaResult * soundtrackSongsResult() const;
void setSoundtrackSongsResult(ThemeMediaResult * newSoundtrackSongsResult);
signals:
void themeVideosResultChanged(ThemeMediaResult * newThemeVideosResult);
void themeSongsResultChanged(ThemeMediaResult * newThemeSongsResult);
void soundtrackSongsResultChanged(ThemeMediaResult * newSoundtrackSongsResult);
protected:
ThemeMediaResult * m_themeVideosResult = nullptr;
ThemeMediaResult * m_themeSongsResult = nullptr;
ThemeMediaResult * m_soundtrackSongsResult = nullptr;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ALLTHEMEMEDIARESULT_H

View file

@ -0,0 +1,57 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ARCHITECTURE_H
#define JELLYFIN_DTO_ARCHITECTURE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ArchitectureClass {
Q_GADGET
public:
enum Value {
X86,
X64,
Arm,
Arm64,
Wasm,
};
Q_ENUM(Value)
private:
explicit ArchitectureClass();
};
typedef ArchitectureClass::Value Architecture;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ARCHITECTURE_H

View file

@ -0,0 +1,145 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ARTISTINFO_H
#define JELLYFIN_DTO_ARTISTINFO_H
#include <QDateTime>
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class SongInfo;
class ArtistInfo : public QObject {
Q_OBJECT
public:
explicit ArtistInfo(QObject *parent = nullptr);
static ArtistInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the path.
*/
Q_PROPERTY(QString path READ path WRITE setPath NOTIFY pathChanged)
/**
* @brief Gets or sets the metadata language.
*/
Q_PROPERTY(QString metadataLanguage READ metadataLanguage WRITE setMetadataLanguage NOTIFY metadataLanguageChanged)
/**
* @brief Gets or sets the metadata country code.
*/
Q_PROPERTY(QString metadataCountryCode READ metadataCountryCode WRITE setMetadataCountryCode NOTIFY metadataCountryCodeChanged)
/**
* @brief Gets or sets the provider ids.
*/
Q_PROPERTY(QJsonObject providerIds READ providerIds WRITE setProviderIds NOTIFY providerIdsChanged)
/**
* @brief Gets or sets the year.
*/
Q_PROPERTY(qint32 year READ year WRITE setYear NOTIFY yearChanged)
Q_PROPERTY(qint32 indexNumber READ indexNumber WRITE setIndexNumber NOTIFY indexNumberChanged)
Q_PROPERTY(qint32 parentIndexNumber READ parentIndexNumber WRITE setParentIndexNumber NOTIFY parentIndexNumberChanged)
Q_PROPERTY(QDateTime premiereDate READ premiereDate WRITE setPremiereDate NOTIFY premiereDateChanged)
Q_PROPERTY(bool isAutomated READ isAutomated WRITE setIsAutomated NOTIFY isAutomatedChanged)
Q_PROPERTY(QList<SongInfo *> songInfos READ songInfos WRITE setSongInfos NOTIFY songInfosChanged)
QString name() const;
void setName(QString newName);
QString path() const;
void setPath(QString newPath);
QString metadataLanguage() const;
void setMetadataLanguage(QString newMetadataLanguage);
QString metadataCountryCode() const;
void setMetadataCountryCode(QString newMetadataCountryCode);
QJsonObject providerIds() const;
void setProviderIds(QJsonObject newProviderIds);
qint32 year() const;
void setYear(qint32 newYear);
qint32 indexNumber() const;
void setIndexNumber(qint32 newIndexNumber);
qint32 parentIndexNumber() const;
void setParentIndexNumber(qint32 newParentIndexNumber);
QDateTime premiereDate() const;
void setPremiereDate(QDateTime newPremiereDate);
bool isAutomated() const;
void setIsAutomated(bool newIsAutomated);
QList<SongInfo *> songInfos() const;
void setSongInfos(QList<SongInfo *> newSongInfos);
signals:
void nameChanged(QString newName);
void pathChanged(QString newPath);
void metadataLanguageChanged(QString newMetadataLanguage);
void metadataCountryCodeChanged(QString newMetadataCountryCode);
void providerIdsChanged(QJsonObject newProviderIds);
void yearChanged(qint32 newYear);
void indexNumberChanged(qint32 newIndexNumber);
void parentIndexNumberChanged(qint32 newParentIndexNumber);
void premiereDateChanged(QDateTime newPremiereDate);
void isAutomatedChanged(bool newIsAutomated);
void songInfosChanged(QList<SongInfo *> newSongInfos);
protected:
QString m_name;
QString m_path;
QString m_metadataLanguage;
QString m_metadataCountryCode;
QJsonObject m_providerIds;
qint32 m_year;
qint32 m_indexNumber;
qint32 m_parentIndexNumber;
QDateTime m_premiereDate;
bool m_isAutomated;
QList<SongInfo *> m_songInfos;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ARTISTINFO_H

View file

@ -0,0 +1,88 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ARTISTINFOREMOTESEARCHQUERY_H
#define JELLYFIN_DTO_ARTISTINFOREMOTESEARCHQUERY_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class ArtistInfo;
class ArtistInfoRemoteSearchQuery : public QObject {
Q_OBJECT
public:
explicit ArtistInfoRemoteSearchQuery(QObject *parent = nullptr);
static ArtistInfoRemoteSearchQuery *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(ArtistInfo * searchInfo READ searchInfo WRITE setSearchInfo NOTIFY searchInfoChanged)
Q_PROPERTY(QString itemId READ itemId WRITE setItemId NOTIFY itemIdChanged)
/**
* @brief Will only search within the given provider when set.
*/
Q_PROPERTY(QString searchProviderName READ searchProviderName WRITE setSearchProviderName NOTIFY searchProviderNameChanged)
/**
* @brief Gets or sets a value indicating whether disabled providers should be included.
*/
Q_PROPERTY(bool includeDisabledProviders READ includeDisabledProviders WRITE setIncludeDisabledProviders NOTIFY includeDisabledProvidersChanged)
ArtistInfo * searchInfo() const;
void setSearchInfo(ArtistInfo * newSearchInfo);
QString itemId() const;
void setItemId(QString newItemId);
QString searchProviderName() const;
void setSearchProviderName(QString newSearchProviderName);
bool includeDisabledProviders() const;
void setIncludeDisabledProviders(bool newIncludeDisabledProviders);
signals:
void searchInfoChanged(ArtistInfo * newSearchInfo);
void itemIdChanged(QString newItemId);
void searchProviderNameChanged(QString newSearchProviderName);
void includeDisabledProvidersChanged(bool newIncludeDisabledProviders);
protected:
ArtistInfo * m_searchInfo = nullptr;
QString m_itemId;
QString m_searchProviderName;
bool m_includeDisabledProviders;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ARTISTINFOREMOTESEARCHQUERY_H

View file

@ -0,0 +1,83 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_AUTHENTICATEUSERBYNAME_H
#define JELLYFIN_DTO_AUTHENTICATEUSERBYNAME_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class AuthenticateUserByName : public QObject {
Q_OBJECT
public:
explicit AuthenticateUserByName(QObject *parent = nullptr);
static AuthenticateUserByName *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the username.
*/
Q_PROPERTY(QString username READ username WRITE setUsername NOTIFY usernameChanged)
/**
* @brief Gets or sets the plain text password.
*/
Q_PROPERTY(QString pw READ pw WRITE setPw NOTIFY pwChanged)
/**
* @brief Gets or sets the sha1-hashed password.
*/
Q_PROPERTY(QString password READ password WRITE setPassword NOTIFY passwordChanged)
QString username() const;
void setUsername(QString newUsername);
QString pw() const;
void setPw(QString newPw);
QString password() const;
void setPassword(QString newPassword);
signals:
void usernameChanged(QString newUsername);
void pwChanged(QString newPw);
void passwordChanged(QString newPassword);
protected:
QString m_username;
QString m_pw;
QString m_password;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_AUTHENTICATEUSERBYNAME_H

View file

@ -0,0 +1,159 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_AUTHENTICATIONINFO_H
#define JELLYFIN_DTO_AUTHENTICATIONINFO_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class AuthenticationInfo : public QObject {
Q_OBJECT
public:
explicit AuthenticationInfo(QObject *parent = nullptr);
static AuthenticationInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the identifier.
*/
Q_PROPERTY(qint64 jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
/**
* @brief Gets or sets the access token.
*/
Q_PROPERTY(QString accessToken READ accessToken WRITE setAccessToken NOTIFY accessTokenChanged)
/**
* @brief Gets or sets the device identifier.
*/
Q_PROPERTY(QString deviceId READ deviceId WRITE setDeviceId NOTIFY deviceIdChanged)
/**
* @brief Gets or sets the name of the application.
*/
Q_PROPERTY(QString appName READ appName WRITE setAppName NOTIFY appNameChanged)
/**
* @brief Gets or sets the application version.
*/
Q_PROPERTY(QString appVersion READ appVersion WRITE setAppVersion NOTIFY appVersionChanged)
/**
* @brief Gets or sets the name of the device.
*/
Q_PROPERTY(QString deviceName READ deviceName WRITE setDeviceName NOTIFY deviceNameChanged)
/**
* @brief Gets or sets the user identifier.
*/
Q_PROPERTY(QString userId READ userId WRITE setUserId NOTIFY userIdChanged)
/**
* @brief Gets or sets a value indicating whether this instance is active.
*/
Q_PROPERTY(bool isActive READ isActive WRITE setIsActive NOTIFY isActiveChanged)
/**
* @brief Gets or sets the date created.
*/
Q_PROPERTY(QDateTime dateCreated READ dateCreated WRITE setDateCreated NOTIFY dateCreatedChanged)
/**
* @brief Gets or sets the date revoked.
*/
Q_PROPERTY(QDateTime dateRevoked READ dateRevoked WRITE setDateRevoked NOTIFY dateRevokedChanged)
Q_PROPERTY(QDateTime dateLastActivity READ dateLastActivity WRITE setDateLastActivity NOTIFY dateLastActivityChanged)
Q_PROPERTY(QString userName READ userName WRITE setUserName NOTIFY userNameChanged)
qint64 jellyfinId() const;
void setJellyfinId(qint64 newJellyfinId);
QString accessToken() const;
void setAccessToken(QString newAccessToken);
QString deviceId() const;
void setDeviceId(QString newDeviceId);
QString appName() const;
void setAppName(QString newAppName);
QString appVersion() const;
void setAppVersion(QString newAppVersion);
QString deviceName() const;
void setDeviceName(QString newDeviceName);
QString userId() const;
void setUserId(QString newUserId);
bool isActive() const;
void setIsActive(bool newIsActive);
QDateTime dateCreated() const;
void setDateCreated(QDateTime newDateCreated);
QDateTime dateRevoked() const;
void setDateRevoked(QDateTime newDateRevoked);
QDateTime dateLastActivity() const;
void setDateLastActivity(QDateTime newDateLastActivity);
QString userName() const;
void setUserName(QString newUserName);
signals:
void jellyfinIdChanged(qint64 newJellyfinId);
void accessTokenChanged(QString newAccessToken);
void deviceIdChanged(QString newDeviceId);
void appNameChanged(QString newAppName);
void appVersionChanged(QString newAppVersion);
void deviceNameChanged(QString newDeviceName);
void userIdChanged(QString newUserId);
void isActiveChanged(bool newIsActive);
void dateCreatedChanged(QDateTime newDateCreated);
void dateRevokedChanged(QDateTime newDateRevoked);
void dateLastActivityChanged(QDateTime newDateLastActivity);
void userNameChanged(QString newUserName);
protected:
qint64 m_jellyfinId;
QString m_accessToken;
QString m_deviceId;
QString m_appName;
QString m_appVersion;
QString m_deviceName;
QString m_userId;
bool m_isActive;
QDateTime m_dateCreated;
QDateTime m_dateRevoked;
QDateTime m_dateLastActivity;
QString m_userName;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_AUTHENTICATIONINFO_H

View file

@ -0,0 +1,86 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_AUTHENTICATIONINFOQUERYRESULT_H
#define JELLYFIN_DTO_AUTHENTICATIONINFOQUERYRESULT_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class AuthenticationInfo;
class AuthenticationInfoQueryResult : public QObject {
Q_OBJECT
public:
explicit AuthenticationInfoQueryResult(QObject *parent = nullptr);
static AuthenticationInfoQueryResult *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the items.
*/
Q_PROPERTY(QList<AuthenticationInfo *> items READ items WRITE setItems NOTIFY itemsChanged)
/**
* @brief The total number of records available.
*/
Q_PROPERTY(qint32 totalRecordCount READ totalRecordCount WRITE setTotalRecordCount NOTIFY totalRecordCountChanged)
/**
* @brief The index of the first record in Items.
*/
Q_PROPERTY(qint32 startIndex READ startIndex WRITE setStartIndex NOTIFY startIndexChanged)
QList<AuthenticationInfo *> items() const;
void setItems(QList<AuthenticationInfo *> newItems);
qint32 totalRecordCount() const;
void setTotalRecordCount(qint32 newTotalRecordCount);
qint32 startIndex() const;
void setStartIndex(qint32 newStartIndex);
signals:
void itemsChanged(QList<AuthenticationInfo *> newItems);
void totalRecordCountChanged(qint32 newTotalRecordCount);
void startIndexChanged(qint32 newStartIndex);
protected:
QList<AuthenticationInfo *> m_items;
qint32 m_totalRecordCount;
qint32 m_startIndex;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_AUTHENTICATIONINFOQUERYRESULT_H

View file

@ -0,0 +1,83 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_AUTHENTICATIONRESULT_H
#define JELLYFIN_DTO_AUTHENTICATIONRESULT_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class SessionInfo;
class UserDto;
class AuthenticationResult : public QObject {
Q_OBJECT
public:
explicit AuthenticationResult(QObject *parent = nullptr);
static AuthenticationResult *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(UserDto * user READ user WRITE setUser NOTIFY userChanged)
Q_PROPERTY(SessionInfo * sessionInfo READ sessionInfo WRITE setSessionInfo NOTIFY sessionInfoChanged)
Q_PROPERTY(QString accessToken READ accessToken WRITE setAccessToken NOTIFY accessTokenChanged)
Q_PROPERTY(QString serverId READ serverId WRITE setServerId NOTIFY serverIdChanged)
UserDto * user() const;
void setUser(UserDto * newUser);
SessionInfo * sessionInfo() const;
void setSessionInfo(SessionInfo * newSessionInfo);
QString accessToken() const;
void setAccessToken(QString newAccessToken);
QString serverId() const;
void setServerId(QString newServerId);
signals:
void userChanged(UserDto * newUser);
void sessionInfoChanged(SessionInfo * newSessionInfo);
void accessTokenChanged(QString newAccessToken);
void serverIdChanged(QString newServerId);
protected:
UserDto * m_user = nullptr;
SessionInfo * m_sessionInfo = nullptr;
QString m_accessToken;
QString m_serverId;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_AUTHENTICATIONRESULT_H

View file

@ -0,0 +1,130 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_BASEITEM_H
#define JELLYFIN_DTO_BASEITEM_H
#include <QDateTime>
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class MediaUrl;
class BaseItem : public QObject {
Q_OBJECT
public:
explicit BaseItem(QObject *parent = nullptr);
static BaseItem *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(qint64 size READ size WRITE setSize NOTIFY sizeChanged)
Q_PROPERTY(QString container READ container WRITE setContainer NOTIFY containerChanged)
Q_PROPERTY(QDateTime dateLastSaved READ dateLastSaved WRITE setDateLastSaved NOTIFY dateLastSavedChanged)
/**
* @brief Gets or sets the remote trailers.
*/
Q_PROPERTY(QList<MediaUrl *> remoteTrailers READ remoteTrailers WRITE setRemoteTrailers NOTIFY remoteTrailersChanged)
Q_PROPERTY(bool isHD READ isHD WRITE setIsHD NOTIFY isHDChanged)
Q_PROPERTY(bool isShortcut READ isShortcut WRITE setIsShortcut NOTIFY isShortcutChanged)
Q_PROPERTY(QString shortcutPath READ shortcutPath WRITE setShortcutPath NOTIFY shortcutPathChanged)
Q_PROPERTY(qint32 width READ width WRITE setWidth NOTIFY widthChanged)
Q_PROPERTY(qint32 height READ height WRITE setHeight NOTIFY heightChanged)
Q_PROPERTY(QStringList extraIds READ extraIds WRITE setExtraIds NOTIFY extraIdsChanged)
Q_PROPERTY(bool supportsExternalTransfer READ supportsExternalTransfer WRITE setSupportsExternalTransfer NOTIFY supportsExternalTransferChanged)
qint64 size() const;
void setSize(qint64 newSize);
QString container() const;
void setContainer(QString newContainer);
QDateTime dateLastSaved() const;
void setDateLastSaved(QDateTime newDateLastSaved);
QList<MediaUrl *> remoteTrailers() const;
void setRemoteTrailers(QList<MediaUrl *> newRemoteTrailers);
bool isHD() const;
void setIsHD(bool newIsHD);
bool isShortcut() const;
void setIsShortcut(bool newIsShortcut);
QString shortcutPath() const;
void setShortcutPath(QString newShortcutPath);
qint32 width() const;
void setWidth(qint32 newWidth);
qint32 height() const;
void setHeight(qint32 newHeight);
QStringList extraIds() const;
void setExtraIds(QStringList newExtraIds);
bool supportsExternalTransfer() const;
void setSupportsExternalTransfer(bool newSupportsExternalTransfer);
signals:
void sizeChanged(qint64 newSize);
void containerChanged(QString newContainer);
void dateLastSavedChanged(QDateTime newDateLastSaved);
void remoteTrailersChanged(QList<MediaUrl *> newRemoteTrailers);
void isHDChanged(bool newIsHD);
void isShortcutChanged(bool newIsShortcut);
void shortcutPathChanged(QString newShortcutPath);
void widthChanged(qint32 newWidth);
void heightChanged(qint32 newHeight);
void extraIdsChanged(QStringList newExtraIds);
void supportsExternalTransferChanged(bool newSupportsExternalTransfer);
protected:
qint64 m_size;
QString m_container;
QDateTime m_dateLastSaved;
QList<MediaUrl *> m_remoteTrailers;
bool m_isHD;
bool m_isShortcut;
QString m_shortcutPath;
qint32 m_width;
qint32 m_height;
QStringList m_extraIds;
bool m_supportsExternalTransfer;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_BASEITEM_H

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,86 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_BASEITEMDTOQUERYRESULT_H
#define JELLYFIN_DTO_BASEITEMDTOQUERYRESULT_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class BaseItemDto;
class BaseItemDtoQueryResult : public QObject {
Q_OBJECT
public:
explicit BaseItemDtoQueryResult(QObject *parent = nullptr);
static BaseItemDtoQueryResult *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the items.
*/
Q_PROPERTY(QList<BaseItemDto *> items READ items WRITE setItems NOTIFY itemsChanged)
/**
* @brief The total number of records available.
*/
Q_PROPERTY(qint32 totalRecordCount READ totalRecordCount WRITE setTotalRecordCount NOTIFY totalRecordCountChanged)
/**
* @brief The index of the first record in Items.
*/
Q_PROPERTY(qint32 startIndex READ startIndex WRITE setStartIndex NOTIFY startIndexChanged)
QList<BaseItemDto *> items() const;
void setItems(QList<BaseItemDto *> newItems);
qint32 totalRecordCount() const;
void setTotalRecordCount(qint32 newTotalRecordCount);
qint32 startIndex() const;
void setStartIndex(qint32 newStartIndex);
signals:
void itemsChanged(QList<BaseItemDto *> newItems);
void totalRecordCountChanged(qint32 newTotalRecordCount);
void startIndexChanged(qint32 newStartIndex);
protected:
QList<BaseItemDto *> m_items;
qint32 m_totalRecordCount;
qint32 m_startIndex;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_BASEITEMDTOQUERYRESULT_H

View file

@ -0,0 +1,110 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_BASEITEMPERSON_H
#define JELLYFIN_DTO_BASEITEMPERSON_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class BaseItemPerson : public QObject {
Q_OBJECT
public:
explicit BaseItemPerson(QObject *parent = nullptr);
static BaseItemPerson *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the identifier.
*/
Q_PROPERTY(QString jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
/**
* @brief Gets or sets the role.
*/
Q_PROPERTY(QString role READ role WRITE setRole NOTIFY roleChanged)
/**
* @brief Gets or sets the type.
*/
Q_PROPERTY(QString type READ type WRITE setType NOTIFY typeChanged)
/**
* @brief Gets or sets the primary image tag.
*/
Q_PROPERTY(QString primaryImageTag READ primaryImageTag WRITE setPrimaryImageTag NOTIFY primaryImageTagChanged)
/**
* @brief Gets or sets the primary image blurhash.
*/
Q_PROPERTY(QJsonObject imageBlurHashes READ imageBlurHashes WRITE setImageBlurHashes NOTIFY imageBlurHashesChanged)
QString name() const;
void setName(QString newName);
QString jellyfinId() const;
void setJellyfinId(QString newJellyfinId);
QString role() const;
void setRole(QString newRole);
QString type() const;
void setType(QString newType);
QString primaryImageTag() const;
void setPrimaryImageTag(QString newPrimaryImageTag);
QJsonObject imageBlurHashes() const;
void setImageBlurHashes(QJsonObject newImageBlurHashes);
signals:
void nameChanged(QString newName);
void jellyfinIdChanged(QString newJellyfinId);
void roleChanged(QString newRole);
void typeChanged(QString newType);
void primaryImageTagChanged(QString newPrimaryImageTag);
void imageBlurHashesChanged(QJsonObject newImageBlurHashes);
protected:
QString m_name;
QString m_jellyfinId;
QString m_role;
QString m_type;
QString m_primaryImageTag;
QJsonObject m_imageBlurHashes;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_BASEITEMPERSON_H

View file

@ -0,0 +1,141 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_BOOKINFO_H
#define JELLYFIN_DTO_BOOKINFO_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class BookInfo : public QObject {
Q_OBJECT
public:
explicit BookInfo(QObject *parent = nullptr);
static BookInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the path.
*/
Q_PROPERTY(QString path READ path WRITE setPath NOTIFY pathChanged)
/**
* @brief Gets or sets the metadata language.
*/
Q_PROPERTY(QString metadataLanguage READ metadataLanguage WRITE setMetadataLanguage NOTIFY metadataLanguageChanged)
/**
* @brief Gets or sets the metadata country code.
*/
Q_PROPERTY(QString metadataCountryCode READ metadataCountryCode WRITE setMetadataCountryCode NOTIFY metadataCountryCodeChanged)
/**
* @brief Gets or sets the provider ids.
*/
Q_PROPERTY(QJsonObject providerIds READ providerIds WRITE setProviderIds NOTIFY providerIdsChanged)
/**
* @brief Gets or sets the year.
*/
Q_PROPERTY(qint32 year READ year WRITE setYear NOTIFY yearChanged)
Q_PROPERTY(qint32 indexNumber READ indexNumber WRITE setIndexNumber NOTIFY indexNumberChanged)
Q_PROPERTY(qint32 parentIndexNumber READ parentIndexNumber WRITE setParentIndexNumber NOTIFY parentIndexNumberChanged)
Q_PROPERTY(QDateTime premiereDate READ premiereDate WRITE setPremiereDate NOTIFY premiereDateChanged)
Q_PROPERTY(bool isAutomated READ isAutomated WRITE setIsAutomated NOTIFY isAutomatedChanged)
Q_PROPERTY(QString seriesName READ seriesName WRITE setSeriesName NOTIFY seriesNameChanged)
QString name() const;
void setName(QString newName);
QString path() const;
void setPath(QString newPath);
QString metadataLanguage() const;
void setMetadataLanguage(QString newMetadataLanguage);
QString metadataCountryCode() const;
void setMetadataCountryCode(QString newMetadataCountryCode);
QJsonObject providerIds() const;
void setProviderIds(QJsonObject newProviderIds);
qint32 year() const;
void setYear(qint32 newYear);
qint32 indexNumber() const;
void setIndexNumber(qint32 newIndexNumber);
qint32 parentIndexNumber() const;
void setParentIndexNumber(qint32 newParentIndexNumber);
QDateTime premiereDate() const;
void setPremiereDate(QDateTime newPremiereDate);
bool isAutomated() const;
void setIsAutomated(bool newIsAutomated);
QString seriesName() const;
void setSeriesName(QString newSeriesName);
signals:
void nameChanged(QString newName);
void pathChanged(QString newPath);
void metadataLanguageChanged(QString newMetadataLanguage);
void metadataCountryCodeChanged(QString newMetadataCountryCode);
void providerIdsChanged(QJsonObject newProviderIds);
void yearChanged(qint32 newYear);
void indexNumberChanged(qint32 newIndexNumber);
void parentIndexNumberChanged(qint32 newParentIndexNumber);
void premiereDateChanged(QDateTime newPremiereDate);
void isAutomatedChanged(bool newIsAutomated);
void seriesNameChanged(QString newSeriesName);
protected:
QString m_name;
QString m_path;
QString m_metadataLanguage;
QString m_metadataCountryCode;
QJsonObject m_providerIds;
qint32 m_year;
qint32 m_indexNumber;
qint32 m_parentIndexNumber;
QDateTime m_premiereDate;
bool m_isAutomated;
QString m_seriesName;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_BOOKINFO_H

View file

@ -0,0 +1,88 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_BOOKINFOREMOTESEARCHQUERY_H
#define JELLYFIN_DTO_BOOKINFOREMOTESEARCHQUERY_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class BookInfo;
class BookInfoRemoteSearchQuery : public QObject {
Q_OBJECT
public:
explicit BookInfoRemoteSearchQuery(QObject *parent = nullptr);
static BookInfoRemoteSearchQuery *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(BookInfo * searchInfo READ searchInfo WRITE setSearchInfo NOTIFY searchInfoChanged)
Q_PROPERTY(QString itemId READ itemId WRITE setItemId NOTIFY itemIdChanged)
/**
* @brief Will only search within the given provider when set.
*/
Q_PROPERTY(QString searchProviderName READ searchProviderName WRITE setSearchProviderName NOTIFY searchProviderNameChanged)
/**
* @brief Gets or sets a value indicating whether disabled providers should be included.
*/
Q_PROPERTY(bool includeDisabledProviders READ includeDisabledProviders WRITE setIncludeDisabledProviders NOTIFY includeDisabledProvidersChanged)
BookInfo * searchInfo() const;
void setSearchInfo(BookInfo * newSearchInfo);
QString itemId() const;
void setItemId(QString newItemId);
QString searchProviderName() const;
void setSearchProviderName(QString newSearchProviderName);
bool includeDisabledProviders() const;
void setIncludeDisabledProviders(bool newIncludeDisabledProviders);
signals:
void searchInfoChanged(BookInfo * newSearchInfo);
void itemIdChanged(QString newItemId);
void searchProviderNameChanged(QString newSearchProviderName);
void includeDisabledProvidersChanged(bool newIncludeDisabledProviders);
protected:
BookInfo * m_searchInfo = nullptr;
QString m_itemId;
QString m_searchProviderName;
bool m_includeDisabledProviders;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_BOOKINFOREMOTESEARCHQUERY_H

View file

@ -0,0 +1,135 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_BOXSETINFO_H
#define JELLYFIN_DTO_BOXSETINFO_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class BoxSetInfo : public QObject {
Q_OBJECT
public:
explicit BoxSetInfo(QObject *parent = nullptr);
static BoxSetInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the path.
*/
Q_PROPERTY(QString path READ path WRITE setPath NOTIFY pathChanged)
/**
* @brief Gets or sets the metadata language.
*/
Q_PROPERTY(QString metadataLanguage READ metadataLanguage WRITE setMetadataLanguage NOTIFY metadataLanguageChanged)
/**
* @brief Gets or sets the metadata country code.
*/
Q_PROPERTY(QString metadataCountryCode READ metadataCountryCode WRITE setMetadataCountryCode NOTIFY metadataCountryCodeChanged)
/**
* @brief Gets or sets the provider ids.
*/
Q_PROPERTY(QJsonObject providerIds READ providerIds WRITE setProviderIds NOTIFY providerIdsChanged)
/**
* @brief Gets or sets the year.
*/
Q_PROPERTY(qint32 year READ year WRITE setYear NOTIFY yearChanged)
Q_PROPERTY(qint32 indexNumber READ indexNumber WRITE setIndexNumber NOTIFY indexNumberChanged)
Q_PROPERTY(qint32 parentIndexNumber READ parentIndexNumber WRITE setParentIndexNumber NOTIFY parentIndexNumberChanged)
Q_PROPERTY(QDateTime premiereDate READ premiereDate WRITE setPremiereDate NOTIFY premiereDateChanged)
Q_PROPERTY(bool isAutomated READ isAutomated WRITE setIsAutomated NOTIFY isAutomatedChanged)
QString name() const;
void setName(QString newName);
QString path() const;
void setPath(QString newPath);
QString metadataLanguage() const;
void setMetadataLanguage(QString newMetadataLanguage);
QString metadataCountryCode() const;
void setMetadataCountryCode(QString newMetadataCountryCode);
QJsonObject providerIds() const;
void setProviderIds(QJsonObject newProviderIds);
qint32 year() const;
void setYear(qint32 newYear);
qint32 indexNumber() const;
void setIndexNumber(qint32 newIndexNumber);
qint32 parentIndexNumber() const;
void setParentIndexNumber(qint32 newParentIndexNumber);
QDateTime premiereDate() const;
void setPremiereDate(QDateTime newPremiereDate);
bool isAutomated() const;
void setIsAutomated(bool newIsAutomated);
signals:
void nameChanged(QString newName);
void pathChanged(QString newPath);
void metadataLanguageChanged(QString newMetadataLanguage);
void metadataCountryCodeChanged(QString newMetadataCountryCode);
void providerIdsChanged(QJsonObject newProviderIds);
void yearChanged(qint32 newYear);
void indexNumberChanged(qint32 newIndexNumber);
void parentIndexNumberChanged(qint32 newParentIndexNumber);
void premiereDateChanged(QDateTime newPremiereDate);
void isAutomatedChanged(bool newIsAutomated);
protected:
QString m_name;
QString m_path;
QString m_metadataLanguage;
QString m_metadataCountryCode;
QJsonObject m_providerIds;
qint32 m_year;
qint32 m_indexNumber;
qint32 m_parentIndexNumber;
QDateTime m_premiereDate;
bool m_isAutomated;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_BOXSETINFO_H

View file

@ -0,0 +1,88 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_BOXSETINFOREMOTESEARCHQUERY_H
#define JELLYFIN_DTO_BOXSETINFOREMOTESEARCHQUERY_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class BoxSetInfo;
class BoxSetInfoRemoteSearchQuery : public QObject {
Q_OBJECT
public:
explicit BoxSetInfoRemoteSearchQuery(QObject *parent = nullptr);
static BoxSetInfoRemoteSearchQuery *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(BoxSetInfo * searchInfo READ searchInfo WRITE setSearchInfo NOTIFY searchInfoChanged)
Q_PROPERTY(QString itemId READ itemId WRITE setItemId NOTIFY itemIdChanged)
/**
* @brief Will only search within the given provider when set.
*/
Q_PROPERTY(QString searchProviderName READ searchProviderName WRITE setSearchProviderName NOTIFY searchProviderNameChanged)
/**
* @brief Gets or sets a value indicating whether disabled providers should be included.
*/
Q_PROPERTY(bool includeDisabledProviders READ includeDisabledProviders WRITE setIncludeDisabledProviders NOTIFY includeDisabledProvidersChanged)
BoxSetInfo * searchInfo() const;
void setSearchInfo(BoxSetInfo * newSearchInfo);
QString itemId() const;
void setItemId(QString newItemId);
QString searchProviderName() const;
void setSearchProviderName(QString newSearchProviderName);
bool includeDisabledProviders() const;
void setIncludeDisabledProviders(bool newIncludeDisabledProviders);
signals:
void searchInfoChanged(BoxSetInfo * newSearchInfo);
void itemIdChanged(QString newItemId);
void searchProviderNameChanged(QString newSearchProviderName);
void includeDisabledProvidersChanged(bool newIncludeDisabledProviders);
protected:
BoxSetInfo * m_searchInfo = nullptr;
QString m_itemId;
QString m_searchProviderName;
bool m_includeDisabledProviders;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_BOXSETINFOREMOTESEARCHQUERY_H

View file

@ -0,0 +1,74 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_BRANDINGOPTIONS_H
#define JELLYFIN_DTO_BRANDINGOPTIONS_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class BrandingOptions : public QObject {
Q_OBJECT
public:
explicit BrandingOptions(QObject *parent = nullptr);
static BrandingOptions *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the login disclaimer.
*/
Q_PROPERTY(QString loginDisclaimer READ loginDisclaimer WRITE setLoginDisclaimer NOTIFY loginDisclaimerChanged)
/**
* @brief Gets or sets the custom CSS.
*/
Q_PROPERTY(QString customCss READ customCss WRITE setCustomCss NOTIFY customCssChanged)
QString loginDisclaimer() const;
void setLoginDisclaimer(QString newLoginDisclaimer);
QString customCss() const;
void setCustomCss(QString newCustomCss);
signals:
void loginDisclaimerChanged(QString newLoginDisclaimer);
void customCssChanged(QString newCustomCss);
protected:
QString m_loginDisclaimer;
QString m_customCss;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_BRANDINGOPTIONS_H

View file

@ -0,0 +1,93 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_BUFFERREQUESTDTO_H
#define JELLYFIN_DTO_BUFFERREQUESTDTO_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class BufferRequestDto : public QObject {
Q_OBJECT
public:
explicit BufferRequestDto(QObject *parent = nullptr);
static BufferRequestDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets when the request has been made by the client.
*/
Q_PROPERTY(QDateTime when READ when WRITE setWhen NOTIFY whenChanged)
/**
* @brief Gets or sets the position ticks.
*/
Q_PROPERTY(qint64 positionTicks READ positionTicks WRITE setPositionTicks NOTIFY positionTicksChanged)
/**
* @brief Gets or sets a value indicating whether the client playback is unpaused.
*/
Q_PROPERTY(bool isPlaying READ isPlaying WRITE setIsPlaying NOTIFY isPlayingChanged)
/**
* @brief Gets or sets the playlist item identifier of the playing item.
*/
Q_PROPERTY(QString playlistItemId READ playlistItemId WRITE setPlaylistItemId NOTIFY playlistItemIdChanged)
QDateTime when() const;
void setWhen(QDateTime newWhen);
qint64 positionTicks() const;
void setPositionTicks(qint64 newPositionTicks);
bool isPlaying() const;
void setIsPlaying(bool newIsPlaying);
QString playlistItemId() const;
void setPlaylistItemId(QString newPlaylistItemId);
signals:
void whenChanged(QDateTime newWhen);
void positionTicksChanged(qint64 newPositionTicks);
void isPlayingChanged(bool newIsPlaying);
void playlistItemIdChanged(QString newPlaylistItemId);
protected:
QDateTime m_when;
qint64 m_positionTicks;
bool m_isPlaying;
QString m_playlistItemId;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_BUFFERREQUESTDTO_H

View file

@ -0,0 +1,170 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CHANNELFEATURES_H
#define JELLYFIN_DTO_CHANNELFEATURES_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
#include "JellyfinQt/DTO/channelitemsortfield.h"
#include "JellyfinQt/DTO/channelmediacontenttype.h"
#include "JellyfinQt/DTO/channelmediatype.h"
namespace Jellyfin {
namespace DTO {
class ChannelFeatures : public QObject {
Q_OBJECT
public:
explicit ChannelFeatures(QObject *parent = nullptr);
static ChannelFeatures *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the identifier.
*/
Q_PROPERTY(QString jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
/**
* @brief Gets or sets a value indicating whether this instance can search.
*/
Q_PROPERTY(bool canSearch READ canSearch WRITE setCanSearch NOTIFY canSearchChanged)
/**
* @brief Gets or sets the media types.
*/
Q_PROPERTY(QList<ChannelMediaType> mediaTypes READ mediaTypes WRITE setMediaTypes NOTIFY mediaTypesChanged)
/**
* @brief Gets or sets the content types.
*/
Q_PROPERTY(QList<ChannelMediaContentType> contentTypes READ contentTypes WRITE setContentTypes NOTIFY contentTypesChanged)
/**
* @brief Represents the maximum number of records the channel allows retrieving at a time.
*/
Q_PROPERTY(qint32 maxPageSize READ maxPageSize WRITE setMaxPageSize NOTIFY maxPageSizeChanged)
/**
* @brief Gets or sets the automatic refresh levels.
*/
Q_PROPERTY(qint32 autoRefreshLevels READ autoRefreshLevels WRITE setAutoRefreshLevels NOTIFY autoRefreshLevelsChanged)
/**
* @brief Gets or sets the default sort orders.
*/
Q_PROPERTY(QList<ChannelItemSortField> defaultSortFields READ defaultSortFields WRITE setDefaultSortFields NOTIFY defaultSortFieldsChanged)
/**
* @brief Indicates if a sort ascending/descending toggle is supported or not.
*/
Q_PROPERTY(bool supportsSortOrderToggle READ supportsSortOrderToggle WRITE setSupportsSortOrderToggle NOTIFY supportsSortOrderToggleChanged)
/**
* @brief Gets or sets a value indicating whether [supports latest media].
*/
Q_PROPERTY(bool supportsLatestMedia READ supportsLatestMedia WRITE setSupportsLatestMedia NOTIFY supportsLatestMediaChanged)
/**
* @brief Gets or sets a value indicating whether this instance can filter.
*/
Q_PROPERTY(bool canFilter READ canFilter WRITE setCanFilter NOTIFY canFilterChanged)
/**
* @brief Gets or sets a value indicating whether [supports content downloading].
*/
Q_PROPERTY(bool supportsContentDownloading READ supportsContentDownloading WRITE setSupportsContentDownloading NOTIFY supportsContentDownloadingChanged)
QString name() const;
void setName(QString newName);
QString jellyfinId() const;
void setJellyfinId(QString newJellyfinId);
bool canSearch() const;
void setCanSearch(bool newCanSearch);
QList<ChannelMediaType> mediaTypes() const;
void setMediaTypes(QList<ChannelMediaType> newMediaTypes);
QList<ChannelMediaContentType> contentTypes() const;
void setContentTypes(QList<ChannelMediaContentType> newContentTypes);
qint32 maxPageSize() const;
void setMaxPageSize(qint32 newMaxPageSize);
qint32 autoRefreshLevels() const;
void setAutoRefreshLevels(qint32 newAutoRefreshLevels);
QList<ChannelItemSortField> defaultSortFields() const;
void setDefaultSortFields(QList<ChannelItemSortField> newDefaultSortFields);
bool supportsSortOrderToggle() const;
void setSupportsSortOrderToggle(bool newSupportsSortOrderToggle);
bool supportsLatestMedia() const;
void setSupportsLatestMedia(bool newSupportsLatestMedia);
bool canFilter() const;
void setCanFilter(bool newCanFilter);
bool supportsContentDownloading() const;
void setSupportsContentDownloading(bool newSupportsContentDownloading);
signals:
void nameChanged(QString newName);
void jellyfinIdChanged(QString newJellyfinId);
void canSearchChanged(bool newCanSearch);
void mediaTypesChanged(QList<ChannelMediaType> newMediaTypes);
void contentTypesChanged(QList<ChannelMediaContentType> newContentTypes);
void maxPageSizeChanged(qint32 newMaxPageSize);
void autoRefreshLevelsChanged(qint32 newAutoRefreshLevels);
void defaultSortFieldsChanged(QList<ChannelItemSortField> newDefaultSortFields);
void supportsSortOrderToggleChanged(bool newSupportsSortOrderToggle);
void supportsLatestMediaChanged(bool newSupportsLatestMedia);
void canFilterChanged(bool newCanFilter);
void supportsContentDownloadingChanged(bool newSupportsContentDownloading);
protected:
QString m_name;
QString m_jellyfinId;
bool m_canSearch;
QList<ChannelMediaType> m_mediaTypes;
QList<ChannelMediaContentType> m_contentTypes;
qint32 m_maxPageSize;
qint32 m_autoRefreshLevels;
QList<ChannelItemSortField> m_defaultSortFields;
bool m_supportsSortOrderToggle;
bool m_supportsLatestMedia;
bool m_canFilter;
bool m_supportsContentDownloading;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CHANNELFEATURES_H

View file

@ -0,0 +1,59 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CHANNELITEMSORTFIELD_H
#define JELLYFIN_DTO_CHANNELITEMSORTFIELD_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ChannelItemSortFieldClass {
Q_GADGET
public:
enum Value {
Name,
CommunityRating,
PremiereDate,
DateCreated,
Runtime,
PlayCount,
CommunityPlayCount,
};
Q_ENUM(Value)
private:
explicit ChannelItemSortFieldClass();
};
typedef ChannelItemSortFieldClass::Value ChannelItemSortField;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CHANNELITEMSORTFIELD_H

View file

@ -0,0 +1,98 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CHANNELMAPPINGOPTIONSDTO_H
#define JELLYFIN_DTO_CHANNELMAPPINGOPTIONSDTO_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class NameIdPair;
class NameValuePair;
class TunerChannelMapping;
class ChannelMappingOptionsDto : public QObject {
Q_OBJECT
public:
explicit ChannelMappingOptionsDto(QObject *parent = nullptr);
static ChannelMappingOptionsDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets list of tuner channels.
*/
Q_PROPERTY(QList<TunerChannelMapping *> tunerChannels READ tunerChannels WRITE setTunerChannels NOTIFY tunerChannelsChanged)
/**
* @brief Gets or sets list of provider channels.
*/
Q_PROPERTY(QList<NameIdPair *> providerChannels READ providerChannels WRITE setProviderChannels NOTIFY providerChannelsChanged)
/**
* @brief Gets or sets list of mappings.
*/
Q_PROPERTY(QList<NameValuePair *> mappings READ mappings WRITE setMappings NOTIFY mappingsChanged)
/**
* @brief Gets or sets provider name.
*/
Q_PROPERTY(QString providerName READ providerName WRITE setProviderName NOTIFY providerNameChanged)
QList<TunerChannelMapping *> tunerChannels() const;
void setTunerChannels(QList<TunerChannelMapping *> newTunerChannels);
QList<NameIdPair *> providerChannels() const;
void setProviderChannels(QList<NameIdPair *> newProviderChannels);
QList<NameValuePair *> mappings() const;
void setMappings(QList<NameValuePair *> newMappings);
QString providerName() const;
void setProviderName(QString newProviderName);
signals:
void tunerChannelsChanged(QList<TunerChannelMapping *> newTunerChannels);
void providerChannelsChanged(QList<NameIdPair *> newProviderChannels);
void mappingsChanged(QList<NameValuePair *> newMappings);
void providerNameChanged(QString newProviderName);
protected:
QList<TunerChannelMapping *> m_tunerChannels;
QList<NameIdPair *> m_providerChannels;
QList<NameValuePair *> m_mappings;
QString m_providerName;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CHANNELMAPPINGOPTIONSDTO_H

View file

@ -0,0 +1,60 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CHANNELMEDIACONTENTTYPE_H
#define JELLYFIN_DTO_CHANNELMEDIACONTENTTYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ChannelMediaContentTypeClass {
Q_GADGET
public:
enum Value {
Clip,
Podcast,
Trailer,
Movie,
Episode,
Song,
MovieExtra,
TvExtra,
};
Q_ENUM(Value)
private:
explicit ChannelMediaContentTypeClass();
};
typedef ChannelMediaContentTypeClass::Value ChannelMediaContentType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CHANNELMEDIACONTENTTYPE_H

View file

@ -0,0 +1,55 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CHANNELMEDIATYPE_H
#define JELLYFIN_DTO_CHANNELMEDIATYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ChannelMediaTypeClass {
Q_GADGET
public:
enum Value {
Audio,
Video,
Photo,
};
Q_ENUM(Value)
private:
explicit ChannelMediaTypeClass();
};
typedef ChannelMediaTypeClass::Value ChannelMediaType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CHANNELMEDIATYPE_H

View file

@ -0,0 +1,54 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CHANNELTYPE_H
#define JELLYFIN_DTO_CHANNELTYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ChannelTypeClass {
Q_GADGET
public:
enum Value {
TV,
Radio,
};
Q_ENUM(Value)
private:
explicit ChannelTypeClass();
};
typedef ChannelTypeClass::Value ChannelType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CHANNELTYPE_H

View file

@ -0,0 +1,96 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CHAPTERINFO_H
#define JELLYFIN_DTO_CHAPTERINFO_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class ChapterInfo : public QObject {
Q_OBJECT
public:
explicit ChapterInfo(QObject *parent = nullptr);
static ChapterInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the start position ticks.
*/
Q_PROPERTY(qint64 startPositionTicks READ startPositionTicks WRITE setStartPositionTicks NOTIFY startPositionTicksChanged)
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the image path.
*/
Q_PROPERTY(QString imagePath READ imagePath WRITE setImagePath NOTIFY imagePathChanged)
Q_PROPERTY(QDateTime imageDateModified READ imageDateModified WRITE setImageDateModified NOTIFY imageDateModifiedChanged)
Q_PROPERTY(QString imageTag READ imageTag WRITE setImageTag NOTIFY imageTagChanged)
qint64 startPositionTicks() const;
void setStartPositionTicks(qint64 newStartPositionTicks);
QString name() const;
void setName(QString newName);
QString imagePath() const;
void setImagePath(QString newImagePath);
QDateTime imageDateModified() const;
void setImageDateModified(QDateTime newImageDateModified);
QString imageTag() const;
void setImageTag(QString newImageTag);
signals:
void startPositionTicksChanged(qint64 newStartPositionTicks);
void nameChanged(QString newName);
void imagePathChanged(QString newImagePath);
void imageDateModifiedChanged(QDateTime newImageDateModified);
void imageTagChanged(QString newImageTag);
protected:
qint64 m_startPositionTicks;
QString m_name;
QString m_imagePath;
QDateTime m_imageDateModified;
QString m_imageTag;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CHAPTERINFO_H

View file

@ -0,0 +1,122 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CLIENTCAPABILITIES_H
#define JELLYFIN_DTO_CLIENTCAPABILITIES_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
#include "JellyfinQt/DTO/generalcommandtype.h"
namespace Jellyfin {
namespace DTO {
class DeviceProfile;
class ClientCapabilities : public QObject {
Q_OBJECT
public:
explicit ClientCapabilities(QObject *parent = nullptr);
static ClientCapabilities *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(QStringList playableMediaTypes READ playableMediaTypes WRITE setPlayableMediaTypes NOTIFY playableMediaTypesChanged)
Q_PROPERTY(QList<GeneralCommandType> supportedCommands READ supportedCommands WRITE setSupportedCommands NOTIFY supportedCommandsChanged)
Q_PROPERTY(bool supportsMediaControl READ supportsMediaControl WRITE setSupportsMediaControl NOTIFY supportsMediaControlChanged)
Q_PROPERTY(bool supportsContentUploading READ supportsContentUploading WRITE setSupportsContentUploading NOTIFY supportsContentUploadingChanged)
Q_PROPERTY(QString messageCallbackUrl READ messageCallbackUrl WRITE setMessageCallbackUrl NOTIFY messageCallbackUrlChanged)
Q_PROPERTY(bool supportsPersistentIdentifier READ supportsPersistentIdentifier WRITE setSupportsPersistentIdentifier NOTIFY supportsPersistentIdentifierChanged)
Q_PROPERTY(bool supportsSync READ supportsSync WRITE setSupportsSync NOTIFY supportsSyncChanged)
Q_PROPERTY(DeviceProfile * deviceProfile READ deviceProfile WRITE setDeviceProfile NOTIFY deviceProfileChanged)
Q_PROPERTY(QString appStoreUrl READ appStoreUrl WRITE setAppStoreUrl NOTIFY appStoreUrlChanged)
Q_PROPERTY(QString iconUrl READ iconUrl WRITE setIconUrl NOTIFY iconUrlChanged)
QStringList playableMediaTypes() const;
void setPlayableMediaTypes(QStringList newPlayableMediaTypes);
QList<GeneralCommandType> supportedCommands() const;
void setSupportedCommands(QList<GeneralCommandType> newSupportedCommands);
bool supportsMediaControl() const;
void setSupportsMediaControl(bool newSupportsMediaControl);
bool supportsContentUploading() const;
void setSupportsContentUploading(bool newSupportsContentUploading);
QString messageCallbackUrl() const;
void setMessageCallbackUrl(QString newMessageCallbackUrl);
bool supportsPersistentIdentifier() const;
void setSupportsPersistentIdentifier(bool newSupportsPersistentIdentifier);
bool supportsSync() const;
void setSupportsSync(bool newSupportsSync);
DeviceProfile * deviceProfile() const;
void setDeviceProfile(DeviceProfile * newDeviceProfile);
QString appStoreUrl() const;
void setAppStoreUrl(QString newAppStoreUrl);
QString iconUrl() const;
void setIconUrl(QString newIconUrl);
signals:
void playableMediaTypesChanged(QStringList newPlayableMediaTypes);
void supportedCommandsChanged(QList<GeneralCommandType> newSupportedCommands);
void supportsMediaControlChanged(bool newSupportsMediaControl);
void supportsContentUploadingChanged(bool newSupportsContentUploading);
void messageCallbackUrlChanged(QString newMessageCallbackUrl);
void supportsPersistentIdentifierChanged(bool newSupportsPersistentIdentifier);
void supportsSyncChanged(bool newSupportsSync);
void deviceProfileChanged(DeviceProfile * newDeviceProfile);
void appStoreUrlChanged(QString newAppStoreUrl);
void iconUrlChanged(QString newIconUrl);
protected:
QStringList m_playableMediaTypes;
QList<GeneralCommandType> m_supportedCommands;
bool m_supportsMediaControl;
bool m_supportsContentUploading;
QString m_messageCallbackUrl;
bool m_supportsPersistentIdentifier;
bool m_supportsSync;
DeviceProfile * m_deviceProfile = nullptr;
QString m_appStoreUrl;
QString m_iconUrl;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CLIENTCAPABILITIES_H

View file

@ -0,0 +1,149 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CLIENTCAPABILITIESDTO_H
#define JELLYFIN_DTO_CLIENTCAPABILITIESDTO_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
#include "JellyfinQt/DTO/generalcommandtype.h"
namespace Jellyfin {
namespace DTO {
class DeviceProfile;
class ClientCapabilitiesDto : public QObject {
Q_OBJECT
public:
explicit ClientCapabilitiesDto(QObject *parent = nullptr);
static ClientCapabilitiesDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the list of playable media types.
*/
Q_PROPERTY(QStringList playableMediaTypes READ playableMediaTypes WRITE setPlayableMediaTypes NOTIFY playableMediaTypesChanged)
/**
* @brief Gets or sets the list of supported commands.
*/
Q_PROPERTY(QList<GeneralCommandType> supportedCommands READ supportedCommands WRITE setSupportedCommands NOTIFY supportedCommandsChanged)
/**
* @brief Gets or sets a value indicating whether session supports media control.
*/
Q_PROPERTY(bool supportsMediaControl READ supportsMediaControl WRITE setSupportsMediaControl NOTIFY supportsMediaControlChanged)
/**
* @brief Gets or sets a value indicating whether session supports content uploading.
*/
Q_PROPERTY(bool supportsContentUploading READ supportsContentUploading WRITE setSupportsContentUploading NOTIFY supportsContentUploadingChanged)
/**
* @brief Gets or sets the message callback url.
*/
Q_PROPERTY(QString messageCallbackUrl READ messageCallbackUrl WRITE setMessageCallbackUrl NOTIFY messageCallbackUrlChanged)
/**
* @brief Gets or sets a value indicating whether session supports a persistent identifier.
*/
Q_PROPERTY(bool supportsPersistentIdentifier READ supportsPersistentIdentifier WRITE setSupportsPersistentIdentifier NOTIFY supportsPersistentIdentifierChanged)
/**
* @brief Gets or sets a value indicating whether session supports sync.
*/
Q_PROPERTY(bool supportsSync READ supportsSync WRITE setSupportsSync NOTIFY supportsSyncChanged)
Q_PROPERTY(DeviceProfile * deviceProfile READ deviceProfile WRITE setDeviceProfile NOTIFY deviceProfileChanged)
/**
* @brief Gets or sets the app store url.
*/
Q_PROPERTY(QString appStoreUrl READ appStoreUrl WRITE setAppStoreUrl NOTIFY appStoreUrlChanged)
/**
* @brief Gets or sets the icon url.
*/
Q_PROPERTY(QString iconUrl READ iconUrl WRITE setIconUrl NOTIFY iconUrlChanged)
QStringList playableMediaTypes() const;
void setPlayableMediaTypes(QStringList newPlayableMediaTypes);
QList<GeneralCommandType> supportedCommands() const;
void setSupportedCommands(QList<GeneralCommandType> newSupportedCommands);
bool supportsMediaControl() const;
void setSupportsMediaControl(bool newSupportsMediaControl);
bool supportsContentUploading() const;
void setSupportsContentUploading(bool newSupportsContentUploading);
QString messageCallbackUrl() const;
void setMessageCallbackUrl(QString newMessageCallbackUrl);
bool supportsPersistentIdentifier() const;
void setSupportsPersistentIdentifier(bool newSupportsPersistentIdentifier);
bool supportsSync() const;
void setSupportsSync(bool newSupportsSync);
DeviceProfile * deviceProfile() const;
void setDeviceProfile(DeviceProfile * newDeviceProfile);
QString appStoreUrl() const;
void setAppStoreUrl(QString newAppStoreUrl);
QString iconUrl() const;
void setIconUrl(QString newIconUrl);
signals:
void playableMediaTypesChanged(QStringList newPlayableMediaTypes);
void supportedCommandsChanged(QList<GeneralCommandType> newSupportedCommands);
void supportsMediaControlChanged(bool newSupportsMediaControl);
void supportsContentUploadingChanged(bool newSupportsContentUploading);
void messageCallbackUrlChanged(QString newMessageCallbackUrl);
void supportsPersistentIdentifierChanged(bool newSupportsPersistentIdentifier);
void supportsSyncChanged(bool newSupportsSync);
void deviceProfileChanged(DeviceProfile * newDeviceProfile);
void appStoreUrlChanged(QString newAppStoreUrl);
void iconUrlChanged(QString newIconUrl);
protected:
QStringList m_playableMediaTypes;
QList<GeneralCommandType> m_supportedCommands;
bool m_supportsMediaControl;
bool m_supportsContentUploading;
QString m_messageCallbackUrl;
bool m_supportsPersistentIdentifier;
bool m_supportsSync;
DeviceProfile * m_deviceProfile = nullptr;
QString m_appStoreUrl;
QString m_iconUrl;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CLIENTCAPABILITIESDTO_H

View file

@ -0,0 +1,93 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CODECPROFILE_H
#define JELLYFIN_DTO_CODECPROFILE_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
#include "JellyfinQt/DTO/codectype.h"
namespace Jellyfin {
namespace DTO {
class ProfileCondition;
class ProfileCondition;
class CodecProfile : public QObject {
Q_OBJECT
public:
explicit CodecProfile(QObject *parent = nullptr);
static CodecProfile *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(CodecType type READ type WRITE setType NOTIFY typeChanged)
Q_PROPERTY(QList<ProfileCondition *> conditions READ conditions WRITE setConditions NOTIFY conditionsChanged)
Q_PROPERTY(QList<ProfileCondition *> applyConditions READ applyConditions WRITE setApplyConditions NOTIFY applyConditionsChanged)
Q_PROPERTY(QString codec READ codec WRITE setCodec NOTIFY codecChanged)
Q_PROPERTY(QString container READ container WRITE setContainer NOTIFY containerChanged)
CodecType type() const;
void setType(CodecType newType);
QList<ProfileCondition *> conditions() const;
void setConditions(QList<ProfileCondition *> newConditions);
QList<ProfileCondition *> applyConditions() const;
void setApplyConditions(QList<ProfileCondition *> newApplyConditions);
QString codec() const;
void setCodec(QString newCodec);
QString container() const;
void setContainer(QString newContainer);
signals:
void typeChanged(CodecType newType);
void conditionsChanged(QList<ProfileCondition *> newConditions);
void applyConditionsChanged(QList<ProfileCondition *> newApplyConditions);
void codecChanged(QString newCodec);
void containerChanged(QString newContainer);
protected:
CodecType m_type;
QList<ProfileCondition *> m_conditions;
QList<ProfileCondition *> m_applyConditions;
QString m_codec;
QString m_container;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CODECPROFILE_H

View file

@ -0,0 +1,55 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CODECTYPE_H
#define JELLYFIN_DTO_CODECTYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class CodecTypeClass {
Q_GADGET
public:
enum Value {
Video,
VideoAudio,
Audio,
};
Q_ENUM(Value)
private:
explicit CodecTypeClass();
};
typedef CodecTypeClass::Value CodecType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CODECTYPE_H

View file

@ -0,0 +1,62 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_COLLECTIONCREATIONRESULT_H
#define JELLYFIN_DTO_COLLECTIONCREATIONRESULT_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class CollectionCreationResult : public QObject {
Q_OBJECT
public:
explicit CollectionCreationResult(QObject *parent = nullptr);
static CollectionCreationResult *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(QString jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
QString jellyfinId() const;
void setJellyfinId(QString newJellyfinId);
signals:
void jellyfinIdChanged(QString newJellyfinId);
protected:
QString m_jellyfinId;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_COLLECTIONCREATIONRESULT_H

View file

@ -0,0 +1,118 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CONFIGURATIONPAGEINFO_H
#define JELLYFIN_DTO_CONFIGURATIONPAGEINFO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/configurationpagetype.h"
namespace Jellyfin {
namespace DTO {
class ConfigurationPageInfo : public QObject {
Q_OBJECT
public:
explicit ConfigurationPageInfo(QObject *parent = nullptr);
static ConfigurationPageInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets a value indicating whether the configurations page is enabled in the main menu.
*/
Q_PROPERTY(bool enableInMainMenu READ enableInMainMenu WRITE setEnableInMainMenu NOTIFY enableInMainMenuChanged)
/**
* @brief Gets or sets the menu section.
*/
Q_PROPERTY(QString menuSection READ menuSection WRITE setMenuSection NOTIFY menuSectionChanged)
/**
* @brief Gets or sets the menu icon.
*/
Q_PROPERTY(QString menuIcon READ menuIcon WRITE setMenuIcon NOTIFY menuIconChanged)
/**
* @brief Gets or sets the display name.
*/
Q_PROPERTY(QString displayName READ displayName WRITE setDisplayName NOTIFY displayNameChanged)
Q_PROPERTY(ConfigurationPageType configurationPageType READ configurationPageType WRITE setConfigurationPageType NOTIFY configurationPageTypeChanged)
/**
* @brief Gets or sets the plugin id.
*/
Q_PROPERTY(QString pluginId READ pluginId WRITE setPluginId NOTIFY pluginIdChanged)
QString name() const;
void setName(QString newName);
bool enableInMainMenu() const;
void setEnableInMainMenu(bool newEnableInMainMenu);
QString menuSection() const;
void setMenuSection(QString newMenuSection);
QString menuIcon() const;
void setMenuIcon(QString newMenuIcon);
QString displayName() const;
void setDisplayName(QString newDisplayName);
ConfigurationPageType configurationPageType() const;
void setConfigurationPageType(ConfigurationPageType newConfigurationPageType);
QString pluginId() const;
void setPluginId(QString newPluginId);
signals:
void nameChanged(QString newName);
void enableInMainMenuChanged(bool newEnableInMainMenu);
void menuSectionChanged(QString newMenuSection);
void menuIconChanged(QString newMenuIcon);
void displayNameChanged(QString newDisplayName);
void configurationPageTypeChanged(ConfigurationPageType newConfigurationPageType);
void pluginIdChanged(QString newPluginId);
protected:
QString m_name;
bool m_enableInMainMenu;
QString m_menuSection;
QString m_menuIcon;
QString m_displayName;
ConfigurationPageType m_configurationPageType;
QString m_pluginId;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CONFIGURATIONPAGEINFO_H

View file

@ -0,0 +1,54 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CONFIGURATIONPAGETYPE_H
#define JELLYFIN_DTO_CONFIGURATIONPAGETYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ConfigurationPageTypeClass {
Q_GADGET
public:
enum Value {
PluginConfiguration,
None,
};
Q_ENUM(Value)
private:
explicit ConfigurationPageTypeClass();
};
typedef ConfigurationPageTypeClass::Value ConfigurationPageType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CONFIGURATIONPAGETYPE_H

View file

@ -0,0 +1,80 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CONTAINERPROFILE_H
#define JELLYFIN_DTO_CONTAINERPROFILE_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
#include "JellyfinQt/DTO/dlnaprofiletype.h"
namespace Jellyfin {
namespace DTO {
class ProfileCondition;
class ContainerProfile : public QObject {
Q_OBJECT
public:
explicit ContainerProfile(QObject *parent = nullptr);
static ContainerProfile *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(DlnaProfileType type READ type WRITE setType NOTIFY typeChanged)
Q_PROPERTY(QList<ProfileCondition *> conditions READ conditions WRITE setConditions NOTIFY conditionsChanged)
Q_PROPERTY(QString container READ container WRITE setContainer NOTIFY containerChanged)
DlnaProfileType type() const;
void setType(DlnaProfileType newType);
QList<ProfileCondition *> conditions() const;
void setConditions(QList<ProfileCondition *> newConditions);
QString container() const;
void setContainer(QString newContainer);
signals:
void typeChanged(DlnaProfileType newType);
void conditionsChanged(QList<ProfileCondition *> newConditions);
void containerChanged(QString newContainer);
protected:
DlnaProfileType m_type;
QList<ProfileCondition *> m_conditions;
QString m_container;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CONTAINERPROFILE_H

View file

@ -0,0 +1,74 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CONTROLRESPONSE_H
#define JELLYFIN_DTO_CONTROLRESPONSE_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class ControlResponse : public QObject {
Q_OBJECT
public:
explicit ControlResponse(QObject *parent = nullptr);
static ControlResponse *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(QJsonObject headers READ headers WRITE setHeaders NOTIFY headersChanged)
Q_PROPERTY(QString xml READ xml WRITE setXml NOTIFY xmlChanged)
Q_PROPERTY(bool isSuccessful READ isSuccessful WRITE setIsSuccessful NOTIFY isSuccessfulChanged)
QJsonObject headers() const;
void setHeaders(QJsonObject newHeaders);
QString xml() const;
void setXml(QString newXml);
bool isSuccessful() const;
void setIsSuccessful(bool newIsSuccessful);
signals:
void headersChanged(QJsonObject newHeaders);
void xmlChanged(QString newXml);
void isSuccessfulChanged(bool newIsSuccessful);
protected:
QJsonObject m_headers;
QString m_xml;
bool m_isSuccessful;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CONTROLRESPONSE_H

View file

@ -0,0 +1,92 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_COUNTRYINFO_H
#define JELLYFIN_DTO_COUNTRYINFO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class CountryInfo : public QObject {
Q_OBJECT
public:
explicit CountryInfo(QObject *parent = nullptr);
static CountryInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the display name.
*/
Q_PROPERTY(QString displayName READ displayName WRITE setDisplayName NOTIFY displayNameChanged)
/**
* @brief Gets or sets the name of the two letter ISO region.
*/
Q_PROPERTY(QString twoLetterISORegionName READ twoLetterISORegionName WRITE setTwoLetterISORegionName NOTIFY twoLetterISORegionNameChanged)
/**
* @brief Gets or sets the name of the three letter ISO region.
*/
Q_PROPERTY(QString threeLetterISORegionName READ threeLetterISORegionName WRITE setThreeLetterISORegionName NOTIFY threeLetterISORegionNameChanged)
QString name() const;
void setName(QString newName);
QString displayName() const;
void setDisplayName(QString newDisplayName);
QString twoLetterISORegionName() const;
void setTwoLetterISORegionName(QString newTwoLetterISORegionName);
QString threeLetterISORegionName() const;
void setThreeLetterISORegionName(QString newThreeLetterISORegionName);
signals:
void nameChanged(QString newName);
void displayNameChanged(QString newDisplayName);
void twoLetterISORegionNameChanged(QString newTwoLetterISORegionName);
void threeLetterISORegionNameChanged(QString newThreeLetterISORegionName);
protected:
QString m_name;
QString m_displayName;
QString m_twoLetterISORegionName;
QString m_threeLetterISORegionName;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_COUNTRYINFO_H

View file

@ -0,0 +1,94 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CREATEPLAYLISTDTO_H
#define JELLYFIN_DTO_CREATEPLAYLISTDTO_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class CreatePlaylistDto : public QObject {
Q_OBJECT
public:
explicit CreatePlaylistDto(QObject *parent = nullptr);
static CreatePlaylistDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name of the new playlist.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets item ids to add to the playlist.
*/
Q_PROPERTY(QStringList ids READ ids WRITE setIds NOTIFY idsChanged)
/**
* @brief Gets or sets the user id.
*/
Q_PROPERTY(QString userId READ userId WRITE setUserId NOTIFY userIdChanged)
/**
* @brief Gets or sets the media type.
*/
Q_PROPERTY(QString mediaType READ mediaType WRITE setMediaType NOTIFY mediaTypeChanged)
QString name() const;
void setName(QString newName);
QStringList ids() const;
void setIds(QStringList newIds);
QString userId() const;
void setUserId(QString newUserId);
QString mediaType() const;
void setMediaType(QString newMediaType);
signals:
void nameChanged(QString newName);
void idsChanged(QStringList newIds);
void userIdChanged(QString newUserId);
void mediaTypeChanged(QString newMediaType);
protected:
QString m_name;
QStringList m_ids;
QString m_userId;
QString m_mediaType;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CREATEPLAYLISTDTO_H

View file

@ -0,0 +1,74 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CREATEUSERBYNAME_H
#define JELLYFIN_DTO_CREATEUSERBYNAME_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class CreateUserByName : public QObject {
Q_OBJECT
public:
explicit CreateUserByName(QObject *parent = nullptr);
static CreateUserByName *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the username.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the password.
*/
Q_PROPERTY(QString password READ password WRITE setPassword NOTIFY passwordChanged)
QString name() const;
void setName(QString newName);
QString password() const;
void setPassword(QString newPassword);
signals:
void nameChanged(QString newName);
void passwordChanged(QString newPassword);
protected:
QString m_name;
QString m_password;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CREATEUSERBYNAME_H

View file

@ -0,0 +1,100 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_CULTUREDTO_H
#define JELLYFIN_DTO_CULTUREDTO_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class CultureDto : public QObject {
Q_OBJECT
public:
explicit CultureDto(QObject *parent = nullptr);
static CultureDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the display name.
*/
Q_PROPERTY(QString displayName READ displayName WRITE setDisplayName NOTIFY displayNameChanged)
/**
* @brief Gets or sets the name of the two letter ISO language.
*/
Q_PROPERTY(QString twoLetterISOLanguageName READ twoLetterISOLanguageName WRITE setTwoLetterISOLanguageName NOTIFY twoLetterISOLanguageNameChanged)
/**
* @brief Gets or sets the name of the three letter ISO language.
*/
Q_PROPERTY(QString threeLetterISOLanguageName READ threeLetterISOLanguageName WRITE setThreeLetterISOLanguageName NOTIFY threeLetterISOLanguageNameChanged)
Q_PROPERTY(QStringList threeLetterISOLanguageNames READ threeLetterISOLanguageNames WRITE setThreeLetterISOLanguageNames NOTIFY threeLetterISOLanguageNamesChanged)
QString name() const;
void setName(QString newName);
QString displayName() const;
void setDisplayName(QString newDisplayName);
QString twoLetterISOLanguageName() const;
void setTwoLetterISOLanguageName(QString newTwoLetterISOLanguageName);
QString threeLetterISOLanguageName() const;
void setThreeLetterISOLanguageName(QString newThreeLetterISOLanguageName);
QStringList threeLetterISOLanguageNames() const;
void setThreeLetterISOLanguageNames(QStringList newThreeLetterISOLanguageNames);
signals:
void nameChanged(QString newName);
void displayNameChanged(QString newDisplayName);
void twoLetterISOLanguageNameChanged(QString newTwoLetterISOLanguageName);
void threeLetterISOLanguageNameChanged(QString newThreeLetterISOLanguageName);
void threeLetterISOLanguageNamesChanged(QStringList newThreeLetterISOLanguageNames);
protected:
QString m_name;
QString m_displayName;
QString m_twoLetterISOLanguageName;
QString m_threeLetterISOLanguageName;
QStringList m_threeLetterISOLanguageNames;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_CULTUREDTO_H

View file

@ -0,0 +1,59 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DAYOFWEEK_H
#define JELLYFIN_DTO_DAYOFWEEK_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class DayOfWeekClass {
Q_GADGET
public:
enum Value {
Sunday,
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
};
Q_ENUM(Value)
private:
explicit DayOfWeekClass();
};
typedef DayOfWeekClass::Value DayOfWeek;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DAYOFWEEK_H

View file

@ -0,0 +1,55 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DAYPATTERN_H
#define JELLYFIN_DTO_DAYPATTERN_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class DayPatternClass {
Q_GADGET
public:
enum Value {
Daily,
Weekdays,
Weekends,
};
Q_ENUM(Value)
private:
explicit DayPatternClass();
};
typedef DayPatternClass::Value DayPattern;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DAYPATTERN_H

View file

@ -0,0 +1,65 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DEFAULTDIRECTORYBROWSERINFODTO_H
#define JELLYFIN_DTO_DEFAULTDIRECTORYBROWSERINFODTO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class DefaultDirectoryBrowserInfoDto : public QObject {
Q_OBJECT
public:
explicit DefaultDirectoryBrowserInfoDto(QObject *parent = nullptr);
static DefaultDirectoryBrowserInfoDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the path.
*/
Q_PROPERTY(QString path READ path WRITE setPath NOTIFY pathChanged)
QString path() const;
void setPath(QString newPath);
signals:
void pathChanged(QString newPath);
protected:
QString m_path;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DEFAULTDIRECTORYBROWSERINFODTO_H

View file

@ -0,0 +1,141 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DEVICEIDENTIFICATION_H
#define JELLYFIN_DTO_DEVICEIDENTIFICATION_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class HttpHeaderInfo;
class DeviceIdentification : public QObject {
Q_OBJECT
public:
explicit DeviceIdentification(QObject *parent = nullptr);
static DeviceIdentification *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name of the friendly.
*/
Q_PROPERTY(QString friendlyName READ friendlyName WRITE setFriendlyName NOTIFY friendlyNameChanged)
/**
* @brief Gets or sets the model number.
*/
Q_PROPERTY(QString modelNumber READ modelNumber WRITE setModelNumber NOTIFY modelNumberChanged)
/**
* @brief Gets or sets the serial number.
*/
Q_PROPERTY(QString serialNumber READ serialNumber WRITE setSerialNumber NOTIFY serialNumberChanged)
/**
* @brief Gets or sets the name of the model.
*/
Q_PROPERTY(QString modelName READ modelName WRITE setModelName NOTIFY modelNameChanged)
/**
* @brief Gets or sets the model description.
*/
Q_PROPERTY(QString modelDescription READ modelDescription WRITE setModelDescription NOTIFY modelDescriptionChanged)
/**
* @brief Gets or sets the model URL.
*/
Q_PROPERTY(QString modelUrl READ modelUrl WRITE setModelUrl NOTIFY modelUrlChanged)
/**
* @brief Gets or sets the manufacturer.
*/
Q_PROPERTY(QString manufacturer READ manufacturer WRITE setManufacturer NOTIFY manufacturerChanged)
/**
* @brief Gets or sets the manufacturer URL.
*/
Q_PROPERTY(QString manufacturerUrl READ manufacturerUrl WRITE setManufacturerUrl NOTIFY manufacturerUrlChanged)
/**
* @brief Gets or sets the headers.
*/
Q_PROPERTY(QList<HttpHeaderInfo *> headers READ headers WRITE setHeaders NOTIFY headersChanged)
QString friendlyName() const;
void setFriendlyName(QString newFriendlyName);
QString modelNumber() const;
void setModelNumber(QString newModelNumber);
QString serialNumber() const;
void setSerialNumber(QString newSerialNumber);
QString modelName() const;
void setModelName(QString newModelName);
QString modelDescription() const;
void setModelDescription(QString newModelDescription);
QString modelUrl() const;
void setModelUrl(QString newModelUrl);
QString manufacturer() const;
void setManufacturer(QString newManufacturer);
QString manufacturerUrl() const;
void setManufacturerUrl(QString newManufacturerUrl);
QList<HttpHeaderInfo *> headers() const;
void setHeaders(QList<HttpHeaderInfo *> newHeaders);
signals:
void friendlyNameChanged(QString newFriendlyName);
void modelNumberChanged(QString newModelNumber);
void serialNumberChanged(QString newSerialNumber);
void modelNameChanged(QString newModelName);
void modelDescriptionChanged(QString newModelDescription);
void modelUrlChanged(QString newModelUrl);
void manufacturerChanged(QString newManufacturer);
void manufacturerUrlChanged(QString newManufacturerUrl);
void headersChanged(QList<HttpHeaderInfo *> newHeaders);
protected:
QString m_friendlyName;
QString m_modelNumber;
QString m_serialNumber;
QString m_modelName;
QString m_modelDescription;
QString m_modelUrl;
QString m_manufacturer;
QString m_manufacturerUrl;
QList<HttpHeaderInfo *> m_headers;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DEVICEIDENTIFICATION_H

View file

@ -0,0 +1,131 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DEVICEINFO_H
#define JELLYFIN_DTO_DEVICEINFO_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class ClientCapabilities;
class DeviceInfo : public QObject {
Q_OBJECT
public:
explicit DeviceInfo(QObject *parent = nullptr);
static DeviceInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the identifier.
*/
Q_PROPERTY(QString jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
/**
* @brief Gets or sets the last name of the user.
*/
Q_PROPERTY(QString lastUserName READ lastUserName WRITE setLastUserName NOTIFY lastUserNameChanged)
/**
* @brief Gets or sets the name of the application.
*/
Q_PROPERTY(QString appName READ appName WRITE setAppName NOTIFY appNameChanged)
/**
* @brief Gets or sets the application version.
*/
Q_PROPERTY(QString appVersion READ appVersion WRITE setAppVersion NOTIFY appVersionChanged)
/**
* @brief Gets or sets the last user identifier.
*/
Q_PROPERTY(QString lastUserId READ lastUserId WRITE setLastUserId NOTIFY lastUserIdChanged)
/**
* @brief Gets or sets the date last modified.
*/
Q_PROPERTY(QDateTime dateLastActivity READ dateLastActivity WRITE setDateLastActivity NOTIFY dateLastActivityChanged)
Q_PROPERTY(ClientCapabilities * capabilities READ capabilities WRITE setCapabilities NOTIFY capabilitiesChanged)
Q_PROPERTY(QString iconUrl READ iconUrl WRITE setIconUrl NOTIFY iconUrlChanged)
QString name() const;
void setName(QString newName);
QString jellyfinId() const;
void setJellyfinId(QString newJellyfinId);
QString lastUserName() const;
void setLastUserName(QString newLastUserName);
QString appName() const;
void setAppName(QString newAppName);
QString appVersion() const;
void setAppVersion(QString newAppVersion);
QString lastUserId() const;
void setLastUserId(QString newLastUserId);
QDateTime dateLastActivity() const;
void setDateLastActivity(QDateTime newDateLastActivity);
ClientCapabilities * capabilities() const;
void setCapabilities(ClientCapabilities * newCapabilities);
QString iconUrl() const;
void setIconUrl(QString newIconUrl);
signals:
void nameChanged(QString newName);
void jellyfinIdChanged(QString newJellyfinId);
void lastUserNameChanged(QString newLastUserName);
void appNameChanged(QString newAppName);
void appVersionChanged(QString newAppVersion);
void lastUserIdChanged(QString newLastUserId);
void dateLastActivityChanged(QDateTime newDateLastActivity);
void capabilitiesChanged(ClientCapabilities * newCapabilities);
void iconUrlChanged(QString newIconUrl);
protected:
QString m_name;
QString m_jellyfinId;
QString m_lastUserName;
QString m_appName;
QString m_appVersion;
QString m_lastUserId;
QDateTime m_dateLastActivity;
ClientCapabilities * m_capabilities = nullptr;
QString m_iconUrl;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DEVICEINFO_H

View file

@ -0,0 +1,86 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DEVICEINFOQUERYRESULT_H
#define JELLYFIN_DTO_DEVICEINFOQUERYRESULT_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class DeviceInfo;
class DeviceInfoQueryResult : public QObject {
Q_OBJECT
public:
explicit DeviceInfoQueryResult(QObject *parent = nullptr);
static DeviceInfoQueryResult *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the items.
*/
Q_PROPERTY(QList<DeviceInfo *> items READ items WRITE setItems NOTIFY itemsChanged)
/**
* @brief The total number of records available.
*/
Q_PROPERTY(qint32 totalRecordCount READ totalRecordCount WRITE setTotalRecordCount NOTIFY totalRecordCountChanged)
/**
* @brief The index of the first record in Items.
*/
Q_PROPERTY(qint32 startIndex READ startIndex WRITE setStartIndex NOTIFY startIndexChanged)
QList<DeviceInfo *> items() const;
void setItems(QList<DeviceInfo *> newItems);
qint32 totalRecordCount() const;
void setTotalRecordCount(qint32 newTotalRecordCount);
qint32 startIndex() const;
void setStartIndex(qint32 newStartIndex);
signals:
void itemsChanged(QList<DeviceInfo *> newItems);
void totalRecordCountChanged(qint32 newTotalRecordCount);
void startIndexChanged(qint32 newStartIndex);
protected:
QList<DeviceInfo *> m_items;
qint32 m_totalRecordCount;
qint32 m_startIndex;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DEVICEINFOQUERYRESULT_H

View file

@ -0,0 +1,62 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DEVICEOPTIONS_H
#define JELLYFIN_DTO_DEVICEOPTIONS_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class DeviceOptions : public QObject {
Q_OBJECT
public:
explicit DeviceOptions(QObject *parent = nullptr);
static DeviceOptions *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(QString customName READ customName WRITE setCustomName NOTIFY customNameChanged)
QString customName() const;
void setCustomName(QString newCustomName);
signals:
void customNameChanged(QString newCustomName);
protected:
QString m_customName;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DEVICEOPTIONS_H

View file

@ -0,0 +1,415 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DEVICEPROFILE_H
#define JELLYFIN_DTO_DEVICEPROFILE_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
namespace Jellyfin {
namespace DTO {
class CodecProfile;
class ContainerProfile;
class DeviceIdentification;
class DirectPlayProfile;
class ResponseProfile;
class SubtitleProfile;
class TranscodingProfile;
class XmlAttribute;
class DeviceProfile : public QObject {
Q_OBJECT
public:
explicit DeviceProfile(QObject *parent = nullptr);
static DeviceProfile *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the Name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the Id.
*/
Q_PROPERTY(QString jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
Q_PROPERTY(DeviceIdentification * identification READ identification WRITE setIdentification NOTIFY identificationChanged)
/**
* @brief Gets or sets the FriendlyName.
*/
Q_PROPERTY(QString friendlyName READ friendlyName WRITE setFriendlyName NOTIFY friendlyNameChanged)
/**
* @brief Gets or sets the Manufacturer.
*/
Q_PROPERTY(QString manufacturer READ manufacturer WRITE setManufacturer NOTIFY manufacturerChanged)
/**
* @brief Gets or sets the ManufacturerUrl.
*/
Q_PROPERTY(QString manufacturerUrl READ manufacturerUrl WRITE setManufacturerUrl NOTIFY manufacturerUrlChanged)
/**
* @brief Gets or sets the ModelName.
*/
Q_PROPERTY(QString modelName READ modelName WRITE setModelName NOTIFY modelNameChanged)
/**
* @brief Gets or sets the ModelDescription.
*/
Q_PROPERTY(QString modelDescription READ modelDescription WRITE setModelDescription NOTIFY modelDescriptionChanged)
/**
* @brief Gets or sets the ModelNumber.
*/
Q_PROPERTY(QString modelNumber READ modelNumber WRITE setModelNumber NOTIFY modelNumberChanged)
/**
* @brief Gets or sets the ModelUrl.
*/
Q_PROPERTY(QString modelUrl READ modelUrl WRITE setModelUrl NOTIFY modelUrlChanged)
/**
* @brief Gets or sets the SerialNumber.
*/
Q_PROPERTY(QString serialNumber READ serialNumber WRITE setSerialNumber NOTIFY serialNumberChanged)
/**
* @brief Gets or sets a value indicating whether EnableAlbumArtInDidl.
*/
Q_PROPERTY(bool enableAlbumArtInDidl READ enableAlbumArtInDidl WRITE setEnableAlbumArtInDidl NOTIFY enableAlbumArtInDidlChanged)
/**
* @brief Gets or sets a value indicating whether EnableSingleAlbumArtLimit.
*/
Q_PROPERTY(bool enableSingleAlbumArtLimit READ enableSingleAlbumArtLimit WRITE setEnableSingleAlbumArtLimit NOTIFY enableSingleAlbumArtLimitChanged)
/**
* @brief Gets or sets a value indicating whether EnableSingleSubtitleLimit.
*/
Q_PROPERTY(bool enableSingleSubtitleLimit READ enableSingleSubtitleLimit WRITE setEnableSingleSubtitleLimit NOTIFY enableSingleSubtitleLimitChanged)
/**
* @brief Gets or sets the SupportedMediaTypes.
*/
Q_PROPERTY(QString supportedMediaTypes READ supportedMediaTypes WRITE setSupportedMediaTypes NOTIFY supportedMediaTypesChanged)
/**
* @brief Gets or sets the UserId.
*/
Q_PROPERTY(QString userId READ userId WRITE setUserId NOTIFY userIdChanged)
/**
* @brief Gets or sets the AlbumArtPn.
*/
Q_PROPERTY(QString albumArtPn READ albumArtPn WRITE setAlbumArtPn NOTIFY albumArtPnChanged)
/**
* @brief Gets or sets the MaxAlbumArtWidth.
*/
Q_PROPERTY(qint32 maxAlbumArtWidth READ maxAlbumArtWidth WRITE setMaxAlbumArtWidth NOTIFY maxAlbumArtWidthChanged)
/**
* @brief Gets or sets the MaxAlbumArtHeight.
*/
Q_PROPERTY(qint32 maxAlbumArtHeight READ maxAlbumArtHeight WRITE setMaxAlbumArtHeight NOTIFY maxAlbumArtHeightChanged)
/**
* @brief Gets or sets the MaxIconWidth.
*/
Q_PROPERTY(qint32 maxIconWidth READ maxIconWidth WRITE setMaxIconWidth NOTIFY maxIconWidthChanged)
/**
* @brief Gets or sets the MaxIconHeight.
*/
Q_PROPERTY(qint32 maxIconHeight READ maxIconHeight WRITE setMaxIconHeight NOTIFY maxIconHeightChanged)
/**
* @brief Gets or sets the MaxStreamingBitrate.
*/
Q_PROPERTY(qint32 maxStreamingBitrate READ maxStreamingBitrate WRITE setMaxStreamingBitrate NOTIFY maxStreamingBitrateChanged)
/**
* @brief Gets or sets the MaxStaticBitrate.
*/
Q_PROPERTY(qint32 maxStaticBitrate READ maxStaticBitrate WRITE setMaxStaticBitrate NOTIFY maxStaticBitrateChanged)
/**
* @brief Gets or sets the MusicStreamingTranscodingBitrate.
*/
Q_PROPERTY(qint32 musicStreamingTranscodingBitrate READ musicStreamingTranscodingBitrate WRITE setMusicStreamingTranscodingBitrate NOTIFY musicStreamingTranscodingBitrateChanged)
/**
* @brief Gets or sets the MaxStaticMusicBitrate.
*/
Q_PROPERTY(qint32 maxStaticMusicBitrate READ maxStaticMusicBitrate WRITE setMaxStaticMusicBitrate NOTIFY maxStaticMusicBitrateChanged)
/**
* @brief Gets or sets the content of the aggregationFlags element in the urn:schemas-sonycom:av namespace.
*/
Q_PROPERTY(QString sonyAggregationFlags READ sonyAggregationFlags WRITE setSonyAggregationFlags NOTIFY sonyAggregationFlagsChanged)
/**
* @brief Gets or sets the ProtocolInfo.
*/
Q_PROPERTY(QString protocolInfo READ protocolInfo WRITE setProtocolInfo NOTIFY protocolInfoChanged)
/**
* @brief Gets or sets the TimelineOffsetSeconds.
*/
Q_PROPERTY(qint32 timelineOffsetSeconds READ timelineOffsetSeconds WRITE setTimelineOffsetSeconds NOTIFY timelineOffsetSecondsChanged)
/**
* @brief Gets or sets a value indicating whether RequiresPlainVideoItems.
*/
Q_PROPERTY(bool requiresPlainVideoItems READ requiresPlainVideoItems WRITE setRequiresPlainVideoItems NOTIFY requiresPlainVideoItemsChanged)
/**
* @brief Gets or sets a value indicating whether RequiresPlainFolders.
*/
Q_PROPERTY(bool requiresPlainFolders READ requiresPlainFolders WRITE setRequiresPlainFolders NOTIFY requiresPlainFoldersChanged)
/**
* @brief Gets or sets a value indicating whether EnableMSMediaReceiverRegistrar.
*/
Q_PROPERTY(bool enableMSMediaReceiverRegistrar READ enableMSMediaReceiverRegistrar WRITE setEnableMSMediaReceiverRegistrar NOTIFY enableMSMediaReceiverRegistrarChanged)
/**
* @brief Gets or sets a value indicating whether IgnoreTranscodeByteRangeRequests.
*/
Q_PROPERTY(bool ignoreTranscodeByteRangeRequests READ ignoreTranscodeByteRangeRequests WRITE setIgnoreTranscodeByteRangeRequests NOTIFY ignoreTranscodeByteRangeRequestsChanged)
/**
* @brief Gets or sets the XmlRootAttributes.
*/
Q_PROPERTY(QList<XmlAttribute *> xmlRootAttributes READ xmlRootAttributes WRITE setXmlRootAttributes NOTIFY xmlRootAttributesChanged)
/**
* @brief Gets or sets the direct play profiles.
*/
Q_PROPERTY(QList<DirectPlayProfile *> directPlayProfiles READ directPlayProfiles WRITE setDirectPlayProfiles NOTIFY directPlayProfilesChanged)
/**
* @brief Gets or sets the transcoding profiles.
*/
Q_PROPERTY(QList<TranscodingProfile *> transcodingProfiles READ transcodingProfiles WRITE setTranscodingProfiles NOTIFY transcodingProfilesChanged)
/**
* @brief Gets or sets the ContainerProfiles.
*/
Q_PROPERTY(QList<ContainerProfile *> containerProfiles READ containerProfiles WRITE setContainerProfiles NOTIFY containerProfilesChanged)
/**
* @brief Gets or sets the CodecProfiles.
*/
Q_PROPERTY(QList<CodecProfile *> codecProfiles READ codecProfiles WRITE setCodecProfiles NOTIFY codecProfilesChanged)
/**
* @brief Gets or sets the ResponseProfiles.
*/
Q_PROPERTY(QList<ResponseProfile *> responseProfiles READ responseProfiles WRITE setResponseProfiles NOTIFY responseProfilesChanged)
/**
* @brief Gets or sets the SubtitleProfiles.
*/
Q_PROPERTY(QList<SubtitleProfile *> subtitleProfiles READ subtitleProfiles WRITE setSubtitleProfiles NOTIFY subtitleProfilesChanged)
QString name() const;
void setName(QString newName);
QString jellyfinId() const;
void setJellyfinId(QString newJellyfinId);
DeviceIdentification * identification() const;
void setIdentification(DeviceIdentification * newIdentification);
QString friendlyName() const;
void setFriendlyName(QString newFriendlyName);
QString manufacturer() const;
void setManufacturer(QString newManufacturer);
QString manufacturerUrl() const;
void setManufacturerUrl(QString newManufacturerUrl);
QString modelName() const;
void setModelName(QString newModelName);
QString modelDescription() const;
void setModelDescription(QString newModelDescription);
QString modelNumber() const;
void setModelNumber(QString newModelNumber);
QString modelUrl() const;
void setModelUrl(QString newModelUrl);
QString serialNumber() const;
void setSerialNumber(QString newSerialNumber);
bool enableAlbumArtInDidl() const;
void setEnableAlbumArtInDidl(bool newEnableAlbumArtInDidl);
bool enableSingleAlbumArtLimit() const;
void setEnableSingleAlbumArtLimit(bool newEnableSingleAlbumArtLimit);
bool enableSingleSubtitleLimit() const;
void setEnableSingleSubtitleLimit(bool newEnableSingleSubtitleLimit);
QString supportedMediaTypes() const;
void setSupportedMediaTypes(QString newSupportedMediaTypes);
QString userId() const;
void setUserId(QString newUserId);
QString albumArtPn() const;
void setAlbumArtPn(QString newAlbumArtPn);
qint32 maxAlbumArtWidth() const;
void setMaxAlbumArtWidth(qint32 newMaxAlbumArtWidth);
qint32 maxAlbumArtHeight() const;
void setMaxAlbumArtHeight(qint32 newMaxAlbumArtHeight);
qint32 maxIconWidth() const;
void setMaxIconWidth(qint32 newMaxIconWidth);
qint32 maxIconHeight() const;
void setMaxIconHeight(qint32 newMaxIconHeight);
qint32 maxStreamingBitrate() const;
void setMaxStreamingBitrate(qint32 newMaxStreamingBitrate);
qint32 maxStaticBitrate() const;
void setMaxStaticBitrate(qint32 newMaxStaticBitrate);
qint32 musicStreamingTranscodingBitrate() const;
void setMusicStreamingTranscodingBitrate(qint32 newMusicStreamingTranscodingBitrate);
qint32 maxStaticMusicBitrate() const;
void setMaxStaticMusicBitrate(qint32 newMaxStaticMusicBitrate);
QString sonyAggregationFlags() const;
void setSonyAggregationFlags(QString newSonyAggregationFlags);
QString protocolInfo() const;
void setProtocolInfo(QString newProtocolInfo);
qint32 timelineOffsetSeconds() const;
void setTimelineOffsetSeconds(qint32 newTimelineOffsetSeconds);
bool requiresPlainVideoItems() const;
void setRequiresPlainVideoItems(bool newRequiresPlainVideoItems);
bool requiresPlainFolders() const;
void setRequiresPlainFolders(bool newRequiresPlainFolders);
bool enableMSMediaReceiverRegistrar() const;
void setEnableMSMediaReceiverRegistrar(bool newEnableMSMediaReceiverRegistrar);
bool ignoreTranscodeByteRangeRequests() const;
void setIgnoreTranscodeByteRangeRequests(bool newIgnoreTranscodeByteRangeRequests);
QList<XmlAttribute *> xmlRootAttributes() const;
void setXmlRootAttributes(QList<XmlAttribute *> newXmlRootAttributes);
QList<DirectPlayProfile *> directPlayProfiles() const;
void setDirectPlayProfiles(QList<DirectPlayProfile *> newDirectPlayProfiles);
QList<TranscodingProfile *> transcodingProfiles() const;
void setTranscodingProfiles(QList<TranscodingProfile *> newTranscodingProfiles);
QList<ContainerProfile *> containerProfiles() const;
void setContainerProfiles(QList<ContainerProfile *> newContainerProfiles);
QList<CodecProfile *> codecProfiles() const;
void setCodecProfiles(QList<CodecProfile *> newCodecProfiles);
QList<ResponseProfile *> responseProfiles() const;
void setResponseProfiles(QList<ResponseProfile *> newResponseProfiles);
QList<SubtitleProfile *> subtitleProfiles() const;
void setSubtitleProfiles(QList<SubtitleProfile *> newSubtitleProfiles);
signals:
void nameChanged(QString newName);
void jellyfinIdChanged(QString newJellyfinId);
void identificationChanged(DeviceIdentification * newIdentification);
void friendlyNameChanged(QString newFriendlyName);
void manufacturerChanged(QString newManufacturer);
void manufacturerUrlChanged(QString newManufacturerUrl);
void modelNameChanged(QString newModelName);
void modelDescriptionChanged(QString newModelDescription);
void modelNumberChanged(QString newModelNumber);
void modelUrlChanged(QString newModelUrl);
void serialNumberChanged(QString newSerialNumber);
void enableAlbumArtInDidlChanged(bool newEnableAlbumArtInDidl);
void enableSingleAlbumArtLimitChanged(bool newEnableSingleAlbumArtLimit);
void enableSingleSubtitleLimitChanged(bool newEnableSingleSubtitleLimit);
void supportedMediaTypesChanged(QString newSupportedMediaTypes);
void userIdChanged(QString newUserId);
void albumArtPnChanged(QString newAlbumArtPn);
void maxAlbumArtWidthChanged(qint32 newMaxAlbumArtWidth);
void maxAlbumArtHeightChanged(qint32 newMaxAlbumArtHeight);
void maxIconWidthChanged(qint32 newMaxIconWidth);
void maxIconHeightChanged(qint32 newMaxIconHeight);
void maxStreamingBitrateChanged(qint32 newMaxStreamingBitrate);
void maxStaticBitrateChanged(qint32 newMaxStaticBitrate);
void musicStreamingTranscodingBitrateChanged(qint32 newMusicStreamingTranscodingBitrate);
void maxStaticMusicBitrateChanged(qint32 newMaxStaticMusicBitrate);
void sonyAggregationFlagsChanged(QString newSonyAggregationFlags);
void protocolInfoChanged(QString newProtocolInfo);
void timelineOffsetSecondsChanged(qint32 newTimelineOffsetSeconds);
void requiresPlainVideoItemsChanged(bool newRequiresPlainVideoItems);
void requiresPlainFoldersChanged(bool newRequiresPlainFolders);
void enableMSMediaReceiverRegistrarChanged(bool newEnableMSMediaReceiverRegistrar);
void ignoreTranscodeByteRangeRequestsChanged(bool newIgnoreTranscodeByteRangeRequests);
void xmlRootAttributesChanged(QList<XmlAttribute *> newXmlRootAttributes);
void directPlayProfilesChanged(QList<DirectPlayProfile *> newDirectPlayProfiles);
void transcodingProfilesChanged(QList<TranscodingProfile *> newTranscodingProfiles);
void containerProfilesChanged(QList<ContainerProfile *> newContainerProfiles);
void codecProfilesChanged(QList<CodecProfile *> newCodecProfiles);
void responseProfilesChanged(QList<ResponseProfile *> newResponseProfiles);
void subtitleProfilesChanged(QList<SubtitleProfile *> newSubtitleProfiles);
protected:
QString m_name;
QString m_jellyfinId;
DeviceIdentification * m_identification = nullptr;
QString m_friendlyName;
QString m_manufacturer;
QString m_manufacturerUrl;
QString m_modelName;
QString m_modelDescription;
QString m_modelNumber;
QString m_modelUrl;
QString m_serialNumber;
bool m_enableAlbumArtInDidl;
bool m_enableSingleAlbumArtLimit;
bool m_enableSingleSubtitleLimit;
QString m_supportedMediaTypes;
QString m_userId;
QString m_albumArtPn;
qint32 m_maxAlbumArtWidth;
qint32 m_maxAlbumArtHeight;
qint32 m_maxIconWidth;
qint32 m_maxIconHeight;
qint32 m_maxStreamingBitrate;
qint32 m_maxStaticBitrate;
qint32 m_musicStreamingTranscodingBitrate;
qint32 m_maxStaticMusicBitrate;
QString m_sonyAggregationFlags;
QString m_protocolInfo;
qint32 m_timelineOffsetSeconds;
bool m_requiresPlainVideoItems;
bool m_requiresPlainFolders;
bool m_enableMSMediaReceiverRegistrar;
bool m_ignoreTranscodeByteRangeRequests;
QList<XmlAttribute *> m_xmlRootAttributes;
QList<DirectPlayProfile *> m_directPlayProfiles;
QList<TranscodingProfile *> m_transcodingProfiles;
QList<ContainerProfile *> m_containerProfiles;
QList<CodecProfile *> m_codecProfiles;
QList<ResponseProfile *> m_responseProfiles;
QList<SubtitleProfile *> m_subtitleProfiles;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DEVICEPROFILE_H

View file

@ -0,0 +1,82 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DEVICEPROFILEINFO_H
#define JELLYFIN_DTO_DEVICEPROFILEINFO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/deviceprofiletype.h"
namespace Jellyfin {
namespace DTO {
class DeviceProfileInfo : public QObject {
Q_OBJECT
public:
explicit DeviceProfileInfo(QObject *parent = nullptr);
static DeviceProfileInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the identifier.
*/
Q_PROPERTY(QString jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
Q_PROPERTY(DeviceProfileType type READ type WRITE setType NOTIFY typeChanged)
QString jellyfinId() const;
void setJellyfinId(QString newJellyfinId);
QString name() const;
void setName(QString newName);
DeviceProfileType type() const;
void setType(DeviceProfileType newType);
signals:
void jellyfinIdChanged(QString newJellyfinId);
void nameChanged(QString newName);
void typeChanged(DeviceProfileType newType);
protected:
QString m_jellyfinId;
QString m_name;
DeviceProfileType m_type;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DEVICEPROFILEINFO_H

View file

@ -0,0 +1,54 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DEVICEPROFILETYPE_H
#define JELLYFIN_DTO_DEVICEPROFILETYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class DeviceProfileTypeClass {
Q_GADGET
public:
enum Value {
System,
User,
};
Q_ENUM(Value)
private:
explicit DeviceProfileTypeClass();
};
typedef DeviceProfileTypeClass::Value DeviceProfileType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DEVICEPROFILETYPE_H

View file

@ -0,0 +1,82 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DIRECTPLAYPROFILE_H
#define JELLYFIN_DTO_DIRECTPLAYPROFILE_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/dlnaprofiletype.h"
namespace Jellyfin {
namespace DTO {
class DirectPlayProfile : public QObject {
Q_OBJECT
public:
explicit DirectPlayProfile(QObject *parent = nullptr);
static DirectPlayProfile *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(QString container READ container WRITE setContainer NOTIFY containerChanged)
Q_PROPERTY(QString audioCodec READ audioCodec WRITE setAudioCodec NOTIFY audioCodecChanged)
Q_PROPERTY(QString videoCodec READ videoCodec WRITE setVideoCodec NOTIFY videoCodecChanged)
Q_PROPERTY(DlnaProfileType type READ type WRITE setType NOTIFY typeChanged)
QString container() const;
void setContainer(QString newContainer);
QString audioCodec() const;
void setAudioCodec(QString newAudioCodec);
QString videoCodec() const;
void setVideoCodec(QString newVideoCodec);
DlnaProfileType type() const;
void setType(DlnaProfileType newType);
signals:
void containerChanged(QString newContainer);
void audioCodecChanged(QString newAudioCodec);
void videoCodecChanged(QString newVideoCodec);
void typeChanged(DlnaProfileType newType);
protected:
QString m_container;
QString m_audioCodec;
QString m_videoCodec;
DlnaProfileType m_type;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DIRECTPLAYPROFILE_H

View file

@ -0,0 +1,179 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DISPLAYPREFERENCESDTO_H
#define JELLYFIN_DTO_DISPLAYPREFERENCESDTO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/scrolldirection.h"
#include "JellyfinQt/DTO/sortorder.h"
namespace Jellyfin {
namespace DTO {
class DisplayPreferencesDto : public QObject {
Q_OBJECT
public:
explicit DisplayPreferencesDto(QObject *parent = nullptr);
static DisplayPreferencesDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the user id.
*/
Q_PROPERTY(QString jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
/**
* @brief Gets or sets the type of the view.
*/
Q_PROPERTY(QString viewType READ viewType WRITE setViewType NOTIFY viewTypeChanged)
/**
* @brief Gets or sets the sort by.
*/
Q_PROPERTY(QString sortBy READ sortBy WRITE setSortBy NOTIFY sortByChanged)
/**
* @brief Gets or sets the index by.
*/
Q_PROPERTY(QString indexBy READ indexBy WRITE setIndexBy NOTIFY indexByChanged)
/**
* @brief Gets or sets a value indicating whether [remember indexing].
*/
Q_PROPERTY(bool rememberIndexing READ rememberIndexing WRITE setRememberIndexing NOTIFY rememberIndexingChanged)
/**
* @brief Gets or sets the height of the primary image.
*/
Q_PROPERTY(qint32 primaryImageHeight READ primaryImageHeight WRITE setPrimaryImageHeight NOTIFY primaryImageHeightChanged)
/**
* @brief Gets or sets the width of the primary image.
*/
Q_PROPERTY(qint32 primaryImageWidth READ primaryImageWidth WRITE setPrimaryImageWidth NOTIFY primaryImageWidthChanged)
/**
* @brief Gets or sets the custom prefs.
*/
Q_PROPERTY(QJsonObject customPrefs READ customPrefs WRITE setCustomPrefs NOTIFY customPrefsChanged)
Q_PROPERTY(ScrollDirection scrollDirection READ scrollDirection WRITE setScrollDirection NOTIFY scrollDirectionChanged)
/**
* @brief Gets or sets a value indicating whether to show backdrops on this item.
*/
Q_PROPERTY(bool showBackdrop READ showBackdrop WRITE setShowBackdrop NOTIFY showBackdropChanged)
/**
* @brief Gets or sets a value indicating whether [remember sorting].
*/
Q_PROPERTY(bool rememberSorting READ rememberSorting WRITE setRememberSorting NOTIFY rememberSortingChanged)
Q_PROPERTY(SortOrder sortOrder READ sortOrder WRITE setSortOrder NOTIFY sortOrderChanged)
/**
* @brief Gets or sets a value indicating whether [show sidebar].
*/
Q_PROPERTY(bool showSidebar READ showSidebar WRITE setShowSidebar NOTIFY showSidebarChanged)
/**
* @brief Gets or sets the client.
*/
Q_PROPERTY(QString client READ client WRITE setClient NOTIFY clientChanged)
QString jellyfinId() const;
void setJellyfinId(QString newJellyfinId);
QString viewType() const;
void setViewType(QString newViewType);
QString sortBy() const;
void setSortBy(QString newSortBy);
QString indexBy() const;
void setIndexBy(QString newIndexBy);
bool rememberIndexing() const;
void setRememberIndexing(bool newRememberIndexing);
qint32 primaryImageHeight() const;
void setPrimaryImageHeight(qint32 newPrimaryImageHeight);
qint32 primaryImageWidth() const;
void setPrimaryImageWidth(qint32 newPrimaryImageWidth);
QJsonObject customPrefs() const;
void setCustomPrefs(QJsonObject newCustomPrefs);
ScrollDirection scrollDirection() const;
void setScrollDirection(ScrollDirection newScrollDirection);
bool showBackdrop() const;
void setShowBackdrop(bool newShowBackdrop);
bool rememberSorting() const;
void setRememberSorting(bool newRememberSorting);
SortOrder sortOrder() const;
void setSortOrder(SortOrder newSortOrder);
bool showSidebar() const;
void setShowSidebar(bool newShowSidebar);
QString client() const;
void setClient(QString newClient);
signals:
void jellyfinIdChanged(QString newJellyfinId);
void viewTypeChanged(QString newViewType);
void sortByChanged(QString newSortBy);
void indexByChanged(QString newIndexBy);
void rememberIndexingChanged(bool newRememberIndexing);
void primaryImageHeightChanged(qint32 newPrimaryImageHeight);
void primaryImageWidthChanged(qint32 newPrimaryImageWidth);
void customPrefsChanged(QJsonObject newCustomPrefs);
void scrollDirectionChanged(ScrollDirection newScrollDirection);
void showBackdropChanged(bool newShowBackdrop);
void rememberSortingChanged(bool newRememberSorting);
void sortOrderChanged(SortOrder newSortOrder);
void showSidebarChanged(bool newShowSidebar);
void clientChanged(QString newClient);
protected:
QString m_jellyfinId;
QString m_viewType;
QString m_sortBy;
QString m_indexBy;
bool m_rememberIndexing;
qint32 m_primaryImageHeight;
qint32 m_primaryImageWidth;
QJsonObject m_customPrefs;
ScrollDirection m_scrollDirection;
bool m_showBackdrop;
bool m_rememberSorting;
SortOrder m_sortOrder;
bool m_showSidebar;
QString m_client;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DISPLAYPREFERENCESDTO_H

View file

@ -0,0 +1,55 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DLNAPROFILETYPE_H
#define JELLYFIN_DTO_DLNAPROFILETYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class DlnaProfileTypeClass {
Q_GADGET
public:
enum Value {
Audio,
Video,
Photo,
};
Q_ENUM(Value)
private:
explicit DlnaProfileTypeClass();
};
typedef DlnaProfileTypeClass::Value DlnaProfileType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DLNAPROFILETYPE_H

View file

@ -0,0 +1,62 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_DYNAMICDAYOFWEEK_H
#define JELLYFIN_DTO_DYNAMICDAYOFWEEK_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class DynamicDayOfWeekClass {
Q_GADGET
public:
enum Value {
Sunday,
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Everyday,
Weekday,
Weekend,
};
Q_ENUM(Value)
private:
explicit DynamicDayOfWeekClass();
};
typedef DynamicDayOfWeekClass::Value DynamicDayOfWeek;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_DYNAMICDAYOFWEEK_H

View file

@ -0,0 +1,54 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ENCODINGCONTEXT_H
#define JELLYFIN_DTO_ENCODINGCONTEXT_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class EncodingContextClass {
Q_GADGET
public:
enum Value {
Streaming,
Static,
};
Q_ENUM(Value)
private:
explicit EncodingContextClass();
};
typedef EncodingContextClass::Value EncodingContext;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ENCODINGCONTEXT_H

View file

@ -0,0 +1,67 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ENDPOINTINFO_H
#define JELLYFIN_DTO_ENDPOINTINFO_H
#include <QJsonObject>
#include <QObject>
namespace Jellyfin {
namespace DTO {
class EndPointInfo : public QObject {
Q_OBJECT
public:
explicit EndPointInfo(QObject *parent = nullptr);
static EndPointInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(bool isLocal READ isLocal WRITE setIsLocal NOTIFY isLocalChanged)
Q_PROPERTY(bool isInNetwork READ isInNetwork WRITE setIsInNetwork NOTIFY isInNetworkChanged)
bool isLocal() const;
void setIsLocal(bool newIsLocal);
bool isInNetwork() const;
void setIsInNetwork(bool newIsInNetwork);
signals:
void isLocalChanged(bool newIsLocal);
void isInNetworkChanged(bool newIsInNetwork);
protected:
bool m_isLocal;
bool m_isInNetwork;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ENDPOINTINFO_H

View file

@ -0,0 +1,91 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_EXTERNALIDINFO_H
#define JELLYFIN_DTO_EXTERNALIDINFO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/externalidmediatype.h"
namespace Jellyfin {
namespace DTO {
class ExternalIdInfo : public QObject {
Q_OBJECT
public:
explicit ExternalIdInfo(QObject *parent = nullptr);
static ExternalIdInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the display name of the external id provider (IE: IMDB, MusicBrainz, etc).
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the unique key for this id. This key should be unique across all providers.
*/
Q_PROPERTY(QString key READ key WRITE setKey NOTIFY keyChanged)
Q_PROPERTY(ExternalIdMediaType type READ type WRITE setType NOTIFY typeChanged)
/**
* @brief Gets or sets the URL format string.
*/
Q_PROPERTY(QString urlFormatString READ urlFormatString WRITE setUrlFormatString NOTIFY urlFormatStringChanged)
QString name() const;
void setName(QString newName);
QString key() const;
void setKey(QString newKey);
ExternalIdMediaType type() const;
void setType(ExternalIdMediaType newType);
QString urlFormatString() const;
void setUrlFormatString(QString newUrlFormatString);
signals:
void nameChanged(QString newName);
void keyChanged(QString newKey);
void typeChanged(ExternalIdMediaType newType);
void urlFormatStringChanged(QString newUrlFormatString);
protected:
QString m_name;
QString m_key;
ExternalIdMediaType m_type;
QString m_urlFormatString;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_EXTERNALIDINFO_H

View file

@ -0,0 +1,64 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_EXTERNALIDMEDIATYPE_H
#define JELLYFIN_DTO_EXTERNALIDMEDIATYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ExternalIdMediaTypeClass {
Q_GADGET
public:
enum Value {
Album,
AlbumArtist,
Artist,
BoxSet,
Episode,
Movie,
OtherArtist,
Person,
ReleaseGroup,
Season,
Series,
Track,
};
Q_ENUM(Value)
private:
explicit ExternalIdMediaTypeClass();
};
typedef ExternalIdMediaTypeClass::Value ExternalIdMediaType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_EXTERNALIDMEDIATYPE_H

View file

@ -0,0 +1,74 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_EXTERNALURL_H
#define JELLYFIN_DTO_EXTERNALURL_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class ExternalUrl : public QObject {
Q_OBJECT
public:
explicit ExternalUrl(QObject *parent = nullptr);
static ExternalUrl *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the type of the item.
*/
Q_PROPERTY(QString url READ url WRITE setUrl NOTIFY urlChanged)
QString name() const;
void setName(QString newName);
QString url() const;
void setUrl(QString newUrl);
signals:
void nameChanged(QString newName);
void urlChanged(QString newUrl);
protected:
QString m_name;
QString m_url;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_EXTERNALURL_H

View file

@ -0,0 +1,56 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_FFMPEGLOCATION_H
#define JELLYFIN_DTO_FFMPEGLOCATION_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class FFmpegLocationClass {
Q_GADGET
public:
enum Value {
NotFound,
SetByArgument,
Custom,
System,
};
Q_ENUM(Value)
private:
explicit FFmpegLocationClass();
};
typedef FFmpegLocationClass::Value FFmpegLocation;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_FFMPEGLOCATION_H

View file

@ -0,0 +1,82 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_FILESYSTEMENTRYINFO_H
#define JELLYFIN_DTO_FILESYSTEMENTRYINFO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/filesystementrytype.h"
namespace Jellyfin {
namespace DTO {
class FileSystemEntryInfo : public QObject {
Q_OBJECT
public:
explicit FileSystemEntryInfo(QObject *parent = nullptr);
static FileSystemEntryInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets the path.
*/
Q_PROPERTY(QString path READ path WRITE setPath NOTIFY pathChanged)
Q_PROPERTY(FileSystemEntryType type READ type WRITE setType NOTIFY typeChanged)
QString name() const;
void setName(QString newName);
QString path() const;
void setPath(QString newPath);
FileSystemEntryType type() const;
void setType(FileSystemEntryType newType);
signals:
void nameChanged(QString newName);
void pathChanged(QString newPath);
void typeChanged(FileSystemEntryType newType);
protected:
QString m_name;
QString m_path;
FileSystemEntryType m_type;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_FILESYSTEMENTRYINFO_H

View file

@ -0,0 +1,56 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_FILESYSTEMENTRYTYPE_H
#define JELLYFIN_DTO_FILESYSTEMENTRYTYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class FileSystemEntryTypeClass {
Q_GADGET
public:
enum Value {
File,
Directory,
NetworkComputer,
NetworkShare,
};
Q_ENUM(Value)
private:
explicit FileSystemEntryTypeClass();
};
typedef FileSystemEntryTypeClass::Value FileSystemEntryType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_FILESYSTEMENTRYTYPE_H

View file

@ -0,0 +1,93 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_FONTFILE_H
#define JELLYFIN_DTO_FONTFILE_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class FontFile : public QObject {
Q_OBJECT
public:
explicit FontFile(QObject *parent = nullptr);
static FontFile *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the size.
*/
Q_PROPERTY(qint64 size READ size WRITE setSize NOTIFY sizeChanged)
/**
* @brief Gets or sets the date created.
*/
Q_PROPERTY(QDateTime dateCreated READ dateCreated WRITE setDateCreated NOTIFY dateCreatedChanged)
/**
* @brief Gets or sets the date modified.
*/
Q_PROPERTY(QDateTime dateModified READ dateModified WRITE setDateModified NOTIFY dateModifiedChanged)
QString name() const;
void setName(QString newName);
qint64 size() const;
void setSize(qint64 newSize);
QDateTime dateCreated() const;
void setDateCreated(QDateTime newDateCreated);
QDateTime dateModified() const;
void setDateModified(QDateTime newDateModified);
signals:
void nameChanged(QString newName);
void sizeChanged(qint64 newSize);
void dateCreatedChanged(QDateTime newDateCreated);
void dateModifiedChanged(QDateTime newDateModified);
protected:
QString m_name;
qint64 m_size;
QDateTime m_dateCreated;
QDateTime m_dateModified;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_FONTFILE_H

View file

@ -0,0 +1,55 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_FORGOTPASSWORDACTION_H
#define JELLYFIN_DTO_FORGOTPASSWORDACTION_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ForgotPasswordActionClass {
Q_GADGET
public:
enum Value {
ContactAdmin,
PinCode,
InNetworkRequired,
};
Q_ENUM(Value)
private:
explicit ForgotPasswordActionClass();
};
typedef ForgotPasswordActionClass::Value ForgotPasswordAction;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_FORGOTPASSWORDACTION_H

View file

@ -0,0 +1,65 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_FORGOTPASSWORDDTO_H
#define JELLYFIN_DTO_FORGOTPASSWORDDTO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class ForgotPasswordDto : public QObject {
Q_OBJECT
public:
explicit ForgotPasswordDto(QObject *parent = nullptr);
static ForgotPasswordDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the entered username to have its password reset.
*/
Q_PROPERTY(QString enteredUsername READ enteredUsername WRITE setEnteredUsername NOTIFY enteredUsernameChanged)
QString enteredUsername() const;
void setEnteredUsername(QString newEnteredUsername);
signals:
void enteredUsernameChanged(QString newEnteredUsername);
protected:
QString m_enteredUsername;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_FORGOTPASSWORDDTO_H

View file

@ -0,0 +1,83 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_FORGOTPASSWORDRESULT_H
#define JELLYFIN_DTO_FORGOTPASSWORDRESULT_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/forgotpasswordaction.h"
namespace Jellyfin {
namespace DTO {
class ForgotPasswordResult : public QObject {
Q_OBJECT
public:
explicit ForgotPasswordResult(QObject *parent = nullptr);
static ForgotPasswordResult *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(ForgotPasswordAction action READ action WRITE setAction NOTIFY actionChanged)
/**
* @brief Gets or sets the pin file.
*/
Q_PROPERTY(QString pinFile READ pinFile WRITE setPinFile NOTIFY pinFileChanged)
/**
* @brief Gets or sets the pin expiration date.
*/
Q_PROPERTY(QDateTime pinExpirationDate READ pinExpirationDate WRITE setPinExpirationDate NOTIFY pinExpirationDateChanged)
ForgotPasswordAction action() const;
void setAction(ForgotPasswordAction newAction);
QString pinFile() const;
void setPinFile(QString newPinFile);
QDateTime pinExpirationDate() const;
void setPinExpirationDate(QDateTime newPinExpirationDate);
signals:
void actionChanged(ForgotPasswordAction newAction);
void pinFileChanged(QString newPinFile);
void pinExpirationDateChanged(QDateTime newPinExpirationDate);
protected:
ForgotPasswordAction m_action;
QString m_pinFile;
QDateTime m_pinExpirationDate;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_FORGOTPASSWORDRESULT_H

View file

@ -0,0 +1,76 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GENERALCOMMAND_H
#define JELLYFIN_DTO_GENERALCOMMAND_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/generalcommandtype.h"
namespace Jellyfin {
namespace DTO {
class GeneralCommand : public QObject {
Q_OBJECT
public:
explicit GeneralCommand(QObject *parent = nullptr);
static GeneralCommand *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(GeneralCommandType name READ name WRITE setName NOTIFY nameChanged)
Q_PROPERTY(QString controllingUserId READ controllingUserId WRITE setControllingUserId NOTIFY controllingUserIdChanged)
Q_PROPERTY(QJsonObject arguments READ arguments WRITE setArguments NOTIFY argumentsChanged)
GeneralCommandType name() const;
void setName(GeneralCommandType newName);
QString controllingUserId() const;
void setControllingUserId(QString newControllingUserId);
QJsonObject arguments() const;
void setArguments(QJsonObject newArguments);
signals:
void nameChanged(GeneralCommandType newName);
void controllingUserIdChanged(QString newControllingUserId);
void argumentsChanged(QJsonObject newArguments);
protected:
GeneralCommandType m_name;
QString m_controllingUserId;
QJsonObject m_arguments;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GENERALCOMMAND_H

View file

@ -0,0 +1,93 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GENERALCOMMANDTYPE_H
#define JELLYFIN_DTO_GENERALCOMMANDTYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class GeneralCommandTypeClass {
Q_GADGET
public:
enum Value {
MoveUp,
MoveDown,
MoveLeft,
MoveRight,
PageUp,
PageDown,
PreviousLetter,
NextLetter,
ToggleOsd,
ToggleContextMenu,
Select,
Back,
TakeScreenshot,
SendKey,
SendString,
GoHome,
GoToSettings,
VolumeUp,
VolumeDown,
Mute,
Unmute,
ToggleMute,
SetVolume,
SetAudioStreamIndex,
SetSubtitleStreamIndex,
ToggleFullscreen,
DisplayContent,
GoToSearch,
DisplayMessage,
SetRepeatMode,
ChannelUp,
ChannelDown,
Guide,
ToggleStats,
PlayMediaSource,
PlayTrailers,
SetShuffleQueue,
PlayState,
PlayNext,
ToggleOsdMenu,
Play,
};
Q_ENUM(Value)
private:
explicit GeneralCommandTypeClass();
};
typedef GeneralCommandTypeClass::Value GeneralCommandType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GENERALCOMMANDTYPE_H

View file

@ -0,0 +1,326 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GETPROGRAMSDTO_H
#define JELLYFIN_DTO_GETPROGRAMSDTO_H
#include <QDateTime>
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
#include "JellyfinQt/DTO/imagetype.h"
#include "JellyfinQt/DTO/itemfields.h"
namespace Jellyfin {
namespace DTO {
class GetProgramsDto : public QObject {
Q_OBJECT
public:
explicit GetProgramsDto(QObject *parent = nullptr);
static GetProgramsDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the channels to return guide information for.
*/
Q_PROPERTY(QStringList channelIds READ channelIds WRITE setChannelIds NOTIFY channelIdsChanged)
/**
* @brief Gets or sets optional. Filter by user id.
*/
Q_PROPERTY(QString userId READ userId WRITE setUserId NOTIFY userIdChanged)
/**
* @brief Gets or sets the minimum premiere start date.
Optional.
*/
Q_PROPERTY(QDateTime minStartDate READ minStartDate WRITE setMinStartDate NOTIFY minStartDateChanged)
/**
* @brief Gets or sets filter by programs that have completed airing, or not.
Optional.
*/
Q_PROPERTY(bool hasAired READ hasAired WRITE setHasAired NOTIFY hasAiredChanged)
/**
* @brief Gets or sets filter by programs that are currently airing, or not.
Optional.
*/
Q_PROPERTY(bool isAiring READ isAiring WRITE setIsAiring NOTIFY isAiringChanged)
/**
* @brief Gets or sets the maximum premiere start date.
Optional.
*/
Q_PROPERTY(QDateTime maxStartDate READ maxStartDate WRITE setMaxStartDate NOTIFY maxStartDateChanged)
/**
* @brief Gets or sets the minimum premiere end date.
Optional.
*/
Q_PROPERTY(QDateTime minEndDate READ minEndDate WRITE setMinEndDate NOTIFY minEndDateChanged)
/**
* @brief Gets or sets the maximum premiere end date.
Optional.
*/
Q_PROPERTY(QDateTime maxEndDate READ maxEndDate WRITE setMaxEndDate NOTIFY maxEndDateChanged)
/**
* @brief Gets or sets filter for movies.
Optional.
*/
Q_PROPERTY(bool isMovie READ isMovie WRITE setIsMovie NOTIFY isMovieChanged)
/**
* @brief Gets or sets filter for series.
Optional.
*/
Q_PROPERTY(bool isSeries READ isSeries WRITE setIsSeries NOTIFY isSeriesChanged)
/**
* @brief Gets or sets filter for news.
Optional.
*/
Q_PROPERTY(bool isNews READ isNews WRITE setIsNews NOTIFY isNewsChanged)
/**
* @brief Gets or sets filter for kids.
Optional.
*/
Q_PROPERTY(bool isKids READ isKids WRITE setIsKids NOTIFY isKidsChanged)
/**
* @brief Gets or sets filter for sports.
Optional.
*/
Q_PROPERTY(bool isSports READ isSports WRITE setIsSports NOTIFY isSportsChanged)
/**
* @brief Gets or sets the record index to start at. All items with a lower index will be dropped from the results.
Optional.
*/
Q_PROPERTY(qint32 startIndex READ startIndex WRITE setStartIndex NOTIFY startIndexChanged)
/**
* @brief Gets or sets the maximum number of records to return.
Optional.
*/
Q_PROPERTY(qint32 limit READ limit WRITE setLimit NOTIFY limitChanged)
/**
* @brief Gets or sets specify one or more sort orders, comma delimited. Options: Name, StartDate.
Optional.
*/
Q_PROPERTY(QString sortBy READ sortBy WRITE setSortBy NOTIFY sortByChanged)
/**
* @brief Gets or sets sort Order - Ascending,Descending.
*/
Q_PROPERTY(QString sortOrder READ sortOrder WRITE setSortOrder NOTIFY sortOrderChanged)
/**
* @brief Gets or sets the genres to return guide information for.
*/
Q_PROPERTY(QStringList genres READ genres WRITE setGenres NOTIFY genresChanged)
/**
* @brief Gets or sets the genre ids to return guide information for.
*/
Q_PROPERTY(QStringList genreIds READ genreIds WRITE setGenreIds NOTIFY genreIdsChanged)
/**
* @brief Gets or sets include image information in output.
Optional.
*/
Q_PROPERTY(bool enableImages READ enableImages WRITE setEnableImages NOTIFY enableImagesChanged)
/**
* @brief Gets or sets a value indicating whether retrieve total record count.
*/
Q_PROPERTY(bool enableTotalRecordCount READ enableTotalRecordCount WRITE setEnableTotalRecordCount NOTIFY enableTotalRecordCountChanged)
/**
* @brief Gets or sets the max number of images to return, per image type.
Optional.
*/
Q_PROPERTY(qint32 imageTypeLimit READ imageTypeLimit WRITE setImageTypeLimit NOTIFY imageTypeLimitChanged)
/**
* @brief Gets or sets the image types to include in the output.
Optional.
*/
Q_PROPERTY(QList<ImageType> enableImageTypes READ enableImageTypes WRITE setEnableImageTypes NOTIFY enableImageTypesChanged)
/**
* @brief Gets or sets include user data.
Optional.
*/
Q_PROPERTY(bool enableUserData READ enableUserData WRITE setEnableUserData NOTIFY enableUserDataChanged)
/**
* @brief Gets or sets filter by series timer id.
Optional.
*/
Q_PROPERTY(QString seriesTimerId READ seriesTimerId WRITE setSeriesTimerId NOTIFY seriesTimerIdChanged)
/**
* @brief Gets or sets filter by library series id.
Optional.
*/
Q_PROPERTY(QString librarySeriesId READ librarySeriesId WRITE setLibrarySeriesId NOTIFY librarySeriesIdChanged)
/**
* @brief Gets or sets specify additional fields of information to return in the output. This allows multiple, comma delimited. Options: Budget, Chapters, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines.
Optional.
*/
Q_PROPERTY(QList<ItemFields> fields READ fields WRITE setFields NOTIFY fieldsChanged)
QStringList channelIds() const;
void setChannelIds(QStringList newChannelIds);
QString userId() const;
void setUserId(QString newUserId);
QDateTime minStartDate() const;
void setMinStartDate(QDateTime newMinStartDate);
bool hasAired() const;
void setHasAired(bool newHasAired);
bool isAiring() const;
void setIsAiring(bool newIsAiring);
QDateTime maxStartDate() const;
void setMaxStartDate(QDateTime newMaxStartDate);
QDateTime minEndDate() const;
void setMinEndDate(QDateTime newMinEndDate);
QDateTime maxEndDate() const;
void setMaxEndDate(QDateTime newMaxEndDate);
bool isMovie() const;
void setIsMovie(bool newIsMovie);
bool isSeries() const;
void setIsSeries(bool newIsSeries);
bool isNews() const;
void setIsNews(bool newIsNews);
bool isKids() const;
void setIsKids(bool newIsKids);
bool isSports() const;
void setIsSports(bool newIsSports);
qint32 startIndex() const;
void setStartIndex(qint32 newStartIndex);
qint32 limit() const;
void setLimit(qint32 newLimit);
QString sortBy() const;
void setSortBy(QString newSortBy);
QString sortOrder() const;
void setSortOrder(QString newSortOrder);
QStringList genres() const;
void setGenres(QStringList newGenres);
QStringList genreIds() const;
void setGenreIds(QStringList newGenreIds);
bool enableImages() const;
void setEnableImages(bool newEnableImages);
bool enableTotalRecordCount() const;
void setEnableTotalRecordCount(bool newEnableTotalRecordCount);
qint32 imageTypeLimit() const;
void setImageTypeLimit(qint32 newImageTypeLimit);
QList<ImageType> enableImageTypes() const;
void setEnableImageTypes(QList<ImageType> newEnableImageTypes);
bool enableUserData() const;
void setEnableUserData(bool newEnableUserData);
QString seriesTimerId() const;
void setSeriesTimerId(QString newSeriesTimerId);
QString librarySeriesId() const;
void setLibrarySeriesId(QString newLibrarySeriesId);
QList<ItemFields> fields() const;
void setFields(QList<ItemFields> newFields);
signals:
void channelIdsChanged(QStringList newChannelIds);
void userIdChanged(QString newUserId);
void minStartDateChanged(QDateTime newMinStartDate);
void hasAiredChanged(bool newHasAired);
void isAiringChanged(bool newIsAiring);
void maxStartDateChanged(QDateTime newMaxStartDate);
void minEndDateChanged(QDateTime newMinEndDate);
void maxEndDateChanged(QDateTime newMaxEndDate);
void isMovieChanged(bool newIsMovie);
void isSeriesChanged(bool newIsSeries);
void isNewsChanged(bool newIsNews);
void isKidsChanged(bool newIsKids);
void isSportsChanged(bool newIsSports);
void startIndexChanged(qint32 newStartIndex);
void limitChanged(qint32 newLimit);
void sortByChanged(QString newSortBy);
void sortOrderChanged(QString newSortOrder);
void genresChanged(QStringList newGenres);
void genreIdsChanged(QStringList newGenreIds);
void enableImagesChanged(bool newEnableImages);
void enableTotalRecordCountChanged(bool newEnableTotalRecordCount);
void imageTypeLimitChanged(qint32 newImageTypeLimit);
void enableImageTypesChanged(QList<ImageType> newEnableImageTypes);
void enableUserDataChanged(bool newEnableUserData);
void seriesTimerIdChanged(QString newSeriesTimerId);
void librarySeriesIdChanged(QString newLibrarySeriesId);
void fieldsChanged(QList<ItemFields> newFields);
protected:
QStringList m_channelIds;
QString m_userId;
QDateTime m_minStartDate;
bool m_hasAired;
bool m_isAiring;
QDateTime m_maxStartDate;
QDateTime m_minEndDate;
QDateTime m_maxEndDate;
bool m_isMovie;
bool m_isSeries;
bool m_isNews;
bool m_isKids;
bool m_isSports;
qint32 m_startIndex;
qint32 m_limit;
QString m_sortBy;
QString m_sortOrder;
QStringList m_genres;
QStringList m_genreIds;
bool m_enableImages;
bool m_enableTotalRecordCount;
qint32 m_imageTypeLimit;
QList<ImageType> m_enableImageTypes;
bool m_enableUserData;
QString m_seriesTimerId;
QString m_librarySeriesId;
QList<ItemFields> m_fields;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GETPROGRAMSDTO_H

View file

@ -0,0 +1,103 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GROUPINFODTO_H
#define JELLYFIN_DTO_GROUPINFODTO_H
#include <QDateTime>
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
#include "JellyfinQt/DTO/groupstatetype.h"
namespace Jellyfin {
namespace DTO {
class GroupInfoDto : public QObject {
Q_OBJECT
public:
explicit GroupInfoDto(QObject *parent = nullptr);
static GroupInfoDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets the group identifier.
*/
Q_PROPERTY(QString groupId READ groupId WRITE setGroupId NOTIFY groupIdChanged)
/**
* @brief Gets the group name.
*/
Q_PROPERTY(QString groupName READ groupName WRITE setGroupName NOTIFY groupNameChanged)
Q_PROPERTY(GroupStateType state READ state WRITE setState NOTIFY stateChanged)
/**
* @brief Gets the participants.
*/
Q_PROPERTY(QStringList participants READ participants WRITE setParticipants NOTIFY participantsChanged)
/**
* @brief Gets the date when this DTO has been created.
*/
Q_PROPERTY(QDateTime lastUpdatedAt READ lastUpdatedAt WRITE setLastUpdatedAt NOTIFY lastUpdatedAtChanged)
QString groupId() const;
void setGroupId(QString newGroupId);
QString groupName() const;
void setGroupName(QString newGroupName);
GroupStateType state() const;
void setState(GroupStateType newState);
QStringList participants() const;
void setParticipants(QStringList newParticipants);
QDateTime lastUpdatedAt() const;
void setLastUpdatedAt(QDateTime newLastUpdatedAt);
signals:
void groupIdChanged(QString newGroupId);
void groupNameChanged(QString newGroupName);
void stateChanged(GroupStateType newState);
void participantsChanged(QStringList newParticipants);
void lastUpdatedAtChanged(QDateTime newLastUpdatedAt);
protected:
QString m_groupId;
QString m_groupName;
GroupStateType m_state;
QStringList m_participants;
QDateTime m_lastUpdatedAt;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GROUPINFODTO_H

View file

@ -0,0 +1,54 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GROUPQUEUEMODE_H
#define JELLYFIN_DTO_GROUPQUEUEMODE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class GroupQueueModeClass {
Q_GADGET
public:
enum Value {
Queue,
QueueNext,
};
Q_ENUM(Value)
private:
explicit GroupQueueModeClass();
};
typedef GroupQueueModeClass::Value GroupQueueMode;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GROUPQUEUEMODE_H

View file

@ -0,0 +1,55 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GROUPREPEATMODE_H
#define JELLYFIN_DTO_GROUPREPEATMODE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class GroupRepeatModeClass {
Q_GADGET
public:
enum Value {
RepeatOne,
RepeatAll,
RepeatNone,
};
Q_ENUM(Value)
private:
explicit GroupRepeatModeClass();
};
typedef GroupRepeatModeClass::Value GroupRepeatMode;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GROUPREPEATMODE_H

View file

@ -0,0 +1,54 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GROUPSHUFFLEMODE_H
#define JELLYFIN_DTO_GROUPSHUFFLEMODE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class GroupShuffleModeClass {
Q_GADGET
public:
enum Value {
Sorted,
Shuffle,
};
Q_ENUM(Value)
private:
explicit GroupShuffleModeClass();
};
typedef GroupShuffleModeClass::Value GroupShuffleMode;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GROUPSHUFFLEMODE_H

View file

@ -0,0 +1,56 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GROUPSTATETYPE_H
#define JELLYFIN_DTO_GROUPSTATETYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class GroupStateTypeClass {
Q_GADGET
public:
enum Value {
Idle,
Waiting,
Paused,
Playing,
};
Q_ENUM(Value)
private:
explicit GroupStateTypeClass();
};
typedef GroupStateTypeClass::Value GroupStateType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GROUPSTATETYPE_H

View file

@ -0,0 +1,63 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GROUPUPDATETYPE_H
#define JELLYFIN_DTO_GROUPUPDATETYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class GroupUpdateTypeClass {
Q_GADGET
public:
enum Value {
UserJoined,
UserLeft,
GroupJoined,
GroupLeft,
StateUpdate,
PlayQueue,
NotInGroup,
GroupDoesNotExist,
CreateGroupDenied,
JoinGroupDenied,
LibraryAccessDenied,
};
Q_ENUM(Value)
private:
explicit GroupUpdateTypeClass();
};
typedef GroupUpdateTypeClass::Value GroupUpdateType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GROUPUPDATETYPE_H

View file

@ -0,0 +1,74 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_GUIDEINFO_H
#define JELLYFIN_DTO_GUIDEINFO_H
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
namespace Jellyfin {
namespace DTO {
class GuideInfo : public QObject {
Q_OBJECT
public:
explicit GuideInfo(QObject *parent = nullptr);
static GuideInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the start date.
*/
Q_PROPERTY(QDateTime startDate READ startDate WRITE setStartDate NOTIFY startDateChanged)
/**
* @brief Gets or sets the end date.
*/
Q_PROPERTY(QDateTime endDate READ endDate WRITE setEndDate NOTIFY endDateChanged)
QDateTime startDate() const;
void setStartDate(QDateTime newStartDate);
QDateTime endDate() const;
void setEndDate(QDateTime newEndDate);
signals:
void startDateChanged(QDateTime newStartDate);
void endDateChanged(QDateTime newEndDate);
protected:
QDateTime m_startDate;
QDateTime m_endDate;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_GUIDEINFO_H

View file

@ -0,0 +1,55 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_HEADERMATCHTYPE_H
#define JELLYFIN_DTO_HEADERMATCHTYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class HeaderMatchTypeClass {
Q_GADGET
public:
enum Value {
Equals,
Regex,
Substring,
};
Q_ENUM(Value)
private:
explicit HeaderMatchTypeClass();
};
typedef HeaderMatchTypeClass::Value HeaderMatchType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_HEADERMATCHTYPE_H

View file

@ -0,0 +1,76 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_HTTPHEADERINFO_H
#define JELLYFIN_DTO_HTTPHEADERINFO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/headermatchtype.h"
namespace Jellyfin {
namespace DTO {
class HttpHeaderInfo : public QObject {
Q_OBJECT
public:
explicit HttpHeaderInfo(QObject *parent = nullptr);
static HttpHeaderInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
Q_PROPERTY(QString value READ value WRITE setValue NOTIFY valueChanged)
Q_PROPERTY(HeaderMatchType match READ match WRITE setMatch NOTIFY matchChanged)
QString name() const;
void setName(QString newName);
QString value() const;
void setValue(QString newValue);
HeaderMatchType match() const;
void setMatch(HeaderMatchType newMatch);
signals:
void nameChanged(QString newName);
void valueChanged(QString newValue);
void matchChanged(HeaderMatchType newMatch);
protected:
QString m_name;
QString m_value;
HeaderMatchType m_match;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_HTTPHEADERINFO_H

View file

@ -0,0 +1,64 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IGNOREWAITREQUESTDTO_H
#define JELLYFIN_DTO_IGNOREWAITREQUESTDTO_H
#include <QJsonObject>
#include <QObject>
namespace Jellyfin {
namespace DTO {
class IgnoreWaitRequestDto : public QObject {
Q_OBJECT
public:
explicit IgnoreWaitRequestDto(QObject *parent = nullptr);
static IgnoreWaitRequestDto *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets a value indicating whether the client should be ignored.
*/
Q_PROPERTY(bool ignoreWait READ ignoreWait WRITE setIgnoreWait NOTIFY ignoreWaitChanged)
bool ignoreWait() const;
void setIgnoreWait(bool newIgnoreWait);
signals:
void ignoreWaitChanged(bool newIgnoreWait);
protected:
bool m_ignoreWait;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IGNOREWAITREQUESTDTO_H

View file

@ -0,0 +1,101 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IMAGEBYNAMEINFO_H
#define JELLYFIN_DTO_IMAGEBYNAMEINFO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class ImageByNameInfo : public QObject {
Q_OBJECT
public:
explicit ImageByNameInfo(QObject *parent = nullptr);
static ImageByNameInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets or sets the theme.
*/
Q_PROPERTY(QString theme READ theme WRITE setTheme NOTIFY themeChanged)
/**
* @brief Gets or sets the context.
*/
Q_PROPERTY(QString context READ context WRITE setContext NOTIFY contextChanged)
/**
* @brief Gets or sets the length of the file.
*/
Q_PROPERTY(qint64 fileLength READ fileLength WRITE setFileLength NOTIFY fileLengthChanged)
/**
* @brief Gets or sets the format.
*/
Q_PROPERTY(QString format READ format WRITE setFormat NOTIFY formatChanged)
QString name() const;
void setName(QString newName);
QString theme() const;
void setTheme(QString newTheme);
QString context() const;
void setContext(QString newContext);
qint64 fileLength() const;
void setFileLength(qint64 newFileLength);
QString format() const;
void setFormat(QString newFormat);
signals:
void nameChanged(QString newName);
void themeChanged(QString newTheme);
void contextChanged(QString newContext);
void fileLengthChanged(qint64 newFileLength);
void formatChanged(QString newFormat);
protected:
QString m_name;
QString m_theme;
QString m_context;
qint64 m_fileLength;
QString m_format;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IMAGEBYNAMEINFO_H

View file

@ -0,0 +1,57 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IMAGEFORMAT_H
#define JELLYFIN_DTO_IMAGEFORMAT_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ImageFormatClass {
Q_GADGET
public:
enum Value {
Bmp,
Gif,
Jpg,
Png,
Webp,
};
Q_ENUM(Value)
private:
explicit ImageFormatClass();
};
typedef ImageFormatClass::Value ImageFormat;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IMAGEFORMAT_H

View file

@ -0,0 +1,127 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IMAGEINFO_H
#define JELLYFIN_DTO_IMAGEINFO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
#include "JellyfinQt/DTO/imagetype.h"
namespace Jellyfin {
namespace DTO {
class ImageInfo : public QObject {
Q_OBJECT
public:
explicit ImageInfo(QObject *parent = nullptr);
static ImageInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(ImageType imageType READ imageType WRITE setImageType NOTIFY imageTypeChanged)
/**
* @brief Gets or sets the index of the image.
*/
Q_PROPERTY(qint32 imageIndex READ imageIndex WRITE setImageIndex NOTIFY imageIndexChanged)
/**
* @brief Gets or sets the image tag.
*/
Q_PROPERTY(QString imageTag READ imageTag WRITE setImageTag NOTIFY imageTagChanged)
/**
* @brief Gets or sets the path.
*/
Q_PROPERTY(QString path READ path WRITE setPath NOTIFY pathChanged)
/**
* @brief Gets or sets the blurhash.
*/
Q_PROPERTY(QString blurHash READ blurHash WRITE setBlurHash NOTIFY blurHashChanged)
/**
* @brief Gets or sets the height.
*/
Q_PROPERTY(qint32 height READ height WRITE setHeight NOTIFY heightChanged)
/**
* @brief Gets or sets the width.
*/
Q_PROPERTY(qint32 width READ width WRITE setWidth NOTIFY widthChanged)
/**
* @brief Gets or sets the size.
*/
Q_PROPERTY(qint64 size READ size WRITE setSize NOTIFY sizeChanged)
ImageType imageType() const;
void setImageType(ImageType newImageType);
qint32 imageIndex() const;
void setImageIndex(qint32 newImageIndex);
QString imageTag() const;
void setImageTag(QString newImageTag);
QString path() const;
void setPath(QString newPath);
QString blurHash() const;
void setBlurHash(QString newBlurHash);
qint32 height() const;
void setHeight(qint32 newHeight);
qint32 width() const;
void setWidth(qint32 newWidth);
qint64 size() const;
void setSize(qint64 newSize);
signals:
void imageTypeChanged(ImageType newImageType);
void imageIndexChanged(qint32 newImageIndex);
void imageTagChanged(QString newImageTag);
void pathChanged(QString newPath);
void blurHashChanged(QString newBlurHash);
void heightChanged(qint32 newHeight);
void widthChanged(qint32 newWidth);
void sizeChanged(qint64 newSize);
protected:
ImageType m_imageType;
qint32 m_imageIndex;
QString m_imageTag;
QString m_path;
QString m_blurHash;
qint32 m_height;
qint32 m_width;
qint64 m_size;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IMAGEINFO_H

View file

@ -0,0 +1,81 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IMAGEOPTION_H
#define JELLYFIN_DTO_IMAGEOPTION_H
#include <QJsonObject>
#include <QObject>
#include "JellyfinQt/DTO/imagetype.h"
namespace Jellyfin {
namespace DTO {
class ImageOption : public QObject {
Q_OBJECT
public:
explicit ImageOption(QObject *parent = nullptr);
static ImageOption *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
Q_PROPERTY(ImageType type READ type WRITE setType NOTIFY typeChanged)
/**
* @brief Gets or sets the limit.
*/
Q_PROPERTY(qint32 limit READ limit WRITE setLimit NOTIFY limitChanged)
/**
* @brief Gets or sets the minimum width.
*/
Q_PROPERTY(qint32 minWidth READ minWidth WRITE setMinWidth NOTIFY minWidthChanged)
ImageType type() const;
void setType(ImageType newType);
qint32 limit() const;
void setLimit(qint32 newLimit);
qint32 minWidth() const;
void setMinWidth(qint32 newMinWidth);
signals:
void typeChanged(ImageType newType);
void limitChanged(qint32 newLimit);
void minWidthChanged(qint32 newMinWidth);
protected:
ImageType m_type;
qint32 m_limit;
qint32 m_minWidth;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IMAGEOPTION_H

View file

@ -0,0 +1,60 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IMAGEORIENTATION_H
#define JELLYFIN_DTO_IMAGEORIENTATION_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ImageOrientationClass {
Q_GADGET
public:
enum Value {
TopLeft,
TopRight,
BottomRight,
BottomLeft,
LeftTop,
RightTop,
RightBottom,
LeftBottom,
};
Q_ENUM(Value)
private:
explicit ImageOrientationClass();
};
typedef ImageOrientationClass::Value ImageOrientation;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IMAGEORIENTATION_H

View file

@ -0,0 +1,78 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IMAGEPROVIDERINFO_H
#define JELLYFIN_DTO_IMAGEPROVIDERINFO_H
#include <QJsonObject>
#include <QList>
#include <QObject>
#include <QString>
#include <QStringList>
#include "JellyfinQt/DTO/imagetype.h"
namespace Jellyfin {
namespace DTO {
class ImageProviderInfo : public QObject {
Q_OBJECT
public:
explicit ImageProviderInfo(QObject *parent = nullptr);
static ImageProviderInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets the supported image types.
*/
Q_PROPERTY(QList<ImageType> supportedImages READ supportedImages WRITE setSupportedImages NOTIFY supportedImagesChanged)
QString name() const;
void setName(QString newName);
QList<ImageType> supportedImages() const;
void setSupportedImages(QList<ImageType> newSupportedImages);
signals:
void nameChanged(QString newName);
void supportedImagesChanged(QList<ImageType> newSupportedImages);
protected:
QString m_name;
QList<ImageType> m_supportedImages;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IMAGEPROVIDERINFO_H

View file

@ -0,0 +1,54 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IMAGESAVINGCONVENTION_H
#define JELLYFIN_DTO_IMAGESAVINGCONVENTION_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ImageSavingConventionClass {
Q_GADGET
public:
enum Value {
Legacy,
Compatible,
};
Q_ENUM(Value)
private:
explicit ImageSavingConventionClass();
};
typedef ImageSavingConventionClass::Value ImageSavingConvention;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IMAGESAVINGCONVENTION_H

View file

@ -0,0 +1,65 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IMAGETYPE_H
#define JELLYFIN_DTO_IMAGETYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class ImageTypeClass {
Q_GADGET
public:
enum Value {
Primary,
Art,
Backdrop,
Banner,
Logo,
Thumb,
Disc,
Box,
Screenshot,
Menu,
Chapter,
BoxRear,
Profile,
};
Q_ENUM(Value)
private:
explicit ImageTypeClass();
};
typedef ImageTypeClass::Value ImageType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IMAGETYPE_H

View file

@ -0,0 +1,109 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_INSTALLATIONINFO_H
#define JELLYFIN_DTO_INSTALLATIONINFO_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class Version;
class InstallationInfo : public QObject {
Q_OBJECT
public:
explicit InstallationInfo(QObject *parent = nullptr);
static InstallationInfo *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets or sets the Id.
*/
Q_PROPERTY(QString guid READ guid WRITE setGuid NOTIFY guidChanged)
/**
* @brief Gets or sets the name.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
Q_PROPERTY(Version * version READ version WRITE setVersion NOTIFY versionChanged)
/**
* @brief Gets or sets the changelog for this version.
*/
Q_PROPERTY(QString changelog READ changelog WRITE setChangelog NOTIFY changelogChanged)
/**
* @brief Gets or sets the source URL.
*/
Q_PROPERTY(QString sourceUrl READ sourceUrl WRITE setSourceUrl NOTIFY sourceUrlChanged)
/**
* @brief Gets or sets a checksum for the binary.
*/
Q_PROPERTY(QString checksum READ checksum WRITE setChecksum NOTIFY checksumChanged)
QString guid() const;
void setGuid(QString newGuid);
QString name() const;
void setName(QString newName);
Version * version() const;
void setVersion(Version * newVersion);
QString changelog() const;
void setChangelog(QString newChangelog);
QString sourceUrl() const;
void setSourceUrl(QString newSourceUrl);
QString checksum() const;
void setChecksum(QString newChecksum);
signals:
void guidChanged(QString newGuid);
void nameChanged(QString newName);
void versionChanged(Version * newVersion);
void changelogChanged(QString newChangelog);
void sourceUrlChanged(QString newSourceUrl);
void checksumChanged(QString newChecksum);
protected:
QString m_guid;
QString m_name;
Version * m_version = nullptr;
QString m_changelog;
QString m_sourceUrl;
QString m_checksum;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_INSTALLATIONINFO_H

View file

@ -0,0 +1,118 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_IPLUGIN_H
#define JELLYFIN_DTO_IPLUGIN_H
#include <QJsonObject>
#include <QObject>
#include <QString>
namespace Jellyfin {
namespace DTO {
class Version;
class IPlugin : public QObject {
Q_OBJECT
public:
explicit IPlugin(QObject *parent = nullptr);
static IPlugin *fromJSON(QJsonObject source, QObject *parent = nullptr);
void updateFromJSON(QJsonObject source);
QJsonObject toJSON();
/**
* @brief Gets the name of the plugin.
*/
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
/**
* @brief Gets the Description.
*/
Q_PROPERTY(QString description READ description WRITE setDescription NOTIFY descriptionChanged)
/**
* @brief Gets the unique id.
*/
Q_PROPERTY(QString jellyfinId READ jellyfinId WRITE setJellyfinId NOTIFY jellyfinIdChanged)
Q_PROPERTY(Version * version READ version WRITE setVersion NOTIFY versionChanged)
/**
* @brief Gets the path to the assembly file.
*/
Q_PROPERTY(QString assemblyFilePath READ assemblyFilePath WRITE setAssemblyFilePath NOTIFY assemblyFilePathChanged)
/**
* @brief Gets a value indicating whether the plugin can be uninstalled.
*/
Q_PROPERTY(bool canUninstall READ canUninstall WRITE setCanUninstall NOTIFY canUninstallChanged)
/**
* @brief Gets the full path to the data folder, where the plugin can store any miscellaneous files needed.
*/
Q_PROPERTY(QString dataFolderPath READ dataFolderPath WRITE setDataFolderPath NOTIFY dataFolderPathChanged)
QString name() const;
void setName(QString newName);
QString description() const;
void setDescription(QString newDescription);
QString jellyfinId() const;
void setJellyfinId(QString newJellyfinId);
Version * version() const;
void setVersion(Version * newVersion);
QString assemblyFilePath() const;
void setAssemblyFilePath(QString newAssemblyFilePath);
bool canUninstall() const;
void setCanUninstall(bool newCanUninstall);
QString dataFolderPath() const;
void setDataFolderPath(QString newDataFolderPath);
signals:
void nameChanged(QString newName);
void descriptionChanged(QString newDescription);
void jellyfinIdChanged(QString newJellyfinId);
void versionChanged(Version * newVersion);
void assemblyFilePathChanged(QString newAssemblyFilePath);
void canUninstallChanged(bool newCanUninstall);
void dataFolderPathChanged(QString newDataFolderPath);
protected:
QString m_name;
QString m_description;
QString m_jellyfinId;
Version * m_version = nullptr;
QString m_assemblyFilePath;
bool m_canUninstall;
QString m_dataFolderPath;
};
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_IPLUGIN_H

View file

@ -0,0 +1,54 @@
/*
* Sailfin: a Jellyfin client written using Qt
* Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
* OVERWRITTEN AT SOME POINT!
*
* If there is a bug in this file, please fix the code generator used to generate this file found in
* core/openapigenerator.d.
*
* This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
* file with a newer file if needed instead of manually updating the files.
*/
#ifndef JELLYFIN_DTO_ISOTYPE_H
#define JELLYFIN_DTO_ISOTYPE_H
#include <QObject>
namespace Jellyfin {
namespace DTO {
class IsoTypeClass {
Q_GADGET
public:
enum Value {
Dvd,
BluRay,
};
Q_ENUM(Value)
private:
explicit IsoTypeClass();
};
typedef IsoTypeClass::Value IsoType;
} // NS Jellyfin
} // NS DTO
#endif // JELLYFIN_DTO_ISOTYPE_H

Some files were not shown because too many files have changed in this diff Show more