mirror of
https://gitlab.com/kelteseth/ScreenPlay.git
synced 2024-11-22 02:32:29 +01:00
Merge branch 'dev' of https://gitlab.com/aimber/ScreenPlay into dev
This commit is contained in:
commit
8ca6418923
45
.gitlab/issue_templates/Bug.md
Normal file
45
.gitlab/issue_templates/Bug.md
Normal file
@ -0,0 +1,45 @@
|
||||
<!---
|
||||
Please read this!
|
||||
|
||||
Before opening a new issue, make sure to search for keywords in the issues
|
||||
filtered by the "Regression" or "Bug" label:
|
||||
|
||||
https://gitlab.com/aimber/ScreenPlay/issues?label_name%5B%5D=Bug
|
||||
https://gitlab.com/aimber/ScreenPlay/issues?label_name%5B%5D=Regression
|
||||
|
||||
|
||||
Verify the issue you're about to submit isn't a duplicate.
|
||||
--->
|
||||
|
||||
### Summary
|
||||
|
||||
(Summarize the bug encountered concisely)
|
||||
|
||||
### Steps to reproduce
|
||||
|
||||
(How one can reproduce the issue - this is very important)
|
||||
|
||||
### Example Project
|
||||
|
||||
(If possible, please create an example project here on GitLab.com that exhibits the problematic behaviour, and link to it here in the bug report)
|
||||
|
||||
(If you are using an older version of ScreenPlay, this will also determine whether the bug has been fixed in a more recent version)
|
||||
|
||||
### What is the current *bug* behavior?
|
||||
|
||||
(What actually happens)
|
||||
|
||||
### What is the expected *correct* behavior?
|
||||
|
||||
(What you should see instead)
|
||||
|
||||
### Relevant logs and/or screenshots
|
||||
|
||||
(Paste any relevant logs - please use code blocks (```) to format console output,
|
||||
logs, and code as it's very hard to read otherwise.)
|
||||
|
||||
### Possible fixes
|
||||
|
||||
(If you can, link to the line of code that might be responsible for the problem)
|
||||
|
||||
/label ~Bug
|
@ -1,8 +1,7 @@
|
||||
TEMPLATE = subdirs
|
||||
SUBDIRS = \
|
||||
SUBDIRS += \
|
||||
ScreenPlay/ScreenPlay.pro \
|
||||
ScreenPlaySDK/ScreenPlaySDK.pro \
|
||||
ScreenPlaySysInfo/ScreenPlaySysInfo.pro \
|
||||
ScreenPlayWindow/ScreenPlayWindow.pro \
|
||||
ScreenPlayWidget/ScreenPlayWidget.pro \
|
||||
ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt-qt-sdk.pro \
|
||||
@ -10,3 +9,8 @@ SUBDIRS = \
|
||||
ScreenPlayWindow.depends = ScreenPlaySDK
|
||||
ScreenPlayWidget.depends = ScreenPlaySDK
|
||||
|
||||
|
||||
win32 {
|
||||
SUBDIRS += \
|
||||
ScreenPlaySysInfo/ScreenPlaySysInfo.pro \
|
||||
}
|
||||
|
@ -79,8 +79,6 @@
|
||||
<file>qml/Community/Feedback.qml</file>
|
||||
<file>qml/Controls/Slider.qml</file>
|
||||
<file>qml/Create/Create.qml</file>
|
||||
<file>qml/Create/CreateImport.qml</file>
|
||||
<file>qml/Create/CreateImportStatus.qml</file>
|
||||
<file>qml/Create/CreateNew.qml</file>
|
||||
<file>qml/Create/CreateUpload.qml</file>
|
||||
<file>qml/Create/CreateWallpaper.qml</file>
|
||||
@ -115,16 +113,17 @@
|
||||
<file>settings.json</file>
|
||||
<file>translations/ScreenPlay_de.qm</file>
|
||||
<file>translations/ScreenPlay_en.qm</file>
|
||||
<file>qml/Create/Wizards/CreateWallpaper/NextButton.qml</file>
|
||||
<file>qml/Screen/Screen.qml</file>
|
||||
<file>assets/icons/icon_screen.svg</file>
|
||||
<file>qml/Background.qml</file>
|
||||
<file>qml/Community/XMLNewsfeed.qml</file>
|
||||
<file>qml/Workshop/WorkshopAvailableTest.qml</file>
|
||||
<file>qml/Workshop/WorkshopLoader.qml</file>
|
||||
<file>qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImport.qml</file>
|
||||
<file>qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImportConvert.qml</file>
|
||||
<file>qml/Create/Wizards/CreateWallpaper/CreateWallpaperSuccess.qml</file>
|
||||
<file>qml/Create/Wizards/CreateWallpaper/CreateWallpaperError.qml</file>
|
||||
<file>qml/Create/Wizards/CreateWallpaper/CreateWallpaperResult.qml</file>
|
||||
<file>qml/Common/TagSelector.qml</file>
|
||||
<file>qml/Common/Tag.qml</file>
|
||||
<file>assets/icons/icon_close.svg</file>
|
||||
<file>qml/Common/ImageSelector.qml</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
@ -10,6 +10,7 @@ TARGETPATH = ScreenPlay
|
||||
ICON = favicon.ico
|
||||
|
||||
SOURCES += main.cpp \
|
||||
src/createimportvideo.cpp \
|
||||
src/installedlistmodel.cpp \
|
||||
src/monitorlistmodel.cpp \
|
||||
src/settings.cpp \
|
||||
@ -30,6 +31,7 @@ TRANSLATIONS = translations/ScreenPlay_en.ts \
|
||||
translations/ScreenPlay_de.ts
|
||||
|
||||
HEADERS += \
|
||||
src/createimportvideo.h \
|
||||
src/installedlistmodel.h \
|
||||
src/monitorlistmodel.h \
|
||||
src/settings.h \
|
||||
|
1
ScreenPlay/assets/icons/icon_close.svg
Normal file
1
ScreenPlay/assets/icons/icon_close.svg
Normal file
@ -0,0 +1 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;"><rect x="0" y="0" width="24" height="24" style="fill:none;"/><path id="close" d="M22,4.014l-2.014,-2.014l-7.986,7.986l-7.986,-7.986l-2.014,2.014l7.986,7.986l-7.986,7.986l2.014,2.014l7.986,-7.986l7.986,7.986l2.014,-2.014l-7.986,-7.986l7.986,-7.986Z" style="fill:#bebebe;fill-rule:nonzero;"/></svg>
|
After Width: | Height: | Size: 742 B |
26
ScreenPlay/docs/config.qdocconf
Normal file
26
ScreenPlay/docs/config.qdocconf
Normal file
@ -0,0 +1,26 @@
|
||||
# where your source files are (here it's just the root directory)
|
||||
sourcedirs = ../
|
||||
# where your header files are (probably in the same place as source)
|
||||
headerdirs = ../
|
||||
# where you store images that are used in your qdoc comments
|
||||
imagedirs = ./images
|
||||
|
||||
# what kind of sources should be processed
|
||||
sources.fileextensions = "*.cpp *.qml"
|
||||
# what kind of headers should be processed
|
||||
headers.fileextensions = "*.h"
|
||||
|
||||
# where to put the result
|
||||
outputdir = ./html
|
||||
# what format to use for generating documentation
|
||||
outputformats = HTML
|
||||
|
||||
# the string that actually includes the CSS into documentation file
|
||||
|
||||
HTML.headerstyles += "<link rel=\"stylesheet\" type=\"text/css\" href=\"../css/style.css\"/>"
|
||||
HTML.headerstyles += "<link rel=\"stylesheet\" type=\"text/css\" href=\"../css/bootstrap.min.css\"/>\n"
|
||||
# what to append to every page after header
|
||||
HTML.postheader += "<div class=\"container-fullwidth nav\"><div class=\"container navWrapper\"><span class=\"logo\">ScreenPlay Code Docs </span><span class=\"navHome\"><a href=\"../index.html\">Home</a></span></div></div>"
|
||||
HTML.postheader += "<div class=\"wrapper container\">\n"
|
||||
# what to append to every page after the content
|
||||
HTML.footer = "<hr/><p class=\"footer center\">Copyright Aimber GBR</p>\n</div>"
|
7
ScreenPlay/docs/css/bootstrap.min.css
vendored
Normal file
7
ScreenPlay/docs/css/bootstrap.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
51
ScreenPlay/docs/css/style.css
Normal file
51
ScreenPlay/docs/css/style.css
Normal file
@ -0,0 +1,51 @@
|
||||
body {
|
||||
|
||||
background-color: #f3f3f4 !important;;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
color: #404244;
|
||||
|
||||
}
|
||||
|
||||
a {
|
||||
color:#41cd52 !important;
|
||||
}
|
||||
|
||||
.nav {
|
||||
height: 50px;
|
||||
background:#41cd52;
|
||||
color: white;
|
||||
box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14);
|
||||
}
|
||||
|
||||
.navHome a{
|
||||
color: white !important;
|
||||
font-size: 1.2rem;
|
||||
line-height: 2rem;
|
||||
}
|
||||
|
||||
.navWrapper {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
font-size: 1.5rem;
|
||||
line-height: 2.8rem;
|
||||
}
|
||||
|
||||
.wrapper {
|
||||
margin: 1rem;
|
||||
padding: 3rem !important;
|
||||
border-radius: 3px;
|
||||
background-color:white;
|
||||
box-shadow: 0 3px 3px 0 rgba(0,0,0,0.14);
|
||||
|
||||
}
|
||||
|
||||
.toc {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.logo {
|
||||
font-size: 1.5rem;
|
||||
padding-bottom: 4px;
|
||||
}
|
876
ScreenPlay/docs/html/.index
Normal file
876
ScreenPlay/docs/html/.index
Normal file
@ -0,0 +1,876 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QDOCINDEX>
|
||||
<INDEX url="" title="" version="" project="">
|
||||
<namespace name="" status="active" access="public" documented="false">
|
||||
<qmlclass name="main" qml-module-name="main" href="qml-main.html" status="internal" access="private" location="main.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/example/main.qml" lineno="5" title="main" fulltitle="main" subtitle=""/>
|
||||
<qmlclass name="SendSuccessful" qml-module-name="SendSuccessful" href="qml-sendsuccessful.html" status="internal" access="private" location="SendSuccessful.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/SendSuccessful.qml" lineno="6" title="SendSuccessful" fulltitle="SendSuccessful" subtitle="">
|
||||
<qmlproperty name="stomtShortLink" fullname="SendSuccessful::stomtShortLink" href="qml-sendsuccessful.html#stomtShortLink-prop" status="internal" access="private" location="SendSuccessful.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/SendSuccessful.qml" lineno="20" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="StomtWidget" qml-module-name="StomtWidget" href="qml-stomtwidget.html" status="internal" access="private" location="StomtWidget.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/StomtWidget.qml" lineno="4" title="StomtWidget" fulltitle="StomtWidget" subtitle="">
|
||||
<function name="resetStomt" fullname="StomtWidget::resetStomt" href="qml-stomtwidget.html#resetStomt-method" status="internal" access="private" location="StomtWidget.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/StomtWidget.qml" lineno="30" meta="qmlmethod"/>
|
||||
<qmlproperty name="targetID" fullname="StomtWidget::targetID" href="qml-stomtwidget.html#targetID-prop" status="internal" access="private" location="StomtWidget.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/StomtWidget.qml" lineno="9" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="targetImageUrl" fullname="StomtWidget::targetImageUrl" href="qml-stomtwidget.html#targetImageUrl-prop" status="internal" access="private" location="StomtWidget.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/StomtWidget.qml" lineno="10" type="url" attached="false" writable="true"/>
|
||||
<qmlproperty name="appKey" fullname="StomtWidget::appKey" href="qml-stomtwidget.html#appKey-prop" status="internal" access="private" location="StomtWidget.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/StomtWidget.qml" lineno="8" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="targetDisplayName" fullname="StomtWidget::targetDisplayName" href="qml-stomtwidget.html#targetDisplayName-prop" status="internal" access="private" location="StomtWidget.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/StomtWidget.qml" lineno="11" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="useTestServer" fullname="StomtWidget::useTestServer" href="qml-stomtwidget.html#useTestServer-prop" status="internal" access="private" location="StomtWidget.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/StomtWidget.qml" lineno="12" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="SubmitBtn" qml-module-name="SubmitBtn" href="qml-submitbtn.html" status="internal" access="private" location="SubmitBtn.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/SubmitBtn.qml" lineno="5" title="SubmitBtn" fulltitle="SubmitBtn" subtitle="">
|
||||
<function name="sendStomt" fullname="SubmitBtn::sendStomt" href="qml-submitbtn.html#sendStomt-signal" status="internal" access="private" location="SubmitBtn.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/SubmitBtn.qml" lineno="14" meta="qmlsignal"/>
|
||||
<qmlproperty name="isLoading" fullname="SubmitBtn::isLoading" href="qml-submitbtn.html#isLoading-prop" status="internal" access="private" location="SubmitBtn.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/SubmitBtn.qml" lineno="15" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<class name="CreateImportVideo" href="createimportvideo.html" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="18">
|
||||
<function name="CreateImportVideo" fullname="CreateImportVideo::CreateImportVideo" href="createimportvideo.html#CreateImportVideo" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="22" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="CreateImportVideo(int videoPath, int exportPath, int *parent)">
|
||||
<parameter type="int" name="videoPath" default=""/>
|
||||
<parameter type="int" name="exportPath" default=""/>
|
||||
<parameter type="int *" name="parent" default="nullptr"/>
|
||||
</function>
|
||||
<function name="canceled" fullname="CreateImportVideo::canceled" href="createimportvideo.html#canceled" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="68" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void canceled()"/>
|
||||
<function name="createWallpaperGifPreview" fullname="CreateImportVideo::createWallpaperGifPreview" href="createimportvideo.html#createWallpaperGifPreview" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="76" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="bool" signature="bool createWallpaperGifPreview()"/>
|
||||
<function name="createWallpaperImagePreview" fullname="CreateImportVideo::createWallpaperImagePreview" href="createimportvideo.html#createWallpaperImagePreview" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="77" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="bool" signature="bool createWallpaperImagePreview()"/>
|
||||
<function name="createWallpaperInfo" fullname="CreateImportVideo::createWallpaperInfo" href="createimportvideo.html#createWallpaperInfo" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="74" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="bool" signature="bool createWallpaperInfo()"/>
|
||||
<function name="createWallpaperVideoPreview" fullname="CreateImportVideo::createWallpaperVideoPreview" href="createimportvideo.html#createWallpaperVideoPreview" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="75" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="bool" signature="bool createWallpaperVideoPreview()"/>
|
||||
<function name="extractWallpaperAudio" fullname="CreateImportVideo::extractWallpaperAudio" href="createimportvideo.html#extractWallpaperAudio" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="78" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="bool" signature="bool extractWallpaperAudio()"/>
|
||||
<function name="finished" fullname="CreateImportVideo::finished" href="createimportvideo.html#finished" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="67" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void finished()"/>
|
||||
<function name="processOutput" fullname="CreateImportVideo::processOutput" href="createimportvideo.html#processOutput" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="66" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void processOutput(int text)">
|
||||
<parameter type="int" name="text" default=""/>
|
||||
</function>
|
||||
<function name="requestInterruption" fullname="CreateImportVideo::requestInterruption" href="createimportvideo.html#requestInterruption" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="72" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void requestInterruption()"/>
|
||||
<variable name="m_exportPath" fullname="CreateImportVideo::m_exportPath" href="createimportvideo.html#m_exportPath-var" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="60" type="int" static="false"/>
|
||||
<enum name="State" fullname="CreateImportVideo::State" href="createimportvideo.html#State-enum" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="24">
|
||||
<value name="Idle" value="0"/>
|
||||
<value name="Started" value="1"/>
|
||||
<value name="AnalyseVideo" value="2"/>
|
||||
<value name="AnalyseVideoFinished" value="3"/>
|
||||
<value name="AnalyseVideoError" value="4"/>
|
||||
<value name="ConvertingPreviewVideo" value="5"/>
|
||||
<value name="ConvertingPreviewVideoFinished" value="6"/>
|
||||
<value name="ConvertingPreviewVideoError" value="7"/>
|
||||
<value name="ConvertingPreviewGif" value="8"/>
|
||||
<value name="ConvertingPreviewGifFinished" value="9"/>
|
||||
<value name="ConvertingPreviewGifError" value="10"/>
|
||||
<value name="ConvertingPreviewImage" value="11"/>
|
||||
<value name="ConvertingPreviewImageFinished" value="12"/>
|
||||
<value name="ConvertingPreviewImageError" value="13"/>
|
||||
<value name="ConvertingAudio" value="14"/>
|
||||
<value name="ConvertingAudioFinished" value="15"/>
|
||||
<value name="ConvertingAudioError" value="16"/>
|
||||
<value name="CopyFiles" value="17"/>
|
||||
<value name="CopyFilesFinished" value="18"/>
|
||||
<value name="CopyFilesError" value="19"/>
|
||||
<value name="CreateProjectFile" value="20"/>
|
||||
<value name="CreateProjectFileFinished" value="21"/>
|
||||
<value name="CreateProjectFileError" value="22"/>
|
||||
<value name="AbortCleanupError" value="23"/>
|
||||
<value name="CreateTmpFolderError" value="24"/>
|
||||
<value name="Finished" value="25"/>
|
||||
</enum>
|
||||
<variable name="m_framerate" fullname="CreateImportVideo::m_framerate" href="createimportvideo.html#m_framerate-var" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="62" type="int" static="false"/>
|
||||
<variable name="m_length" fullname="CreateImportVideo::m_length" href="createimportvideo.html#m_length-var" status="internal" access="private" location="createimportvideo.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/createimportvideo.h" lineno="61" type="int" static="false"/>
|
||||
</class>
|
||||
<qmlclass name="WishLikeSwitcher" qml-module-name="WishLikeSwitcher" href="qml-wishlikeswitcher.html" status="internal" access="private" location="WishLikeSwitcher.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/WishLikeSwitcher.qml" lineno="3" title="WishLikeSwitcher" fulltitle="WishLikeSwitcher" subtitle="">
|
||||
<qmlproperty name="isPositive" fullname="WishLikeSwitcher::isPositive" href="qml-wishlikeswitcher.html#isPositive-prop" status="internal" access="private" location="WishLikeSwitcher.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/WishLikeSwitcher.qml" lineno="8" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Community" qml-module-name="Community" href="qml-community.html" status="internal" access="private" location="Community.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Community/Community.qml" lineno="9" title="Community" fulltitle="Community" subtitle=""/>
|
||||
<class name="StomtPlugin" href="stomtplugin.html" status="internal" access="private" location="stomt_plugin.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt_plugin.h" lineno="6">
|
||||
<function name="Q_PLUGIN_METADATA" fullname="StomtPlugin::Q_PLUGIN_METADATA" href="stomtplugin.html#Q_PLUGIN_METADATA" status="internal" access="private" location="stomt_plugin.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt_plugin.h" lineno="9" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int Q_PLUGIN_METADATA(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
</class>
|
||||
<qmlclass name="Feedback" qml-module-name="Feedback" href="qml-feedback.html" status="internal" access="private" location="Feedback.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Community/Feedback.qml" lineno="4" title="Feedback" fulltitle="Feedback" subtitle=""/>
|
||||
<qmlclass name="Slider" qml-module-name="Slider" href="qml-slider.html" status="internal" access="private" location="Slider.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Controls/Slider.qml" lineno="4" title="Slider" fulltitle="Slider" subtitle="">
|
||||
<qmlproperty name="headline" fullname="Slider::headline" href="qml-slider.html#headline-prop" status="internal" access="private" location="Slider.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Controls/Slider.qml" lineno="13" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="iconSource" fullname="Slider::iconSource" href="qml-slider.html#iconSource-prop" status="internal" access="private" location="Slider.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Controls/Slider.qml" lineno="14" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="value" fullname="Slider::value" href="qml-slider.html#value-prop" status="internal" access="private" location="Slider.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Controls/Slider.qml" lineno="15" type="alias" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Tag" qml-module-name="Tag" href="qml-tag.html" status="internal" access="private" location="Tag.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Controls/Tag.qml" lineno="3" title="Tag" fulltitle="Tag" subtitle=""/>
|
||||
<qmlclass name="TagField" qml-module-name="TagField" href="qml-tagfield.html" status="internal" access="private" location="TagField.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Controls/TagField.qml" lineno="3" title="TagField" fulltitle="TagField" subtitle=""/>
|
||||
<qmlclass name="XMLNewsfeed" qml-module-name="XMLNewsfeed" href="qml-xmlnewsfeed.html" status="internal" access="private" location="XMLNewsfeed.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Community/XMLNewsfeed.qml" lineno="8" title="XMLNewsfeed" fulltitle="XMLNewsfeed" subtitle=""/>
|
||||
<class name="Stomt" href="stomt.html" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="19">
|
||||
<function name="Q_DISABLE_COPY" fullname="Stomt::Q_DISABLE_COPY" href="stomt.html#Q_DISABLE_COPY" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="21" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int Q_DISABLE_COPY(Stomt )">
|
||||
<parameter type="Stomt" name="" default=""/>
|
||||
</function>
|
||||
<function name="Q_PROPERTY" fullname="Stomt::Q_PROPERTY" href="stomt.html#Q_PROPERTY" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="27" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int Q_PROPERTY(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="appIDChanged" fullname="Stomt::appIDChanged" href="stomt.html#appIDChanged" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="51" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void appIDChanged(int appID)">
|
||||
<parameter type="int" name="appID" default=""/>
|
||||
</function>
|
||||
<function name="getTargetID" fullname="Stomt::getTargetID" href="stomt.html#getTargetID" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="59" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int getTargetID()"/>
|
||||
<function name="sendStomt" fullname="Stomt::sendStomt" href="stomt.html#sendStomt" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="57" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void sendStomt(int text, bool isPositive)">
|
||||
<parameter type="int" name="text" default=""/>
|
||||
<parameter type="bool" name="isPositive" default=""/>
|
||||
</function>
|
||||
<function name="sendStomtResponse" fullname="Stomt::sendStomtResponse" href="stomt.html#sendStomtResponse" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="58" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void sendStomtResponse(int *reply)">
|
||||
<parameter type="int *" name="reply" default=""/>
|
||||
</function>
|
||||
<function name="setAppID" fullname="Stomt::setAppID" href="stomt.html#setAppID" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="73" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setAppID(int appID)">
|
||||
<parameter type="int" name="appID" default=""/>
|
||||
</function>
|
||||
<function name="setTargetID" fullname="Stomt::setTargetID" href="stomt.html#setTargetID" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="62" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setTargetID(int targetID)">
|
||||
<parameter type="int" name="targetID" default=""/>
|
||||
</function>
|
||||
<function name="setUseTestServer" fullname="Stomt::setUseTestServer" href="stomt.html#setUseTestServer" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="89" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setUseTestServer(bool useTestServer)">
|
||||
<parameter type="bool" name="useTestServer" default=""/>
|
||||
</function>
|
||||
<function name="setup" fullname="Stomt::setup" href="stomt.html#setup" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="83" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setup()"/>
|
||||
<function name="targetIDChanged" fullname="Stomt::targetIDChanged" href="stomt.html#targetIDChanged" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="50" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void targetIDChanged(int targetID)">
|
||||
<parameter type="int" name="targetID" default=""/>
|
||||
</function>
|
||||
<function name="useTestServerChanged" fullname="Stomt::useTestServerChanged" href="stomt.html#useTestServerChanged" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="52" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void useTestServerChanged(bool useTestServer)">
|
||||
<parameter type="bool" name="useTestServer" default=""/>
|
||||
</function>
|
||||
<function name="~Stomt" fullname="Stomt::~Stomt" href="stomt.html#dtor.Stomt" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="25" meta="destructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="~Stomt()"/>
|
||||
<variable name="m_targetID" fullname="Stomt::m_targetID" href="stomt.html#m_targetID-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="106" type="int" static="false"/>
|
||||
<variable name="m_appIDSet" fullname="Stomt::m_appIDSet" href="stomt.html#m_appIDSet-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="107" type="bool" static="false"/>
|
||||
<variable name="m_useTestServer" fullname="Stomt::m_useTestServer" href="stomt.html#m_useTestServer-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="109" type="bool" static="false"/>
|
||||
<variable name="m_targetIDSet" fullname="Stomt::m_targetIDSet" href="stomt.html#m_targetIDSet-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="108" type="bool" static="false"/>
|
||||
<variable name="m_appID" fullname="Stomt::m_appID" href="stomt.html#m_appID-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="106" type="int" static="false"/>
|
||||
<variable name="m_netManager" fullname="Stomt::m_netManager" href="stomt.html#m_netManager-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="101" type="int *" static="false"/>
|
||||
<variable name="m_accessToken" fullname="Stomt::m_accessToken" href="stomt.html#m_accessToken-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="106" type="int" static="false"/>
|
||||
<variable name="m_netRequest" fullname="Stomt::m_netRequest" href="stomt.html#m_netRequest-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="102" type="int" static="false"/>
|
||||
<variable name="m_profileImageUrl" fullname="Stomt::m_profileImageUrl" href="stomt.html#m_profileImageUrl-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="105" type="int" static="false"/>
|
||||
<variable name="m_baseUrlStomt" fullname="Stomt::m_baseUrlStomt" href="stomt.html#m_baseUrlStomt-var" status="internal" access="private" location="stomt.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/stomt.h" lineno="104" type="int" static="false"/>
|
||||
</class>
|
||||
<qmlclass name="SettingsExpander" qml-module-name="SettingsExpander" href="qml-settingsexpander.html" status="internal" access="private" location="SettingsExpander.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsExpander.qml" lineno="6" title="SettingsExpander" fulltitle="SettingsExpander" subtitle="">
|
||||
<function name="toggle" fullname="SettingsExpander::toggle" href="qml-settingsexpander.html#toggle-method" status="internal" access="private" location="SettingsExpander.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsExpander.qml" lineno="38" meta="qmlmethod"/>
|
||||
<qmlproperty name="text" fullname="SettingsExpander::text" href="qml-settingsexpander.html#text-prop" status="internal" access="private" location="SettingsExpander.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsExpander.qml" lineno="11" type="alias" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Settings" qml-module-name="Settings" href="qml-settings.html" status="internal" access="private" location="Settings.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/Settings.qml" lineno="8" title="Settings" fulltitle="Settings" subtitle=""/>
|
||||
<qmlclass name="SettingBool" qml-module-name="SettingBool" href="qml-settingbool.html" status="internal" access="private" location="SettingBool.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingBool.qml" lineno="5" title="SettingBool" fulltitle="SettingBool" subtitle="">
|
||||
<function name="checkboxChanged" fullname="SettingBool::checkboxChanged" href="qml-settingbool.html#checkboxChanged-signal" status="internal" access="private" location="SettingBool.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingBool.qml" lineno="20" meta="qmlsignal"/>
|
||||
<qmlproperty name="isChecked" fullname="SettingBool::isChecked" href="qml-settingbool.html#isChecked-prop" status="internal" access="private" location="SettingBool.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingBool.qml" lineno="9" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="headline" fullname="SettingBool::headline" href="qml-settingbool.html#headline-prop" status="internal" access="private" location="SettingBool.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingBool.qml" lineno="7" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="description" fullname="SettingBool::description" href="qml-settingbool.html#description-prop" status="internal" access="private" location="SettingBool.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingBool.qml" lineno="8" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="available" fullname="SettingBool::available" href="qml-settingbool.html#available-prop" status="internal" access="private" location="SettingBool.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingBool.qml" lineno="10" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Screen" qml-module-name="Screen" href="qml-screen.html" status="internal" access="private" location="Screen.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Screen/Screen.qml" lineno="7" title="Screen" fulltitle="Screen" subtitle=""/>
|
||||
<qmlclass name="NavigationWallpaperConfiguration" qml-module-name="NavigationWallpaperConfiguration" href="qml-navigationwallpaperconfiguration.html" status="internal" access="private" location="NavigationWallpaperConfiguration.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/NavigationWallpaperConfiguration.qml" lineno="5" title="NavigationWallpaperConfiguration" fulltitle="NavigationWallpaperConfiguration" subtitle=""/>
|
||||
<qmlclass name="Window" qml-module-name="Window" href="qml-window.html" status="internal" access="private" location="Window.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Widgets/Window.qml" lineno="7" title="Window" fulltitle="Window" subtitle=""/>
|
||||
<qmlclass name="SettingsHorizontalSeperator" qml-module-name="SettingsHorizontalSeperator" href="qml-settingshorizontalseperator.html" status="internal" access="private" location="SettingsHorizontalSeperator.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsHorizontalSeperator.qml" lineno="3" title="SettingsHorizontalSeperator" fulltitle="SettingsHorizontalSeperator" subtitle="">
|
||||
<qmlproperty name="customWidth" fullname="SettingsHorizontalSeperator::customWidth" href="qml-settingshorizontalseperator.html#customWidth-prop" status="internal" access="private" location="SettingsHorizontalSeperator.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsHorizontalSeperator.qml" lineno="4" type="real" attached="false" writable="true"/>
|
||||
<qmlproperty name="customColor" fullname="SettingsHorizontalSeperator::customColor" href="qml-settingshorizontalseperator.html#customColor-prop" status="internal" access="private" location="SettingsHorizontalSeperator.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsHorizontalSeperator.qml" lineno="6" type="color" attached="false" writable="true"/>
|
||||
<qmlproperty name="customHeight" fullname="SettingsHorizontalSeperator::customHeight" href="qml-settingshorizontalseperator.html#customHeight-prop" status="internal" access="private" location="SettingsHorizontalSeperator.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsHorizontalSeperator.qml" lineno="5" type="real" attached="false" writable="true"/>
|
||||
<qmlproperty name="customMargin" fullname="SettingsHorizontalSeperator::customMargin" href="qml-settingshorizontalseperator.html#customMargin-prop" status="internal" access="private" location="SettingsHorizontalSeperator.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsHorizontalSeperator.qml" lineno="7" type="real" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="SettingsComboBox" qml-module-name="SettingsComboBox" href="qml-settingscombobox.html" status="internal" access="private" location="SettingsComboBox.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsComboBox.qml" lineno="5" title="SettingsComboBox" fulltitle="SettingsComboBox" subtitle="">
|
||||
<function name="checkboxChanged" fullname="SettingsComboBox::checkboxChanged" href="qml-settingscombobox.html#checkboxChanged-signal" status="internal" access="private" location="SettingsComboBox.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsComboBox.qml" lineno="18" meta="qmlsignal"/>
|
||||
<qmlproperty name="headline" fullname="SettingsComboBox::headline" href="qml-settingscombobox.html#headline-prop" status="internal" access="private" location="SettingsComboBox.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsComboBox.qml" lineno="7" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="comboBoxListModel" fullname="SettingsComboBox::comboBoxListModel" href="qml-settingscombobox.html#comboBoxListModel-prop" status="internal" access="private" location="SettingsComboBox.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsComboBox.qml" lineno="12" type="ListModel" attached="false" writable="true"/>
|
||||
<qmlproperty name="isChecked" fullname="SettingsComboBox::isChecked" href="qml-settingscombobox.html#isChecked-prop" status="internal" access="private" location="SettingsComboBox.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsComboBox.qml" lineno="10" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="description" fullname="SettingsComboBox::description" href="qml-settingscombobox.html#description-prop" status="internal" access="private" location="SettingsComboBox.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsComboBox.qml" lineno="8" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="currentIndex" fullname="SettingsComboBox::currentIndex" href="qml-settingscombobox.html#currentIndex-prop" status="internal" access="private" location="SettingsComboBox.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsComboBox.qml" lineno="9" type="int" attached="false" writable="true"/>
|
||||
<qmlproperty name="enabled" fullname="SettingsComboBox::enabled" href="qml-settingscombobox.html#enabled-prop" status="internal" access="private" location="SettingsComboBox.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsComboBox.qml" lineno="11" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Workshop" qml-module-name="Workshop" href="qml-workshop.html" status="internal" access="private" location="Workshop.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Workshop/Workshop.qml" lineno="7" title="Workshop" fulltitle="Workshop" subtitle=""/>
|
||||
<qmlclass name="WorkshopAvailableTest" qml-module-name="WorkshopAvailableTest" href="qml-workshopavailabletest.html" status="internal" access="private" location="WorkshopAvailableTest.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Workshop/WorkshopAvailableTest.qml" lineno="4" title="WorkshopAvailableTest" fulltitle="WorkshopAvailableTest" subtitle=""/>
|
||||
<qmlclass name="WorkshopLoader" qml-module-name="WorkshopLoader" href="qml-workshoploader.html" status="internal" access="private" location="WorkshopLoader.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Workshop/WorkshopLoader.qml" lineno="3" title="WorkshopLoader" fulltitle="WorkshopLoader" subtitle="">
|
||||
<qmlproperty name="available" fullname="WorkshopLoader::available" href="qml-workshoploader.html#available-prop" status="internal" access="private" location="WorkshopLoader.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Workshop/WorkshopLoader.qml" lineno="6" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="SettingsButton" qml-module-name="SettingsButton" href="qml-settingsbutton.html" status="internal" access="private" location="SettingsButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsButton.qml" lineno="6" title="SettingsButton" fulltitle="SettingsButton" subtitle="">
|
||||
<function name="buttonPressed" fullname="SettingsButton::buttonPressed" href="qml-settingsbutton.html#buttonPressed-signal" status="internal" access="private" location="SettingsButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsButton.qml" lineno="25" meta="qmlsignal"/>
|
||||
<qmlproperty name="buttonText" fullname="SettingsButton::buttonText" href="qml-settingsbutton.html#buttonText-prop" status="internal" access="private" location="SettingsButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsButton.qml" lineno="11" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="headline" fullname="SettingsButton::headline" href="qml-settingsbutton.html#headline-prop" status="internal" access="private" location="SettingsButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsButton.qml" lineno="9" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="available" fullname="SettingsButton::available" href="qml-settingsbutton.html#available-prop" status="internal" access="private" location="SettingsButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsButton.qml" lineno="14" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="description" fullname="SettingsButton::description" href="qml-settingsbutton.html#description-prop" status="internal" access="private" location="SettingsButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsButton.qml" lineno="10" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="enabled" fullname="SettingsButton::enabled" href="qml-settingsbutton.html#enabled-prop" status="internal" access="private" location="SettingsButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsButton.qml" lineno="13" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="isChecked" fullname="SettingsButton::isChecked" href="qml-settingsbutton.html#isChecked-prop" status="internal" access="private" location="SettingsButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsButton.qml" lineno="12" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="SettingsHeader" qml-module-name="SettingsHeader" href="qml-settingsheader.html" status="internal" access="private" location="SettingsHeader.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsHeader.qml" lineno="4" title="SettingsHeader" fulltitle="SettingsHeader" subtitle="">
|
||||
<qmlproperty name="background" fullname="SettingsHeader::background" href="qml-settingsheader.html#background-prop" status="internal" access="private" location="SettingsHeader.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsHeader.qml" lineno="8" type="color" attached="false" writable="true"/>
|
||||
<qmlproperty name="image" fullname="SettingsHeader::image" href="qml-settingsheader.html#image-prop" status="internal" access="private" location="SettingsHeader.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsHeader.qml" lineno="10" type="url" attached="false" writable="true"/>
|
||||
<qmlproperty name="text" fullname="SettingsHeader::text" href="qml-settingsheader.html#text-prop" status="internal" access="private" location="SettingsHeader.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Settings/SettingsHeader.qml" lineno="9" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="NavigationItem" qml-module-name="NavigationItem" href="qml-navigationitem.html" status="internal" access="private" location="NavigationItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/NavigationItem.qml" lineno="4" title="NavigationItem" fulltitle="NavigationItem" subtitle="">
|
||||
<function name="pageClicked" fullname="NavigationItem::pageClicked" href="qml-navigationitem.html#pageClicked-signal" status="internal" access="private" location="NavigationItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/NavigationItem.qml" lineno="28" meta="qmlsignal"/>
|
||||
<function name="setActive" fullname="NavigationItem::setActive" href="qml-navigationitem.html#setActive-method" status="internal" access="private" location="NavigationItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/NavigationItem.qml" lineno="30" meta="qmlmethod"/>
|
||||
<qmlproperty name="enabled" fullname="NavigationItem::enabled" href="qml-navigationitem.html#enabled-prop" status="internal" access="private" location="NavigationItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/NavigationItem.qml" lineno="12" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="iconSource" fullname="NavigationItem::iconSource" href="qml-navigationitem.html#iconSource-prop" status="internal" access="private" location="NavigationItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/NavigationItem.qml" lineno="26" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="name" fullname="NavigationItem::name" href="qml-navigationitem.html#name-prop" status="internal" access="private" location="NavigationItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/NavigationItem.qml" lineno="11" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Target" qml-module-name="Target" href="qml-target.html" status="internal" access="private" location="Target.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/Target.qml" lineno="4" title="Target" fulltitle="Target" subtitle="">
|
||||
<qmlproperty name="useTestServer" fullname="Target::useTestServer" href="qml-target.html#useTestServer-prop" status="internal" access="private" location="Target.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/Target.qml" lineno="10" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="targetDisplayName" fullname="Target::targetDisplayName" href="qml-target.html#targetDisplayName-prop" status="internal" access="private" location="Target.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/Target.qml" lineno="9" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="targetImageUrl" fullname="Target::targetImageUrl" href="qml-target.html#targetImageUrl-prop" status="internal" access="private" location="Target.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/ThirdParty/stomt-qt-sdk/sdk/qml/Target.qml" lineno="8" type="url" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="CreateWallpaperResult" qml-module-name="CreateWallpaperResult" href="qml-createwallpaperresult.html" status="internal" access="private" location="CreateWallpaperResult.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperResult.qml" lineno="9" title="CreateWallpaperResult" fulltitle="CreateWallpaperResult" subtitle=""/>
|
||||
<qmlclass name="FileDropperSingleFile" qml-module-name="FileDropperSingleFile" href="qml-filedroppersinglefile.html" status="internal" access="private" location="FileDropperSingleFile.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/FileDropperSingleFile.qml" lineno="4" title="FileDropperSingleFile" fulltitle="FileDropperSingleFile" subtitle="">
|
||||
<function name="reset" fullname="FileDropperSingleFile::reset" href="qml-filedroppersinglefile.html#reset-method" status="internal" access="private" location="FileDropperSingleFile.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/FileDropperSingleFile.qml" lineno="21" meta="qmlmethod"/>
|
||||
<qmlproperty name="background" fullname="FileDropperSingleFile::background" href="qml-filedroppersinglefile.html#background-prop" status="internal" access="private" location="FileDropperSingleFile.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/FileDropperSingleFile.qml" lineno="7" type="color" attached="false" writable="true"/>
|
||||
<qmlproperty name="descriptionTitle" fullname="FileDropperSingleFile::descriptionTitle" href="qml-filedroppersinglefile.html#descriptionTitle-prop" status="internal" access="private" location="FileDropperSingleFile.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/FileDropperSingleFile.qml" lineno="8" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="imagePath" fullname="FileDropperSingleFile::imagePath" href="qml-filedroppersinglefile.html#imagePath-prop" status="internal" access="private" location="FileDropperSingleFile.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/FileDropperSingleFile.qml" lineno="9" type="url" attached="false" writable="true"/>
|
||||
<qmlproperty name="isVideo" fullname="FileDropperSingleFile::isVideo" href="qml-filedroppersinglefile.html#isVideo-prop" status="internal" access="private" location="FileDropperSingleFile.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/FileDropperSingleFile.qml" lineno="11" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="externalFilePath" fullname="FileDropperSingleFile::externalFilePath" href="qml-filedroppersinglefile.html#externalFilePath-prop" status="internal" access="private" location="FileDropperSingleFile.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/FileDropperSingleFile.qml" lineno="12" type="url" attached="false" writable="true"/>
|
||||
<qmlproperty name="helpText" fullname="FileDropperSingleFile::helpText" href="qml-filedroppersinglefile.html#helpText-prop" status="internal" access="private" location="FileDropperSingleFile.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/FileDropperSingleFile.qml" lineno="13" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="ScreenPlayItem" qml-module-name="ScreenPlayItem" href="qml-screenplayitem.html" status="internal" access="private" location="ScreenPlayItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItem.qml" lineno="6" title="ScreenPlayItem" fulltitle="ScreenPlayItem" subtitle="">
|
||||
<function name="itemClicked" fullname="ScreenPlayItem::itemClicked" href="qml-screenplayitem.html#itemClicked-signal" status="internal" access="private" location="ScreenPlayItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItem.qml" lineno="20" meta="qmlsignal"/>
|
||||
<qmlproperty name="itemIndex" fullname="ScreenPlayItem::itemIndex" href="qml-screenplayitem.html#itemIndex-prop" status="internal" access="private" location="ScreenPlayItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItem.qml" lineno="18" type="int" attached="false" writable="true"/>
|
||||
<qmlproperty name="screenId" fullname="ScreenPlayItem::screenId" href="qml-screenplayitem.html#screenId-prop" status="internal" access="private" location="ScreenPlayItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItem.qml" lineno="19" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="customTitle" fullname="ScreenPlayItem::customTitle" href="qml-screenplayitem.html#customTitle-prop" status="internal" access="private" location="ScreenPlayItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItem.qml" lineno="13" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="absoluteStoragePath" fullname="ScreenPlayItem::absoluteStoragePath" href="qml-screenplayitem.html#absoluteStoragePath-prop" status="internal" access="private" location="ScreenPlayItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItem.qml" lineno="14" type="url" attached="false" writable="true"/>
|
||||
<qmlproperty name="workshopID" fullname="ScreenPlayItem::workshopID" href="qml-screenplayitem.html#workshopID-prop" status="internal" access="private" location="ScreenPlayItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItem.qml" lineno="17" type="int" attached="false" writable="true"/>
|
||||
<qmlproperty name="hasMenuOpen" fullname="ScreenPlayItem::hasMenuOpen" href="qml-screenplayitem.html#hasMenuOpen-prop" status="internal" access="private" location="ScreenPlayItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItem.qml" lineno="16" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="type" fullname="ScreenPlayItem::type" href="qml-screenplayitem.html#type-prop" status="internal" access="private" location="ScreenPlayItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItem.qml" lineno="15" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="CreateWidgetButton" qml-module-name="CreateWidgetButton" href="qml-createwidgetbutton.html" status="internal" access="private" location="CreateWidgetButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWidgetButton.qml" lineno="4" title="CreateWidgetButton" fulltitle="CreateWidgetButton" subtitle="">
|
||||
<function name="clicked" fullname="CreateWidgetButton::clicked" href="qml-createwidgetbutton.html#clicked-signal" status="internal" access="private" location="CreateWidgetButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWidgetButton.qml" lineno="17" meta="qmlsignal"/>
|
||||
<qmlproperty name="imgSource" fullname="CreateWidgetButton::imgSource" href="qml-createwidgetbutton.html#imgSource-prop" status="internal" access="private" location="CreateWidgetButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWidgetButton.qml" lineno="19" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="buttonActive" fullname="CreateWidgetButton::buttonActive" href="qml-createwidgetbutton.html#buttonActive-prop" status="internal" access="private" location="CreateWidgetButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWidgetButton.qml" lineno="18" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="animOffset" fullname="CreateWidgetButton::animOffset" href="qml-createwidgetbutton.html#animOffset-prop" status="internal" access="private" location="CreateWidgetButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWidgetButton.qml" lineno="14" type="int" attached="false" writable="true"/>
|
||||
<qmlproperty name="text" fullname="CreateWidgetButton::text" href="qml-createwidgetbutton.html#text-prop" status="internal" access="private" location="CreateWidgetButton.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWidgetButton.qml" lineno="16" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="CreateNew" qml-module-name="CreateNew" href="qml-createnew.html" status="internal" access="private" location="CreateNew.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateNew.qml" lineno="9" title="CreateNew" fulltitle="CreateNew" subtitle=""/>
|
||||
<qmlclass name="InstalledUserHelper" qml-module-name="InstalledUserHelper" href="qml-installeduserhelper.html" status="internal" access="private" location="InstalledUserHelper.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/InstalledUserHelper.qml" lineno="6" title="InstalledUserHelper" fulltitle="InstalledUserHelper" subtitle="">
|
||||
<function name="helperButtonPressed" fullname="InstalledUserHelper::helperButtonPressed" href="qml-installeduserhelper.html#helperButtonPressed-signal" status="internal" access="private" location="InstalledUserHelper.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/InstalledUserHelper.qml" lineno="8" meta="qmlsignal"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="CreateWidget" qml-module-name="CreateWidget" href="qml-createwidget.html" status="internal" access="private" location="CreateWidget.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWidget.qml" lineno="5" title="CreateWidget" fulltitle="CreateWidget" subtitle="">
|
||||
<function name="buttonPressed" fullname="CreateWidget::buttonPressed" href="qml-createwidget.html#buttonPressed-signal" status="internal" access="private" location="CreateWidget.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWidget.qml" lineno="11" meta="qmlsignal"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Sidebar" qml-module-name="Sidebar" href="qml-sidebar.html" status="internal" access="private" location="Sidebar.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Sidebar.qml" lineno="9" title="Sidebar" fulltitle="Sidebar" subtitle="">
|
||||
<qmlproperty name="navHeight" fullname="Sidebar::navHeight" href="qml-sidebar.html#navHeight-prop" status="internal" access="private" location="Sidebar.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Sidebar.qml" lineno="14" type="real" attached="false" writable="true"/>
|
||||
<qmlproperty name="type" fullname="Sidebar::type" href="qml-sidebar.html#type-prop" status="internal" access="private" location="Sidebar.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Sidebar.qml" lineno="15" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="activeScreen" fullname="Sidebar::activeScreen" href="qml-sidebar.html#activeScreen-prop" status="internal" access="private" location="Sidebar.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Sidebar.qml" lineno="16" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Monitors" qml-module-name="Monitors" href="qml-monitors.html" status="internal" access="private" location="Monitors.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Monitors.qml" lineno="9" title="Monitors" fulltitle="Monitors" subtitle="">
|
||||
<qmlproperty name="activeMonitorName" fullname="Monitors::activeMonitorName" href="qml-monitors.html#activeMonitorName-prop" status="internal" access="private" location="Monitors.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Monitors.qml" lineno="14" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="activeMonitorIndex" fullname="Monitors::activeMonitorIndex" href="qml-monitors.html#activeMonitorIndex-prop" status="internal" access="private" location="Monitors.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Monitors.qml" lineno="15" type="int" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="CreateWallpaperVideoImportConvert" qml-module-name="CreateWallpaperVideoImportConvert" href="qml-createwallpapervideoimportconvert.html" status="internal" access="private" location="CreateWallpaperVideoImportConvert.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImportConvert.qml" lineno="12" title="CreateWallpaperVideoImportConvert" fulltitle="CreateWallpaperVideoImportConvert" subtitle="">
|
||||
<function name="checkCanSave" fullname="CreateWallpaperVideoImportConvert::checkCanSave" href="qml-createwallpapervideoimportconvert.html#checkCanSave-method" status="internal" access="private" location="CreateWallpaperVideoImportConvert.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImportConvert.qml" lineno="21" meta="qmlmethod"/>
|
||||
<function name="save" fullname="CreateWallpaperVideoImportConvert::save" href="qml-createwallpapervideoimportconvert.html#save-signal" status="internal" access="private" location="CreateWallpaperVideoImportConvert.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImportConvert.qml" lineno="19" meta="qmlsignal"/>
|
||||
<qmlproperty name="canSave" fullname="CreateWallpaperVideoImportConvert::canSave" href="qml-createwallpapervideoimportconvert.html#canSave-prop" status="internal" access="private" location="CreateWallpaperVideoImportConvert.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImportConvert.qml" lineno="16" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="filePath" fullname="CreateWallpaperVideoImportConvert::filePath" href="qml-createwallpapervideoimportconvert.html#filePath-prop" status="internal" access="private" location="CreateWallpaperVideoImportConvert.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImportConvert.qml" lineno="17" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="conversionFinishedSuccessful" fullname="CreateWallpaperVideoImportConvert::conversionFinishedSuccessful" href="qml-createwallpapervideoimportconvert.html#conversionFinishedSuccessful-prop" status="internal" access="private" location="CreateWallpaperVideoImportConvert.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImportConvert.qml" lineno="15" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="FileDropper" qml-module-name="FileDropper" href="qml-filedropper.html" status="internal" access="private" location="FileDropper.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/FileDropper.qml" lineno="5" title="FileDropper" fulltitle="FileDropper" subtitle=""/>
|
||||
<qmlclass name="Installed" qml-module-name="Installed" href="qml-installed.html" status="internal" access="private" location="Installed.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Installed.qml" lineno="6" title="Installed" fulltitle="Installed" subtitle="">
|
||||
<function name="onPageChanged" fullname="Installed::onPageChanged" href="qml-installed.html#onPageChanged-method" status="internal" access="private" location="Installed.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Installed.qml" lineno="183" meta="qmlmethod"/>
|
||||
<function name="setNavigationItem" fullname="Installed::setNavigationItem" href="qml-installed.html#setNavigationItem-signal" status="internal" access="private" location="Installed.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Installed.qml" lineno="11" meta="qmlsignal"/>
|
||||
<function name="setSidebarActive" fullname="Installed::setSidebarActive" href="qml-installed.html#setSidebarActive-signal" status="internal" access="private" location="Installed.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Installed.qml" lineno="12" meta="qmlsignal"/>
|
||||
<function name="setSidebaractiveItem" fullname="Installed::setSidebaractiveItem" href="qml-installed.html#setSidebaractiveItem-signal" status="internal" access="private" location="Installed.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Installed.qml" lineno="10" meta="qmlsignal"/>
|
||||
<qmlproperty name="enabled" fullname="Installed::enabled" href="qml-installed.html#enabled-prop" status="internal" access="private" location="Installed.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Installed.qml" lineno="15" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="refresh" fullname="Installed::refresh" href="qml-installed.html#refresh-prop" status="internal" access="private" location="Installed.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/Installed.qml" lineno="14" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="CreateWallpaperWizard" qml-module-name="CreateWallpaperWizard" href="qml-createwallpaperwizard.html" status="internal" access="private" location="CreateWallpaperWizard.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperWizard.qml" lineno="10" title="CreateWallpaperWizard" fulltitle="CreateWallpaperWizard" subtitle="">
|
||||
<qmlproperty name="canNext" fullname="CreateWallpaperWizard::canNext" href="qml-createwallpaperwizard.html#canNext-prop" status="internal" access="private" location="CreateWallpaperWizard.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperWizard.qml" lineno="16" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="filePath" fullname="CreateWallpaperWizard::filePath" href="qml-createwallpaperwizard.html#filePath-prop" status="internal" access="private" location="CreateWallpaperWizard.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Wizards/CreateWallpaper/CreateWallpaperWizard.qml" lineno="15" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="CreateUpload" qml-module-name="CreateUpload" href="qml-createupload.html" status="internal" access="private" location="CreateUpload.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateUpload.qml" lineno="11" title="CreateUpload" fulltitle="CreateUpload" subtitle="">
|
||||
<qmlproperty name="videoFile" fullname="CreateUpload::videoFile" href="qml-createupload.html#videoFile-prop" status="internal" access="private" location="CreateUpload.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateUpload.qml" lineno="18" type="url" attached="false" writable="true"/>
|
||||
<qmlproperty name="projectFile" fullname="CreateUpload::projectFile" href="qml-createupload.html#projectFile-prop" status="internal" access="private" location="CreateUpload.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateUpload.qml" lineno="19" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="jsonProjectFile" fullname="CreateUpload::jsonProjectFile" href="qml-createupload.html#jsonProjectFile-prop" status="internal" access="private" location="CreateUpload.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateUpload.qml" lineno="20" type="var" attached="false" writable="true"/>
|
||||
<qmlproperty name="isVideoPlaying" fullname="CreateUpload::isVideoPlaying" href="qml-createupload.html#isVideoPlaying-prop" status="internal" access="private" location="CreateUpload.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateUpload.qml" lineno="17" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="MonitorSelection" qml-module-name="MonitorSelection" href="qml-monitorselection.html" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="4" title="MonitorSelection" fulltitle="MonitorSelection" subtitle="">
|
||||
<function name="requestProjectSettings" fullname="MonitorSelection::requestProjectSettings" href="qml-monitorselection.html#requestProjectSettings-signal" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="21" meta="qmlsignal"/>
|
||||
<function name="resize" fullname="MonitorSelection::resize" href="qml-monitorselection.html#resize-method" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="60" meta="qmlmethod"/>
|
||||
<function name="setActiveMonitorIndex" fullname="MonitorSelection::setActiveMonitorIndex" href="qml-monitorselection.html#setActiveMonitorIndex-method" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="24" meta="qmlmethod"/>
|
||||
<qmlproperty name="fontSize" fullname="MonitorSelection::fontSize" href="qml-monitorselection.html#fontSize-prop" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="18" type="int" attached="false" writable="true"/>
|
||||
<qmlproperty name="cornerRadius" fullname="MonitorSelection::cornerRadius" href="qml-monitorselection.html#cornerRadius-prop" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="13" type="real" attached="false" writable="true"/>
|
||||
<qmlproperty name="availableWidth" fullname="MonitorSelection::availableWidth" href="qml-monitorselection.html#availableWidth-prop" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="15" type="real" attached="false" writable="true"/>
|
||||
<qmlproperty name="activeMonitorIndex" fullname="MonitorSelection::activeMonitorIndex" href="qml-monitorselection.html#activeMonitorIndex-prop" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="17" type="int" attached="false" writable="true"/>
|
||||
<qmlproperty name="background" fullname="MonitorSelection::background" href="qml-monitorselection.html#background-prop" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="12" type="color" attached="false" writable="true"/>
|
||||
<qmlproperty name="availableHeight" fullname="MonitorSelection::availableHeight" href="qml-monitorselection.html#availableHeight-prop" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="16" type="real" attached="false" writable="true"/>
|
||||
<qmlproperty name="activeMonitorID" fullname="MonitorSelection::activeMonitorID" href="qml-monitorselection.html#activeMonitorID-prop" status="internal" access="private" location="MonitorSelection.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelection.qml" lineno="19" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="MonitorsProjectSettingItem" qml-module-name="MonitorsProjectSettingItem" href="qml-monitorsprojectsettingitem.html" status="internal" access="private" location="MonitorsProjectSettingItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorsProjectSettingItem.qml" lineno="7" title="MonitorsProjectSettingItem" fulltitle="MonitorsProjectSettingItem" subtitle="">
|
||||
<qmlproperty name="selectedMonitor" fullname="MonitorsProjectSettingItem::selectedMonitor" href="qml-monitorsprojectsettingitem.html#selectedMonitor-prop" status="internal" access="private" location="MonitorsProjectSettingItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorsProjectSettingItem.qml" lineno="13" type="int" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Navigation" qml-module-name="Navigation" href="qml-navigation.html" status="internal" access="private" location="Navigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Navigation.qml" lineno="8" title="Navigation" fulltitle="Navigation" subtitle="">
|
||||
<function name="changePage" fullname="Navigation::changePage" href="qml-navigation.html#changePage-signal" status="internal" access="private" location="Navigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Navigation.qml" lineno="15" meta="qmlsignal"/>
|
||||
<function name="onPageChanged" fullname="Navigation::onPageChanged" href="qml-navigation.html#onPageChanged-method" status="internal" access="private" location="Navigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Navigation.qml" lineno="36" meta="qmlmethod"/>
|
||||
<function name="setActive" fullname="Navigation::setActive" href="qml-navigation.html#setActive-method" status="internal" access="private" location="Navigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Navigation.qml" lineno="27" meta="qmlmethod"/>
|
||||
<qmlproperty name="navArray" fullname="Navigation::navArray" href="qml-navigation.html#navArray-prop" status="internal" access="private" location="Navigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Navigation.qml" lineno="17" type="var" attached="false" writable="true"/>
|
||||
<qmlproperty name="navActive" fullname="Navigation::navActive" href="qml-navigation.html#navActive-prop" status="internal" access="private" location="Navigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Navigation.qml" lineno="18" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="InstalledNavigation" qml-module-name="InstalledNavigation" href="qml-installednavigation.html" status="internal" access="private" location="InstalledNavigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/InstalledNavigation.qml" lineno="4" title="InstalledNavigation" fulltitle="InstalledNavigation" subtitle="">
|
||||
<function name="pageClicked" fullname="InstalledNavigation::pageClicked" href="qml-installednavigation.html#pageClicked-signal" status="internal" access="private" location="InstalledNavigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/InstalledNavigation.qml" lineno="20" meta="qmlsignal"/>
|
||||
<function name="setActive" fullname="InstalledNavigation::setActive" href="qml-installednavigation.html#setActive-method" status="internal" access="private" location="InstalledNavigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/InstalledNavigation.qml" lineno="22" meta="qmlmethod"/>
|
||||
<qmlproperty name="iconSource" fullname="InstalledNavigation::iconSource" href="qml-installednavigation.html#iconSource-prop" status="internal" access="private" location="InstalledNavigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/InstalledNavigation.qml" lineno="18" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="name" fullname="InstalledNavigation::name" href="qml-installednavigation.html#name-prop" status="internal" access="private" location="InstalledNavigation.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/InstalledNavigation.qml" lineno="11" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Create" qml-module-name="Create" href="qml-create.html" status="internal" access="private" location="Create.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Create.qml" lineno="11" title="Create" fulltitle="Create" subtitle="">
|
||||
<qmlproperty name="activeFolder" fullname="Create::activeFolder" href="qml-create.html#activeFolder-prop" status="internal" access="private" location="Create.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Create.qml" lineno="19" type="url" attached="false" writable="true"/>
|
||||
<qmlproperty name="activeVideoFile" fullname="Create::activeVideoFile" href="qml-create.html#activeVideoFile-prop" status="internal" access="private" location="Create.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/Create.qml" lineno="18" type="url" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="ScreenPlayItemImage" qml-module-name="ScreenPlayItemImage" href="qml-screenplayitemimage.html" status="internal" access="private" location="ScreenPlayItemImage.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItemImage.qml" lineno="3" title="ScreenPlayItemImage" fulltitle="ScreenPlayItemImage" subtitle="">
|
||||
<function name="enter" fullname="ScreenPlayItemImage::enter" href="qml-screenplayitemimage.html#enter-method" status="internal" access="private" location="ScreenPlayItemImage.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItemImage.qml" lineno="12" meta="qmlmethod"/>
|
||||
<function name="exit" fullname="ScreenPlayItemImage::exit" href="qml-screenplayitemimage.html#exit-method" status="internal" access="private" location="ScreenPlayItemImage.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItemImage.qml" lineno="18" meta="qmlmethod"/>
|
||||
<qmlproperty name="sourceImageGIF" fullname="ScreenPlayItemImage::sourceImageGIF" href="qml-screenplayitemimage.html#sourceImageGIF-prop" status="internal" access="private" location="ScreenPlayItemImage.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItemImage.qml" lineno="10" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="sourceImage" fullname="ScreenPlayItemImage::sourceImage" href="qml-screenplayitemimage.html#sourceImage-prop" status="internal" access="private" location="ScreenPlayItemImage.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Installed/ScreenPlayItemImage.qml" lineno="9" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="MonitorSelectionItem" qml-module-name="MonitorSelectionItem" href="qml-monitorselectionitem.html" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="4" title="MonitorSelectionItem" fulltitle="MonitorSelectionItem" subtitle="">
|
||||
<function name="monitorSelected" fullname="MonitorSelectionItem::monitorSelected" href="qml-monitorselectionitem.html#monitorSelected-signal" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="21" meta="qmlsignal"/>
|
||||
<qmlproperty name="monitorID" fullname="MonitorSelectionItem::monitorID" href="qml-monitorselectionitem.html#monitorID-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="10" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="previewImage" fullname="MonitorSelectionItem::previewImage" href="qml-monitorselectionitem.html#previewImage-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="11" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="isSelected" fullname="MonitorSelectionItem::isSelected" href="qml-monitorselectionitem.html#isSelected-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="19" type="bool" attached="false" writable="true"/>
|
||||
<qmlproperty name="monitorModel" fullname="MonitorSelectionItem::monitorModel" href="qml-monitorselectionitem.html#monitorModel-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="7" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="monitorManufacturer" fullname="MonitorSelectionItem::monitorManufacturer" href="qml-monitorselectionitem.html#monitorManufacturer-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="8" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="monitorSize" fullname="MonitorSelectionItem::monitorSize" href="qml-monitorselectionitem.html#monitorSize-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="6" type="rect" attached="false" writable="true"/>
|
||||
<qmlproperty name="monitorName" fullname="MonitorSelectionItem::monitorName" href="qml-monitorselectionitem.html#monitorName-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="9" type="string" attached="false" writable="true"/>
|
||||
<qmlproperty name="fontSize" fullname="MonitorSelectionItem::fontSize" href="qml-monitorselectionitem.html#fontSize-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="17" type="int" attached="false" writable="true"/>
|
||||
<qmlproperty name="index" fullname="MonitorSelectionItem::index" href="qml-monitorselectionitem.html#index-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="18" type="int" attached="false" writable="true"/>
|
||||
<qmlproperty name="isWallpaperActive" fullname="MonitorSelectionItem::isWallpaperActive" href="qml-monitorselectionitem.html#isWallpaperActive-prop" status="internal" access="private" location="MonitorSelectionItem.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/MonitorSelectionItem.qml" lineno="20" type="bool" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="CreateWallpaper" qml-module-name="CreateWallpaper" href="qml-createwallpaper.html" status="internal" access="private" location="CreateWallpaper.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWallpaper.qml" lineno="9" title="CreateWallpaper" fulltitle="CreateWallpaper" subtitle="">
|
||||
<function name="projectFileSelected" fullname="CreateWallpaper::projectFileSelected" href="qml-createwallpaper.html#projectFileSelected-signal" status="internal" access="private" location="CreateWallpaper.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWallpaper.qml" lineno="16" meta="qmlsignal"/>
|
||||
<function name="videoImportConvertFileSelected" fullname="CreateWallpaper::videoImportConvertFileSelected" href="qml-createwallpaper.html#videoImportConvertFileSelected-signal" status="internal" access="private" location="CreateWallpaper.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Create/CreateWallpaper.qml" lineno="15" meta="qmlsignal"/>
|
||||
</qmlclass>
|
||||
<class name="Create" href="create.html" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="29">
|
||||
<function name="Q_PROPERTY" fullname="Create::Q_PROPERTY" href="create.html#Q_PROPERTY" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="34" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int Q_PROPERTY(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="abortAndCleanup" fullname="Create::abortAndCleanup" href="create.html#abortAndCleanup" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="60" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void abortAndCleanup()"/>
|
||||
<function name="abortCreateWallpaper" fullname="Create::abortCreateWallpaper" href="create.html#abortCreateWallpaper" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="54" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void abortCreateWallpaper()"/>
|
||||
<function name="processOutput" fullname="Create::processOutput" href="create.html#processOutput" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="52" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void processOutput(int text)">
|
||||
<parameter type="int" name="text" default=""/>
|
||||
</function>
|
||||
<function name="progressChanged" fullname="Create::progressChanged" href="create.html#progressChanged" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="53" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void progressChanged(float progress)">
|
||||
<parameter type="float" name="progress" default=""/>
|
||||
</function>
|
||||
<function name="saveWallpaper" fullname="Create::saveWallpaper" href="create.html#saveWallpaper" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="59" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void saveWallpaper(int title, int description, int filePath, int previewImagePath, int youtube, int tags)">
|
||||
<parameter type="int" name="title" default=""/>
|
||||
<parameter type="int" name="description" default=""/>
|
||||
<parameter type="int" name="filePath" default=""/>
|
||||
<parameter type="int" name="previewImagePath" default=""/>
|
||||
<parameter type="int" name="youtube" default=""/>
|
||||
<parameter type="int" name="tags" default=""/>
|
||||
</function>
|
||||
<function name="setProgress" fullname="Create::setProgress" href="create.html#setProgress" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="62" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setProgress(float progress)">
|
||||
<parameter type="float" name="progress" default=""/>
|
||||
</function>
|
||||
<function name="setWorkingDir" fullname="Create::setWorkingDir" href="create.html#setWorkingDir" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="71" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setWorkingDir(int workingDir)">
|
||||
<parameter type="int" name="workingDir" default=""/>
|
||||
</function>
|
||||
<function name="workingDirChanged" fullname="Create::workingDirChanged" href="create.html#workingDirChanged" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="55" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void workingDirChanged(int workingDir)">
|
||||
<parameter type="int" name="workingDir" default=""/>
|
||||
</function>
|
||||
<variable name="m_createImportVideo" fullname="Create::m_createImportVideo" href="create.html#m_createImportVideo-var" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="81" type="CreateImportVideo *" static="false"/>
|
||||
<variable name="m_settings" fullname="Create::m_settings" href="create.html#m_settings-var" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="82" type="Settings *" static="false"/>
|
||||
<variable name="m_createImportVideoThread" fullname="Create::m_createImportVideoThread" href="create.html#m_createImportVideoThread-var" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="83" type="int *" static="false"/>
|
||||
<variable name="m_utils" fullname="Create::m_utils" href="create.html#m_utils-var" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="84" type="QMLUtilities *" static="false"/>
|
||||
<variable name="m_progress" fullname="Create::m_progress" href="create.html#m_progress-var" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="86" type="float" static="false"/>
|
||||
<variable name="m_workingDir" fullname="Create::m_workingDir" href="create.html#m_workingDir-var" status="internal" access="private" location="create.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/create.h" lineno="87" type="int" static="false"/>
|
||||
</class>
|
||||
<qmlclass name="TagSelector" qml-module-name="TagSelector" href="qml-tagselector.html" status="internal" access="private" location="TagSelector.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Common/TagSelector.qml" lineno="6" title="TagSelector" fulltitle="TagSelector" subtitle="">
|
||||
<function name="getTags" fullname="TagSelector::getTags" href="qml-tagselector.html#getTags-method" status="internal" access="private" location="TagSelector.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Common/TagSelector.qml" lineno="18" meta="qmlmethod"/>
|
||||
</qmlclass>
|
||||
<class name="Profile" href="profile.html" status="internal" access="private" location="profile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profile.h" lineno="13">
|
||||
<function name="Profile" fullname="Profile::Profile" href="profile.html#Profile" status="internal" access="private" location="profile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profile.h" lineno="15" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="Profile()"/>
|
||||
<function name="Profile" fullname="Profile::Profile" href="profile.html#Profile-1" status="internal" access="private" location="profile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profile.h" lineno="16" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" overload="true" overload-number="1" type="" signature="Profile(int absolutePath, int id, int version, int wallpaperId, int rect, bool isLooping)">
|
||||
<parameter type="int" name="absolutePath" default=""/>
|
||||
<parameter type="int" name="id" default=""/>
|
||||
<parameter type="int" name="version" default=""/>
|
||||
<parameter type="int" name="wallpaperId" default=""/>
|
||||
<parameter type="int" name="rect" default=""/>
|
||||
<parameter type="bool" name="isLooping" default=""/>
|
||||
</function>
|
||||
<variable name="m_isLooping" fullname="Profile::m_isLooping" href="profile.html#m_isLooping-var" status="internal" access="private" location="profile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profile.h" lineno="23" type="bool" static="false"/>
|
||||
<variable name="m_rect" fullname="Profile::m_rect" href="profile.html#m_rect-var" status="internal" access="private" location="profile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profile.h" lineno="22" type="int" static="false"/>
|
||||
<variable name="m_id" fullname="Profile::m_id" href="profile.html#m_id-var" status="internal" access="private" location="profile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profile.h" lineno="19" type="int" static="false"/>
|
||||
<variable name="m_version" fullname="Profile::m_version" href="profile.html#m_version-var" status="internal" access="private" location="profile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profile.h" lineno="20" type="int" static="false"/>
|
||||
<variable name="m_absolutePath" fullname="Profile::m_absolutePath" href="profile.html#m_absolutePath-var" status="internal" access="private" location="profile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profile.h" lineno="18" type="int" static="false"/>
|
||||
<variable name="m_wallpaperId" fullname="Profile::m_wallpaperId" href="profile.html#m_wallpaperId-var" status="internal" access="private" location="profile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profile.h" lineno="21" type="int" static="false"/>
|
||||
</class>
|
||||
<class name="ProjectSettingsListItem" href="projectsettingslistitem.html" status="internal" access="private" location="projectsettingslistitem.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistitem.h" lineno="16">
|
||||
<function name="ProjectSettingsListItem" fullname="ProjectSettingsListItem::ProjectSettingsListItem" href="projectsettingslistitem.html#ProjectSettingsListItem" status="internal" access="private" location="projectsettingslistitem.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistitem.h" lineno="20" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="ProjectSettingsListItem(int name, bool isHeadline, int value)">
|
||||
<parameter type="int" name="name" default=""/>
|
||||
<parameter type="bool" name="isHeadline" default=""/>
|
||||
<parameter type="int" name="value" default=""/>
|
||||
</function>
|
||||
<function name="ProjectSettingsListItem" fullname="ProjectSettingsListItem::ProjectSettingsListItem" href="projectsettingslistitem.html#ProjectSettingsListItem-1" status="internal" access="private" location="projectsettingslistitem.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistitem.h" lineno="21" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" overload="true" overload-number="1" type="" signature="ProjectSettingsListItem()"/>
|
||||
<function name="~ProjectSettingsListItem" fullname="ProjectSettingsListItem::~ProjectSettingsListItem" href="projectsettingslistitem.html#dtor.ProjectSettingsListItem" status="internal" access="private" location="projectsettingslistitem.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistitem.h" lineno="22" meta="destructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="~ProjectSettingsListItem()"/>
|
||||
<variable name="m_value" fullname="ProjectSettingsListItem::m_value" href="projectsettingslistitem.html#m_value-var" status="internal" access="private" location="projectsettingslistitem.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistitem.h" lineno="25" type="int" static="false"/>
|
||||
<variable name="m_name" fullname="ProjectSettingsListItem::m_name" href="projectsettingslistitem.html#m_name-var" status="internal" access="private" location="projectsettingslistitem.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistitem.h" lineno="23" type="int" static="false"/>
|
||||
<variable name="m_isHeadline" fullname="ProjectSettingsListItem::m_isHeadline" href="projectsettingslistitem.html#m_isHeadline-var" status="internal" access="private" location="projectsettingslistitem.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistitem.h" lineno="24" type="bool" static="false"/>
|
||||
</class>
|
||||
<class name="SDKConnector" href="sdkconnector.html" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="18">
|
||||
<function name="closeAllWallpapers" fullname="SDKConnector::closeAllWallpapers" href="sdkconnector.html#closeAllWallpapers" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="28" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void closeAllWallpapers()"/>
|
||||
<function name="closeWallpapersAt" fullname="SDKConnector::closeWallpapersAt" href="sdkconnector.html#closeWallpapersAt" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="29" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void closeWallpapersAt(int at)">
|
||||
<parameter type="int" name="at" default=""/>
|
||||
</function>
|
||||
<function name="newConnection" fullname="SDKConnector::newConnection" href="sdkconnector.html#newConnection" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="27" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void newConnection()"/>
|
||||
<function name="setSceneValue" fullname="SDKConnector::setSceneValue" href="sdkconnector.html#setSceneValue" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="31" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setSceneValue(int appID, int key, int value)">
|
||||
<parameter type="int" name="appID" default=""/>
|
||||
<parameter type="int" name="key" default=""/>
|
||||
<parameter type="int" name="value" default=""/>
|
||||
</function>
|
||||
<function name="setWallpaperValue" fullname="SDKConnector::setWallpaperValue" href="sdkconnector.html#setWallpaperValue" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="30" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setWallpaperValue(int appID, int key, int value)">
|
||||
<parameter type="int" name="appID" default=""/>
|
||||
<parameter type="int" name="key" default=""/>
|
||||
<parameter type="int" name="value" default=""/>
|
||||
</function>
|
||||
<variable name="m_server" fullname="SDKConnector::m_server" href="sdkconnector.html#m_server-var" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="34" type="int" static="false"/>
|
||||
</class>
|
||||
<class name="SDKConnection" href="sdkconnection.html" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="38">
|
||||
<function name="Q_PROPERTY" fullname="SDKConnection::Q_PROPERTY" href="sdkconnection.html#Q_PROPERTY" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="40" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int Q_PROPERTY(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="appIDChanged" fullname="SDKConnection::appIDChanged" href="sdkconnection.html#appIDChanged" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="74" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void appIDChanged(int appID)">
|
||||
<parameter type="int" name="appID" default=""/>
|
||||
</function>
|
||||
<function name="monitor" fullname="SDKConnection::monitor" href="sdkconnection.html#monitor" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="67" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="int" signature="int monitor() const"/>
|
||||
<function name="monitorChanged" fullname="SDKConnection::monitorChanged" href="sdkconnection.html#monitorChanged" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="75" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void monitorChanged(int monitor)">
|
||||
<parameter type="int" name="monitor" default=""/>
|
||||
</function>
|
||||
<variable name="m_appID" fullname="SDKConnection::m_appID" href="sdkconnection.html#m_appID-var" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="127" type="int" static="false"/>
|
||||
<variable name="m_monitor" fullname="SDKConnection::m_monitor" href="sdkconnection.html#m_monitor-var" status="internal" access="private" location="sdkconnector.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/sdkconnector.h" lineno="128" type="int" static="false"/>
|
||||
</class>
|
||||
<class name="Settings" href="settings.html" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="50">
|
||||
<function name="Q_PROPERTY" fullname="Settings::Q_PROPERTY" href="settings.html#Q_PROPERTY" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="57" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int Q_PROPERTY(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="activeWallpaperCounterChanged" fullname="Settings::activeWallpaperCounterChanged" href="settings.html#activeWallpaperCounterChanged" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="132" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void activeWallpaperCounterChanged(int activeWallpaperCounter)">
|
||||
<parameter type="int" name="activeWallpaperCounter" default=""/>
|
||||
</function>
|
||||
<function name="allDataProtectionLoaded" fullname="Settings::allDataProtectionLoaded" href="settings.html#allDataProtectionLoaded" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="136" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void allDataProtectionLoaded(int dataProtectionText)">
|
||||
<parameter type="int" name="dataProtectionText" default=""/>
|
||||
</function>
|
||||
<function name="allLicenseLoaded" fullname="Settings::allLicenseLoaded" href="settings.html#allLicenseLoaded" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="135" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void allLicenseLoaded(int licensesText)">
|
||||
<parameter type="int" name="licensesText" default=""/>
|
||||
</function>
|
||||
<function name="autostart" fullname="Settings::autostart" href="settings.html#autostart" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="150" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="bool" signature="bool autostart() const"/>
|
||||
<function name="checkForOtherFullscreenApplication" fullname="Settings::checkForOtherFullscreenApplication" href="settings.html#checkForOtherFullscreenApplication" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="141" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void checkForOtherFullscreenApplication()"/>
|
||||
<function name="createDefaultConfig" fullname="Settings::createDefaultConfig" href="settings.html#createDefaultConfig" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="296" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void createDefaultConfig()"/>
|
||||
<function name="decoder" fullname="Settings::decoder" href="settings.html#decoder" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="165" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="int" signature="int decoder() const"/>
|
||||
<function name="decoderChanged" fullname="Settings::decoderChanged" href="settings.html#decoderChanged" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="130" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void decoderChanged(int decoder)">
|
||||
<parameter type="int" name="decoder" default=""/>
|
||||
</function>
|
||||
<function name="decreaseActiveWallpaperCounter" fullname="Settings::decreaseActiveWallpaperCounter" href="settings.html#decreaseActiveWallpaperCounter" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="268" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void decreaseActiveWallpaperCounter()"/>
|
||||
<function name="getOfflineMode" fullname="Settings::getOfflineMode" href="settings.html#getOfflineMode" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="122" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="bool" signature="bool getOfflineMode() const"/>
|
||||
<function name="getScreenPlayBasePath" fullname="Settings::getScreenPlayBasePath" href="settings.html#getScreenPlayBasePath" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="116" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="int" signature="int getScreenPlayBasePath() const"/>
|
||||
<function name="getScreenPlayWidgetPath" fullname="Settings::getScreenPlayWidgetPath" href="settings.html#getScreenPlayWidgetPath" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="119" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="int" signature="int getScreenPlayWidgetPath() const"/>
|
||||
<function name="hasWorkshopBannerSeenChanged" fullname="Settings::hasWorkshopBannerSeenChanged" href="settings.html#hasWorkshopBannerSeenChanged" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="129" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void hasWorkshopBannerSeenChanged(bool hasWorkshopBannerSeen)">
|
||||
<parameter type="bool" name="hasWorkshopBannerSeen" default=""/>
|
||||
</function>
|
||||
<function name="highPriorityStart" fullname="Settings::highPriorityStart" href="settings.html#highPriorityStart" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="155" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="bool" signature="bool highPriorityStart() const"/>
|
||||
<function name="highPriorityStartChanged" fullname="Settings::highPriorityStartChanged" href="settings.html#highPriorityStartChanged" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="126" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void highPriorityStartChanged(bool highPriorityStart)">
|
||||
<parameter type="bool" name="highPriorityStart" default=""/>
|
||||
</function>
|
||||
<function name="increaseActiveWallpaperCounter" fullname="Settings::increaseActiveWallpaperCounter" href="settings.html#increaseActiveWallpaperCounter" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="262" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void increaseActiveWallpaperCounter()"/>
|
||||
<function name="loadProject" fullname="Settings::loadProject" href="settings.html#loadProject" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="215" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int loadProject(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="localStoragePathChanged" fullname="Settings::localStoragePathChanged" href="settings.html#localStoragePathChanged" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="128" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void localStoragePathChanged(int localStoragePath)">
|
||||
<parameter type="int" name="localStoragePath" default=""/>
|
||||
</function>
|
||||
<function name="offlineMode" fullname="Settings::offlineMode" href="settings.html#offlineMode" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="111" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="bool" signature="bool offlineMode() const"/>
|
||||
<function name="offlineModeChanged" fullname="Settings::offlineModeChanged" href="settings.html#offlineModeChanged" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="134" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void offlineModeChanged(bool offlineMode)">
|
||||
<parameter type="bool" name="offlineMode" default=""/>
|
||||
</function>
|
||||
<function name="pauseWallpaperWhenIngame" fullname="Settings::pauseWallpaperWhenIngame" href="settings.html#pauseWallpaperWhenIngame" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="106" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="bool" signature="bool pauseWallpaperWhenIngame() const"/>
|
||||
<function name="pauseWallpaperWhenIngameChanged" fullname="Settings::pauseWallpaperWhenIngameChanged" href="settings.html#pauseWallpaperWhenIngameChanged" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="133" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void pauseWallpaperWhenIngameChanged(bool pauseWallpaperWhenIngame)">
|
||||
<parameter type="bool" name="pauseWallpaperWhenIngame" default=""/>
|
||||
</function>
|
||||
<function name="requestAllLDataProtection" fullname="Settings::requestAllLDataProtection" href="settings.html#requestAllLDataProtection" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="146" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void requestAllLDataProtection()"/>
|
||||
<function name="requestAllLicenses" fullname="Settings::requestAllLicenses" href="settings.html#requestAllLicenses" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="145" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void requestAllLicenses()"/>
|
||||
<function name="saveWallpaper" fullname="Settings::saveWallpaper" href="settings.html#saveWallpaper" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="147" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void saveWallpaper(int monitorIndex, int absoluteStoragePath, int properties, int type)">
|
||||
<parameter type="int" name="monitorIndex" default=""/>
|
||||
<parameter type="int" name="absoluteStoragePath" default=""/>
|
||||
<parameter type="int" name="properties" default=""/>
|
||||
<parameter type="int" name="type" default=""/>
|
||||
</function>
|
||||
<function name="sendStatistics" fullname="Settings::sendStatistics" href="settings.html#sendStatistics" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="160" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="bool" signature="bool sendStatistics() const"/>
|
||||
<function name="sendStatisticsChanged" fullname="Settings::sendStatisticsChanged" href="settings.html#sendStatisticsChanged" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="127" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void sendStatisticsChanged(bool status)">
|
||||
<parameter type="bool" name="status" default=""/>
|
||||
</function>
|
||||
<function name="setActiveWallpaperCounter" fullname="Settings::setActiveWallpaperCounter" href="settings.html#setActiveWallpaperCounter" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="253" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setActiveWallpaperCounter(int activeWallpaperCounter)">
|
||||
<parameter type="int" name="activeWallpaperCounter" default=""/>
|
||||
</function>
|
||||
<function name="setAutostart" fullname="Settings::setAutostart" href="settings.html#setAutostart" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="170" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setAutostart(bool autostart)">
|
||||
<parameter type="bool" name="autostart" default=""/>
|
||||
</function>
|
||||
<function name="setDecoder" fullname="Settings::setDecoder" href="settings.html#setDecoder" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="234" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setDecoder(int decoder)">
|
||||
<parameter type="int" name="decoder" default=""/>
|
||||
</function>
|
||||
<function name="setGlobalFillMode" fullname="Settings::setGlobalFillMode" href="settings.html#setGlobalFillMode" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="143" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setGlobalFillMode(int fillMode)">
|
||||
<parameter type="int" name="fillMode" default=""/>
|
||||
</function>
|
||||
<function name="setGlobalVolume" fullname="Settings::setGlobalVolume" href="settings.html#setGlobalVolume" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="142" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setGlobalVolume(float volume)">
|
||||
<parameter type="float" name="volume" default=""/>
|
||||
</function>
|
||||
<function name="setHasWorkshopBannerSeen" fullname="Settings::setHasWorkshopBannerSeen" href="settings.html#setHasWorkshopBannerSeen" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="244" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setHasWorkshopBannerSeen(bool hasWorkshopBannerSeen)">
|
||||
<parameter type="bool" name="hasWorkshopBannerSeen" default=""/>
|
||||
</function>
|
||||
<function name="setHighPriorityStart" fullname="Settings::setHighPriorityStart" href="settings.html#setHighPriorityStart" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="194" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setHighPriorityStart(bool highPriorityStart)">
|
||||
<parameter type="bool" name="highPriorityStart" default=""/>
|
||||
</function>
|
||||
<function name="setLocalStoragePath" fullname="Settings::setLocalStoragePath" href="settings.html#setLocalStoragePath" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="217" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setLocalStoragePath(int localStoragePath)">
|
||||
<parameter type="int" name="localStoragePath" default=""/>
|
||||
</function>
|
||||
<function name="setMainWindowVisible" fullname="Settings::setMainWindowVisible" href="settings.html#setMainWindowVisible" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="131" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setMainWindowVisible(bool visible)">
|
||||
<parameter type="bool" name="visible" default=""/>
|
||||
</function>
|
||||
<function name="setOfflineMode" fullname="Settings::setOfflineMode" href="settings.html#setOfflineMode" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="286" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setOfflineMode(bool offlineMode)">
|
||||
<parameter type="bool" name="offlineMode" default=""/>
|
||||
</function>
|
||||
<function name="setPauseWallpaperWhenIngame" fullname="Settings::setPauseWallpaperWhenIngame" href="settings.html#setPauseWallpaperWhenIngame" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="277" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setPauseWallpaperWhenIngame(bool pauseWallpaperWhenIngame)">
|
||||
<parameter type="bool" name="pauseWallpaperWhenIngame" default=""/>
|
||||
</function>
|
||||
<function name="setPlayAll" fullname="Settings::setPlayAll" href="settings.html#setPlayAll" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="140" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setPlayAll(bool isPlaying)">
|
||||
<parameter type="bool" name="isPlaying" default=""/>
|
||||
</function>
|
||||
<function name="setScreenPlayBasePath" fullname="Settings::setScreenPlayBasePath" href="settings.html#setScreenPlayBasePath" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="117" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setScreenPlayBasePath(int screenPlayBasePath)">
|
||||
<parameter type="int" name="screenPlayBasePath" default=""/>
|
||||
</function>
|
||||
<function name="setScreenPlayWidgetPath" fullname="Settings::setScreenPlayWidgetPath" href="settings.html#setScreenPlayWidgetPath" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="120" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setScreenPlayWidgetPath(const int &screenPlayWidgetPath)">
|
||||
<parameter type="const int &" name="screenPlayWidgetPath" default=""/>
|
||||
</function>
|
||||
<function name="setScreenPlayWindowPath" fullname="Settings::setScreenPlayWindowPath" href="settings.html#setScreenPlayWindowPath" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="104" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setScreenPlayWindowPath(const int &screenPlayWindowPath)">
|
||||
<parameter type="const int &" name="screenPlayWindowPath" default=""/>
|
||||
</function>
|
||||
<function name="setSendStatistics" fullname="Settings::setSendStatistics" href="settings.html#setSendStatistics" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="204" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setSendStatistics(bool sendStatistics)">
|
||||
<parameter type="bool" name="sendStatistics" default=""/>
|
||||
</function>
|
||||
<function name="setqSetting" fullname="Settings::setqSetting" href="settings.html#setqSetting" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="148" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setqSetting(const int &key, const int &value)">
|
||||
<parameter type="const int &" name="key" default=""/>
|
||||
<parameter type="const int &" name="value" default=""/>
|
||||
</function>
|
||||
<function name="setupWidgetAndWindowPaths" fullname="Settings::setupWidgetAndWindowPaths" href="settings.html#setupWidgetAndWindowPaths" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="297" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setupWidgetAndWindowPaths()"/>
|
||||
<function name="writeSingleSettingConfig" fullname="Settings::writeSingleSettingConfig" href="settings.html#writeSingleSettingConfig" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="144" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void writeSingleSettingConfig(int name, int value)">
|
||||
<parameter type="int" name="name" default=""/>
|
||||
<parameter type="int" name="value" default=""/>
|
||||
</function>
|
||||
<function name="~Settings" fullname="Settings::~Settings" href="settings.html#dtor.Settings" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="55" meta="destructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="~Settings()"/>
|
||||
<variable name="m_autostart" fullname="Settings::m_autostart" href="settings.html#m_autostart-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="317" type="bool" static="false"/>
|
||||
<variable name="m_activeWallpaperCounter" fullname="Settings::m_activeWallpaperCounter" href="settings.html#m_activeWallpaperCounter-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="322" type="int" static="false"/>
|
||||
<variable name="m_version" fullname="Settings::m_version" href="settings.html#m_version-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="299" type="int" static="false"/>
|
||||
<variable name="m_translator" fullname="Settings::m_translator" href="settings.html#m_translator-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="301" type="int" static="false"/>
|
||||
<variable name="m_offlineMode" fullname="Settings::m_offlineMode" href="settings.html#m_offlineMode-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="325" type="bool" static="false"/>
|
||||
<variable name="m_decoder" fullname="Settings::m_decoder" href="settings.html#m_decoder-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="321" type="int" static="false"/>
|
||||
<variable name="m_hasWorkshopBannerSeen" fullname="Settings::m_hasWorkshopBannerSeen" href="settings.html#m_hasWorkshopBannerSeen-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="315" type="bool" static="false"/>
|
||||
<variable name="m_highPriorityStart" fullname="Settings::m_highPriorityStart" href="settings.html#m_highPriorityStart-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="318" type="bool" static="false"/>
|
||||
<variable name="m_app" fullname="Settings::m_app" href="settings.html#m_app-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="323" type="int *" static="false"/>
|
||||
<variable name="m_qSettings" fullname="Settings::m_qSettings" href="settings.html#m_qSettings-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="300" type="int" static="false"/>
|
||||
<variable name="m_mlm" fullname="Settings::m_mlm" href="settings.html#m_mlm-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="304" type="MonitorListModel *" static="false"/>
|
||||
<variable name="m_sdkc" fullname="Settings::m_sdkc" href="settings.html#m_sdkc-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="305" type="SDKConnector *" static="false"/>
|
||||
<variable name="m_screenPlayWindowPath" fullname="Settings::m_screenPlayWindowPath" href="settings.html#m_screenPlayWindowPath-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="311" type="int" static="false"/>
|
||||
<variable name="m_screenPlayWidgetPath" fullname="Settings::m_screenPlayWidgetPath" href="settings.html#m_screenPlayWidgetPath-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="312" type="int" static="false"/>
|
||||
<enum name="LocalCopyResult" fullname="Settings::LocalCopyResult" href="settings.html#LocalCopyResult-enum" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="70">
|
||||
<value name="NoError" value="0"/>
|
||||
<value name="CopyError" value="1"/>
|
||||
<value name="NotEnoughDiskSpace" value="2"/>
|
||||
<value name="NameCollision" value="3"/>
|
||||
</enum>
|
||||
<variable name="m_sendStatistics" fullname="Settings::m_sendStatistics" href="settings.html#m_sendStatistics-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="319" type="bool" static="false"/>
|
||||
<variable name="m_ilm" fullname="Settings::m_ilm" href="settings.html#m_ilm-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="303" type="InstalledListModel *" static="false"/>
|
||||
<variable name="m_checkForOtherFullscreenApplicationTimer" fullname="Settings::m_checkForOtherFullscreenApplicationTimer" href="settings.html#m_checkForOtherFullscreenApplicationTimer-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="307" type="int *" static="false"/>
|
||||
<variable name="m_plm" fullname="Settings::m_plm" href="settings.html#m_plm-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="302" type="ProfileListModel *" static="false"/>
|
||||
<variable name="m_localStoragePath" fullname="Settings::m_localStoragePath" href="settings.html#m_localStoragePath-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="309" type="int" static="false"/>
|
||||
<variable name="m_localSettingsPath" fullname="Settings::m_localSettingsPath" href="settings.html#m_localSettingsPath-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="310" type="int" static="false"/>
|
||||
<variable name="m_screenPlayBasePath" fullname="Settings::m_screenPlayBasePath" href="settings.html#m_screenPlayBasePath-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="313" type="int" static="false"/>
|
||||
<variable name="m_pauseWallpaperWhenIngame" fullname="Settings::m_pauseWallpaperWhenIngame" href="settings.html#m_pauseWallpaperWhenIngame-var" status="internal" access="private" location="settings.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/settings.h" lineno="316" type="bool" static="false"/>
|
||||
</class>
|
||||
<class name="MonitorListModel" href="monitorlistmodel.html" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="24">
|
||||
<function name="data" fullname="MonitorListModel::data" href="monitorlistmodel.html#data" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="48" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int data(const int &, int ) const override">
|
||||
<parameter type="const int &" name="" default=""/>
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="getMonitorListItemAt" fullname="MonitorListModel::getMonitorListItemAt" href="monitorlistmodel.html#getMonitorListItemAt" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="50" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="bool" signature="bool getMonitorListItemAt(int position, Monitor *monitor)">
|
||||
<parameter type="int" name="position" default=""/>
|
||||
<parameter type="Monitor *" name="monitor" default=""/>
|
||||
</function>
|
||||
<function name="loadMonitors" fullname="MonitorListModel::loadMonitors" href="monitorlistmodel.html#loadMonitors" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="51" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void loadMonitors()"/>
|
||||
<function name="reloadMonitors" fullname="MonitorListModel::reloadMonitors" href="monitorlistmodel.html#reloadMonitors" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="60" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void reloadMonitors()"/>
|
||||
<function name="reset" fullname="MonitorListModel::reset" href="monitorlistmodel.html#reset" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="54" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void reset()"/>
|
||||
<function name="roleNames" fullname="MonitorListModel::roleNames" href="monitorlistmodel.html#roleNames" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="30" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int roleNames() const override"/>
|
||||
<function name="screenAdded" fullname="MonitorListModel::screenAdded" href="monitorlistmodel.html#screenAdded" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="52" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void screenAdded(int *screen)">
|
||||
<parameter type="int *" name="screen" default=""/>
|
||||
</function>
|
||||
<function name="screenRemoved" fullname="MonitorListModel::screenRemoved" href="monitorlistmodel.html#screenRemoved" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="53" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void screenRemoved(int *screen)">
|
||||
<parameter type="int *" name="screen" default=""/>
|
||||
</function>
|
||||
<function name="setNewActiveMonitor" fullname="MonitorListModel::setNewActiveMonitor" href="monitorlistmodel.html#setNewActiveMonitor" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="71" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setNewActiveMonitor(int index, int path)">
|
||||
<parameter type="int" name="index" default=""/>
|
||||
<parameter type="int" name="path" default=""/>
|
||||
</function>
|
||||
<function name="setWallpaperActiveMonitor" fullname="MonitorListModel::setWallpaperActiveMonitor" href="monitorlistmodel.html#setWallpaperActiveMonitor" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="56" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setWallpaperActiveMonitor(int *screen, int fullPreviewImagePath)">
|
||||
<parameter type="int *" name="screen" default=""/>
|
||||
<parameter type="int" name="fullPreviewImagePath" default=""/>
|
||||
</function>
|
||||
<function name="size" fullname="MonitorListModel::size" href="monitorlistmodel.html#size" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="61" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int size()"/>
|
||||
<function name="wallpaperRemoved" fullname="MonitorListModel::wallpaperRemoved" href="monitorlistmodel.html#wallpaperRemoved" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="62" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void wallpaperRemoved()"/>
|
||||
<variable name="m_monitorList" fullname="MonitorListModel::m_monitorList" href="monitorlistmodel.html#m_monitorList-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="65" type="int" static="false"/>
|
||||
<variable name="m_qGuiApplication" fullname="MonitorListModel::m_qGuiApplication" href="monitorlistmodel.html#m_qGuiApplication-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="66" type="int *" static="false"/>
|
||||
<enum name="MonitorRole" fullname="MonitorListModel::MonitorRole" href="monitorlistmodel.html#MonitorRole-enum" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="32">
|
||||
<value name="IDRole" value="0"/>
|
||||
<value name="NameRole" value="1"/>
|
||||
<value name="SizeRole" value="2"/>
|
||||
<value name="AvailableGeometryRole" value="3"/>
|
||||
<value name="AvailableVirtualGeometryRole" value="4"/>
|
||||
<value name="NumberRole" value="5"/>
|
||||
<value name="GeometryRole" value="6"/>
|
||||
<value name="ModelRole" value="7"/>
|
||||
<value name="ManufacturerRole" value="8"/>
|
||||
<value name="PreviewImageRole" value="9"/>
|
||||
<value name="IsWallpaperActiveRole" value="10"/>
|
||||
</enum>
|
||||
</class>
|
||||
<class name="InstalledListModel" href="installedlistmodel.html" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="29">
|
||||
<function name="Q_PROPERTY" fullname="InstalledListModel::Q_PROPERTY" href="installedlistmodel.html#Q_PROPERTY" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="42" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int Q_PROPERTY(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="absoluteStoragePathChanged" fullname="InstalledListModel::absoluteStoragePathChanged" href="installedlistmodel.html#absoluteStoragePathChanged" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="94" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void absoluteStoragePathChanged(int absoluteStoragePath)">
|
||||
<parameter type="int" name="absoluteStoragePath" default=""/>
|
||||
</function>
|
||||
<function name="addInstalledItem" fullname="InstalledListModel::addInstalledItem" href="installedlistmodel.html#addInstalledItem" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="95" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void addInstalledItem(const int QJsonObject, const int )">
|
||||
<parameter type="const int" name="QJsonObject" default=""/>
|
||||
<parameter type="const int" name="" default=""/>
|
||||
</function>
|
||||
<function name="append" fullname="InstalledListModel::append" href="installedlistmodel.html#append" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="70" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void append(const int QJsonObject, const int )">
|
||||
<parameter type="const int" name="QJsonObject" default=""/>
|
||||
<parameter type="const int" name="" default=""/>
|
||||
</function>
|
||||
<function name="data" fullname="InstalledListModel::data" href="installedlistmodel.html#data" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="37" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int data(const int &, int ) const override">
|
||||
<parameter type="const int &" name="" default=""/>
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="get" fullname="InstalledListModel::get" href="installedlistmodel.html#get" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="69" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int get(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="getAmountItemLoaded" fullname="InstalledListModel::getAmountItemLoaded" href="installedlistmodel.html#getAmountItemLoaded" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="79" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int getAmountItemLoaded()"/>
|
||||
<function name="getProjectByAbsoluteStoragePath" fullname="InstalledListModel::getProjectByAbsoluteStoragePath" href="installedlistmodel.html#getProjectByAbsoluteStoragePath" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="40" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="bool" signature="bool getProjectByAbsoluteStoragePath(int *path, ProjectFile *spf)">
|
||||
<parameter type="int *" name="path" default=""/>
|
||||
<parameter type="ProjectFile *" name="spf" default=""/>
|
||||
</function>
|
||||
<function name="installedLoadingFinished" fullname="InstalledListModel::installedLoadingFinished" href="installedlistmodel.html#installedLoadingFinished" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="96" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void installedLoadingFinished()"/>
|
||||
<function name="isLoadingContentChanged" fullname="InstalledListModel::isLoadingContentChanged" href="installedlistmodel.html#isLoadingContentChanged" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="98" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void isLoadingContentChanged(bool isLoadingContent)">
|
||||
<parameter type="bool" name="isLoadingContent" default=""/>
|
||||
</function>
|
||||
<function name="reset" fullname="InstalledListModel::reset" href="installedlistmodel.html#reset" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="80" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void reset()"/>
|
||||
<function name="roleNames" fullname="InstalledListModel::roleNames" href="installedlistmodel.html#roleNames" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="38" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int roleNames() const override"/>
|
||||
<function name="rowCount" fullname="InstalledListModel::rowCount" href="installedlistmodel.html#rowCount" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="36" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int rowCount(const int &parent) const override">
|
||||
<parameter type="const int &" name="parent" default="..."/>
|
||||
</function>
|
||||
<function name="setIsLoadingContent" fullname="InstalledListModel::setIsLoadingContent" href="installedlistmodel.html#setIsLoadingContent" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="82" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setIsLoadingContent(bool isLoadingContent)">
|
||||
<parameter type="bool" name="isLoadingContent" default=""/>
|
||||
</function>
|
||||
<function name="setScreenToVideo" fullname="InstalledListModel::setScreenToVideo" href="installedlistmodel.html#setScreenToVideo" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="93" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setScreenToVideo(int absolutePath)">
|
||||
<parameter type="int" name="absolutePath" default=""/>
|
||||
</function>
|
||||
<function name="setabsoluteStoragePath" fullname="InstalledListModel::setabsoluteStoragePath" href="installedlistmodel.html#setabsoluteStoragePath" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="71" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setabsoluteStoragePath(int absoluteStoragePath)">
|
||||
<parameter type="int" name="absoluteStoragePath" default=""/>
|
||||
</function>
|
||||
<variable name="InstalledRole" fullname="InstalledListModel::InstalledRole" href="installedlistmodel.html#InstalledRole-var" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="55" type="int" static="false"/>
|
||||
<variable name="m_screenPlayFiles" fullname="InstalledListModel::m_screenPlayFiles" href="installedlistmodel.html#m_screenPlayFiles-var" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="101" type="int" static="false"/>
|
||||
<variable name="m_absoluteStoragePath" fullname="InstalledListModel::m_absoluteStoragePath" href="installedlistmodel.html#m_absoluteStoragePath-var" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="102" type="int" static="false"/>
|
||||
<variable name="m_loadScreenFuture" fullname="InstalledListModel::m_loadScreenFuture" href="installedlistmodel.html#m_loadScreenFuture-var" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="103" type="int" static="false"/>
|
||||
<variable name="m_isLoadingContent" fullname="InstalledListModel::m_isLoadingContent" href="installedlistmodel.html#m_isLoadingContent-var" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="107" type="bool" static="false"/>
|
||||
<variable name="m_loadScreenWatcher" fullname="InstalledListModel::m_loadScreenWatcher" href="installedlistmodel.html#m_loadScreenWatcher-var" status="internal" access="private" location="installedlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistmodel.h" lineno="104" type="int" static="false"/>
|
||||
</class>
|
||||
<class name="ProjectFile" href="projectfile.html" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="16">
|
||||
<function name="ProjectFile" fullname="ProjectFile::ProjectFile" href="projectfile.html#ProjectFile" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="19" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="ProjectFile(int obj, int folderName, int absolutePath)">
|
||||
<parameter type="int" name="obj" default=""/>
|
||||
<parameter type="int" name="folderName" default=""/>
|
||||
<parameter type="int" name="absolutePath" default=""/>
|
||||
</function>
|
||||
<function name="ProjectFile" fullname="ProjectFile::ProjectFile" href="projectfile.html#ProjectFile-1" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="20" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" overload="true" overload-number="1" type="" signature="ProjectFile()"/>
|
||||
<function name="~ProjectFile" fullname="ProjectFile::~ProjectFile" href="projectfile.html#dtor.ProjectFile" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="21" meta="destructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="~ProjectFile()"/>
|
||||
<variable name="m_description" fullname="ProjectFile::m_description" href="projectfile.html#m_description-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="23" type="int" static="false"/>
|
||||
<variable name="m_file" fullname="ProjectFile::m_file" href="projectfile.html#m_file-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="24" type="int" static="false"/>
|
||||
<variable name="m_preview" fullname="ProjectFile::m_preview" href="projectfile.html#m_preview-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="25" type="int" static="false"/>
|
||||
<variable name="m_type" fullname="ProjectFile::m_type" href="projectfile.html#m_type-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="30" type="int" static="false"/>
|
||||
<variable name="m_workshopID" fullname="ProjectFile::m_workshopID" href="projectfile.html#m_workshopID-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="32" type="int" static="false"/>
|
||||
<variable name="m_settings" fullname="ProjectFile::m_settings" href="projectfile.html#m_settings-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="31" type="int" static="false"/>
|
||||
<variable name="m_tags" fullname="ProjectFile::m_tags" href="projectfile.html#m_tags-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="34" type="int" static="false"/>
|
||||
<variable name="m_folderId" fullname="ProjectFile::m_folderId" href="projectfile.html#m_folderId-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="28" type="int" static="false"/>
|
||||
<variable name="m_absoluteStoragePath" fullname="ProjectFile::m_absoluteStoragePath" href="projectfile.html#m_absoluteStoragePath-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="29" type="int" static="false"/>
|
||||
<variable name="m_title" fullname="ProjectFile::m_title" href="projectfile.html#m_title-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="27" type="int" static="false"/>
|
||||
<variable name="m_previewGIF" fullname="ProjectFile::m_previewGIF" href="projectfile.html#m_previewGIF-var" status="internal" access="private" location="projectfile.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectfile.h" lineno="26" type="int" static="false"/>
|
||||
</class>
|
||||
<class name="ScreenPlay" href="screenplay.html" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="27">
|
||||
<function name="createWidget" fullname="ScreenPlay::createWidget" href="screenplay.html#createWidget" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="47" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void createWidget(int absoluteStoragePath, int previewImage)">
|
||||
<parameter type="int" name="absoluteStoragePath" default=""/>
|
||||
<parameter type="int" name="previewImage" default=""/>
|
||||
</function>
|
||||
<function name="generateID" fullname="ScreenPlay::generateID" href="screenplay.html#generateID" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="54" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int generateID()"/>
|
||||
<function name="getMonitorByAppID" fullname="ScreenPlay::getMonitorByAppID" href="screenplay.html#getMonitorByAppID" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="53" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int getMonitorByAppID(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="projectSettingsListModelFound" fullname="ScreenPlay::projectSettingsListModelFound" href="screenplay.html#projectSettingsListModelFound" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="42" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void projectSettingsListModelFound(ProjectSettingsListModel *li, int type)">
|
||||
<parameter type="ProjectSettingsListModel *" name="li" default=""/>
|
||||
<parameter type="int" name="type" default=""/>
|
||||
</function>
|
||||
<function name="projectSettingsListModelNotFound" fullname="ScreenPlay::projectSettingsListModelNotFound" href="screenplay.html#projectSettingsListModelNotFound" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="43" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void projectSettingsListModelNotFound()"/>
|
||||
<function name="removeAllWallpaper" fullname="ScreenPlay::removeAllWallpaper" href="screenplay.html#removeAllWallpaper" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="48" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void removeAllWallpaper()"/>
|
||||
<function name="removeWallpaperAt" fullname="ScreenPlay::removeWallpaperAt" href="screenplay.html#removeWallpaperAt" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="52" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void removeWallpaperAt(int at)">
|
||||
<parameter type="int" name="at" default=""/>
|
||||
</function>
|
||||
<function name="requestProjectSettingsListModelAt" fullname="ScreenPlay::requestProjectSettingsListModelAt" href="screenplay.html#requestProjectSettingsListModelAt" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="49" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void requestProjectSettingsListModelAt(int index)">
|
||||
<parameter type="int" name="index" default=""/>
|
||||
</function>
|
||||
<function name="setAllWallpaperValue" fullname="ScreenPlay::setAllWallpaperValue" href="screenplay.html#setAllWallpaperValue" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="51" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setAllWallpaperValue(int key, int value)">
|
||||
<parameter type="int" name="key" default=""/>
|
||||
<parameter type="int" name="value" default=""/>
|
||||
</function>
|
||||
<function name="setWallpaperValue" fullname="ScreenPlay::setWallpaperValue" href="screenplay.html#setWallpaperValue" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="50" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setWallpaperValue(int at, int key, int value)">
|
||||
<parameter type="int" name="at" default=""/>
|
||||
<parameter type="int" name="key" default=""/>
|
||||
<parameter type="int" name="value" default=""/>
|
||||
</function>
|
||||
<function name="settings" fullname="ScreenPlay::settings" href="screenplay.html#settings" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="32" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="Settings *" signature="Settings * settings() const"/>
|
||||
<variable name="m_settings" fullname="ScreenPlay::m_settings" href="screenplay.html#m_settings-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="35" type="Settings *" static="false"/>
|
||||
<variable name="m_qGuiApplication" fullname="ScreenPlay::m_qGuiApplication" href="screenplay.html#m_qGuiApplication-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="37" type="int *" static="false"/>
|
||||
<variable name="m_mlm" fullname="ScreenPlay::m_mlm" href="screenplay.html#m_mlm-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="36" type="MonitorListModel *" static="false"/>
|
||||
<variable name="m_sdkc" fullname="ScreenPlay::m_sdkc" href="screenplay.html#m_sdkc-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="38" type="SDKConnector *" static="false"/>
|
||||
<variable name="m_ilm" fullname="ScreenPlay::m_ilm" href="screenplay.html#m_ilm-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="34" type="InstalledListModel *" static="false"/>
|
||||
</class>
|
||||
<class name="QMLUtilities" href="qmlutilities.html" status="internal" access="private" location="qmlutilities.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/qmlutilities.h" lineno="19">
|
||||
<function name="fixWindowsPath" fullname="QMLUtilities::fixWindowsPath" href="qmlutilities.html#fixWindowsPath" status="internal" access="private" location="qmlutilities.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/qmlutilities.h" lineno="36" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int fixWindowsPath(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="openFolderInExplorer" fullname="QMLUtilities::openFolderInExplorer" href="qmlutilities.html#openFolderInExplorer" status="internal" access="private" location="qmlutilities.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/qmlutilities.h" lineno="34" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void openFolderInExplorer(int url)">
|
||||
<parameter type="int" name="url" default=""/>
|
||||
</function>
|
||||
<function name="requestNavigationActive" fullname="QMLUtilities::requestNavigationActive" href="qmlutilities.html#requestNavigationActive" status="internal" access="private" location="qmlutilities.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/qmlutilities.h" lineno="26" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void requestNavigationActive(bool isActive)">
|
||||
<parameter type="bool" name="isActive" default=""/>
|
||||
</function>
|
||||
<function name="requestToggleWallpaperConfiguration" fullname="QMLUtilities::requestToggleWallpaperConfiguration" href="qmlutilities.html#requestToggleWallpaperConfiguration" status="internal" access="private" location="qmlutilities.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/qmlutilities.h" lineno="27" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void requestToggleWallpaperConfiguration()"/>
|
||||
<function name="setNavigationActive" fullname="QMLUtilities::setNavigationActive" href="qmlutilities.html#setNavigationActive" status="internal" access="private" location="qmlutilities.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/qmlutilities.h" lineno="31" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setNavigationActive(bool isActive)">
|
||||
<parameter type="bool" name="isActive" default=""/>
|
||||
</function>
|
||||
<function name="setToggleWallpaperConfiguration" fullname="QMLUtilities::setToggleWallpaperConfiguration" href="qmlutilities.html#setToggleWallpaperConfiguration" status="internal" access="private" location="qmlutilities.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/qmlutilities.h" lineno="33" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void setToggleWallpaperConfiguration()"/>
|
||||
</class>
|
||||
<class name="ScreenPlayWidget" href="screenplaywidget.html" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="202">
|
||||
<function name="Q_PROPERTY" fullname="ScreenPlayWidget::Q_PROPERTY" href="screenplaywidget.html#Q_PROPERTY" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="205" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int Q_PROPERTY(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="appIDChanged" fullname="ScreenPlayWidget::appIDChanged" href="screenplaywidget.html#appIDChanged" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="272" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void appIDChanged(int appID)">
|
||||
<parameter type="int" name="appID" default=""/>
|
||||
</function>
|
||||
<function name="fullPathChanged" fullname="ScreenPlayWidget::fullPathChanged" href="screenplaywidget.html#fullPathChanged" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="270" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void fullPathChanged(int fullPath)">
|
||||
<parameter type="int" name="fullPath" default=""/>
|
||||
</function>
|
||||
<function name="positionChanged" fullname="ScreenPlayWidget::positionChanged" href="screenplaywidget.html#positionChanged" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="268" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void positionChanged(int position)">
|
||||
<parameter type="int" name="position" default=""/>
|
||||
</function>
|
||||
<function name="previewImageChanged" fullname="ScreenPlayWidget::previewImageChanged" href="screenplaywidget.html#previewImageChanged" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="266" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void previewImageChanged(int previewImage)">
|
||||
<parameter type="int" name="previewImage" default=""/>
|
||||
</function>
|
||||
<variable name="m_previewImage" fullname="ScreenPlayWidget::m_previewImage" href="screenplaywidget.html#m_previewImage-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="323" type="int" static="false"/>
|
||||
<variable name="m_position" fullname="ScreenPlayWidget::m_position" href="screenplaywidget.html#m_position-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="324" type="int" static="false"/>
|
||||
<variable name="m_process" fullname="ScreenPlayWidget::m_process" href="screenplaywidget.html#m_process-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="325" type="int *" static="false"/>
|
||||
<variable name="m_appID" fullname="ScreenPlayWidget::m_appID" href="screenplaywidget.html#m_appID-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="327" type="int" static="false"/>
|
||||
<variable name="m_fullPath" fullname="ScreenPlayWidget::m_fullPath" href="screenplaywidget.html#m_fullPath-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="326" type="int" static="false"/>
|
||||
</class>
|
||||
<qmlclass name="main" qml-module-name="main" href="qml-main.html" status="internal" access="private" location="main.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/main.qml" lineno="12" title="main" fulltitle="main" subtitle="">
|
||||
<function name="switchPage" fullname="main::switchPage" href="qml-main.html#switchPage-method" status="internal" access="private" location="main.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/main.qml" lineno="28" meta="qmlmethod"/>
|
||||
</qmlclass>
|
||||
<class name="Monitor" href="monitor.html" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="74">
|
||||
<function name="Monitor" fullname="Monitor::Monitor" href="monitor.html#Monitor" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="77" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="Monitor()"/>
|
||||
<function name="Monitor" fullname="Monitor::Monitor" href="monitor.html#Monitor-1" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="78" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" overload="true" overload-number="1" type="" signature="Monitor(int manufacturer, int model, int name, int size, int availableGeometry, int number, int availableVirtualGeometry, int geometry, int *screen)">
|
||||
<parameter type="int" name="manufacturer" default=""/>
|
||||
<parameter type="int" name="model" default=""/>
|
||||
<parameter type="int" name="name" default=""/>
|
||||
<parameter type="int" name="size" default=""/>
|
||||
<parameter type="int" name="availableGeometry" default=""/>
|
||||
<parameter type="int" name="number" default=""/>
|
||||
<parameter type="int" name="availableVirtualGeometry" default=""/>
|
||||
<parameter type="int" name="geometry" default=""/>
|
||||
<parameter type="int *" name="screen" default=""/>
|
||||
</function>
|
||||
<variable name="m_id" fullname="Monitor::m_id" href="monitor.html#m_id-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="80" type="int" static="false"/>
|
||||
<variable name="m_size" fullname="Monitor::m_size" href="monitor.html#m_size-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="84" type="int" static="false"/>
|
||||
<variable name="m_availableGeometry" fullname="Monitor::m_availableGeometry" href="monitor.html#m_availableGeometry-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="85" type="int" static="false"/>
|
||||
<variable name="m_number" fullname="Monitor::m_number" href="monitor.html#m_number-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="88" type="int" static="false"/>
|
||||
<variable name="m_model" fullname="Monitor::m_model" href="monitor.html#m_model-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="83" type="int" static="false"/>
|
||||
<variable name="m_isVirtualDesktop" fullname="Monitor::m_isVirtualDesktop" href="monitor.html#m_isVirtualDesktop-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="89" type="bool" static="false"/>
|
||||
<variable name="m_name" fullname="Monitor::m_name" href="monitor.html#m_name-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="81" type="int" static="false"/>
|
||||
<variable name="m_availableVirtualGeometry" fullname="Monitor::m_availableVirtualGeometry" href="monitor.html#m_availableVirtualGeometry-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="86" type="int" static="false"/>
|
||||
<variable name="m_manufacturer" fullname="Monitor::m_manufacturer" href="monitor.html#m_manufacturer-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="82" type="int" static="false"/>
|
||||
<variable name="m_geometry" fullname="Monitor::m_geometry" href="monitor.html#m_geometry-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="87" type="int" static="false"/>
|
||||
<variable name="m_isWallpaperActive" fullname="Monitor::m_isWallpaperActive" href="monitor.html#m_isWallpaperActive-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="91" type="bool" static="false"/>
|
||||
<variable name="m_wallpaperPreviewPath" fullname="Monitor::m_wallpaperPreviewPath" href="monitor.html#m_wallpaperPreviewPath-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="92" type="int" static="false"/>
|
||||
<variable name="m_screen" fullname="Monitor::m_screen" href="monitor.html#m_screen-var" status="internal" access="private" location="monitorlistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/monitorlistmodel.h" lineno="94" type="int *" static="false"/>
|
||||
</class>
|
||||
<class name="InstalledListFilter" href="installedlistfilter.html" status="internal" access="private" location="installedlistfilter.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistfilter.h" lineno="13">
|
||||
<function name="resetFilter" fullname="InstalledListFilter::resetFilter" href="installedlistfilter.html#resetFilter" status="internal" access="private" location="installedlistfilter.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistfilter.h" lineno="21" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void resetFilter()"/>
|
||||
<function name="sortByName" fullname="InstalledListFilter::sortByName" href="installedlistfilter.html#sortByName" status="internal" access="private" location="installedlistfilter.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/installedlistfilter.h" lineno="20" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void sortByName(int name)">
|
||||
<parameter type="int" name="name" default=""/>
|
||||
</function>
|
||||
</class>
|
||||
<class name="ProjectSettingsListModel" href="projectsettingslistmodel.html" status="internal" access="private" location="projectsettingslistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistmodel.h" lineno="20">
|
||||
<function name="ProjectSettingsListModel" fullname="ProjectSettingsListModel::ProjectSettingsListModel" href="projectsettingslistmodel.html#ProjectSettingsListModel" status="internal" access="private" location="projectsettingslistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistmodel.h" lineno="27" meta="constructor" virtual="non" const="false" static="false" final="false" override="false" type="" signature="ProjectSettingsListModel()"/>
|
||||
<function name="data" fullname="ProjectSettingsListModel::data" href="projectsettingslistmodel.html#data" status="internal" access="private" location="projectsettingslistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistmodel.h" lineno="29" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int data(const int &, int ) const override">
|
||||
<parameter type="const int &" name="" default=""/>
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="roleNames" fullname="ProjectSettingsListModel::roleNames" href="projectsettingslistmodel.html#roleNames" status="internal" access="private" location="projectsettingslistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistmodel.h" lineno="30" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int roleNames() const override"/>
|
||||
<function name="rowCount" fullname="ProjectSettingsListModel::rowCount" href="projectsettingslistmodel.html#rowCount" status="internal" access="private" location="projectsettingslistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistmodel.h" lineno="28" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int rowCount(const int &parent) const override">
|
||||
<parameter type="const int &" name="parent" default="..."/>
|
||||
</function>
|
||||
<variable name="m_projectSettings" fullname="ProjectSettingsListModel::m_projectSettings" href="projectsettingslistmodel.html#m_projectSettings-var" status="internal" access="private" location="projectsettingslistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistmodel.h" lineno="46" type="int" static="false"/>
|
||||
<enum name="ProjectSettingsRole" fullname="ProjectSettingsListModel::ProjectSettingsRole" href="projectsettingslistmodel.html#ProjectSettingsRole-enum" status="internal" access="private" location="projectsettingslistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/projectsettingslistmodel.h" lineno="32">
|
||||
<value name="NameRole" value="0"/>
|
||||
<value name="IsHeadlineRole" value="1"/>
|
||||
<value name="ValueRole" value="2"/>
|
||||
</enum>
|
||||
</class>
|
||||
<class name="ScreenPlayWallpaper" href="screenplaywallpaper.html" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="61">
|
||||
<function name="Q_PROPERTY" fullname="ScreenPlayWallpaper::Q_PROPERTY" href="screenplaywallpaper.html#Q_PROPERTY" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="64" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="int" signature="int Q_PROPERTY(int )">
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="appID" fullname="ScreenPlayWallpaper::appID" href="screenplaywallpaper.html#appID" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="125" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="int" signature="int appID() const"/>
|
||||
<function name="appIDChanged" fullname="ScreenPlayWallpaper::appIDChanged" href="screenplaywallpaper.html#appIDChanged" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="140" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void appIDChanged(int appID)">
|
||||
<parameter type="int" name="appID" default=""/>
|
||||
</function>
|
||||
<function name="previewImage" fullname="ScreenPlayWallpaper::previewImage" href="screenplaywallpaper.html#previewImage" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="120" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="int" signature="int previewImage() const"/>
|
||||
<function name="previewImageChanged" fullname="ScreenPlayWallpaper::previewImageChanged" href="screenplaywallpaper.html#previewImageChanged" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="138" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void previewImageChanged(int previewImage)">
|
||||
<parameter type="int" name="previewImage" default=""/>
|
||||
</function>
|
||||
<function name="projectPath" fullname="ScreenPlayWallpaper::projectPath" href="screenplaywallpaper.html#projectPath" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="115" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="int" signature="int projectPath() const"/>
|
||||
<function name="projectPathChanged" fullname="ScreenPlayWallpaper::projectPathChanged" href="screenplaywallpaper.html#projectPathChanged" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="137" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void projectPathChanged(int projectPath)">
|
||||
<parameter type="int" name="projectPath" default=""/>
|
||||
</function>
|
||||
<function name="projectSettingsListModelAt" fullname="ScreenPlayWallpaper::projectSettingsListModelAt" href="screenplaywallpaper.html#projectSettingsListModelAt" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="139" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void projectSettingsListModelAt(ProjectSettingsListModel *li)">
|
||||
<parameter type="ProjectSettingsListModel *" name="li" default=""/>
|
||||
</function>
|
||||
<function name="screenNumber" fullname="ScreenPlayWallpaper::screenNumber" href="screenplaywallpaper.html#screenNumber" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="110" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="int" signature="int screenNumber() const"/>
|
||||
<function name="type" fullname="ScreenPlayWallpaper::type" href="screenplaywallpaper.html#type" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="130" meta="plain" virtual="non" const="true" static="false" final="false" override="false" type="int" signature="int type() const"/>
|
||||
<function name="typeChanged" fullname="ScreenPlayWallpaper::typeChanged" href="screenplaywallpaper.html#typeChanged" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="141" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void typeChanged(int type)">
|
||||
<parameter type="int" name="type" default=""/>
|
||||
</function>
|
||||
<variable name="m_previewImage" fullname="ScreenPlayWallpaper::m_previewImage" href="screenplaywallpaper.html#m_previewImage-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="193" type="int" static="false"/>
|
||||
<variable name="m_appID" fullname="ScreenPlayWallpaper::m_appID" href="screenplaywallpaper.html#m_appID-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="198" type="int" static="false"/>
|
||||
<variable name="m_type" fullname="ScreenPlayWallpaper::m_type" href="screenplaywallpaper.html#m_type-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="199" type="int" static="false"/>
|
||||
<variable name="m_projectPath" fullname="ScreenPlayWallpaper::m_projectPath" href="screenplaywallpaper.html#m_projectPath-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="192" type="int" static="false"/>
|
||||
<variable name="m_projectSettingsListModel" fullname="ScreenPlayWallpaper::m_projectSettingsListModel" href="screenplaywallpaper.html#m_projectSettingsListModel-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="196" type="int" static="false"/>
|
||||
<variable name="m_process" fullname="ScreenPlayWallpaper::m_process" href="screenplaywallpaper.html#m_process-var" status="internal" access="private" location="screenplay.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/screenplay.h" lineno="194" type="int *" static="false"/>
|
||||
</class>
|
||||
<qmlclass name="Background" qml-module-name="Background" href="qml-background.html" status="internal" access="private" location="Background.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Background.qml" lineno="6" title="Background" fulltitle="Background" subtitle="">
|
||||
<qmlproperty name="myDate" fullname="Background::myDate" href="qml-background.html#myDate-prop" status="internal" access="private" location="Background.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Background.qml" lineno="23" type="var" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="ImageSelector" qml-module-name="ImageSelector" href="qml-imageselector.html" status="active" access="public" since="ScreenPlay 0.2" title="ImageSelector" fulltitle="ImageSelector" subtitle="" brief="A image selector with popup preview">
|
||||
<contents name="example-usage" title="Example Usage" level="1"/>
|
||||
<qmlproperty name="imageSource" fullname="ImageSelector::imageSource" href="qml-imageselector.html#imageSource-prop" status="active" access="public" type="string" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<qmlclass name="Tag" qml-module-name="Tag" href="qml-tag.html" status="internal" access="private" location="Tag.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Common/Tag.qml" lineno="5" title="Tag" fulltitle="Tag" subtitle="">
|
||||
<function name="removeThis" fullname="Tag::removeThis" href="qml-tag.html#removeThis-signal" status="internal" access="private" location="Tag.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Common/Tag.qml" lineno="12" meta="qmlsignal"/>
|
||||
<qmlproperty name="itemIndex" fullname="Tag::itemIndex" href="qml-tag.html#itemIndex-prop" status="internal" access="private" location="Tag.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Common/Tag.qml" lineno="10" type="int" attached="false" writable="true"/>
|
||||
<qmlproperty name="text" fullname="Tag::text" href="qml-tag.html#text-prop" status="internal" access="private" location="Tag.qml" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/qml/Common/Tag.qml" lineno="11" type="alias" attached="false" writable="true"/>
|
||||
</qmlclass>
|
||||
<class name="ProfileListModel" href="profilelistmodel.html" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="23">
|
||||
<function name="data" fullname="ProfileListModel::data" href="profilelistmodel.html#data" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="36" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int data(const int &, int ) const override">
|
||||
<parameter type="const int &" name="" default=""/>
|
||||
<parameter type="int" name="" default=""/>
|
||||
</function>
|
||||
<function name="getProfileByName" fullname="ProfileListModel::getProfileByName" href="profilelistmodel.html#getProfileByName" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="39" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="bool" signature="bool getProfileByName(int id, Profile *profile)">
|
||||
<parameter type="int" name="id" default=""/>
|
||||
<parameter type="Profile *" name="profile" default=""/>
|
||||
</function>
|
||||
<function name="loadProfiles" fullname="ProfileListModel::loadProfiles" href="profilelistmodel.html#loadProfiles" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="38" meta="plain" virtual="non" const="false" static="false" final="false" override="false" type="void" signature="void loadProfiles()"/>
|
||||
<function name="roleNames" fullname="ProfileListModel::roleNames" href="profilelistmodel.html#roleNames" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="37" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int roleNames() const override"/>
|
||||
<function name="rowCount" fullname="ProfileListModel::rowCount" href="profilelistmodel.html#rowCount" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="35" meta="plain" virtual="non" const="true" static="false" final="false" override="true" type="int" signature="int rowCount(const int &parent) const override">
|
||||
<parameter type="const int &" name="parent" default="..."/>
|
||||
</function>
|
||||
<enum name="RoleNames" fullname="ProfileListModel::RoleNames" href="profilelistmodel.html#RoleNames-enum" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="29">
|
||||
<value name="NameRole" value="0"/>
|
||||
<value name="NumberRole" value="1"/>
|
||||
</enum>
|
||||
<variable name="m_localStoragePath" fullname="ProfileListModel::m_localStoragePath" href="profilelistmodel.html#m_localStoragePath-var" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="40" type="int" static="false"/>
|
||||
<variable name="m_roleNames" fullname="ProfileListModel::m_roleNames" href="profilelistmodel.html#m_roleNames-var" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="43" type="int" static="false"/>
|
||||
<variable name="m_profileList" fullname="ProfileListModel::m_profileList" href="profilelistmodel.html#m_profileList-var" status="internal" access="private" location="profilelistmodel.h" filepath="C:/Users/Eli/Code/Qt/ScreenPlayInternal/ScreenPlay/ScreenPlay/src/profilelistmodel.h" lineno="44" type="int" static="false"/>
|
||||
</class>
|
||||
<qmlmodule name=""Common"" qml-module-name=""Common"" qml-module-version="." href="common-qmlmodule.html" status="internal" seen="false" title="" members="ImageSelector"/>
|
||||
</namespace>
|
||||
</INDEX>
|
BIN
ScreenPlay/docs/html/images/ImageSelectorPreview.png
Normal file
BIN
ScreenPlay/docs/html/images/ImageSelectorPreview.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
19
ScreenPlay/docs/html/qml-imageselector-members.html
Normal file
19
ScreenPlay/docs/html/qml-imageselector-members.html
Normal file
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<!-- ImageSelector.qml -->
|
||||
<title>List of All Members for ImageSelector | Qt </title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/style.css"/>
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fullwidth nav"><p class="logo">ScreenPlay Code Docs</p></div>
|
||||
<div class="wrapper container">
|
||||
<div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div>
|
||||
<h1 class="title">List of All Members for ImageSelector</h1>
|
||||
<p>This is the complete list of members for <a href="qml-imageselector.html">ImageSelector</a>, including inherited members.</p>
|
||||
<hr/><p class="footer center">Copyright Aimber GBR</p>
|
||||
</div></body>
|
||||
</html>
|
45
ScreenPlay/docs/html/qml-imageselector.html
Normal file
45
ScreenPlay/docs/html/qml-imageselector.html
Normal file
@ -0,0 +1,45 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<!-- ImageSelector.qml -->
|
||||
<title>ImageSelector QML Type | Qt </title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/style.css"/>
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fullwidth nav"><p class="logo">ScreenPlay Code Docs</p></div>
|
||||
<div class="wrapper container">
|
||||
<div class="sidebar">
|
||||
<div class="toc">
|
||||
<h3><a name="toc">Contents</a></h3>
|
||||
<ul>
|
||||
<li class="level1"><a href="#details">Detailed Description</a></li>
|
||||
<li class="level2"><a href="#setting-default-text-and-capitalization">Setting default text and capitalization</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sidebar-content" id="sidebar-content"></div></div>
|
||||
<h1 class="title">ImageSelector QML Type</h1>
|
||||
<span class="subtitle"></span>
|
||||
<!-- $$$ImageSelector-brief -->
|
||||
<p>A image selector with popup preview. <a href="#details">More...</a></p>
|
||||
<!-- @@@ImageSelector -->
|
||||
<div class="table"><table class="alignedsummary">
|
||||
<tr><td class="memItemLeft rightAlign topAlign"> Import Statement:</td><td class="memItemRight bottomAlign"> import </td></tr></table></div><ul>
|
||||
<li><a href="qml-imageselector-members.html">List of all members, including inherited members</a></li>
|
||||
</ul>
|
||||
<!-- $$$ImageSelector-description -->
|
||||
<a name="details"></a>
|
||||
<h2 id="details">Detailed Description</h2>
|
||||
<p>Test</p>
|
||||
<p class="centerAlign"><img src="images/ImageSelectorPreview.png" alt="" /></p><a name="setting-default-text-and-capitalization"></a>
|
||||
<h2 id="setting-default-text-and-capitalization">Setting default text and capitalization</h2>
|
||||
<p>Test</p>
|
||||
<pre class="qml"><span class="type"><a href="qml-imageselector.html">ImageSelector</a></span> {
|
||||
|
||||
}</pre>
|
||||
<!-- @@@ImageSelector -->
|
||||
<hr/><p class="footer center">Copyright Aimber GBR</p>
|
||||
</div></body>
|
||||
</html>
|
BIN
ScreenPlay/docs/images/ImageSelectorPreview.png
Normal file
BIN
ScreenPlay/docs/images/ImageSelectorPreview.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
48
ScreenPlay/docs/index.html
Normal file
48
ScreenPlay/docs/index.html
Normal file
@ -0,0 +1,48 @@
|
||||
|
||||
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<!-- ImageSelector.qml -->
|
||||
<title>ImageSelector QML Type | Qt </title>
|
||||
<link rel="stylesheet" type="text/css" href="css/style.css"/>
|
||||
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"/>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fullwidth nav">
|
||||
<div class="container navWrapper"><span class="logo">ScreenPlay Code Docs </span>
|
||||
<span class="navHome"><a href= "index.html">Home</a></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wrapper container">
|
||||
<h2>C++</h2>
|
||||
<hr/>
|
||||
<ul>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>QML</h2>
|
||||
<hr/>
|
||||
|
||||
<ul>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
<li><a href="html/qml-imageselector.html">Image Selector</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
<hr/>
|
||||
<p class="footer center">Copyright Aimber GBR</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -30,7 +30,6 @@ int main(int argc, char* argv[])
|
||||
QGuiApplication::setApplicationVersion("0.2.0");
|
||||
|
||||
QGuiApplication app(argc, argv);
|
||||
|
||||
app.setQuitOnLastWindowClosed(false);
|
||||
app.setWindowIcon(QIcon(":/assets/icons/favicon.ico"));
|
||||
|
||||
@ -54,6 +53,7 @@ int main(int argc, char* argv[])
|
||||
ProfileListModel profileListModel;
|
||||
SDKConnector sdkConnector;
|
||||
|
||||
|
||||
// Create settings in the end because for now it depends on
|
||||
// such things as the profile list model to complete
|
||||
// It will also set the m_absoluteStoragePath in profileListModel and installedListModel
|
||||
|
191
ScreenPlay/qml/Common/ImageSelector.qml
Normal file
191
ScreenPlay/qml/Common/ImageSelector.qml
Normal file
@ -0,0 +1,191 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls 2.12
|
||||
import QtQuick.Controls.Material 2.12
|
||||
import Qt.labs.platform 1.1
|
||||
|
||||
/*!
|
||||
\qmltype Image Selector
|
||||
\brief A image selector with popup preview.
|
||||
|
||||
Test
|
||||
|
||||
\image ImageSelectorPreview.png
|
||||
|
||||
\section1 Setting default text and capitalization
|
||||
|
||||
Test
|
||||
|
||||
\qml
|
||||
ImageSelector {
|
||||
|
||||
}
|
||||
\endqml
|
||||
|
||||
*/
|
||||
|
||||
Item {
|
||||
id: imageSelector
|
||||
height: 70
|
||||
width: parent.width
|
||||
state: "nothingSelected"
|
||||
|
||||
property string imageSource
|
||||
|
||||
|
||||
onImageSourceChanged: {
|
||||
if (imageSource === "") {
|
||||
img.source = ""
|
||||
txtName.text = ""
|
||||
imageSelector.state = "nothingSelected"
|
||||
} else {
|
||||
img.source = imageSource
|
||||
imageSelector.state = "imageSelected"
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: rectangle
|
||||
color: "#F0F0F0"
|
||||
radius: 3
|
||||
clip: true
|
||||
anchors {
|
||||
fill: parent
|
||||
margins: 3
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: imgWrapper
|
||||
width: 70
|
||||
radius: 3
|
||||
clip: true
|
||||
color: Material.color(Material.Grey, Material.Shade700)
|
||||
anchors {
|
||||
top: parent.top
|
||||
left: parent.left
|
||||
bottom: parent.bottom
|
||||
margins: 10
|
||||
}
|
||||
|
||||
Image {
|
||||
id: img
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
cursorShape: Qt.PointingHandCursor
|
||||
onClicked: {
|
||||
if (imageSource !== "") {
|
||||
popup.open()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Popup {
|
||||
id: popup
|
||||
width: 902
|
||||
anchors.centerIn: Overlay.overlay
|
||||
height: 507
|
||||
Image {
|
||||
source: imageSource
|
||||
anchors.fill: parent
|
||||
}
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
cursorShape: Qt.PointingHandCursor
|
||||
onClicked: popup.close()
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
id: txtName
|
||||
clip: true
|
||||
font.pointSize: 12
|
||||
font.family: "Roboto"
|
||||
wrapMode: Text.WordWrap
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
anchors {
|
||||
top: parent.top
|
||||
left: imgWrapper.right
|
||||
right: btnClear.left
|
||||
bottom: parent.bottom
|
||||
margins: 10
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
id: btnClear
|
||||
text: qsTr("Clear")
|
||||
Material.background: Material.Grey
|
||||
Material.foreground: "white"
|
||||
anchors {
|
||||
top: parent.top
|
||||
right: btnOpen.left
|
||||
bottom: parent.bottom
|
||||
margins: 5
|
||||
}
|
||||
onClicked: imageSource = ""
|
||||
}
|
||||
|
||||
Button {
|
||||
id: btnOpen
|
||||
text: qsTr("Open Image")
|
||||
Material.background: Material.Orange
|
||||
Material.foreground: "white"
|
||||
anchors {
|
||||
top: parent.top
|
||||
right: parent.right
|
||||
rightMargin: 10
|
||||
bottom: parent.bottom
|
||||
margins: 5
|
||||
}
|
||||
onClicked: fileDialog.open()
|
||||
}
|
||||
FileDialog {
|
||||
id: fileDialog
|
||||
title: "Please choose a file"
|
||||
fileMode: FileDialog.OpenFile
|
||||
nameFilters: []
|
||||
onAccepted: {
|
||||
imageSource = fileDialog.file
|
||||
txtName.text = fileDialog.file.toString().replace(/^.*[\\\/]/,
|
||||
'')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
states: [
|
||||
State {
|
||||
name: "imageSelected"
|
||||
PropertyChanges {
|
||||
target: btnClear
|
||||
opacity: 1
|
||||
anchors.topMargin: 5
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "nothingSelected"
|
||||
PropertyChanges {
|
||||
target: btnClear
|
||||
opacity: 0
|
||||
anchors.topMargin: -40
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
transitions: [
|
||||
Transition {
|
||||
from: "imageSelected"
|
||||
to: "nothingSelected"
|
||||
reversible: true
|
||||
PropertyAnimation {
|
||||
target: btnClear
|
||||
properties: "opacity, anchors.topMargin"
|
||||
duration: 300
|
||||
easing.type: Easing.OutQuart
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
87
ScreenPlay/qml/Common/Tag.qml
Normal file
87
ScreenPlay/qml/Common/Tag.qml
Normal file
@ -0,0 +1,87 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls 2.12
|
||||
import QtQuick.Controls.Material 2.3
|
||||
|
||||
Item {
|
||||
id: tag
|
||||
width: textMetrics.width + 20
|
||||
height: parent.height
|
||||
|
||||
property int itemIndex
|
||||
property alias text: txt.text
|
||||
signal removeThis(var index)
|
||||
|
||||
Rectangle {
|
||||
id: rectangle
|
||||
radius: 3
|
||||
|
||||
anchors.fill: parent
|
||||
|
||||
Text {
|
||||
id: txt
|
||||
text: _name
|
||||
color: Material.color(Material.Grey)
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
anchors.fill: parent
|
||||
}
|
||||
TextField {
|
||||
id: textField
|
||||
enabled: false
|
||||
opacity: 0
|
||||
anchors.fill: parent
|
||||
anchors.margins: 10
|
||||
anchors.bottomMargin: 0
|
||||
}
|
||||
|
||||
TextMetrics {
|
||||
id: textMetrics
|
||||
text: txt.text
|
||||
font.pointSize: 14
|
||||
font.family: "Roboto"
|
||||
}
|
||||
}
|
||||
MouseArea {
|
||||
id: ma
|
||||
width: 10
|
||||
height: width
|
||||
cursorShape: Qt.PointingHandCursor
|
||||
anchors {
|
||||
top: parent.top
|
||||
right: parent.right
|
||||
margins: 5
|
||||
}
|
||||
onClicked: {
|
||||
tag.removeThis(itemIndex)
|
||||
}
|
||||
|
||||
Image {
|
||||
id: name
|
||||
anchors.fill: parent
|
||||
source: "qrc:/assets/icons/icon_close.svg"
|
||||
}
|
||||
}
|
||||
|
||||
states: [
|
||||
State {
|
||||
name: "edit"
|
||||
|
||||
PropertyChanges {
|
||||
target: txt
|
||||
opacity: 0
|
||||
}
|
||||
|
||||
PropertyChanges {
|
||||
target: textField
|
||||
opacity: 1
|
||||
enabled: true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
/*##^## Designer {
|
||||
D{i:0;height:50;width:100}
|
||||
}
|
||||
##^##*/
|
||||
|
180
ScreenPlay/qml/Common/TagSelector.qml
Normal file
180
ScreenPlay/qml/Common/TagSelector.qml
Normal file
@ -0,0 +1,180 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls 2.12
|
||||
import QtGraphicalEffects 1.0
|
||||
import QtQuick.Controls.Material 2.12
|
||||
|
||||
Item {
|
||||
id: tagSelector
|
||||
height: 70
|
||||
onStateChanged: {
|
||||
if (tagSelector.state === "add") {
|
||||
btnAdd.text = qsTr("Save")
|
||||
textField.focus = true
|
||||
} else {
|
||||
btnAdd.text = qsTr("Add tag")
|
||||
}
|
||||
}
|
||||
|
||||
function getTags(){
|
||||
var array = [];
|
||||
for(var i = 0; i < listModel.count; i++) {
|
||||
array.push(listModel.get(i)._name)
|
||||
}
|
||||
return array
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: rectangle
|
||||
color: "#F0F0F0"
|
||||
radius: 3
|
||||
clip: true
|
||||
anchors {
|
||||
fill: parent
|
||||
margins: 3
|
||||
}
|
||||
|
||||
ListView {
|
||||
orientation: ListView.Horizontal
|
||||
model: listModel
|
||||
spacing: 10
|
||||
anchors {
|
||||
top: parent.top
|
||||
right: btnAdd.left
|
||||
bottom: parent.bottom
|
||||
left: parent.left
|
||||
margins: 10
|
||||
}
|
||||
|
||||
delegate: Tag {
|
||||
id: delegate
|
||||
text: _name
|
||||
itemIndex: index
|
||||
|
||||
Connections {
|
||||
target: delegate
|
||||
onRemoveThis: {
|
||||
listModel.remove(itemIndex)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ListModel {
|
||||
id: listModel
|
||||
onCountChanged: getTags()
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: textFieldWrapper
|
||||
opacity: 0
|
||||
enabled: false
|
||||
radius: 3
|
||||
height: parent.height - 20
|
||||
width: 200
|
||||
color: "#aaffffff"
|
||||
anchors {
|
||||
top: parent.top
|
||||
topMargin: -80
|
||||
right: btnCancel.left
|
||||
margins: 10
|
||||
}
|
||||
Gradient {
|
||||
GradientStop {
|
||||
position: 0.0
|
||||
color: "#00000000"
|
||||
}
|
||||
GradientStop {
|
||||
position: 1.0
|
||||
color: "#FF000000"
|
||||
}
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: textField
|
||||
anchors.fill: parent
|
||||
anchors.rightMargin: 15
|
||||
anchors.leftMargin: 15
|
||||
onTextChanged: {
|
||||
if(textField.length >= 10){
|
||||
textField.text = textField.text
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
id: btnCancel
|
||||
text: qsTr("Cancel")
|
||||
opacity: 0
|
||||
enabled: false
|
||||
Material.background: Material.Red
|
||||
Material.foreground: "white"
|
||||
anchors {
|
||||
right: btnAdd.left
|
||||
rightMargin: 10
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
onClicked: {
|
||||
tagSelector.state = ""
|
||||
textField.clear()
|
||||
}
|
||||
}
|
||||
Button {
|
||||
id: btnAdd
|
||||
text: qsTr("Add Tag")
|
||||
Material.background: Material.LightGreen
|
||||
Material.foreground: "white"
|
||||
anchors {
|
||||
right: parent.right
|
||||
rightMargin: 10
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
onClicked: {
|
||||
if (tagSelector.state === "add") {
|
||||
listModel.append({
|
||||
"_name": textField.text
|
||||
})
|
||||
textField.clear()
|
||||
tagSelector.state = ""
|
||||
} else {
|
||||
tagSelector.state = "add"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
states: [
|
||||
|
||||
State {
|
||||
name: "add"
|
||||
|
||||
PropertyChanges {
|
||||
target: textFieldWrapper
|
||||
color: "#ccffffff"
|
||||
anchors.topMargin: 10
|
||||
opacity: 1
|
||||
enabled: true
|
||||
}
|
||||
|
||||
PropertyChanges {
|
||||
target: btnCancel
|
||||
opacity: 1
|
||||
enabled: true
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: [
|
||||
Transition {
|
||||
from: ""
|
||||
to: "add"
|
||||
reversible: true
|
||||
NumberAnimation {
|
||||
properties: "anchors.topMargin, opacity"
|
||||
duration: 200
|
||||
easing.type: Easing.OutQuart
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -61,7 +61,7 @@ GridView {
|
||||
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
font.pixelSize: 32
|
||||
font.pointSize: 32
|
||||
font.family: "Roboto"
|
||||
|
||||
anchors {
|
||||
@ -140,7 +140,7 @@ GridView {
|
||||
color: "white"
|
||||
font.family: "Roboto"
|
||||
font.weight: Font.Normal
|
||||
font.pixelSize: 18
|
||||
font.pointSize: 18
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
Text {
|
||||
@ -160,7 +160,7 @@ GridView {
|
||||
font.family: "Roboto"
|
||||
|
||||
font.weight: Font.Normal
|
||||
font.pixelSize: 14
|
||||
font.pointSize: 14
|
||||
wrapMode: Text.WordWrap
|
||||
}
|
||||
MouseArea {
|
||||
|
@ -18,7 +18,7 @@ Item {
|
||||
id: txtHeadline
|
||||
text: headline
|
||||
height: 20
|
||||
font.pixelSize: 14
|
||||
font.pointSize: 14
|
||||
font.family: "Roboto"
|
||||
color: "#5D5D5D"
|
||||
|
||||
|
@ -196,7 +196,7 @@ Item {
|
||||
text: qsTr("Create wallpapers and widgets for local usage or the steam workshop!")
|
||||
font.family: "Roboto"
|
||||
|
||||
font.pixelSize: 14
|
||||
font.pointSize: 10
|
||||
color: "white"
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
|
@ -1,272 +0,0 @@
|
||||
import QtQuick 2.12
|
||||
|
||||
import QtGraphicalEffects 1.0
|
||||
import QtQuick.Controls 2.3
|
||||
import Qt.labs.platform 1.0
|
||||
import QtQuick.Controls.Material 2.2
|
||||
|
||||
Item {
|
||||
id: createImport
|
||||
anchors.fill: parent
|
||||
state: "out"
|
||||
Component.onCompleted: state = "in"
|
||||
property bool isVideoPlaying: true
|
||||
property url file
|
||||
onFileChanged: {
|
||||
|
||||
}
|
||||
|
||||
RectangularGlow {
|
||||
id: effect
|
||||
anchors {
|
||||
top: videoOutWrapper.top
|
||||
left: videoOutWrapper.left
|
||||
right: videoOutWrapper.right
|
||||
topMargin: 3
|
||||
}
|
||||
|
||||
height: videoOutWrapper.height
|
||||
width: videoOutWrapper.width
|
||||
cached: true
|
||||
z: 9
|
||||
glowRadius: 3
|
||||
spread: 0.2
|
||||
color: "black"
|
||||
opacity: 0.4
|
||||
cornerRadius: 15
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: videoOutWrapper
|
||||
width: 450
|
||||
height: 263
|
||||
z: 12
|
||||
color: "black"
|
||||
anchors {
|
||||
top: parent.top
|
||||
topMargin: 180
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
RectangularGlow {
|
||||
id: effect2
|
||||
anchors {
|
||||
top: contentWrapper.top
|
||||
left: contentWrapper.left
|
||||
right: contentWrapper.right
|
||||
topMargin: 3
|
||||
}
|
||||
|
||||
height: contentWrapper.height
|
||||
width: contentWrapper.width
|
||||
cached: true
|
||||
z: 9
|
||||
glowRadius: 3
|
||||
spread: 0.2
|
||||
color: "black"
|
||||
opacity: 0.4
|
||||
cornerRadius: 15
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: contentWrapper
|
||||
width: 800
|
||||
height: 300
|
||||
z: 10
|
||||
radius: 4
|
||||
anchors {
|
||||
top: parent.top
|
||||
topMargin: 300
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
|
||||
Item {
|
||||
id: chooseImageWrapper
|
||||
height: 60
|
||||
anchors {
|
||||
top: parent.top
|
||||
topMargin: 50
|
||||
right: parent.right
|
||||
left: parent.left
|
||||
}
|
||||
|
||||
FileDialog {
|
||||
id: fileDialogOpenPreview
|
||||
nameFilters: ["Image files (*.jpg *.png)"]
|
||||
onAccepted: {
|
||||
imgPreview.source = currentFile
|
||||
imgPreview.opacity = 1
|
||||
//currentFile
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
id: btnChooseImage
|
||||
text: qsTr("Select Image Manually")
|
||||
Material.background: Material.Orange
|
||||
Material.foreground: "white"
|
||||
icon.source: "qrc:/assets/icons/icon_folder_open.svg"
|
||||
icon.color: "white"
|
||||
icon.width: 16
|
||||
icon.height: 16
|
||||
anchors.centerIn: parent
|
||||
onClicked: fileDialogOpenPreview.open()
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
spacing: 20
|
||||
anchors {
|
||||
top: chooseImageWrapper.top
|
||||
topMargin: 50
|
||||
right: parent.right
|
||||
rightMargin: 78
|
||||
bottom: parent.bottom
|
||||
bottomMargin: 50
|
||||
left: parent.left
|
||||
leftMargin: 78
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: txtTitle
|
||||
height: 60
|
||||
width: parent.width
|
||||
selectByMouse: true
|
||||
text: qsTr("Title")
|
||||
placeholderText: "Title"
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
text: qsTr("Import Video")
|
||||
Material.background: Material.Orange
|
||||
Material.foreground: "white"
|
||||
icon.source: "qrc:/assets/icons/icon_upload.svg"
|
||||
icon.color: "white"
|
||||
icon.width: 16
|
||||
icon.height: 16
|
||||
anchors {
|
||||
bottom: parent.bottom
|
||||
bottomMargin: 10
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
onClicked: {
|
||||
|
||||
if (txtTitle.text === ""
|
||||
|| txtTitle.placeholderText === "Text") {
|
||||
txtTitle.select(0, 0)
|
||||
txtTitle.focus = true
|
||||
return
|
||||
}
|
||||
|
||||
//Check if there are any other characters than space
|
||||
if (!(/\S/.test(txtTitle.text))) {
|
||||
txtTitle.select(0, 0)
|
||||
txtTitle.focus = true
|
||||
return
|
||||
}
|
||||
|
||||
if (fileDialogOpenPreview.currentFile != "") {
|
||||
screenPlayCreate.importVideo(
|
||||
txtTitle.text.replace(/\s/g, ''), file,
|
||||
fileDialogOpenPreview.currentFile,
|
||||
player.duration)
|
||||
} else {
|
||||
screenPlayCreate.importVideo(
|
||||
txtTitle.text.replace(/\s/g, ''), file,
|
||||
player.position,
|
||||
player.duration,
|
||||
player.metaData.videoFrameRate)
|
||||
}
|
||||
player.stop()
|
||||
createImport.state = "out"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
states: [
|
||||
State {
|
||||
name: "out"
|
||||
PropertyChanges {
|
||||
target: createImport
|
||||
opacity: 0
|
||||
}
|
||||
PropertyChanges {
|
||||
target: videoOutWrapper
|
||||
z: 0
|
||||
opacity: 0
|
||||
anchors.topMargin: 50
|
||||
}
|
||||
PropertyChanges {
|
||||
target: effect
|
||||
opacity: 0
|
||||
color: "transparent"
|
||||
}
|
||||
PropertyChanges {
|
||||
target: contentWrapper
|
||||
anchors.topMargin: -500
|
||||
opacity: 0
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "in"
|
||||
PropertyChanges {
|
||||
target: createImport
|
||||
opacity: 1
|
||||
}
|
||||
|
||||
PropertyChanges {
|
||||
target: contentWrapper
|
||||
opacity: 1
|
||||
anchors.topMargin: 300
|
||||
}
|
||||
PropertyChanges {
|
||||
target: videoOutWrapper
|
||||
z: 12
|
||||
opacity: 1
|
||||
anchors.topMargin: 70
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
transitions: [
|
||||
Transition {
|
||||
from: "out"
|
||||
to: "in"
|
||||
reversible: true
|
||||
|
||||
SequentialAnimation {
|
||||
PauseAnimation {
|
||||
duration: 500
|
||||
}
|
||||
ParallelAnimation {
|
||||
PropertyAnimation {
|
||||
duration: 300
|
||||
target: contentWrapper
|
||||
property: "opacity"
|
||||
}
|
||||
PropertyAnimation {
|
||||
duration: 300
|
||||
target: contentWrapper
|
||||
property: "anchors.topMargin"
|
||||
easing.type: Easing.OutQuart
|
||||
}
|
||||
}
|
||||
ParallelAnimation {
|
||||
PropertyAnimation {
|
||||
duration: 250
|
||||
target: videoOutWrapper
|
||||
property: "opacity"
|
||||
}
|
||||
PropertyAnimation {
|
||||
duration: 250
|
||||
target: effect
|
||||
properties: "color, opacity"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -1,186 +0,0 @@
|
||||
import QtQuick 2.12
|
||||
import QtGraphicalEffects 1.0
|
||||
import QtQuick.Controls 2.3
|
||||
|
||||
// Qt Creator does not support Namespaced enums yet
|
||||
// https://bugreports.qt.io/browse/QTCREATORBUG-17850
|
||||
import LocalWorkshopCreationStatus 1.0
|
||||
|
||||
Item {
|
||||
id: createImportStatus
|
||||
anchors.fill: parent
|
||||
state: "out"
|
||||
|
||||
signal backToCreate
|
||||
signal uploadToSteamWorkshop()
|
||||
|
||||
Timer {
|
||||
repeat: false
|
||||
running: true
|
||||
interval: 300
|
||||
onTriggered: {
|
||||
createImportStatus.state = "in"
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: screenPlayCreate
|
||||
onLocalWorkshopCreationStatusChanged: {
|
||||
switch (status) {
|
||||
case LocalWorkshopCreationStatus.Started:
|
||||
txtStatus.text = "Copy video started"
|
||||
break
|
||||
case LocalWorkshopCreationStatus.CopyVideoFinished:
|
||||
txtStatus.text = "Copy Video Finished"
|
||||
break
|
||||
case LocalWorkshopCreationStatus.CopyImageFinished:
|
||||
txtStatus.text = "Copy Image Finished"
|
||||
break
|
||||
case LocalWorkshopCreationStatus.CopyConfigFinished:
|
||||
txtStatus.text = "Copy Config Finished"
|
||||
break
|
||||
case LocalWorkshopCreationStatus.ErrorCopyConfig:
|
||||
txtStatus.text = "Error Copy Config!"
|
||||
break
|
||||
case LocalWorkshopCreationStatus.Finished:
|
||||
txtStatus.text = "Success!"
|
||||
busyIndicator.running = false
|
||||
break
|
||||
default:
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
RectangularGlow {
|
||||
id: effect
|
||||
anchors {
|
||||
top: wrapper.top
|
||||
left: wrapper.left
|
||||
right: wrapper.right
|
||||
topMargin: 3
|
||||
}
|
||||
|
||||
height: wrapper.height
|
||||
width: wrapper.width
|
||||
cached: true
|
||||
glowRadius: 3
|
||||
spread: 0.2
|
||||
color: "black"
|
||||
opacity: 0.4
|
||||
cornerRadius: 15
|
||||
}
|
||||
Rectangle {
|
||||
id: wrapper
|
||||
width: 800
|
||||
height: 400
|
||||
radius: 4
|
||||
anchors {
|
||||
top: parent.top
|
||||
topMargin: 100
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
|
||||
Text {
|
||||
id: txtStatus
|
||||
height: 80
|
||||
font.family: "Roboto"
|
||||
|
||||
font.pixelSize: 24
|
||||
color: "gray"
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
anchors {
|
||||
top: busyIndicator.bottom
|
||||
topMargin: 10
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
}
|
||||
|
||||
BusyIndicator {
|
||||
id: busyIndicator
|
||||
running: true
|
||||
anchors {
|
||||
top: parent.top
|
||||
topMargin: 100
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
}
|
||||
|
||||
Row {
|
||||
id: item1
|
||||
width: 450
|
||||
height: 49
|
||||
spacing: 10
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.bottomMargin: 20
|
||||
|
||||
Button {
|
||||
id: button
|
||||
text: qsTr("Create another Wallpaper")
|
||||
onClicked: {
|
||||
backToCreate()
|
||||
createImportStatus.state = "out"
|
||||
}
|
||||
}
|
||||
Button {
|
||||
id: button2
|
||||
text: qsTr("Upload Wallpaper to Steam")
|
||||
onClicked: {
|
||||
uploadToSteamWorkshop()
|
||||
createImportStatus.state = "in"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "out"
|
||||
PropertyChanges {
|
||||
target: wrapper
|
||||
anchors.topMargin: 500
|
||||
opacity: 0
|
||||
}
|
||||
PropertyChanges {
|
||||
target: effect
|
||||
color: "transparent"
|
||||
opacity: 0
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "in"
|
||||
PropertyChanges {
|
||||
target: wrapper
|
||||
anchors.topMargin: 100
|
||||
opacity: 1
|
||||
}
|
||||
PropertyChanges {
|
||||
target: effect
|
||||
color: "black"
|
||||
opacity: 0.4
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: [
|
||||
Transition {
|
||||
from: "out"
|
||||
to: "in"
|
||||
reversible: true
|
||||
SequentialAnimation {
|
||||
NumberAnimation {
|
||||
target: wrapper
|
||||
properties: "opacity, anchors.topMargin"
|
||||
duration: 200
|
||||
easing.type: Easing.OutQuart
|
||||
}
|
||||
NumberAnimation {
|
||||
target: effect
|
||||
properties: "opacity, color"
|
||||
duration: 200
|
||||
easing.type: Easing.OutQuart
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -5,7 +5,7 @@ import Qt.labs.platform 1.0
|
||||
import QtQuick.Controls.Material 2.2
|
||||
import QtQuick.Controls.Styles 1.4
|
||||
import QtQuick.Layouts 1.3
|
||||
import RemoteWorkshopCreationStatus 1.0
|
||||
//import RemoteWorkshopCreationStatus 1.0
|
||||
|
||||
|
||||
Item {
|
||||
@ -305,7 +305,7 @@ Item {
|
||||
Text {
|
||||
id: txtUploadSize
|
||||
color: "gray"
|
||||
font.pixelSize: 16
|
||||
font.pointSize: 14
|
||||
height: 30
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
@ -319,7 +319,7 @@ Item {
|
||||
id: txtUploadStatus
|
||||
text: qsTr("Creating Workshop Item")
|
||||
color: "gray"
|
||||
font.pixelSize: 16
|
||||
font.pointSize: 12
|
||||
height: 30
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
|
@ -28,7 +28,7 @@ Item {
|
||||
}
|
||||
|
||||
color: "white"
|
||||
font.pixelSize: 28
|
||||
font.pointSize: 21
|
||||
|
||||
font.family: "Roboto"
|
||||
font.weight: Font.Thin
|
||||
|
@ -19,7 +19,7 @@ Item {
|
||||
}
|
||||
|
||||
color: "white"
|
||||
font.pixelSize: 28
|
||||
font.pointSize: 21
|
||||
|
||||
font.family: "Roboto"
|
||||
font.weight: Font.Thin
|
||||
@ -53,12 +53,14 @@ Item {
|
||||
text: qsTr("Examples Widgets and Scenes")
|
||||
font.family: "Roboto"
|
||||
|
||||
font.pixelSize: 18
|
||||
font.pointSize: 16
|
||||
color: "white"
|
||||
|
||||
anchors {
|
||||
top: btnCreateEmptyWidget.bottom
|
||||
topMargin: 30
|
||||
left:parent.left
|
||||
leftMargin: 30
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -68,8 +68,8 @@ Item {
|
||||
id: name
|
||||
text: btnEmpty.text
|
||||
font.family: "Roboto"
|
||||
|
||||
font.pixelSize: 18
|
||||
|
||||
font.pointSize: 14
|
||||
color: "gray"
|
||||
anchors {
|
||||
left: imgIcon.right
|
||||
@ -81,8 +81,8 @@ Item {
|
||||
|
||||
text: ">"
|
||||
font.family: "Roboto"
|
||||
|
||||
font.pixelSize: 24
|
||||
|
||||
font.pointSize: 18
|
||||
color: "#b9b9b9"
|
||||
anchors {
|
||||
right: parent.right
|
||||
|
@ -9,7 +9,7 @@ import net.aimber.create 1.0
|
||||
Item {
|
||||
id: wrapperError
|
||||
opacity: 0
|
||||
|
||||
|
||||
Text {
|
||||
id: txtErrorHeadline
|
||||
text: qsTr("An error occurred!")
|
||||
@ -22,10 +22,9 @@ Item {
|
||||
font.family: "Segoe UI, Roboto"
|
||||
font.weight: Font.Light
|
||||
color: Material.color(Material.Red)
|
||||
|
||||
font.pixelSize: 32
|
||||
font.pointSize: 32
|
||||
}
|
||||
|
||||
|
||||
Rectangle {
|
||||
id: rectangle1
|
||||
color: "#eeeeee"
|
||||
@ -38,7 +37,7 @@ Item {
|
||||
margins: 30
|
||||
bottomMargin: 10
|
||||
}
|
||||
|
||||
|
||||
Flickable {
|
||||
anchors.fill: parent
|
||||
clip: true
|
||||
@ -57,7 +56,7 @@ Item {
|
||||
}
|
||||
wrapMode: Text.WordWrap
|
||||
color: "#626262"
|
||||
|
||||
|
||||
height: txtFFMPEGDebug.paintedHeight
|
||||
}
|
||||
Connections {
|
||||
@ -68,7 +67,7 @@ Item {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Button {
|
||||
id: btnBack
|
||||
text: qsTr("Back to create and send an error report!")
|
||||
@ -84,4 +83,22 @@ Item {
|
||||
utility.setNavigation("Create")
|
||||
}
|
||||
}
|
||||
states: [
|
||||
State {
|
||||
name: "error"
|
||||
|
||||
PropertyChanges {
|
||||
target: txtFFMPEGDebug
|
||||
text: "Error!"
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "success"
|
||||
|
||||
PropertyChanges {
|
||||
target: txtFFMPEGDebug
|
||||
text: "Success!"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -1,58 +0,0 @@
|
||||
import QtQuick 2.12
|
||||
import QtGraphicalEffects 1.0
|
||||
import QtQuick.Controls 2.2
|
||||
import QtQuick.Controls.Material 2.3
|
||||
import Qt.labs.platform 1.0
|
||||
import QtQuick.Layouts 1.3
|
||||
import net.aimber.create 1.0
|
||||
|
||||
Item {
|
||||
id: wrapperSuccess
|
||||
opacity: 0
|
||||
|
||||
Text {
|
||||
id: txtSuccessHeadline
|
||||
text: qsTr("Video creation success!")
|
||||
anchors {
|
||||
top: parent.top
|
||||
topMargin: 30
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
height: 40
|
||||
font.family: "Segoe UI, Roboto"
|
||||
font.weight: Font.Light
|
||||
color: Material.color(Material.Green)
|
||||
|
||||
font.pixelSize: 32
|
||||
}
|
||||
|
||||
AnimatedImage {
|
||||
id: imgSuccess
|
||||
asynchronous: true
|
||||
playing: true
|
||||
anchors.centerIn: parent
|
||||
width: 600
|
||||
height: 400
|
||||
}
|
||||
|
||||
Button {
|
||||
id: btnSuccessBack
|
||||
text: qsTr("Back to create!")
|
||||
Material.background: Material.Orange
|
||||
Material.foreground: "white"
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
bottom: parent.bottom
|
||||
margins: 10
|
||||
}
|
||||
onClicked: {
|
||||
utility.setNavigationActive(true)
|
||||
utility.setNavigation("Create")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*##^## Designer {
|
||||
D{i:0;autoSize:true;height:768;width:1366}
|
||||
}
|
||||
##^##*/
|
@ -1,245 +0,0 @@
|
||||
import QtQuick 2.12
|
||||
import QtGraphicalEffects 1.0
|
||||
import QtQuick.Controls 2.2
|
||||
import QtQuick.Controls.Material 2.3
|
||||
import Qt.labs.platform 1.0
|
||||
import QtQuick.Layouts 1.3
|
||||
import net.aimber.create 1.0
|
||||
|
||||
Item {
|
||||
id: wrapperContent
|
||||
Text {
|
||||
id: txtHeadline
|
||||
text: qsTr("Import a video to a wallpaper")
|
||||
height: 40
|
||||
font.family: "Roboto"
|
||||
font.weight: Font.Light
|
||||
color: "#757575"
|
||||
|
||||
font.pixelSize: 23
|
||||
anchors {
|
||||
top: parent.top
|
||||
left: parent.left
|
||||
margins: 40
|
||||
bottomMargin: 0
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
id: wrapperLeft
|
||||
width: parent.width * .5
|
||||
anchors {
|
||||
left: parent.left
|
||||
top: txtHeadline.bottom
|
||||
margins: 30
|
||||
bottom: parent.bottom
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: imgWrapper
|
||||
width: 425
|
||||
height: 247
|
||||
anchors {
|
||||
top: parent.top
|
||||
left: parent.left
|
||||
}
|
||||
|
||||
color: Material.color(Material.Grey)
|
||||
|
||||
AnimatedImage {
|
||||
id: imgPreview
|
||||
asynchronous: true
|
||||
playing: true
|
||||
visible: false
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
BusyIndicator {
|
||||
id: busyIndicator
|
||||
anchors.centerIn: parent
|
||||
running: true
|
||||
}
|
||||
|
||||
Text {
|
||||
id: txtConvertNumber
|
||||
color: "white"
|
||||
text: qsTr("")
|
||||
font.pixelSize: 21
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
bottom: parent.bottom
|
||||
bottomMargin: 40
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
id: txtConvert
|
||||
color: "white"
|
||||
text: qsTr("Generating preview video...")
|
||||
font.pixelSize: 14
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
bottom: parent.bottom
|
||||
bottomMargin: 20
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
RowLayout {
|
||||
id: row
|
||||
height: 50
|
||||
anchors {
|
||||
top: imgWrapper.bottom
|
||||
topMargin: 20
|
||||
|
||||
right: parent.right
|
||||
rightMargin: 30
|
||||
left: parent.left
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
height: 50
|
||||
color: "#eeeeee"
|
||||
Layout.fillWidth: true
|
||||
|
||||
Text {
|
||||
id: txtCustomPreviewPath
|
||||
color: "#333333"
|
||||
text: qsTr("Add custom preview image")
|
||||
anchors {
|
||||
verticalCenter: parent.verticalCenter
|
||||
left: parent.left
|
||||
leftMargin: 10
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
id: button
|
||||
Material.background: Material.Orange
|
||||
Material.foreground: "white"
|
||||
text: qsTr("Choose Image")
|
||||
anchors {
|
||||
right: parent.right
|
||||
rightMargin: 10
|
||||
}
|
||||
onClicked: fileDialogOpenFile.open()
|
||||
}
|
||||
|
||||
|
||||
FileDialog {
|
||||
id: fileDialogOpenFile
|
||||
nameFilters: ["*.png *.jpg"]
|
||||
onAccepted: {
|
||||
var file = fileDialogOpenFile.file.toString()
|
||||
|
||||
txtCustomPreviewPath.text = fileDialogOpenFile.file
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Item {
|
||||
id: wrapperRight
|
||||
width: parent.width * .5
|
||||
anchors {
|
||||
top: txtHeadline.bottom
|
||||
topMargin: 30
|
||||
bottom: parent.bottom
|
||||
right: parent.right
|
||||
}
|
||||
|
||||
ColumnLayout {
|
||||
id: column
|
||||
spacing: 0
|
||||
anchors {
|
||||
|
||||
right: parent.right
|
||||
left: parent.left
|
||||
margins: 30
|
||||
top:parent.top
|
||||
topMargin: 0
|
||||
bottom: column1.top
|
||||
bottomMargin: 50
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: textField
|
||||
placeholderText: qsTr("Name")
|
||||
width:parent.width
|
||||
Layout.fillWidth: true
|
||||
onTextChanged: {
|
||||
if (textField.text.length >= 3) {
|
||||
canNext = true
|
||||
} else {
|
||||
canNext = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: textField1
|
||||
placeholderText: qsTr("Description")
|
||||
width:parent.width
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: textField2
|
||||
placeholderText: qsTr("Youtube URL")
|
||||
width:parent.width
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: textField3
|
||||
width:parent.width
|
||||
placeholderText: qsTr("Tags")
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
}
|
||||
|
||||
Row {
|
||||
id: column1
|
||||
height: 80
|
||||
width: childrenRect.width
|
||||
spacing: 10
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
bottom: parent.bottom
|
||||
}
|
||||
|
||||
Button {
|
||||
id: btnExit
|
||||
text: qsTr("Abort")
|
||||
Material.background: Material.Gray
|
||||
Material.foreground: "white"
|
||||
onClicked: {
|
||||
screenPlayCreate.abort()
|
||||
utility.setNavigationActive(true)
|
||||
utility.setNavigation("Create")
|
||||
}
|
||||
}
|
||||
|
||||
NextButton {
|
||||
id: btnFinish
|
||||
onClicked: {
|
||||
if (btnFinish.state === "enabled" && canNext) {
|
||||
screenPlayCreate.createWallpaperProjectFile(
|
||||
textField.text, textField1.text)
|
||||
utility.setNavigationActive(true)
|
||||
createNew.state = "success"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: screenPlayCreate
|
||||
onCreateWallpaperStateChanged: {
|
||||
if (state === Create.State.ConvertingVideoFinished) {
|
||||
btnFinish.state = "enabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -3,11 +3,74 @@ import QtGraphicalEffects 1.0
|
||||
import QtQuick.Controls 2.2
|
||||
import QtQuick.Controls.Material 2.3
|
||||
import Qt.labs.platform 1.0
|
||||
import QtQuick.Layouts 1.3
|
||||
import QtQuick.Layouts 1.12
|
||||
|
||||
import net.aimber.create 1.0
|
||||
|
||||
import "../../../Common"
|
||||
|
||||
Item {
|
||||
id: wrapperContent
|
||||
|
||||
property bool conversionFinishedSuccessful: false
|
||||
property bool canSave: false
|
||||
property string filePath
|
||||
onCanSaveChanged: wrapperContent.checkCanSave()
|
||||
signal save
|
||||
|
||||
function checkCanSave() {
|
||||
if (canSave && conversionFinishedSuccessful) {
|
||||
btnSave.enabled = true
|
||||
} else {
|
||||
btnSave.enabled = false
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: screenPlayCreate
|
||||
|
||||
onCreateWallpaperStateChanged: {
|
||||
if (state === CreateImportVideo.State.ConvertingPreviewImageFinished) {
|
||||
imgPreview.source = "file:///" + screenPlayCreate.workingDir + "/preview.png"
|
||||
imgPreview.visible = true
|
||||
txtConvert.text = qsTr("Converting Video preview mp4")
|
||||
}
|
||||
|
||||
if (state === CreateImportVideo.State.ConvertingPreviewVideo) {
|
||||
txtConvert.text = qsTr("Generating preview video...")
|
||||
}
|
||||
|
||||
if (state === CreateImportVideo.State.ConvertingPreviewGif) {
|
||||
txtConvert.text = qsTr("Generating preview gif...")
|
||||
}
|
||||
|
||||
if (state === CreateImportVideo.State.ConvertingPreviewGifFinished) {
|
||||
imgPreview.source = "file:///" + screenPlayCreate.workingDir + "/preview.gif"
|
||||
imgPreview.visible = true
|
||||
imgPreview.playing = true
|
||||
}
|
||||
if (state === CreateImportVideo.State.ConvertingAudio) {
|
||||
txtConvert.text = qsTr("Converting Audio...")
|
||||
}
|
||||
if (state === CreateImportVideo.State.ConvertingVideo) {
|
||||
txtConvert.text = qsTr("Converting Video...")
|
||||
}
|
||||
|
||||
if (state === CreateImportVideo.State.Finished) {
|
||||
txtConvert.text = ""
|
||||
conversionFinishedSuccessful = true
|
||||
busyIndicator.running = false
|
||||
wrapperContent.checkCanSave()
|
||||
}
|
||||
}
|
||||
onProgressChanged: {
|
||||
var percentage = Math.floor(progress * 100)
|
||||
if (percentage > 100)
|
||||
percentage = 100
|
||||
txtConvertNumber.text = percentage + "%"
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
id: txtHeadline
|
||||
text: qsTr("Convert a video to a wallpaper")
|
||||
@ -16,7 +79,7 @@ Item {
|
||||
font.weight: Font.Light
|
||||
color: "#757575"
|
||||
|
||||
font.pixelSize: 23
|
||||
font.pointSize: 23
|
||||
anchors {
|
||||
top: parent.top
|
||||
left: parent.left
|
||||
@ -24,7 +87,7 @@ Item {
|
||||
bottomMargin: 0
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Item {
|
||||
id: wrapperLeft
|
||||
width: parent.width * .5
|
||||
@ -34,18 +97,17 @@ Item {
|
||||
margins: 30
|
||||
bottom: parent.bottom
|
||||
}
|
||||
|
||||
|
||||
Rectangle {
|
||||
id: imgWrapper
|
||||
width: 425
|
||||
height: 247
|
||||
color: Material.color(Material.Grey)
|
||||
anchors {
|
||||
top: parent.top
|
||||
left: parent.left
|
||||
}
|
||||
|
||||
color: Material.color(Material.Grey)
|
||||
|
||||
|
||||
AnimatedImage {
|
||||
id: imgPreview
|
||||
asynchronous: true
|
||||
@ -53,136 +115,47 @@ Item {
|
||||
visible: false
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
|
||||
BusyIndicator {
|
||||
id: busyIndicator
|
||||
anchors.centerIn: parent
|
||||
running: true
|
||||
}
|
||||
|
||||
|
||||
Text {
|
||||
id: txtConvertNumber
|
||||
color: "white"
|
||||
text: qsTr("")
|
||||
font.pixelSize: 21
|
||||
font.pointSize: 21
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
bottom: parent.bottom
|
||||
bottomMargin: 40
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Text {
|
||||
id: txtConvert
|
||||
color: "white"
|
||||
text: qsTr("Generating preview video...")
|
||||
font.pixelSize: 14
|
||||
font.pointSize: 14
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
bottom: parent.bottom
|
||||
bottomMargin: 20
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: screenPlayCreate
|
||||
|
||||
onCreateWallpaperStateChanged: {
|
||||
if (state === Create.State.ConvertingPreviewImageFinished) {
|
||||
imgPreview.source = "file:///"
|
||||
+ screenPlayCreate.workingDir + "/preview.png"
|
||||
imgPreview.visible = true
|
||||
txtConvert.text = qsTr(
|
||||
"Converting Video preview mp4")
|
||||
}
|
||||
|
||||
if (state === Create.State.ConvertingPreviewVideo) {
|
||||
txtConvert.text = qsTr(
|
||||
"Generating preview video...")
|
||||
}
|
||||
|
||||
if (state === Create.State.ConvertingPreviewGif) {
|
||||
txtConvert.text = qsTr(
|
||||
"Generating preview gif...")
|
||||
}
|
||||
|
||||
if (state === Create.State.ConvertingPreviewGifFinished) {
|
||||
imgPreview.source = "file:///"
|
||||
+ screenPlayCreate.workingDir + "/preview.gif"
|
||||
imgPreview.visible = true
|
||||
imgPreview.playing = true
|
||||
}
|
||||
if (state === Create.State.ConvertingAudio) {
|
||||
txtConvert.text = qsTr("Converting Audio...")
|
||||
}
|
||||
if (state === Create.State.ConvertingVideo) {
|
||||
txtConvert.text = qsTr("Converting Video...")
|
||||
}
|
||||
|
||||
if (state === Create.State.Finished) {
|
||||
imgSuccess.source = "file:///"
|
||||
+ screenPlayCreate.workingDir + "/preview.gif"
|
||||
}
|
||||
}
|
||||
onProgressChanged: {
|
||||
var percentage = Math.floor(progress * 100)
|
||||
if (percentage > 100)
|
||||
percentage = 100
|
||||
txtConvertNumber.text = percentage + "%"
|
||||
}
|
||||
}
|
||||
}
|
||||
RowLayout {
|
||||
id: row
|
||||
height: 50
|
||||
ImageSelector {
|
||||
id: previewSelector
|
||||
|
||||
anchors {
|
||||
top: imgWrapper.bottom
|
||||
topMargin: 20
|
||||
|
||||
right: parent.right
|
||||
rightMargin: 30
|
||||
left: parent.left
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
height: 50
|
||||
color: "#eeeeee"
|
||||
Layout.fillWidth: true
|
||||
|
||||
Text {
|
||||
id: txtCustomPreviewPath
|
||||
color: "#333333"
|
||||
text: qsTr("Add custom preview image")
|
||||
anchors {
|
||||
verticalCenter: parent.verticalCenter
|
||||
left: parent.left
|
||||
leftMargin: 10
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
id: button
|
||||
Material.background: Material.Orange
|
||||
Material.foreground: "white"
|
||||
text: qsTr("Choose Image")
|
||||
anchors {
|
||||
right: parent.right
|
||||
rightMargin: 10
|
||||
}
|
||||
onClicked: fileDialogOpenFile.open()
|
||||
}
|
||||
|
||||
|
||||
FileDialog {
|
||||
id: fileDialogOpenFile
|
||||
nameFilters: ["*.png *.jpg"]
|
||||
onAccepted: {
|
||||
var file = fileDialogOpenFile.file.toString()
|
||||
|
||||
txtCustomPreviewPath.text = fileDialogOpenFile.file
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Item {
|
||||
@ -194,57 +167,56 @@ Item {
|
||||
bottom: parent.bottom
|
||||
right: parent.right
|
||||
}
|
||||
|
||||
|
||||
ColumnLayout {
|
||||
id: column
|
||||
spacing: 0
|
||||
anchors {
|
||||
|
||||
|
||||
right: parent.right
|
||||
left: parent.left
|
||||
margins: 30
|
||||
top:parent.top
|
||||
top: parent.top
|
||||
topMargin: 0
|
||||
bottom: column1.top
|
||||
bottomMargin: 50
|
||||
}
|
||||
|
||||
|
||||
TextField {
|
||||
id: textField
|
||||
placeholderText: qsTr("Name")
|
||||
width:parent.width
|
||||
id: textFieldName
|
||||
placeholderText: qsTr("Name (required!)")
|
||||
width: parent.width
|
||||
Layout.fillWidth: true
|
||||
onTextChanged: {
|
||||
if (textField.text.length >= 3) {
|
||||
canNext = true
|
||||
if (textFieldName.text.length >= 3) {
|
||||
canSave = true
|
||||
} else {
|
||||
canNext = false
|
||||
canSave = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
TextField {
|
||||
id: textField1
|
||||
id: textFieldDescription
|
||||
placeholderText: qsTr("Description")
|
||||
width:parent.width
|
||||
width: parent.width
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
|
||||
|
||||
TextField {
|
||||
id: textField2
|
||||
id: textFieldYoutubeURL
|
||||
placeholderText: qsTr("Youtube URL")
|
||||
width:parent.width
|
||||
width: parent.width
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: textField3
|
||||
width:parent.width
|
||||
placeholderText: qsTr("Tags")
|
||||
|
||||
TagSelector {
|
||||
id: textFieldTags
|
||||
width: parent.width
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Row {
|
||||
id: column1
|
||||
height: 80
|
||||
@ -254,39 +226,76 @@ Item {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
bottom: parent.bottom
|
||||
}
|
||||
|
||||
|
||||
Button {
|
||||
id: btnExit
|
||||
text: qsTr("Abort")
|
||||
Material.background: Material.Gray
|
||||
Material.background: Material.Red
|
||||
Material.foreground: "white"
|
||||
onClicked: {
|
||||
screenPlayCreate.abort()
|
||||
screenPlayCreate.abortAndCleanup()
|
||||
utility.setNavigationActive(true)
|
||||
utility.setNavigation("Create")
|
||||
}
|
||||
}
|
||||
|
||||
NextButton {
|
||||
id: btnFinish
|
||||
|
||||
Button {
|
||||
id: btnSave
|
||||
text: qsTr("Save")
|
||||
enabled: false
|
||||
Material.background: Material.Orange
|
||||
Material.foreground: "white"
|
||||
|
||||
onClicked: {
|
||||
if (btnFinish.state === "enabled" && canNext) {
|
||||
screenPlayCreate.createWallpaperProjectFile(
|
||||
textField.text, textField1.text)
|
||||
utility.setNavigationActive(true)
|
||||
createNew.state = "success"
|
||||
if (conversionFinishedSuccessful) {
|
||||
screenPlayCreate.saveWallpaper(
|
||||
textFieldName.text,
|
||||
textFieldDescription.text,
|
||||
wrapperContent.filePath,
|
||||
previewSelector.imageSource,
|
||||
textFieldYoutubeURL.text,
|
||||
textFieldTags.getTags())
|
||||
savePopup.open()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: screenPlayCreate
|
||||
onCreateWallpaperStateChanged: {
|
||||
if (state === Create.State.ConvertingVideoFinished) {
|
||||
btnFinish.state = "enabled"
|
||||
}
|
||||
}
|
||||
Popup {
|
||||
id: savePopup
|
||||
modal: true
|
||||
focus: true
|
||||
width: 250
|
||||
anchors.centerIn: parent
|
||||
height: 200
|
||||
onOpened: timerSave.start()
|
||||
|
||||
BusyIndicator {
|
||||
anchors.centerIn: parent
|
||||
running: true
|
||||
}
|
||||
Text {
|
||||
text: qsTr("Save Wallpaper...")
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.bottomMargin: 30
|
||||
}
|
||||
|
||||
Timer {
|
||||
id: timerSave
|
||||
interval: 3000 - Math.random() * 1000
|
||||
onTriggered: {
|
||||
utility.setNavigationActive(true)
|
||||
utility.setNavigation("Create")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/*##^## Designer {
|
||||
D{i:0;autoSize:true;height:480;width:950}
|
||||
}
|
||||
##^##*/
|
||||
|
@ -4,6 +4,7 @@ import QtQuick.Controls 2.2
|
||||
import QtQuick.Controls.Material 2.3
|
||||
import Qt.labs.platform 1.0
|
||||
import QtQuick.Layouts 1.3
|
||||
|
||||
import net.aimber.create 1.0
|
||||
|
||||
Item {
|
||||
@ -13,17 +14,16 @@ Item {
|
||||
|
||||
property string filePath
|
||||
property bool canNext: false
|
||||
property int importState: CreateWallpaperWizard.ImportState.Import
|
||||
|
||||
Component.onCompleted: {
|
||||
state = "in"
|
||||
utility.setNavigationActive(false)
|
||||
if (importState === CreateWallpaperWizard.ImportState.Import) {
|
||||
loader_wrapperContent.source
|
||||
= "qrc:/qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImport.qml"
|
||||
} else {
|
||||
loader_wrapperContent.source = "qrc:/qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImportConvert.qml"
|
||||
}
|
||||
|
||||
loader_wrapperContent.setSource(
|
||||
"qrc:/qml/Create/Wizards/CreateWallpaper/CreateWallpaperVideoImportConvert.qml",
|
||||
{
|
||||
"filePath": createNew.filePath
|
||||
})
|
||||
}
|
||||
|
||||
//Blocks some MouseArea from create page
|
||||
@ -34,12 +34,15 @@ Item {
|
||||
Connections {
|
||||
target: screenPlayCreate
|
||||
onCreateWallpaperStateChanged: {
|
||||
|
||||
if (state === Create.State.ConvertingPreviewGifError
|
||||
|| state === Create.State.ConvertingPreviewVideoError
|
||||
|| state === Create.State.ConvertingPreviewImageError
|
||||
|| state === Create.State.AnalyseVideoError) {
|
||||
createNew.state = "error"
|
||||
if (state === CreateImportVideo.State.AnalyseVideoError || state
|
||||
=== CreateImportVideo.State.ConvertingPreviewGifError || state
|
||||
=== CreateImportVideo.State.ConvertingPreviewImageError || state
|
||||
=== CreateImportVideo.State.ConvertingAudioError || state
|
||||
=== CreateImportVideo.State.AbortCleanupError || state
|
||||
=== CreateImportVideo.State.CopyFilesError || state
|
||||
=== CreateImportVideo.State.CreateProjectFileError || state
|
||||
=== CreateImportVideo.State.CreateTmpFolderError) {
|
||||
createNew.state = "result"
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -75,31 +78,29 @@ Item {
|
||||
|
||||
Rectangle {
|
||||
id: wrapper
|
||||
|
||||
width: 910
|
||||
radius: 4
|
||||
height: 460
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
top: parent.top
|
||||
topMargin: 0
|
||||
}
|
||||
|
||||
width: 910
|
||||
radius: 4
|
||||
height: 460
|
||||
|
||||
Loader {
|
||||
id: loader_wrapperContent
|
||||
|
||||
anchors.fill: parent
|
||||
z: 10
|
||||
Connections {
|
||||
target: loader_wrapperContent.sourceComponent
|
||||
onSave: {
|
||||
createNew.state = "result"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
CreateWallpaperError {
|
||||
id: wrapperError
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
CreateWallpaperSuccess {
|
||||
id: wrapperSuccess
|
||||
CreateWallpaperResult {
|
||||
id: wrapperResult
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
@ -156,7 +157,7 @@ Item {
|
||||
opacity: 0
|
||||
}
|
||||
PropertyChanges {
|
||||
target: wrapperError
|
||||
target: wrapperResult
|
||||
opacity: 0
|
||||
}
|
||||
},
|
||||
@ -172,7 +173,7 @@ Item {
|
||||
opacity: .4
|
||||
}
|
||||
PropertyChanges {
|
||||
target: wrapperError
|
||||
target: wrapperResult
|
||||
opacity: 0
|
||||
}
|
||||
},
|
||||
@ -193,7 +194,7 @@ Item {
|
||||
z: 0
|
||||
}
|
||||
PropertyChanges {
|
||||
target: wrapperError
|
||||
target: wrapperResult
|
||||
opacity: 1
|
||||
}
|
||||
},
|
||||
@ -213,10 +214,6 @@ Item {
|
||||
opacity: 0
|
||||
z: 0
|
||||
}
|
||||
PropertyChanges {
|
||||
target: wrapperSuccess
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
]
|
||||
transitions: [
|
||||
@ -291,7 +288,7 @@ Item {
|
||||
},
|
||||
Transition {
|
||||
from: "in"
|
||||
to: "error"
|
||||
to: "result"
|
||||
SequentialAnimation {
|
||||
PropertyAnimation {
|
||||
target: loader_wrapperContent
|
||||
@ -303,28 +300,7 @@ Item {
|
||||
duration: 50
|
||||
}
|
||||
PropertyAnimation {
|
||||
target: wrapperError
|
||||
duration: 200
|
||||
property: "opacity"
|
||||
easing.type: Easing.OutQuart
|
||||
}
|
||||
}
|
||||
},
|
||||
Transition {
|
||||
from: "in"
|
||||
to: "success"
|
||||
SequentialAnimation {
|
||||
PropertyAnimation {
|
||||
target: loader_wrapperContent
|
||||
duration: 600
|
||||
property: "opacity"
|
||||
easing.type: Easing.OutQuart
|
||||
}
|
||||
PauseAnimation {
|
||||
duration: 50
|
||||
}
|
||||
PropertyAnimation {
|
||||
target: wrapperSuccess
|
||||
target: wrapperResult
|
||||
duration: 200
|
||||
property: "opacity"
|
||||
easing.type: Easing.OutQuart
|
||||
|
@ -1,44 +0,0 @@
|
||||
import QtQuick 2.12
|
||||
import QtGraphicalEffects 1.0
|
||||
import QtQuick.Controls 2.2
|
||||
import QtQuick.Controls.Material 2.2
|
||||
import Qt.labs.platform 1.0
|
||||
import QtQuick.Layouts 1.3
|
||||
|
||||
Button {
|
||||
id: root
|
||||
text: qsTr("Next")
|
||||
state: "disabled"
|
||||
Material.background: Material.Orange
|
||||
Material.foreground: "white"
|
||||
|
||||
states: [
|
||||
State {
|
||||
name: "enabled"
|
||||
PropertyChanges {
|
||||
target: root
|
||||
text: qsTr("Finish")
|
||||
}
|
||||
},
|
||||
State {
|
||||
name: "disabled"
|
||||
PropertyChanges {
|
||||
target: root
|
||||
text: qsTr("Creating")
|
||||
Material.background: Material.Grey
|
||||
}
|
||||
}
|
||||
]
|
||||
// TODO find a way to smoothly change with on text change
|
||||
// transitions: [
|
||||
// Transition {
|
||||
// from: "*"
|
||||
// to: "*"
|
||||
// NumberAnimation {
|
||||
// property: "width"
|
||||
// easing.type: Easing.OutQuart
|
||||
// duration: 2000
|
||||
// }
|
||||
// }
|
||||
// ]
|
||||
}
|
@ -62,7 +62,7 @@ DropArea {
|
||||
Text {
|
||||
id: text1
|
||||
text: qsTr("Bad File!!")
|
||||
font.pixelSize: 24
|
||||
font.pointSize: 24
|
||||
opacity: 1
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
|
@ -59,7 +59,6 @@ Item {
|
||||
flickDeceleration: 5000
|
||||
anchors.fill: parent
|
||||
cellWidth: 340
|
||||
cacheBuffer: 10000
|
||||
cellHeight: 200
|
||||
interactive: pageInstalled.enabled
|
||||
anchors {
|
||||
@ -103,7 +102,7 @@ Item {
|
||||
text: qsTr("Pull to refresh!")
|
||||
anchors.centerIn: parent
|
||||
color: "gray"
|
||||
font.pixelSize: 18
|
||||
font.pointSize: 18
|
||||
}
|
||||
}
|
||||
footer: Item {
|
||||
|
@ -70,7 +70,7 @@ Item {
|
||||
id: txtHeadline2
|
||||
text: qsTr("DISTINCT")
|
||||
font.family: "Roboto Mono Thin"
|
||||
font.pixelSize: 75
|
||||
font.pointSize: 75
|
||||
color: "white"
|
||||
font.weight: Font.Normal
|
||||
|
||||
|
@ -177,23 +177,23 @@ Item {
|
||||
bottom: parent.bottom
|
||||
}
|
||||
|
||||
Text {
|
||||
id: text1
|
||||
height: 29
|
||||
text: screenTitle
|
||||
anchors {
|
||||
right: parent.right
|
||||
left: parent.left
|
||||
top: parent.top
|
||||
margins: 10
|
||||
}
|
||||
wrapMode: Text.WordWrap
|
||||
// Text {
|
||||
// id: text1
|
||||
// height: 29
|
||||
// text: screenTitle
|
||||
// anchors {
|
||||
// right: parent.right
|
||||
// left: parent.left
|
||||
// top: parent.top
|
||||
// margins: 10
|
||||
// }
|
||||
// wrapMode: Text.WordWrap
|
||||
|
||||
color: "#2F2F2F"
|
||||
font.pointSize: 9
|
||||
// color: "#2F2F2F"
|
||||
// font.pointSize: 9
|
||||
|
||||
font.family: "Segoe UI, Roboto"
|
||||
}
|
||||
// font.family: "Segoe UI, Roboto"
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -165,7 +165,7 @@ Item {
|
||||
font.family: "Roboto"
|
||||
font.weight: Font.Thin
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
font.pixelSize: 21
|
||||
font.pointSize: 16
|
||||
color: "#2F2F2F"
|
||||
wrapMode: Text.WrapAnywhere
|
||||
anchors {
|
||||
@ -185,7 +185,7 @@ Item {
|
||||
|
||||
horizontalAlignment: Qt.AlignHCenter
|
||||
font.family: "Roboto"
|
||||
font.pixelSize: 18
|
||||
font.pointSize: 14
|
||||
color: "#2F2F2F"
|
||||
wrapMode: Text.WrapAnywhere
|
||||
anchors {
|
||||
@ -239,7 +239,7 @@ Item {
|
||||
|
||||
font.family: "Roboto"
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
font.pixelSize: 14
|
||||
font.pointSize: 10
|
||||
color: "#626262"
|
||||
wrapMode: Text.WrapAnywhere
|
||||
anchors {
|
||||
@ -294,7 +294,7 @@ Item {
|
||||
|
||||
font.family: "Roboto"
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
font.pixelSize: 14
|
||||
font.pointSize: 10
|
||||
color: "#626262"
|
||||
wrapMode: Text.WrapAnywhere
|
||||
anchors {
|
||||
|
@ -14,7 +14,7 @@ Item {
|
||||
imgPreview.opacity = 1
|
||||
}
|
||||
|
||||
property int fontSize: 14
|
||||
property int fontSize: 10
|
||||
property int index
|
||||
property bool isSelected: false
|
||||
property bool isWallpaperActive: false
|
||||
@ -42,7 +42,7 @@ Item {
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
//color: "white"
|
||||
font.pixelSize: monitorSelectionItem.fontSize
|
||||
font.pointSize: monitorSelectionItem.fontSize
|
||||
font.family: "Roboto"
|
||||
wrapMode: Text.WrapAnywhere
|
||||
}
|
||||
|
@ -59,7 +59,7 @@ Item {
|
||||
Text {
|
||||
id: txtHeadline
|
||||
text: qsTr("Wallpaper Configuration")
|
||||
font.pixelSize: 21
|
||||
font.pointSize: 21
|
||||
color: "#626262"
|
||||
font.family: "Roboto"
|
||||
font.weight: Font.Thin
|
||||
|
@ -21,7 +21,7 @@ Item {
|
||||
id: txtDescription
|
||||
text: name
|
||||
width: 100
|
||||
font.pixelSize: isHeadline ? 21 : 14
|
||||
font.pointSize: isHeadline ? 21 : 14
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
font.family: "Roboto"
|
||||
font.weight: Font.Normal
|
||||
|
@ -2,7 +2,10 @@ import QtQuick 2.12
|
||||
import QtQuick.Controls 2.2
|
||||
import QtQuick.Controls.Material 2.2
|
||||
|
||||
import "../Common"
|
||||
|
||||
Item {
|
||||
id: screen
|
||||
anchors.fill: parent
|
||||
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls 2.3
|
||||
import QtQuick.Controls.Material 2.2
|
||||
|
||||
Item {
|
||||
id: settingsBool
|
||||
property string headline: "Headline"
|
||||
@ -36,7 +37,7 @@ Item {
|
||||
|
||||
}
|
||||
|
||||
font.pixelSize: 16
|
||||
font.pointSize: 12
|
||||
font.family: "Roboto"
|
||||
}
|
||||
|
||||
@ -48,7 +49,7 @@ Item {
|
||||
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
font.pixelSize: 12
|
||||
font.pointSize: 10
|
||||
font.family: "Roboto"
|
||||
anchors{
|
||||
top:txtHeadline.bottom
|
||||
|
@ -147,7 +147,7 @@ Item {
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
wrapMode: Text.WordWrap
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
font.pixelSize: 14
|
||||
font.pointSize: 10
|
||||
font.family: "Roboto"
|
||||
anchors{
|
||||
right:parent.right
|
||||
@ -345,7 +345,7 @@ Item {
|
||||
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
font.pixelSize: 16
|
||||
font.pointSize: 16
|
||||
anchors {
|
||||
top: parent.top
|
||||
topMargin: 6
|
||||
@ -361,7 +361,7 @@ Item {
|
||||
wrapMode: Text.WordWrap
|
||||
verticalAlignment: Text.AlignTop
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
font.pixelSize: 14
|
||||
font.pointSize: 10
|
||||
font.family: "Roboto"
|
||||
width: parent.width * .6
|
||||
anchors {
|
||||
|
@ -42,7 +42,7 @@ Item {
|
||||
|
||||
}
|
||||
|
||||
font.pixelSize: 16
|
||||
font.pointSize: 12
|
||||
}
|
||||
|
||||
Text {
|
||||
@ -53,7 +53,7 @@ Item {
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
wrapMode: Text.WordWrap
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
font.pixelSize: 12
|
||||
font.pointSize: 10
|
||||
font.family: "Roboto"
|
||||
anchors{
|
||||
top:txtHeadline.bottom
|
||||
|
@ -36,7 +36,7 @@ Item {
|
||||
|
||||
}
|
||||
|
||||
font.pixelSize: 16
|
||||
font.pointSize: 12
|
||||
font.family: "Roboto"
|
||||
}
|
||||
|
||||
@ -48,7 +48,7 @@ Item {
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
wrapMode: Text.WordWrap
|
||||
font.pixelSize: 12
|
||||
font.pointSize: 10
|
||||
font.family: "Roboto"
|
||||
anchors{
|
||||
top:txtHeadline.bottom
|
||||
|
@ -62,7 +62,7 @@ Item {
|
||||
Text {
|
||||
id: txtHeadline
|
||||
text: settingsHeader.text
|
||||
font.pixelSize: 18
|
||||
font.pointSize: 12
|
||||
color: "white"
|
||||
verticalAlignment: Text.AlignTop
|
||||
|
||||
|
@ -25,7 +25,7 @@ Window {
|
||||
id: text1
|
||||
color: "#ffffff"
|
||||
text: "empty"
|
||||
font.pixelSize: 29
|
||||
font.pointSize: 29
|
||||
}
|
||||
|
||||
|
||||
|
@ -6,8 +6,5 @@ Theme=Light
|
||||
Accent=Orange
|
||||
Primary=White
|
||||
Foreground=Grey
|
||||
|
||||
|
||||
[Material\Font]
|
||||
Family=Roboto
|
||||
PixelSize=14
|
||||
Font\Family=Roboto
|
||||
Font\PixelSize=12
|
||||
|
@ -6,414 +6,124 @@ Create::Create(Settings* st, QMLUtilities* util, QObject* parent)
|
||||
|
||||
m_settings = st;
|
||||
m_utils = util;
|
||||
m_futureWatcher.setFuture(m_future);
|
||||
|
||||
qRegisterMetaType<Create::State>();
|
||||
qRegisterMetaType<CreateImportVideo::State>();
|
||||
qmlRegisterType<Create>("net.aimber.create", 1, 0, "Create");
|
||||
}
|
||||
|
||||
void Create::copyProject(QString relativeProjectPath, QString toPath)
|
||||
{
|
||||
if (toPath.contains("file:///")) {
|
||||
toPath.remove("file:///");
|
||||
}
|
||||
QString srcFilePath = m_settings->getScreenPlayBasePath().toString() + relativeProjectPath;
|
||||
|
||||
// Todo: UI Error handling
|
||||
if (copyRecursively(srcFilePath, toPath)) {
|
||||
emit m_utils->openFolderInExplorer(toPath);
|
||||
}
|
||||
}
|
||||
|
||||
bool Create::copyRecursively(const QString& srcFilePath, const QString& tgtFilePath)
|
||||
{
|
||||
QFileInfo srcFileInfo(srcFilePath);
|
||||
if (srcFileInfo.isDir()) {
|
||||
QDir targetDir(tgtFilePath);
|
||||
targetDir.cdUp();
|
||||
QDir sourceDir(srcFilePath);
|
||||
QStringList fileNames = sourceDir.entryList(QDir::Files | QDir::Dirs | QDir::NoDotAndDotDot | QDir::Hidden | QDir::System);
|
||||
foreach (const QString& fileName, fileNames) {
|
||||
const QString newSrcFilePath
|
||||
= srcFilePath + QLatin1Char('/') + fileName;
|
||||
const QString newTgtFilePath
|
||||
= tgtFilePath + QLatin1Char('/') + fileName;
|
||||
if (!copyRecursively(newSrcFilePath, newTgtFilePath))
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
if (!QFile::copy(srcFilePath, tgtFilePath))
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
qmlRegisterType<CreateImportVideo>("net.aimber.create", 1, 0, "CreateImportVideo");
|
||||
}
|
||||
|
||||
void Create::createWallpaperStart(QString videoPath)
|
||||
{
|
||||
videoPath.remove("file:///");
|
||||
|
||||
m_future = QtConcurrent::run([=]() {
|
||||
QDir dir;
|
||||
dir.cd(this->m_settings->localStoragePath().toLocalFile());
|
||||
QDir dir;
|
||||
dir.cd(m_settings->localStoragePath().toLocalFile());
|
||||
|
||||
m_createWallpaperData.videoPath = videoPath;
|
||||
// Create a temp dir so we can later alter it to the workshop id
|
||||
auto folderName = QString("_tmp_" + QTime::currentTime().toString()).replace(":", "");
|
||||
|
||||
// Create a temp dir so we can later alter it to the workshop id
|
||||
auto folderName = QString("_tmp_" + QTime::currentTime().toString()).replace(":", "");
|
||||
if (!dir.mkdir(folderName)) {
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::CreateTmpFolderError);
|
||||
emit abortCreateWallpaper();
|
||||
return;
|
||||
}
|
||||
setWorkingDir(dir.path() + "/" + folderName);
|
||||
|
||||
if (!dir.mkdir(folderName))
|
||||
return;
|
||||
m_createImportVideoThread = new QThread();
|
||||
m_createImportVideo = new CreateImportVideo(videoPath, workingDir());
|
||||
|
||||
m_createWallpaperData.exportPath = dir.path() + "/" + folderName;
|
||||
this->setWorkingDir(m_createWallpaperData.exportPath);
|
||||
connect(m_createImportVideo, &CreateImportVideo::createWallpaperStateChanged, this, &Create::createWallpaperStateChanged);
|
||||
connect(m_createImportVideoThread, &QThread::started, m_createImportVideo, &CreateImportVideo::process);
|
||||
connect(m_createImportVideo, &CreateImportVideo::canceled, this, &Create::abortAndCleanup);
|
||||
connect(m_createImportVideo, &CreateImportVideo::finished, m_createImportVideoThread, &QThread::quit);
|
||||
connect(m_createImportVideo, &CreateImportVideo::finished, m_createImportVideo, &QObject::deleteLater);
|
||||
connect(m_createImportVideoThread, &QThread::finished, m_createImportVideoThread, &QObject::deleteLater);
|
||||
|
||||
// If we return early/false this means the creation
|
||||
// process did not work
|
||||
bool ok = true;
|
||||
|
||||
if (!this->createWallpaperInfo())
|
||||
ok = false;
|
||||
|
||||
if (ok && !this->createWallpaperVideoPreview())
|
||||
ok = false;
|
||||
|
||||
if (ok && !this->createWallpaperGifPreview())
|
||||
ok = false;
|
||||
|
||||
if (ok && !this->extractWallpaperAudio())
|
||||
ok = false;
|
||||
|
||||
if (!ok)
|
||||
abortAndCleanup();
|
||||
});
|
||||
m_createImportVideo->moveToThread(m_createImportVideoThread);
|
||||
m_createImportVideoThread->start();
|
||||
}
|
||||
|
||||
bool Create::createWallpaperInfo()
|
||||
void Create::saveWallpaper(QString title, QString description, QString filePath, QString previewImagePath, QString youtube, QVector<QString> tags)
|
||||
{
|
||||
// Get video info
|
||||
QStringList args;
|
||||
args.append("-print_format");
|
||||
args.append("json");
|
||||
args.append("-show_format");
|
||||
args.append("-show_streams");
|
||||
args.append(m_createWallpaperData.videoPath);
|
||||
QScopedPointer<QProcess> pro(new QProcess());
|
||||
pro.data()->setArguments(args);
|
||||
filePath.remove("file:///");
|
||||
previewImagePath.remove("file:///");
|
||||
|
||||
#ifdef Q_OS_WIN
|
||||
pro.data()->setProgram(QApplication::applicationDirPath() + "/ffprobe.exe");
|
||||
#endif
|
||||
#ifdef Q_OS_MACOS
|
||||
pro.data()->setProgram(QApplication::applicationDirPath() + "/ffprobe");
|
||||
#endif
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::CopyFiles);
|
||||
|
||||
QFileInfo previewImageFile(previewImagePath);
|
||||
if (!QFile::copy(previewImagePath, m_workingDir + "/" + previewImageFile.fileName())) {
|
||||
qDebug() << "Could not copy" << previewImagePath << " to " << m_workingDir + "/" + previewImageFile.fileName();
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::CopyFilesError);
|
||||
return;
|
||||
}
|
||||
|
||||
QFileInfo filePathFile(filePath);
|
||||
if (!QFile::copy(filePath, m_workingDir + "/" + filePathFile.fileName())) {
|
||||
qDebug() << "Could not copy" << filePath << " to " << m_workingDir + "/" + filePathFile.fileName();
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::CopyFilesError);
|
||||
return;
|
||||
}
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::CopyFilesFinished);
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::CreateProjectFile);
|
||||
QFile file(m_workingDir + "/project.json");
|
||||
|
||||
pro.data()->start();
|
||||
emit createWallpaperStateChanged(Create::State::AnalyseVideo);
|
||||
pro.data()->waitForFinished(-1);
|
||||
emit createWallpaperStateChanged(Create::State::AnalyseVideoFinished);
|
||||
QJsonObject obj;
|
||||
QJsonParseError err;
|
||||
QJsonDocument doc = QJsonDocument::fromJson(pro.data()->readAll(), &err);
|
||||
if (err.error != QJsonParseError::NoError) {
|
||||
emit processOutput("Error parsing ffmpeg json output");
|
||||
emit createWallpaperStateChanged(Create::State::AnalyseVideoError);
|
||||
return false;
|
||||
obj.insert("description", description);
|
||||
obj.insert("title", title);
|
||||
obj.insert("youtube", youtube);
|
||||
obj.insert("file", "video.webm");
|
||||
obj.insert("previewGIF", "preview.gif");
|
||||
obj.insert("previewWEBM", filePathFile.fileName());
|
||||
obj.insert("preview", previewImageFile.fileName());
|
||||
obj.insert("type", "video");
|
||||
|
||||
QJsonArray arr;
|
||||
for (QString tmp : tags) {
|
||||
arr.append(tmp);
|
||||
}
|
||||
obj.insert("tags", arr);
|
||||
|
||||
if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) {
|
||||
qDebug() << "Could not open /project.json";
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::CreateProjectFileError);
|
||||
return;
|
||||
}
|
||||
|
||||
obj = doc.object();
|
||||
pro.data()->close();
|
||||
QTextStream out(&file);
|
||||
QJsonDocument doc(obj);
|
||||
|
||||
// Get video length
|
||||
QJsonObject objFormat = obj.value("format").toObject();
|
||||
bool okParseDuration = false;
|
||||
auto tmpLength = objFormat.value("duration").toVariant().toFloat(&okParseDuration);
|
||||
out << doc.toJson();
|
||||
|
||||
if (!okParseDuration) {
|
||||
qDebug() << "Error parsing video length";
|
||||
emit processOutput("Error parsing video length");
|
||||
emit createWallpaperStateChanged(Create::State::AnalyseVideoError);
|
||||
return false;
|
||||
}
|
||||
|
||||
int length = 0;
|
||||
length = static_cast<int>(tmpLength);
|
||||
m_createWallpaperData.length = length;
|
||||
|
||||
// Get framerate
|
||||
QJsonArray arrSteams = obj.value("streams").toArray();
|
||||
if (arrSteams.size() < 1) {
|
||||
qDebug() << "Error container does not have any video streams";
|
||||
return false;
|
||||
}
|
||||
|
||||
QJsonObject tmpObjStreams = arrSteams.at(0).toObject();
|
||||
|
||||
// The paramter gets us the exact framerate
|
||||
// "avg_frame_rate":"47850000/797509"
|
||||
// so we need no calc the value by dividing the two numbers
|
||||
QString avgFrameRate = tmpObjStreams.value("avg_frame_rate").toVariant().toString();
|
||||
|
||||
QStringList avgFrameRateList = avgFrameRate.split('/', QString::SkipEmptyParts);
|
||||
if (avgFrameRateList.length() != 2) {
|
||||
qDebug() << "Error could not parse streams with length: " << avgFrameRateList.length();
|
||||
return false;
|
||||
}
|
||||
|
||||
int framerate = 0;
|
||||
float value1 = static_cast<float>(avgFrameRateList.at(0).toInt());
|
||||
float value2 = static_cast<float>(avgFrameRateList.at(1).toInt());
|
||||
|
||||
framerate = qCeil(value1 / value2);
|
||||
m_createWallpaperData.framerate = framerate;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Create::createWallpaperVideoPreview()
|
||||
{
|
||||
|
||||
QStringList args;
|
||||
args.append("-loglevel");
|
||||
args.append("error");
|
||||
args.append("-y");
|
||||
args.append("-stats");
|
||||
args.append("-i");
|
||||
args.append(m_createWallpaperData.videoPath);
|
||||
args.append("-speed");
|
||||
args.append("ultrafast");
|
||||
args.append("-vf");
|
||||
// We allways want to have a 5 second clip via 24fps -> 120 frames
|
||||
// Divided by the number of frames we can skip (timeInSeconds * Framrate)
|
||||
// scale & crop parameter: https://unix.stackexchange.com/a/284731
|
||||
args.append("select='not(mod(n," + QString::number((m_createWallpaperData.length / 5)) + "))',setpts=N/FRAME_RATE/TB,crop=in_h*16/9:in_h,scale=-2:400");
|
||||
// Disable audio
|
||||
args.append("-an");
|
||||
args.append(m_createWallpaperData.exportPath + "/preview.webm");
|
||||
QScopedPointer<QProcess> proConvertPreviewWebM(new QProcess());
|
||||
|
||||
proConvertPreviewWebM.data()->setArguments(args);
|
||||
#ifdef Q_OS_WIN
|
||||
proConvertPreviewWebM.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg.exe");
|
||||
#endif
|
||||
#ifdef Q_OS_MACOS
|
||||
proConvertPreviewMP4.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg");
|
||||
#endif
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingPreviewVideo);
|
||||
|
||||
connect(this, &Create::abortCreateWallpaper, proConvertPreviewWebM.data(), &QProcess::kill);
|
||||
proConvertPreviewWebM.data()->start();
|
||||
while (!proConvertPreviewWebM.data()->waitForFinished(100)) //Wake up every 100ms and check if we must exit
|
||||
{
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
disconnect(this, &Create::abortCreateWallpaper, proConvertPreviewWebM.data(), &QProcess::kill);
|
||||
QString tmpErr = proConvertPreviewWebM.data()->readAllStandardError();
|
||||
if (!tmpErr.isEmpty()) {
|
||||
QFile previewVideo(m_createWallpaperData.exportPath + "/preview.webm");
|
||||
if (!previewVideo.exists() && !(previewVideo.size() > 0)) {
|
||||
emit processOutput(tmpErr);
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingPreviewVideoError);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
this->processOutput(proConvertPreviewWebM.data()->readAll());
|
||||
proConvertPreviewWebM.data()->close();
|
||||
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingPreviewVideoFinished);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Create::createWallpaperGifPreview()
|
||||
{
|
||||
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingPreviewGif);
|
||||
|
||||
QStringList args;
|
||||
args.append("-y");
|
||||
args.append("-stats");
|
||||
args.append("-i");
|
||||
args.append(m_createWallpaperData.exportPath + "/preview.webm");
|
||||
args.append("-filter_complex");
|
||||
args.append("[0:v] fps=12,scale=w=480:h=-1,split [a][b];[a] palettegen=stats_mode=single [p];[b][p] paletteuse=new=1");
|
||||
args.append(m_createWallpaperData.exportPath + "/preview.gif");
|
||||
|
||||
QScopedPointer<QProcess> proConvertGif(new QProcess());
|
||||
proConvertGif.data()->setArguments(args);
|
||||
#ifdef Q_OS_WIN
|
||||
proConvertGif.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg.exe");
|
||||
#endif
|
||||
#ifdef Q_OS_MACOS
|
||||
proConvertGif.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg");
|
||||
#endif
|
||||
connect(this, &Create::abortCreateWallpaper, proConvertGif.data(), &QProcess::kill);
|
||||
proConvertGif.data()->start();
|
||||
while (!proConvertGif.data()->waitForFinished(100)) //Wake up every 100ms and check if we must exit
|
||||
{
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
disconnect(this, &Create::abortCreateWallpaper, proConvertGif.data(), &QProcess::kill);
|
||||
QString tmpErrGif = proConvertGif.data()->readAllStandardError();
|
||||
if (!tmpErrGif.isEmpty()) {
|
||||
QFile previewGif(m_createWallpaperData.exportPath + "/preview.gif");
|
||||
if (!previewGif.exists() && !(previewGif.size() > 0)) {
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingPreviewGifError);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
this->processOutput(proConvertGif.data()->readAll());
|
||||
proConvertGif.data()->close();
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingPreviewGifFinished);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Create::createWallpaperImagePreview()
|
||||
{
|
||||
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingPreviewImage);
|
||||
|
||||
QStringList args;
|
||||
args.clear();
|
||||
args.append("-y");
|
||||
args.append("-stats");
|
||||
args.append("-ss");
|
||||
args.append("00:00:02");
|
||||
args.append("-i");
|
||||
args.append(m_createWallpaperData.videoPath);
|
||||
args.append("-vframes");
|
||||
args.append("1");
|
||||
args.append("-q:v");
|
||||
args.append("2");
|
||||
args.append(m_createWallpaperData.exportPath + "/preview.png");
|
||||
|
||||
QScopedPointer<QProcess> proConvertImage(new QProcess());
|
||||
proConvertImage.data()->setArguments(args);
|
||||
#ifdef Q_OS_WIN
|
||||
proConvertImage.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg.exe");
|
||||
#endif
|
||||
|
||||
#ifdef Q_OS_MACOS
|
||||
proConvertImage.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg");
|
||||
#endif
|
||||
proConvertImage.data()->start();
|
||||
|
||||
while (!proConvertImage.data()->waitForFinished(100)) //Wake up every 100ms and check if we must exit
|
||||
{
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
QString tmpErrImg = proConvertImage.data()->readAllStandardError();
|
||||
if (!tmpErrImg.isEmpty()) {
|
||||
QFile previewImg(m_createWallpaperData.exportPath + "/preview.png");
|
||||
if (!previewImg.exists() && !(previewImg.size() > 0)) {
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingPreviewImageError);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
this->processOutput(proConvertImage.data()->readAll());
|
||||
proConvertImage.data()->close();
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingPreviewImageFinished);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Create::extractWallpaperAudio()
|
||||
{
|
||||
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingAudio);
|
||||
|
||||
QStringList args;
|
||||
args.clear();
|
||||
args.append("-y");
|
||||
args.append("-stats");
|
||||
args.append("-i");
|
||||
args.append(m_createWallpaperData.videoPath);
|
||||
args.append("-f");
|
||||
args.append("mp3");
|
||||
args.append("-ab");
|
||||
args.append("192000");
|
||||
args.append("-vn");
|
||||
args.append(m_createWallpaperData.exportPath + "/audio.mp3");
|
||||
|
||||
QScopedPointer<QProcess> proConvertAudio(new QProcess());
|
||||
proConvertAudio.data()->setArguments(args);
|
||||
#ifdef Q_OS_WIN
|
||||
proConvertAudio.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg.exe");
|
||||
#endif
|
||||
#ifdef Q_OS_MACOS
|
||||
pro.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg");
|
||||
#endif
|
||||
|
||||
connect(this, &Create::abortCreateWallpaper, proConvertAudio.data(), &QProcess::kill);
|
||||
proConvertAudio.data()->start(QIODevice::ReadOnly);
|
||||
while (!proConvertAudio.data()->waitForFinished(100)) //Wake up every 100ms and check if we must exit
|
||||
{
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
disconnect(this, &Create::abortCreateWallpaper, proConvertAudio.data(), &QProcess::kill);
|
||||
|
||||
QString tmpErrImg = proConvertAudio.data()->readAllStandardError();
|
||||
if (!tmpErrImg.isEmpty()) {
|
||||
QFile previewImg(m_createWallpaperData.exportPath + "/audio.mp3");
|
||||
if (!previewImg.exists() && !(previewImg.size() > 0)) {
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingAudioError);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
this->processOutput(proConvertAudio.data()->readAll());
|
||||
proConvertAudio.data()->close();
|
||||
emit createWallpaperStateChanged(Create::State::ConvertingAudioFinished);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Create::createWallpaperProjectFile(const QString title, const QString description)
|
||||
{
|
||||
//Copy Project File
|
||||
QFile configFile(m_createWallpaperData.exportPath + "/project.json");
|
||||
|
||||
if (!configFile.open(QIODevice::ReadWrite | QIODevice::Text)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
QTextStream out(&configFile);
|
||||
QJsonObject configObj;
|
||||
|
||||
configObj.insert("description", description);
|
||||
configObj.insert("title", title);
|
||||
|
||||
configObj.insert("file", "video.webm");
|
||||
configObj.insert("preview", "preview.png");
|
||||
configObj.insert("previewGIF", "preview.gif");
|
||||
configObj.insert("previewWebM", "preview.webm");
|
||||
configObj.insert("type", "video");
|
||||
|
||||
QJsonDocument configJsonDocument(configObj);
|
||||
out << configJsonDocument.toJson();
|
||||
configFile.close();
|
||||
|
||||
emit createWallpaperStateChanged(Create::State::Finished);
|
||||
|
||||
return true;
|
||||
file.close();
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::CreateProjectFileFinished);
|
||||
}
|
||||
|
||||
void Create::abortAndCleanup()
|
||||
{
|
||||
emit abortCreateWallpaper();
|
||||
m_futureWatcher.cancel();
|
||||
|
||||
QDir exportPath(m_createWallpaperData.exportPath);
|
||||
|
||||
if (exportPath.exists()) {
|
||||
if (!exportPath.removeRecursively()) {
|
||||
emit createWallpaperStateChanged(Create::State::AbortCleanupError);
|
||||
qWarning() << "Could not delete temp exportPath: " << exportPath;
|
||||
} else {
|
||||
qDebug() << "cleanup " << m_createWallpaperData.exportPath;
|
||||
}
|
||||
if (m_createImportVideo == nullptr || m_createImportVideoThread == nullptr) {
|
||||
qDebug() << m_createImportVideo << m_createImportVideoThread;
|
||||
return;
|
||||
}
|
||||
|
||||
disconnect(m_createImportVideo);
|
||||
disconnect(m_createImportVideoThread);
|
||||
|
||||
// Save to export path before aborting to be able to cleanup the tmp folder
|
||||
QString tmpExportPath = m_createImportVideo->m_exportPath;
|
||||
|
||||
connect(m_createImportVideoThread, &QThread::destroyed, this, [=]() {
|
||||
QDir exportPath(tmpExportPath);
|
||||
|
||||
if (exportPath.exists()) {
|
||||
if (!exportPath.removeRecursively()) {
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::AbortCleanupError);
|
||||
qWarning() << "Could not delete temp exportPath: " << exportPath;
|
||||
} else {
|
||||
qDebug() << "cleanup " << tmpExportPath;
|
||||
}
|
||||
}
|
||||
m_createImportVideo = nullptr;
|
||||
m_createImportVideoThread = nullptr;
|
||||
});
|
||||
m_createImportVideoThread->requestInterruption();
|
||||
}
|
||||
|
@ -19,20 +19,13 @@
|
||||
#include <QTimer>
|
||||
#include <QUrl>
|
||||
#include <QtMath>
|
||||
#include <QTimer>
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "createimportvideo.h"
|
||||
#include "qmlutilities.h"
|
||||
#include "settings.h"
|
||||
|
||||
struct CreateWallpaperData {
|
||||
CreateWallpaperData() {}
|
||||
|
||||
QString videoPath = "";
|
||||
QString exportPath = "";
|
||||
int length = 0;
|
||||
int framerate = 0;
|
||||
};
|
||||
|
||||
class Create : public QObject {
|
||||
Q_OBJECT
|
||||
public:
|
||||
@ -44,76 +37,28 @@ public:
|
||||
Create() {}
|
||||
~Create() {}
|
||||
|
||||
enum class State {
|
||||
Idle,
|
||||
Started,
|
||||
AnalyseVideo,
|
||||
AnalyseVideoFinished,
|
||||
AnalyseVideoError,
|
||||
ConvertingPreviewVideo,
|
||||
ConvertingPreviewVideoFinished,
|
||||
ConvertingPreviewVideoError,
|
||||
ConvertingPreviewGif,
|
||||
ConvertingPreviewGifFinished,
|
||||
ConvertingPreviewGifError,
|
||||
ConvertingPreviewImage,
|
||||
ConvertingPreviewImageFinished,
|
||||
ConvertingPreviewImageError,
|
||||
ConvertingAudio,
|
||||
ConvertingAudioFinished,
|
||||
ConvertingAudioError,
|
||||
// Oh well... Due to so many patents around video codecs
|
||||
// the user has to convert the video on his own :(
|
||||
// ConvertingVideo,
|
||||
// ConvertingVideoFinished,
|
||||
// ConvertingVideoError,
|
||||
AbortCleanupError,
|
||||
Finished,
|
||||
ErrorUnknown,
|
||||
};
|
||||
Q_ENUM(State)
|
||||
float progress() const
|
||||
{
|
||||
return m_progress;
|
||||
}
|
||||
|
||||
QString workingDir() const
|
||||
{
|
||||
return m_workingDir;
|
||||
}
|
||||
|
||||
float progress() const
|
||||
{
|
||||
return m_progress;
|
||||
}
|
||||
|
||||
signals:
|
||||
void createWallpaperStateChanged(Create::State state);
|
||||
void createWallpaperStateChanged(CreateImportVideo::State state);
|
||||
void processOutput(QString text);
|
||||
void workingDirChanged(QString workingDir);
|
||||
void progressChanged(float progress);
|
||||
void abortCreateWallpaper();
|
||||
void workingDirChanged(QString workingDir);
|
||||
|
||||
public slots:
|
||||
void copyProject(QString relativeProjectPath, QString toPath);
|
||||
bool copyRecursively(const QString& srcFilePath, const QString& tgtFilePath);
|
||||
|
||||
// Steps to convert any video to a wallpaper broken down into
|
||||
// several methods in this order:
|
||||
void createWallpaperStart(QString videoPath);
|
||||
bool createWallpaperInfo();
|
||||
bool createWallpaperVideoPreview();
|
||||
bool createWallpaperGifPreview();
|
||||
bool createWallpaperImagePreview();
|
||||
bool extractWallpaperAudio();
|
||||
bool createWallpaperProjectFile(const QString title, const QString description);
|
||||
void saveWallpaper(QString title, QString description, QString filePath, QString previewImagePath, QString youtube, QVector<QString> tags);
|
||||
void abortAndCleanup();
|
||||
|
||||
void setWorkingDir(QString workingDir)
|
||||
{
|
||||
if (m_workingDir == workingDir)
|
||||
return;
|
||||
|
||||
m_workingDir = workingDir;
|
||||
emit workingDirChanged(m_workingDir);
|
||||
}
|
||||
|
||||
void setProgress(float progress)
|
||||
{
|
||||
if (qFuzzyCompare(m_progress, progress))
|
||||
@ -123,12 +68,21 @@ public slots:
|
||||
emit progressChanged(m_progress);
|
||||
}
|
||||
|
||||
void setWorkingDir(QString workingDir)
|
||||
{
|
||||
if (m_workingDir == workingDir)
|
||||
return;
|
||||
|
||||
m_workingDir = workingDir;
|
||||
emit workingDirChanged(m_workingDir);
|
||||
}
|
||||
|
||||
private:
|
||||
CreateImportVideo* m_createImportVideo;
|
||||
Settings* m_settings;
|
||||
QThread* m_createImportVideoThread;
|
||||
QMLUtilities* m_utils;
|
||||
CreateWallpaperData m_createWallpaperData;
|
||||
QString m_workingDir;
|
||||
|
||||
float m_progress = 0.0f;
|
||||
QFuture<void> m_future;
|
||||
QFutureWatcher<void> m_futureWatcher;
|
||||
QString m_workingDir;
|
||||
};
|
||||
|
362
ScreenPlay/src/createimportvideo.cpp
Normal file
362
ScreenPlay/src/createimportvideo.cpp
Normal file
@ -0,0 +1,362 @@
|
||||
#include "createimportvideo.h"
|
||||
#include <QScopeGuard>
|
||||
|
||||
CreateImportVideo::CreateImportVideo(QObject* parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
}
|
||||
|
||||
CreateImportVideo::CreateImportVideo(QString videoPath, QString exportPath, QObject* parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
m_videoPath = videoPath;
|
||||
m_exportPath = exportPath;
|
||||
}
|
||||
|
||||
void CreateImportVideo::process()
|
||||
{
|
||||
qDebug() << "start converting video in thread: " << QThread::currentThreadId();
|
||||
|
||||
auto cleanup = qScopeGuard([this] {
|
||||
qDebug() << "ABORT";
|
||||
this->requestInterruption();
|
||||
emit canceled();
|
||||
});
|
||||
|
||||
if (!createWallpaperInfo())
|
||||
return;
|
||||
|
||||
if (!createWallpaperVideoPreview())
|
||||
return;
|
||||
|
||||
if (!createWallpaperGifPreview())
|
||||
return;
|
||||
|
||||
if (!extractWallpaperAudio())
|
||||
return;
|
||||
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::Finished);
|
||||
}
|
||||
|
||||
bool CreateImportVideo::createWallpaperInfo()
|
||||
{
|
||||
// Get video info
|
||||
QStringList args;
|
||||
args.append("-print_format");
|
||||
args.append("json");
|
||||
args.append("-show_format");
|
||||
args.append("-show_streams");
|
||||
args.append(m_videoPath);
|
||||
QScopedPointer<QProcess> pro(new QProcess());
|
||||
pro.data()->setArguments(args);
|
||||
|
||||
#ifdef Q_OS_WIN
|
||||
pro.data()->setProgram(QApplication::applicationDirPath() + "/ffprobe.exe");
|
||||
#endif
|
||||
#ifdef Q_OS_MACOS
|
||||
pro.data()->setProgram(QApplication::applicationDirPath() + "/ffprobe");
|
||||
#endif
|
||||
|
||||
pro.data()->start();
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::AnalyseVideo);
|
||||
while (!pro.data()->waitForFinished(100)) {
|
||||
if (QThread::currentThread()->isInterruptionRequested()) {
|
||||
qDebug() << "Interrupt thread";
|
||||
pro.data()->terminate();
|
||||
if (!pro.data()->waitForFinished(1000)) {
|
||||
pro.data()->kill();
|
||||
}
|
||||
break;
|
||||
}
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::AnalyseVideoFinished);
|
||||
QJsonObject obj;
|
||||
QJsonParseError err;
|
||||
QJsonDocument doc = QJsonDocument::fromJson(pro.data()->readAll(), &err);
|
||||
if (err.error != QJsonParseError::NoError) {
|
||||
emit processOutput("Error parsing ffmpeg json output");
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::AnalyseVideoError);
|
||||
return false;
|
||||
}
|
||||
|
||||
obj = doc.object();
|
||||
pro.data()->close();
|
||||
|
||||
// Get video length
|
||||
QJsonObject objFormat = obj.value("format").toObject();
|
||||
bool okParseDuration = false;
|
||||
auto tmpLength = objFormat.value("duration").toVariant().toFloat(&okParseDuration);
|
||||
|
||||
if (!okParseDuration) {
|
||||
qDebug() << "Error parsing video length";
|
||||
emit processOutput("Error parsing video length");
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::AnalyseVideoError);
|
||||
return false;
|
||||
}
|
||||
|
||||
int length = 0;
|
||||
length = static_cast<int>(tmpLength);
|
||||
m_length = length;
|
||||
|
||||
// Get framerate
|
||||
QJsonArray arrSteams = obj.value("streams").toArray();
|
||||
if (arrSteams.size() < 1) {
|
||||
qDebug() << "Error container does not have any video streams";
|
||||
return false;
|
||||
}
|
||||
|
||||
QJsonObject tmpObjStreams = arrSteams.at(0).toObject();
|
||||
|
||||
// The paramter gets us the exact framerate
|
||||
// "avg_frame_rate":"47850000/797509"
|
||||
// so we need no calc the value by dividing the two numbers
|
||||
QString avgFrameRate = tmpObjStreams.value("avg_frame_rate").toVariant().toString();
|
||||
|
||||
QStringList avgFrameRateList = avgFrameRate.split('/', QString::SkipEmptyParts);
|
||||
if (avgFrameRateList.length() != 2) {
|
||||
qDebug() << "Error could not parse streams with length: " << avgFrameRateList.length();
|
||||
return false;
|
||||
}
|
||||
|
||||
int framerate = 0;
|
||||
double value1 = static_cast<double>(avgFrameRateList.at(0).toInt());
|
||||
double value2 = static_cast<double>(avgFrameRateList.at(1).toInt());
|
||||
|
||||
framerate = qCeil(value1 / value2);
|
||||
m_framerate = framerate;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CreateImportVideo::createWallpaperVideoPreview()
|
||||
{
|
||||
|
||||
QStringList args;
|
||||
args.append("-loglevel");
|
||||
args.append("error");
|
||||
args.append("-y");
|
||||
args.append("-stats");
|
||||
args.append("-i");
|
||||
args.append(m_videoPath);
|
||||
|
||||
args.append("-vf");
|
||||
// We allways want to have a 5 second clip via 24fps -> 120 frames
|
||||
// Divided by the number of frames we can skip (timeInSeconds * Framrate)
|
||||
// scale & crop parameter: https://unix.stackexchange.com/a/284731
|
||||
args.append("select='not(mod(n," + QString::number((m_length / 5)) + "))',setpts=N/FRAME_RATE/TB,crop=in_h*16/9:in_h,scale=-2:400");
|
||||
// Disable audio
|
||||
args.append("-an");
|
||||
args.append(m_exportPath + "/preview.webm");
|
||||
QScopedPointer<QProcess> proConvertPreviewWebM(new QProcess());
|
||||
|
||||
proConvertPreviewWebM.data()->setArguments(args);
|
||||
#ifdef Q_OS_WIN
|
||||
proConvertPreviewWebM.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg.exe");
|
||||
#endif
|
||||
#ifdef Q_OS_MACOS
|
||||
proConvertPreviewMP4.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg");
|
||||
#endif
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingPreviewVideo);
|
||||
|
||||
proConvertPreviewWebM.data()->start();
|
||||
while (!proConvertPreviewWebM.data()->waitForFinished(100)) //Wake up every 100ms and check if we must exit
|
||||
{
|
||||
if (QThread::currentThread()->isInterruptionRequested()) {
|
||||
qDebug() << "Interrupt thread";
|
||||
proConvertPreviewWebM.data()->terminate();
|
||||
if (!proConvertPreviewWebM.data()->waitForFinished(1000)) {
|
||||
proConvertPreviewWebM.data()->kill();
|
||||
}
|
||||
break;
|
||||
}
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
|
||||
QString tmpErr = proConvertPreviewWebM.data()->readAllStandardError();
|
||||
if (!tmpErr.isEmpty()) {
|
||||
QFile previewVideo(m_exportPath + "/preview.webm");
|
||||
if (!previewVideo.exists() && !(previewVideo.size() > 0)) {
|
||||
emit processOutput(tmpErr);
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingPreviewVideoError);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//this->processOutput(proConvertPreviewWebM.data()->readAll());
|
||||
proConvertPreviewWebM.data()->close();
|
||||
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingPreviewVideoFinished);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CreateImportVideo::createWallpaperGifPreview()
|
||||
{
|
||||
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingPreviewGif);
|
||||
|
||||
QStringList args;
|
||||
args.append("-y");
|
||||
args.append("-stats");
|
||||
args.append("-i");
|
||||
args.append(m_exportPath + "/preview.webm");
|
||||
args.append("-filter_complex");
|
||||
args.append("[0:v] fps=12,scale=w=480:h=-1,split [a][b];[a] palettegen=stats_mode=single [p];[b][p] paletteuse=new=1");
|
||||
args.append(m_exportPath + "/preview.gif");
|
||||
|
||||
QScopedPointer<QProcess> proConvertGif(new QProcess());
|
||||
proConvertGif.data()->setArguments(args);
|
||||
#ifdef Q_OS_WIN
|
||||
proConvertGif.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg.exe");
|
||||
#endif
|
||||
#ifdef Q_OS_MACOS
|
||||
proConvertGif.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg");
|
||||
#endif
|
||||
|
||||
proConvertGif.data()->start();
|
||||
while (!proConvertGif.data()->waitForFinished(100)) //Wake up every 100ms and check if we must exit
|
||||
{
|
||||
if (QThread::currentThread()->isInterruptionRequested()) {
|
||||
qDebug() << "Interrupt thread";
|
||||
proConvertGif.data()->terminate();
|
||||
if (!proConvertGif.data()->waitForFinished(1000)) {
|
||||
proConvertGif.data()->kill();
|
||||
}
|
||||
break;
|
||||
}
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
|
||||
QString tmpErrGif = proConvertGif.data()->readAllStandardError();
|
||||
if (!tmpErrGif.isEmpty()) {
|
||||
QFile previewGif(m_exportPath + "/preview.gif");
|
||||
if (!previewGif.exists() && !(previewGif.size() > 0)) {
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingPreviewGifError);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//this->processOutput(proConvertGif.data()->readAll());
|
||||
proConvertGif.data()->close();
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingPreviewGifFinished);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CreateImportVideo::createWallpaperImagePreview()
|
||||
{
|
||||
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingPreviewImage);
|
||||
|
||||
QStringList args;
|
||||
args.clear();
|
||||
args.append("-y");
|
||||
args.append("-stats");
|
||||
args.append("-ss");
|
||||
args.append("00:00:02");
|
||||
args.append("-i");
|
||||
args.append(m_videoPath);
|
||||
args.append("-vframes");
|
||||
args.append("1");
|
||||
args.append("-q:v");
|
||||
args.append("2");
|
||||
args.append(m_exportPath + "/preview.png");
|
||||
|
||||
QScopedPointer<QProcess> proConvertImage(new QProcess());
|
||||
proConvertImage.data()->setArguments(args);
|
||||
#ifdef Q_OS_WIN
|
||||
proConvertImage.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg.exe");
|
||||
#endif
|
||||
|
||||
#ifdef Q_OS_MACOS
|
||||
proConvertImage.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg");
|
||||
#endif
|
||||
proConvertImage.data()->start();
|
||||
|
||||
while (!proConvertImage.data()->waitForFinished(100)) //Wake up every 100ms and check if we must exit
|
||||
{
|
||||
if (QThread::currentThread()->isInterruptionRequested()) {
|
||||
qDebug() << "Interrupt thread";
|
||||
proConvertImage.data()->terminate();
|
||||
if (!proConvertImage.data()->waitForFinished(1000)) {
|
||||
proConvertImage.data()->kill();
|
||||
}
|
||||
break;
|
||||
}
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
QString tmpErrImg = proConvertImage.data()->readAllStandardError();
|
||||
if (!tmpErrImg.isEmpty()) {
|
||||
QFile previewImg(m_exportPath + "/preview.png");
|
||||
if (!previewImg.exists() && !(previewImg.size() > 0)) {
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingPreviewImageError);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//this->processOutput(proConvertImage.data()->readAll());
|
||||
proConvertImage.data()->close();
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingPreviewImageFinished);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CreateImportVideo::extractWallpaperAudio()
|
||||
{
|
||||
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingAudio);
|
||||
|
||||
QStringList args;
|
||||
args.clear();
|
||||
args.append("-y");
|
||||
args.append("-stats");
|
||||
args.append("-i");
|
||||
args.append(m_videoPath);
|
||||
args.append("-f");
|
||||
args.append("mp3");
|
||||
args.append("-ab");
|
||||
args.append("192000");
|
||||
args.append("-vn");
|
||||
args.append(m_exportPath + "/audio.mp3");
|
||||
|
||||
QScopedPointer<QProcess> proConvertAudio(new QProcess());
|
||||
proConvertAudio.data()->setArguments(args);
|
||||
#ifdef Q_OS_WIN
|
||||
proConvertAudio.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg.exe");
|
||||
#endif
|
||||
#ifdef Q_OS_MACOS
|
||||
pro.data()->setProgram(QApplication::applicationDirPath() + "/ffmpeg");
|
||||
#endif
|
||||
|
||||
proConvertAudio.data()->start(QIODevice::ReadOnly);
|
||||
while (!proConvertAudio.data()->waitForFinished(100)) //Wake up every 100ms and check if we must exit
|
||||
{
|
||||
if (QThread::currentThread()->isInterruptionRequested()) {
|
||||
qDebug() << "Interrupt thread";
|
||||
proConvertAudio.data()->terminate();
|
||||
if (!proConvertAudio.data()->waitForFinished(1000)) {
|
||||
proConvertAudio.data()->kill();
|
||||
}
|
||||
break;
|
||||
}
|
||||
QCoreApplication::processEvents();
|
||||
}
|
||||
|
||||
QString tmpErrImg = proConvertAudio.data()->readAllStandardError();
|
||||
if (!tmpErrImg.isEmpty()) {
|
||||
QFile previewImg(m_exportPath + "/audio.mp3");
|
||||
if (!previewImg.exists() && !(previewImg.size() > 0)) {
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingAudioError);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//this->processOutput(proConvertAudio.data()->readAll());
|
||||
proConvertAudio.data()->close();
|
||||
emit createWallpaperStateChanged(CreateImportVideo::State::ConvertingAudioFinished);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
79
ScreenPlay/src/createimportvideo.h
Normal file
79
ScreenPlay/src/createimportvideo.h
Normal file
@ -0,0 +1,79 @@
|
||||
#pragma once
|
||||
|
||||
#include <QApplication>
|
||||
#include <QDebug>
|
||||
#include <QDir>
|
||||
#include <QFile>
|
||||
#include <QFileInfo>
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonParseError>
|
||||
#include <QObject>
|
||||
#include <QProcess>
|
||||
#include <QString>
|
||||
#include <QThread>
|
||||
#include <QtMath>
|
||||
|
||||
class CreateImportVideo : public QObject {
|
||||
Q_OBJECT
|
||||
public:
|
||||
CreateImportVideo(QObject* parent = nullptr);
|
||||
explicit CreateImportVideo(QString videoPath, QString exportPath, QObject* parent = nullptr);
|
||||
|
||||
enum class State {
|
||||
Idle,
|
||||
Started,
|
||||
AnalyseVideo,
|
||||
AnalyseVideoFinished,
|
||||
AnalyseVideoError,
|
||||
ConvertingPreviewVideo,
|
||||
ConvertingPreviewVideoFinished,
|
||||
ConvertingPreviewVideoError,
|
||||
ConvertingPreviewGif,
|
||||
ConvertingPreviewGifFinished,
|
||||
ConvertingPreviewGifError,
|
||||
ConvertingPreviewImage,
|
||||
ConvertingPreviewImageFinished,
|
||||
ConvertingPreviewImageError,
|
||||
ConvertingAudio,
|
||||
ConvertingAudioFinished,
|
||||
ConvertingAudioError,
|
||||
// Oh well... Due to so many patents around video codecs
|
||||
// the user has to convert the video on his own :(
|
||||
// ConvertingVideo,
|
||||
// ConvertingVideoFinished,
|
||||
// ConvertingVideoError,
|
||||
CopyFiles,
|
||||
CopyFilesFinished,
|
||||
CopyFilesError,
|
||||
CreateProjectFile,
|
||||
CreateProjectFileFinished,
|
||||
CreateProjectFileError,
|
||||
AbortCleanupError,
|
||||
CreateTmpFolderError,
|
||||
Finished,
|
||||
};
|
||||
Q_ENUM(State)
|
||||
|
||||
QString m_videoPath;
|
||||
QString m_exportPath;
|
||||
int m_length = 0;
|
||||
int m_framerate = 0;
|
||||
|
||||
signals:
|
||||
void createWallpaperStateChanged(CreateImportVideo::State state);
|
||||
void processOutput(QString text);
|
||||
void finished();
|
||||
void canceled();
|
||||
|
||||
public slots:
|
||||
void process();
|
||||
void requestInterruption() {}
|
||||
|
||||
bool createWallpaperInfo();
|
||||
bool createWallpaperVideoPreview();
|
||||
bool createWallpaperGifPreview();
|
||||
bool createWallpaperImagePreview();
|
||||
bool extractWallpaperAudio();
|
||||
};
|
@ -5,6 +5,11 @@ InstalledListModel::InstalledListModel(QObject* parent)
|
||||
{
|
||||
QObject::connect(this, &InstalledListModel::addInstalledItem,
|
||||
this, &InstalledListModel::append, Qt::QueuedConnection);
|
||||
m_loadScreenWatcher.setFuture(m_loadScreenFuture);
|
||||
|
||||
QObject::connect(&m_loadScreenWatcher, &QFutureWatcher<void>::progressValueChanged, [](int progressValue) {
|
||||
qDebug() << progressValue;
|
||||
});
|
||||
}
|
||||
|
||||
int InstalledListModel::rowCount(const QModelIndex& parent) const
|
||||
@ -76,6 +81,7 @@ bool InstalledListModel::getProjectByAbsoluteStoragePath(QUrl* path, ProjectFile
|
||||
|
||||
void InstalledListModel::append(const QJsonObject obj, const QString folderName)
|
||||
{
|
||||
//qDebug() << QThread::currentThreadId();
|
||||
beginInsertRows(QModelIndex(), m_screenPlayFiles.size(), m_screenPlayFiles.size());
|
||||
|
||||
ProjectFile tmpFile(obj, folderName, m_absoluteStoragePath);
|
||||
@ -86,7 +92,19 @@ void InstalledListModel::append(const QJsonObject obj, const QString folderName)
|
||||
|
||||
void InstalledListModel::loadInstalledContent()
|
||||
{
|
||||
QtConcurrent::run([this]() {
|
||||
if (m_loadScreenWatcher.isRunning())
|
||||
qDebug() << "allready running";
|
||||
|
||||
|
||||
if (m_isLoadingContent) {
|
||||
qDebug() << "Called loading installed files twice! Aborting";
|
||||
return;
|
||||
}
|
||||
|
||||
m_loadScreenFuture = QtConcurrent::run([this]() {
|
||||
auto cleanup = qScopeGuard([this] { setIsLoadingContent(false); });
|
||||
setIsLoadingContent(true);
|
||||
|
||||
QJsonDocument jsonProject;
|
||||
QJsonParseError parseError;
|
||||
|
||||
@ -126,14 +144,14 @@ void InstalledListModel::loadInstalledContent()
|
||||
obj.insert("type", "video");
|
||||
}
|
||||
|
||||
if (fileEnding.endsWith(".webm") || (obj.value("type").toString() == "qmlScene" || fileEnding.endsWith(".mp4") ) || fileEnding.endsWith(".html"))
|
||||
if (fileEnding.endsWith(".webm") || (obj.value("type").toString() == "qmlScene" || fileEnding.endsWith(".html")))
|
||||
emit addInstalledItem(obj, item.baseName());
|
||||
|
||||
if(obj.value("type") == "qmlWidget" || obj.value("type") == "standalonewidget")
|
||||
if (obj.value("type") == "qmlWidget" || obj.value("type") == "standalonewidget")
|
||||
emit addInstalledItem(obj, item.baseName());
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
emit installedLoadingFinished();
|
||||
});
|
||||
}
|
||||
|
@ -16,6 +16,8 @@
|
||||
#include <QUrl>
|
||||
#include <QVector>
|
||||
#include <QtConcurrent/QtConcurrent>
|
||||
#include <QFutureWatcher>
|
||||
#include <QFuture>
|
||||
|
||||
|
||||
/*!
|
||||
@ -38,6 +40,7 @@ public:
|
||||
bool getProjectByAbsoluteStoragePath(QUrl* path, ProjectFile* spf);
|
||||
|
||||
Q_PROPERTY(QUrl absoluteStoragePath READ absoluteStoragePath WRITE setabsoluteStoragePath NOTIFY absoluteStoragePathChanged)
|
||||
Q_PROPERTY(bool isLoadingContent READ isLoadingContent WRITE setIsLoadingContent NOTIFY isLoadingContentChanged)
|
||||
|
||||
enum InstalledRole {
|
||||
TitleRole,
|
||||
@ -56,6 +59,11 @@ public:
|
||||
return m_absoluteStoragePath;
|
||||
}
|
||||
|
||||
bool isLoadingContent() const
|
||||
{
|
||||
return m_isLoadingContent;
|
||||
}
|
||||
|
||||
public slots:
|
||||
void loadInstalledContent();
|
||||
QVariantMap get(QString folderId);
|
||||
@ -71,6 +79,15 @@ public slots:
|
||||
int getAmountItemLoaded();
|
||||
void reset();
|
||||
|
||||
void setIsLoadingContent(bool isLoadingContent)
|
||||
{
|
||||
if (m_isLoadingContent == isLoadingContent)
|
||||
return;
|
||||
|
||||
m_isLoadingContent = isLoadingContent;
|
||||
emit isLoadingContentChanged(m_isLoadingContent);
|
||||
}
|
||||
|
||||
signals:
|
||||
void setScreenVisible(bool visible);
|
||||
void setScreenToVideo(QString absolutePath);
|
||||
@ -78,7 +95,14 @@ signals:
|
||||
void addInstalledItem(const QJsonObject, const QString);
|
||||
void installedLoadingFinished();
|
||||
|
||||
void isLoadingContentChanged(bool isLoadingContent);
|
||||
|
||||
private:
|
||||
QVector<ProjectFile> m_screenPlayFiles;
|
||||
QUrl m_absoluteStoragePath;
|
||||
QFuture<void> m_loadScreenFuture;
|
||||
QFutureWatcher<void> m_loadScreenWatcher;
|
||||
|
||||
|
||||
bool m_isLoadingContent = false;
|
||||
};
|
||||
|
@ -66,10 +66,11 @@ QString ScreenPlay::generateID()
|
||||
{
|
||||
const QString possibleCharacters("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789");
|
||||
const int randomStringLength = 32;
|
||||
auto* radomGen = QRandomGenerator::system();
|
||||
|
||||
QString randomString;
|
||||
for (int i = 0; i < randomStringLength; ++i) {
|
||||
int index = qrand() % possibleCharacters.length();
|
||||
int index = radomGen->bounded(possibleCharacters.length());
|
||||
QChar nextChar = possibleCharacters.at(index);
|
||||
randomString.append(nextChar);
|
||||
}
|
||||
|
@ -10,7 +10,7 @@ SDKConnector::SDKConnector(QObject* parent)
|
||||
m_server = QSharedPointer<QLocalServer>(new QLocalServer(this));
|
||||
connect(m_server.data(), &QLocalServer::newConnection, this, &SDKConnector::newConnection);
|
||||
if (!m_server.data()->listen("ScreenPlay")) {
|
||||
//TODO
|
||||
//TODO what to do if no ScreenPlay local socket can be open
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,9 +1,10 @@
|
||||
TEMPLATE = lib
|
||||
TARGET = ScreenPlaySDK
|
||||
TARGET = $$qtLibraryTarget($$TARGET)
|
||||
|
||||
QT += qml quick
|
||||
CONFIG += plugin c++11
|
||||
|
||||
TARGET = $$qtLibraryTarget($$TARGET)
|
||||
uri = net.aimber.screenplaysdk
|
||||
|
||||
# Input
|
||||
|
@ -38,7 +38,10 @@ void redirectMessageOutputToMainWindow(QtMsgType type, const QMessageLogContext&
|
||||
ScreenPlaySDK::ScreenPlaySDK(QQuickItem* parent)
|
||||
: QQuickItem(parent)
|
||||
{
|
||||
// Redirect all messages from this to ScreenPlay
|
||||
global_sdkPtr = this;
|
||||
qInstallMessageHandler(redirectMessageOutputToMainWindow);
|
||||
|
||||
m_socket.setServerName("ScreenPlay");
|
||||
connect(&m_socket, &QLocalSocket::connected, this, &ScreenPlaySDK::connected);
|
||||
connect(&m_socket, &QLocalSocket::disconnected, this, &ScreenPlaySDK::disconnected);
|
||||
@ -46,9 +49,6 @@ ScreenPlaySDK::ScreenPlaySDK(QQuickItem* parent)
|
||||
connect(&m_socket, &QLocalSocket::readyRead, this, &ScreenPlaySDK::readyRead);
|
||||
connect(&m_socket, QOverload<QLocalSocket::LocalSocketError>::of(&QLocalSocket::error), this, &ScreenPlaySDK::error);
|
||||
m_socket.connectToServer();
|
||||
|
||||
// Redirect all messages from this to ScreenPlay
|
||||
qInstallMessageHandler(redirectMessageOutputToMainWindow);
|
||||
}
|
||||
|
||||
ScreenPlaySDK::~ScreenPlaySDK()
|
||||
@ -101,6 +101,5 @@ void ScreenPlaySDK::redirectMessage(QByteArray& msg)
|
||||
if (isConnected()) {
|
||||
m_socket.write(msg);
|
||||
m_socket.waitForBytesWritten();
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -4,11 +4,9 @@
|
||||
#include <QDebug>
|
||||
#include <QTimer>
|
||||
#include <QString>
|
||||
|
||||
#ifdef Q_OS_WIN
|
||||
#include <qt_windows.h>
|
||||
#endif
|
||||
|
||||
// https://github.com/rainmeter/rainmeter/blob/master/Library/MeasureCPU.cpp
|
||||
|
||||
class CPU : public QObject {
|
||||
|
@ -1,5 +1,7 @@
|
||||
#pragma once
|
||||
#ifdef Q_OS_WIN
|
||||
#include <qt_windows.h>
|
||||
|
||||
#include <QObject>
|
||||
|
||||
uint64_t FileTimeToInt64( const FILETIME& ft ) {
|
||||
@ -8,3 +10,4 @@ uint64_t FileTimeToInt64( const FILETIME& ft ) {
|
||||
uli.HighPart = ft.dwHighDateTime;
|
||||
return uli.QuadPart;
|
||||
}
|
||||
#endif
|
||||
|
@ -6,8 +6,9 @@
|
||||
#ifdef Q_OS_WIN
|
||||
#include <qt_windows.h>
|
||||
#endif
|
||||
#include <sysinfoapi.h>
|
||||
//#include <sysinfoapi.h>
|
||||
|
||||
#define DWORDLONG unsigned long long
|
||||
|
||||
class RAM : public QObject {
|
||||
Q_OBJECT
|
||||
|
@ -1,6 +1,7 @@
|
||||
<RCC>
|
||||
<qresource prefix="/">
|
||||
<file>main.qml</file>
|
||||
<file>assets/image/noisy-texture-3.png</file>
|
||||
<file>test.qml</file>
|
||||
<file>mainWidget.qml</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
@ -1,60 +1,31 @@
|
||||
QT += quick qml quickcontrols2 core widgets gui
|
||||
CONFIG += c++17
|
||||
CONFIG += qtquickcompiler
|
||||
# The following define makes your compiler emit warnings if you use
|
||||
# any feature of Qt which as been marked deprecated (the exact warnings
|
||||
# depend on your compiler). Please consult the documentation of the
|
||||
# deprecated API in order to know how to port your code away from it.
|
||||
DEFINES += QT_DEPRECATED_WARNINGS
|
||||
|
||||
# You can also make your code fail to compile if you use deprecated APIs.
|
||||
# In order to do so, uncomment the following line.
|
||||
# You can also select to disable deprecated APIs only up to a certain version of Qt.
|
||||
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
|
||||
|
||||
SOURCES += \
|
||||
SPWidgetmain.cpp \
|
||||
src/spwidgetmainwindow.cpp
|
||||
main.cpp \
|
||||
src/widgetwindow.cpp
|
||||
|
||||
HEADERS += \
|
||||
src/widgetwindow.h
|
||||
|
||||
RESOURCES += \
|
||||
SPWidgetResources.qrc
|
||||
|
||||
INCLUDEPATH += \
|
||||
$$PWD/../../ThirdParty/ \
|
||||
$$PWD/../../src/ \
|
||||
|
||||
include(../ScreenPlaySDK/Screenplaysdk.pri)
|
||||
include(../ScreenPlaySDK/ScreenPlaySDK.pri)
|
||||
|
||||
macx: {
|
||||
QMAKE_LIBDIR += $$OUT_PWD/
|
||||
install_it.path = $${OUT_PWD}/../ScreenPlaySDK
|
||||
QMAKE_LIBDIR += $$OUT_PWD/
|
||||
}
|
||||
|
||||
!macx: {
|
||||
CONFIG(debug, debug|release) {
|
||||
LIBS += -lScreenplaysdkd
|
||||
install_it.path = $${OUT_PWD}/debug/
|
||||
LIBS += -lScreenPlaySDKd
|
||||
QMAKE_LIBDIR += $$OUT_PWD/../ScreenPlaySDK/debug
|
||||
} else {
|
||||
LIBS += -lScreenplaysdk
|
||||
install_it.path = $${OUT_PWD}/release/
|
||||
LIBS += -lScreenPlaySDK
|
||||
QMAKE_LIBDIR += $$OUT_PWD/../ScreenPlaySDK/release
|
||||
}
|
||||
QMAKE_LIBDIR += $$OUT_PWD/../ScreenPlaySDK
|
||||
}
|
||||
|
||||
|
||||
|
||||
# Additional import path used to resolve QML modules just for Qt Quick Designer
|
||||
# QML_DESIGNER_IMPORT_PATH =
|
||||
QT_QUICK_CONTROLS_STYLE = "Material"
|
||||
|
||||
# Additional import path used to resolve QML modules in Qt Creator's code model
|
||||
QML_IMPORT_PATH =
|
||||
|
||||
# Additional import path used to resolve QML modules just for Qt Quick Designer
|
||||
QML_DESIGNER_IMPORT_PATH =
|
||||
|
||||
|
||||
HEADERS += \
|
||||
src/spwidgetmainwindow.h
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include <QQmlApplicationEngine>
|
||||
#include <QStringList>
|
||||
|
||||
#include "src/spwidgetmainwindow.h"
|
||||
#include "src/widgetwindow.h"
|
||||
#include "../ScreenPlaySDK/screenplaysdk.h"
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
@ -12,18 +12,23 @@ int main(int argc, char* argv[])
|
||||
ScreenPlaySDK sdk;
|
||||
QGuiApplication app(argc, argv);
|
||||
|
||||
|
||||
QStringList argumentList = app.arguments();
|
||||
|
||||
// If we start with only one argument (app path),
|
||||
// it means we want to test a single widget
|
||||
if (argumentList.length() == 1) {
|
||||
WidgetWindow spwmw("test","appid" );
|
||||
return app.exec();
|
||||
}
|
||||
|
||||
if (argumentList.length() != 3) {
|
||||
return -3;
|
||||
}
|
||||
|
||||
SPWidgetmainwindow spwmw(argumentList.at(1), argumentList.at(2));
|
||||
//SPWidgetmainwindow spwmw("D:/672870/xkcd","asasasasd" );
|
||||
WidgetWindow spwmw(argumentList.at(1), argumentList.at(2));
|
||||
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::sdkDisconnected, &spwmw, &SPWidgetmainwindow::destroyThis);
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::incommingMessage, &spwmw, &SPWidgetmainwindow::messageReceived);
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::sdkDisconnected, &spwmw, &WidgetWindow::destroyThis);
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::incommingMessage, &spwmw, &WidgetWindow::messageReceived);
|
||||
|
||||
return app.exec();
|
||||
}
|
@ -1,7 +1,8 @@
|
||||
import QtQuick 2.12
|
||||
import net.aimber.screenplaysdk 1.0
|
||||
import QtQuick.Controls 2.3
|
||||
|
||||
import net.aimber.screenplaysdk 1.0
|
||||
|
||||
Item {
|
||||
id: mainWindow
|
||||
visible: true
|
||||
@ -22,27 +23,54 @@ Item {
|
||||
opacity: .05
|
||||
fillMode: Image.Tile
|
||||
}
|
||||
Loader {
|
||||
id: loader
|
||||
anchors.fill: parent
|
||||
asynchronous: true
|
||||
source: {
|
||||
Qt.resolvedUrl(window.sourcePath)
|
||||
}
|
||||
|
||||
onStatusChanged: {
|
||||
if (loader.status === Loader.Ready) {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
id: mouseArea
|
||||
anchors.fill: parent
|
||||
|
||||
onPressed: {
|
||||
backend.setClickPos(Qt.point(mouse.x, mouse.y))
|
||||
window.setClickPos(Qt.point(mouse.x, mouse.y))
|
||||
}
|
||||
|
||||
onPositionChanged: {
|
||||
backend.setPos(mouse.x, mouse.y)
|
||||
window.setPos(mouse.x, mouse.y)
|
||||
}
|
||||
onClicked: {
|
||||
|
||||
if (mouse.button === Qt.RightButton) {
|
||||
contextMenu.popup()
|
||||
}
|
||||
}
|
||||
}
|
||||
Menu {
|
||||
id: contextMenu
|
||||
|
||||
MenuItem {
|
||||
text: qsTr("Close Widget")
|
||||
onClicked: {
|
||||
Qt.quit()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: backend
|
||||
target: window
|
||||
|
||||
onSetWidgetSource: {
|
||||
loader.source = Qt.resolvedUrl("file:///" + source)
|
||||
print(loader.source)
|
||||
}
|
||||
|
||||
onQmlSceneValueReceived: {
|
||||
var obj2 = 'import QtQuick 2.12; Item {Component.onCompleted: loader.item.'
|
||||
@ -52,14 +80,5 @@ Item {
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: loader
|
||||
anchors.fill: parent
|
||||
asynchronous: true
|
||||
onStatusChanged: {
|
||||
if (loader.status === Loader.Ready) {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,118 +0,0 @@
|
||||
#include "spwidgetmainwindow.h"
|
||||
|
||||
#include <QCoreApplication>
|
||||
|
||||
SPWidgetmainwindow::SPWidgetmainwindow(QString projectPath, QString appid, QScreen* parent)
|
||||
: QWindow(parent)
|
||||
{
|
||||
|
||||
m_appID = appid;
|
||||
|
||||
m_hwnd = (HWND)this->winId();
|
||||
Qt::WindowFlags flags = this->flags();
|
||||
this->setWidth(500);
|
||||
this->setHeight(300);
|
||||
this->setFlags(flags | Qt::FramelessWindowHint | Qt::NoDropShadowWindowHint | Qt::BypassWindowManagerHint | Qt::SplashScreen);
|
||||
|
||||
QFile configTmp;
|
||||
QJsonDocument configJsonDocument;
|
||||
QJsonParseError parseError;
|
||||
|
||||
configTmp.setFileName(projectPath + "/project.json");
|
||||
configTmp.open(QIODevice::ReadOnly | QIODevice::Text);
|
||||
m_projectConfig = configTmp.readAll();
|
||||
configJsonDocument = QJsonDocument::fromJson(m_projectConfig.toUtf8(), &parseError);
|
||||
|
||||
if (!(parseError.error == QJsonParseError::NoError)) {
|
||||
qWarning("Settings Json Parse Error ");
|
||||
}
|
||||
m_project = configJsonDocument.object();
|
||||
QString fullPath = projectPath + "/" + m_project.value("file").toString();
|
||||
|
||||
m_quickRenderer = QSharedPointer<QQuickView>(new QQuickView(this));
|
||||
m_quickRenderer.data()->rootContext()->setContextProperty("backend", this);
|
||||
m_quickRenderer.data()->setColor(Qt::transparent);
|
||||
m_quickRenderer.data()->setWidth(this->width());
|
||||
m_quickRenderer.data()->setHeight(this->height());
|
||||
m_quickRenderer.data()->setResizeMode(QQuickView::ResizeMode::SizeRootObjectToView);
|
||||
|
||||
m_quickRenderer.data()->setSource(QUrl("qrc:/main.qml"));
|
||||
#ifdef Q_OS_WIN
|
||||
SetWindowBlur(m_hwnd);
|
||||
#endif
|
||||
show();
|
||||
m_quickRenderer.data()->show();
|
||||
|
||||
emit setWidgetSource(fullPath);
|
||||
}
|
||||
|
||||
void SPWidgetmainwindow::setSize(QSize size)
|
||||
{
|
||||
this->setWidth(size.width());
|
||||
this->setHeight(size.height());
|
||||
m_quickRenderer.data()->setWidth(size.width());
|
||||
m_quickRenderer.data()->setHeight(size.height());
|
||||
}
|
||||
|
||||
void SPWidgetmainwindow::destroyThis()
|
||||
{
|
||||
QCoreApplication::quit();
|
||||
}
|
||||
|
||||
void SPWidgetmainwindow::messageReceived(QString key, QString value)
|
||||
{
|
||||
emit qmlSceneValueReceived(key, value);
|
||||
}
|
||||
|
||||
void SPWidgetmainwindow::setPos(int xPos, int yPos)
|
||||
{
|
||||
|
||||
QPoint delta((xPos - m_clickPos.x()), (yPos - m_clickPos.y()));
|
||||
int new_x = x() + delta.x();
|
||||
int new_y = y() + delta.y();
|
||||
|
||||
setPosition(QPoint(new_x, new_y));
|
||||
}
|
||||
|
||||
void SPWidgetmainwindow::setClickPos(const QPoint &clickPos)
|
||||
{
|
||||
m_clickPos = clickPos;
|
||||
}
|
||||
|
||||
void SPWidgetmainwindow::SetWindowBlur(HWND hWnd)
|
||||
{
|
||||
#ifdef Q_OS_WIN
|
||||
|
||||
const HINSTANCE hModule = LoadLibrary(TEXT("user32.dll"));
|
||||
if (hModule) {
|
||||
struct ACCENTPOLICY {
|
||||
int nAccentState;
|
||||
int nFlags;
|
||||
int nColor;
|
||||
int nAnimationId;
|
||||
};
|
||||
struct WINCOMPATTRDATA {
|
||||
int nAttribute;
|
||||
PVOID pData;
|
||||
ULONG ulDataSize;
|
||||
};
|
||||
enum class Accent {
|
||||
DISABLED = 0,
|
||||
GRADIENT = 1,
|
||||
TRANSPARENTGRADIENT = 2,
|
||||
BLURBEHIND = 3,
|
||||
ACRYLIC = 4,
|
||||
INVALID = 5
|
||||
};
|
||||
typedef BOOL(WINAPI * pSetWindowCompositionAttribute)(HWND, WINCOMPATTRDATA*);
|
||||
const pSetWindowCompositionAttribute SetWindowCompositionAttribute = (pSetWindowCompositionAttribute)GetProcAddress(hModule, "SetWindowCompositionAttribute");
|
||||
if (SetWindowCompositionAttribute) {
|
||||
ACCENTPOLICY policy = { (int)Accent::BLURBEHIND, 0, 0, 0 }; // ACCENT_ENABLE_BLURBEHIND=3...
|
||||
WINCOMPATTRDATA data = { 19, &policy, sizeof(ACCENTPOLICY) }; // WCA_ACCENT_POLICY=19
|
||||
SetWindowCompositionAttribute(hWnd, &data);
|
||||
}
|
||||
FreeLibrary(hModule);
|
||||
}
|
||||
|
||||
#endif
|
||||
}
|
118
ScreenPlayWidget/src/widgetwindow.cpp
Normal file
118
ScreenPlayWidget/src/widgetwindow.cpp
Normal file
@ -0,0 +1,118 @@
|
||||
#include "widgetwindow.h"
|
||||
|
||||
#include <QCoreApplication>
|
||||
|
||||
WidgetWindow::WidgetWindow(QString projectPath, QString appid, QObject* parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
|
||||
m_appID = appid;
|
||||
|
||||
|
||||
Qt::WindowFlags flags = m_window.flags();
|
||||
m_window.setWidth(300);
|
||||
m_window.setHeight(300);
|
||||
m_window.setFlags(flags | Qt::FramelessWindowHint | Qt::NoDropShadowWindowHint | Qt::BypassWindowManagerHint | Qt::SplashScreen);
|
||||
m_window.rootContext()->setContextProperty("window", this);
|
||||
m_window.setColor(Qt::transparent);
|
||||
|
||||
#ifdef Q_OS_WIN
|
||||
m_hwnd = reinterpret_cast<HWND>(m_window.winId());
|
||||
SetWindowBlur(m_hwnd);
|
||||
#endif
|
||||
|
||||
if (projectPath != "test") {
|
||||
QFile configTmp;
|
||||
QJsonDocument configJsonDocument;
|
||||
QJsonParseError parseError;
|
||||
|
||||
configTmp.setFileName(projectPath + "/project.json");
|
||||
configTmp.open(QIODevice::ReadOnly | QIODevice::Text);
|
||||
m_projectConfig = configTmp.readAll();
|
||||
configJsonDocument = QJsonDocument::fromJson(m_projectConfig.toUtf8(), &parseError);
|
||||
|
||||
if (!(parseError.error == QJsonParseError::NoError)) {
|
||||
qWarning("Settings Json Parse Error ");
|
||||
}
|
||||
|
||||
m_project = configJsonDocument.object();
|
||||
QString fullPath = "file:///" + projectPath + "/" + m_project.value("file").toString();
|
||||
setSourcePath(fullPath);
|
||||
} else {
|
||||
setSourcePath("qrc:/test.qml");
|
||||
}
|
||||
// Instead of setting "renderType: Text.NativeRendering" every time
|
||||
// we can set it here once :)
|
||||
m_window.setTextRenderType(QQuickWindow::TextRenderType::NativeTextRendering);
|
||||
m_window.setSource(QUrl("qrc:/mainWidget.qml"));
|
||||
m_window.show();
|
||||
|
||||
}
|
||||
|
||||
void WidgetWindow::setSize(QSize size)
|
||||
{
|
||||
m_window.setWidth(size.width());
|
||||
m_window.setHeight(size.height());
|
||||
}
|
||||
|
||||
void WidgetWindow::destroyThis()
|
||||
{
|
||||
QCoreApplication::quit();
|
||||
}
|
||||
|
||||
void WidgetWindow::messageReceived(QString key, QString value)
|
||||
{
|
||||
emit qmlSceneValueReceived(key, value);
|
||||
}
|
||||
|
||||
void WidgetWindow::setPos(int xPos, int yPos)
|
||||
{
|
||||
|
||||
QPoint delta((xPos - m_clickPos.x()), (yPos - m_clickPos.y()));
|
||||
int new_x = m_window.x() + delta.x();
|
||||
int new_y = m_window.y() + delta.y();
|
||||
|
||||
m_window.setPosition(QPoint(new_x, new_y));
|
||||
}
|
||||
|
||||
void WidgetWindow::setClickPos(const QPoint& clickPos)
|
||||
{
|
||||
m_clickPos = clickPos;
|
||||
}
|
||||
|
||||
#ifdef Q_OS_WIN
|
||||
void WidgetWindow::SetWindowBlur(HWND hWnd)
|
||||
{
|
||||
|
||||
const HINSTANCE hModule = LoadLibrary(TEXT("user32.dll"));
|
||||
if (hModule) {
|
||||
struct ACCENTPOLICY {
|
||||
int nAccentState;
|
||||
int nFlags;
|
||||
int nColor;
|
||||
int nAnimationId;
|
||||
};
|
||||
struct WINCOMPATTRDATA {
|
||||
int nAttribute;
|
||||
PVOID pData;
|
||||
ULONG ulDataSize;
|
||||
};
|
||||
enum class Accent {
|
||||
DISABLED = 0,
|
||||
GRADIENT = 1,
|
||||
TRANSPARENTGRADIENT = 2,
|
||||
BLURBEHIND = 3,
|
||||
ACRYLIC = 4,
|
||||
INVALID = 5
|
||||
};
|
||||
typedef BOOL(WINAPI * pSetWindowCompositionAttribute)(HWND, WINCOMPATTRDATA*);
|
||||
const pSetWindowCompositionAttribute SetWindowCompositionAttribute = (pSetWindowCompositionAttribute)GetProcAddress(hModule, "SetWindowCompositionAttribute");
|
||||
if (SetWindowCompositionAttribute) {
|
||||
ACCENTPOLICY policy = { static_cast<int>(Accent::BLURBEHIND), 0, 0, 0 }; // ACCENT_ENABLE_BLURBEHIND=3...
|
||||
WINCOMPATTRDATA data = { 19, &policy, sizeof(ACCENTPOLICY) }; // WCA_ACCENT_POLICY=19
|
||||
SetWindowCompositionAttribute(hWnd, &data);
|
||||
}
|
||||
FreeLibrary(hModule);
|
||||
}
|
||||
}
|
||||
#endif
|
@ -8,27 +8,28 @@
|
||||
#include <QPoint>
|
||||
#include <QQmlApplicationEngine>
|
||||
#include <QQmlContext>
|
||||
#include <QtQuick/QQuickView>
|
||||
#include <QtQuick/QQuickWindow>
|
||||
#include <QQmlEngine>
|
||||
#include <QQuickWindow>
|
||||
#include <QSharedPointer>
|
||||
#include <QString>
|
||||
#include <QWindow>
|
||||
#include <QtQuick/QQuickView>
|
||||
#include <QtQuick/QQuickWindow>
|
||||
|
||||
#ifdef Q_OS_WIN
|
||||
#include <qt_windows.h>
|
||||
#else
|
||||
typedef long HWND;
|
||||
#endif
|
||||
|
||||
class SPWidgetmainwindow : public QWindow {
|
||||
class WidgetWindow : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SPWidgetmainwindow(QString projectPath, QString appid, QScreen* parent = nullptr);
|
||||
explicit WidgetWindow(QString projectPath, QString appid, QObject* parent = nullptr);
|
||||
|
||||
Q_PROPERTY(QString appID READ appID WRITE setAppID NOTIFY appIDChanged)
|
||||
Q_PROPERTY(QString type READ type WRITE setType NOTIFY typeChanged)
|
||||
Q_PROPERTY(QString projectConfig READ projectConfig WRITE setProjectConfig NOTIFY projectConfigChanged)
|
||||
Q_PROPERTY(QString sourcePath READ sourcePath WRITE setSourcePath NOTIFY sourcePathChanged)
|
||||
|
||||
QString appID() const
|
||||
{
|
||||
@ -45,17 +46,24 @@ public:
|
||||
return m_projectConfig;
|
||||
}
|
||||
|
||||
QString sourcePath() const
|
||||
{
|
||||
return m_sourcePath;
|
||||
}
|
||||
|
||||
signals:
|
||||
void appIDChanged(QString appID);
|
||||
void typeChanged(QString type);
|
||||
void projectConfigChanged(QString projectConfig);
|
||||
void setWidgetSource(QString source);
|
||||
void sourcePathChanged(QString sourcePath);
|
||||
|
||||
void qmlSceneValueReceived(QString key, QString value);
|
||||
|
||||
public slots:
|
||||
void setSize(QSize size);
|
||||
void destroyThis();
|
||||
void messageReceived(QString key, QString value);
|
||||
|
||||
void setAppID(QString appID)
|
||||
{
|
||||
if (m_appID == appID)
|
||||
@ -83,15 +91,28 @@ public slots:
|
||||
|
||||
void setPos(int xPos, int yPos);
|
||||
void setClickPos(const QPoint& clickPos);
|
||||
#ifdef Q_OS_WIN
|
||||
void SetWindowBlur(HWND hWnd);
|
||||
#endif
|
||||
void setSourcePath(QString sourcePath)
|
||||
{
|
||||
if (m_sourcePath == sourcePath)
|
||||
return;
|
||||
|
||||
m_sourcePath = sourcePath;
|
||||
emit sourcePathChanged(m_sourcePath);
|
||||
}
|
||||
|
||||
private:
|
||||
QString m_appID;
|
||||
QString m_type = "qmlWidget";
|
||||
QString m_projectConfig;
|
||||
QJsonObject m_project;
|
||||
#ifdef Q_OS_WIN
|
||||
HWND m_hwnd;
|
||||
#endif
|
||||
QPoint m_clickPos = { 0, 0 };
|
||||
|
||||
QSharedPointer<QQuickView> m_quickRenderer;
|
||||
QQuickView m_window;
|
||||
QString m_sourcePath;
|
||||
};
|
25
ScreenPlayWidget/test.qml
Normal file
25
ScreenPlayWidget/test.qml
Normal file
@ -0,0 +1,25 @@
|
||||
import QtQuick 2.12
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
color: "#80000000"
|
||||
|
||||
Text {
|
||||
id: name
|
||||
text: qsTr("This is a empty test widget. You can change the source in test.qml")
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
wrapMode: Text.WordWrap
|
||||
anchors.fill: parent
|
||||
anchors.margins: 10
|
||||
color: "white"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*##^## Designer {
|
||||
D{i:0;autoSize:true;height:480;width:640}
|
||||
}
|
||||
##^##*/
|
@ -1,5 +1,6 @@
|
||||
<RCC>
|
||||
<qresource prefix="/">
|
||||
<file>qml/main.qml</file>
|
||||
<file>mainWindow.qml</file>
|
||||
<file>test.qml</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
@ -1,41 +0,0 @@
|
||||
#include "../ScreenPlaySDK/screenplaysdk.h"
|
||||
#include "src/SPWmainwindow.h"
|
||||
#include <QApplication>
|
||||
#include <QObject>
|
||||
#include <QStringList>
|
||||
#include <QtWebEngine>
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
|
||||
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
|
||||
|
||||
QApplication a(argc, argv);
|
||||
ScreenPlaySDK sdk;
|
||||
QtWebEngine::initialize();
|
||||
|
||||
// 6 parameter + 1 OS working directory default paramter
|
||||
QStringList argumentList = a.arguments();
|
||||
if (argumentList.length() != 7) {
|
||||
return -3;
|
||||
}
|
||||
|
||||
bool canParseMonitorNumber = false;
|
||||
int monitor = argumentList.at(1).toInt(&canParseMonitorNumber);
|
||||
|
||||
if (!canParseMonitorNumber) {
|
||||
return -4;
|
||||
}
|
||||
|
||||
// Args: which monitor, (2) path to project, (3)wallpaper secret to identify the connected socket, (4) decoder, (5) volume, (6) fillmode
|
||||
// See screenplay.h @ScreenPlayWallpaper constructor how the args get created
|
||||
//MainWindow w(0,"D:/672870/_tmp_135011","","","","");
|
||||
sdk.setAppID(argumentList.at(3));
|
||||
qDebug() << "Starting MainWindow: " << argumentList.at(2) << argumentList.at(3) << argumentList.at(4) << argumentList.at(5) << argumentList.at(6);
|
||||
MainWindow w(monitor, argumentList.at(2), argumentList.at(3), argumentList.at(4), argumentList.at(5), argumentList.at(6));
|
||||
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::sdkDisconnected, &w, &MainWindow::destroyThis);
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::incommingMessage, &w, &MainWindow::messageReceived);
|
||||
|
||||
return a.exec();
|
||||
}
|
@ -1,28 +1,45 @@
|
||||
TEMPLATE = app
|
||||
QT += qml quick quickcontrols2 widgets core webengine
|
||||
CONFIG += c++17
|
||||
#CONFIG += qtquickcompiler
|
||||
msvc: LIBS += -luser32
|
||||
|
||||
DEFINES += QT_DEPRECATED_WARNINGS
|
||||
|
||||
TARGETPATH = ScreenPlayWindow
|
||||
|
||||
SOURCES += \
|
||||
SPWmain.cpp \
|
||||
src/SPWmainwindow.cpp
|
||||
|
||||
HEADERS += \
|
||||
src/SPWmainwindow.h
|
||||
|
||||
RESOURCES += \
|
||||
SPWResources.qrc
|
||||
|
||||
|
||||
INCLUDEPATH += \
|
||||
$$PWD/../../ThirdParty/ \
|
||||
$$PWD/../../src/ \
|
||||
SOURCES += \
|
||||
main.cpp \
|
||||
src/basewindow.cpp \
|
||||
|
||||
include(../ScreenPlaySDK/Screenplaysdk.pri)
|
||||
HEADERS += \
|
||||
src/basewindow.h \
|
||||
|
||||
macx: {
|
||||
unix{
|
||||
SOURCES += \
|
||||
src/linuxwindow.cpp
|
||||
|
||||
HEADERS += \
|
||||
src/linuxwindow.h
|
||||
}
|
||||
|
||||
win32 {
|
||||
LIBS += -luser32
|
||||
SOURCES += \
|
||||
src/windowsdesktopproperties.cpp \
|
||||
src/winwindow.cpp
|
||||
|
||||
HEADERS += \
|
||||
src/windowsdesktopproperties.h \
|
||||
src/winwindow.h
|
||||
}
|
||||
|
||||
include(../ScreenPlaySDK/ScreenPlaySDK.pri)
|
||||
|
||||
macx {
|
||||
QMAKE_LIBDIR += $$OUT_PWD/
|
||||
install_it.path = $${OUT_PWD}/../ScreenPlaySDK
|
||||
|
||||
@ -35,40 +52,29 @@ macx: {
|
||||
HEADERS += src/macintegration.h \
|
||||
src/macbridge.h
|
||||
OBJECTIVE_SOURCES += src/MacBridge.mm
|
||||
|
||||
SOURCES += \
|
||||
src/macwindow.cpp
|
||||
|
||||
HEADERS += \
|
||||
src/macwindow.h
|
||||
}
|
||||
|
||||
!macx: {
|
||||
!macx {
|
||||
CONFIG(debug, debug|release) {
|
||||
LIBS += -lScreenplaysdkd
|
||||
LIBS += -lScreenPlaySDKd
|
||||
install_it.path = $${OUT_PWD}/debug/
|
||||
QMAKE_LIBDIR += $$OUT_PWD/../ScreenPlaySDK/debug
|
||||
} else {
|
||||
LIBS += -lScreenplaysdk
|
||||
LIBS += -lScreenPlaySDK
|
||||
install_it.path = $${OUT_PWD}/release/
|
||||
QMAKE_LIBDIR += $$OUT_PWD/../ScreenPlaySDK/release
|
||||
}
|
||||
QMAKE_LIBDIR += $$OUT_PWD/../ScreenPlaySDK
|
||||
|
||||
install_it.files += index.html \
|
||||
|
||||
INSTALLS += install_it
|
||||
DISTFILES += \
|
||||
index.html
|
||||
}
|
||||
|
||||
install_it.files += index.html \
|
||||
|
||||
# Additional import path used to resolve QML modules in Qt Creator's code model
|
||||
QML_IMPORT_PATH =
|
||||
|
||||
# Additional import path used to resolve QML modules just for Qt Quick Designer
|
||||
QML_DESIGNER_IMPORT_PATH =
|
||||
QT_QUICK_CONTROLS_STYLE = "Material"
|
||||
|
||||
# The following define makes your compiler emit warnings if you use
|
||||
# any feature of Qt which as been marked deprecated (the exact warnings
|
||||
# depend on your compiler). Please consult the documentation of the
|
||||
# deprecated API in order to know how to port your code away from it.
|
||||
DEFINES += QT_DEPRECATED_WARNINGS
|
||||
|
||||
|
||||
|
||||
INSTALLS += install_it
|
||||
DISTFILES += \
|
||||
index.html
|
||||
|
@ -8,18 +8,16 @@
|
||||
height: 100%;
|
||||
object-fit: fill;
|
||||
overflow: hidden;
|
||||
background-image: linear-gradient(120deg, #f6d365 0%, #fda085 100%);
|
||||
}
|
||||
body, html{
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
overflow: hidden;
|
||||
background:orange;
|
||||
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
overflow: hidden;
|
||||
background:black;
|
||||
}
|
||||
#errorMsg{
|
||||
position: fixed;
|
||||
top: 0;
|
||||
top: 50%;
|
||||
text-align: center;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
@ -32,10 +30,9 @@
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h2 id="errorMsg">If you can read this something went wrong. Oh well....</h2>
|
||||
<video id="videoPlayer" oncontextmenu="return false;" width="100%" height="100%" loop autoplay>
|
||||
<source id="videoSource" src="" type="video/webm" oncontextmenu="return false;" width="100%" height="100%"> Your browser does not support the video tag.
|
||||
<source id="videoSource" type="video/webm" oncontextmenu="return false;" width="100%" height="100%"> Your browser does not support the video tag. WTF?
|
||||
</video>
|
||||
</body>
|
||||
</html>
|
||||
|
106
ScreenPlayWindow/main.cpp
Normal file
106
ScreenPlayWindow/main.cpp
Normal file
@ -0,0 +1,106 @@
|
||||
#include <QApplication>
|
||||
#include <QObject>
|
||||
#include <QStringList>
|
||||
#include <QtGlobal>
|
||||
#include <QtWebEngine>
|
||||
|
||||
#if defined(Q_OS_WIN)
|
||||
#include "src/winwindow.h"
|
||||
#endif
|
||||
|
||||
#if defined(Q_OS_LINUX)
|
||||
#include "src/linuxwindow.h"
|
||||
#endif
|
||||
|
||||
#if defined(Q_OS_OSX)
|
||||
#include "src/macwindow.h"
|
||||
#endif
|
||||
|
||||
#include "../ScreenPlaySDK/screenplaysdk.h"
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
|
||||
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
|
||||
|
||||
QApplication app(argc, argv);
|
||||
|
||||
// This gives us nice clickable output in QtCreator
|
||||
qSetMessagePattern("%{if-category}%{category}: %{endif}%{message}\n Loc: [%{file}:%{line}]");
|
||||
|
||||
// Qt < 6.0 needs this init QtWebEngine
|
||||
QtWebEngine::initialize();
|
||||
|
||||
// If we start with only one argument (app path)
|
||||
// It means we want to test a single wallpaper
|
||||
QStringList argumentList = app.arguments();
|
||||
if (argumentList.length() == 1) {
|
||||
QVector<int> list;
|
||||
list.append(0);
|
||||
#if defined(Q_OS_WIN)
|
||||
WinWindow window(list, "test", "appid", "1");
|
||||
// WinWindow window(list, "D:/672870/827874818", "appid", "1");
|
||||
#endif
|
||||
#if defined(Q_OS_LINUX)
|
||||
LinuxWindow window(list, "test", "appid", "1");
|
||||
#endif
|
||||
#if defined(Q_OS_OSX)
|
||||
LinuxWindow window(list, "test", "appid", "1");
|
||||
#endif
|
||||
|
||||
return app.exec();
|
||||
}
|
||||
|
||||
// 6 parameter + 1 OS working directory default paramter
|
||||
if (argumentList.length() != 7) {
|
||||
return -3;
|
||||
}
|
||||
|
||||
ScreenPlaySDK sdk;
|
||||
sdk.setAppID(argumentList.at(3));
|
||||
|
||||
QString monitorNumbers = argumentList.at(1);
|
||||
QVector<int> list;
|
||||
|
||||
if (monitorNumbers.length() == 1) {
|
||||
bool canParseMonitorNumber = false;
|
||||
int monitor = monitorNumbers.toInt(&canParseMonitorNumber);
|
||||
if (!canParseMonitorNumber) {
|
||||
qFatal("Could not parse monitor id to diplay wallpaper");
|
||||
}
|
||||
list.append(monitor);
|
||||
} else {
|
||||
QStringList activeScreensList = monitorNumbers.split(",");
|
||||
for (QString s : activeScreensList) {
|
||||
bool ok = false;
|
||||
int val = s.toInt(&ok);
|
||||
if (!ok) {
|
||||
qFatal("Could not parse monitor id to diplay wallpaper");
|
||||
}
|
||||
list.append(val);
|
||||
}
|
||||
}
|
||||
|
||||
// Args: which monitor, (2) path to project, (3)wallpaper secret to identify the connected socket, (5) volume
|
||||
// See screenplay.h @ScreenPlayWallpaper constructor how the args get created
|
||||
|
||||
#if defined(Q_OS_WIN)
|
||||
WinWindow window(list, argumentList.at(2), argumentList.at(3), argumentList.at(5));
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::sdkDisconnected, &window, &WinWindow::destroyThis);
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::incommingMessage, &window, &WinWindow::messageReceived);
|
||||
#endif
|
||||
|
||||
#if defined(Q_OS_LINUX)
|
||||
LinuxWindow window(list, argumentList.at(2), argumentList.at(3), argumentList.at(5));
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::sdkDisconnected, &window, &LinuxWindow::destroyThis);
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::incommingMessage, &window, &LinuxWindow::messageReceived);
|
||||
#endif
|
||||
|
||||
#if defined(Q_OS_OSX)
|
||||
MacWindow window(list, argumentList.at(2), argumentList.at(3), argumentList.at(5));
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::sdkDisconnected, &MacWindow, &MacWindow::destroyThis);
|
||||
QObject::connect(&sdk, &ScreenPlaySDK::incommingMessage, &MacWindow, &MacWindow::messageReceived);
|
||||
#endif
|
||||
|
||||
return app.exec();
|
||||
}
|
177
ScreenPlayWindow/mainWindow.qml
Normal file
177
ScreenPlayWindow/mainWindow.qml
Normal file
@ -0,0 +1,177 @@
|
||||
import QtQuick 2.12
|
||||
import QtWebEngine 1.8
|
||||
import net.aimber.wallpaper 1.0
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
color: {
|
||||
if (desktopProperties.color === null) {
|
||||
return "black"
|
||||
} else {
|
||||
return desktopProperties.color
|
||||
}
|
||||
}
|
||||
|
||||
property bool canFadeIn: true
|
||||
|
||||
Component.onCompleted: {
|
||||
|
||||
WebEngine.settings.allowRunningInsecureContent = true
|
||||
WebEngine.settings.accelerated2dCanvasEnabled = true
|
||||
WebEngine.settings.javascriptCanOpenWindows = false
|
||||
WebEngine.settings.printElementBackgrounds = false
|
||||
WebEngine.settings.showScrollBars = false
|
||||
WebEngine.settings.playbackRequiresUserGesture = false
|
||||
|
||||
switch (window.type) {
|
||||
case Wallpaper.WallpaperType.Video:
|
||||
webView.url = Qt.resolvedUrl(window.getApplicationPath(
|
||||
) + "/index.html")
|
||||
webView.enabled = true
|
||||
|
||||
break
|
||||
case Wallpaper.WallpaperType.Html:
|
||||
webView.enabled = true
|
||||
webView.url = Qt.resolvedUrl(window.fullContentPath)
|
||||
break
|
||||
case Wallpaper.WallpaperType.ThreeJSScene:
|
||||
webView.enabled = true
|
||||
break
|
||||
case Wallpaper.WallpaperType.Qml:
|
||||
loader.source = Qt.resolvedUrl(window.fullContentPath)
|
||||
break
|
||||
}
|
||||
fadeIn()
|
||||
}
|
||||
|
||||
function fadeIn() {
|
||||
window.setVisible(true)
|
||||
if (canFadeIn) {
|
||||
animFadeIn.start()
|
||||
} else {
|
||||
imgCover.opacity = 0
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: loader
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
WebEngineView {
|
||||
id: webView
|
||||
enabled: false
|
||||
anchors.fill: parent
|
||||
onLoadProgressChanged: {
|
||||
|
||||
if (loadProgress === 100) {
|
||||
|
||||
var src = ""
|
||||
src += "var videoPlayer = document.getElementById('videoPlayer');"
|
||||
src += "var videoSource = document.getElementById('videoSource');"
|
||||
src += "videoSource.src = '" + window.fullContentPath + "';"
|
||||
src += "videoPlayer.load();"
|
||||
src += "videoPlayer.volume = " + window.volume + ";"
|
||||
src += "videoPlayer.play();"
|
||||
|
||||
webView.runJavaScript(src, function (result) {
|
||||
fadeIn()
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
onJavaScriptConsoleMessage: print(lineNumber, message)
|
||||
}
|
||||
|
||||
OpacityAnimator {
|
||||
id: animFadeIn
|
||||
target: imgCover
|
||||
from: 1
|
||||
to: 0
|
||||
duration: 300
|
||||
easing.type: Easing.InCubic
|
||||
}
|
||||
|
||||
Image {
|
||||
id: imgCover
|
||||
anchors.fill: parent
|
||||
source: Qt.resolvedUrl("file:///" + desktopProperties.wallpaperPath)
|
||||
Component.onCompleted: {
|
||||
switch (desktopProperties.wallpaperStyle) {
|
||||
case 10:
|
||||
imgCover.fillMode = Image.PreserveAspectCrop
|
||||
break
|
||||
case 6:
|
||||
imgCover.fillMode = Image.PreserveAspectFit
|
||||
break
|
||||
case 2:
|
||||
break
|
||||
case 0:
|
||||
if (desktopProperties.isTiled) {
|
||||
// Tiled
|
||||
imgCover.fillMode = Image.Tile
|
||||
} else {
|
||||
// Center
|
||||
imgCover.fillMode = Image.PreserveAspectFit
|
||||
imgCover.anchors.centerIn = parent
|
||||
imgCover.width = sourceSize.width
|
||||
imgCover.height = sourceSize.height
|
||||
}
|
||||
break
|
||||
case 22:
|
||||
canFadeIn = false
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: window
|
||||
|
||||
onQmlExit: {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.volume = 0;")
|
||||
window.destroyThis()
|
||||
}
|
||||
|
||||
onQmlSceneValueReceived: {
|
||||
var obj2 = 'import QtQuick 2.12; Item {Component.onCompleted: loader.item.'
|
||||
+ key + ' = ' + value + '; }'
|
||||
var newObject = Qt.createQmlObject(obj2.toString(), root, "err")
|
||||
newObject.destroy(10000)
|
||||
}
|
||||
|
||||
onLoopsChanged: {
|
||||
if (webView.loadProgress === 100) {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.loop = " + loops + ";")
|
||||
}
|
||||
}
|
||||
|
||||
onVolumeChanged: {
|
||||
if (webView.loadProgress === 100) {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.volume = " + volume + ";")
|
||||
}
|
||||
}
|
||||
|
||||
onPlaybackRateChanged: {
|
||||
if (webView.loadProgress === 100) {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.playbackRate = " + playbackRate + ";")
|
||||
}
|
||||
}
|
||||
|
||||
onIsPlayingChanged: {
|
||||
if (webView.loadProgress === 100) {
|
||||
if (isPlaying === "false") {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.play();")
|
||||
} else {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.pause();")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,154 +0,0 @@
|
||||
import QtQuick 2.12
|
||||
import QtWebEngine 1.8
|
||||
|
||||
Rectangle {
|
||||
id: root
|
||||
anchors.fill: parent
|
||||
|
||||
Connections {
|
||||
target: mainwindow
|
||||
|
||||
onQmlExit: {
|
||||
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.volume = 0;")
|
||||
mainwindow.destroyThis()
|
||||
}
|
||||
|
||||
onFillModeChanged: {
|
||||
|
||||
//TODO
|
||||
}
|
||||
|
||||
onQmlSceneValueReceived: {
|
||||
var obj2 = 'import QtQuick 2.12; Item {Component.onCompleted: loader.item.'
|
||||
+ key + ' = ' + value + '; }'
|
||||
var newObject = Qt.createQmlObject(obj2.toString(), root, "err")
|
||||
newObject.destroy(10000)
|
||||
}
|
||||
|
||||
onLoopsChanged: {
|
||||
if (webView.loadProgress === 100) {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.loop = " + loops + ";")
|
||||
}
|
||||
}
|
||||
|
||||
onVolumeChanged: {
|
||||
if (webView.loadProgress === 100) {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.volume = " + volume + ";")
|
||||
}
|
||||
}
|
||||
|
||||
onPlaybackRateChanged: {
|
||||
if (webView.loadProgress === 100) {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.playbackRate = " + playbackRate + ";")
|
||||
}
|
||||
}
|
||||
|
||||
onIsPlayingChanged: {
|
||||
if (webView.loadProgress === 100) {
|
||||
if (isPlaying === "false") {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.play();")
|
||||
} else {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.pause();")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
|
||||
if (mainwindow.type === "qmlScene") {
|
||||
loader.setSource(Qt.resolvedUrl(
|
||||
"file:///" + mainwindow.fullContentPath))
|
||||
mainwindow.init()
|
||||
timer.start()
|
||||
} else if (mainwindow.type === "video") {
|
||||
webView.visible = true
|
||||
webView.url = Qt.resolvedUrl(
|
||||
"file:///" + mainwindow.getApplicationPath(
|
||||
) + "/index.html")
|
||||
} else if (mainwindow.type === "html") {
|
||||
webView.visible = true
|
||||
webView.url = Qt.resolvedUrl(
|
||||
"file:///" + mainwindow.fullContentPath)
|
||||
mainwindow.init()
|
||||
timer.start()
|
||||
}
|
||||
mainwindow.init()
|
||||
timer.start()
|
||||
}
|
||||
|
||||
WebEngineView {
|
||||
id: webView
|
||||
anchors.fill: parent
|
||||
onLoadProgressChanged: {
|
||||
if (loadProgress === 100) {
|
||||
runJavaScript(("
|
||||
var videoPlayer = document.getElementById('videoPlayer');
|
||||
var videoSource = document.getElementById('videoSource');
|
||||
videoSource.src = \"file:///" + mainwindow.fullContentPath + "\";
|
||||
videoPlayer.load();
|
||||
videoPlayer.volume = " + mainwindow.volume + ";" +
|
||||
" videoPlayer.play();"), function (result) {
|
||||
|
||||
})
|
||||
}
|
||||
}
|
||||
onJavaScriptConsoleMessage: {
|
||||
print(message)
|
||||
// runJavaScript("
|
||||
// var videoPlayer = document.getElementById('errorMsg');
|
||||
// var text = document.createTextNode("+message+");
|
||||
|
||||
// videoPlayer.appendChild(text);
|
||||
|
||||
//");
|
||||
|
||||
}
|
||||
|
||||
settings.allowRunningInsecureContent: true
|
||||
settings.accelerated2dCanvasEnabled: true
|
||||
settings.javascriptCanOpenWindows: false
|
||||
settings.printElementBackgrounds: false
|
||||
settings.showScrollBars: false
|
||||
settings.playbackRequiresUserGesture: false
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: loader
|
||||
anchors.fill: parent
|
||||
onStatusChanged: {
|
||||
print(webViewWrapper.errorString())
|
||||
}
|
||||
}
|
||||
|
||||
Timer {
|
||||
id: timer
|
||||
interval: 200
|
||||
onTriggered: {
|
||||
anim.start()
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: curtain
|
||||
anchors.fill: parent
|
||||
color: "black"
|
||||
|
||||
PropertyAnimation {
|
||||
id: anim
|
||||
property: "opacity"
|
||||
target: curtain
|
||||
from: "1"
|
||||
to: "0"
|
||||
duration: 300
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@ -18,14 +18,12 @@ BOOL WINAPI SearchForWorkerWindow(HWND hwnd, LPARAM lparam)
|
||||
|
||||
//for mac https://github.com/silvansky/QtMacApp/search?q=myprivate&unscoped_q=myprivate
|
||||
|
||||
MainWindow::MainWindow(int i, QString projectPath, QString id, QString decoder, QString volume, QString fillmode, QScreen* parent)
|
||||
: QWindow(parent)
|
||||
MainWindow::MainWindow(int screenAt, QString projectPath, QString id, QString decoder, QString volume, QString fillmode, QWindow* parent)
|
||||
: QQuickView(parent)
|
||||
{
|
||||
|
||||
|
||||
|
||||
m_appID = id;
|
||||
m_screenNumber.insert(0, i);
|
||||
m_screenNumber.append(screenAt);
|
||||
setDecoder(decoder);
|
||||
setProjectPath(projectPath);
|
||||
|
||||
@ -62,23 +60,23 @@ MainWindow::MainWindow(int i, QString projectPath, QString id, QString decoder,
|
||||
if (m_project.value("type") == "video") {
|
||||
QString tmpPath = m_projectPath.toString() + "/" + m_projectFile;
|
||||
setFullContentPath(tmpPath);
|
||||
setType("video");
|
||||
setWallpaperType("video");
|
||||
} else if (m_project.value("type") == "scene") {
|
||||
return;
|
||||
} else if (m_project.value("type") == "qmlScene") {
|
||||
QString tmpPath = m_projectPath.toString() + "/" + m_projectFile;
|
||||
setFullContentPath(tmpPath);
|
||||
setType("qmlScene");
|
||||
setWallpaperType("qmlScene");
|
||||
} else if (m_project.value("type") == "html") {
|
||||
QString tmpPath = m_projectPath.toString() + "/" + m_projectFile;
|
||||
setFullContentPath(tmpPath);
|
||||
setType("html");
|
||||
setWallpaperType("html");
|
||||
}
|
||||
}
|
||||
|
||||
// Recalculate window coordiantes because of point (0,0)
|
||||
// Is at the origin monitor or the most left
|
||||
QScreen* screen = QApplication::screens().at(i);
|
||||
|
||||
int offsetX = 0;
|
||||
int offsetY = 0;
|
||||
|
||||
@ -92,14 +90,13 @@ MainWindow::MainWindow(int i, QString projectPath, QString id, QString decoder,
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef Q_OS_WIN
|
||||
#ifdef Q_OS_WIN
|
||||
|
||||
m_hwnd = (HWND)this->winId();
|
||||
m_hwnd = reinterpret_cast<HWND>(winId());
|
||||
HWND progman_hwnd = FindWindowW(L"Progman", L"Program Manager");
|
||||
|
||||
// Spawn new worker window below desktop (using some undocumented Win32 magic)
|
||||
// See
|
||||
// https://www.codeproject.com/articles/856020/draw-behind-desktop-icons-in-windows
|
||||
// See https://www.codeproject.com/articles/856020/draw-behind-desktop-icons-in-windows
|
||||
// for more details
|
||||
const DWORD WM_SPAWN_WORKER = 0x052C;
|
||||
SendMessageTimeoutW(progman_hwnd, WM_SPAWN_WORKER, 0xD, 0x1, SMTO_NORMAL,
|
||||
@ -113,67 +110,79 @@ MainWindow::MainWindow(int i, QString projectPath, QString id, QString decoder,
|
||||
}
|
||||
|
||||
//Hide first to avoid flickering
|
||||
//ShowWindow(m_worker_hwnd, SW_HIDE);
|
||||
QScreen* screen = QApplication::screens().at(screenAt);
|
||||
if (screen == nullptr) {
|
||||
destroyThis();
|
||||
}
|
||||
|
||||
ShowWindow(m_hwnd, SW_HIDE);
|
||||
MoveWindow(m_hwnd, screen->geometry().x() + offsetX, screen->geometry().y() + offsetY, screen->size().width(), screen->size().height(), true);
|
||||
SetParent(m_hwnd, m_worker_hwnd);
|
||||
UpdateWindow(m_hwnd);
|
||||
UpdateWindow(m_worker_hwnd);
|
||||
SetWindowLongPtr(m_hwnd, GWL_STYLE, WS_CHILDWINDOW);
|
||||
SetWindowLongPtr(m_hwnd, GWL_EXSTYLE, WS_EX_LEFT | WS_EX_LTRREADING | WS_EX_RIGHTSCROLLBAR | WS_EX_NOACTIVATE );
|
||||
// ShowWindow(m_hwnd, SW_SHOW);
|
||||
//MoveWindow(m_hwnd, screen->geometry().x(), screen->geometry().y() , screen->size().width(), screen->size().height(), true);
|
||||
|
||||
SetWindowLongPtr(m_hwnd, GWL_STYLE, WS_CHILDWINDOW | WS_CAPTION | WS_THICKFRAME | WS_MINIMIZE | WS_MAXIMIZE | WS_SYSMENU | WS_POPUP);
|
||||
SetWindowLongPtr(m_hwnd, GWL_EXSTYLE, WS_EX_LEFT | WS_EX_LTRREADING | WS_EX_RIGHTSCROLLBAR | WS_EX_NOACTIVATE | WS_EX_TOPMOST | WS_EX_TRANSPARENT | WS_EX_TOOLWINDOW);
|
||||
qDebug() << "Create window: " << screenAt << ", x: " << screen->geometry().x() << "y: " << screen->geometry().y() << screen->size().width() << screen->size().height();
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef Q_OS_MACOS
|
||||
|
||||
//debug
|
||||
this->setWidth(screen->size().width());
|
||||
this->setHeight(screen->size().height());
|
||||
int x = screen->geometry().x();
|
||||
int y = screen->geometry().y();
|
||||
this->setX(screen->geometry().x());// + offsetX);
|
||||
this->setY(screen->geometry().y());// + offsetY);#endif
|
||||
this->setX(screen->geometry().x()); // );
|
||||
this->setY(screen->geometry().y()); // );
|
||||
#endif
|
||||
Qt::WindowFlags flags = this->flags();
|
||||
this->setFlags(flags | Qt::FramelessWindowHint | Qt::WindowStaysOnBottomHint);
|
||||
setFlags(flags | Qt::FramelessWindowHint | Qt::WindowStaysOnBottomHint);
|
||||
rootContext()->setContextProperty("mainwindow", this);
|
||||
setSource(QUrl("qrc:/qml/main.qml"));
|
||||
setResizeMode(QQuickView::ResizeMode::SizeRootObjectToView);
|
||||
setGeometry(screen->geometry().x() + offsetX, screen->geometry().y() + offsetY, screen->size().width(), screen->size().height());
|
||||
//show();
|
||||
|
||||
m_quickRenderer = QSharedPointer<QQuickView>(new QQuickView(this));
|
||||
m_quickRenderer.data()->rootContext()->setContextProperty("mainwindow", this);
|
||||
m_quickRenderer.data()->setSource(QUrl("qrc:/qml/main.qml"));
|
||||
m_quickRenderer.data()->setGeometry(0, 0, width(), height());
|
||||
m_quickRenderer.data()->setResizeMode(QQuickView::ResizeMode::SizeRootObjectToView);
|
||||
m_quickRenderer.data()->setFlags(flags | Qt::FramelessWindowHint | Qt::WindowStaysOnBottomHint);
|
||||
m_quickRenderer.data()->show();
|
||||
UpdateWindow(m_hwnd);
|
||||
UpdateWindow(m_worker_hwnd);
|
||||
|
||||
setVolume(volume.toFloat());
|
||||
setFillMode(fillmode);
|
||||
|
||||
connect(m_quickRenderer.data(), &QQuickView::statusChanged, [=](QQuickView::Status status) {
|
||||
connect(this, &QQuickView::statusChanged, [=](QQuickView::Status status) {
|
||||
if (status == QQuickView::Error) {
|
||||
destroyThis();
|
||||
}
|
||||
});
|
||||
|
||||
setVisible(true);
|
||||
QTimer::singleShot(3000,[=](){
|
||||
ShowWindow(m_hwnd, SW_SHOWNOACTIVATE);
|
||||
});
|
||||
|
||||
//setVisible(true);
|
||||
//ShowWindow(m_hwnd, SW_SHOWDEFAULT);
|
||||
|
||||
#ifdef Q_OS_MACOS
|
||||
MacIntegration* integration = new MacIntegration(this);
|
||||
integration->SetBackgroundLevel(this);
|
||||
#endif
|
||||
|
||||
}
|
||||
void MainWindow::init()
|
||||
{
|
||||
#ifdef Q_OS_WIN
|
||||
// This needs to be set in this order or
|
||||
// the window will be opened as fullscreen!
|
||||
//ShowWindow(m_worker_hwnd, SW_SHOWDEFAULT);
|
||||
ShowWindow(m_hwnd, SW_SHOWDEFAULT);
|
||||
|
||||
//ShowWindow(m_hwnd, SW_SHOWDEFAULT);
|
||||
#endif
|
||||
}
|
||||
void MainWindow::destroyThis()
|
||||
{
|
||||
#ifdef Q_OS_WIN
|
||||
ShowWindow(m_worker_hwnd, SW_HIDE);
|
||||
|
||||
ShowWindow(m_hwnd, SW_HIDE);
|
||||
#endif
|
||||
QCoreApplication::quit();
|
||||
|
@ -13,6 +13,7 @@
|
||||
#include <QSharedPointer>
|
||||
#include <QWindow>
|
||||
#include <QtGlobal>
|
||||
#include <QTimer>
|
||||
#include <QtQuick/QQuickView>
|
||||
#include <QtQuick/QQuickWindow>
|
||||
|
||||
@ -20,18 +21,18 @@
|
||||
#include <qt_windows.h>
|
||||
#endif
|
||||
|
||||
class MainWindow : public QWindow {
|
||||
class MainWindow : public QQuickView {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit MainWindow(int i, QString projectPath, QString id, QString decoder, QString volume, QString fillmode, QScreen* parent = nullptr);
|
||||
explicit MainWindow(int screenAt, QString projectPath, QString id, QString decoder, QString volume, QString fillmode, QWindow* parent = nullptr);
|
||||
|
||||
Q_PROPERTY(QVector<int> screenNumber READ screenNumber WRITE setScreenNumber NOTIFY screenNumberChanged)
|
||||
Q_PROPERTY(QString projectConfig READ projectConfig WRITE setProjectConfig NOTIFY projectConfigChanged)
|
||||
Q_PROPERTY(QString appID READ name WRITE setname NOTIFY nameChanged)
|
||||
Q_PROPERTY(QString type READ type WRITE setType NOTIFY typeChanged)
|
||||
Q_PROPERTY(QString fullContentPath READ fullContentPath WRITE setFullContentPath NOTIFY fullContentPathChanged)
|
||||
|
||||
Q_PROPERTY(QString fullContentPath READ fullContentPath WRITE setFullContentPath NOTIFY fullContentPathChanged)
|
||||
Q_PROPERTY(QString wallpaperType READ wallpaperType WRITE setWallpaperType NOTIFY wallpaperTypeChanged)
|
||||
Q_PROPERTY(QString fillMode READ fillMode WRITE setFillMode NOTIFY fillModeChanged)
|
||||
Q_PROPERTY(bool loops READ loops WRITE setLoops NOTIFY loopsChanged)
|
||||
Q_PROPERTY(float volume READ volume WRITE setVolume NOTIFY volumeChanged)
|
||||
@ -59,11 +60,6 @@ public:
|
||||
return m_projectPath;
|
||||
}
|
||||
|
||||
QString type() const
|
||||
{
|
||||
return m_type;
|
||||
}
|
||||
|
||||
QString fillMode() const
|
||||
{
|
||||
return m_fillMode;
|
||||
@ -98,6 +94,11 @@ public:
|
||||
return m_decoder;
|
||||
}
|
||||
|
||||
QString wallpaperType() const
|
||||
{
|
||||
return m_wallpaperType;
|
||||
}
|
||||
|
||||
public slots:
|
||||
void destroyThis();
|
||||
void init();
|
||||
@ -126,15 +127,6 @@ public slots:
|
||||
emit nameChanged(m_appID);
|
||||
}
|
||||
|
||||
void setType(QString type)
|
||||
{
|
||||
if (m_type == type)
|
||||
return;
|
||||
|
||||
m_type = type;
|
||||
emit typeChanged(m_type);
|
||||
}
|
||||
|
||||
void setFillMode(QString fillMode)
|
||||
{
|
||||
if (m_fillMode == fillMode)
|
||||
@ -155,7 +147,6 @@ public slots:
|
||||
|
||||
void setVolume(float volume)
|
||||
{
|
||||
qWarning("Floating point comparison needs context sanity check");
|
||||
if (qFuzzyCompare(m_volume, volume))
|
||||
return;
|
||||
|
||||
@ -210,13 +201,22 @@ public slots:
|
||||
emit decoderChanged(m_decoder);
|
||||
}
|
||||
|
||||
void setWallpaperType(QString wallpaperType)
|
||||
{
|
||||
if (m_wallpaperType == wallpaperType)
|
||||
return;
|
||||
|
||||
m_wallpaperType = wallpaperType;
|
||||
emit wallpaperTypeChanged(m_wallpaperType);
|
||||
}
|
||||
|
||||
signals:
|
||||
void playVideo(QString path);
|
||||
void playQmlScene(QString file);
|
||||
void projectConfigChanged(QString projectConfig);
|
||||
void nameChanged(QString appID);
|
||||
void screenNumberChanged(QVector<int> screenNumber);
|
||||
void typeChanged(QString type);
|
||||
|
||||
void fillModeChanged(QString fillMode);
|
||||
void loopsChanged(bool loops);
|
||||
void volumeChanged(float volume);
|
||||
@ -227,12 +227,14 @@ signals:
|
||||
void decoderChanged(QString decoder);
|
||||
void qmlExit();
|
||||
|
||||
void wallpaperTypeChanged(QString wallpaperType);
|
||||
|
||||
private:
|
||||
#ifdef Q_OS_WIN
|
||||
HWND m_hwnd;
|
||||
HWND m_worker_hwnd;
|
||||
#endif
|
||||
QSharedPointer<QQuickView> m_quickRenderer = nullptr;
|
||||
|
||||
QUrl m_projectPath;
|
||||
QString m_projectFile;
|
||||
QJsonObject m_project;
|
||||
@ -240,7 +242,7 @@ private:
|
||||
|
||||
QString m_appID;
|
||||
QVector<int> m_screenNumber;
|
||||
QString m_type;
|
||||
|
||||
QString m_fillMode;
|
||||
bool m_loops;
|
||||
float m_volume;
|
||||
@ -248,4 +250,5 @@ private:
|
||||
bool m_isPlaying;
|
||||
float m_playbackRate;
|
||||
QString m_decoder;
|
||||
QString m_wallpaperType;
|
||||
};
|
||||
|
78
ScreenPlayWindow/src/basewindow.cpp
Normal file
78
ScreenPlayWindow/src/basewindow.cpp
Normal file
@ -0,0 +1,78 @@
|
||||
#include "basewindow.h"
|
||||
|
||||
BaseWindow::BaseWindow(QObject* parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
}
|
||||
|
||||
BaseWindow::BaseWindow(QString projectFilePath, QObject* parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
qRegisterMetaType<BaseWindow::WallpaperType>();
|
||||
qmlRegisterType<BaseWindow>("net.aimber.wallpaper", 1, 0, "Wallpaper");
|
||||
|
||||
if (projectFilePath == "test") {
|
||||
setType(BaseWindow::WallpaperType::Qml);
|
||||
setFullContentPath("qrc:/test.qml");
|
||||
return;
|
||||
}
|
||||
|
||||
QFile projectFile;
|
||||
QJsonDocument configJsonDocument;
|
||||
QJsonParseError parseError;
|
||||
|
||||
projectFile.setFileName(projectFilePath + "/project.json");
|
||||
projectFile.open(QIODevice::ReadOnly | QIODevice::Text);
|
||||
QString projectConfig = projectFile.readAll();
|
||||
configJsonDocument = QJsonDocument::fromJson(projectConfig.toUtf8(), &parseError);
|
||||
|
||||
/* project.json example:
|
||||
*{
|
||||
* "description": "",
|
||||
* "file": "example.webm",
|
||||
* "preview": "preview.png",
|
||||
* "previewGIF": "preview.gif",
|
||||
* "previewMP4": "preview.mp4",
|
||||
* "title": "example title",
|
||||
* "type": "video"
|
||||
*}
|
||||
*/
|
||||
|
||||
if (!(parseError.error == QJsonParseError::NoError)) {
|
||||
qDebug() << projectConfig << "\n"
|
||||
<< parseError.errorString();
|
||||
qFatal("Settings Json Parse Error. Exiting now!");
|
||||
}
|
||||
|
||||
QJsonObject projectObject = configJsonDocument.object();
|
||||
|
||||
if (!projectObject.contains("file")) {
|
||||
qFatal("No file was specified inside the json object!");
|
||||
}
|
||||
|
||||
if (!projectObject.contains("type")) {
|
||||
qFatal("No type was specified inside the json object!");
|
||||
}
|
||||
|
||||
setFullContentPath("file:///" + projectFilePath + "/" + projectObject.value("file").toString());
|
||||
|
||||
if (projectObject.value("type") == "video") {
|
||||
setType(BaseWindow::WallpaperType::Video);
|
||||
return;
|
||||
}
|
||||
|
||||
if (projectObject.value("type") == "scene") {
|
||||
setType(BaseWindow::WallpaperType::ThreeJSScene);
|
||||
return;
|
||||
}
|
||||
|
||||
if (projectObject.value("type") == "qml") {
|
||||
setType(BaseWindow::WallpaperType::Qml);
|
||||
return;
|
||||
}
|
||||
|
||||
if (projectObject.value("type") == "html") {
|
||||
setType(BaseWindow::WallpaperType::Html);
|
||||
return;
|
||||
}
|
||||
}
|
169
ScreenPlayWindow/src/basewindow.h
Normal file
169
ScreenPlayWindow/src/basewindow.h
Normal file
@ -0,0 +1,169 @@
|
||||
#pragma once
|
||||
|
||||
#include <QApplication>
|
||||
#include <QDebug>
|
||||
#include <QFile>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonParseError>
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
#include <qqml.h>
|
||||
|
||||
class BaseWindow : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
BaseWindow(QObject* parent = nullptr);
|
||||
BaseWindow(QString projectFilePath, QObject* parent = nullptr);
|
||||
|
||||
Q_PROPERTY(QString appID READ appID WRITE setAppID NOTIFY appIDChanged)
|
||||
Q_PROPERTY(QString fullContentPath READ fullContentPath WRITE setFullContentPath NOTIFY fullContentPathChanged)
|
||||
Q_PROPERTY(bool loops READ loops WRITE setLoops NOTIFY loopsChanged)
|
||||
Q_PROPERTY(bool isPlaying READ isPlaying WRITE setIsPlaying NOTIFY isPlayingChanged)
|
||||
Q_PROPERTY(float volume READ volume WRITE setVolume NOTIFY volumeChanged)
|
||||
Q_PROPERTY(float playbackRate READ playbackRate WRITE setPlaybackRate NOTIFY playbackRateChanged)
|
||||
Q_PROPERTY(WallpaperType type READ type WRITE setType NOTIFY typeChanged)
|
||||
|
||||
enum class WallpaperType {
|
||||
Video,
|
||||
Html,
|
||||
ThreeJSScene,
|
||||
Qml,
|
||||
};
|
||||
Q_ENUM(WallpaperType)
|
||||
|
||||
bool loops() const
|
||||
{
|
||||
return m_loops;
|
||||
}
|
||||
|
||||
float volume() const
|
||||
{
|
||||
return m_volume;
|
||||
}
|
||||
|
||||
bool isPlaying() const
|
||||
{
|
||||
return m_isPlaying;
|
||||
}
|
||||
|
||||
float playbackRate() const
|
||||
{
|
||||
return m_playbackRate;
|
||||
}
|
||||
|
||||
WallpaperType type() const
|
||||
{
|
||||
return m_type;
|
||||
}
|
||||
|
||||
QString fullContentPath() const
|
||||
{
|
||||
return m_fullContentPath;
|
||||
}
|
||||
|
||||
QString appID() const
|
||||
{
|
||||
return m_appID;
|
||||
}
|
||||
|
||||
signals:
|
||||
void loopsChanged(bool loops);
|
||||
void volumeChanged(float volume);
|
||||
void isPlayingChanged(bool isPlaying);
|
||||
void playbackRateChanged(float playbackRate);
|
||||
void typeChanged(WallpaperType type);
|
||||
void fullContentPathChanged(QString fullContentPath);
|
||||
void appIDChanged(QString appID);
|
||||
void qmlExit();
|
||||
void qmlSceneValueReceived(QString key, QString value);
|
||||
|
||||
public slots:
|
||||
virtual void destroyThis() {}
|
||||
virtual void setVisible(bool show) { Q_UNUSED(show) }
|
||||
virtual void messageReceived(QString key, QString value)
|
||||
{
|
||||
Q_UNUSED(key);
|
||||
Q_UNUSED(value)
|
||||
}
|
||||
|
||||
QString getApplicationPath()
|
||||
{
|
||||
return QApplication::applicationDirPath();
|
||||
}
|
||||
|
||||
void setLoops(bool loops)
|
||||
{
|
||||
if (m_loops == loops)
|
||||
return;
|
||||
|
||||
m_loops = loops;
|
||||
emit loopsChanged(m_loops);
|
||||
}
|
||||
void setVolume(float volume)
|
||||
{
|
||||
|
||||
if (qFuzzyCompare(m_volume, volume))
|
||||
return;
|
||||
|
||||
m_volume = volume;
|
||||
emit volumeChanged(m_volume);
|
||||
}
|
||||
void setIsPlaying(bool isPlaying)
|
||||
{
|
||||
if (m_isPlaying == isPlaying)
|
||||
return;
|
||||
|
||||
m_isPlaying = isPlaying;
|
||||
emit isPlayingChanged(m_isPlaying);
|
||||
}
|
||||
void setPlaybackRate(float playbackRate)
|
||||
{
|
||||
qWarning("Floating point comparison needs context sanity check");
|
||||
if (qFuzzyCompare(m_playbackRate, playbackRate))
|
||||
return;
|
||||
|
||||
m_playbackRate = playbackRate;
|
||||
emit playbackRateChanged(m_playbackRate);
|
||||
}
|
||||
|
||||
void setType(WallpaperType type)
|
||||
{
|
||||
if (m_type == type)
|
||||
return;
|
||||
|
||||
m_type = type;
|
||||
emit typeChanged(m_type);
|
||||
}
|
||||
|
||||
void setFullContentPath(QString fullContentPath)
|
||||
{
|
||||
if (m_fullContentPath == fullContentPath)
|
||||
return;
|
||||
|
||||
m_fullContentPath = fullContentPath;
|
||||
emit fullContentPathChanged(m_fullContentPath);
|
||||
}
|
||||
|
||||
void setAppID(QString appID)
|
||||
{
|
||||
if (m_appID == appID)
|
||||
return;
|
||||
|
||||
m_appID = appID;
|
||||
emit appIDChanged(m_appID);
|
||||
}
|
||||
|
||||
private:
|
||||
bool m_loops = true;
|
||||
bool m_isPlaying = true;
|
||||
|
||||
float m_volume = 1.0f;
|
||||
float m_playbackRate = 1.0f;
|
||||
|
||||
QString m_fullContentPath;
|
||||
QString m_appID;
|
||||
|
||||
WallpaperType m_type = BaseWindow::WallpaperType::Qml;
|
||||
};
|
38
ScreenPlayWindow/src/linuxwindow.cpp
Normal file
38
ScreenPlayWindow/src/linuxwindow.cpp
Normal file
@ -0,0 +1,38 @@
|
||||
#include "linuxwindow.h"
|
||||
|
||||
LinuxWindow::LinuxWindow(QVector<int>& activeScreensList, QString projectPath, QString id, QString volume, QObject* parent)
|
||||
: BaseWindow(projectPath)
|
||||
{
|
||||
setAppID(id);
|
||||
bool ok = false;
|
||||
float volumeParsed = volume.toFloat(&ok);
|
||||
if (!ok) {
|
||||
qFatal("Could not parse volume");
|
||||
}
|
||||
setVolume(volumeParsed);
|
||||
|
||||
// WARNING: Setting Window flags must be called *here*!
|
||||
Qt::WindowFlags flags = m_window.flags();
|
||||
m_window.setFlags(flags | Qt::FramelessWindowHint | Qt::Desktop);
|
||||
|
||||
m_window.setResizeMode(QQuickView::ResizeMode::SizeRootObjectToView);
|
||||
m_window.rootContext()->setContextProperty("window", this);
|
||||
// Instead of setting "renderType: Text.NativeRendering" every time
|
||||
// we can set it here once :)
|
||||
m_window.setTextRenderType(QQuickWindow::TextRenderType::NativeTextRendering);
|
||||
m_window.setSource(QUrl("qrc:/mainWindow.qml"));
|
||||
}
|
||||
|
||||
void LinuxWindow::setVisible(bool show)
|
||||
{
|
||||
m_window.setVisible(show);
|
||||
}
|
||||
|
||||
void LinuxWindow::destroyThis()
|
||||
{
|
||||
QCoreApplication::quit();
|
||||
}
|
||||
|
||||
void LinuxWindow::messageReceived(QString key, QString value)
|
||||
{
|
||||
}
|
31
ScreenPlayWindow/src/linuxwindow.h
Normal file
31
ScreenPlayWindow/src/linuxwindow.h
Normal file
@ -0,0 +1,31 @@
|
||||
#pragma once
|
||||
|
||||
#include <QApplication>
|
||||
#include <QDebug>
|
||||
#include <QObject>
|
||||
#include <QQmlContext>
|
||||
#include <QQmlEngine>
|
||||
#include <QQuickView>
|
||||
#include <QScreen>
|
||||
#include <QSettings>
|
||||
#include <QString>
|
||||
#include <QVector>
|
||||
|
||||
#include "basewindow.h"
|
||||
|
||||
class LinuxWindow : public BaseWindow
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit LinuxWindow(QVector<int>& activeScreensList, QString projectPath, QString id, QString volume,QObject *parent = nullptr);
|
||||
|
||||
signals:
|
||||
|
||||
public slots:
|
||||
void setVisible(bool show) override;
|
||||
void destroyThis() override;
|
||||
void messageReceived(QString key, QString value) override;
|
||||
private:
|
||||
QQuickView m_window;
|
||||
};
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "macintegration.h"
|
||||
#include "macbridge.h"
|
||||
|
||||
MacIntegration::MacIntegration(QObject *parent)
|
||||
MacIntegration::MacIntegration(QObject* parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
MacBridge::instance();
|
||||
|
@ -1,15 +1,10 @@
|
||||
#ifndef MACINTEGRATION_H
|
||||
#define MACINTEGRATION_H
|
||||
#pragma oncer
|
||||
|
||||
#include <QApplication>
|
||||
|
||||
|
||||
class MacIntegration : public QObject
|
||||
{
|
||||
class MacIntegration : public QObject {
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit MacIntegration(QObject *parent);
|
||||
explicit MacIntegration(QObject* parent);
|
||||
void SetBackgroundLevel(QWindow* window);
|
||||
};
|
||||
|
||||
#endif // MACINTEGRATION_H
|
||||
|
38
ScreenPlayWindow/src/macwindow.cpp
Normal file
38
ScreenPlayWindow/src/macwindow.cpp
Normal file
@ -0,0 +1,38 @@
|
||||
#include "macwindow.h"
|
||||
|
||||
MacWindow::MacWindow(QVector<int>& activeScreensList, QString projectPath, QString id, QString volume, QObject* parent)
|
||||
: BaseWindow(projectPath)
|
||||
{
|
||||
setAppID(id);
|
||||
bool ok = false;
|
||||
float volumeParsed = volume.toFloat(&ok);
|
||||
if (!ok) {
|
||||
qFatal("Could not parse volume");
|
||||
}
|
||||
setVolume(volumeParsed);
|
||||
|
||||
// WARNING: Setting Window flags must be called *here*!
|
||||
Qt::WindowFlags flags = m_window.flags();
|
||||
m_window.setFlags(flags | Qt::FramelessWindowHint | Qt::Desktop);
|
||||
|
||||
m_window.setResizeMode(QQuickView::ResizeMode::SizeRootObjectToView);
|
||||
m_window.rootContext()->setContextProperty("window", this);
|
||||
// Instead of setting "renderType: Text.NativeRendering" every time
|
||||
// we can set it here once :)
|
||||
m_window.setTextRenderType(QQuickWindow::TextRenderType::NativeTextRendering);
|
||||
m_window.setSource(QUrl("qrc:/mainWindow.qml"));
|
||||
}
|
||||
|
||||
void MacWindow::setVisible(bool show)
|
||||
{
|
||||
m_window.setVisible(show);
|
||||
}
|
||||
|
||||
void MacWindow::destroyThis()
|
||||
{
|
||||
QCoreApplication::quit();
|
||||
}
|
||||
|
||||
void MacWindow::messageReceived(QString key, QString value)
|
||||
{
|
||||
}
|
31
ScreenPlayWindow/src/macwindow.h
Normal file
31
ScreenPlayWindow/src/macwindow.h
Normal file
@ -0,0 +1,31 @@
|
||||
#pragma once
|
||||
|
||||
#include <QApplication>
|
||||
#include <QDebug>
|
||||
#include <QObject>
|
||||
#include <QQmlContext>
|
||||
#include <QQmlEngine>
|
||||
#include <QQuickView>
|
||||
#include <QScreen>
|
||||
#include <QSettings>
|
||||
#include <QString>
|
||||
#include <QVector>
|
||||
|
||||
#include "basewindow.h"
|
||||
|
||||
class MacWindow : public BaseWindow
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit MacWindow(QVector<int>& activeScreensList, QString projectPath, QString id, QString volume,QObject *parent = nullptr);
|
||||
|
||||
signals:
|
||||
|
||||
public slots:
|
||||
void setVisible(bool show) override;
|
||||
void destroyThis() override;
|
||||
void messageReceived(QString key, QString value) override;
|
||||
private:
|
||||
QQuickView m_window;
|
||||
};
|
||||
|
30
ScreenPlayWindow/src/windowsdesktopproperties.cpp
Normal file
30
ScreenPlayWindow/src/windowsdesktopproperties.cpp
Normal file
@ -0,0 +1,30 @@
|
||||
#include "windowsdesktopproperties.h"
|
||||
|
||||
WindowsDesktopProperties::WindowsDesktopProperties(QObject* parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
qmlRegisterType<WindowsDesktopProperties>();
|
||||
QSettings settings("HKEY_CURRENT_USER\\Control Panel\\Desktop", QSettings::NativeFormat);
|
||||
|
||||
setWallpaperPath(settings.value("WallPaper").toString());
|
||||
setIsTiled(settings.value("TileWallpaper").toBool());
|
||||
|
||||
QPoint pos;
|
||||
pos.setX(settings.value("WallpaperOriginX").toInt());
|
||||
pos.setY(settings.value("WallpaperOriginY").toInt());
|
||||
setPosition(pos);
|
||||
|
||||
setWallpaperStyle(settings.value("WallpaperStyle").toInt());
|
||||
|
||||
QSettings settingscolor("HKEY_CURRENT_USER\\Control Panel\\Colors", QSettings::NativeFormat);
|
||||
|
||||
QString colorStringRGB = settingscolor.value("Background").toString();
|
||||
QStringList colorStringRGBList = colorStringRGB.split(" ");
|
||||
|
||||
if (colorStringRGBList.length() == 3) {
|
||||
int colorR = colorStringRGBList.at(0).toInt();
|
||||
int colorG = colorStringRGBList.at(1).toInt();
|
||||
int colorB = colorStringRGBList.at(2).toInt();
|
||||
setColor(QColor::fromRgb(colorR, colorG, colorB));
|
||||
}
|
||||
}
|
120
ScreenPlayWindow/src/windowsdesktopproperties.h
Normal file
120
ScreenPlayWindow/src/windowsdesktopproperties.h
Normal file
@ -0,0 +1,120 @@
|
||||
#pragma once
|
||||
|
||||
#include <QColor>
|
||||
#include <QDebug>
|
||||
#include <QObject>
|
||||
#include <QPoint>
|
||||
#include <QSettings>
|
||||
#include <QString>
|
||||
#include <QList>
|
||||
#include <qqml.h>
|
||||
#include <qt_windows.h>
|
||||
|
||||
class WindowsDesktopProperties : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit WindowsDesktopProperties(QObject* parent = nullptr);
|
||||
|
||||
Q_PROPERTY(QString wallpaperPath READ wallpaperPath WRITE setWallpaperPath NOTIFY wallpaperPathChanged)
|
||||
Q_PROPERTY(QPoint position READ position WRITE setPosition NOTIFY positionChanged)
|
||||
Q_PROPERTY(bool isTiled READ isTiled WRITE setIsTiled NOTIFY isTiledChanged)
|
||||
Q_PROPERTY(int wallpaperStyle READ wallpaperStyle WRITE setWallpaperStyle NOTIFY wallpaperStyleChanged)
|
||||
Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged)
|
||||
|
||||
/* WallpaperStyle integer values in the windows registry
|
||||
* 10 -> fill
|
||||
* 6 -> fit
|
||||
* 2 -> stretch
|
||||
* 0 -> tile -> isTiled true
|
||||
* 0 -> center -> isTiled false WTF Windows?
|
||||
* 22 -> span
|
||||
*/
|
||||
|
||||
QString wallpaperPath() const
|
||||
{
|
||||
return m_wallpaperPath;
|
||||
}
|
||||
|
||||
QPoint position() const
|
||||
{
|
||||
return m_position;
|
||||
}
|
||||
|
||||
bool isTiled() const
|
||||
{
|
||||
return m_isTiled;
|
||||
}
|
||||
|
||||
int wallpaperStyle() const
|
||||
{
|
||||
return m_wallpaperStyle;
|
||||
}
|
||||
|
||||
QColor color() const
|
||||
{
|
||||
return m_color;
|
||||
}
|
||||
|
||||
signals:
|
||||
|
||||
void wallpaperPathChanged(QString wallpaperPath);
|
||||
|
||||
void positionChanged(QPoint position);
|
||||
|
||||
void isTiledChanged(bool isTiled);
|
||||
|
||||
void wallpaperStyleChanged(int wallpaperStyle);
|
||||
|
||||
void colorChanged(QColor color);
|
||||
|
||||
public slots:
|
||||
void setWallpaperPath(QString wallpaperPath)
|
||||
{
|
||||
if (m_wallpaperPath == wallpaperPath)
|
||||
return;
|
||||
|
||||
m_wallpaperPath = wallpaperPath;
|
||||
emit wallpaperPathChanged(m_wallpaperPath);
|
||||
}
|
||||
void setPosition(QPoint position)
|
||||
{
|
||||
if (m_position == position)
|
||||
return;
|
||||
|
||||
m_position = position;
|
||||
emit positionChanged(m_position);
|
||||
}
|
||||
void setIsTiled(bool isTiled)
|
||||
{
|
||||
if (m_isTiled == isTiled)
|
||||
return;
|
||||
|
||||
m_isTiled = isTiled;
|
||||
emit isTiledChanged(m_isTiled);
|
||||
}
|
||||
void setWallpaperStyle(int wallpaperStyle)
|
||||
{
|
||||
if (m_wallpaperStyle == wallpaperStyle)
|
||||
return;
|
||||
|
||||
m_wallpaperStyle = wallpaperStyle;
|
||||
emit wallpaperStyleChanged(m_wallpaperStyle);
|
||||
}
|
||||
|
||||
void setColor(QColor color)
|
||||
{
|
||||
if (m_color == color)
|
||||
return;
|
||||
|
||||
m_color = color;
|
||||
emit colorChanged(m_color);
|
||||
}
|
||||
|
||||
private:
|
||||
QString m_wallpaperPath;
|
||||
QPoint m_position;
|
||||
bool m_isTiled;
|
||||
int m_wallpaperStyle;
|
||||
QColor m_color;
|
||||
};
|
151
ScreenPlayWindow/src/winwindow.cpp
Normal file
151
ScreenPlayWindow/src/winwindow.cpp
Normal file
@ -0,0 +1,151 @@
|
||||
#include "winwindow.h"
|
||||
|
||||
BOOL WINAPI SearchForWorkerWindow(HWND hwnd, LPARAM lparam)
|
||||
{
|
||||
// 0xXXXXXXX "" WorkerW
|
||||
// ...
|
||||
// 0xXXXXXXX "" SHELLDLL_DefView
|
||||
// 0xXXXXXXXX "FolderView" SysListView32
|
||||
// 0xXXXXXXXX "" WorkerW <---- We want this one
|
||||
// 0xXXXXXXXX "Program Manager" Progman
|
||||
if (FindWindowExW(hwnd, nullptr, L"SHELLDLL_DefView", nullptr))
|
||||
*reinterpret_cast<HWND*>(lparam) = FindWindowExW(nullptr, hwnd, L"WorkerW", nullptr);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
WinWindow::WinWindow(QVector<int>& activeScreensList, QString projectPath, QString id, QString volume)
|
||||
: BaseWindow(projectPath)
|
||||
{
|
||||
m_windowHandle = reinterpret_cast<HWND>(m_window.winId());
|
||||
|
||||
if (!IsWindow(m_windowHandle)) {
|
||||
qFatal("Could not get a valid window handle!");
|
||||
}
|
||||
setAppID(id);
|
||||
|
||||
bool ok = false;
|
||||
float volumeParsed = volume.toFloat(&ok);
|
||||
if (!ok) {
|
||||
qFatal("Could not parse volume");
|
||||
}
|
||||
setVolume(volumeParsed);
|
||||
|
||||
if (!searchWorkerWindowToParentTo()) {
|
||||
qFatal("No worker window found");
|
||||
}
|
||||
|
||||
// WARNING: Setting Window flags must be called *here*!
|
||||
Qt::WindowFlags flags = m_window.flags();
|
||||
m_window.setFlags(flags | Qt::FramelessWindowHint);
|
||||
SetWindowLongPtr(m_windowHandle, GWL_STYLE, WS_CHILDWINDOW);
|
||||
SetWindowLongPtr(m_windowHandle, GWL_EXSTYLE, WS_EX_LEFT | WS_EX_LTRREADING | WS_EX_RIGHTSCROLLBAR | WS_EX_NOACTIVATE);
|
||||
|
||||
// Windows coordante system begins at 0x0 at the
|
||||
// main monitors upper left and not at the most left top monitor
|
||||
calcOffsets();
|
||||
|
||||
// Ether for one Screen or for all
|
||||
if ((QApplication::screens().length() == activeScreensList.length()) && (activeScreensList.length() != 1)) {
|
||||
setupWallpaperForAllScreens();
|
||||
} else if (activeScreensList.length() == 1) {
|
||||
setupWallpaperForOneScreen(activeScreensList.at(0));
|
||||
}
|
||||
|
||||
m_window.setResizeMode(QQuickView::ResizeMode::SizeRootObjectToView);
|
||||
m_window.rootContext()->setContextProperty("window", this);
|
||||
m_window.rootContext()->setContextProperty("desktopProperties", &m_windowsDesktopProperties);
|
||||
// Instead of setting "renderType: Text.NativeRendering" every time
|
||||
// we can set it here once :)
|
||||
m_window.setTextRenderType(QQuickWindow::TextRenderType::NativeTextRendering);
|
||||
m_window.setSource(QUrl("qrc:/mainWindow.qml"));
|
||||
|
||||
// FIXME WORKAROUND:
|
||||
// There is a strange bug when we open the ScreenPlayWindow project on its one
|
||||
// that if we set ShowWindow(m_windowHandle, SW_HIDE); we can no longer set
|
||||
// the window visible via set Visible.
|
||||
if(projectPath != "test"){
|
||||
// Let QML decide when were are read to show the window
|
||||
ShowWindow(m_windowHandle, SW_HIDE);
|
||||
}
|
||||
}
|
||||
|
||||
void WinWindow::setVisible(bool show)
|
||||
{
|
||||
if (show) {
|
||||
ShowWindow(m_windowHandle, SW_SHOW);
|
||||
m_window.show();
|
||||
} else {
|
||||
ShowWindow(m_windowHandle, SW_HIDE);
|
||||
}
|
||||
}
|
||||
|
||||
void WinWindow::destroyThis()
|
||||
{
|
||||
ShowWindow(m_windowHandle, SW_HIDE);
|
||||
|
||||
// Force refresh so that we display the regular
|
||||
// desktop wallpaper again
|
||||
ShowWindow(m_windowHandleWorker, SW_HIDE);
|
||||
ShowWindow(m_windowHandleWorker, SW_SHOW);
|
||||
|
||||
QCoreApplication::quit();
|
||||
}
|
||||
|
||||
void WinWindow::messageReceived(QString key, QString value)
|
||||
{
|
||||
}
|
||||
|
||||
void WinWindow::calcOffsets()
|
||||
{
|
||||
for (int i = 0; i < QApplication::screens().count(); i++) {
|
||||
QScreen* screen = QApplication::screens().at(i);
|
||||
if (screen->availableGeometry().x() < 0) {
|
||||
m_windowOffsetX += (screen->availableGeometry().x() * -1);
|
||||
}
|
||||
if (screen->availableGeometry().y() < 0) {
|
||||
m_windowOffsetY += (screen->availableGeometry().y() * -1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void WinWindow::setupWallpaperForOneScreen(int activeScreen)
|
||||
{
|
||||
QScreen* screen = QApplication::screens().at(activeScreen);
|
||||
QRect screenRect = screen->geometry();
|
||||
m_window.setHeight(screenRect.height());
|
||||
m_window.setWidth(screenRect.width());
|
||||
if (!SetWindowPos(m_windowHandle, nullptr, screenRect.x() + m_windowOffsetX, screenRect.y() + m_windowOffsetY, screenRect.width(), screenRect.height(), SWP_SHOWWINDOW)) {
|
||||
qFatal("Could not set window pos: ");
|
||||
}
|
||||
if (SetParent(m_windowHandle, m_windowHandleWorker) == nullptr) {
|
||||
qFatal("Could not attach to parent window");
|
||||
}
|
||||
}
|
||||
|
||||
void WinWindow::setupWallpaperForAllScreens()
|
||||
{
|
||||
QRect rect;
|
||||
for (int i = 0; i < QApplication::screens().count(); i++) {
|
||||
QScreen* screenTmp = QApplication::screens().at(i);
|
||||
rect.setWidth(rect.width() + screenTmp->geometry().width());
|
||||
rect.setHeight(rect.height() + screenTmp->geometry().height());
|
||||
}
|
||||
m_window.setHeight(rect.height());
|
||||
m_window.setWidth(rect.width());
|
||||
if (!SetWindowPos(m_windowHandle, nullptr, 0, 0, rect.width(), rect.height(), SWP_SHOWWINDOW)) {
|
||||
qFatal("Could not set window pos: ");
|
||||
}
|
||||
if (SetParent(m_windowHandle, m_windowHandleWorker) == nullptr) {
|
||||
qFatal("Could not attach to parent window");
|
||||
}
|
||||
}
|
||||
|
||||
bool WinWindow::searchWorkerWindowToParentTo()
|
||||
{
|
||||
HWND progman_hwnd = FindWindowW(L"Progman", L"Program Manager");
|
||||
const DWORD WM_SPAWN_WORKER = 0x052C;
|
||||
SendMessageTimeoutW(progman_hwnd, WM_SPAWN_WORKER, 0xD, 0x1, SMTO_NORMAL,
|
||||
10000, nullptr);
|
||||
|
||||
return EnumWindows(SearchForWorkerWindow, reinterpret_cast<LPARAM>(&m_windowHandleWorker));
|
||||
}
|
44
ScreenPlayWindow/src/winwindow.h
Normal file
44
ScreenPlayWindow/src/winwindow.h
Normal file
@ -0,0 +1,44 @@
|
||||
#pragma once
|
||||
|
||||
#include <QApplication>
|
||||
#include <QDebug>
|
||||
#include <QObject>
|
||||
#include <QQmlContext>
|
||||
#include <QQmlEngine>
|
||||
#include <QQuickView>
|
||||
#include <QScreen>
|
||||
#include <QSettings>
|
||||
#include <QString>
|
||||
#include <QVector>
|
||||
#include <memory>
|
||||
|
||||
#include <qt_windows.h>
|
||||
|
||||
#include "basewindow.h"
|
||||
#include "windowsdesktopproperties.h"
|
||||
|
||||
class WinWindow : public BaseWindow {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit WinWindow(QVector<int>& activeScreensList, QString projectPath, QString id, QString volume);
|
||||
|
||||
public slots:
|
||||
void setVisible(bool show) override;
|
||||
void destroyThis() override;
|
||||
void messageReceived(QString key, QString value) override;
|
||||
|
||||
private:
|
||||
void calcOffsets();
|
||||
void setupWallpaperForOneScreen(int activeScreen);
|
||||
void setupWallpaperForAllScreens();
|
||||
bool searchWorkerWindowToParentTo();
|
||||
|
||||
private:
|
||||
int m_windowOffsetX = 0;
|
||||
int m_windowOffsetY = 0;
|
||||
QQuickView m_window;
|
||||
HWND m_windowHandle;
|
||||
HWND m_windowHandleWorker;
|
||||
WindowsDesktopProperties m_windowsDesktopProperties;
|
||||
};
|
25
ScreenPlayWindow/test.qml
Normal file
25
ScreenPlayWindow/test.qml
Normal file
@ -0,0 +1,25 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Controls.Material 2.12
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
color: Material.color(Material.Grey, Material.Shade800)
|
||||
|
||||
Text {
|
||||
id: name
|
||||
text: qsTr("This is a empty test window. You can change the source in test.qml")
|
||||
font.pointSize: 32
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
wrapMode: Text.WordWrap
|
||||
anchors.fill: parent
|
||||
anchors.margins: 10
|
||||
color: "white"
|
||||
}
|
||||
}
|
||||
|
||||
/*##^## Designer {
|
||||
D{i:0;autoSize:true;height:480;width:640}
|
||||
}
|
||||
##^##*/
|
||||
|
Loading…
Reference in New Issue
Block a user