1
0
mirror of https://gitlab.com/kelteseth/ScreenPlay.git synced 2024-11-07 03:22:33 +01:00

Merge branch 'master' into 66-port-screenplay-from-qmake-to-cmake

This commit is contained in:
Elias Steurer 2020-04-16 11:14:49 +02:00
commit 38f117b369
112 changed files with 5876 additions and 3317 deletions

View File

@ -1,48 +0,0 @@
# Contributing to ScreenPlay
### Basic
Every changes to ScreenPlay are done via Gitlab issues and merge requests (pull request for github people). These follow the normal contributing pattern: press the big blue fork button at the top of the repository, make changes, open a merge request.
### Development
1. Accept the Contributing Agreement:
* [For regular contributors](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/Legal/individual_contributor_license_agreement.md)
* [For members of a company](https://gitlab.com/kelteseth/ScreenPlay/blob/dev/Legal/corporate_contributor_license_agreement.md)
2. Download and set up ScreenPlay as described in the main [Readme](https://gitlab.com/kelteseth/ScreenPlay).
2. Choose an issue to work on:
* Your own ideas or thinks you want to improve. Alternatively you can tackle existing open issues:
* You can find simple problems by [searching for problems labeled "Accepting merge requests" sorted by weight.](https://gitlab.com/kelteseth/ScreenPlay/issues?state=opened&label_name[]=Accepting+merge+requests&assignee_id=0&sort=weight). Low-weight issues will be the easiest to accomplish.
* Make sure that no one else is working on the problem and make sure that we are still interested in a particular post.
* You can also make comments and ask for help if you are new or stuck. We will be happy to help you!
3. Add the feature or fix the bug youve chosen to work on.
4. Open a merge request to merge your code and its documentation (preferably via [draw.io]( http://draw.io/) embedded graphs). The sooner you open a merge request, the sooner you can get feedback. You can mark it as Work in Progress to indicate that you are not finished.
6. Make sure the CI builds are passing.
7. Make sure to update the translations if you've added any text via the qsTr("text) macro. It is ok to not translate your text for all the supported languages. You can always ask other contributors from other countries to verify your translations.
7. Wait for a reviewer. Youll likely need to change some things once the reviewer has completed a code review for your merge request. You may also need multiple reviews depending on the size of the change.
8. Get your changes merged!
### Programming rules
1. Use the Qt naming conventions for [C++](https://wiki.qt.io/Coding_Conventions) and [QML](https://doc.qt.io/qt-5/qml-codingconventions.html)
2. Use all the available Qt container and classes for things like (Q)Strings and (Q)Vector.
3. Use the c++17 std smart pointer.
4. Use the webkit formatting style. You can automatically format your code via the Beautifier QtCreator plugin:
* To activate this plugin you have to navigate inside your QtCreator: Help -> About Plugins -> Beautifier.
* [Download and install LLVM](http://releases.llvm.org/download.html) to format the code
* In QtCreator navigate to: Tools -> Options -> Beautifier -> Clang format -> Options -> Use predefined style: Webkit
* Add a formatting shortcut via: Tools -> Options -> Environment -> Keyboard -> Search for "format" and add your shortcut to ClangFormat, FormatFile
3. Use this [git commit message style](https://gist.github.com/robertpainsi/b632364184e70900af4ab688decf6f53)
### Documentation
To contribute to the [documentation](https://kelteseth.gitlab.io/ScreenPlayDocs/) you only have to press the pen icon on the top right of every page. We mostly use [draw.io]( http://draw.io/) for every diagram because it is free and you can embed the code inside a png when exporting the document.
### Translation
We use the [Qt Linguist] for translating ScreenPlay. This tool lets you open the ScreenPlay_<language>.ts files and edit these easily. If is included in the open source Qt SDK and normally inside your Qt bin folder: "C:\Qt\5.XX.0\msvc2017_64\bin\linguist.exe"
### Design
To design ScreenPlay we use [Affinity Designer](https://affinity.serif.com/en-gb/designer/) as superior alternative to Photoshop. But you can use any tool you like. If you have any ideas on how to improve any design aspect of ScreenPlay just open a issue with the "Design" tag and paste you mockups into the description (preferably as png or/and the source *.afdesign file)

View File

@ -1,11 +1,11 @@
# Run: # Run:
# C:\Qt\5.14.0\msvc2017_64\bin\qdoc.exe config.qdocconf # C:\Qt\5.15.0\msvc2017_64\bin\qdoc.exe config.qdocconf
# in this directory. You can shift + right click in this explorer # in this directory. You can shift + right click in this explorer
# window and select "Open PowerShell Window here" for this. # window and select "Open PowerShell Window here" for this.
include(C:\Qt\5.14.0\msvc2017_64\doc\global/qt-cpp-defines.qdocconf) include(C:\Qt\5.15.0\msvc2017_64\doc\global\qt-cpp-defines.qdocconf)
include(C:\Qt\5.14.0\msvc2017_64\doc\global/compat.qdocconf) include(C:\Qt\5.15.0\msvc2017_64\doc\global\compat.qdocconf)
include(C:\Qt\5.14.0\msvc2017_64\doc\global/fileextensions.qdocconf) include(C:\Qt\5.15.0\msvc2017_64\doc\global\fileextensions.qdocconf)
descripton = ScreenPlay is an open source cross plattform app for displaying Wallpaper, Widgets and AppDrawer. descripton = ScreenPlay is an open source cross plattform app for displaying Wallpaper, Widgets and AppDrawer.
language = Cpp language = Cpp

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- CloseIcon.qml --> <!-- CloseIcon.qml -->
<title>List of All Members for CloseIcon | ScreenPlay</title> <title>List of All Members for CloseIcon | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- CloseIcon.qml --> <!-- CloseIcon.qml -->
<title>CloseIcon QML Type | ScreenPlay</title> <title>CloseIcon QML Type | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -41,21 +40,21 @@
<!-- $$$color --> <!-- $$$color -->
<div class="qmlitem"><div class="qmlproto"> <div class="qmlitem"><div class="qmlproto">
<div class="table"><table class="qmlname"> <div class="table"><table class="qmlname">
<tr valign="top" class="odd" id=""> <tr valign="top" class="odd" id="color-prop">
<td class="tblQmlPropNode"><p> <td class="tblQmlPropNode"><p>
<a name="color-prop"></a><span class="name">color</span> : <span class="type">color</span></p></td></tr> <a name="color-prop"></a><span class="name">color</span> : <span class="type">color</span></p></td></tr>
</table></div> </table></div></div>
</div><div class="qmldoc"><p>Color if the icon.</p> <div class="qmldoc"><p>Color if the icon.</p>
</div></div><!-- @@@color --> </div></div><!-- @@@color -->
<br/> <br/>
<!-- $$$icon --> <!-- $$$icon -->
<div class="qmlitem"><div class="qmlproto"> <div class="qmlitem"><div class="qmlproto">
<div class="table"><table class="qmlname"> <div class="table"><table class="qmlname">
<tr valign="top" class="odd" id=""> <tr valign="top" class="odd" id="icon-prop">
<td class="tblQmlPropNode"><p> <td class="tblQmlPropNode"><p>
<a name="icon-prop"></a><span class="name">icon</span> : <span class="type">string</span></p></td></tr> <a name="icon-prop"></a><span class="name">icon</span> : <span class="type">string</span></p></td></tr>
</table></div> </table></div></div>
</div><div class="qmldoc"><p>Icon image if the icon.</p> <div class="qmldoc"><p>Icon image if the icon.</p>
</div></div><!-- @@@icon --> </div></div><!-- @@@icon -->
<br/> <br/>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- ImageSelector.qml --> <!-- ImageSelector.qml -->
<title>List of All Members for ImageSelector | ScreenPlay</title> <title>List of All Members for ImageSelector | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- ImageSelector.qml --> <!-- ImageSelector.qml -->
<title>ImageSelector QML Type | ScreenPlay</title> <title>ImageSelector QML Type | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- app.cpp --> <!-- app.cpp -->
<title>List of All Members for App | ScreenPlay</title> <title>List of All Members for App | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -16,6 +15,7 @@
<div class="table"><table class="propsummary"> <div class="table"><table class="propsummary">
<tr><td class="topAlign"><ul> <tr><td class="topAlign"><ul>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#create-prop">createChanged</a></b></span>(ScreenPlay::Create *)</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#create-prop">createChanged</a></b></span>(ScreenPlay::Create *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#exit">exit</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#globalVariables-prop">globalVariablesChanged</a></b></span>(ScreenPlay::GlobalVariables *)</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#globalVariables-prop">globalVariablesChanged</a></b></span>(ScreenPlay::GlobalVariables *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#installedListFilter-prop">installedListFilterChanged</a></b></span>(ScreenPlay::InstalledListFilter *)</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#installedListFilter-prop">installedListFilterChanged</a></b></span>(ScreenPlay::InstalledListFilter *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#installedListModel-prop">installedListModelChanged</a></b></span>(ScreenPlay::InstalledListModel *)</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#installedListModel-prop">installedListModelChanged</a></b></span>(ScreenPlay::InstalledListModel *)</li>
@ -40,6 +40,7 @@
<li class="fn"><span class="name"><b><a href="screenplay-app.html#util-prop">utilChanged</a></b></span>(ScreenPlay::Util *)</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#util-prop">utilChanged</a></b></span>(ScreenPlay::Util *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#create-prop">create</a></b></span>() const : ScreenPlay::Create *</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#create-prop">create</a></b></span>() const : ScreenPlay::Create *</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#globalVariables-prop">globalVariables</a></b></span>() const : ScreenPlay::GlobalVariables *</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#globalVariables-prop">globalVariables</a></b></span>() const : ScreenPlay::GlobalVariables *</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#init">init</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#installedListFilter-prop">installedListFilter</a></b></span>() const : ScreenPlay::InstalledListFilter *</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#installedListFilter-prop">installedListFilter</a></b></span>() const : ScreenPlay::InstalledListFilter *</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#installedListModel-prop">installedListModel</a></b></span>() const : ScreenPlay::InstalledListModel *</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#installedListModel-prop">installedListModel</a></b></span>() const : ScreenPlay::InstalledListModel *</li>
<li class="fn"><span class="name"><b><a href="screenplay-app.html#mainWindowEngine-prop">mainWindowEngine</a></b></span>() const : QQmlApplicationEngine *</li> <li class="fn"><span class="name"><b><a href="screenplay-app.html#mainWindowEngine-prop">mainWindowEngine</a></b></span>() const : QQmlApplicationEngine *</li>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- app.cpp --> <!-- app.cpp -->
<title>App Class | ScreenPlay</title> <title>App Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -22,7 +21,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">App Class</h1> <h1 class="title">App Class</h1>
<span class="small-subtitle">(<a href="screenplay-app.html">ScreenPlay::App</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::App</span>
<!-- $$$App-brief --> <!-- $$$App-brief -->
<p>The App class contains all members for <a href="screenplay.html">ScreenPlay</a>. <a href="#details">More...</a></p> <p>The App class contains all members for <a href="screenplay.html">ScreenPlay</a>. <a href="#details">More...</a></p>
<!-- @@@App --> <!-- @@@App -->
@ -36,6 +35,7 @@
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::Create *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#create-prop">create</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::Create *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#create-prop">create</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::GlobalVariables *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#globalVariables-prop">globalVariables</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::GlobalVariables *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#globalVariables-prop">globalVariables</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#init">init</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::InstalledListFilter *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#installedListFilter-prop">installedListFilter</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::InstalledListFilter *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#installedListFilter-prop">installedListFilter</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::InstalledListModel *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#installedListModel-prop">installedListModel</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::InstalledListModel *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#installedListModel-prop">installedListModel</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QQmlApplicationEngine *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#mainWindowEngine-prop">mainWindowEngine</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QQmlApplicationEngine *</td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#mainWindowEngine-prop">mainWindowEngine</a></b>() const</td></tr>
@ -49,6 +49,7 @@
<a name="public-slots"></a> <a name="public-slots"></a>
<h2 id="public-slots">Public Slots</h2> <h2 id="public-slots">Public Slots</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#exit">exit</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#create-prop">setCreate</a></b>(ScreenPlay::Create *<i>create</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#create-prop">setCreate</a></b>(ScreenPlay::Create *<i>create</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#globalVariables-prop">setGlobalVariables</a></b>(ScreenPlay::GlobalVariables *<i>globalVariables</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#globalVariables-prop">setGlobalVariables</a></b>(ScreenPlay::GlobalVariables *<i>globalVariables</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#installedListFilter-prop">setInstalledListFilter</a></b>(ScreenPlay::InstalledListFilter *<i>installedListFilter</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-app.html#installedListFilter-prop">setInstalledListFilter</a></b>(ScreenPlay::InstalledListFilter *<i>installedListFilter</i>)</td></tr>
@ -105,5 +106,16 @@
</div> </div>
</div> </div>
<!-- @@@App --> <!-- @@@App -->
<div class="func">
<h2>Member Function Documentation</h2>
<!-- $$$exit[overload1]$$$exit -->
<h3 class="fn" id="exit"><a name="exit"></a><code>[slot] </code><span class="type">void</span> App::<span class="name">exit</span>()</h3>
<p>Tries to send the telemetry quit event before we call quit ourself.</p>
<!-- @@@exit -->
<!-- $$$init[overload1]$$$init -->
<h3 class="fn" id="init"><a name="init"></a><span class="type">void</span> App::<span class="name">init</span>()</h3>
<p>Used for initialization after the constructor. The sole purpose is to check if another <a href="screenplay.html">ScreenPlay</a> instance is running and then quit early. This is also because we cannot call QApplication::quit(); in the <a href="screenplay-sdkconnector.html">SDKConnector</a> before the app.exec(); ( the Qt main event loop ) has started.</p>
<!-- @@@init -->
</div>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>
</html> </html>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- create.cpp --> <!-- create.cpp -->
<title>List of All Members for Create | ScreenPlay</title> <title>List of All Members for Create | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -13,14 +12,19 @@
<div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">List of All Members for Create</h1> <h1 class="title">List of All Members for Create</h1>
<p>This is the complete list of members for <a href="screenplay-create.html">ScreenPlay::Create</a>, including inherited members.</p> <p>This is the complete list of members for <a href="screenplay-create.html">ScreenPlay::Create</a>, including inherited members.</p>
<ul> <div class="table"><table class="propsummary">
<tr><td class="topAlign"><ul>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#Create-1">Create</a></b></span>()</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#Create-1">Create</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#Create">Create</a></b></span>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;, QObject *)</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#Create">Create</a></b></span>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;, QObject *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#abortAndCleanup">abortAndCleanup</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#ffmpegOutput-prop">appendFfmpegOutput</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#ffmpegOutput-prop">appendFfmpegOutput</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#createWallpaperStart">createWallpaperStart</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#createHTMLWallpaper">createHTMLWallpaper</a></b></span>(const QString &amp;, const QString &amp;, const QString &amp;, const QString &amp;, const QVector&lt;QString&gt; &amp;)</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#createWallpaperStart">createWallpaperStart</a></b></span>(QString , Create::VideoCodec )</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#createWidget">createWidget</a></b></span>(const QString &amp;, const QString &amp;, const QString &amp;, const QString &amp;, const QString &amp;, const QString &amp;, const QVector&lt;QString&gt; &amp;)</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#ffmpegOutput-prop">ffmpegOutputChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#ffmpegOutput-prop">ffmpegOutputChanged</a></b></span>(QString )</li>
</ul></td><td class="topAlign"><ul>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#progress-prop">progressChanged</a></b></span>(float )</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#progress-prop">progressChanged</a></b></span>(float )</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#saveWallpaper">saveWallpaper</a></b></span>(QString , QString , QString , QString , QString , QVector&lt;QString&gt; )</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#saveWallpaper">saveWallpaper</a></b></span>(QString , QString , QString , QString , QString , ScreenPlay::Create::VideoCodec , QVector&lt;QString&gt; )</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#progress-prop">setProgress</a></b></span>(float )</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#progress-prop">setProgress</a></b></span>(float )</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#workingDir-prop">setWorkingDir</a></b></span>(const QString &amp;)</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#workingDir-prop">setWorkingDir</a></b></span>(const QString &amp;)</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#workingDir-prop">workingDirChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#workingDir-prop">workingDirChanged</a></b></span>(QString )</li>
@ -28,5 +32,7 @@
<li class="fn"><span class="name"><b><a href="screenplay-create.html#progress-prop">progress</a></b></span>() const : float</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#progress-prop">progress</a></b></span>() const : float</li>
<li class="fn"><span class="name"><b><a href="screenplay-create.html#workingDir-prop">workingDir</a></b></span>() const : QString</li> <li class="fn"><span class="name"><b><a href="screenplay-create.html#workingDir-prop">workingDir</a></b></span>() const : QString</li>
</ul> </ul>
</td></tr>
</table></div>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>
</html> </html>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- create.cpp --> <!-- create.cpp -->
<title>Create Class | ScreenPlay</title> <title>Create Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -22,7 +21,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">Create Class</h1> <h1 class="title">Create Class</h1>
<span class="small-subtitle">(<a href="screenplay-create.html">ScreenPlay::Create</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::Create</span>
<!-- $$$Create-brief --> <!-- $$$Create-brief -->
<p>Baseclass for creating wallapers, widgets and the corresponding wizards. <a href="#details">More...</a></p> <p>Baseclass for creating wallapers, widgets and the corresponding wizards. <a href="#details">More...</a></p>
<!-- @@@Create --> <!-- @@@Create -->
@ -43,9 +42,12 @@
<a name="public-slots"></a> <a name="public-slots"></a>
<h2 id="public-slots">Public Slots</h2> <h2 id="public-slots">Public Slots</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#abortAndCleanup">abortAndCleanup</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#ffmpegOutput-prop">appendFfmpegOutput</a></b>(QString <i>ffmpegOutput</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#ffmpegOutput-prop">appendFfmpegOutput</a></b>(QString <i>ffmpegOutput</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#createWallpaperStart">createWallpaperStart</a></b>(QString <i>videoPath</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#createHTMLWallpaper">createHTMLWallpaper</a></b>(const QString &amp;<i>localStoragePath</i>, const QString &amp;<i>title</i>, const QString &amp;<i>previewThumbnail</i>, const QString &amp;<i>license</i>, const QVector&lt;QString&gt; &amp;<i>tags</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#saveWallpaper">saveWallpaper</a></b>(QString <i>title</i>, QString <i>description</i>, QString <i>filePath</i>, QString <i>previewImagePath</i>, QString <i>youtube</i>, QVector&lt;QString&gt; <i>tags</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#createWallpaperStart">createWallpaperStart</a></b>(QString <i>videoPath</i>, Create::VideoCodec <i>codec</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#createWidget">createWidget</a></b>(const QString &amp;<i>localStoragePath</i>, const QString &amp;<i>title</i>, const QString &amp;<i>previewThumbnail</i>, const QString &amp;<i>createdBy</i>, const QString &amp;<i>license</i>, const QString &amp;<i>type</i>, const QVector&lt;QString&gt; &amp;<i>tags</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#saveWallpaper">saveWallpaper</a></b>(QString <i>title</i>, QString <i>description</i>, QString <i>filePath</i>, QString <i>previewImagePath</i>, QString <i>youtube</i>, ScreenPlay::Create::VideoCodec <i>codec</i>, QVector&lt;QString&gt; <i>tags</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#progress-prop">setProgress</a></b>(float <i>progress</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#progress-prop">setProgress</a></b>(float <i>progress</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#workingDir-prop">setWorkingDir</a></b>(const QString &amp;<i>workingDir</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-create.html#workingDir-prop">setWorkingDir</a></b>(const QString &amp;<i>workingDir</i>)</td></tr>
</table></div> </table></div>
@ -73,12 +75,24 @@
<h3 class="fn" id="Create"><a name="Create"></a>Create::<span class="name">Create</span>(const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3> <h3 class="fn" id="Create"><a name="Create"></a>Create::<span class="name">Create</span>(const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3>
<p>Constructor.</p> <p>Constructor.</p>
<!-- @@@Create --> <!-- @@@Create -->
<!-- $$$createWallpaperStart[overload1]$$$createWallpaperStartQString --> <!-- $$$abortAndCleanup[overload1]$$$abortAndCleanup -->
<h3 class="fn" id="createWallpaperStart"><a name="createWallpaperStart"></a><code>[slot] </code><span class="type">void</span> Create::<span class="name">createWallpaperStart</span>(<span class="type">QString</span> <i>videoPath</i>)</h3> <h3 class="fn" id="abortAndCleanup"><a name="abortAndCleanup"></a><code>[slot] </code><span class="type">void</span> Create::<span class="name">abortAndCleanup</span>()</h3>
<p>.</p>
<!-- @@@abortAndCleanup -->
<!-- $$$createHTMLWallpaper[overload1]$$$createHTMLWallpaperconstQString&constQString&constQString&constQString&constQVector<QString>& -->
<h3 class="fn" id="createHTMLWallpaper"><a name="createHTMLWallpaper"></a><code>[slot] </code><span class="type">void</span> Create::<span class="name">createHTMLWallpaper</span>(const <span class="type">QString</span> &amp;<i>localStoragePath</i>, const <span class="type">QString</span> &amp;<i>title</i>, const <span class="type">QString</span> &amp;<i>previewThumbnail</i>, const <span class="type">QString</span> &amp;<i>license</i>, const <span class="type">QVector</span>&lt;<span class="type">QString</span>&gt; &amp;<i>tags</i>)</h3>
<p>Creates a HTML wallpaper.</p>
<!-- @@@createHTMLWallpaper -->
<!-- $$$createWallpaperStart[overload1]$$$createWallpaperStartQStringCreate::VideoCodec -->
<h3 class="fn" id="createWallpaperStart"><a name="createWallpaperStart"></a><code>[slot] </code><span class="type">void</span> Create::<span class="name">createWallpaperStart</span>(<span class="type">QString</span> <i>videoPath</i>, <span class="type">Create::VideoCodec</span> <i>codec</i>)</h3>
<p>Starts the process.</p> <p>Starts the process.</p>
<!-- @@@createWallpaperStart --> <!-- @@@createWallpaperStart -->
<!-- $$$saveWallpaper[overload1]$$$saveWallpaperQStringQStringQStringQStringQStringQVector<QString> --> <!-- $$$createWidget[overload1]$$$createWidgetconstQString&constQString&constQString&constQString&constQString&constQString&constQVector<QString>& -->
<h3 class="fn" id="saveWallpaper"><a name="saveWallpaper"></a><code>[slot] </code><span class="type">void</span> Create::<span class="name">saveWallpaper</span>(<span class="type">QString</span> <i>title</i>, <span class="type">QString</span> <i>description</i>, <span class="type">QString</span> <i>filePath</i>, <span class="type">QString</span> <i>previewImagePath</i>, <span class="type">QString</span> <i>youtube</i>, <span class="type">QVector</span>&lt;<span class="type">QString</span>&gt; <i>tags</i>)</h3> <h3 class="fn" id="createWidget"><a name="createWidget"></a><code>[slot] </code><span class="type">void</span> Create::<span class="name">createWidget</span>(const <span class="type">QString</span> &amp;<i>localStoragePath</i>, const <span class="type">QString</span> &amp;<i>title</i>, const <span class="type">QString</span> &amp;<i>previewThumbnail</i>, const <span class="type">QString</span> &amp;<i>createdBy</i>, const <span class="type">QString</span> &amp;<i>license</i>, const <span class="type">QString</span> &amp;<i>type</i>, const <span class="type">QVector</span>&lt;<span class="type">QString</span>&gt; &amp;<i>tags</i>)</h3>
<p>Creates a new widget.</p>
<!-- @@@createWidget -->
<!-- $$$saveWallpaper[overload1]$$$saveWallpaperQStringQStringQStringQStringQStringScreenPlay::Create::VideoCodecQVector<QString> -->
<h3 class="fn" id="saveWallpaper"><a name="saveWallpaper"></a><code>[slot] </code><span class="type">void</span> Create::<span class="name">saveWallpaper</span>(<span class="type">QString</span> <i>title</i>, <span class="type">QString</span> <i>description</i>, <span class="type">QString</span> <i>filePath</i>, <span class="type">QString</span> <i>previewImagePath</i>, <span class="type">QString</span> <i>youtube</i>, <span class="type">ScreenPlay::Create::VideoCodec</span> <i>codec</i>, <span class="type">QVector</span>&lt;<span class="type">QString</span>&gt; <i>tags</i>)</h3>
<p>When converting of the wallpaper steps where successful.</p> <p>When converting of the wallpaper steps where successful.</p>
<!-- @@@saveWallpaper --> <!-- @@@saveWallpaper -->
</div> </div>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- createimportvideo.cpp --> <!-- createimportvideo.cpp -->
<title>List of All Members for CreateImportVideo | ScreenPlay</title> <title>List of All Members for CreateImportVideo | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -14,12 +13,13 @@
<h1 class="title">List of All Members for CreateImportVideo</h1> <h1 class="title">List of All Members for CreateImportVideo</h1>
<p>This is the complete list of members for <a href="screenplay-createimportvideo.html">ScreenPlay::CreateImportVideo</a>, including inherited members.</p> <p>This is the complete list of members for <a href="screenplay-createimportvideo.html">ScreenPlay::CreateImportVideo</a>, including inherited members.</p>
<ul> <ul>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#CreateImportVideo-2">CreateImportVideo</a></b></span>(const QString &amp;, const QString &amp;, QObject *)</li> <li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#CreateImportVideo-2">CreateImportVideo</a></b></span>(const QString &amp;, const QString &amp;, const QStringList &amp;, QObject *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#CreateImportVideo-1">CreateImportVideo</a></b></span>(QObject *)</li> <li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#CreateImportVideo-1">CreateImportVideo</a></b></span>(QObject *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperGifPreview">createWallpaperGifPreview</a></b></span>() : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperGifPreview">createWallpaperGifPreview</a></b></span>() : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperImagePreview">createWallpaperImagePreview</a></b></span>() : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperImageThumbnailPreview">createWallpaperImageThumbnailPreview</a></b></span>() : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperImageThumbnailPreview">createWallpaperImageThumbnailPreview</a></b></span>() : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperInfo">createWallpaperInfo</a></b></span>() : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperInfo">createWallpaperInfo</a></b></span>() : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperVideo">createWallpaperVideo</a></b></span>() : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperVideo">createWallpaperVideo</a></b></span>(const QString &amp;) : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperVideoPreview">createWallpaperVideoPreview</a></b></span>() : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#createWallpaperVideoPreview">createWallpaperVideoPreview</a></b></span>() : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#extractWallpaperAudio">extractWallpaperAudio</a></b></span>() : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#extractWallpaperAudio">extractWallpaperAudio</a></b></span>() : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#process">process</a></b></span>()</li> <li class="fn"><span class="name"><b><a href="screenplay-createimportvideo.html#process">process</a></b></span>()</li>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- createimportvideo.cpp --> <!-- createimportvideo.cpp -->
<title>CreateImportVideo Class | ScreenPlay</title> <title>CreateImportVideo Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -22,7 +21,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">CreateImportVideo Class</h1> <h1 class="title">CreateImportVideo Class</h1>
<span class="small-subtitle">(<a href="screenplay-createimportvideo.html">ScreenPlay::CreateImportVideo</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::CreateImportVideo</span>
<!-- $$$CreateImportVideo-brief --> <!-- $$$CreateImportVideo-brief -->
<p>This class imports (copies) and creates wallaper previews. <a href="#details">More...</a></p> <p>This class imports (copies) and creates wallaper previews. <a href="#details">More...</a></p>
<!-- @@@CreateImportVideo --> <!-- @@@CreateImportVideo -->
@ -34,7 +33,7 @@
<a name="public-functions"></a> <a name="public-functions"></a>
<h2 id="public-functions">Public Functions</h2> <h2 id="public-functions">Public Functions</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#CreateImportVideo-2">CreateImportVideo</a></b>(const QString &amp;<i>videoPath</i>, const QString &amp;<i>exportPath</i>, QObject *<i>parent</i> = nullptr)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#CreateImportVideo-2">CreateImportVideo</a></b>(const QString &amp;<i>videoPath</i>, const QString &amp;<i>exportPath</i>, const QStringList &amp;<i>codecs</i>, QObject *<i>parent</i> = nullptr)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#CreateImportVideo-1">CreateImportVideo</a></b>(QObject *<i>parent</i> = nullptr)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#CreateImportVideo-1">CreateImportVideo</a></b>(QObject *<i>parent</i> = nullptr)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> float </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#progress-prop">progress</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> float </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#progress-prop">progress</a></b>() const</td></tr>
</table></div> </table></div>
@ -42,9 +41,10 @@
<h2 id="public-slots">Public Slots</h2> <h2 id="public-slots">Public Slots</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperGifPreview">createWallpaperGifPreview</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperGifPreview">createWallpaperGifPreview</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperImagePreview">createWallpaperImagePreview</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperImageThumbnailPreview">createWallpaperImageThumbnailPreview</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperImageThumbnailPreview">createWallpaperImageThumbnailPreview</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperInfo">createWallpaperInfo</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperInfo">createWallpaperInfo</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperVideo">createWallpaperVideo</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperVideo">createWallpaperVideo</a></b>(const QString &amp;<i>codec</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperVideoPreview">createWallpaperVideoPreview</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#createWallpaperVideoPreview">createWallpaperVideoPreview</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#extractWallpaperAudio">extractWallpaperAudio</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#extractWallpaperAudio">extractWallpaperAudio</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#process">process</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-createimportvideo.html#process">process</a></b>()</td></tr>
@ -64,8 +64,8 @@
<!-- @@@CreateImportVideo --> <!-- @@@CreateImportVideo -->
<div class="func"> <div class="func">
<h2>Member Function Documentation</h2> <h2>Member Function Documentation</h2>
<!-- $$$CreateImportVideo$$$CreateImportVideoconstQString&constQString&QObject* --> <!-- $$$CreateImportVideo$$$CreateImportVideoconstQString&constQString&constQStringList&QObject* -->
<h3 class="fn" id="CreateImportVideo-2"><a name="CreateImportVideo-2"></a>CreateImportVideo::<span class="name">CreateImportVideo</span>(const <span class="type">QString</span> &amp;<i>videoPath</i>, const <span class="type">QString</span> &amp;<i>exportPath</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3> <h3 class="fn" id="CreateImportVideo-2"><a name="CreateImportVideo-2"></a>CreateImportVideo::<span class="name">CreateImportVideo</span>(const <span class="type">QString</span> &amp;<i>videoPath</i>, const <span class="type">QString</span> &amp;<i>exportPath</i>, const <span class="type">QStringList</span> &amp;<i>codecs</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3>
<p>Creates a CreateImportVideo object to be used in a different thread. A <i>videoPath</i> and a <i>exportPath</i> are needed for convertion.</p> <p>Creates a CreateImportVideo object to be used in a different thread. A <i>videoPath</i> and a <i>exportPath</i> are needed for convertion.</p>
<!-- @@@CreateImportVideo --> <!-- @@@CreateImportVideo -->
<!-- $$$CreateImportVideo$$$CreateImportVideoQObject* --> <!-- $$$CreateImportVideo$$$CreateImportVideoQObject* -->
@ -86,6 +86,10 @@ args<span class="operator">.</span>append(m_exportPath <span class="operator">+<
<li>Generally broken.</li> <li>Generally broken.</li>
</ul> </ul>
<!-- @@@createWallpaperGifPreview --> <!-- @@@createWallpaperGifPreview -->
<!-- $$$createWallpaperImagePreview[overload1]$$$createWallpaperImagePreview -->
<h3 class="fn" id="createWallpaperImagePreview"><a name="createWallpaperImagePreview"></a><code>[slot] </code><span class="type">bool</span> CreateImportVideo::<span class="name">createWallpaperImagePreview</span>()</h3>
<p>.</p>
<!-- @@@createWallpaperImagePreview -->
<!-- $$$createWallpaperImageThumbnailPreview[overload1]$$$createWallpaperImageThumbnailPreview --> <!-- $$$createWallpaperImageThumbnailPreview[overload1]$$$createWallpaperImageThumbnailPreview -->
<h3 class="fn" id="createWallpaperImageThumbnailPreview"><a name="createWallpaperImageThumbnailPreview"></a><code>[slot] </code><span class="type">bool</span> CreateImportVideo::<span class="name">createWallpaperImageThumbnailPreview</span>()</h3> <h3 class="fn" id="createWallpaperImageThumbnailPreview"><a name="createWallpaperImageThumbnailPreview"></a><code>[slot] </code><span class="type">bool</span> CreateImportVideo::<span class="name">createWallpaperImageThumbnailPreview</span>()</h3>
<p>Starts ffmpeg and tries to covert the given video to a image preview. Returns <code>false</code> if :</p> <p>Starts ffmpeg and tries to covert the given video to a image preview. Returns <code>false</code> if :</p>
@ -104,8 +108,8 @@ args<span class="operator">.</span>append(m_exportPath <span class="operator">+<
<li>Is a wrong file format or generally broken.</li> <li>Is a wrong file format or generally broken.</li>
</ul> </ul>
<!-- @@@createWallpaperInfo --> <!-- @@@createWallpaperInfo -->
<!-- $$$createWallpaperVideo[overload1]$$$createWallpaperVideo --> <!-- $$$createWallpaperVideo[overload1]$$$createWallpaperVideoconstQString& -->
<h3 class="fn" id="createWallpaperVideo"><a name="createWallpaperVideo"></a><code>[slot] </code><span class="type">bool</span> CreateImportVideo::<span class="name">createWallpaperVideo</span>()</h3> <h3 class="fn" id="createWallpaperVideo"><a name="createWallpaperVideo"></a><code>[slot] </code><span class="type">bool</span> CreateImportVideo::<span class="name">createWallpaperVideo</span>(const <span class="type">QString</span> &amp;<i>codec</i>)</h3>
<p>Starts ffmpeg and tries to covert the given video to a webm video.</p> <p>Starts ffmpeg and tries to covert the given video to a webm video.</p>
<pre class="cpp"><span class="comment">//[...]</span> <pre class="cpp"><span class="comment">//[...]</span>
args<span class="operator">.</span>append(<span class="string">&quot;-c:v&quot;</span>); args<span class="operator">.</span>append(<span class="string">&quot;-c:v&quot;</span>);
@ -159,7 +163,7 @@ args<span class="operator">.</span>append(m_exportPath <span class="operator">+<
<h3 class="fn" id="process"><a name="process"></a><code>[slot] </code><span class="type">void</span> CreateImportVideo::<span class="name">process</span>()</h3> <h3 class="fn" id="process"><a name="process"></a><code>[slot] </code><span class="type">void</span> CreateImportVideo::<span class="name">process</span>()</h3>
<p>Processes the multiple steps of creating a wallpaper.</p> <p>Processes the multiple steps of creating a wallpaper.</p>
<ol class="1" type="1"><li><a href="screenplay-createimportvideo.html#createWallpaperInfo">createWallpaperInfo</a>()</li> <ol class="1" type="1"><li><a href="screenplay-createimportvideo.html#createWallpaperInfo">createWallpaperInfo</a>()</li>
<li>createWallpaperImagePreview()</li> <li><a href="screenplay-createimportvideo.html#createWallpaperImagePreview">createWallpaperImagePreview</a>()</li>
<li><a href="screenplay-createimportvideo.html#createWallpaperVideoPreview">createWallpaperVideoPreview</a>()</li> <li><a href="screenplay-createimportvideo.html#createWallpaperVideoPreview">createWallpaperVideoPreview</a>()</li>
<li><a href="screenplay-createimportvideo.html#createWallpaperGifPreview">createWallpaperGifPreview</a>()</li> <li><a href="screenplay-createimportvideo.html#createWallpaperGifPreview">createWallpaperGifPreview</a>()</li>
<li><a href="screenplay-createimportvideo.html#createWallpaperVideo">createWallpaperVideo</a>() - skiped if already a webm</li> <li><a href="screenplay-createimportvideo.html#createWallpaperVideo">createWallpaperVideo</a>() - skiped if already a webm</li>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- installedlistfilter.cpp --> <!-- installedlistfilter.cpp -->
<title>List of All Members for InstalledListFilter | ScreenPlay</title> <title>List of All Members for InstalledListFilter | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- installedlistfilter.cpp --> <!-- installedlistfilter.cpp -->
<title>InstalledListFilter Class | ScreenPlay</title> <title>InstalledListFilter Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -21,7 +20,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">InstalledListFilter Class</h1> <h1 class="title">InstalledListFilter Class</h1>
<span class="small-subtitle">(<a href="screenplay-installedlistfilter.html">ScreenPlay::InstalledListFilter</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::InstalledListFilter</span>
<!-- $$$InstalledListFilter-brief --> <!-- $$$InstalledListFilter-brief -->
<p>Proxy between Installed List Model and QML view to filter items. <a href="#details">More...</a></p> <p>Proxy between Installed List Model and QML view to filter items. <a href="#details">More...</a></p>
<!-- @@@InstalledListFilter --> <!-- @@@InstalledListFilter -->
@ -65,7 +64,7 @@
<!-- @@@sortByName --> <!-- @@@sortByName -->
<!-- $$$sortByRoleType[overload1]$$$sortByRoleTypeQString --> <!-- $$$sortByRoleType[overload1]$$$sortByRoleTypeQString -->
<h3 class="fn" id="sortByRoleType"><a name="sortByRoleType"></a><code>[slot] </code><span class="type">void</span> InstalledListFilter::<span class="name">sortByRoleType</span>(<span class="type">QString</span> <i>type</i>)</h3> <h3 class="fn" id="sortByRoleType"><a name="sortByRoleType"></a><code>[slot] </code><span class="type">void</span> InstalledListFilter::<span class="name">sortByRoleType</span>(<span class="type">QString</span> <i>type</i>)</h3>
<p>Set the filter proxy to sort by the given <i>type</i>. This can be</p> <p>Set the filter proxy to sort by the given <i>type</i>. This can be:</p>
<ul> <ul>
<li>All</li> <li>All</li>
<li>Videos</li> <li>Videos</li>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- installedlistmodel.cpp --> <!-- installedlistmodel.cpp -->
<title>List of All Members for InstalledListModel | ScreenPlay</title> <title>List of All Members for InstalledListModel | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- installedlistmodel.cpp --> <!-- installedlistmodel.cpp -->
<title>InstalledListModel Class | ScreenPlay</title> <title>InstalledListModel Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -23,7 +22,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">InstalledListModel Class</h1> <h1 class="title">InstalledListModel Class</h1>
<span class="small-subtitle">(<a href="screenplay-installedlistmodel.html">ScreenPlay::InstalledListModel</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::InstalledListModel</span>
<!-- $$$InstalledListModel-brief --> <!-- $$$InstalledListModel-brief -->
<p>Lists all installed wallpapers, widgets etc. from a given Path. <a href="#details">More...</a></p> <p>Lists all installed wallpapers, widgets etc. from a given Path. <a href="#details">More...</a></p>
<!-- @@@InstalledListModel --> <!-- @@@InstalledListModel -->
@ -69,25 +68,29 @@
<h2>Member Function Documentation</h2> <h2>Member Function Documentation</h2>
<!-- $$$InstalledListModel[overload1]$$$InstalledListModelconstshared_ptr<ScreenPlay::GlobalVariables>&QObject* --> <!-- $$$InstalledListModel[overload1]$$$InstalledListModelconstshared_ptr<ScreenPlay::GlobalVariables>&QObject* -->
<h3 class="fn" id="InstalledListModel"><a name="InstalledListModel"></a>InstalledListModel::<span class="name">InstalledListModel</span>(const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3> <h3 class="fn" id="InstalledListModel"><a name="InstalledListModel"></a>InstalledListModel::<span class="name">InstalledListModel</span>(const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3>
<p>Constructor</p> <p>Constructor.</p>
<!-- @@@InstalledListModel --> <!-- @@@InstalledListModel -->
<!-- $$$append[overload1]$$$appendconstQJsonObject&constQString& --> <!-- $$$append[overload1]$$$appendconstQJsonObject&constQString& -->
<h3 class="fn" id="append"><a name="append"></a><code>[slot] </code><span class="type">void</span> InstalledListModel::<span class="name">append</span>(const <span class="type">QJsonObject</span> &amp;<i>obj</i>, const <span class="type">QString</span> &amp;<i>folderName</i>)</h3> <h3 class="fn" id="append"><a name="append"></a><code>[slot] </code><span class="type">void</span> InstalledListModel::<span class="name">append</span>(const <span class="type">QJsonObject</span> &amp;<i>obj</i>, const <span class="type">QString</span> &amp;<i>folderName</i>)</h3>
<!-- @@@append --> <!-- @@@append -->
<!-- $$$init[overload1]$$$init --> <!-- $$$init[overload1]$$$init -->
<h3 class="fn" id="init"><a name="init"></a><code>[slot] </code><span class="type">void</span> InstalledListModel::<span class="name">init</span>()</h3> <h3 class="fn" id="init"><a name="init"></a><code>[slot] </code><span class="type">void</span> InstalledListModel::<span class="name">init</span>()</h3>
<p>Init function that needs to be called after the constructor because we need the GlobalVariables to finish loading.</p>
<!-- @@@init --> <!-- @@@init -->
<!-- $$$loadInstalledContent[overload1]$$$loadInstalledContent --> <!-- $$$loadInstalledContent[overload1]$$$loadInstalledContent -->
<h3 class="fn" id="loadInstalledContent"><a name="loadInstalledContent"></a><code>[slot] </code><span class="type">void</span> InstalledListModel::<span class="name">loadInstalledContent</span>()</h3> <h3 class="fn" id="loadInstalledContent"><a name="loadInstalledContent"></a><code>[slot] </code><span class="type">void</span> InstalledListModel::<span class="name">loadInstalledContent</span>()</h3>
<!-- @@@loadInstalledContent --> <!-- @@@loadInstalledContent -->
<!-- $$$data[overload1]$$$dataconstQModelIndex&int --> <!-- $$$data[overload1]$$$dataconstQModelIndex&int -->
<h3 class="fn" id="data"><a name="data"></a><code>[override virtual] </code><span class="type">QVariant</span> InstalledListModel::<span class="name">data</span>(const <span class="type">QModelIndex</span> &amp;<i>index</i>, <span class="type">int</span> <i>role</i> = Qt::DisplayRole) const</h3> <h3 class="fn" id="data"><a name="data"></a><code>[override virtual] </code><span class="type">QVariant</span> InstalledListModel::<span class="name">data</span>(const <span class="type">QModelIndex</span> &amp;<i>index</i>, <span class="type">int</span> <i>role</i> = Qt::DisplayRole) const</h3>
<p>Retruns the data member of the ProjectFile.</p>
<!-- @@@data --> <!-- @@@data -->
<!-- $$$roleNames[overload1]$$$roleNames --> <!-- $$$roleNames[overload1]$$$roleNames -->
<h3 class="fn" id="roleNames"><a name="roleNames"></a><code>[override virtual] </code><span class="type">QHash</span>&lt;<span class="type">int</span>, <span class="type">QByteArray</span>&gt; InstalledListModel::<span class="name">roleNames</span>() const</h3> <h3 class="fn" id="roleNames"><a name="roleNames"></a><code>[override virtual] </code><span class="type">QHash</span>&lt;<span class="type">int</span>, <span class="type">QByteArray</span>&gt; InstalledListModel::<span class="name">roleNames</span>() const</h3>
<p>Returns the variable names for QML.</p>
<!-- @@@roleNames --> <!-- @@@roleNames -->
<!-- $$$rowCount[overload1]$$$rowCountconstQModelIndex& --> <!-- $$$rowCount[overload1]$$$rowCountconstQModelIndex& -->
<h3 class="fn" id="rowCount"><a name="rowCount"></a><code>[override virtual] </code><span class="type">int</span> InstalledListModel::<span class="name">rowCount</span>(const <span class="type">QModelIndex</span> &amp;<i>parent</i> = QModelIndex()) const</h3> <h3 class="fn" id="rowCount"><a name="rowCount"></a><code>[override virtual] </code><span class="type">int</span> InstalledListModel::<span class="name">rowCount</span>(const <span class="type">QModelIndex</span> &amp;<i>parent</i> = QModelIndex()) const</h3>
<p>Returns the length of the installed items.</p>
<!-- @@@rowCount --> <!-- @@@rowCount -->
</div> </div>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- monitorlistmodel.cpp --> <!-- monitorlistmodel.cpp -->
<title>List of All Members for MonitorListModel | ScreenPlay</title> <title>List of All Members for MonitorListModel | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -15,6 +14,14 @@
<p>This is the complete list of members for <a href="screenplay-monitorlistmodel.html">ScreenPlay::MonitorListModel</a>, including inherited members.</p> <p>This is the complete list of members for <a href="screenplay-monitorlistmodel.html">ScreenPlay::MonitorListModel</a>, including inherited members.</p>
<ul> <ul>
<li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#MonitorListModel">MonitorListModel</a></b></span>(QObject *)</li> <li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#MonitorListModel">MonitorListModel</a></b></span>(QObject *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#clearActiveWallpaper">clearActiveWallpaper</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#closeWallpaper">closeWallpaper</a></b></span>(const QString &amp;)</li>
<li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#reset">reset</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#data">data</a></b></span>(const QModelIndex &amp;, int ) const : QVariant</li>
<li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#getAppIDByMonitorIndex">getAppIDByMonitorIndex</a></b></span>(<i>const int</i>) const : int</li>
<li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#roleNames">roleNames</a></b></span>() const : QHash&lt;int, QByteArray&gt;</li>
<li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#rowCount">rowCount</a></b></span>(const QModelIndex &amp;) const : int</li>
<li class="fn"><span class="name"><b><a href="screenplay-monitorlistmodel.html#setWallpaperActiveMonitor">setWallpaperActiveMonitor</a></b></span>(const std::shared_ptr&lt;ScreenPlayWallpaper&gt; &amp;, const QVector&lt;int&gt; )</li>
</ul> </ul>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>
</html> </html>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- monitorlistmodel.cpp --> <!-- monitorlistmodel.cpp -->
<title>MonitorListModel Class | ScreenPlay</title> <title>MonitorListModel Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -15,12 +14,14 @@
<h3><a name="toc">Contents</a></h3> <h3><a name="toc">Contents</a></h3>
<ul> <ul>
<li class="level1"><a href="#public-functions">Public Functions</a></li> <li class="level1"><a href="#public-functions">Public Functions</a></li>
<li class="level1"><a href="#reimplemented-public-functions">Reimplemented Public Functions</a></li>
<li class="level1"><a href="#public-slots">Public Slots</a></li>
<li class="level1"><a href="#details">Detailed Description</a></li> <li class="level1"><a href="#details">Detailed Description</a></li>
</ul> </ul>
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">MonitorListModel Class</h1> <h1 class="title">MonitorListModel Class</h1>
<span class="small-subtitle">(<a href="screenplay-monitorlistmodel.html">ScreenPlay::MonitorListModel</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::MonitorListModel</span>
<!-- $$$MonitorListModel-brief --> <!-- $$$MonitorListModel-brief -->
<p>MonitorListModel. <a href="#details">More...</a></p> <p>MonitorListModel. <a href="#details">More...</a></p>
<!-- @@@MonitorListModel --> <!-- @@@MonitorListModel -->
@ -33,6 +34,22 @@
<h2 id="public-functions">Public Functions</h2> <h2 id="public-functions">Public Functions</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#MonitorListModel">MonitorListModel</a></b>(QObject *<i>parent</i> = nullptr)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#MonitorListModel">MonitorListModel</a></b>(QObject *<i>parent</i> = nullptr)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#getAppIDByMonitorIndex">getAppIDByMonitorIndex</a></b>(<i>const int</i>) const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#setWallpaperActiveMonitor">setWallpaperActiveMonitor</a></b>(const std::shared_ptr&lt;ScreenPlayWallpaper&gt; &amp;<i>wallpaper</i>, const QVector&lt;int&gt; <i>monitors</i>)</td></tr>
</table></div>
<a name="reimplemented-public-functions"></a>
<h2 id="reimplemented-public-functions">Reimplemented Public Functions</h2>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> virtual QVariant </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#data">data</a></b>(const QModelIndex &amp;<i>index</i>, int <i>role</i> = Qt::DisplayRole) const override</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual QHash&lt;int, QByteArray&gt; </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#roleNames">roleNames</a></b>() const override</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#rowCount">rowCount</a></b>(const QModelIndex &amp;<i>parent</i> = QModelIndex()) const override</td></tr>
</table></div>
<a name="public-slots"></a>
<h2 id="public-slots">Public Slots</h2>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#clearActiveWallpaper">clearActiveWallpaper</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#closeWallpaper">closeWallpaper</a></b>(const QString &amp;<i>appID</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-monitorlistmodel.html#reset">reset</a></b>()</td></tr>
</table></div> </table></div>
<a name="details"></a> <a name="details"></a>
<!-- $$$MonitorListModel-description --> <!-- $$$MonitorListModel-description -->
@ -51,8 +68,40 @@
<h2>Member Function Documentation</h2> <h2>Member Function Documentation</h2>
<!-- $$$MonitorListModel[overload1]$$$MonitorListModelQObject* --> <!-- $$$MonitorListModel[overload1]$$$MonitorListModelQObject* -->
<h3 class="fn" id="MonitorListModel"><a name="MonitorListModel"></a>MonitorListModel::<span class="name">MonitorListModel</span>(<span class="type">QObject</span> *<i>parent</i> = nullptr)</h3> <h3 class="fn" id="MonitorListModel"><a name="MonitorListModel"></a>MonitorListModel::<span class="name">MonitorListModel</span>(<span class="type">QObject</span> *<i>parent</i> = nullptr)</h3>
<p>Constructor</p> <p>Constructor.</p>
<!-- @@@MonitorListModel --> <!-- @@@MonitorListModel -->
<!-- $$$clearActiveWallpaper[overload1]$$$clearActiveWallpaper -->
<h3 class="fn" id="clearActiveWallpaper"><a name="clearActiveWallpaper"></a><code>[slot] </code><span class="type">void</span> MonitorListModel::<span class="name">clearActiveWallpaper</span>()</h3>
<p>Clears the listmodel.</p>
<!-- @@@clearActiveWallpaper -->
<!-- $$$closeWallpaper[overload1]$$$closeWallpaperconstQString& -->
<h3 class="fn" id="closeWallpaper"><a name="closeWallpaper"></a><code>[slot] </code><span class="type">void</span> MonitorListModel::<span class="name">closeWallpaper</span>(const <span class="type">QString</span> &amp;<i>appID</i>)</h3>
<p>Removes the preview image and appID inside an monitor item.</p>
<!-- @@@closeWallpaper -->
<!-- $$$reset[overload1]$$$reset -->
<h3 class="fn" id="reset"><a name="reset"></a><code>[slot] </code><span class="type">void</span> MonitorListModel::<span class="name">reset</span>()</h3>
<p>Removes all items and loads them vida loadMonitors() again.</p>
<!-- @@@reset -->
<!-- $$$data[overload1]$$$dataconstQModelIndex&int -->
<h3 class="fn" id="data"><a name="data"></a><code>[override virtual] </code><span class="type">QVariant</span> MonitorListModel::<span class="name">data</span>(const <span class="type">QModelIndex</span> &amp;<i>index</i>, <span class="type">int</span> <i>role</i> = Qt::DisplayRole) const</h3>
<p>Retruns the data member of the Monitor.</p>
<!-- @@@data -->
<!-- $$$getAppIDByMonitorIndex[overload1]$$$getAppIDByMonitorIndexconstint -->
<h3 class="fn" id="getAppIDByMonitorIndex"><a name="getAppIDByMonitorIndex"></a><span class="type">int</span> MonitorListModel::<span class="name">getAppIDByMonitorIndex</span>(<i>const int</i>) const</h3>
<p>If successful this function returns an AppID. Otherwhise std::nullopt.</p>
<!-- @@@getAppIDByMonitorIndex -->
<!-- $$$roleNames[overload1]$$$roleNames -->
<h3 class="fn" id="roleNames"><a name="roleNames"></a><code>[override virtual] </code><span class="type">QHash</span>&lt;<span class="type">int</span>, <span class="type">QByteArray</span>&gt; MonitorListModel::<span class="name">roleNames</span>() const</h3>
<p>Returns the variable names for QML.</p>
<!-- @@@roleNames -->
<!-- $$$rowCount[overload1]$$$rowCountconstQModelIndex& -->
<h3 class="fn" id="rowCount"><a name="rowCount"></a><code>[override virtual] </code><span class="type">int</span> MonitorListModel::<span class="name">rowCount</span>(const <span class="type">QModelIndex</span> &amp;<i>parent</i> = QModelIndex()) const</h3>
<p>Returns the amount of active monitors.</p>
<!-- @@@rowCount -->
<!-- $$$setWallpaperActiveMonitor[overload1]$$$setWallpaperActiveMonitorconststd::shared_ptr<ScreenPlayWallpaper>&constQVector<int> -->
<h3 class="fn" id="setWallpaperActiveMonitor"><a name="setWallpaperActiveMonitor"></a><span class="type">void</span> MonitorListModel::<span class="name">setWallpaperActiveMonitor</span>(const <span class="type">std::shared_ptr</span>&lt;<span class="type"><a href="screenplay-screenplaywallpaper.html">ScreenPlayWallpaper</a></span>&gt; &amp;<i>wallpaper</i>, const <span class="type">QVector</span>&lt;<span class="type">int</span>&gt; <i>monitors</i>)</h3>
<p>Sets the previewImage and appID for a list item.</p>
<!-- @@@setWallpaperActiveMonitor -->
</div> </div>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>
</html> </html>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- profilelistmodel.cpp --> <!-- profilelistmodel.cpp -->
<title>List of All Members for ProfileListModel | ScreenPlay</title> <title>List of All Members for ProfileListModel | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- profilelistmodel.cpp --> <!-- profilelistmodel.cpp -->
<title>ProfileListModel Class | ScreenPlay</title> <title>ProfileListModel Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -20,7 +19,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">ProfileListModel Class</h1> <h1 class="title">ProfileListModel Class</h1>
<span class="small-subtitle">(<a href="screenplay-profilelistmodel.html">ScreenPlay::ProfileListModel</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::ProfileListModel</span>
<!-- $$$ProfileListModel-brief --> <!-- $$$ProfileListModel-brief -->
<p>Used to save all active wallpapers and widgets position and configurations after a restart. <a href="#details">More...</a></p> <p>Used to save all active wallpapers and widgets position and configurations after a restart. <a href="#details">More...</a></p>
<!-- @@@ProfileListModel --> <!-- @@@ProfileListModel -->

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- projectsettingslistmodel.cpp --> <!-- projectsettingslistmodel.cpp -->
<title>List of All Members for ProjectSettingsListModel | ScreenPlay</title> <title>List of All Members for ProjectSettingsListModel | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- projectsettingslistmodel.cpp --> <!-- projectsettingslistmodel.cpp -->
<title>ProjectSettingsListModel Class | ScreenPlay</title> <title>ProjectSettingsListModel Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -20,7 +19,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">ProjectSettingsListModel Class</h1> <h1 class="title">ProjectSettingsListModel Class</h1>
<span class="small-subtitle">(<a href="screenplay-projectsettingslistmodel.html">ScreenPlay::ProjectSettingsListModel</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::ProjectSettingsListModel</span>
<!-- $$$ProjectSettingsListModel-brief --> <!-- $$$ProjectSettingsListModel-brief -->
<p>ProjectSettingsListModel used for the dynamic loading of the properties json object inside a project.json. <a href="#details">More...</a></p> <p>ProjectSettingsListModel used for the dynamic loading of the properties json object inside a project.json. <a href="#details">More...</a></p>
<!-- @@@ProjectSettingsListModel --> <!-- @@@ProjectSettingsListModel -->

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- screenplaymanager.cpp --> <!-- screenplaymanager.cpp -->
<title>List of All Members for ScreenPlayManager | ScreenPlay</title> <title>List of All Members for ScreenPlayManager | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -14,13 +13,14 @@
<h1 class="title">List of All Members for ScreenPlayManager</h1> <h1 class="title">List of All Members for ScreenPlayManager</h1>
<p>This is the complete list of members for <a href="screenplay-screenplaymanager.html">ScreenPlay::ScreenPlayManager</a>, including inherited members.</p> <p>This is the complete list of members for <a href="screenplay-screenplaymanager.html">ScreenPlay::ScreenPlayManager</a>, including inherited members.</p>
<ul> <ul>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#ScreenPlayManager">ScreenPlayManager</a></b></span>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;, const shared_ptr&lt;ScreenPlay::MonitorListModel&gt; &amp;, const shared_ptr&lt;ScreenPlay::SDKConnector&gt; &amp;, const int &amp;, QObject *)</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#ScreenPlayManager">ScreenPlayManager</a></b></span>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;, const shared_ptr&lt;ScreenPlay::MonitorListModel&gt; &amp;, const shared_ptr&lt;ScreenPlay::SDKConnector&gt; &amp;, const int &amp;, const shared_ptr&lt;ScreenPlay::Settings&gt; &amp;, QObject *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#activeWallpaperCounter-prop">activeWallpaperCounterChanged</a></b></span>(int )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#activeWallpaperCounter-prop">activeWallpaperCounterChanged</a></b></span>(int )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#activeWidgetsCounter-prop">activeWidgetsCounterChanged</a></b></span>(int )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#activeWidgetsCounter-prop">activeWidgetsCounterChanged</a></b></span>(int )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#createWallpaper">createWallpaper</a></b></span>(QVector&lt;int&gt; , const QString &amp;, const QString &amp;, const float , const QString &amp;, const QString &amp;, const bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#createWallpaper">createWallpaper</a></b></span>(QVector&lt;int&gt; , const QString &amp;, const QString &amp;, const float , const QString &amp;, const QString &amp;, const bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#createWidget">createWidget</a></b></span>(const QUrl &amp;, const QString &amp;, const QString &amp;)</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#createWidget">createWidget</a></b></span>(const QUrl &amp;, const QString &amp;, const QString &amp;)</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#getWallpaperByAppID">getWallpaperByAppID</a></b></span>(<i>const QString &amp;</i>) : int</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#getWallpaperByAppID">getWallpaperByAppID</a></b></span>(<i>const QString &amp;</i>) : int</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#removeAllWallpapers">removeAllWallpapers</a></b></span>()</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#removeAllWallpapers">removeAllWallpapers</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#removeAllWidgets">removeAllWidgets</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#requestProjectSettingsListModelAt">requestProjectSettingsListModelAt</a></b></span>(const int )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#requestProjectSettingsListModelAt">requestProjectSettingsListModelAt</a></b></span>(const int )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#activeWallpaperCounter-prop">setActiveWallpaperCounter</a></b></span>(int )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#activeWallpaperCounter-prop">setActiveWallpaperCounter</a></b></span>(int )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#activeWidgetsCounter-prop">setActiveWidgetsCounter</a></b></span>(int )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaymanager.html#activeWidgetsCounter-prop">setActiveWidgetsCounter</a></b></span>(int )</li>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- screenplaymanager.cpp --> <!-- screenplaymanager.cpp -->
<title>ScreenPlayManager Class | ScreenPlay</title> <title>ScreenPlayManager Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -22,7 +21,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">ScreenPlayManager Class</h1> <h1 class="title">ScreenPlayManager Class</h1>
<span class="small-subtitle">(<a href="screenplay-screenplaymanager.html">ScreenPlay::ScreenPlayManager</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::ScreenPlayManager</span>
<!-- $$$ScreenPlayManager-brief --> <!-- $$$ScreenPlayManager-brief -->
<p>The ScreenPlayManager is used to manage multiple <a href="screenplay-screenplaywallpaper.html">ScreenPlayWallpaper</a> and <a href="screenplay-screenplaywidget.html">ScreenPlayWidget</a>. <a href="#details">More...</a></p> <p>The ScreenPlayManager is used to manage multiple <a href="screenplay-screenplaywallpaper.html">ScreenPlayWallpaper</a> and <a href="screenplay-screenplaywidget.html">ScreenPlayWidget</a>. <a href="#details">More...</a></p>
<!-- @@@ScreenPlayManager --> <!-- @@@ScreenPlayManager -->
@ -34,7 +33,7 @@
<a name="public-functions"></a> <a name="public-functions"></a>
<h2 id="public-functions">Public Functions</h2> <h2 id="public-functions">Public Functions</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#ScreenPlayManager">ScreenPlayManager</a></b>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;<i>globalVariables</i>, const shared_ptr&lt;ScreenPlay::MonitorListModel&gt; &amp;<i>mlm</i>, const shared_ptr&lt;ScreenPlay::SDKConnector&gt; &amp;<i>sdkc</i>, const int &amp;<i>telemetry</i>, QObject *<i>parent</i> = nullptr)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#ScreenPlayManager">ScreenPlayManager</a></b>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;<i>globalVariables</i>, const shared_ptr&lt;ScreenPlay::MonitorListModel&gt; &amp;<i>mlm</i>, const shared_ptr&lt;ScreenPlay::SDKConnector&gt; &amp;<i>sdkc</i>, const int &amp;<i>telemetry</i>, const shared_ptr&lt;ScreenPlay::Settings&gt; &amp;<i>settings</i>, QObject *<i>parent</i> = nullptr)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#activeWallpaperCounter-prop">activeWallpaperCounter</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#activeWallpaperCounter-prop">activeWallpaperCounter</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#activeWidgetsCounter-prop">activeWidgetsCounter</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#activeWidgetsCounter-prop">activeWidgetsCounter</a></b>() const</td></tr>
</table></div> </table></div>
@ -45,6 +44,7 @@
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#createWidget">createWidget</a></b>(const QUrl &amp;<i>absoluteStoragePath</i>, const QString &amp;<i>previewImage</i>, const QString &amp;<i>type</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#createWidget">createWidget</a></b>(const QUrl &amp;<i>absoluteStoragePath</i>, const QString &amp;<i>previewImage</i>, const QString &amp;<i>type</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#getWallpaperByAppID">getWallpaperByAppID</a></b>(<i>const QString &amp;</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#getWallpaperByAppID">getWallpaperByAppID</a></b>(<i>const QString &amp;</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#removeAllWallpapers">removeAllWallpapers</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#removeAllWallpapers">removeAllWallpapers</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#removeAllWidgets">removeAllWidgets</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#requestProjectSettingsListModelAt">requestProjectSettingsListModelAt</a></b>(const int <i>index</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#requestProjectSettingsListModelAt">requestProjectSettingsListModelAt</a></b>(const int <i>index</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#activeWallpaperCounter-prop">setActiveWallpaperCounter</a></b>(int <i>activeWallpaperCounter</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#activeWallpaperCounter-prop">setActiveWallpaperCounter</a></b>(int <i>activeWallpaperCounter</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#activeWidgetsCounter-prop">setActiveWidgetsCounter</a></b>(int <i>activeWidgetsCounter</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaymanager.html#activeWidgetsCounter-prop">setActiveWidgetsCounter</a></b>(int <i>activeWidgetsCounter</i>)</td></tr>
@ -66,9 +66,9 @@
<!-- @@@ScreenPlayManager --> <!-- @@@ScreenPlayManager -->
<div class="func"> <div class="func">
<h2>Member Function Documentation</h2> <h2>Member Function Documentation</h2>
<!-- $$$ScreenPlayManager[overload1]$$$ScreenPlayManagerconstshared_ptr<ScreenPlay::GlobalVariables>&constshared_ptr<ScreenPlay::MonitorListModel>&constshared_ptr<ScreenPlay::SDKConnector>&constint&QObject* --> <!-- $$$ScreenPlayManager[overload1]$$$ScreenPlayManagerconstshared_ptr<ScreenPlay::GlobalVariables>&constshared_ptr<ScreenPlay::MonitorListModel>&constshared_ptr<ScreenPlay::SDKConnector>&constint&constshared_ptr<ScreenPlay::Settings>&QObject* -->
<h3 class="fn" id="ScreenPlayManager"><a name="ScreenPlayManager"></a>ScreenPlayManager::<span class="name">ScreenPlayManager</span>(const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, const <span class="type">shared_ptr</span>&lt;<span class="type"><a href="screenplay-monitorlistmodel.html">ScreenPlay::MonitorListModel</a></span>&gt; &amp;<i>mlm</i>, const <span class="type">shared_ptr</span>&lt;<span class="type"><a href="screenplay-sdkconnector.html">ScreenPlay::SDKConnector</a></span>&gt; &amp;<i>sdkc</i>, const <span class="type">int</span> &amp;<i>telemetry</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3> <h3 class="fn" id="ScreenPlayManager"><a name="ScreenPlayManager"></a>ScreenPlayManager::<span class="name">ScreenPlayManager</span>(const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, const <span class="type">shared_ptr</span>&lt;<span class="type"><a href="screenplay-monitorlistmodel.html">ScreenPlay::MonitorListModel</a></span>&gt; &amp;<i>mlm</i>, const <span class="type">shared_ptr</span>&lt;<span class="type"><a href="screenplay-sdkconnector.html">ScreenPlay::SDKConnector</a></span>&gt; &amp;<i>sdkc</i>, const <span class="type">int</span> &amp;<i>telemetry</i>, const <span class="type">shared_ptr</span>&lt;<span class="type"><a href="screenplay-settings.html">ScreenPlay::Settings</a></span>&gt; &amp;<i>settings</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3>
<p>Constructor</p> <p>Constructor-.</p>
<!-- @@@ScreenPlayManager --> <!-- @@@ScreenPlayManager -->
<!-- $$$createWallpaper[overload1]$$$createWallpaperQVector<int>constQString&constQString&constfloatconstQString&constQString&constbool --> <!-- $$$createWallpaper[overload1]$$$createWallpaperQVector<int>constQString&constQString&constfloatconstQString&constQString&constbool -->
<h3 class="fn" id="createWallpaper"><a name="createWallpaper"></a><code>[slot] </code><span class="type">void</span> ScreenPlayManager::<span class="name">createWallpaper</span>(<span class="type">QVector</span>&lt;<span class="type">int</span>&gt; <i>monitorIndex</i>, const <span class="type">QString</span> &amp;<i>absoluteStoragePath</i>, const <span class="type">QString</span> &amp;<i>previewImage</i>, const <span class="type">float</span> <i>volume</i>, const <span class="type">QString</span> &amp;<i>fillMode</i>, const <span class="type">QString</span> &amp;<i>type</i>, const <span class="type">bool</span> <i>saveToProfilesConfigFile</i> = true)</h3> <h3 class="fn" id="createWallpaper"><a name="createWallpaper"></a><code>[slot] </code><span class="type">void</span> ScreenPlayManager::<span class="name">createWallpaper</span>(<span class="type">QVector</span>&lt;<span class="type">int</span>&gt; <i>monitorIndex</i>, const <span class="type">QString</span> &amp;<i>absoluteStoragePath</i>, const <span class="type">QString</span> &amp;<i>previewImage</i>, const <span class="type">float</span> <i>volume</i>, const <span class="type">QString</span> &amp;<i>fillMode</i>, const <span class="type">QString</span> &amp;<i>type</i>, const <span class="type">bool</span> <i>saveToProfilesConfigFile</i> = true)</h3>
@ -86,6 +86,10 @@
<h3 class="fn" id="removeAllWallpapers"><a name="removeAllWallpapers"></a><code>[slot] </code><span class="type">void</span> ScreenPlayManager::<span class="name">removeAllWallpapers</span>()</h3> <h3 class="fn" id="removeAllWallpapers"><a name="removeAllWallpapers"></a><code>[slot] </code><span class="type">void</span> ScreenPlayManager::<span class="name">removeAllWallpapers</span>()</h3>
<p>Removes all wallpaper entries in the profiles.json. This method will likely be removed when using nlohmann/json in the future.</p> <p>Removes all wallpaper entries in the profiles.json. This method will likely be removed when using nlohmann/json in the future.</p>
<!-- @@@removeAllWallpapers --> <!-- @@@removeAllWallpapers -->
<!-- $$$removeAllWidgets[overload1]$$$removeAllWidgets -->
<h3 class="fn" id="removeAllWidgets"><a name="removeAllWidgets"></a><code>[slot] </code><span class="type">void</span> ScreenPlayManager::<span class="name">removeAllWidgets</span>()</h3>
<p>Removes all widgets and resets the activeWidgetCounter to 0.</p>
<!-- @@@removeAllWidgets -->
<!-- $$$requestProjectSettingsListModelAt[overload1]$$$requestProjectSettingsListModelAtconstint --> <!-- $$$requestProjectSettingsListModelAt[overload1]$$$requestProjectSettingsListModelAtconstint -->
<h3 class="fn" id="requestProjectSettingsListModelAt"><a name="requestProjectSettingsListModelAt"></a><code>[slot] </code><span class="type">void</span> ScreenPlayManager::<span class="name">requestProjectSettingsListModelAt</span>(const <span class="type">int</span> <i>index</i>)</h3> <h3 class="fn" id="requestProjectSettingsListModelAt"><a name="requestProjectSettingsListModelAt"></a><code>[slot] </code><span class="type">void</span> ScreenPlayManager::<span class="name">requestProjectSettingsListModelAt</span>(const <span class="type">int</span> <i>index</i>)</h3>
<p>Request a spesific json profile to display in the active wallpaper popup on the right.</p> <p>Request a spesific json profile to display in the active wallpaper popup on the right.</p>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- screenplaywallpaper.cpp --> <!-- screenplaywallpaper.cpp -->
<title>List of All Members for ScreenPlayWallpaper | ScreenPlay</title> <title>List of All Members for ScreenPlayWallpaper | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -15,13 +14,14 @@
<p>This is the complete list of members for <a href="screenplay-screenplaywallpaper.html">ScreenPlay::ScreenPlayWallpaper</a>, including inherited members.</p> <p>This is the complete list of members for <a href="screenplay-screenplaywallpaper.html">ScreenPlay::ScreenPlayWallpaper</a>, including inherited members.</p>
<div class="table"><table class="propsummary"> <div class="table"><table class="propsummary">
<tr><td class="topAlign"><ul> <tr><td class="topAlign"><ul>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#ScreenPlayWallpaper-1">ScreenPlayWallpaper</a></b></span>(const QVector&lt;int&gt; &amp;, const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;, const QString &amp;, const QString &amp;, const QString &amp;, const QString &amp;, const QJsonObject &amp;, QObject *)</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#ScreenPlayWallpaper">ScreenPlayWallpaper</a></b></span>(const QVector&lt;int&gt; &amp;, const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;, const QString &amp;, const QString &amp;, const QString &amp;, const float , const QString &amp;, const QString &amp;, const bool , QObject *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#ScreenPlayWallpaper">ScreenPlayWallpaper</a></b></span>(const QVector&lt;int&gt; &amp;, const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;, const QString &amp;, const QString &amp;, const QString &amp;, const float , const QString &amp;, const QString &amp;, QObject *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#absolutePath-prop">absolutePathChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#absolutePath-prop">absolutePathChanged</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#appID-prop">appIDChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#appID-prop">appIDChanged</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#file-prop">fileChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#file-prop">fileChanged</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#fillMode-prop">fillModeChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#fillMode-prop">fillModeChanged</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#previewImage-prop">previewImageChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#previewImage-prop">previewImageChanged</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#processError">processError</a></b></span>(QProcess::ProcessError )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#processExit">processExit</a></b></span>(int , QProcess::ExitStatus )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#profileJsonObject-prop">profileJsonObjectChanged</a></b></span>(QJsonObject )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#profileJsonObject-prop">profileJsonObjectChanged</a></b></span>(QJsonObject )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#screenNumber-prop">screenNumberChanged</a></b></span>(QVector&lt;int&gt; )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#screenNumber-prop">screenNumberChanged</a></b></span>(QVector&lt;int&gt; )</li>
<li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#absolutePath-prop">setAbsolutePath</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-screenplaywallpaper.html#absolutePath-prop">setAbsolutePath</a></b></span>(QString )</li>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- screenplaywallpaper.cpp --> <!-- screenplaywallpaper.cpp -->
<title>ScreenPlayWallpaper Class | ScreenPlay</title> <title>ScreenPlayWallpaper Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -22,7 +21,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">ScreenPlayWallpaper Class</h1> <h1 class="title">ScreenPlayWallpaper Class</h1>
<span class="small-subtitle">(<a href="screenplay-screenplaywallpaper.html">ScreenPlay::ScreenPlayWallpaper</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::ScreenPlayWallpaper</span>
<!-- $$$ScreenPlayWallpaper-brief --> <!-- $$$ScreenPlayWallpaper-brief -->
<p>A Single Object to manage a Wallpaper. <a href="#details">More...</a></p> <p>A Single Object to manage a Wallpaper. <a href="#details">More...</a></p>
<!-- @@@ScreenPlayWallpaper --> <!-- @@@ScreenPlayWallpaper -->
@ -34,8 +33,7 @@
<a name="public-functions"></a> <a name="public-functions"></a>
<h2 id="public-functions">Public Functions</h2> <h2 id="public-functions">Public Functions</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#ScreenPlayWallpaper-1">ScreenPlayWallpaper</a></b>(const QVector&lt;int&gt; &amp;<i>screenNumber</i>, const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;<i>globalVariables</i>, const QString &amp;<i>appID</i>, const QString &amp;<i>absolutePath</i>, const QString &amp;<i>previewImage</i>, const QString &amp;<i>type</i>, const QJsonObject &amp;<i>profileJsonObject</i>, QObject *<i>parent</i> = nullptr)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#ScreenPlayWallpaper">ScreenPlayWallpaper</a></b>(const QVector&lt;int&gt; &amp;<i>screenNumber</i>, const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;<i>globalVariables</i>, const QString &amp;<i>appID</i>, const QString &amp;<i>absolutePath</i>, const QString &amp;<i>previewImage</i>, const float <i>volume</i>, const QString &amp;<i>fillMode</i>, const QString &amp;<i>type</i>, const bool <i>checkWallpaperVisible</i>, QObject *<i>parent</i> = nullptr)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#ScreenPlayWallpaper">ScreenPlayWallpaper</a></b>(const QVector&lt;int&gt; &amp;<i>screenNumber</i>, const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;<i>globalVariables</i>, const QString &amp;<i>appID</i>, const QString &amp;<i>absolutePath</i>, const QString &amp;<i>previewImage</i>, const float <i>volume</i>, const QString &amp;<i>fillMode</i>, const QString &amp;<i>type</i>, QObject *<i>parent</i> = nullptr)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#absolutePath-prop">absolutePath</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#absolutePath-prop">absolutePath</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#appID-prop">appID</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#appID-prop">appID</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#file-prop">file</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#file-prop">file</a></b>() const</td></tr>
@ -48,6 +46,8 @@
<a name="public-slots"></a> <a name="public-slots"></a>
<h2 id="public-slots">Public Slots</h2> <h2 id="public-slots">Public Slots</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#processError">processError</a></b>(QProcess::ProcessError <i>error</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#processExit">processExit</a></b>(int <i>exitCode</i>, QProcess::ExitStatus <i>exitStatus</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#absolutePath-prop">setAbsolutePath</a></b>(QString <i>absolutePath</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#absolutePath-prop">setAbsolutePath</a></b>(QString <i>absolutePath</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#appID-prop">setAppID</a></b>(QString <i>appID</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#appID-prop">setAppID</a></b>(QString <i>appID</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#file-prop">setFile</a></b>(QString <i>file</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-screenplaywallpaper.html#file-prop">setFile</a></b>(QString <i>file</i>)</td></tr>
@ -78,14 +78,18 @@
<!-- @@@ScreenPlayWallpaper --> <!-- @@@ScreenPlayWallpaper -->
<div class="func"> <div class="func">
<h2>Member Function Documentation</h2> <h2>Member Function Documentation</h2>
<!-- $$$ScreenPlayWallpaper$$$ScreenPlayWallpaperconstQVector<int>&constshared_ptr<ScreenPlay::GlobalVariables>&constQString&constQString&constQString&constQString&constQJsonObject&QObject* --> <!-- $$$ScreenPlayWallpaper[overload1]$$$ScreenPlayWallpaperconstQVector<int>&constshared_ptr<ScreenPlay::GlobalVariables>&constQString&constQString&constQString&constfloatconstQString&constQString&constboolQObject* -->
<h3 class="fn" id="ScreenPlayWallpaper-1"><a name="ScreenPlayWallpaper-1"></a>ScreenPlayWallpaper::<span class="name">ScreenPlayWallpaper</span>(const <span class="type">QVector</span>&lt;<span class="type">int</span>&gt; &amp;<i>screenNumber</i>, const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, const <span class="type">QString</span> &amp;<i>appID</i>, const <span class="type">QString</span> &amp;<i>absolutePath</i>, const <span class="type">QString</span> &amp;<i>previewImage</i>, const <span class="type">QString</span> &amp;<i>type</i>, const <span class="type">QJsonObject</span> &amp;<i>profileJsonObject</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3> <h3 class="fn" id="ScreenPlayWallpaper"><a name="ScreenPlayWallpaper"></a>ScreenPlayWallpaper::<span class="name">ScreenPlayWallpaper</span>(const <span class="type">QVector</span>&lt;<span class="type">int</span>&gt; &amp;<i>screenNumber</i>, const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, const <span class="type">QString</span> &amp;<i>appID</i>, const <span class="type">QString</span> &amp;<i>absolutePath</i>, const <span class="type">QString</span> &amp;<i>previewImage</i>, const <span class="type">float</span> <i>volume</i>, const <span class="type">QString</span> &amp;<i>fillMode</i>, const <span class="type">QString</span> &amp;<i>type</i>, const <span class="type">bool</span> <i>checkWallpaperVisible</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3>
<p>Constructor for scene Wallpaper with multile json settings.</p>
<!-- @@@ScreenPlayWallpaper -->
<!-- $$$ScreenPlayWallpaper[overload1]$$$ScreenPlayWallpaperconstQVector<int>&constshared_ptr<ScreenPlay::GlobalVariables>&constQString&constQString&constQString&constfloatconstQString&constQString&QObject* -->
<h3 class="fn" id="ScreenPlayWallpaper"><a name="ScreenPlayWallpaper"></a>ScreenPlayWallpaper::<span class="name">ScreenPlayWallpaper</span>(const <span class="type">QVector</span>&lt;<span class="type">int</span>&gt; &amp;<i>screenNumber</i>, const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, const <span class="type">QString</span> &amp;<i>appID</i>, const <span class="type">QString</span> &amp;<i>absolutePath</i>, const <span class="type">QString</span> &amp;<i>previewImage</i>, const <span class="type">float</span> <i>volume</i>, const <span class="type">QString</span> &amp;<i>fillMode</i>, const <span class="type">QString</span> &amp;<i>type</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3>
<p>Constructor for video Wallpaper.</p> <p>Constructor for video Wallpaper.</p>
<!-- @@@ScreenPlayWallpaper --> <!-- @@@ScreenPlayWallpaper -->
<!-- $$$processError[overload1]$$$processErrorQProcess::ProcessError -->
<h3 class="fn" id="processError"><a name="processError"></a><code>[slot] </code><span class="type">void</span> ScreenPlayWallpaper::<span class="name">processError</span>(<span class="type">QProcess::ProcessError</span> <i>error</i>)</h3>
<p>Prints the exit code error.</p>
<!-- @@@processError -->
<!-- $$$processExit[overload1]$$$processExitintQProcess::ExitStatus -->
<h3 class="fn" id="processExit"><a name="processExit"></a><code>[slot] </code><span class="type">void</span> ScreenPlayWallpaper::<span class="name">processExit</span>(<span class="type">int</span> <i>exitCode</i>, <span class="type">QProcess::ExitStatus</span> <i>exitStatus</i>)</h3>
<p>Prints the exit code if != 0.</p>
<!-- @@@processExit -->
</div> </div>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>
</html> </html>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- screenplaywidget.cpp --> <!-- screenplaywidget.cpp -->
<title>List of All Members for ScreenPlayWidget | ScreenPlay</title> <title>List of All Members for ScreenPlayWidget | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- screenplaywidget.cpp --> <!-- screenplaywidget.cpp -->
<title>ScreenPlayWidget Class | ScreenPlay</title> <title>ScreenPlayWidget Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -22,7 +21,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">ScreenPlayWidget Class</h1> <h1 class="title">ScreenPlayWidget Class</h1>
<span class="small-subtitle">(<a href="screenplay-screenplaywidget.html">ScreenPlay::ScreenPlayWidget</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::ScreenPlayWidget</span>
<!-- $$$ScreenPlayWidget-brief --> <!-- $$$ScreenPlayWidget-brief -->
<p>A Single Object to manage a Widget. <a href="#details">More...</a></p> <p>A Single Object to manage a Widget. <a href="#details">More...</a></p>
<!-- @@@ScreenPlayWidget --> <!-- @@@ScreenPlayWidget -->
@ -70,7 +69,7 @@
<h2>Member Function Documentation</h2> <h2>Member Function Documentation</h2>
<!-- $$$ScreenPlayWidget[overload1]$$$ScreenPlayWidgetconstQString&constshared_ptr<ScreenPlay::GlobalVariables>&constQString&constQString&constQString&constQString& --> <!-- $$$ScreenPlayWidget[overload1]$$$ScreenPlayWidgetconstQString&constshared_ptr<ScreenPlay::GlobalVariables>&constQString&constQString&constQString&constQString& -->
<h3 class="fn" id="ScreenPlayWidget"><a name="ScreenPlayWidget"></a>ScreenPlayWidget::<span class="name">ScreenPlayWidget</span>(const <span class="type">QString</span> &amp;<i>appID</i>, const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, const <span class="type">QString</span> &amp;<i>projectPath</i>, const <span class="type">QString</span> &amp;<i>previewImage</i>, const <span class="type">QString</span> &amp;<i>fullPath</i>, const <span class="type">QString</span> &amp;<i>type</i>)</h3> <h3 class="fn" id="ScreenPlayWidget"><a name="ScreenPlayWidget"></a>ScreenPlayWidget::<span class="name">ScreenPlayWidget</span>(const <span class="type">QString</span> &amp;<i>appID</i>, const <span class="type">shared_ptr</span>&lt;<span class="type">ScreenPlay::GlobalVariables</span>&gt; &amp;<i>globalVariables</i>, const <span class="type">QString</span> &amp;<i>projectPath</i>, const <span class="type">QString</span> &amp;<i>previewImage</i>, const <span class="type">QString</span> &amp;<i>fullPath</i>, const <span class="type">QString</span> &amp;<i>type</i>)</h3>
<p>Constructor</p> <p>Constructor.</p>
<!-- @@@ScreenPlayWidget --> <!-- @@@ScreenPlayWidget -->
</div> </div>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- sdkconnector.cpp --> <!-- sdkconnector.cpp -->
<title>List of All Members for SDKConnector | ScreenPlay</title> <title>List of All Members for SDKConnector | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -17,10 +16,11 @@
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#SDKConnector">SDKConnector</a></b></span>(QObject *)</li> <li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#SDKConnector">SDKConnector</a></b></span>(QObject *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeAllConnections">closeAllConnections</a></b></span>()</li> <li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeAllConnections">closeAllConnections</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeAllWallpapers">closeAllWallpapers</a></b></span>()</li> <li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeAllWallpapers">closeAllWallpapers</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeAllWidgets">closeAllWidgets</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeConntectionByType">closeConntectionByType</a></b></span>(const QStringList &amp;)</li>
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeWallpaper">closeWallpaper</a></b></span>(const QString &amp;)</li> <li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeWallpaper">closeWallpaper</a></b></span>(const QString &amp;)</li>
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeWallpapersAt">closeWallpapersAt</a></b></span>(int )</li> <li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#closeWallpapersAt">closeWallpapersAt</a></b></span>(int )</li>
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#newConnection">newConnection</a></b></span>()</li> <li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#newConnection">newConnection</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#setSceneValue">setSceneValue</a></b></span>(QString , QString , QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#setWallpaperValue">setWallpaperValue</a></b></span>(QString , QString , QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-sdkconnector.html#setWallpaperValue">setWallpaperValue</a></b></span>(QString , QString , QString )</li>
</ul> </ul>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- sdkconnector.cpp --> <!-- sdkconnector.cpp -->
<title>SDKConnector Class | ScreenPlay</title> <title>SDKConnector Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -21,7 +20,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">SDKConnector Class</h1> <h1 class="title">SDKConnector Class</h1>
<span class="small-subtitle">(<a href="screenplay-sdkconnector.html">ScreenPlay::SDKConnector</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::SDKConnector</span>
<!-- $$$SDKConnector-brief --> <!-- $$$SDKConnector-brief -->
<p>SDKConnector is used for the QLocalSocket connection between <a href="screenplay.html">ScreenPlay</a> and the standalone <a href="screenplay-screenplaywallpaper.html">ScreenPlayWallpaper</a> and <a href="screenplay-screenplaywidget.html">ScreenPlayWidget</a> executables. <a href="#details">More...</a></p> <p>SDKConnector is used for the QLocalSocket connection between <a href="screenplay.html">ScreenPlay</a> and the standalone <a href="screenplay-screenplaywallpaper.html">ScreenPlayWallpaper</a> and <a href="screenplay-screenplaywidget.html">ScreenPlayWidget</a> executables. <a href="#details">More...</a></p>
<!-- @@@SDKConnector --> <!-- @@@SDKConnector -->
@ -40,10 +39,11 @@
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeAllConnections">closeAllConnections</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeAllConnections">closeAllConnections</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeAllWallpapers">closeAllWallpapers</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeAllWallpapers">closeAllWallpapers</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeAllWidgets">closeAllWidgets</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeConntectionByType">closeConntectionByType</a></b>(const QStringList &amp;<i>list</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeWallpaper">closeWallpaper</a></b>(const QString &amp;<i>appID</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeWallpaper">closeWallpaper</a></b>(const QString &amp;<i>appID</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeWallpapersAt">closeWallpapersAt</a></b>(int <i>at</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#closeWallpapersAt">closeWallpapersAt</a></b>(int <i>at</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#newConnection">newConnection</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#newConnection">newConnection</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#setSceneValue">setSceneValue</a></b>(QString <i>appID</i>, QString <i>key</i>, QString <i>value</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#setWallpaperValue">setWallpaperValue</a></b>(QString <i>appID</i>, QString <i>key</i>, QString <i>value</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-sdkconnector.html#setWallpaperValue">setWallpaperValue</a></b>(QString <i>appID</i>, QString <i>key</i>, QString <i>value</i>)</td></tr>
</table></div> </table></div>
<a name="details"></a> <a name="details"></a>
@ -73,6 +73,19 @@
<li>godotWallpaper</li> <li>godotWallpaper</li>
</ul> </ul>
<!-- @@@closeAllWallpapers --> <!-- @@@closeAllWallpapers -->
<!-- $$$closeAllWidgets[overload1]$$$closeAllWidgets -->
<h3 class="fn" id="closeAllWidgets"><a name="closeAllWidgets"></a><code>[slot] </code><span class="type">void</span> SDKConnector::<span class="name">closeAllWidgets</span>()</h3>
<p>Closes all widgets connection with the following type:</p>
<ul>
<li>qmlWidget</li>
<li>htmlWidget</li>
<li>standaloneWidget</li>
</ul>
<!-- @@@closeAllWidgets -->
<!-- $$$closeConntectionByType[overload1]$$$closeConntectionByTypeconstQStringList& -->
<h3 class="fn" id="closeConntectionByType"><a name="closeConntectionByType"></a><code>[slot] </code><span class="type">void</span> SDKConnector::<span class="name">closeConntectionByType</span>(const <span class="type">QStringList</span> &amp;<i>list</i>)</h3>
<p>Closes a connection by type. Used only by <a href="screenplay-sdkconnector.html#closeAllWidgets">closeAllWidgets</a>() and <a href="screenplay-sdkconnector.html#closeAllWallpapers">closeAllWallpapers</a>()</p>
<!-- @@@closeConntectionByType -->
<!-- $$$closeWallpaper[overload1]$$$closeWallpaperconstQString& --> <!-- $$$closeWallpaper[overload1]$$$closeWallpaperconstQString& -->
<h3 class="fn" id="closeWallpaper"><a name="closeWallpaper"></a><code>[slot] </code><span class="type">void</span> SDKConnector::<span class="name">closeWallpaper</span>(const <span class="type">QString</span> &amp;<i>appID</i>)</h3> <h3 class="fn" id="closeWallpaper"><a name="closeWallpaper"></a><code>[slot] </code><span class="type">void</span> SDKConnector::<span class="name">closeWallpaper</span>(const <span class="type">QString</span> &amp;<i>appID</i>)</h3>
<p>Closes a wallpaper by the given <i>appID</i>.</p> <p>Closes a wallpaper by the given <i>appID</i>.</p>
@ -85,10 +98,6 @@
<h3 class="fn" id="newConnection"><a name="newConnection"></a><code>[slot] </code><span class="type">void</span> SDKConnector::<span class="name">newConnection</span>()</h3> <h3 class="fn" id="newConnection"><a name="newConnection"></a><code>[slot] </code><span class="type">void</span> SDKConnector::<span class="name">newConnection</span>()</h3>
<p>Appends a new SDKConnection object shared_ptr to the m_clients list.</p> <p>Appends a new SDKConnection object shared_ptr to the m_clients list.</p>
<!-- @@@newConnection --> <!-- @@@newConnection -->
<!-- $$$setSceneValue[overload1]$$$setSceneValueQStringQStringQString -->
<h3 class="fn" id="setSceneValue"><a name="setSceneValue"></a><code>[slot] </code><span class="type">void</span> SDKConnector::<span class="name">setSceneValue</span>(<span class="type">QString</span> <i>appID</i>, <span class="type">QString</span> <i>key</i>, <span class="type">QString</span> <i>value</i>)</h3>
<p>Sets a given <i>value</i> to a given <i>key</i>. The <i>appID</i> is used to identify the receiver socket.</p>
<!-- @@@setSceneValue -->
<!-- $$$setWallpaperValue[overload1]$$$setWallpaperValueQStringQStringQString --> <!-- $$$setWallpaperValue[overload1]$$$setWallpaperValueQStringQStringQString -->
<h3 class="fn" id="setWallpaperValue"><a name="setWallpaperValue"></a><code>[slot] </code><span class="type">void</span> SDKConnector::<span class="name">setWallpaperValue</span>(<span class="type">QString</span> <i>appID</i>, <span class="type">QString</span> <i>key</i>, <span class="type">QString</span> <i>value</i>)</h3> <h3 class="fn" id="setWallpaperValue"><a name="setWallpaperValue"></a><code>[slot] </code><span class="type">void</span> SDKConnector::<span class="name">setWallpaperValue</span>(<span class="type">QString</span> <i>appID</i>, <span class="type">QString</span> <i>key</i>, <span class="type">QString</span> <i>value</i>)</h3>
<p>Sets a given <i>value</i> to a given <i>key</i>. The <i>appID</i> is used to identify the receiver socket.</p> <p>Sets a given <i>value</i> to a given <i>key</i>. The <i>appID</i> is used to identify the receiver socket.</p>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- settings.cpp --> <!-- settings.cpp -->
<title>List of All Members for Settings | ScreenPlay</title> <title>List of All Members for Settings | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -18,36 +17,42 @@
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#Settings">Settings</a></b></span>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;, QObject *)</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#Settings">Settings</a></b></span>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;, QObject *)</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetryChanged</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetryChanged</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#autostart-prop">autostartChanged</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#autostart-prop">autostartChanged</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#checkWallpaperVisible-prop">checkWallpaperVisibleChanged</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#decoder-prop">decoderChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#decoder-prop">decoderChanged</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#font-prop">fontChanged</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#gitBuildHash-prop">gitBuildHashChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#gitBuildHash-prop">gitBuildHashChanged</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStartChanged</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStartChanged</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#language-prop">languageChanged</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#language-prop">languageChanged</a></b></span>(ScreenPlay::Settings::Language )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#offlineMode-prop">offlineModeChanged</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#offlineMode-prop">offlineModeChanged</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#pauseWallpaperWhenIngame-prop">pauseWallpaperWhenIngameChanged</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#retranslateUI">retranslateUI</a></b></span>() : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">setAnonymousTelemetry</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">setAnonymousTelemetry</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#autostart-prop">setAutostart</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#autostart-prop">setAutostart</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#checkWallpaperVisible-prop">setCheckWallpaperVisible</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#decoder-prop">setDecoder</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#decoder-prop">setDecoder</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#font-prop">setFont</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#gitBuildHash-prop">setGitBuildHash</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#gitBuildHash-prop">setGitBuildHash</a></b></span>(QString )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#highPriorityStart-prop">setHighPriorityStart</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#highPriorityStart-prop">setHighPriorityStart</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#language-prop">setLanguage</a></b></span>(QString )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#language-prop">setLanguage</a></b></span>(ScreenPlay::Settings::Language )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#offlineMode-prop">setOfflineMode</a></b></span>(bool )</li>
</ul></td><td class="topAlign"><ul> </ul></td><td class="topAlign"><ul>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#pauseWallpaperWhenIngame-prop">setPauseWallpaperWhenIngame</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#offlineMode-prop">setOfflineMode</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#silentStart-prop">setSilentStart</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#silentStart-prop">setSilentStart</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#videoFillMode-prop">setVideoFillMode</a></b></span>(ScreenPlay::Settings::FillMode )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#setupWidgetAndWindowPaths">setupWidgetAndWindowPaths</a></b></span>()</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#setupWidgetAndWindowPaths">setupWidgetAndWindowPaths</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#silentStart-prop">silentStartChanged</a></b></span>(bool )</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#silentStart-prop">silentStartChanged</a></b></span>(bool )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#videoFillMode-prop">videoFillModeChanged</a></b></span>(ScreenPlay::Settings::FillMode )</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#writeJsonFileFromResource">writeJsonFileFromResource</a></b></span>(const QString &amp;)</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#writeJsonFileFromResource">writeJsonFileFromResource</a></b></span>(const QString &amp;)</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#writeSingleSettingConfig">writeSingleSettingConfig</a></b></span>(QString , QVariant ) : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetry</a></b></span>() const : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetry</a></b></span>() const : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#autostart-prop">autostart</a></b></span>() const : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#autostart-prop">autostart</a></b></span>() const : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#checkWallpaperVisible-prop">checkWallpaperVisible</a></b></span>() const : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#decoder-prop">decoder</a></b></span>() const : QString</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#decoder-prop">decoder</a></b></span>() const : QString</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#font-prop">font</a></b></span>() const : QString</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#gitBuildHash-prop">gitBuildHash</a></b></span>() const : QString</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#gitBuildHash-prop">gitBuildHash</a></b></span>() const : QString</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStart</a></b></span>() const : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStart</a></b></span>() const : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#language-prop">language</a></b></span>() const : QString</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#language-prop">language</a></b></span>() const : ScreenPlay::Settings::Language</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#offlineMode-prop">offlineMode</a></b></span>() const : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#offlineMode-prop">offlineMode</a></b></span>() const : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#pauseWallpaperWhenIngame-prop">pauseWallpaperWhenIngame</a></b></span>() const : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#setupLanguage">setupLanguage</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#silentStart-prop">silentStart</a></b></span>() const : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#silentStart-prop">silentStart</a></b></span>() const : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-settings.html#version-prop">version</a></b></span>() const : QVersionNumber</li> <li class="fn"><span class="name"><b><a href="screenplay-settings.html#videoFillMode-prop">videoFillMode</a></b></span>() const : ScreenPlay::Settings::FillMode</li>
</ul> </ul>
</td></tr> </td></tr>
</table></div> </table></div>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- settings.cpp --> <!-- settings.cpp -->
<title>Settings Class | ScreenPlay</title> <title>Settings Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -22,7 +21,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">Settings Class</h1> <h1 class="title">Settings Class</h1>
<span class="small-subtitle">(<a href="screenplay-settings.html">ScreenPlay::Settings</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::Settings</span>
<!-- $$$Settings-brief --> <!-- $$$Settings-brief -->
<p>Global settings class for reading and writing settings. <a href="#details">More...</a></p> <p>Global settings class for reading and writing settings. <a href="#details">More...</a></p>
<!-- @@@Settings --> <!-- @@@Settings -->
@ -37,43 +36,49 @@
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#Settings">Settings</a></b>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;<i>globalVariables</i>, QObject *<i>parent</i> = nullptr)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#Settings">Settings</a></b>(const shared_ptr&lt;ScreenPlay::GlobalVariables&gt; &amp;<i>globalVariables</i>, QObject *<i>parent</i> = nullptr)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetry</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetry</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#autostart-prop">autostart</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#autostart-prop">autostart</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#checkWallpaperVisible-prop">checkWallpaperVisible</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#decoder-prop">decoder</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#decoder-prop">decoder</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#font-prop">font</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#gitBuildHash-prop">gitBuildHash</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#gitBuildHash-prop">gitBuildHash</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStart</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStart</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#language-prop">language</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::Settings::Language </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#language-prop">language</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#offlineMode-prop">offlineMode</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#offlineMode-prop">offlineMode</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#pauseWallpaperWhenIngame-prop">pauseWallpaperWhenIngame</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#setupLanguage">setupLanguage</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#silentStart-prop">silentStart</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#silentStart-prop">silentStart</a></b>() const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QVersionNumber </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#version-prop">version</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> ScreenPlay::Settings::FillMode </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#videoFillMode-prop">videoFillMode</a></b>() const</td></tr>
</table></div> </table></div>
<a name="public-slots"></a> <a name="public-slots"></a>
<h2 id="public-slots">Public Slots</h2> <h2 id="public-slots">Public Slots</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#retranslateUI">retranslateUI</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">setAnonymousTelemetry</a></b>(bool <i>anonymousTelemetry</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">setAnonymousTelemetry</a></b>(bool <i>anonymousTelemetry</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#autostart-prop">setAutostart</a></b>(bool <i>autostart</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#autostart-prop">setAutostart</a></b>(bool <i>autostart</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#checkWallpaperVisible-prop">setCheckWallpaperVisible</a></b>(bool <i>checkWallpaperVisible</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#decoder-prop">setDecoder</a></b>(QString <i>decoder</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#decoder-prop">setDecoder</a></b>(QString <i>decoder</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#font-prop">setFont</a></b>(QString <i>font</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#gitBuildHash-prop">setGitBuildHash</a></b>(QString <i>gitBuildHash</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#gitBuildHash-prop">setGitBuildHash</a></b>(QString <i>gitBuildHash</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#highPriorityStart-prop">setHighPriorityStart</a></b>(bool <i>highPriorityStart</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#highPriorityStart-prop">setHighPriorityStart</a></b>(bool <i>highPriorityStart</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#language-prop">setLanguage</a></b>(QString <i>language</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#language-prop">setLanguage</a></b>(ScreenPlay::Settings::Language <i>language</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#offlineMode-prop">setOfflineMode</a></b>(bool <i>offlineMode</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#offlineMode-prop">setOfflineMode</a></b>(bool <i>offlineMode</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#pauseWallpaperWhenIngame-prop">setPauseWallpaperWhenIngame</a></b>(bool <i>pauseWallpaperWhenIngame</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#silentStart-prop">setSilentStart</a></b>(bool <i>silentStart</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#silentStart-prop">setSilentStart</a></b>(bool <i>silentStart</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#videoFillMode-prop">setVideoFillMode</a></b>(ScreenPlay::Settings::FillMode <i>videoFillMode</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#setupWidgetAndWindowPaths">setupWidgetAndWindowPaths</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#setupWidgetAndWindowPaths">setupWidgetAndWindowPaths</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#writeJsonFileFromResource">writeJsonFileFromResource</a></b>(const QString &amp;<i>filename</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#writeJsonFileFromResource">writeJsonFileFromResource</a></b>(const QString &amp;<i>filename</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#writeSingleSettingConfig">writeSingleSettingConfig</a></b>(QString <i>name</i>, QVariant <i>value</i>)</td></tr>
</table></div> </table></div>
<a name="signals"></a> <a name="signals"></a>
<h2 id="signals">Signals</h2> <h2 id="signals">Signals</h2>
<div class="table"><table class="alignedsummary"> <div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetryChanged</a></b>(bool <i>anonymousTelemetry</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetryChanged</a></b>(bool <i>anonymousTelemetry</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#autostart-prop">autostartChanged</a></b>(bool <i>autostart</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#autostart-prop">autostartChanged</a></b>(bool <i>autostart</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#checkWallpaperVisible-prop">checkWallpaperVisibleChanged</a></b>(bool <i>checkWallpaperVisible</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#decoder-prop">decoderChanged</a></b>(QString <i>decoder</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#decoder-prop">decoderChanged</a></b>(QString <i>decoder</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#font-prop">fontChanged</a></b>(QString <i>font</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#gitBuildHash-prop">gitBuildHashChanged</a></b>(QString <i>gitBuildHash</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#gitBuildHash-prop">gitBuildHashChanged</a></b>(QString <i>gitBuildHash</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStartChanged</a></b>(bool <i>highPriorityStart</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStartChanged</a></b>(bool <i>highPriorityStart</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#language-prop">languageChanged</a></b>(QString <i>language</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#language-prop">languageChanged</a></b>(ScreenPlay::Settings::Language <i>language</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#offlineMode-prop">offlineModeChanged</a></b>(bool <i>offlineMode</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#offlineMode-prop">offlineModeChanged</a></b>(bool <i>offlineMode</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#pauseWallpaperWhenIngame-prop">pauseWallpaperWhenIngameChanged</a></b>(bool <i>pauseWallpaperWhenIngame</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#silentStart-prop">silentStartChanged</a></b>(bool <i>silentStart</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#silentStart-prop">silentStartChanged</a></b>(bool <i>silentStart</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-settings.html#videoFillMode-prop">videoFillModeChanged</a></b>(ScreenPlay::Settings::FillMode <i>videoFillMode</i>)</td></tr>
</table></div> </table></div>
<a name="details"></a> <a name="details"></a>
<!-- $$$Settings-description --> <!-- $$$Settings-description -->
@ -81,9 +86,8 @@
<h2 id="details">Detailed Description</h2> <h2 id="details">Detailed Description</h2>
<p>Used for:</p> <p>Used for:</p>
<ul> <ul>
<li>User configuration via AppDataLocalScreenPlayScreenPlay<ul> <li>User configuration via AppData<b class="redFont"><code>\Local</code></b>ScreenPlayScreenPlay<ul>
<li>profiles.json - saved wallpaper and widgets config</li> <li>profiles.json - saved wallpaper and widgets config</li>
<li>settings.json - saved settings like autostart and installedContentPath</li>
<li>Computer\HKEY_CURRENT_USER\Software\<a href="screenplay.html">ScreenPlay</a>\<a href="screenplay.html">ScreenPlay</a> - ScreenPlayContentPath for steam plugin</li> <li>Computer\HKEY_CURRENT_USER\Software\<a href="screenplay.html">ScreenPlay</a>\<a href="screenplay.html">ScreenPlay</a> - ScreenPlayContentPath for steam plugin</li>
</ul> </ul>
</li> </li>
@ -99,16 +103,17 @@
<p>Constructor and sets up:</p> <p>Constructor and sets up:</p>
<ol class="1" type="1"><li>Sets the git build hash via <a href="screenplay.html">ScreenPlay</a>.pro c++ define</li> <ol class="1" type="1"><li>Sets the git build hash via <a href="screenplay.html">ScreenPlay</a>.pro c++ define</li>
<li>Checks the langauge via settings or system and available ones and installes a translator.</li> <li>Checks the langauge via settings or system and available ones and installes a translator.</li>
<li>Checks the paths for config folders in appdata</li> <li>Checks the AbsoluteStoragePath.</li>
<li>Checks if settings.json and profiles.json are available. If first run it creates the default settings and profiles json.</li>
<li>Parses the version and checks with the compiled one.</li>
<li>Checks the absoluteStoragePath.</li>
<li>Checks regisitry for steam plugin settings</li> <li>Checks regisitry for steam plugin settings</li>
<li>Parses autostart, <a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetry</a>, <a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStart</a></li> <li>Parses autostart, <a href="screenplay-settings.html#anonymousTelemetry-prop">anonymousTelemetry</a>, <a href="screenplay-settings.html#highPriorityStart-prop">highPriorityStart</a></li>
<li>Checks <a href="screenplay-screenplaywallpaper.html">ScreenPlayWallpaper</a> and ScreenPlayWidgets executable paths.</li> <li>Checks <a href="screenplay-screenplaywallpaper.html">ScreenPlayWallpaper</a> and ScreenPlayWidgets executable paths.</li>
</ol> </ol>
<p>More errorchecking is needed here. For example when the proile or settings json cannot to parsed, use the default settings.</p> <p>More errorchecking is needed here. For example when the proile or settings json cannot to parsed, use the default settings.</p>
<!-- @@@Settings --> <!-- @@@Settings -->
<!-- $$$retranslateUI[overload1]$$$retranslateUI -->
<h3 class="fn" id="retranslateUI"><a name="retranslateUI"></a><code>[slot] </code><span class="type">bool</span> Settings::<span class="name">retranslateUI</span>()</h3>
<p>Check for supported langauges. If we use a langauge that not uses latin characters, we change the font. For example this happens for korean user. We ship google Noto Sans CJK KR Regular for this..</p>
<!-- @@@retranslateUI -->
<!-- $$$setupWidgetAndWindowPaths[overload1]$$$setupWidgetAndWindowPaths --> <!-- $$$setupWidgetAndWindowPaths[overload1]$$$setupWidgetAndWindowPaths -->
<h3 class="fn" id="setupWidgetAndWindowPaths"><a name="setupWidgetAndWindowPaths"></a><code>[slot] </code><span class="type">void</span> Settings::<span class="name">setupWidgetAndWindowPaths</span>()</h3> <h3 class="fn" id="setupWidgetAndWindowPaths"><a name="setupWidgetAndWindowPaths"></a><code>[slot] </code><span class="type">void</span> Settings::<span class="name">setupWidgetAndWindowPaths</span>()</h3>
<p>To have a better developer experience we check if we use a debug version. Then we assume That the paths are the default QtCreator paths and set the widgets and wallpaper executable paths accordingly.</p> <p>To have a better developer experience we check if we use a debug version. Then we assume That the paths are the default QtCreator paths and set the widgets and wallpaper executable paths accordingly.</p>
@ -121,10 +126,10 @@
<li>settings.json</li> <li>settings.json</li>
</ul> </ul>
<!-- @@@writeJsonFileFromResource --> <!-- @@@writeJsonFileFromResource -->
<!-- $$$writeSingleSettingConfig[overload1]$$$writeSingleSettingConfigQStringQVariant --> <!-- $$$setupLanguage[overload1]$$$setupLanguage -->
<h3 class="fn" id="writeSingleSettingConfig"><a name="writeSingleSettingConfig"></a><code>[slot] </code><span class="type">bool</span> Settings::<span class="name">writeSingleSettingConfig</span>(<span class="type">QString</span> <i>name</i>, <span class="type">QVariant</span> <i>value</i>)</h3> <h3 class="fn" id="setupLanguage"><a name="setupLanguage"></a><span class="type">void</span> Settings::<span class="name">setupLanguage</span>()</h3>
<p>Save a single <i>value</i> with a given <i>name</i> (key) into the settings.json. Returns <code>true</code> when successful otherise returns <code>false</code>.</p> <p>Checks if there is already a saved language. If not we try to use the system langauge. If we do not support the system language we use english.</p>
<!-- @@@writeSingleSettingConfig --> <!-- @@@setupLanguage -->
</div> </div>
<div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body> <div id= license class="footer center"><p>This documentation is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p></div> <script src="../js/mermaid.min.js"></script> <script>var config = {startOnLoad:true,flowchart:{useMaxWidth:true,htmlLabels:true}};mermaid.initialize(config);</script></body>
</html> </html>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- util.cpp --> <!-- util.cpp -->
<title>List of All Members for Util | ScreenPlay</title> <title>List of All Members for Util | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -24,12 +23,14 @@
<li class="fn"><span class="name"><b><a href="screenplay-util.html#generateRandomString">generateRandomString</a></b></span>(quint32 ) : QString</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#generateRandomString">generateRandomString</a></b></span>(quint32 ) : QString</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#getVersionNumberFromString">getVersionNumberFromString</a></b></span>(<i>const QString &amp;</i>) : int</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#getVersionNumberFromString">getVersionNumberFromString</a></b></span>(<i>const QString &amp;</i>) : int</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#logToGui">logToGui</a></b></span>(QtMsgType , const QMessageLogContext &amp;, const QString &amp;)</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#logToGui">logToGui</a></b></span>(QtMsgType , const QMessageLogContext &amp;, const QString &amp;)</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#openFolderInExplorer">openFolderInExplorer</a></b></span>(const QString &amp;) const</li>
</ul></td><td class="topAlign"><ul> </ul></td><td class="topAlign"><ul>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#openJsonFileToObject">openJsonFileToObject</a></b></span>(<i>const QString &amp;</i>) : int</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#openJsonFileToObject">openJsonFileToObject</a></b></span>(<i>const QString &amp;</i>) : int</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#openJsonFileToString">openJsonFileToString</a></b></span>(<i>const QString &amp;</i>) : int</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#openJsonFileToString">openJsonFileToString</a></b></span>(<i>const QString &amp;</i>) : int</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#parseQByteArrayToQJsonObject">parseQByteArrayToQJsonObject</a></b></span>(<i>const QByteArray &amp;</i>) : int</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#parseQByteArrayToQJsonObject">parseQByteArrayToQJsonObject</a></b></span>(<i>const QByteArray &amp;</i>) : int</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#requestAllLicenses">requestAllLicenses</a></b></span>()</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#requestAllLicenses">requestAllLicenses</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#requestDataProtection">requestDataProtection</a></b></span>()</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#requestDataProtection">requestDataProtection</a></b></span>()</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#toString">toString</a></b></span>(const QStringList &amp;) : QString</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#writeJsonObjectToFile">writeJsonObjectToFile</a></b></span>(const QString &amp;, const QJsonObject &amp;, bool ) : bool</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#writeJsonObjectToFile">writeJsonObjectToFile</a></b></span>(const QString &amp;, const QJsonObject &amp;, bool ) : bool</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#aquireFFMPEGStatus-prop">aquireFFMPEGStatus</a></b></span>() const : ScreenPlay::Util::AquireFFMPEGStatus</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#aquireFFMPEGStatus-prop">aquireFFMPEGStatus</a></b></span>() const : ScreenPlay::Util::AquireFFMPEGStatus</li>
<li class="fn"><span class="name"><b><a href="screenplay-util.html#debugMessages-prop">debugMessages</a></b></span>() const : QString</li> <li class="fn"><span class="name"><b><a href="screenplay-util.html#debugMessages-prop">debugMessages</a></b></span>() const : QString</li>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- util.cpp --> <!-- util.cpp -->
<title>Util Class | ScreenPlay</title> <title>Util Class | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>
@ -22,7 +21,7 @@
</div> </div>
<div class="sidebar-content" id="sidebar-content"></div></div> <div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">Util Class</h1> <h1 class="title">Util Class</h1>
<span class="small-subtitle">(<a href="screenplay-util.html">ScreenPlay::Util</a>)<br/></span> <span class="small-subtitle">class <a href="screenplay.html">ScreenPlay</a>::Util</span>
<!-- $$$Util-brief --> <!-- $$$Util-brief -->
<p>Easy to use global object to use when certain functionality is not available in QML. <a href="#details">More...</a></p> <p>Easy to use global object to use when certain functionality is not available in QML. <a href="#details">More...</a></p>
<!-- @@@Util --> <!-- @@@Util -->
@ -47,11 +46,13 @@
<tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#generateRandomString">generateRandomString</a></b>(quint32 <i>length</i> = 32)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#generateRandomString">generateRandomString</a></b>(quint32 <i>length</i> = 32)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#getVersionNumberFromString">getVersionNumberFromString</a></b>(<i>const QString &amp;</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#getVersionNumberFromString">getVersionNumberFromString</a></b>(<i>const QString &amp;</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#logToGui">logToGui</a></b>(QtMsgType <i>type</i>, const QMessageLogContext &amp;<i>context</i>, const QString &amp;<i>msg</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#logToGui">logToGui</a></b>(QtMsgType <i>type</i>, const QMessageLogContext &amp;<i>context</i>, const QString &amp;<i>msg</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#openFolderInExplorer">openFolderInExplorer</a></b>(const QString &amp;<i>url</i>) const</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#openJsonFileToObject">openJsonFileToObject</a></b>(<i>const QString &amp;</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#openJsonFileToObject">openJsonFileToObject</a></b>(<i>const QString &amp;</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#openJsonFileToString">openJsonFileToString</a></b>(<i>const QString &amp;</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#openJsonFileToString">openJsonFileToString</a></b>(<i>const QString &amp;</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#parseQByteArrayToQJsonObject">parseQByteArrayToQJsonObject</a></b>(<i>const QByteArray &amp;</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#parseQByteArrayToQJsonObject">parseQByteArrayToQJsonObject</a></b>(<i>const QByteArray &amp;</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#requestAllLicenses">requestAllLicenses</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#requestAllLicenses">requestAllLicenses</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#requestDataProtection">requestDataProtection</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#requestDataProtection">requestDataProtection</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QString </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#toString">toString</a></b>(const QStringList &amp;<i>list</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#writeJsonObjectToFile">writeJsonObjectToFile</a></b>(const QString &amp;<i>absoluteFilePath</i>, const QJsonObject &amp;<i>object</i>, bool <i>truncate</i> = true)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> bool </td><td class="memItemRight bottomAlign"><b><a href="screenplay-util.html#writeJsonObjectToFile">writeJsonObjectToFile</a></b>(const QString &amp;<i>absoluteFilePath</i>, const QJsonObject &amp;<i>object</i>, bool <i>truncate</i> = true)</td></tr>
</table></div> </table></div>
<a name="signals"></a> <a name="signals"></a>
@ -71,7 +72,7 @@
<h2>Member Function Documentation</h2> <h2>Member Function Documentation</h2>
<!-- $$$Util[overload1]$$$UtilQNetworkAccessManager*QObject* --> <!-- $$$Util[overload1]$$$UtilQNetworkAccessManager*QObject* -->
<h3 class="fn" id="Util"><a name="Util"></a>Util::<span class="name">Util</span>(<span class="type">QNetworkAccessManager</span> *<i>networkAccessManager</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3> <h3 class="fn" id="Util"><a name="Util"></a>Util::<span class="name">Util</span>(<span class="type">QNetworkAccessManager</span> *<i>networkAccessManager</i>, <span class="type">QObject</span> *<i>parent</i> = nullptr)</h3>
<p>Constructor</p> <p>Constructor.</p>
<!-- @@@Util --> <!-- @@@Util -->
<!-- $$$copyToClipboard[overload1]$$$copyToClipboardconstQString& --> <!-- $$$copyToClipboard[overload1]$$$copyToClipboardconstQString& -->
<h3 class="fn" id="copyToClipboard"><a name="copyToClipboard"></a><code>[slot] </code><span class="type">void</span> Util::<span class="name">copyToClipboard</span>(const <span class="type">QString</span> &amp;<i>text</i>) const</h3> <h3 class="fn" id="copyToClipboard"><a name="copyToClipboard"></a><code>[slot] </code><span class="type">void</span> Util::<span class="name">copyToClipboard</span>(const <span class="type">QString</span> &amp;<i>text</i>) const</h3>
@ -98,17 +99,21 @@
<h3 class="fn" id="logToGui"><a name="logToGui"></a><code>[static slot] </code><span class="type">void</span> Util::<span class="name">logToGui</span>(<span class="type">QtMsgType</span> <i>type</i>, const <span class="type">QMessageLogContext</span> &amp;<i>context</i>, const <span class="type">QString</span> &amp;<i>msg</i>)</h3> <h3 class="fn" id="logToGui"><a name="logToGui"></a><code>[static slot] </code><span class="type">void</span> Util::<span class="name">logToGui</span>(<span class="type">QtMsgType</span> <i>type</i>, const <span class="type">QMessageLogContext</span> &amp;<i>context</i>, const <span class="type">QString</span> &amp;<i>msg</i>)</h3>
<p>Basic logging to the GUI. No logging is done to a log file for now. This string can be copied in the settings tab in the UI.</p> <p>Basic logging to the GUI. No logging is done to a log file for now. This string can be copied in the settings tab in the UI.</p>
<!-- @@@logToGui --> <!-- @@@logToGui -->
<!-- $$$openFolderInExplorer[overload1]$$$openFolderInExplorerconstQString& -->
<h3 class="fn" id="openFolderInExplorer"><a name="openFolderInExplorer"></a><code>[slot] </code><span class="type">void</span> Util::<span class="name">openFolderInExplorer</span>(const <span class="type">QString</span> &amp;<i>url</i>) const</h3>
<p>Opens a native folder window on the given path. Windows and Mac only for now!</p>
<!-- @@@openFolderInExplorer -->
<!-- $$$openJsonFileToObject[overload1]$$$openJsonFileToObjectconstQString& --> <!-- $$$openJsonFileToObject[overload1]$$$openJsonFileToObjectconstQString& -->
<h3 class="fn" id="openJsonFileToObject"><a name="openJsonFileToObject"></a><code>[static slot] </code><span class="type">int</span> Util::<span class="name">openJsonFileToObject</span>(<i>const QString &amp;</i>)</h3> <h3 class="fn" id="openJsonFileToObject"><a name="openJsonFileToObject"></a><code>[static slot] </code><span class="type">int</span> Util::<span class="name">openJsonFileToObject</span>(<i>const QString &amp;</i>)</h3>
<p>Opens a json file (absolute path) and tries to convert it to a QJsonObject. Return std::nullopt when not successful.</p> <p>Opens a json file (absolute path) and tries to convert it to a QJsonObject. Returns std::nullopt when not successful.</p>
<!-- @@@openJsonFileToObject --> <!-- @@@openJsonFileToObject -->
<!-- $$$openJsonFileToString[overload1]$$$openJsonFileToStringconstQString& --> <!-- $$$openJsonFileToString[overload1]$$$openJsonFileToStringconstQString& -->
<h3 class="fn" id="openJsonFileToString"><a name="openJsonFileToString"></a><code>[static slot] </code><span class="type">int</span> Util::<span class="name">openJsonFileToString</span>(<i>const QString &amp;</i>)</h3> <h3 class="fn" id="openJsonFileToString"><a name="openJsonFileToString"></a><code>[static slot] </code><span class="type">int</span> Util::<span class="name">openJsonFileToString</span>(<i>const QString &amp;</i>)</h3>
<p>Opens a json file (absolute path) and tries to convert it to a QString. Return std::nullopt when not successful.</p> <p>Opens a json file (absolute path) and tries to convert it to a QString. Returns std::nullopt when not successful.</p>
<!-- @@@openJsonFileToString --> <!-- @@@openJsonFileToString -->
<!-- $$$parseQByteArrayToQJsonObject[overload1]$$$parseQByteArrayToQJsonObjectconstQByteArray& --> <!-- $$$parseQByteArrayToQJsonObject[overload1]$$$parseQByteArrayToQJsonObjectconstQByteArray& -->
<h3 class="fn" id="parseQByteArrayToQJsonObject"><a name="parseQByteArrayToQJsonObject"></a><code>[static slot] </code><span class="type">int</span> Util::<span class="name">parseQByteArrayToQJsonObject</span>(<i>const QByteArray &amp;</i>)</h3> <h3 class="fn" id="parseQByteArrayToQJsonObject"><a name="parseQByteArrayToQJsonObject"></a><code>[static slot] </code><span class="type">int</span> Util::<span class="name">parseQByteArrayToQJsonObject</span>(<i>const QByteArray &amp;</i>)</h3>
<p>Opens a native folder window on the given path. Windows and Mac only for now!</p> <p>Parses a QByteArray to a QJsonObject. If returns and std::nullopt on failure.</p>
<!-- @@@parseQByteArrayToQJsonObject --> <!-- @@@parseQByteArrayToQJsonObject -->
<!-- $$$requestAllLicenses[overload1]$$$requestAllLicenses --> <!-- $$$requestAllLicenses[overload1]$$$requestAllLicenses -->
<h3 class="fn" id="requestAllLicenses"><a name="requestAllLicenses"></a><code>[slot] </code><span class="type">void</span> Util::<span class="name">requestAllLicenses</span>()</h3> <h3 class="fn" id="requestAllLicenses"><a name="requestAllLicenses"></a><code>[slot] </code><span class="type">void</span> Util::<span class="name">requestAllLicenses</span>()</h3>
@ -118,6 +123,10 @@
<h3 class="fn" id="requestDataProtection"><a name="requestDataProtection"></a><code>[slot] </code><span class="type">void</span> Util::<span class="name">requestDataProtection</span>()</h3> <h3 class="fn" id="requestDataProtection"><a name="requestDataProtection"></a><code>[slot] </code><span class="type">void</span> Util::<span class="name">requestDataProtection</span>()</h3>
<p>Loads all dataprotection of the legal folder in the qrc into a property string of this class. allDataProtectionLoaded is emited when loading is finished.</p> <p>Loads all dataprotection of the legal folder in the qrc into a property string of this class. allDataProtectionLoaded is emited when loading is finished.</p>
<!-- @@@requestDataProtection --> <!-- @@@requestDataProtection -->
<!-- $$$toString[overload1]$$$toStringconstQStringList& -->
<h3 class="fn" id="toString"><a name="toString"></a><code>[static slot] </code><span class="type">QString</span> Util::<span class="name">toString</span>(const <span class="type">QStringList</span> &amp;<i>list</i>)</h3>
<p>Helper function to append a QStringList into a QString with a space between the items.</p>
<!-- @@@toString -->
<!-- $$$writeJsonObjectToFile[overload1]$$$writeJsonObjectToFileconstQString&constQJsonObject&bool --> <!-- $$$writeJsonObjectToFile[overload1]$$$writeJsonObjectToFileconstQString&constQJsonObject&bool -->
<h3 class="fn" id="writeJsonObjectToFile"><a name="writeJsonObjectToFile"></a><code>[static slot] </code><span class="type">bool</span> Util::<span class="name">writeJsonObjectToFile</span>(const <span class="type">QString</span> &amp;<i>absoluteFilePath</i>, const <span class="type">QJsonObject</span> &amp;<i>object</i>, <span class="type">bool</span> <i>truncate</i> = true)</h3> <h3 class="fn" id="writeJsonObjectToFile"><a name="writeJsonObjectToFile"></a><code>[static slot] </code><span class="type">bool</span> Util::<span class="name">writeJsonObjectToFile</span>(const <span class="type">QString</span> &amp;<i>absoluteFilePath</i>, const <span class="type">QJsonObject</span> &amp;<i>object</i>, <span class="type">bool</span> <i>truncate</i> = true)</h3>
<p>Writes a given QJsonObject to a file. The path must be absolute. When truncate is set to true the exsisting json file will be overriten.</p> <p>Writes a given QJsonObject to a file. The path must be absolute. When truncate is set to true the exsisting json file will be overriten.</p>

View File

@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta charset="utf-8">
<!-- app.cpp --> <!-- app.cpp -->
<title>ScreenPlay Namespace | ScreenPlay</title> <title>ScreenPlay Namespace | ScreenPlay</title>
<link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/> <link rel="stylesheet" type="text/css" href="../css/style.css"/> <link rel="stylesheet" type="text/css" href="../css/bootstrap.min.css"/>

File diff suppressed because it is too large Load Diff

View File

@ -27,7 +27,7 @@ ScreenPlay is an open source cross plattform app for displaying Wallpaper, Widge
| __Steam Binaries__ | ✔ | ❌ | ❌ | | __Steam Binaries__ | ✔ | ❌ | ❌ |
| __Wallpaper__ | ✔ | ❌ Help Needed for Gnome/KDE/etc! | ❓ (Basic implementation) Help Needed! | | __Wallpaper__ | ✔ | ❌ Help Needed for Gnome/KDE/etc! | ❓ (Basic implementation) Help Needed! |
| __Widgets__ | ✔ | ❓ | ❓ Help Needed! | | __Widgets__ | ✔ | ❓ | ❓ Help Needed! |
| __Multilanguage (EN,DE,RU,FR,ES)__ | ✔ | ✔ | ✔ | | __Multilanguage (EN,DE,RU,FR,ES,KO🆕,VI🆕)__ | ✔ | ✔ | ✔ |
</div> </div>

View File

@ -146,5 +146,11 @@
<file>qml/Common/Headline.qml</file> <file>qml/Common/Headline.qml</file>
<file>qml/Create/Wizards/CreateEmptyHtmlWallpaper/CreateEmptyHtmlWallpaper.qml</file> <file>qml/Create/Wizards/CreateEmptyHtmlWallpaper/CreateEmptyHtmlWallpaper.qml</file>
<file>assets/images/undraw_static_website_0107.svg</file> <file>assets/images/undraw_static_website_0107.svg</file>
<file>translations/ScreenPlay_ko.qm</file>
<file>assets/fonts/NotoSans-Light.ttf</file>
<file>assets/fonts/NotoSans-Medium.ttf</file>
<file>assets/fonts/NotoSans-Regular.ttf</file>
<file>assets/fonts/NotoSans-Thin.ttf</file>
<file>translations/ScreenPlay_vi.qm</file>
</qresource> </qresource>
</RCC> </RCC>

View File

@ -42,7 +42,9 @@ TRANSLATIONS = \
$$PWD/translations/ScreenPlay_de.ts \ $$PWD/translations/ScreenPlay_de.ts \
$$PWD/translations/ScreenPlay_ru.ts \ $$PWD/translations/ScreenPlay_ru.ts \
$$PWD/translations/ScreenPlay_es.ts \ $$PWD/translations/ScreenPlay_es.ts \
$$PWD/translations/ScreenPlay_fr.ts $$PWD/translations/ScreenPlay_fr.ts \
$$PWD/translations/ScreenPlay_ko.ts \
$$PWD/translations/ScreenPlay_vi.ts \
HEADERS += \ HEADERS += \
$$PWD/app.h \ $$PWD/app.h \
@ -68,18 +70,22 @@ INCLUDEPATH += \
$$PWD/src/\ $$PWD/src/\
CONFIG(debug, debug|release) {
install_assets.path = $${OUT_PWD}/assets/fonts
} else {
install_assets.path = $${OUT_PWD}/assets/fonts
}
install_assets.files += $$PWD/assets/fonts/NotoSansCJKkr-Regular.otf
win32 { win32 {
RC_ICONS += favicon.ico RC_ICONS += favicon.ico
CONFIG(debug, debug|release) { CONFIG(debug, debug|release) {
install_it.path = $${OUT_PWD}/debug/ install_it.path = $${OUT_PWD}/debug/
} else { } else {
install_it.path = $${OUT_PWD}/release/ install_it.path = $${OUT_PWD}/release/
} }
INCLUDEPATH += $$PWD/../Common/vcpkg/installed/x64-windows/include INCLUDEPATH += $$PWD/../Common/vcpkg/installed/x64-windows/include
DEPENDPATH += $$PWD/../Common/vcpkg/installed/x64-windows/include DEPENDPATH += $$PWD/../Common/vcpkg/installed/x64-windows/include
@ -152,5 +158,5 @@ unix {
} }
INSTALLS += install_it INSTALLS += install_it install_assets

View File

@ -49,17 +49,28 @@ App::App()
QGuiApplication::setOrganizationName("ScreenPlay"); QGuiApplication::setOrganizationName("ScreenPlay");
QGuiApplication::setOrganizationDomain("screen-play.app"); QGuiApplication::setOrganizationDomain("screen-play.app");
QGuiApplication::setApplicationName("ScreenPlay"); QGuiApplication::setApplicationName("ScreenPlay");
QGuiApplication::setApplicationVersion("0.9.0"); QGuiApplication::setApplicationVersion("0.10.1");
QGuiApplication::setQuitOnLastWindowClosed(false); QGuiApplication::setQuitOnLastWindowClosed(false);
QtBreakpad::init(QDir::current().absolutePath()); QtBreakpad::init(QDir::current().absolutePath());
QFontDatabase::addApplicationFont(":/assets/fonts/LibreBaskerville-Italic.ttf"); QFontDatabase::addApplicationFont(":/assets/fonts/LibreBaskerville-Italic.ttf");
QFontDatabase::addApplicationFont(":/assets/fonts/Roboto-Light.ttf"); QFontDatabase::addApplicationFont(":/assets/fonts/Roboto-Light.ttf");
QFontDatabase::addApplicationFont(":/assets/fonts/Roboto-Regular.ttf"); QFontDatabase::addApplicationFont(":/assets/fonts/Roboto-Regular.ttf");
QFontDatabase::addApplicationFont(":/assets/fonts/Roboto-Thin.ttf"); QFontDatabase::addApplicationFont(":/assets/fonts/Roboto-Thin.ttf");
QFontDatabase::addApplicationFont(":/assets/fonts/RobotoMono-Light.ttf"); QFontDatabase::addApplicationFont(":/assets/fonts/RobotoMono-Light.ttf");
QFontDatabase::addApplicationFont(":/assets/fonts/RobotoMono-Thin.ttf"); QFontDatabase::addApplicationFont(":/assets/fonts/RobotoMono-Thin.ttf");
QFontDatabase::addApplicationFont(":/assets/fonts/NotoSans-Thin.ttf");
QFontDatabase::addApplicationFont(":/assets/fonts/NotoSans-Regular.ttf");
QFontDatabase::addApplicationFont(":/assets/fonts/NotoSans-Medium.ttf");
QFontDatabase::addApplicationFont(":/assets/fonts/NotoSans-Light.ttf");
if (-1 == QFontDatabase::addApplicationFont(QDir::current().absolutePath() + "/assets/fonts/NotoSansCJKkr-Regular.otf")) {
qWarning() << "Could not load korean font from: " << QDir::current().absolutePath() + "/assets/fonts/NotoSansCJKkr-Regular.otf";
}
QQuickWindow::setTextRenderType(QQuickWindow::TextRenderType::NativeTextRendering); QQuickWindow::setTextRenderType(QQuickWindow::TextRenderType::NativeTextRendering);
qRegisterMetaType<QQmlApplicationEngine*>(); qRegisterMetaType<QQmlApplicationEngine*>();
@ -75,12 +86,26 @@ App::App()
qRegisterMetaType<MonitorListModel*>(); qRegisterMetaType<MonitorListModel*>();
qRegisterMetaType<ProfileListModel*>(); qRegisterMetaType<ProfileListModel*>();
qmlRegisterAnonymousType<GlobalVariables>("ScreenPlay",1); qmlRegisterAnonymousType<GlobalVariables>("ScreenPlay", 1);
qmlRegisterAnonymousType<ScreenPlayManager>("ScreenPlay",1); qmlRegisterAnonymousType<ScreenPlayManager>("ScreenPlay", 1);
qmlRegisterAnonymousType<Util>("ScreenPlay",1); qmlRegisterAnonymousType<Util>("ScreenPlay", 1);
qmlRegisterAnonymousType<Create>("ScreenPlay",1); qmlRegisterAnonymousType<Create>("ScreenPlay", 1);
qmlRegisterAnonymousType<Settings>("ScreenPlay",1); qmlRegisterAnonymousType<Settings>("ScreenPlay", 1);
qmlRegisterAnonymousType<SDKConnector>("ScreenPlay", 1);
// SDKConnect first to check if another ScreenPlay Instace is running
m_sdkConnector = make_shared<SDKConnector>();
m_isAnotherScreenPlayInstanceRunning = m_sdkConnector->m_isAnotherScreenPlayInstanceRunning;
}
/*!
\brief Used for initialization after the constructor. The sole purpose is to check if
another ScreenPlay instance is running and then quit early. This is also because we cannot
call QApplication::quit(); in the SDKConnector before the app.exec(); ( the Qt main event
loop ) has started.
*/
void App::init()
{
// Util should be created as first so we redirect qDebugs etc. into the log // Util should be created as first so we redirect qDebugs etc. into the log
auto* nam = new QNetworkAccessManager(this); auto* nam = new QNetworkAccessManager(this);
m_util = make_unique<Util>(nam); m_util = make_unique<Util>(nam);
@ -89,8 +114,8 @@ App::App()
m_installedListFilter = make_shared<InstalledListFilter>(m_installedListModel); m_installedListFilter = make_shared<InstalledListFilter>(m_installedListModel);
m_monitorListModel = make_shared<MonitorListModel>(); m_monitorListModel = make_shared<MonitorListModel>();
m_profileListModel = make_shared<ProfileListModel>(m_globalVariables); m_profileListModel = make_shared<ProfileListModel>(m_globalVariables);
m_sdkConnector = make_shared<SDKConnector>();
m_settings = make_shared<Settings>(m_globalVariables); m_settings = make_shared<Settings>(m_globalVariables);
m_mainWindowEngine = make_unique<QQmlApplicationEngine>();
// Only create tracker if user did not disallow! // Only create tracker if user did not disallow!
if (m_settings->anonymousTelemetry()) { if (m_settings->anonymousTelemetry()) {
@ -107,6 +132,9 @@ App::App()
// When the installed storage path changed // When the installed storage path changed
QObject::connect(m_settings.get(), &Settings::resetInstalledListmodel, m_installedListModel.get(), &InstalledListModel::reset); QObject::connect(m_settings.get(), &Settings::resetInstalledListmodel, m_installedListModel.get(), &InstalledListModel::reset);
QObject::connect(m_settings.get(), &Settings::requestRetranslation, m_mainWindowEngine.get(), &QQmlEngine::retranslate);
m_settings->setupLanguage();
QObject::connect(m_globalVariables.get(), &GlobalVariables::localStoragePathChanged, this, [this](QUrl localStoragePath) { QObject::connect(m_globalVariables.get(), &GlobalVariables::localStoragePathChanged, this, [this](QUrl localStoragePath) {
m_settings->resetInstalledListmodel(); m_settings->resetInstalledListmodel();
m_settings->setqSetting("ScreenPlayContentPath", localStoragePath.toString()); m_settings->setqSetting("ScreenPlayContentPath", localStoragePath.toString());
@ -122,10 +150,12 @@ App::App()
} }
qmlRegisterSingletonInstance("ScreenPlay", 1, 0, "ScreenPlay", this); qmlRegisterSingletonInstance("ScreenPlay", 1, 0, "ScreenPlay", this);
m_mainWindowEngine = make_unique<QQmlApplicationEngine>();
m_mainWindowEngine->load(QUrl(QStringLiteral("qrc:/main.qml"))); m_mainWindowEngine->load(QUrl(QStringLiteral("qrc:/main.qml")));
} }
/*!
\brief Tries to send the telemetry quit event before we call quit ourself.
*/
void App::exit() void App::exit()
{ {
if (!m_telemetry) { if (!m_telemetry) {

View File

@ -54,6 +54,9 @@ class App : public QObject {
public: public:
explicit App(); explicit App();
void init();
bool m_isAnotherScreenPlayInstanceRunning { false };
GlobalVariables* globalVariables() const GlobalVariables* globalVariables() const
{ {
return m_globalVariables.get(); return m_globalVariables.get();

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -11,5 +11,10 @@ int main(int argc, char* argv[])
ScreenPlay::App app; ScreenPlay::App app;
return qtGuiApp.exec(); if (app.m_isAnotherScreenPlayInstanceRunning) {
return 0;
} else {
app.init();
return qtGuiApp.exec();
}
} }

View File

@ -21,9 +21,14 @@ ApplicationWindow {
visible: false visible: false
width: 1400 width: 1400
height: 788 height: 788
title: "ScreenPlay Alpha - V0.9.0" title: "ScreenPlay Alpha - V0.10.1"
minimumHeight: 450 minimumHeight: 450
minimumWidth: 1050 minimumWidth: 1050
onVisibilityChanged: {
if(window.visibility === 2){
switchPage("Installed")
}
}
Component.onCompleted: { Component.onCompleted: {
if (!ScreenPlay.settings.silentStart) { if (!ScreenPlay.settings.silentStart) {
@ -34,8 +39,6 @@ ApplicationWindow {
} }
} }
function switchPage(name) { function switchPage(name) {
if (name === "Create") { if (name === "Create") {
bg.state = "create" bg.state = "create"
@ -74,15 +77,22 @@ ApplicationWindow {
Connections { Connections {
target: ScreenPlay.util target: ScreenPlay.util
onRequestNavigation: { function onRequestNavigation(nav) {
switchPage(nav) switchPage(nav)
} }
onRequestToggleWallpaperConfiguration: { function onRequestToggleWallpaperConfiguration() {
monitors.state = monitors.state == "active" ? "inactive" : "active" monitors.state = monitors.state == "active" ? "inactive" : "active"
ScreenPlay.screenPlayManager.requestProjectSettingsListModelAt(0) ScreenPlay.screenPlayManager.requestProjectSettingsListModelAt(0)
} }
} }
Connections {
target: ScreenPlay.sdkConnector
function onRequestRaise() {
window.show()
}
}
LinearGradient { LinearGradient {
id: tabShadow id: tabShadow
height: 4 height: 4
@ -233,7 +243,7 @@ ApplicationWindow {
target: pageLoader.item target: pageLoader.item
ignoreUnknownSignals: true ignoreUnknownSignals: true
onSetSidebarActive: { function onSetSidebarActive(active) {
if (active) { if (active) {
sidebar.state = "active" sidebar.state = "active"
} else { } else {
@ -241,7 +251,7 @@ ApplicationWindow {
} }
} }
onSetNavigationItem: { function onSetNavigationItem(pos) {
if (pos === 0) { if (pos === 0) {
nav.onPageChanged("Create") nav.onPageChanged("Create")
} else { } else {

View File

@ -1,5 +1,6 @@
import QtQuick 2.14 import QtQuick 2.14
import QtQuick.Controls.Material 2.12
import ScreenPlay 1.0
Item { Item {
id:root id:root
@ -10,10 +11,10 @@ Item {
Text { Text {
id: txtHeadline id: txtHeadline
font.family: "Roboto"
font.pointSize: 18 font.pointSize: 18
color: "#444444" color: "#444444"
text: qsTr("Headline") text: qsTr("Headline")
font.family: ScreenPlay.settings.font
} }
Rectangle { Rectangle {

View File

@ -2,7 +2,7 @@ import QtQuick 2.12
import QtQuick.Controls 2.12 import QtQuick.Controls 2.12
import QtQuick.Controls.Material 2.12 import QtQuick.Controls.Material 2.12
import Qt.labs.platform 1.1 import Qt.labs.platform 1.1
import ScreenPlay 1.0
/*! /*!
\qmltype Image Selector \qmltype Image Selector
\brief A image selector with popup preview. \brief A image selector with popup preview.
@ -103,7 +103,7 @@ Item {
id: txtPlaceholder id: txtPlaceholder
clip: true clip: true
font.pointSize: 12 font.pointSize: 12
font.family: "Roboto" font.family: ScreenPlay.settings.font
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
color: Material.color(Material.Grey) color: Material.color(Material.Grey)
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
@ -121,7 +121,7 @@ Item {
id: txtName id: txtName
clip: true clip: true
font.pointSize: 12 font.pointSize: 12
font.family: "Roboto" font.family: ScreenPlay.settings.font
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
@ -139,6 +139,7 @@ Item {
text: qsTr("Clear") text: qsTr("Clear")
Material.background: Material.Grey Material.background: Material.Grey
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
anchors { anchors {
top: parent.top top: parent.top
right: btnOpen.left right: btnOpen.left
@ -153,6 +154,7 @@ Item {
text: qsTr("Select Preview Image") text: qsTr("Select Preview Image")
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
anchors { anchors {
top: parent.top top: parent.top
right: parent.right right: parent.right

View File

@ -1,6 +1,7 @@
import QtQuick 2.12 import QtQuick 2.12
import QtQuick.Layouts 1.12 import QtQuick.Layouts 1.12
import QtQuick.Controls 2.2 import QtQuick.Controls 2.2
import ScreenPlay 1.0
Item { Item {
id: sliderVolumeWrapperBottom id: sliderVolumeWrapperBottom
@ -19,7 +20,7 @@ Item {
text: headline text: headline
height: 20 height: 20
font.pointSize: 10 font.pointSize: 10
font.family: "Roboto" font.family: ScreenPlay.settings.font
color: "#626262" color: "#626262"
anchors { anchors {

View File

@ -1,6 +1,7 @@
import QtQuick 2.12 import QtQuick 2.12
import QtQuick.Controls 2.12 import QtQuick.Controls 2.12
import QtQuick.Controls.Material 2.3 import QtQuick.Controls.Material 2.3
import ScreenPlay 1.0
Item { Item {
id: tag id: tag
@ -24,6 +25,7 @@ Item {
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter horizontalAlignment: Text.AlignHCenter
anchors.fill: parent anchors.fill: parent
font.family: ScreenPlay.settings.font
} }
TextField { TextField {
id: textField id: textField
@ -32,13 +34,14 @@ Item {
anchors.fill: parent anchors.fill: parent
anchors.margins: 10 anchors.margins: 10
anchors.bottomMargin: 0 anchors.bottomMargin: 0
font.family: ScreenPlay.settings.font
} }
TextMetrics { TextMetrics {
id: textMetrics id: textMetrics
text: txt.text text: txt.text
font.pointSize: 14 font.pointSize: 14
font.family: "Roboto" font.family: ScreenPlay.settings.font
} }
} }
MouseArea { MouseArea {

View File

@ -2,6 +2,7 @@ import QtQuick 2.12
import QtQuick.Controls 2.12 import QtQuick.Controls 2.12
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import QtQuick.Controls.Material 2.12 import QtQuick.Controls.Material 2.12
import ScreenPlay 1.0
Item { Item {
id: tagSelector id: tagSelector
@ -52,7 +53,7 @@ Item {
Connections { Connections {
target: delegate target: delegate
onRemoveThis: { function onRemoveThis() {
listModel.remove(itemIndex) listModel.remove(itemIndex)
} }
} }
@ -93,6 +94,7 @@ Item {
id: textField id: textField
anchors.fill: parent anchors.fill: parent
anchors.rightMargin: 15 anchors.rightMargin: 15
font.family: ScreenPlay.settings.font
anchors.leftMargin: 15 anchors.leftMargin: 15
onTextChanged: { onTextChanged: {
if(textField.length >= 10){ if(textField.length >= 10){
@ -109,6 +111,7 @@ Item {
enabled: false enabled: false
Material.background: Material.Red Material.background: Material.Red
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
anchors { anchors {
right: btnAdd.left right: btnAdd.left
rightMargin: 10 rightMargin: 10
@ -125,6 +128,7 @@ Item {
text: qsTr("Add Tag") text: qsTr("Add Tag")
Material.background: Material.LightGreen Material.background: Material.LightGreen
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
anchors { anchors {
right: parent.right right: parent.right
rightMargin: 10 rightMargin: 10

View File

@ -3,7 +3,7 @@ import QtQuick.Controls 2.3
import QtQuick.Controls.Material 2.2 import QtQuick.Controls.Material 2.2
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import QtQuick.Layouts 1.3 import QtQuick.Layouts 1.3
//import QtQuick.XmlListModel 2.0 import ScreenPlay 1.0
import QtWebEngine 1.8 import QtWebEngine 1.8
Item { Item {
@ -59,7 +59,7 @@ Item {
color: "white" color: "white"
height: 100 height: 100
text: qsTr("We use Stomt because it provides quick and easy feedback via I like/I wish. So you can easily give us feedback and speak your mind. We will read these wishes on a daily basis!") text: qsTr("We use Stomt because it provides quick and easy feedback via I like/I wish. So you can easily give us feedback and speak your mind. We will read these wishes on a daily basis!")
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Normal font.weight: Font.Normal
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
horizontalAlignment: Qt.AlignHCenter horizontalAlignment: Qt.AlignHCenter
@ -195,6 +195,7 @@ Item {
text: qsTr("Forums") text: qsTr("Forums")
Material.background: Material.Blue Material.background: Material.Blue
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
onClicked: Qt.openUrlExternally( onClicked: Qt.openUrlExternally(
"https://forum.screen-play.app/") "https://forum.screen-play.app/")
icon.source: "qrc:/assets/icons/icon_people.svg" icon.source: "qrc:/assets/icons/icon_people.svg"
@ -206,6 +207,7 @@ Item {
text: qsTr("Blog") text: qsTr("Blog")
Material.background: Material.LightGreen Material.background: Material.LightGreen
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
icon.source: "qrc:/assets/icons/icon_document.svg" icon.source: "qrc:/assets/icons/icon_document.svg"
icon.color: "white" icon.color: "white"
icon.width: 16 icon.width: 16
@ -217,7 +219,7 @@ Item {
text: qsTr("Source Code") text: qsTr("Source Code")
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
icon.source: "qrc:/assets/icons/icon_code.svg" icon.source: "qrc:/assets/icons/icon_code.svg"
icon.color: "white" icon.color: "white"
icon.width: 16 icon.width: 16
@ -229,7 +231,7 @@ Item {
text: qsTr("Workshop") text: qsTr("Workshop")
Material.background: Material.Red Material.background: Material.Red
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
icon.source: "qrc:/assets/icons/icon_steam.svg" icon.source: "qrc:/assets/icons/icon_steam.svg"
icon.color: "white" icon.color: "white"
icon.width: 16 icon.width: 16
@ -241,7 +243,7 @@ Item {
text: qsTr("Changelog") text: qsTr("Changelog")
Material.background: Material.Purple Material.background: Material.Purple
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
icon.source: "qrc:/assets/icons/icon_info.svg" icon.source: "qrc:/assets/icons/icon_info.svg"
icon.color: "white" icon.color: "white"
icon.width: 16 icon.width: 16

View File

@ -62,7 +62,7 @@ GridView {
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
font.pointSize: 32 font.pointSize: 32
font.family: "Roboto" font.family: ScreenPlay.settings.font
anchors { anchors {
top: parent.top top: parent.top
@ -138,7 +138,7 @@ GridView {
margins: 20 margins: 20
} }
color: "white" color: "white"
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Normal font.weight: Font.Normal
font.pointSize: 18 font.pointSize: 18
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
@ -157,7 +157,7 @@ GridView {
leftMargin: 20 leftMargin: 20
} }
color: "white" color: "white"
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Normal font.weight: Font.Normal
font.pointSize: 14 font.pointSize: 14

View File

@ -113,7 +113,7 @@ Item {
Text { Text {
id: txtDescriptionBottom id: txtDescriptionBottom
text: qsTr("Create wallpapers and widgets for local usage or the steam workshop!") text: qsTr("Create wallpapers and widgets for local usage or the steam workshop!")
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.pointSize: 10 font.pointSize: 10
color: "white" color: "white"

View File

@ -20,8 +20,7 @@ Item {
color: "white" color: "white"
font.pointSize: 21 font.pointSize: 21
font.family: ScreenPlay.settings.font
font.family: "Roboto"
font.weight: Font.Thin font.weight: Font.Thin
} }
@ -41,8 +40,7 @@ Item {
Text { Text {
id: txtExamples id: txtExamples
text: qsTr("Example Widgets and Scenes") text: qsTr("Example Widgets and Scenes")
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.pointSize: 16 font.pointSize: 16
color: "white" color: "white"

View File

@ -1,6 +1,7 @@
import QtQuick 2.14 import QtQuick 2.14
import QtQuick.Controls 2.14 import QtQuick.Controls 2.14
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import ScreenPlay 1.0
Item { Item {
id: btnEmpty id: btnEmpty
@ -70,7 +71,7 @@ Item {
Text { Text {
id: name id: name
text: btnEmpty.text text: btnEmpty.text
font.family: "Roboto" font.family: ScreenPlay.settings.font
opacity: buttonActive ? 1 : .25 opacity: buttonActive ? 1 : .25
font.pointSize: 14 font.pointSize: 14
color: "gray" color: "gray"
@ -87,7 +88,7 @@ Item {
} }
Text { Text {
text: ">" text: ">"
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.pointSize: 18 font.pointSize: 18
opacity: buttonActive ? 1 : .25 opacity: buttonActive ? 1 : .25
color: "#b9b9b9" color: "#b9b9b9"

View File

@ -19,7 +19,8 @@ Popup {
Connections { Connections {
target: ScreenPlay.util target: ScreenPlay.util
onAquireFFMPEGStatusChanged: {
function onAquireFFMPEGStatusChanged(aquireFFMPEGStatus) {
switch (aquireFFMPEGStatus) { switch (aquireFFMPEGStatus) {
case QMLUtilities.Init: case QMLUtilities.Init:
@ -90,7 +91,7 @@ Popup {
horizontalAlignment: Text.AlignHCenter horizontalAlignment: Text.AlignHCenter
font.pointSize: 16 font.pointSize: 16
height: 50 height: 50
font.family: "Roboto" font.family: ScreenPlay.settings.font
anchors.fill: parent anchors.fill: parent
anchors.margins: 50 anchors.margins: 50
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
@ -145,7 +146,7 @@ Popup {
height: 50 height: 50
Layout.fillWidth: true Layout.fillWidth: true
color: "gray" color: "gray"
font.family: "Roboto" font.family: ScreenPlay.settings.font
} }
Rectangle { Rectangle {
@ -187,7 +188,7 @@ Popup {
height: 50 height: 50
Layout.fillWidth: true Layout.fillWidth: true
color: Material.color(Material.Orange) color: Material.color(Material.Orange)
font.family: "Roboto" font.family: ScreenPlay.settings.font
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
anchors { anchors {
top: busyIndicator.bottom top: busyIndicator.bottom
@ -234,7 +235,7 @@ Popup {
height: txtExpander.paintedHeight height: txtExpander.paintedHeight
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
font.pointSize: 12 font.pointSize: 12
font.family: "Roboto" font.family: ScreenPlay.settings.font
onLinkHovered: maHoverEffect.cursorShape = Qt.PointingHandCursor onLinkHovered: maHoverEffect.cursorShape = Qt.PointingHandCursor
onLinkActivated: Qt.openUrlExternally(link) onLinkActivated: Qt.openUrlExternally(link)
linkColor: Material.color(Material.LightBlue) linkColor: Material.color(Material.LightBlue)
@ -339,7 +340,7 @@ if you installed ScreenPlay via Steam!
height: 50 height: 50
Layout.fillWidth: true Layout.fillWidth: true
color: "gray" color: "gray"
font.family: "Roboto" font.family: ScreenPlay.settings.font
anchors { anchors {
horizontalCenter: parent.horizontalCenter horizontalCenter: parent.horizontalCenter
top: parent.top top: parent.top

View File

@ -31,8 +31,7 @@ Item {
color: "white" color: "white"
font.pointSize: 21 font.pointSize: 21
font.family: ScreenPlay.settings.font
font.family: "Roboto"
font.weight: Font.Thin font.weight: Font.Thin
} }
@ -85,6 +84,7 @@ Item {
icon.source: "qrc:/assets/icons/icon_upload.svg" icon.source: "qrc:/assets/icons/icon_upload.svg"
icon.color: "white" icon.color: "white"
icon.width: 16 icon.width: 16
font.family: ScreenPlay.settings.font
enabled: ScreenPlay.util.ffmpegAvailable enabled: ScreenPlay.util.ffmpegAvailable
icon.height: 16 icon.height: 16
onClicked: fileDialogImportVideo.open() onClicked: fileDialogImportVideo.open()
@ -92,6 +92,7 @@ Item {
FileDialog { FileDialog {
id: fileDialogImportVideo id: fileDialogImportVideo
nameFilters: ["Video files (*.mp4 *.webm *.mkv *.mpg *.mp2 *.mpeg *.ogv *.ogg *.avi *.wmv *.m4v *.3gp *.flv)"]
onAccepted: { onAccepted: {
videoImportConvertFileSelected( videoImportConvertFileSelected(
@ -169,6 +170,7 @@ Item {
icon.color: "white" icon.color: "white"
icon.width: 16 icon.width: 16
icon.height: 16 icon.height: 16
font.family: ScreenPlay.settings.font
onClicked: fileDialogImportProject.open() onClicked: fileDialogImportProject.open()
} }
@ -246,6 +248,7 @@ Item {
icon.color: "white" icon.color: "white"
icon.width: 16 icon.width: 16
icon.height: 16 icon.height: 16
font.family: ScreenPlay.settings.font
onClicked: { onClicked: {
ScreenPlay.util.requestNavigation("Workshop") ScreenPlay.util.requestNavigation("Workshop")
} }

View File

@ -55,7 +55,7 @@ Item {
color: "gray" color: "gray"
width: parent.width - 40 width: parent.width - 40
font.pointSize: 13 font.pointSize: 13
font.family: ScreenPlay.settings.font
anchors { anchors {
centerIn: parent centerIn: parent
} }
@ -72,7 +72,7 @@ Item {
bottom: parent.bottom bottom: parent.bottom
margins: 20 margins: 20
} }
font.family: ScreenPlay.settings.font
onClicked: swipeView.incrementCurrentIndex() onClicked: swipeView.incrementCurrentIndex()
} }
} }
@ -123,11 +123,13 @@ Item {
text: qsTr("General") text: qsTr("General")
font.pointSize: 14 font.pointSize: 14
color: "#757575" color: "#757575"
font.family: ScreenPlay.settings.font
} }
TextField { TextField {
id: tfTitle id: tfTitle
Layout.fillWidth: true Layout.fillWidth: true
placeholderText: qsTr("Wallpaper name") placeholderText: qsTr("Wallpaper name")
font.family: ScreenPlay.settings.font
onTextChanged: { onTextChanged: {
if (text.length >= 3) { if (text.length >= 3) {
btnSave.enabled = true btnSave.enabled = true
@ -138,6 +140,7 @@ Item {
} }
TextField { TextField {
id: tfCreatedBy id: tfCreatedBy
font.family: ScreenPlay.settings.font
Layout.fillWidth: true Layout.fillWidth: true
placeholderText: qsTr("Copyright owner") placeholderText: qsTr("Copyright owner")
} }
@ -146,10 +149,12 @@ Item {
text: qsTr("License") text: qsTr("License")
font.pointSize: 14 font.pointSize: 14
color: "#757575" color: "#757575"
font.family: ScreenPlay.settings.font
} }
ComboBox { ComboBox {
id: cbLicense id: cbLicense
Layout.fillWidth: true Layout.fillWidth: true
font.family: ScreenPlay.settings.font
model: ListModel { model: ListModel {
id: modelLicense id: modelLicense
ListElement { ListElement {
@ -167,16 +172,19 @@ Item {
text: qsTr("Tags") text: qsTr("Tags")
font.pointSize: 14 font.pointSize: 14
color: "#757575" color: "#757575"
font.family: ScreenPlay.settings.font
} }
TagSelector { TagSelector {
id: tagSelector id: tagSelector
Layout.fillWidth: true Layout.fillWidth: true
} }
Text { Text {
text: qsTr("Preview Image") text: qsTr("Preview Image")
font.pointSize: 14 font.pointSize: 14
color: "#757575" color: "#757575"
font.family: ScreenPlay.settings.font
} }
ImageSelector { ImageSelector {
id: previewSelector id: previewSelector
@ -198,7 +206,7 @@ Item {
Connections { Connections {
target: ScreenPlay.create target: ScreenPlay.create
onHtmlWallpaperCreatedSuccessful: { function onHtmlWallpaperCreatedSuccessful(path) {
ScreenPlay.util.openFolderInExplorer(path) ScreenPlay.util.openFolderInExplorer(path)
} }
} }
@ -208,6 +216,7 @@ Item {
text: qsTr("Abort") text: qsTr("Abort")
Material.background: Material.Red Material.background: Material.Red
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
onClicked: { onClicked: {
ScreenPlay.util.setNavigationActive(true) ScreenPlay.util.setNavigationActive(true)
ScreenPlay.util.setNavigation("Create") ScreenPlay.util.setNavigation("Create")
@ -220,7 +229,7 @@ Item {
enabled: false enabled: false
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
onClicked: { onClicked: {
btnSave.enabled = false btnSave.enabled = false
savePopup.open() savePopup.open()
@ -255,6 +264,7 @@ Item {
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
anchors.bottom: parent.bottom anchors.bottom: parent.bottom
anchors.bottomMargin: 30 anchors.bottomMargin: 30
font.family: ScreenPlay.settings.font
} }
Timer { Timer {

View File

@ -4,6 +4,7 @@ import QtQuick.Controls 2.14
import QtQuick.Layouts 1.14 import QtQuick.Layouts 1.14
import QtQuick.Dialogs 1.2 import QtQuick.Dialogs 1.2
import ScreenPlay 1.0 import ScreenPlay 1.0
import Settings 1.0
import "../../../Common" import "../../../Common"
@ -15,7 +16,7 @@ Item {
id: txtHeadline id: txtHeadline
text: qsTr("Create an empty widget") text: qsTr("Create an empty widget")
height: 40 height: 40
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Light font.weight: Font.Light
color: "#757575" color: "#757575"
@ -76,11 +77,13 @@ Item {
text: qsTr("General") text: qsTr("General")
font.pointSize: 14 font.pointSize: 14
color: "#757575" color: "#757575"
font.family: ScreenPlay.settings.font
} }
TextField { TextField {
id: tfTitle id: tfTitle
Layout.fillWidth: true Layout.fillWidth: true
placeholderText: qsTr("Widget name") placeholderText: qsTr("Widget name")
font.family: ScreenPlay.settings.font
onTextChanged: { onTextChanged: {
if (text.length >= 3) { if (text.length >= 3) {
btnSave.enabled = true btnSave.enabled = true
@ -93,15 +96,18 @@ Item {
id: tfCreatedBy id: tfCreatedBy
Layout.fillWidth: true Layout.fillWidth: true
placeholderText: qsTr("Copyright owner") placeholderText: qsTr("Copyright owner")
font.family: ScreenPlay.settings.font
} }
Text { Text {
text: qsTr("Type") text: qsTr("Type")
font.pointSize: 14 font.pointSize: 14
color: "#757575" color: "#757575"
font.family: ScreenPlay.settings.font
} }
ComboBox { ComboBox {
id: cbType id: cbType
Layout.fillWidth: true Layout.fillWidth: true
font.family: ScreenPlay.settings.font
model: ListModel { model: ListModel {
id: model id: model
ListElement { ListElement {
@ -125,10 +131,12 @@ Item {
text: qsTr("License") text: qsTr("License")
font.pointSize: 14 font.pointSize: 14
color: "#757575" color: "#757575"
font.family: ScreenPlay.settings.font
} }
ComboBox { ComboBox {
id: cbLicense id: cbLicense
Layout.fillWidth: true Layout.fillWidth: true
font.family: ScreenPlay.settings.font
model: ListModel { model: ListModel {
id: modelLicense id: modelLicense
ListElement { ListElement {
@ -146,6 +154,7 @@ Item {
text: qsTr("Tags") text: qsTr("Tags")
font.pointSize: 14 font.pointSize: 14
color: "#757575" color: "#757575"
font.family: ScreenPlay.settings.font
} }
TagSelector { TagSelector {
@ -170,6 +179,7 @@ Item {
enabled: false enabled: false
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
onClicked: { onClicked: {
btnSave.enabled = false btnSave.enabled = false
@ -185,7 +195,7 @@ Item {
Connections { Connections {
target: ScreenPlay.create target: ScreenPlay.create
onWidgetCreatedSuccessful: { function onWidgetCreatedSuccessful(path) {
ScreenPlay.util.openFolderInExplorer(path) ScreenPlay.util.openFolderInExplorer(path)
} }
} }
@ -193,6 +203,7 @@ Item {
Button { Button {
id: btnExit id: btnExit
text: qsTr("Abort") text: qsTr("Abort")
font.family: ScreenPlay.settings.font
Material.background: Material.Red Material.background: Material.Red
Material.foreground: "white" Material.foreground: "white"
onClicked: { onClicked: {

View File

@ -64,6 +64,7 @@ Item {
width: parent.width width: parent.width
font.pointSize: 13 font.pointSize: 13
wrapMode: Text.WrapAtWordBoundaryOrAnywhere wrapMode: Text.WrapAtWordBoundaryOrAnywhere
font.family: ScreenPlay.settings.font
} }
Item { Item {
width: parent.width width: parent.width
@ -76,12 +77,14 @@ Item {
color: "gray" color: "gray"
width: parent.width width: parent.width
font.pointSize: 14 font.pointSize: 14
font.family: ScreenPlay.settings.font
} }
ComboBox { ComboBox {
id: comboBoxCodec id: comboBoxCodec
width: 260 width: 260
textRole: "text" textRole: "text"
valueRole: "value" valueRole: "value"
font.family: ScreenPlay.settings.font
onCurrentIndexChanged: { onCurrentIndexChanged: {
root.codec = model.get(comboBoxCodec.currentIndex).value root.codec = model.get(comboBoxCodec.currentIndex).value
} }
@ -109,6 +112,7 @@ Item {
icon.color: "white" icon.color: "white"
icon.width: 16 icon.width: 16
icon.height: 16 icon.height: 16
font.family: ScreenPlay.settings.font
onClicked: Qt.openUrlExternally( onClicked: Qt.openUrlExternally(
"https://kelteseth.gitlab.io/ScreenPlayDocs/wallpaper/wallpaper/#performance") "https://kelteseth.gitlab.io/ScreenPlayDocs/wallpaper/wallpaper/#performance")
anchors { anchors {
@ -120,6 +124,7 @@ Item {
Button { Button {
text: qsTr("Next") text: qsTr("Next")
highlighted: true highlighted: true
font.family: ScreenPlay.settings.font
onClicked: { onClicked: {
root.next() root.next()
} }

View File

@ -16,13 +16,14 @@ Item {
Text { Text {
id: txtErrorHeadline id: txtErrorHeadline
text: qsTr("An error occurred!") text: qsTr("An error occurred!")
anchors { anchors {
top: parent.top top: parent.top
topMargin: 30 topMargin: 30
horizontalCenter: parent.horizontalCenter horizontalCenter: parent.horizontalCenter
} }
height: 40 height: 40
font.family: "Segoe UI, Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Light font.weight: Font.Light
color: Material.color(Material.DeepOrange) color: Material.color(Material.DeepOrange)
font.pointSize: 32 font.pointSize: 32
@ -57,6 +58,7 @@ Item {
left: parent.left left: parent.left
margins: 20 margins: 20
} }
font.family: ScreenPlay.settings.font
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
color: "#626262" color: "#626262"
text: ScreenPlay.create.ffmpegOutput text: ScreenPlay.create.ffmpegOutput
@ -86,6 +88,7 @@ Item {
text: qsTr("Back to create and send an error report!") text: qsTr("Back to create and send an error report!")
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
anchors { anchors {
horizontalCenter: parent.horizontalCenter horizontalCenter: parent.horizontalCenter
bottom: parent.bottom bottom: parent.bottom

View File

@ -50,8 +50,7 @@ Item {
Connections { Connections {
target: ScreenPlay.create target: ScreenPlay.create
onCreateWallpaperStateChanged: { function onCreateWallpaperStateChanged(state) {
switch (state) { switch (state) {
case CreateImportVideo.ConvertingPreviewImage: case CreateImportVideo.ConvertingPreviewImage:
txtConvert.text = qsTr("Generating preview image...") txtConvert.text = qsTr("Generating preview image...")
@ -98,7 +97,7 @@ Item {
break break
} }
} }
onProgressChanged: { function onProgressChanged(progress) {
var percentage = Math.floor(progress * 100) var percentage = Math.floor(progress * 100)
if (percentage > 100 || progress > 0.95) if (percentage > 100 || progress > 0.95)
@ -112,7 +111,7 @@ Item {
id: txtHeadline id: txtHeadline
text: qsTr("Convert a video to a wallpaper") text: qsTr("Convert a video to a wallpaper")
height: 40 height: 40
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Light font.weight: Font.Light
color: "#757575" color: "#757575"
@ -196,6 +195,7 @@ Item {
color: "white" color: "white"
text: qsTr("") text: qsTr("")
font.pointSize: 21 font.pointSize: 21
font.family: ScreenPlay.settings.font
anchors { anchors {
horizontalCenter: parent.horizontalCenter horizontalCenter: parent.horizontalCenter
bottom: parent.bottom bottom: parent.bottom
@ -208,6 +208,7 @@ Item {
color: "white" color: "white"
text: qsTr("Generating preview video...") text: qsTr("Generating preview video...")
font.pointSize: 14 font.pointSize: 14
font.family: ScreenPlay.settings.font
anchors { anchors {
horizontalCenter: parent.horizontalCenter horizontalCenter: parent.horizontalCenter
bottom: parent.bottom bottom: parent.bottom
@ -254,6 +255,7 @@ Item {
id: textFieldName id: textFieldName
placeholderText: qsTr("Name (required!)") placeholderText: qsTr("Name (required!)")
width: parent.width width: parent.width
font.family: ScreenPlay.settings.font
Layout.fillWidth: true Layout.fillWidth: true
onTextChanged: { onTextChanged: {
if (textFieldName.text.length >= 3) { if (textFieldName.text.length >= 3) {
@ -267,6 +269,7 @@ Item {
TextField { TextField {
id: textFieldDescription id: textFieldDescription
placeholderText: qsTr("Description") placeholderText: qsTr("Description")
font.family: ScreenPlay.settings.font
width: parent.width width: parent.width
Layout.fillWidth: true Layout.fillWidth: true
@ -275,6 +278,7 @@ Item {
TextField { TextField {
id: textFieldYoutubeURL id: textFieldYoutubeURL
placeholderText: qsTr("Youtube URL") placeholderText: qsTr("Youtube URL")
font.family: ScreenPlay.settings.font
width: parent.width width: parent.width
Layout.fillWidth: true Layout.fillWidth: true
} }
@ -282,6 +286,7 @@ Item {
TagSelector { TagSelector {
id: textFieldTags id: textFieldTags
width: parent.width width: parent.width
Layout.fillWidth: true Layout.fillWidth: true
} }
} }
@ -303,6 +308,7 @@ Item {
text: qsTr("Abort") text: qsTr("Abort")
Material.background: Material.Red Material.background: Material.Red
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
onClicked: { onClicked: {
ScreenPlay.create.abortAndCleanup() ScreenPlay.create.abortAndCleanup()
ScreenPlay.util.setNavigationActive(true) ScreenPlay.util.setNavigationActive(true)
@ -316,6 +322,7 @@ Item {
enabled: false enabled: false
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
onClicked: { onClicked: {
if (conversionFinishedSuccessful) { if (conversionFinishedSuccessful) {
@ -353,6 +360,7 @@ Item {
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
anchors.bottom: parent.bottom anchors.bottom: parent.bottom
anchors.bottomMargin: 30 anchors.bottomMargin: 30
font.family: ScreenPlay.settings.font
} }
Timer { Timer {

View File

@ -28,16 +28,16 @@ Item {
Connections { Connections {
target: loaderHelp.item target: loaderHelp.item
onHelperButtonPressed: { function onHelperButtonPressed(pos) {
setNavigationItem(pos) setNavigationItem(pos)
} }
} }
Connections { Connections {
target: ScreenPlay.installedListModel target: ScreenPlay.installedListModel
onInstalledLoadingFinished: { function onInstalledLoadingFinished(){
checkIsContentInstalled() checkIsContentInstalled()
} }
onCountChanged: { function onCountChanged(count) {
if (count === 0) { if (count === 0) {
checkIsContentInstalled() checkIsContentInstalled()
} }
@ -71,8 +71,8 @@ Item {
GridView { GridView {
id: gridView id: gridView
boundsBehavior: Flickable.DragOverBounds boundsBehavior: Flickable.DragOverBounds
maximumFlickVelocity: 7000 maximumFlickVelocity: 2500
flickDeceleration: 5000 flickDeceleration: 2500
anchors.fill: parent anchors.fill: parent
cellWidth: 340 cellWidth: 340
cellHeight: 200 cellHeight: 200
@ -116,6 +116,7 @@ Item {
Text { Text {
id: txtHeader id: txtHeader
text: qsTr("Pull to refresh!") text: qsTr("Pull to refresh!")
font.family: ScreenPlay.settings.font
anchors.centerIn: parent anchors.centerIn: parent
color: "gray" color: "gray"
font.pointSize: 18 font.pointSize: 18
@ -130,6 +131,7 @@ Item {
Text { Text {
id: txtFooter id: txtFooter
font.family: ScreenPlay.settings.font
text: qsTr("Get more Wallpaper & Widgets via the Steam workshop!") text: qsTr("Get more Wallpaper & Widgets via the Steam workshop!")
anchors.centerIn: parent anchors.centerIn: parent
color: "gray" color: "gray"
@ -219,6 +221,9 @@ Item {
right: parent.right right: parent.right
left: parent.left left: parent.left
} }
MouseArea {
anchors.fill: parent
}
TabBar { TabBar {
height: parent.height height: parent.height
background: Item {} background: Item {}
@ -232,6 +237,7 @@ Item {
TabButton { TabButton {
text: qsTr("All") text: qsTr("All")
font.family: ScreenPlay.settings.font
icon.height: 16 icon.height: 16
icon.width: 16 icon.width: 16
height: parent.height height: parent.height
@ -247,6 +253,7 @@ Item {
text: qsTr("Scenes") text: qsTr("Scenes")
icon.height: 16 icon.height: 16
icon.width: 16 icon.width: 16
font.family: ScreenPlay.settings.font
width: implicitWidth width: implicitWidth
height: parent.height height: parent.height
background: Item {} background: Item {}
@ -260,6 +267,7 @@ Item {
text: qsTr("Videos") text: qsTr("Videos")
icon.height: 16 icon.height: 16
icon.width: 16 icon.width: 16
font.family: ScreenPlay.settings.font
height: parent.height height: parent.height
width: implicitWidth width: implicitWidth
background: Item {} background: Item {}
@ -273,6 +281,7 @@ Item {
text: qsTr("Widgets") text: qsTr("Widgets")
icon.height: 16 icon.height: 16
icon.width: 16 icon.width: 16
font.family: ScreenPlay.settings.font
height: parent.height height: parent.height
width: implicitWidth width: implicitWidth
background: Item {} background: Item {}
@ -301,7 +310,7 @@ Item {
id: txtSearch id: txtSearch
width: 250 width: 250
height: 40 height: 40
font.family: "Roboto" font.family: ScreenPlay.settings.font
leftPadding: 10 leftPadding: 10
anchors { anchors {
right: icnSearch.right right: icnSearch.right

View File

@ -2,7 +2,7 @@ import QtQuick 2.12
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Styles 1.4
import QtQuick.Controls.Material 2.2 import QtQuick.Controls.Material 2.2
import ScreenPlay 1.0
import "../Common" import "../Common"
Item { Item {
@ -52,7 +52,7 @@ Item {
x: 20 x: 20
y: 80 y: 80
text: qsTr("Get free Widgets and Wallpaper via the Steam Workshop") text: qsTr("Get free Widgets and Wallpaper via the Steam Workshop")
font.family: "Roboto" font.family: ScreenPlay.settings.font
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
color: "white" color: "white"

View File

@ -34,7 +34,7 @@ Item {
Connections { Connections {
target: ScreenPlay.util target: ScreenPlay.util
onSetSidebarItem: { function onSetSidebarItem(screenId, type) {
// Toggle sidebar if clicked on the same content twice // Toggle sidebar if clicked on the same content twice
if (activeScreen === screenId && root.state !== "inactive") { if (activeScreen === screenId && root.state !== "inactive") {
@ -191,7 +191,7 @@ Item {
Text { Text {
id: txtHeadline id: txtHeadline
text: qsTr("Headline") text: qsTr("Headline")
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Thin font.weight: Font.Thin
verticalAlignment: Text.AlignBottom verticalAlignment: Text.AlignBottom
font.pointSize: 16 font.pointSize: 16
@ -242,7 +242,7 @@ Item {
id: txtHeadlineMonitor id: txtHeadlineMonitor
height: 20 height: 20
text: qsTr("Select a Monitor to display the content") text: qsTr("Select a Monitor to display the content")
font.family: "Roboto" font.family: ScreenPlay.settings.font
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
font.pointSize: 10 font.pointSize: 10
color: "#626262" color: "#626262"
@ -277,7 +277,7 @@ Item {
id: txtComboBoxFillMode id: txtComboBoxFillMode
text: qsTr("Fill Mode") text: qsTr("Fill Mode")
font.family: "Roboto" font.family: ScreenPlay.settings.font
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
font.pointSize: 10 font.pointSize: 10
color: "#626262" color: "#626262"
@ -290,6 +290,7 @@ Item {
Layout.fillWidth: true Layout.fillWidth: true
textRole: "text" textRole: "text"
valueRole: "value" valueRole: "value"
font.family: ScreenPlay.settings.font
currentIndex: root.indexOfValue( currentIndex: root.indexOfValue(
cbVideoFillMode.model, cbVideoFillMode.model,
ScreenPlay.settings.videoFillMode) ScreenPlay.settings.videoFillMode)
@ -321,7 +322,7 @@ Item {
Material.accent: Material.Orange Material.accent: Material.Orange
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
icon.source: "qrc:/assets/icons/icon_plus.svg" icon.source: "qrc:/assets/icons/icon_plus.svg"
icon.color: "white" icon.color: "white"
icon.width: 16 icon.width: 16

View File

@ -60,7 +60,7 @@ ColumnLayout {
Text { Text {
id: txtComboBoxFillMode id: txtComboBoxFillMode
text: qsTr("Fill Mode") text: qsTr("Fill Mode")
font.family: "Roboto" font.family: ScreenPlay.settings.font
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
font.pointSize: 10 font.pointSize: 10
color: "#626262" color: "#626262"

View File

@ -28,7 +28,7 @@ Rectangle {
Connections { Connections {
target: ScreenPlay.monitorListModel target: ScreenPlay.monitorListModel
onMonitorReloadCompleted: { function onMonitorReloadCompleted() {
resize() resize()
} }
} }

View File

@ -1,5 +1,6 @@
import QtQuick 2.12 import QtQuick 2.12
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import ScreenPlay 1.0
Item { Item {
id: root id: root
@ -37,7 +38,7 @@ Item {
horizontalAlignment: Text.AlignHCenter horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
font.pointSize: root.fontSize font.pointSize: root.fontSize
font.family: "Roboto" font.family: ScreenPlay.settings.font
wrapMode: Text.WrapAnywhere wrapMode: Text.WrapAnywhere
} }

View File

@ -65,7 +65,7 @@ Item {
text: qsTr("Wallpaper Configuration") text: qsTr("Wallpaper Configuration")
font.pointSize: 21 font.pointSize: 21
color: "#626262" color: "#626262"
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Thin font.weight: Font.Thin
width: 400 width: 400
anchors { anchors {
@ -98,10 +98,10 @@ Item {
} }
Connections { Connections {
target: ScreenPlay.screenPlayManager target: ScreenPlay.screenPlayManager
onProjectSettingsListModelFound: { function onProjectSettingsListModelFound(li,type) {
videoControlWrapper.state = "visible" videoControlWrapper.state = "visible"
customPropertiesGridView.model = li customPropertiesGridView.model = li
if (type == "videoWallpaper") { if (type === "videoWallpaper") {
customPropertiesGridView.state = "hidden" customPropertiesGridView.state = "hidden"
videoControlWrapper.state = "visible" videoControlWrapper.state = "visible"
} else { } else {
@ -109,7 +109,7 @@ Item {
videoControlWrapper.state = "hidden" videoControlWrapper.state = "hidden"
} }
} }
onProjectSettingsListModelNotFound: { function onProjectSettingsListModelNotFound() {
customPropertiesGridView.model = null customPropertiesGridView.model = null
videoControlWrapper.state = "hidden" videoControlWrapper.state = "hidden"
customPropertiesGridView.state = "hidden" customPropertiesGridView.state = "hidden"
@ -130,6 +130,7 @@ Item {
text: qsTr("Remove selected") text: qsTr("Remove selected")
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
enabled: monitorSelection.activeMonitors.length == 1 enabled: monitorSelection.activeMonitors.length == 1
onClicked: { onClicked: {
ScreenPlay.screenPlayManager.removeWallpaperAt(monitorSelection.activeMonitors[0]) ScreenPlay.screenPlayManager.removeWallpaperAt(monitorSelection.activeMonitors[0])
@ -141,6 +142,7 @@ Item {
text: qsTr("Remove all Wallpapers") text: qsTr("Remove all Wallpapers")
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
enabled: ScreenPlay.screenPlayManager.activeWallpaperCounter > 0 enabled: ScreenPlay.screenPlayManager.activeWallpaperCounter > 0
onClicked: { onClicked: {
ScreenPlay.screenPlayManager.removeAllWallpapers() ScreenPlay.screenPlayManager.removeAllWallpapers()
@ -152,6 +154,7 @@ Item {
text: qsTr("Remove all Widgets") text: qsTr("Remove all Widgets")
Material.background: Material.Orange Material.background: Material.Orange
Material.foreground: "white" Material.foreground: "white"
font.family: ScreenPlay.settings.font
enabled: ScreenPlay.screenPlayManager.activeWidgetsCounter > 0 enabled: ScreenPlay.screenPlayManager.activeWidgetsCounter > 0
onClicked: { onClicked: {
ScreenPlay.screenPlayManager.removeAllWidgets() ScreenPlay.screenPlayManager.removeAllWidgets()
@ -174,6 +177,7 @@ Item {
} }
} }
GridView { GridView {
id: customPropertiesGridView id: customPropertiesGridView
boundsBehavior: Flickable.DragOverBounds boundsBehavior: Flickable.DragOverBounds
@ -188,18 +192,21 @@ Item {
top: parent.top top: parent.top
topMargin: 60 topMargin: 60
right: parent.right right: parent.right
rightMargin: 40
bottom: parent.bottom bottom: parent.bottom
margins: 30 bottomMargin: 30
left: itmLeftWrapper.right left: itmLeftWrapper.right
} }
delegate: MonitorsProjectSettingItem { delegate: MonitorsProjectSettingItem {
id: delegate id: delegate
width: parent.width - 40
selectedMonitor: monitors.activeMonitorIndex selectedMonitor: monitors.activeMonitorIndex
} }
ScrollBar.vertical: ScrollBar { ScrollBar.vertical: ScrollBar {
snapMode: ScrollBar.SnapOnRelease snapMode: ScrollBar.SnapOnRelease
policy: ScrollBar.AlwaysOn
} }
states: [ states: [
@ -334,3 +341,9 @@ Item {
} }
] ]
} }
/*##^##
Designer {
D{i:0;autoSize:true;height:768;width:1366}
}
##^##*/

View File

@ -1,33 +1,32 @@
import QtQuick 2.12 import QtQuick 2.12
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import QtQuick.Dialogs 1.2
import QtQuick.Controls.Material 2.2 import QtQuick.Controls.Material 2.2
import QtQuick.Layouts 1.3 import QtQuick.Layouts 1.3
import Settings 1.0
import ScreenPlay 1.0 import ScreenPlay 1.0
Item {
Rectangle {
id: delegate id: delegate
focus: true focus: true
height: isHeadline ? 50 : 30 height: isHeadline ? 50 : 30
width: 300
property int selectedMonitor property int selectedMonitor
anchors {
left: parent.left
leftMargin: isHeadline ? 0 : 25
}
Text { Text {
id: txtDescription id: txtDescription
text: name text: name
width: 100 width: 100
font.pointSize: isHeadline ? 21 : 14 font.pointSize: isHeadline ? 18 : 12
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Normal font.weight: Font.Normal
color: isHeadline ? Qt.darker(Material.foreground) : Material.foreground
anchors { anchors {
left: parent.left left: parent.left
leftMargin: isHeadline ? 0 : 25
} }
} }
@ -47,19 +46,102 @@ Item {
var obj = JSON.parse(value.toString()) var obj = JSON.parse(value.toString())
if (obj["type"] === "slider") { if (obj["text"]) {
txtDescription.text = obj["text"]
}
switch (obj["type"]) {
case "slider":
loader.sourceComponent = compSlider loader.sourceComponent = compSlider
loader.item.from = obj["from"] loader.item.from = obj["from"]
loader.item.to = obj["to"] loader.item.to = obj["to"]
loader.item.value = obj["value"] loader.item.value = obj["value"]
loader.item.stepSize = obj["stepSize"] loader.item.stepSize = obj["stepSize"]
break
case "bool":
loader.sourceComponent = compCheckbox
loader.item.value = obj["value"]
break
case "color":
loader.sourceComponent = compColorpicker
loader.item.value = obj["value"]
break
} }
} }
Component {
id: compCheckbox
Item {
id: root
anchors.fill: parent
property bool value
CheckBox {
id: checkbox
checkable: true
checked: root.value
anchors {
right: parent.right
verticalCenter: parent.verticalCenter
}
onCheckedChanged: {
ScreenPlay.screenPlayManager.setWallpaperValue(
selectedMonitor, name, checkbox.checked)
}
}
}
}
Component {
id: compColorpicker
Item {
id: root
anchors.fill: parent
property color value
Button {
id: btnSetColor
text: qsTr("Set color")
onClicked: colorDialog.open()
anchors {
right: parent.right
verticalCenter: parent.verticalCenter
}
}
Rectangle {
id: rctPreviewColor
radius: 3
color: root.value
border.width: 1
border.color: "gray"
width: parent.height
height: parent.height
anchors {
right: btnSetColor.left
rightMargin: 20
verticalCenter: parent.verticalCenter
}
}
ColorDialog {
id: colorDialog
title: qsTr("Please choose a color")
onAccepted: {
rctPreviewColor.color = colorDialog.color
let tmpColor = "'" + colorDialog.color.toString() + "'"
ScreenPlay.screenPlayManager.setWallpaperValue(
selectedMonitor, name, tmpColor)
}
}
}
}
Component { Component {
id: compSlider id: compSlider
Item { Item {
id:root id: root
anchors.fill: parent anchors.fill: parent
property int from property int from
property int to property int to
@ -67,24 +149,35 @@ Item {
property int stepSize property int stepSize
Slider { Slider {
id:slider id: slider
from: root.from from: root.from
to: root.to to: root.to
value: root.value value: root.value
stepSize: root.stepSize stepSize: root.stepSize
live: false live: false
width: parent.width
anchors {
verticalCenter: parent.verticalCenter
right:txtSliderValue.left
rightMargin: 20
left:parent.left
leftMargin: 20
}
onValueChanged: { onValueChanged: {
var value = Math.round(slider.value * 100) / 100; var value = Math.round(slider.value * 100) / 100
txtSliderValue.text = value; txtSliderValue.text = value
ScreenPlay.screenPlayManager.setWallpaperValue(selectedMonitor,txtDescription.text,value) ScreenPlay.screenPlayManager.setWallpaperValue(
selectedMonitor, name, value)
} }
} }
Text { Text {
id: txtSliderValue id: txtSliderValue
anchors{ color: Material.foreground
right:parent.right horizontalAlignment: Text.AlignRight
font.family: ScreenPlay.settings.font
anchors {
right: parent.right
verticalCenter: parent.verticalCenter verticalCenter: parent.verticalCenter
} }
} }
@ -94,6 +187,14 @@ Item {
Loader { Loader {
id: loader id: loader
anchors.fill: parent anchors.fill: parent
anchors.rightMargin: 10
} }
} }
} }
/*##^##
Designer {
D{i:0;height:50;width:400}
}
##^##*/

View File

@ -2,7 +2,6 @@ import QtQuick 2.12
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import ScreenPlay 1.0 import ScreenPlay 1.0
import "../Workshop" import "../Workshop"
@ -15,6 +14,10 @@ Rectangle {
width: 1366 width: 1366
color: "#ffffff" color: "#ffffff"
MouseArea {
anchors.fill: parent
}
signal changePage(string name) signal changePage(string name)
property var navArray: [navCreate, navWorkshop, navInstalled, navSettings, navCommunity] property var navArray: [navCreate, navWorkshop, navInstalled, navSettings, navCommunity]
@ -22,10 +25,10 @@ Rectangle {
Connections { Connections {
target: ScreenPlay.util target: ScreenPlay.util
onRequestNavigationActive: { function onRequestNavigationActive(isActive) {
setActive(isActive) setActive(isActive)
} }
onRequestNavigation:{ function onRequestNavigation(nav){
onPageChanged(nav) onPageChanged(nav)
} }
} }

View File

@ -1,5 +1,6 @@
import QtQuick 2.12 import QtQuick 2.12
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import ScreenPlay 1.0
Item { Item {
id: navigationItem id: navigationItem
@ -64,7 +65,7 @@ Item {
font.pointSize: 14 font.pointSize: 14
color: "#626262" color: "#626262"
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Normal font.weight: Font.Normal
text: "" text: ""
@ -78,7 +79,7 @@ Item {
font.pointSize: 14 font.pointSize: 14
color: "#626262" color: "#626262"
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
font.family: "Roboto" font.family: ScreenPlay.settings.font
font.weight: Font.Normal font.weight: Font.Normal
} }

View File

@ -24,7 +24,7 @@ Item {
Connections { Connections {
target: ScreenPlay.screenPlayManager target: ScreenPlay.screenPlayManager
onActiveWallpaperCounterChanged: { function onActiveWallpaperCounterChanged() {
rippleEffect.trigger() rippleEffect.trigger()
ScreenPlay.setTrackerSendEvent("navigation", ScreenPlay.setTrackerSendEvent("navigation",
"wallpaperConfiguration") "wallpaperConfiguration")
@ -51,7 +51,7 @@ Item {
color: "orange" color: "orange"
font.pointSize: 10 font.pointSize: 10
font.bold: true font.bold: true
font.family: "Roboto" font.family: ScreenPlay.settings.font
anchors { anchors {
horizontalCenter: parent.horizontalCenter horizontalCenter: parent.horizontalCenter
@ -79,7 +79,7 @@ Item {
horizontalAlignment: Text.AlignRight horizontalAlignment: Text.AlignRight
color: "#626262" color: "#626262"
font.pointSize: 12 font.pointSize: 12
font.family: "Roboto" font.family: ScreenPlay.settings.font
} }
MouseArea { MouseArea {
id: ma id: ma

View File

@ -1,6 +1,7 @@
import QtQuick 2.12 import QtQuick 2.12
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import QtQuick.Controls.Material 2.2 import QtQuick.Controls.Material 2.2
import ScreenPlay 1.0
Item { Item {
id: settingsBool id: settingsBool
@ -26,7 +27,7 @@ Item {
id: txtHeadline id: txtHeadline
color: "#5D5D5D" color: "#5D5D5D"
text: settingsBool.headline text: settingsBool.headline
font.family: ScreenPlay.settings.font
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
anchors{ anchors{
@ -38,7 +39,6 @@ Item {
} }
font.pointSize: 12 font.pointSize: 12
font.family: "Roboto"
} }
Text { Text {
@ -46,11 +46,11 @@ Item {
text: settingsBool.description text: settingsBool.description
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
color: "#B5B5B5" color: "#B5B5B5"
font.family: ScreenPlay.settings.font
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
font.pointSize: 10 font.pointSize: 10
font.family: "Roboto"
anchors{ anchors{
top:txtHeadline.bottom top:txtHeadline.bottom
topMargin: 6 topMargin: 6

View File

@ -163,7 +163,7 @@ Item {
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
font.pointSize: 10 font.pointSize: 10
font.family: "Roboto" font.family: ScreenPlay.settings.font
anchors { anchors {
right: parent.right right: parent.right
left: parent.left left: parent.left
@ -180,13 +180,13 @@ Item {
Component.onCompleted: { Component.onCompleted: {
settingsLanguage.comboBox.currentIndex = root.indexOfValue( settingsLanguage.comboBox.currentIndex = root.indexOfValue(
settingsLanguage.comboBox.model, settingsLanguage.comboBox.model,
ScreenPlay.settings.videoFillMode) ScreenPlay.settings.language)
} }
comboBox { comboBox {
onActivated: { onActivated: {
ScreenPlay.settings.setLanguage(settingsLanguage.comboBox.currentValue) ScreenPlay.settings.setLanguage(settingsLanguage.comboBox.currentValue)
ScreenPlay.settings.setupLanguage() ScreenPlay.settings.retranslateUI()
} }
model: [{ model: [{
"value": Settings.En, "value": Settings.En,
@ -203,6 +203,12 @@ Item {
}, { }, {
"value": Settings.Es, "value": Settings.Es,
"text": qsTr("Spanish") "text": qsTr("Spanish")
}, {
"value": Settings.Ko,
"text": qsTr("Korean")
}, {
"value": Settings.Vi,
"text": qsTr("Vietnamese")
}] }]
} }
} }
@ -363,6 +369,7 @@ Item {
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
font.pointSize: 16 font.pointSize: 16
font.family: ScreenPlay.settings.font
anchors { anchors {
top: parent.top top: parent.top
topMargin: 6 topMargin: 6
@ -379,7 +386,7 @@ Item {
verticalAlignment: Text.AlignTop verticalAlignment: Text.AlignTop
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
font.pointSize: 11 font.pointSize: 11
font.family: "Roboto" font.family: ScreenPlay.settings.font
width: parent.width * .6 width: parent.width * .6
anchors { anchors {
top: txtHeadline.bottom top: txtHeadline.bottom
@ -486,7 +493,7 @@ Item {
Connections { Connections {
target: ScreenPlay.util target: ScreenPlay.util
onAllLicenseLoaded: { function onAllLicenseLoaded(licensesText) {
expanderCopyright.text = licensesText expanderCopyright.text = licensesText
} }
} }
@ -527,7 +534,7 @@ Item {
Connections { Connections {
target: ScreenPlay.util target: ScreenPlay.util
onAllDataProtectionLoaded: { function onAllDataProtectionLoaded(dataProtectionText) {
expanderDataProtection.text = dataProtectionText expanderDataProtection.text = dataProtectionText
} }
} }

View File

@ -1,6 +1,7 @@
import QtQuick 2.12 import QtQuick 2.12
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import QtQuick.Controls.Material 2.2 import QtQuick.Controls.Material 2.2
import ScreenPlay 1.0
Item { Item {
id: settingsButton id: settingsButton
@ -31,7 +32,6 @@ Item {
id: txtHeadline id: txtHeadline
color: "#5D5D5D" color: "#5D5D5D"
text: settingsButton.headline text: settingsButton.headline
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
anchors { anchors {
@ -42,6 +42,7 @@ Item {
} }
font.pointSize: 12 font.pointSize: 12
font.family: ScreenPlay.settings.font
} }
Text { Text {
@ -53,7 +54,7 @@ Item {
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
font.pointSize: 10 font.pointSize: 10
font.family: "Roboto" font.family: ScreenPlay.settings.font
anchors { anchors {
top: txtHeadline.bottom top: txtHeadline.bottom
topMargin: 6 topMargin: 6
@ -71,6 +72,7 @@ Item {
Material.foreground: "white" Material.foreground: "white"
icon.width: 20 icon.width: 20
icon.height: 20 icon.height: 20
font.family: ScreenPlay.settings.font
anchors { anchors {
right: parent.right right: parent.right
rightMargin: 20 rightMargin: 20

View File

@ -1,5 +1,6 @@
import QtQuick 2.12 import QtQuick 2.12
import QtQuick.Controls 2.3 import QtQuick.Controls 2.3
import ScreenPlay 1.0
Item { Item {
id: settingsComboBox id: settingsComboBox
@ -26,7 +27,7 @@ Item {
} }
font.pointSize: 12 font.pointSize: 12
font.family: "Roboto" font.family: ScreenPlay.settings.font
} }
Text { Text {
@ -38,7 +39,7 @@ Item {
horizontalAlignment: Text.AlignLeft horizontalAlignment: Text.AlignLeft
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
font.pointSize: 10 font.pointSize: 10
font.family: "Roboto" font.family: ScreenPlay.settings.font
anchors { anchors {
top: txtHeadline.bottom top: txtHeadline.bottom
topMargin: 6 topMargin: 6
@ -54,6 +55,7 @@ Item {
implicitWidth: 200 implicitWidth: 200
textRole: "text" textRole: "text"
valueRole: "value" valueRole: "value"
font.family: ScreenPlay.settings.font
anchors { anchors {
right: parent.right right: parent.right
rightMargin: 20 rightMargin: 20

View File

@ -29,9 +29,11 @@ Rectangle {
left: parent.left left: parent.left
margins: 20 margins: 20
} }
lineHeight: 1.2
color: "#626262" color: "#626262"
height: txtExpander.paintedHeight height: txtExpander.paintedHeight
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
font.family: ScreenPlay.settings.font
} }
MouseArea { MouseArea {
anchors.fill: parent anchors.fill: parent

View File

@ -1,5 +1,6 @@
import QtQuick 2.12 import QtQuick 2.12
import QtGraphicalEffects 1.0 import QtGraphicalEffects 1.0
import ScreenPlay 1.0
Item { Item {
id: settingsHeader id: settingsHeader
@ -65,8 +66,7 @@ Item {
font.pointSize: 12 font.pointSize: 12
color: "white" color: "white"
verticalAlignment: Text.AlignTop verticalAlignment: Text.AlignTop
font.family: ScreenPlay.settings.font
font.family: "Roboto"
anchors { anchors {
top: parent.top top: parent.top
topMargin: 0 topMargin: 0

View File

@ -34,7 +34,6 @@ Create::Create(const shared_ptr<GlobalVariables>& globalVariables, QObject* pare
*/ */
Create::Create() Create::Create()
: QObject(nullptr) : QObject(nullptr)
, m_globalVariables(nullptr)
{ {
qRegisterMetaType<CreateImportVideo::ImportVideoState>("CreateImportVideo::ImportVideoState"); qRegisterMetaType<CreateImportVideo::ImportVideoState>("CreateImportVideo::ImportVideoState");
qRegisterMetaType<Create::VideoCodec>("Create::VideoCodec"); qRegisterMetaType<Create::VideoCodec>("Create::VideoCodec");
@ -43,6 +42,9 @@ Create::Create()
qmlRegisterType<Create>("ScreenPlay.Create", 1, 0, "Create"); qmlRegisterType<Create>("ScreenPlay.Create", 1, 0, "Create");
} }
/*!
\brief Creates a new widget.
*/
void Create::createWidget(const QString& localStoragePath, const QString& title, const QString& previewThumbnail, const QString& createdBy, const QString& license, const QString& type, const QVector<QString>& tags) void Create::createWidget(const QString& localStoragePath, const QString& title, const QString& previewThumbnail, const QString& createdBy, const QString& license, const QString& type, const QVector<QString>& tags)
{ {
QtConcurrent::run([=]() { QtConcurrent::run([=]() {
@ -95,7 +97,7 @@ void Create::createWidget(const QString& localStoragePath, const QString& title,
} }
QJsonArray tagsJsonArray; QJsonArray tagsJsonArray;
for (QString tmp : tags) { for (const QString& tmp : tags) {
tagsJsonArray.append(tmp); tagsJsonArray.append(tmp);
} }
obj.insert("tags", tagsJsonArray); obj.insert("tags", tagsJsonArray);
@ -128,6 +130,9 @@ void Create::createWidget(const QString& localStoragePath, const QString& title,
}); });
} }
/*!
\brief Creates a HTML wallpaper.
*/
void Create::createHTMLWallpaper( void Create::createHTMLWallpaper(
const QString& localStoragePath, const QString& localStoragePath,
const QString& title, const QString& title,
@ -169,7 +174,7 @@ void Create::createHTMLWallpaper(
fileMainHTML.close(); fileMainHTML.close();
QJsonArray tagsJsonArray; QJsonArray tagsJsonArray;
for (QString tmp : tags) { for (const QString& tmp : tags) {
tagsJsonArray.append(tmp); tagsJsonArray.append(tmp);
} }
obj.insert("tags", tagsJsonArray); obj.insert("tags", tagsJsonArray);
@ -203,7 +208,7 @@ void Create::createHTMLWallpaper(
} }
/*! /*!
Starts the process. \brief Starts the process.
*/ */
void Create::createWallpaperStart(QString videoPath, Create::VideoCodec codec) void Create::createWallpaperStart(QString videoPath, Create::VideoCodec codec)
{ {
@ -249,7 +254,7 @@ void Create::createWallpaperStart(QString videoPath, Create::VideoCodec codec)
} }
/*! /*!
When converting of the wallpaper steps where successful. \brief When converting of the wallpaper steps where successful.
*/ */
void Create::saveWallpaper(QString title, QString description, QString filePath, QString previewImagePath, QString youtube, Create::VideoCodec codec, QVector<QString> tags) void Create::saveWallpaper(QString title, QString description, QString filePath, QString previewImagePath, QString youtube, Create::VideoCodec codec, QVector<QString> tags)
{ {
@ -323,7 +328,7 @@ void Create::saveWallpaper(QString title, QString description, QString filePath,
obj.insert("type", "videoWallpaper"); obj.insert("type", "videoWallpaper");
QJsonArray tagsJsonArray; QJsonArray tagsJsonArray;
for (QString tmp : tags) { for (const QString &tmp : tags) {
tagsJsonArray.append(tmp); tagsJsonArray.append(tmp);
} }
obj.insert("tags", tagsJsonArray); obj.insert("tags", tagsJsonArray);
@ -343,7 +348,9 @@ void Create::saveWallpaper(QString title, QString description, QString filePath,
file.close(); file.close();
emit createWallpaperStateChanged(CreateImportVideo::ImportVideoState::CreateProjectFileFinished); emit createWallpaperStateChanged(CreateImportVideo::ImportVideoState::CreateProjectFileFinished);
} }
/*!
\brief .
*/
void Create::abortAndCleanup() void Create::abortAndCleanup()
{ {
qWarning() << "Abort and Cleanup!"; qWarning() << "Abort and Cleanup!";

View File

@ -75,6 +75,8 @@ signals:
void htmlWallpaperCreatedSuccessful(QString path); void htmlWallpaperCreatedSuccessful(QString path);
public slots: public slots:
void createWallpaperStart(QString videoPath, Create::VideoCodec codec);
void createWidget( void createWidget(
const QString& localStoragePath, const QString& localStoragePath,
const QString& title, const QString& title,
@ -91,8 +93,14 @@ public slots:
const QString& license, const QString& license,
const QVector<QString>& tags); const QVector<QString>& tags);
void createWallpaperStart(QString videoPath, Create::VideoCodec codec); void saveWallpaper(QString title,
void saveWallpaper(QString title, QString description, QString filePath, QString previewImagePath, QString youtube, ScreenPlay::Create::VideoCodec codec, QVector<QString> tags); QString description,
QString filePath,
QString previewImagePath,
QString youtube,
ScreenPlay::Create::VideoCodec codec,
QVector<QString> tags);
void abortAndCleanup(); void abortAndCleanup();
void setProgress(float progress) void setProgress(float progress)
@ -129,7 +137,7 @@ private:
CreateImportVideo* m_createImportVideo { nullptr }; CreateImportVideo* m_createImportVideo { nullptr };
QThread* m_createImportVideoThread { nullptr }; QThread* m_createImportVideoThread { nullptr };
const shared_ptr<GlobalVariables>& m_globalVariables; const shared_ptr<GlobalVariables> m_globalVariables;
float m_progress { 0.0F }; float m_progress { 0.0F };
QString m_workingDir; QString m_workingDir;

View File

@ -14,10 +14,10 @@ namespace ScreenPlay {
*/ */
/*! /*!
This constructor is only needed for calling qRegisterMetaType on CreateImportVideo to register the enums. \brief This constructor is only needed for calling qRegisterMetaType on CreateImportVideo to register the enums.
\code \code
qRegisterMetaType<CreateImportVideo::ImportVideoState>("CreateImportVideo::ImportVideoState"); qRegisterMetaType<CreateImportVideo::ImportVideoState>("CreateImportVideo::ImportVideoState");
\endcode \endcode
*/ */
CreateImportVideo::CreateImportVideo(QObject* parent) CreateImportVideo::CreateImportVideo(QObject* parent)
: QObject(parent) : QObject(parent)
@ -25,7 +25,7 @@ CreateImportVideo::CreateImportVideo(QObject* parent)
} }
/*! /*!
Creates a CreateImportVideo object to be used in a different thread. A \a videoPath and a \a exportPath are \brief Creates a CreateImportVideo object to be used in a different thread. A \a videoPath and a \a exportPath are
needed for convertion. needed for convertion.
*/ */
CreateImportVideo::CreateImportVideo(const QString& videoPath, const QString& exportPath, const QStringList& codecs, QObject* parent) CreateImportVideo::CreateImportVideo(const QString& videoPath, const QString& exportPath, const QStringList& codecs, QObject* parent)
@ -51,7 +51,7 @@ CreateImportVideo::CreateImportVideo(const QString& videoPath, const QString& ex
} }
/*! /*!
Processes the multiple steps of creating a wallpaper. \brief Processes the multiple steps of creating a wallpaper.
\list 1 \list 1
\li createWallpaperInfo() \li createWallpaperInfo()
\li createWallpaperImagePreview() \li createWallpaperImagePreview()
@ -90,7 +90,7 @@ void CreateImportVideo::process()
return; return;
} }
for (const auto codec : m_codecs) { for (const auto& codec : qAsConst(m_codecs)) {
if (!createWallpaperVideo(codec) || QThread::currentThread()->isInterruptionRequested()) { if (!createWallpaperVideo(codec) || QThread::currentThread()->isInterruptionRequested()) {
emit abortAndCleanup(); emit abortAndCleanup();
return; return;
@ -109,7 +109,7 @@ void CreateImportVideo::process()
} }
/*! /*!
Starts ffprobe and tries to parse the resulting json. \brief Starts ffprobe and tries to parse the resulting json.
Returns \c false if : Returns \c false if :
\list \list
\li Parsing the output json of ffprobe fails. \li Parsing the output json of ffprobe fails.
@ -249,11 +249,15 @@ bool CreateImportVideo::createWallpaperInfo()
framerate = qCeil(value1 / value2); framerate = qCeil(value1 / value2);
m_framerate = framerate; m_framerate = framerate;
// If the video is to short
m_smallVideo = m_numberOfFrames < (m_framerate * 3);
return true; return true;
} }
/*! /*!
Starts ffmpeg and tries to covert the given video to a five second preview. \brief Starts ffmpeg and tries to covert the given video to a five second preview.
\code \code
//[...] //[...]
args.append("-vf"); args.append("-vf");
@ -273,6 +277,7 @@ bool CreateImportVideo::createWallpaperInfo()
*/ */
bool CreateImportVideo::createWallpaperVideoPreview() bool CreateImportVideo::createWallpaperVideoPreview()
{ {
emit createWallpaperStateChanged(ImportVideoState::ConvertingPreviewVideo); emit createWallpaperStateChanged(ImportVideoState::ConvertingPreviewVideo);
QStringList args; QStringList args;
@ -280,13 +285,15 @@ bool CreateImportVideo::createWallpaperVideoPreview()
args.append("-stats"); args.append("-stats");
args.append("-i"); args.append("-i");
args.append(m_videoPath); args.append(m_videoPath);
// If the video is shorter than 6 seconds we simply convert the original to webm
args.append("-vf"); if (!m_smallVideo) {
// We allways want to have a 5 second clip via 24fps -> 120 frames args.append("-vf");
// Divided by the number of frames we can skip (timeInSeconds * Framrate) // We allways want to have a 5 second clip via 24fps -> 120 frames
// scale & crop parameter: https://unix.stackexchange.com/a/284731 // Divided by the number of frames we can skip (timeInSeconds * Framrate)
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"); // scale & crop parameter: https://unix.stackexchange.com/a/284731
// Disable audio 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("-an");
args.append(m_exportPath + "/preview.webm"); args.append(m_exportPath + "/preview.webm");
emit processOutput("ffmpeg " + Util::toString(args)); emit processOutput("ffmpeg " + Util::toString(args));
@ -332,7 +339,7 @@ bool CreateImportVideo::createWallpaperVideoPreview()
} }
/*! /*!
Starts ffmpeg and tries to covert the given video to a 5 second preview gif. \brief Starts ffmpeg and tries to covert the given video to a 5 second preview gif.
\code \code
//[...] //[...]
args.append("-filter_complex"); args.append("-filter_complex");
@ -383,7 +390,7 @@ bool CreateImportVideo::createWallpaperGifPreview()
} }
/*! /*!
Starts ffmpeg and tries to covert the given video to a image preview. \brief Starts ffmpeg and tries to covert the given video to a image preview.
Returns \c false if : Returns \c false if :
\list \list
\li Cannot convert the video \li Cannot convert the video
@ -399,16 +406,28 @@ bool CreateImportVideo::createWallpaperImageThumbnailPreview()
args.clear(); args.clear();
args.append("-y"); args.append("-y");
args.append("-stats"); args.append("-stats");
args.append("-ss"); // If the video is shorter than 3 seconds we use the first frame
args.append("00:00:02"); if (!m_smallVideo) {
args.append("-ss");
args.append("00:00:02");
}
args.append("-i"); args.append("-i");
args.append(m_videoPath); args.append(m_videoPath);
args.append("-vframes"); // Order of arguments is important
args.append("1"); if(!m_smallVideo){
args.append("-vframes");
args.append("1");
}
args.append("-q:v"); args.append("-q:v");
args.append("2"); args.append("2");
args.append("-vf"); if(m_smallVideo){
args.append("scale=320:-1"); args.append("-vf");
// Select first frame https://stackoverflow.com/a/44073745/12619313
args.append("select=eq(n\\,0), scale=320:-1");
} else {
args.append("-vf");
args.append("scale=320:-1");
}
args.append(m_exportPath + "/previewThumbnail.jpg"); args.append(m_exportPath + "/previewThumbnail.jpg");
emit processOutput("ffmpeg " + Util::toString(args)); emit processOutput("ffmpeg " + Util::toString(args));
@ -435,6 +454,9 @@ bool CreateImportVideo::createWallpaperImageThumbnailPreview()
return true; return true;
} }
/*!
\brief .
*/
bool CreateImportVideo::createWallpaperImagePreview() bool CreateImportVideo::createWallpaperImagePreview()
{ {
@ -444,14 +466,20 @@ bool CreateImportVideo::createWallpaperImagePreview()
args.clear(); args.clear();
args.append("-y"); args.append("-y");
args.append("-stats"); args.append("-stats");
args.append("-ss"); // If the video is shorter than 3 seconds we use the first frame
args.append("00:00:02"); if (!m_smallVideo) {
args.append("-ss");
args.append("00:00:02");
}
args.append("-i"); args.append("-i");
args.append(m_videoPath); args.append(m_videoPath);
args.append("-vframes");
args.append("1");
args.append("-q:v"); args.append("-q:v");
args.append("2"); args.append("2");
if(m_smallVideo){
args.append("-vf");
// Select first frame https://stackoverflow.com/a/44073745/12619313
args.append("select=eq(n\\,0)");
}
args.append(m_exportPath + "/preview.jpg"); args.append(m_exportPath + "/preview.jpg");
emit processOutput("ffmpeg " + Util::toString(args)); emit processOutput("ffmpeg " + Util::toString(args));
@ -483,7 +511,7 @@ bool CreateImportVideo::createWallpaperImagePreview()
} }
/*! /*!
Starts ffmpeg and tries to covert the given video to a webm video. \brief Starts ffmpeg and tries to covert the given video to a webm video.
\code \code
//[...] //[...]
args.append("-c:v"); args.append("-c:v");
@ -504,9 +532,9 @@ bool CreateImportVideo::createWallpaperImagePreview()
bool CreateImportVideo::createWallpaperVideo(const QString& codec) bool CreateImportVideo::createWallpaperVideo(const QString& codec)
{ {
// if (m_videoPath.endsWith(".webm")) { // if (m_videoPath.endsWith(".webm")) {
// return true; // return true;
// } // }
emit createWallpaperStateChanged(ImportVideoState::ConvertingVideo); emit createWallpaperStateChanged(ImportVideoState::ConvertingVideo);
@ -637,7 +665,7 @@ bool CreateImportVideo::createWallpaperVideo(const QString& codec)
return true; return true;
} }
/*! /*!
Starts ffmpeg and tries to covert the given audio into a seperate mp3. \brief Starts ffmpeg and tries to covert the given audio into a seperate mp3.
\code \code
//[...] //[...]
args.append("mp3"); args.append("mp3");
@ -694,6 +722,9 @@ bool CreateImportVideo::extractWallpaperAudio()
return true; return true;
} }
/*!
\brief .
*/
void CreateImportVideo::waitForFinished(std::shared_ptr<QProcess>& process) void CreateImportVideo::waitForFinished(std::shared_ptr<QProcess>& process)
{ {
while (!process->waitForFinished(100)) //Wake up every 100ms and check if we must exit while (!process->waitForFinished(100)) //Wake up every 100ms and check if we must exit

View File

@ -25,7 +25,7 @@ class CreateImportVideo : public QObject {
Q_PROPERTY(float progress READ progress WRITE setProgress NOTIFY progressChanged) Q_PROPERTY(float progress READ progress WRITE setProgress NOTIFY progressChanged)
public: public:
CreateImportVideo() {} CreateImportVideo() { }
~CreateImportVideo() ~CreateImportVideo()
{ {
qDebug() << "CreateImportVideo"; qDebug() << "CreateImportVideo";
@ -33,19 +33,6 @@ public:
CreateImportVideo(QObject* parent = nullptr); CreateImportVideo(QObject* parent = nullptr);
explicit CreateImportVideo(const QString& videoPath, const QString& exportPath, const QStringList& codecs, QObject* parent = nullptr); explicit CreateImportVideo(const QString& videoPath, const QString& exportPath, const QStringList& codecs, QObject* parent = nullptr);
bool m_skipAudio { false };
float m_progress { 0.0F };
QString m_videoPath;
QString m_exportPath;
QString m_format;
QStringList m_codecs;
int m_numberOfFrames { 0 };
int m_length { 0 };
int m_framerate { 0 };
enum class ImportVideoState { enum class ImportVideoState {
Idle, Idle,
Started, Started,
@ -88,6 +75,22 @@ public:
return m_progress; return m_progress;
} }
bool m_skipAudio { false };
// If the video is < 1s in duration we cannot create a 5s preview
bool m_smallVideo { false };
float m_progress { 0.0F };
QString m_videoPath;
QString m_exportPath;
QString m_format;
QStringList m_codecs;
int m_numberOfFrames { 0 };
int m_length { 0 };
int m_framerate { 0 };
signals: signals:
void createWallpaperStateChanged(CreateImportVideo::ImportVideoState state); void createWallpaperStateChanged(CreateImportVideo::ImportVideoState state);
void processOutput(QString text); void processOutput(QString text);
@ -102,7 +105,7 @@ public slots:
bool createWallpaperVideoPreview(); bool createWallpaperVideoPreview();
bool createWallpaperGifPreview(); bool createWallpaperGifPreview();
bool createWallpaperImagePreview(); bool createWallpaperImagePreview();
bool createWallpaperVideo(const QString &codec); bool createWallpaperVideo(const QString& codec);
bool extractWallpaperAudio(); bool extractWallpaperAudio();
bool createWallpaperImageThumbnailPreview(); bool createWallpaperImageThumbnailPreview();
@ -123,6 +126,8 @@ private:
QString m_ffprobeExecutable; QString m_ffprobeExecutable;
QString m_ffmpegExecutable; QString m_ffmpegExecutable;
}; };
} }
Q_DECLARE_METATYPE(ScreenPlay::CreateImportVideo::ImportVideoState) Q_DECLARE_METATYPE(ScreenPlay::CreateImportVideo::ImportVideoState)

View File

@ -11,6 +11,8 @@ namespace ScreenPlay {
\inmodule ScreenPlay \inmodule ScreenPlay
\brief GlobalVariables. \brief GlobalVariables.
A header only class used only for storing some global variables like localStoragePath.
*/ */
class GlobalVariables : public QObject { class GlobalVariables : public QObject {
@ -29,26 +31,37 @@ public:
setLocalSettingsPath(QUrl { QStandardPaths::writableLocation(QStandardPaths::DataLocation) }); setLocalSettingsPath(QUrl { QStandardPaths::writableLocation(QStandardPaths::DataLocation) });
} }
/*!
\brief Returns the localStoragePath.
*/
QUrl localStoragePath() const QUrl localStoragePath() const
{ {
return m_localStoragePath; return m_localStoragePath;
} }
/*!
\brief Returns the localSettingsPath.
*/
QUrl localSettingsPath() const QUrl localSettingsPath() const
{ {
return m_localSettingsPath; return m_localSettingsPath;
} }
/*!
\brief Returns the wallpaperExecutablePath. This only differes in development builds.
*/
QUrl wallpaperExecutablePath() const QUrl wallpaperExecutablePath() const
{ {
return m_wallpaperExecutablePath; return m_wallpaperExecutablePath;
} }
/*!
\brief Returns the widgetExecutablePath. This only differes in development builds.
*/
QUrl widgetExecutablePath() const QUrl widgetExecutablePath() const
{ {
return m_widgetExecutablePath; return m_widgetExecutablePath;
} }
/*!
\brief Returns the current app version. Not yet used.
*/
QVersionNumber version() const QVersionNumber version() const
{ {
return m_version; return m_version;

View File

@ -11,9 +11,9 @@ namespace ScreenPlay {
*/ */
/*! /*!
Sets the default role type to "All" to display all available content. Needs a given \brief Sets the default role type to "All" to display all available content. Needs a given
\a ilm (InstalledListModel). \a ilm (InstalledListModel).
*/ */
InstalledListFilter::InstalledListFilter(const shared_ptr<InstalledListModel>& ilm) InstalledListFilter::InstalledListFilter(const shared_ptr<InstalledListModel>& ilm)
: QSortFilterProxyModel() : QSortFilterProxyModel()
, m_ilm(ilm) , m_ilm(ilm)
@ -24,14 +24,14 @@ InstalledListFilter::InstalledListFilter(const shared_ptr<InstalledListModel>& i
} }
/*! /*!
Set the filter proxy to sort by the given \a type. This can be \brief Set the filter proxy to sort by the given \a type. This can be:
\list \list
\li All \li All
\li Videos \li Videos
\li Widgets \li Widgets
\li Scenes \li Scenes
\endlist \endlist
*/ */
void InstalledListFilter::sortByRoleType(QString type) void InstalledListFilter::sortByRoleType(QString type)
{ {
if (type == "All") { if (type == "All") {
@ -52,9 +52,9 @@ void InstalledListFilter::sortByRoleType(QString type)
} }
/*! /*!
Invoked when the user uses the quicksearch at the top right of the installed page. \brief Invoked when the user uses the quicksearch at the top right of the installed page.
Uses the \a name to sort by name. This name is saved in the project.json title. Uses the \a name to sort by name. This name is saved in the project.json title.
*/ */
void InstalledListFilter::sortByName(QString name) void InstalledListFilter::sortByName(QString name)
{ {
setFilterRole(InstalledListModel::InstalledRole::TitleRole); setFilterRole(InstalledListModel::InstalledRole::TitleRole);
@ -64,8 +64,8 @@ void InstalledListFilter::sortByName(QString name)
} }
/*! /*!
Resets the filter and sorts by title. \brief Resets the filter and sorts by title.
*/ */
void InstalledListFilter::resetFilter() void InstalledListFilter::resetFilter()
{ {
setFilterRole(InstalledListModel::InstalledRole::TitleRole); setFilterRole(InstalledListModel::InstalledRole::TitleRole);

View File

@ -13,7 +13,7 @@ namespace ScreenPlay {
*/ */
/*! /*!
Constructor \brief Constructor.
*/ */
InstalledListModel::InstalledListModel( InstalledListModel::InstalledListModel(
const shared_ptr<GlobalVariables>& globalVariables, const shared_ptr<GlobalVariables>& globalVariables,
@ -26,7 +26,7 @@ InstalledListModel::InstalledListModel(
} }
/*! /*!
\brief Init function that needs to be called after the constructor because we need the GlobalVariables to finish loading.
*/ */
void InstalledListModel::init() void InstalledListModel::init()
{ {
@ -40,7 +40,7 @@ void InstalledListModel::init()
} }
/*! /*!
\brief Returns the length of the installed items.
*/ */
int InstalledListModel::rowCount(const QModelIndex& parent) const int InstalledListModel::rowCount(const QModelIndex& parent) const
{ {
@ -51,7 +51,7 @@ int InstalledListModel::rowCount(const QModelIndex& parent) const
} }
/*! /*!
\brief Retruns the data member of the ProjectFile.
*/ */
QVariant InstalledListModel::data(const QModelIndex& index, int role) const QVariant InstalledListModel::data(const QModelIndex& index, int role) const
{ {
@ -88,7 +88,7 @@ QVariant InstalledListModel::data(const QModelIndex& index, int role) const
} }
/*! /*!
\brief Returns the variable names for QML.
*/ */
QHash<int, QByteArray> InstalledListModel::roleNames() const QHash<int, QByteArray> InstalledListModel::roleNames() const
{ {

View File

@ -18,7 +18,7 @@ namespace ScreenPlay {
*/ */
/*! /*!
Constructor \brief Constructor.
*/ */
MonitorListModel::MonitorListModel(QObject* parent) MonitorListModel::MonitorListModel(QObject* parent)
: QAbstractListModel(parent) : QAbstractListModel(parent)
@ -30,6 +30,9 @@ MonitorListModel::MonitorListModel(QObject* parent)
connect(guiAppInst, &QGuiApplication::screenRemoved, this, &MonitorListModel::screenRemoved); connect(guiAppInst, &QGuiApplication::screenRemoved, this, &MonitorListModel::screenRemoved);
} }
/*!
\brief Returns the variable names for QML.
*/
QHash<int, QByteArray> MonitorListModel::roleNames() const QHash<int, QByteArray> MonitorListModel::roleNames() const
{ {
static const QHash<int, QByteArray> roles { static const QHash<int, QByteArray> roles {
@ -48,6 +51,10 @@ QHash<int, QByteArray> MonitorListModel::roleNames() const
return roles; return roles;
} }
/*!
\brief Returns the amount of active monitors.
*/
int MonitorListModel::rowCount(const QModelIndex& parent) const int MonitorListModel::rowCount(const QModelIndex& parent) const
{ {
if (parent.isValid()) if (parent.isValid())
@ -56,6 +63,9 @@ int MonitorListModel::rowCount(const QModelIndex& parent) const
return m_monitorList.count(); return m_monitorList.count();
} }
/*!
\brief Retruns the data member of the Monitor.
*/
QVariant MonitorListModel::data(const QModelIndex& index, int role) const QVariant MonitorListModel::data(const QModelIndex& index, int role) const
{ {
if (!index.isValid()) if (!index.isValid())
@ -113,6 +123,9 @@ QVariant MonitorListModel::data(const QModelIndex& index, int role) const
return QVariant(); return QVariant();
} }
/*!
\brief Reloads the listmodel of monitors.
*/
void MonitorListModel::loadMonitors() void MonitorListModel::loadMonitors()
{ {
int offsetX = 0; int offsetX = 0;
@ -148,6 +161,9 @@ void MonitorListModel::loadMonitors()
emit monitorReloadCompleted(); emit monitorReloadCompleted();
} }
/*!
\brief Clears the listmodel.
*/
void MonitorListModel::clearActiveWallpaper() void MonitorListModel::clearActiveWallpaper()
{ {
int i { 0 }; int i { 0 };
@ -163,6 +179,9 @@ void MonitorListModel::clearActiveWallpaper()
} }
} }
/*!
\brief Removes the preview image and appID inside an monitor item.
*/
void MonitorListModel::closeWallpaper(const QString& appID) void MonitorListModel::closeWallpaper(const QString& appID)
{ {
int i {}; int i {};
@ -182,6 +201,9 @@ void MonitorListModel::closeWallpaper(const QString& appID)
} }
} }
/*!
\brief Sets the previewImage and appID for a list item.
*/
void MonitorListModel::setWallpaperActiveMonitor(const std::shared_ptr<ScreenPlayWallpaper>& wallpaper, const QVector<int> monitors) void MonitorListModel::setWallpaperActiveMonitor(const std::shared_ptr<ScreenPlayWallpaper>& wallpaper, const QVector<int> monitors)
{ {
@ -197,6 +219,9 @@ void MonitorListModel::setWallpaperActiveMonitor(const std::shared_ptr<ScreenPla
} }
} }
/*!
\brief If successful this function returns an AppID. Otherwhise std::nullopt.
*/
std::optional<QString> MonitorListModel::getAppIDByMonitorIndex(const int index) const std::optional<QString> MonitorListModel::getAppIDByMonitorIndex(const int index) const
{ {
for (auto& monitor : m_monitorList) { for (auto& monitor : m_monitorList) {
@ -207,6 +232,9 @@ std::optional<QString> MonitorListModel::getAppIDByMonitorIndex(const int index)
return std::nullopt; return std::nullopt;
} }
/*!
\brief Removes all items and loads them vida loadMonitors() again.
*/
void MonitorListModel::reset() void MonitorListModel::reset()
{ {
beginResetModel(); beginResetModel();

View File

@ -12,7 +12,7 @@ namespace ScreenPlay {
*/ */
/*! /*!
Constructor \brief Constructor-.
*/ */
ScreenPlayManager::ScreenPlayManager( ScreenPlayManager::ScreenPlayManager(
const shared_ptr<GlobalVariables>& globalVariables, const shared_ptr<GlobalVariables>& globalVariables,
@ -32,11 +32,11 @@ ScreenPlayManager::ScreenPlayManager(
} }
/*! /*!
Creates a wallpaper with a given \a monitorIndex list, \a a absoluteStoragePath folder, \brief Creates a wallpaper with a given \a monitorIndex list, \a a absoluteStoragePath folder,
a \a previewImage (relative path to the absoluteStoragePath), a default \a volume, a \a previewImage (relative path to the absoluteStoragePath), a default \a volume,
a \a fillMode, a \a type (htmlWallpaper, qmlWallpaper etc.), a \a saveToProfilesConfigFile bool only set to flase a \a fillMode, a \a type (htmlWallpaper, qmlWallpaper etc.), a \a saveToProfilesConfigFile bool only set to flase
if we call the method when using via the settings on startup to skip a unnecessary save. if we call the method when using via the settings on startup to skip a unnecessary save.
*/ */
void ScreenPlayManager::createWallpaper( void ScreenPlayManager::createWallpaper(
QVector<int> monitorIndex, QVector<int> monitorIndex,
const QString& absoluteStoragePath, const QString& absoluteStoragePath,
@ -79,7 +79,9 @@ void ScreenPlayManager::createWallpaper(
for (auto& wallpaperIterator : m_screenPlayWallpapers) { for (auto& wallpaperIterator : m_screenPlayWallpapers) {
if (wallpaperIterator->screenNumber().length() == 1) { if (wallpaperIterator->screenNumber().length() == 1) {
if (monitors.at(0) == wallpaperIterator->screenNumber().at(0)) { if (monitors.at(0) == wallpaperIterator->screenNumber().at(0)) {
removeWallpaperAt(i); if(!removeWallpaperAt(i)){
qWarning() << "Could not remove wallpaper at index " << i;
}
} }
} }
i++; i++;
@ -101,12 +103,23 @@ void ScreenPlayManager::createWallpaper(
settings.insert("absolutePath", path); settings.insert("absolutePath", path);
saveWallpaperProfile("default", settings); saveWallpaperProfile("default", settings);
return;
} }
if (saveToProfilesConfigFile && type == "qmlWallpaper") {
QJsonObject settings;
settings.insert("monitors", monitors);
settings.insert("type", type);
settings.insert("previewImage", previewImage);
settings.insert("absolutePath", path);
saveWallpaperProfile("default", settings);
}
} }
/*! /*!
Creates a ScreenPlayWidget object via a \a absoluteStoragePath and a \a preview image (relative path). \brief Creates a ScreenPlayWidget object via a \a absoluteStoragePath and a \a preview image (relative path).
*/ */
void ScreenPlayManager::createWidget(const QUrl& absoluteStoragePath, const QString& previewImage, const QString& type) void ScreenPlayManager::createWidget(const QUrl& absoluteStoragePath, const QString& previewImage, const QString& type)
{ {
if (m_telemetry) { if (m_telemetry) {
@ -125,7 +138,7 @@ void ScreenPlayManager::createWidget(const QUrl& absoluteStoragePath, const QStr
} }
/*! /*!
Removes all wallpaper entries in the profiles.json. This method will likely be removed \brief Removes all wallpaper entries in the profiles.json. This method will likely be removed
when using nlohmann/json in the future. when using nlohmann/json in the future.
*/ */
void ScreenPlayManager::removeAllWallpapers() void ScreenPlayManager::removeAllWallpapers()
@ -138,7 +151,7 @@ void ScreenPlayManager::removeAllWallpapers()
m_screenPlayWallpapers.clear(); m_screenPlayWallpapers.clear();
m_monitorListModel->clearActiveWallpaper(); m_monitorListModel->clearActiveWallpaper();
QString absoluteProfilesFilePath = m_globalVariables->localSettingsPath().toLocalFile() + "/profiles.json"; QString absoluteProfilesFilePath = m_globalVariables->localSettingsPath().toString() + "/profiles.json";
auto configOptional = Util::openJsonFileToObject(absoluteProfilesFilePath); auto configOptional = Util::openJsonFileToObject(absoluteProfilesFilePath);
if (!configOptional) { if (!configOptional) {
@ -164,9 +177,14 @@ void ScreenPlayManager::removeAllWallpapers()
Util::writeJsonObjectToFile(absoluteProfilesFilePath, newConfig); Util::writeJsonObjectToFile(absoluteProfilesFilePath, newConfig);
setActiveWallpaperCounter(0); setActiveWallpaperCounter(0);
} else {
qWarning() << "Trying to remove all wallpapers while m_screenPlayWallpapers is not empty. Count: "<< m_screenPlayWallpapers.size();
} }
} }
/*!
\brief Removes all widgets and resets the activeWidgetCounter to 0.
*/
void ScreenPlayManager::removeAllWidgets() void ScreenPlayManager::removeAllWidgets()
{ {
if (!m_screenPlayWidgets.empty()) { if (!m_screenPlayWidgets.empty()) {
@ -179,7 +197,7 @@ void ScreenPlayManager::removeAllWidgets()
} }
/*! /*!
Removes a Wallpaper at the given monitor \a at (index). Internally searches for a appID at the \brief Removes a Wallpaper at the given monitor \a at (index). Internally searches for a appID at the
given monitor index and then closes the sdk connection, removes the entries in the given monitor index and then closes the sdk connection, removes the entries in the
monitor list model and decreases the active wallpaper counter property of ScreenPlayManager. monitor list model and decreases the active wallpaper counter property of ScreenPlayManager.
*/ */
@ -199,12 +217,11 @@ bool ScreenPlayManager::removeWallpaperAt(int at)
} }
/*! /*!
Request a spesific json profile to display in the active wallpaper popup on the right. \brief Request a spesific json profile to display in the active wallpaper popup on the right.
*/
*/
void ScreenPlayManager::requestProjectSettingsListModelAt(const int index) void ScreenPlayManager::requestProjectSettingsListModelAt(const int index)
{ {
for (const shared_ptr<ScreenPlayWallpaper>& uPtrWallpaper : m_screenPlayWallpapers) { for (const shared_ptr<ScreenPlayWallpaper>& uPtrWallpaper : qAsConst(m_screenPlayWallpapers)) {
if (!uPtrWallpaper->screenNumber().empty() && uPtrWallpaper->screenNumber()[0] == index) { if (!uPtrWallpaper->screenNumber().empty() && uPtrWallpaper->screenNumber()[0] == index) {
emit projectSettingsListModelFound( emit projectSettingsListModelFound(
uPtrWallpaper->projectSettingsListModel().get(), uPtrWallpaper->projectSettingsListModel().get(),
@ -216,8 +233,8 @@ void ScreenPlayManager::requestProjectSettingsListModelAt(const int index)
} }
/*! /*!
Set a wallpaper \a value at a given \a index and \a key. \brief Set a wallpaper \a value at a given \a index and \a key.
*/ */
void ScreenPlayManager::setWallpaperValue(const int index, const QString& key, const QString& value) void ScreenPlayManager::setWallpaperValue(const int index, const QString& key, const QString& value)
{ {
if (auto appID = m_monitorListModel->getAppIDByMonitorIndex(index)) { if (auto appID = m_monitorListModel->getAppIDByMonitorIndex(index)) {
@ -230,18 +247,18 @@ void ScreenPlayManager::setWallpaperValue(const int index, const QString& key, c
} }
/*! /*!
Convenient function to set a \a value at a given \a index and \a key for all wallaper. For exmaple used to mute all wallpaper. \brief Convenient function to set a \a value at a given \a index and \a key for all wallaper. For exmaple used to mute all wallpaper.
*/ */
void ScreenPlayManager::setAllWallpaperValue(const QString& key, const QString& value) void ScreenPlayManager::setAllWallpaperValue(const QString& key, const QString& value)
{ {
for (const shared_ptr<ScreenPlayWallpaper>& uPtrWallpaper : m_screenPlayWallpapers) { for (const shared_ptr<ScreenPlayWallpaper>& uPtrWallpaper : qAsConst(m_screenPlayWallpapers)) {
m_sdkconnector->setWallpaperValue(uPtrWallpaper->appID(), key, value); m_sdkconnector->setWallpaperValue(uPtrWallpaper->appID(), key, value);
} }
} }
/*! /*!
Returns \c a ScreenPlayWallpaper if successful, otherwhise \c std::nullopt. \brief Returns \c a ScreenPlayWallpaper if successful, otherwhise \c std::nullopt.
*/ */
std::optional<shared_ptr<ScreenPlayWallpaper>> ScreenPlayManager::getWallpaperByAppID(const QString& appID) std::optional<shared_ptr<ScreenPlayWallpaper>> ScreenPlayManager::getWallpaperByAppID(const QString& appID)
{ {
for (auto& wallpaper : m_screenPlayWallpapers) { for (auto& wallpaper : m_screenPlayWallpapers) {
@ -253,15 +270,15 @@ std::optional<shared_ptr<ScreenPlayWallpaper>> ScreenPlayManager::getWallpaperBy
} }
/*! /*!
Saves a given wallpaper \a newProfileObject to a \a profileName. We ignore the profileName argument \brief Saves a given wallpaper \a newProfileObject to a \a profileName. We ignore the profileName argument
because we currently only support one profile. Returns \c true if successfuly saved to profiles.json, otherwise \c false. because we currently only support one profile. Returns \c true if successfuly saved to profiles.json, otherwise \c false.
*/ */
bool ScreenPlayManager::saveWallpaperProfile(const QString& profileName, const QJsonObject& newProfileObject) bool ScreenPlayManager::saveWallpaperProfile(const QString& profileName, const QJsonObject& newProfileObject)
{ {
// Remove when implementing profiles // Remove when implementing profiles
Q_UNUSED(profileName) Q_UNUSED(profileName)
QString absoluteProfilesFilePath = m_globalVariables->localSettingsPath().toLocalFile() + "/profiles.json"; QString absoluteProfilesFilePath = m_globalVariables->localSettingsPath().toString() + "/profiles.json";
auto configOptional = Util::openJsonFileToObject(absoluteProfilesFilePath); auto configOptional = Util::openJsonFileToObject(absoluteProfilesFilePath);
if (!configOptional) { if (!configOptional) {
@ -308,15 +325,15 @@ bool ScreenPlayManager::saveWallpaperProfile(const QString& profileName, const Q
} }
/*! /*!
Loads all wallpaper from profiles.json when the version number matches and starts the available wallpaper \brief Loads all wallpaper from profiles.json when the version number matches and starts the available wallpaper
*/ */
void ScreenPlayManager::loadWallpaperProfiles() void ScreenPlayManager::loadWallpaperProfiles()
{ {
auto configObj = Util::openJsonFileToObject(m_globalVariables->localSettingsPath().toLocalFile() + "/profiles.json"); auto configObj = Util::openJsonFileToObject(m_globalVariables->localSettingsPath().toString() + "/profiles.json");
if (!configObj) { if (!configObj) {
qWarning() << "Could not load active profiles at path: " << m_globalVariables->localSettingsPath().toLocalFile() + "/profiles.json"; qWarning() << "Could not load active profiles at path: " << m_globalVariables->localSettingsPath().toString() + "/profiles.json";
return; return;
} }

View File

@ -70,7 +70,10 @@ public slots:
const QString& fillMode, const QString& fillMode,
const QString& type, const bool saveToProfilesConfigFile = true); const QString& type, const bool saveToProfilesConfigFile = true);
void createWidget(const QUrl& absoluteStoragePath, const QString& previewImage, const QString& type); void createWidget(
const QUrl& absoluteStoragePath,
const QString& previewImage,
const QString& type);
void removeAllWallpapers(); void removeAllWallpapers();
void removeAllWidgets(); void removeAllWidgets();

View File

@ -11,7 +11,7 @@ namespace ScreenPlay {
*/ */
/*! /*!
Constructor for video Wallpaper. \brief Constructor for video Wallpaper.
*/ */
ScreenPlayWallpaper::ScreenPlayWallpaper( ScreenPlayWallpaper::ScreenPlayWallpaper(
const QVector<int>& screenNumber, const QVector<int>& screenNumber,
@ -39,7 +39,7 @@ ScreenPlayWallpaper::ScreenPlayWallpaper(
QString tmpScreenNumber; QString tmpScreenNumber;
if (m_screenNumber.length() > 1) { if (m_screenNumber.length() > 1) {
for (const int number : m_screenNumber) { for (const int number : qAsConst(m_screenNumber)) {
// IMPORTANT: NO TRAILING COMMA! // IMPORTANT: NO TRAILING COMMA!
if (number == m_screenNumber.back()) { if (number == m_screenNumber.back()) {
tmpScreenNumber += QString::number(number); tmpScreenNumber += QString::number(number);
@ -68,13 +68,18 @@ ScreenPlayWallpaper::ScreenPlayWallpaper(
m_process.startDetached(); m_process.startDetached();
} }
/*!
\brief Prints the exit code if != 0.
*/
void ScreenPlayWallpaper::processExit(int exitCode, QProcess::ExitStatus exitStatus) void ScreenPlayWallpaper::processExit(int exitCode, QProcess::ExitStatus exitStatus)
{ {
Q_UNUSED(exitStatus) Q_UNUSED(exitStatus)
if (exitCode != 0) if (exitCode != 0)
qDebug() << "WARNING EXIT CODE: " << exitCode; qDebug() << "WARNING EXIT CODE: " << exitCode;
} }
/*!
\brief Prints the exit code error.
*/
void ScreenPlayWallpaper::processError(QProcess::ProcessError error) void ScreenPlayWallpaper::processError(QProcess::ProcessError error)
{ {
qDebug() << "EX: " << error; qDebug() << "EX: " << error;

View File

@ -11,8 +11,7 @@ namespace ScreenPlay {
*/ */
/*! /*!
\brief Constructor.
Constructor
*/ */
ScreenPlayWidget::ScreenPlayWidget( ScreenPlayWidget::ScreenPlayWidget(
const QString& appID, const QString& appID,

View File

@ -13,35 +13,62 @@ namespace ScreenPlay {
*/ */
/*! /*!
Starts the QLocalServer with the pipename ScreenPlay. \brief Starts the QLocalServer with the pipename ScreenPlay.
*/ */
SDKConnector::SDKConnector(QObject* parent) SDKConnector::SDKConnector(QObject* parent)
: QObject(parent) : QObject(parent)
, m_server { make_unique<QLocalServer>() } , m_server { make_unique<QLocalServer>() }
{ {
if (isAnotherScreenPlayInstanceRunning()) {
m_isAnotherScreenPlayInstanceRunning = true;
return;
}
connect(m_server.get(), &QLocalServer::newConnection, this, &SDKConnector::newConnection); connect(m_server.get(), &QLocalServer::newConnection, this, &SDKConnector::newConnection);
m_server->setSocketOptions(QLocalServer::WorldAccessOption);
if (!m_server->listen("ScreenPlay")) { if (!m_server->listen("ScreenPlay")) {
qCritical("Could not open Local Socket with the name ScreenPlay. Usually this means another ScreenPlay instance is running!"); qCritical("Could not open Local Socket with the name ScreenPlay!");
} }
} }
void SDKConnector::readyRead() /*!
\brief Checks if another ScreenPlay instance is running by trying to connect to a pipe
with the name ScreenPlay.
If successful we send a raise command and quit via m_isAnotherScreenPlayInstanceRunning = true.
*/
bool SDKConnector::isAnotherScreenPlayInstanceRunning()
{ {
QLocalSocket socket;
socket.connectToServer("ScreenPlay");
if (!socket.isOpen()) {
socket.close();
return false;
}
qInfo("Another ScreenPlay app is already running!");
QByteArray msg = "command=requestRaise";
socket.write(msg);
socket.waitForBytesWritten(500);
socket.close();
return true;
} }
/*! /*!
Appends a new SDKConnection object shared_ptr to the m_clients list. \brief Appends a new SDKConnection object shared_ptr to the m_clients list.
*/ */
void SDKConnector::newConnection() void SDKConnector::newConnection()
{ {
auto connection = make_shared<SDKConnection>(m_server->nextPendingConnection()); auto connection = make_shared<SDKConnection>(m_server->nextPendingConnection());
QObject::connect(connection.get(),&SDKConnection::requestDecreaseWidgetCount,this,&SDKConnector::requestDecreaseWidgetCount); // Because user can close widgets by pressing x the widgets must send us the event
QObject::connect(connection.get(), &SDKConnection::requestDecreaseWidgetCount, this, &SDKConnector::requestDecreaseWidgetCount);
QObject::connect(connection.get(), &SDKConnection::requestRaise, this, &SDKConnector::requestRaise);
m_clients.append(connection); m_clients.append(connection);
} }
/*! /*!
Closes all m_clients connections and clears the QVector. \brief Closes all m_clients connections and clears the QVector.
*/ */
void SDKConnector::closeAllConnections() void SDKConnector::closeAllConnections()
{ {
@ -52,7 +79,7 @@ void SDKConnector::closeAllConnections()
} }
/*! /*!
Closes all wallpaper connection with the following type: \brief Closes all wallpaper connection with the following type:
\list \list
\li videoWallpaper \li videoWallpaper
\li qmlWallpaper \li qmlWallpaper
@ -69,14 +96,17 @@ void SDKConnector::closeAllWallpapers()
"godotWallpaper" "godotWallpaper"
}; };
for (auto& client : m_clients) { closeConntectionByType(types);
if (types.contains(client->type())) {
client->close();
m_clients.removeOne(client);
}
}
} }
/*!
\brief Closes all widgets connection with the following type:
\list
\li qmlWidget
\li htmlWidget
\li standaloneWidget
\endlist
*/
void SDKConnector::closeAllWidgets() void SDKConnector::closeAllWidgets()
{ {
QStringList types { QStringList types {
@ -85,8 +115,16 @@ void SDKConnector::closeAllWidgets()
"standaloneWidget" "standaloneWidget"
}; };
closeConntectionByType(types);
}
/*!
\brief Closes a connection by type. Used only by closeAllWidgets() and closeAllWallpapers()
*/
void SDKConnector::closeConntectionByType(const QStringList& list)
{
for (auto& client : m_clients) { for (auto& client : m_clients) {
if (types.contains(client->type())) { if (list.contains(client->type())) {
client->close(); client->close();
m_clients.removeOne(client); m_clients.removeOne(client);
} }
@ -94,12 +132,12 @@ void SDKConnector::closeAllWidgets()
} }
/*! /*!
Closes a wallpaper at the given \a index. The native monitor index is used here. \brief Closes a wallpaper at the given \a index. The native monitor index is used here.
On Windows the monitor 0 is the main display. On Windows the monitor 0 is the main display.
*/ */
void SDKConnector::closeWallpapersAt(int at) void SDKConnector::closeWallpapersAt(int at)
{ {
for (const shared_ptr<SDKConnection>& refSDKConnection : m_clients) { for (const shared_ptr<SDKConnection>& refSDKConnection : qAsConst(m_clients)) {
refSDKConnection->close(); refSDKConnection->close();
if (!refSDKConnection->monitor().empty()) { if (!refSDKConnection->monitor().empty()) {
if (refSDKConnection->monitor().at(0) == at) { if (refSDKConnection->monitor().at(0) == at) {
@ -115,7 +153,7 @@ void SDKConnector::closeWallpapersAt(int at)
} }
/*! /*!
Closes a wallpaper by the given \a appID. \brief Closes a wallpaper by the given \a appID.
*/ */
void SDKConnector::closeWallpaper(const QString& appID) void SDKConnector::closeWallpaper(const QString& appID)
{ {
@ -129,7 +167,7 @@ void SDKConnector::closeWallpaper(const QString& appID)
} }
/*! /*!
Sets a given \a value to a given \a key. The \a appID is used to identify the receiver socket. \brief Sets a given \a value to a given \a key. The \a appID is used to identify the receiver socket.
*/ */
void SDKConnector::setWallpaperValue(QString appID, QString key, QString value) void SDKConnector::setWallpaperValue(QString appID, QString key, QString value)
{ {
@ -146,22 +184,4 @@ void SDKConnector::setWallpaperValue(QString appID, QString key, QString value)
} }
} }
/*!
Sets a given \a value to a given \a key. The \a appID is used to identify the receiver socket.
*/
void SDKConnector::setSceneValue(QString appID, QString key, QString value)
{
for (int i = 0; i < m_clients.count(); ++i) {
if (m_clients.at(i)->appID() == appID) {
QJsonObject obj;
obj.insert("type", QJsonValue("qmlScene"));
obj.insert(key, QJsonValue(value));
QByteArray send = QJsonDocument(obj).toJson();
m_clients.at(i)->socket()->write(send);
m_clients.at(i)->socket()->waitForBytesWritten();
}
}
}
} }

View File

@ -1,5 +1,6 @@
#pragma once #pragma once
#include <QApplication>
#include <QJsonDocument> #include <QJsonDocument>
#include <QJsonObject> #include <QJsonObject>
#include <QJsonValue> #include <QJsonValue>
@ -31,12 +32,15 @@ class SDKConnector : public QObject {
public: public:
explicit SDKConnector(QObject* parent = nullptr); explicit SDKConnector(QObject* parent = nullptr);
bool m_isAnotherScreenPlayInstanceRunning { false };
signals: signals:
void requestDecreaseWidgetCount(); void requestDecreaseWidgetCount();
void requestRaise();
public slots: public slots:
void readyRead();
void newConnection(); void newConnection();
void closeConntectionByType(const QStringList& list);
void closeAllConnections(); void closeAllConnections();
void closeAllWallpapers(); void closeAllWallpapers();
void closeAllWidgets(); void closeAllWidgets();
@ -44,11 +48,11 @@ public slots:
void closeWallpapersAt(int at); void closeWallpapersAt(int at);
void closeWallpaper(const QString& appID); void closeWallpaper(const QString& appID);
void setWallpaperValue(QString appID, QString key, QString value); void setWallpaperValue(QString appID, QString key, QString value);
void setSceneValue(QString appID, QString key, QString value);
private: private:
unique_ptr<QLocalServer> m_server; unique_ptr<QLocalServer> m_server;
QVector<shared_ptr<SDKConnection>> m_clients; QVector<shared_ptr<SDKConnection>> m_clients;
bool isAnotherScreenPlayInstanceRunning();
}; };
class SDKConnection : public QObject { class SDKConnection : public QObject {
@ -105,6 +109,7 @@ signals:
void monitorChanged(QVector<int> monitor); void monitorChanged(QVector<int> monitor);
void typeChanged(QString type); void typeChanged(QString type);
void requestDecreaseWidgetCount(); void requestDecreaseWidgetCount();
void requestRaise();
public slots: public slots:
void readyRead() void readyRead()
@ -129,7 +134,7 @@ public slots:
"htmlWidget", "htmlWidget",
"standaloneWidget" "standaloneWidget"
}; };
for (QString type : types) { for (const QString& type : types) {
if (msg.contains(type)) { if (msg.contains(type)) {
m_type = type; m_type = type;
} }
@ -137,6 +142,12 @@ public slots:
qInfo() << "###### Wallpaper created:" qInfo() << "###### Wallpaper created:"
<< "\t AppID:" << m_appID << "\t type: " << m_type; << "\t AppID:" << m_appID << "\t type: " << m_type;
} else if(msg.startsWith("command=")){
msg.remove("command=");
if(msg == "requestRaise") {
qInfo() << "Another ScreenPlay instance reuqested this one to raise!";
emit requestRaise();
}
} else { } else {
qInfo() << "### Message from: " << m_appID << ": " << msg; qInfo() << "### Message from: " << m_appID << ": " << msg;
} }
@ -150,7 +161,8 @@ public slots:
qDebug() << "### Destroy APPID:\t " << m_appID << " State: " << m_socket->state(); qDebug() << "### Destroy APPID:\t " << m_appID << " State: " << m_socket->state();
} }
if(m_type.contains("widget",Qt::CaseInsensitive)){
if (m_type.contains("widget", Qt::CaseInsensitive)) {
emit requestDecreaseWidgetCount(); emit requestDecreaseWidgetCount();
} }
} }

View File

@ -21,11 +21,10 @@ namespace ScreenPlay {
*/ */
/*! /*!
Constructor and sets up: \brief Constructor and sets up:
\list 1 \list 1
\li Sets the git build hash via ScreenPlay.pro c++ define \li Sets the git build hash via ScreenPlay.pro c++ define
\li Checks the langauge via settings or system and available ones and installes a translator. \li Checks the langauge via settings or system and available ones and installes a translator.
\li Checks the paths for config folders in appdata
\li Checks the AbsoluteStoragePath. \li Checks the AbsoluteStoragePath.
\li Checks regisitry for steam plugin settings \li Checks regisitry for steam plugin settings
\li Parses autostart, anonymousTelemetry, highPriorityStart \li Parses autostart, anonymousTelemetry, highPriorityStart
@ -42,35 +41,38 @@ Settings::Settings(const shared_ptr<GlobalVariables>& globalVariables,
qRegisterMetaType<Settings::Language>("Settings::Language"); qRegisterMetaType<Settings::Language>("Settings::Language");
qmlRegisterUncreatableType<Settings>("Settings", 1, 0, "Settings", "Error only for enums"); qmlRegisterUncreatableType<Settings>("Settings", 1, 0, "Settings", "Error only for enums");
{ if (!m_qSettings.contains("Autostart")) {
if (!m_qSettings.contains("Autostart")) {
#ifdef Q_OS_WIN #ifdef Q_OS_WIN
QSettings settings("HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", QSettings::NativeFormat); QSettings settings("HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", QSettings::NativeFormat);
if (!m_qSettings.value("Autostart").toBool()) { if (!m_qSettings.value("Autostart").toBool()) {
if (!settings.contains("ScreenPlay")) { if (!settings.contains("ScreenPlay")) {
}
} }
settings.setValue("ScreenPlay", QDir::toNativeSeparators(QCoreApplication::applicationFilePath()) + " -silent");
settings.sync();
#endif
m_qSettings.setValue("Autostart", true);
m_qSettings.sync();
} else {
setAutostart(m_qSettings.value("Autostart", true).toBool());
} }
settings.setValue("ScreenPlay", QDir::toNativeSeparators(QCoreApplication::applicationFilePath()) + " -silent");
settings.sync();
#endif
m_qSettings.setValue("Autostart", true);
m_qSettings.sync();
} else {
setAutostart(m_qSettings.value("Autostart", true).toBool());
} }
setCheckWallpaperVisible(m_qSettings.value("CheckWallpaperVisible", true).toBool()); setCheckWallpaperVisible(m_qSettings.value("CheckWallpaperVisible", false).toBool());
setHighPriorityStart(m_qSettings.value("ScreenPlayExecutable", false).toBool()); setHighPriorityStart(m_qSettings.value("ScreenPlayExecutable", false).toBool());
setVideoFillMode(SettingsSetQStringToEnum<FillMode>("VideoFillMode", FillMode::Fill, m_qSettings)); if (m_qSettings.contains("VideoFillMode")) {
setLanguage(SettingsSetQStringToEnum<Language>("Language", Language::En, m_qSettings)); auto value = m_qSettings.value("VideoFillMode").toString();
setVideoFillMode(QStringToEnum<FillMode>(value, FillMode::Cover));
} else {
setVideoFillMode(FillMode::Cover);
}
setAnonymousTelemetry(m_qSettings.value("AnonymousTelemetry", true).toBool()); setAnonymousTelemetry(m_qSettings.value("AnonymousTelemetry", true).toBool());
// Wallpaper and Widgets config // Wallpaper and Widgets config
QFile profilesFile(QStandardPaths::writableLocation(QStandardPaths::DataLocation) + "/profiles.json"); QFile profilesFile(m_globalVariables->localSettingsPath().toString() + "/profiles.json");
if (!profilesFile.exists()) { if (!profilesFile.exists()) {
qInfo("No profiles.json found, creating default settings"); qInfo("No profiles.json found, creating default profiles.json");
qDebug() << profilesFile;
writeJsonFileFromResource("profiles"); writeJsonFileFromResource("profiles");
} }
@ -109,11 +111,10 @@ Settings::Settings(const shared_ptr<GlobalVariables>& globalVariables,
setupWidgetAndWindowPaths(); setupWidgetAndWindowPaths();
setGitBuildHash(GIT_VERSION); setGitBuildHash(GIT_VERSION);
setupLanguage();
} }
/*! /*!
Writes the default JsonFile from the resources and the given \a filename. Currently we have two default json files: \brief Writes the default JsonFile from the resources and the given \a filename. Currently we have two default json files:
\list \list
\li profiles.json \li profiles.json
\li settings.json \li settings.json
@ -121,7 +122,7 @@ Settings::Settings(const shared_ptr<GlobalVariables>& globalVariables,
*/ */
void Settings::writeJsonFileFromResource(const QString& filename) void Settings::writeJsonFileFromResource(const QString& filename)
{ {
QFile file(m_globalVariables->localSettingsPath().toLocalFile() + "/" + filename + ".json"); QFile file(m_globalVariables->localSettingsPath().toString() + "/" + filename + ".json");
QFile defaultSettings(":/" + filename + ".json"); QFile defaultSettings(":/" + filename + ".json");
file.open(QIODevice::WriteOnly | QIODevice::Text); file.open(QIODevice::WriteOnly | QIODevice::Text);
@ -137,7 +138,7 @@ void Settings::writeJsonFileFromResource(const QString& filename)
} }
/*! /*!
To have a better developer experience we check if we use a debug version. Then we assume \brief To have a better developer experience we check if we use a debug version. Then we assume
That the paths are the default QtCreator paths and set the widgets and wallpaper executable That the paths are the default QtCreator paths and set the widgets and wallpaper executable
paths accordingly. paths accordingly.
*/ */
@ -195,7 +196,7 @@ void Settings::setupWidgetAndWindowPaths()
} }
/*! /*!
When no default language is set in the registry we check the system set language. If there is no \brief When no default language is set in the registry we check the system set language. If there is no
matching translation is available we set it to english. This function gets called from the UI when matching translation is available we set it to english. This function gets called from the UI when
the user manually changes the language. the user manually changes the language.
*/ */
@ -209,31 +210,57 @@ void Settings::restoreDefault(const QString& appConfigLocation, const QString& s
writeJsonFileFromResource(settingsFileType); writeJsonFileFromResource(settingsFileType);
} }
/*!
\brief Checks if there is already a saved language. If not we try to use the system langauge.
If we do not support the system language we use english.
*/
void Settings::setupLanguage() void Settings::setupLanguage()
{ {
auto* app = static_cast<QGuiApplication*>(QGuiApplication::instance()); QString langCode;
if (m_qSettings.value("Language").isNull()) { if (m_qSettings.value("Language").isNull()) {
auto locale = QLocale::system().uiLanguages(); auto localeList = QLocale::system().uiLanguages();
auto localeSplits = locale.at(0).split("-");
// Only install a translator if one exsists // Like En-us, De-de
QFile tsFile; QStringList localeSplits = localeList.at(0).split("-");
qDebug() << ":/translations/ScreenPlay_" + localeSplits.at(0) + ".qm"; langCode = localeSplits.at(0);
if (tsFile.exists(":/translations/ScreenPlay_" + localeSplits.at(0) + ".qm")) {
m_translator.load(":/translations/ScreenPlay_" + localeSplits.at(0) + ".qm");
m_qSettings.setValue("language", QVariant(localeSplits.at(0)));
// setLanguage(QVariant(localeSplits.at(0)).toString());
m_qSettings.sync(); // Ether De, En, Ru, Fr...
app->installTranslator(&m_translator); if (langCode.length() != 2) {
qWarning() << "Could not parse locale of value " << langCode;
return;
} }
} else { } else {
QFile tsFile; langCode = m_qSettings.value("Language").toString();
if (tsFile.exists(":/translations/ScreenPlay_" + m_qSettings.value("Language").toString() + ".qm")) {
m_translator.load(":/translations/ScreenPlay_" + m_qSettings.value("Language").toString() + ".qm");
// setLanguage(m_qSettings.value("language").toString());
app->installTranslator(&m_translator);
}
} }
setLanguage(QStringToEnum<Language>(langCode, Language::En));
retranslateUI();
}
/*!
\brief Check for supported langauges. If we use a langauge that not uses
latin characters, we change the font. For example this happens for korean user. We ship google
Noto Sans CJK KR Regular for this..
*/
bool Settings::retranslateUI()
{
auto* app = static_cast<QGuiApplication*>(QGuiApplication::instance());
QString langCode = QVariant::fromValue(language()).toString();
langCode = langCode.toLower();
QFile tsFile;
if (tsFile.exists(":/translations/ScreenPlay_" + langCode + ".qm")) {
m_translator.load(":/translations/ScreenPlay_" + langCode + ".qm");
app->installTranslator(&m_translator);
emit requestRetranslation();
if (language() == Settings::Language::Ko) {
setFont("Noto Sans CJK KR Regular");
} else {
setFont("Roboto");
}
return true;
}
return false;
} }
} }

View File

@ -43,26 +43,23 @@ using std::shared_ptr,
std::make_shared; std::make_shared;
template <typename T> template <typename T>
T SettingsSetQStringToEnum(const QString& key, const T defaultValue, const QSettings& settings) T QStringToEnum(const QString& key, const T defaultValue)
{ {
auto metaEnum = QMetaEnum::fromType<T>(); auto metaEnum = QMetaEnum::fromType<T>();
if (!settings.value(key).isNull()) {
QString value = settings.value(key).toString();
bool ok = false; bool ok = false;
T wantedEnum = static_cast<T>(metaEnum.keyToValue(value.toUtf8(), &ok)); T wantedEnum = static_cast<T>(metaEnum.keyToValue(key.toUtf8(), &ok));
if (ok) { if (ok) {
return wantedEnum; return wantedEnum;
}
} }
return defaultValue; return defaultValue;
} }
class Settings : public QObject { class Settings : public QObject {
Q_OBJECT Q_OBJECT
Q_PROPERTY(bool anonymousTelemetry READ anonymousTelemetry WRITE setAnonymousTelemetry NOTIFY anonymousTelemetryChanged) Q_PROPERTY(bool anonymousTelemetry READ anonymousTelemetry WRITE setAnonymousTelemetry NOTIFY anonymousTelemetryChanged)
Q_PROPERTY(bool silentStart READ silentStart WRITE setSilentStart NOTIFY silentStartChanged) Q_PROPERTY(bool silentStart READ silentStart WRITE setSilentStart NOTIFY silentStartChanged)
Q_PROPERTY(bool autostart READ autostart WRITE setAutostart NOTIFY autostartChanged) Q_PROPERTY(bool autostart READ autostart WRITE setAutostart NOTIFY autostartChanged)
@ -75,6 +72,7 @@ class Settings : public QObject {
Q_PROPERTY(QString decoder READ decoder WRITE setDecoder NOTIFY decoderChanged) Q_PROPERTY(QString decoder READ decoder WRITE setDecoder NOTIFY decoderChanged)
Q_PROPERTY(QString gitBuildHash READ gitBuildHash WRITE setGitBuildHash NOTIFY gitBuildHashChanged) Q_PROPERTY(QString gitBuildHash READ gitBuildHash WRITE setGitBuildHash NOTIFY gitBuildHashChanged)
Q_PROPERTY(QString font READ font WRITE setFont NOTIFY fontChanged)
public: public:
explicit Settings( explicit Settings(
@ -95,11 +93,12 @@ public:
De, De,
Ru, Ru,
Fr, Fr,
Es Es,
Ko,
Vi
}; };
Q_ENUM(Language) Q_ENUM(Language)
bool offlineMode() const bool offlineMode() const
{ {
return m_offlineMode; return m_offlineMode;
@ -155,7 +154,18 @@ public:
return m_language; return m_language;
} }
public:
void setupLanguage();
QString font() const
{
return m_font;
}
signals: signals:
void requestRetranslation();
void resetInstalledListmodel();
void autostartChanged(bool autostart); void autostartChanged(bool autostart);
void highPriorityStartChanged(bool highPriorityStart); void highPriorityStartChanged(bool highPriorityStart);
void hasWorkshopBannerSeenChanged(bool hasWorkshopBannerSeen); void hasWorkshopBannerSeenChanged(bool hasWorkshopBannerSeen);
@ -163,17 +173,18 @@ signals:
void setMainWindowVisible(bool visible); void setMainWindowVisible(bool visible);
void offlineModeChanged(bool offlineMode); void offlineModeChanged(bool offlineMode);
void gitBuildHashChanged(QString gitBuildHash); void gitBuildHashChanged(QString gitBuildHash);
void resetInstalledListmodel();
void silentStartChanged(bool silentStart); void silentStartChanged(bool silentStart);
void anonymousTelemetryChanged(bool anonymousTelemetry); void anonymousTelemetryChanged(bool anonymousTelemetry);
void checkWallpaperVisibleChanged(bool checkWallpaperVisible); void checkWallpaperVisibleChanged(bool checkWallpaperVisible);
void videoFillModeChanged(FillMode videoFillMode); void videoFillModeChanged(FillMode videoFillMode);
void languageChanged(Language language); void languageChanged(Language language);
void fontChanged(QString font);
public slots: public slots:
void writeJsonFileFromResource(const QString& filename); void writeJsonFileFromResource(const QString& filename);
void setupWidgetAndWindowPaths(); void setupWidgetAndWindowPaths();
void setupLanguage(); bool retranslateUI();
void setqSetting(const QString& key, const QVariant& value) void setqSetting(const QString& key, const QVariant& value)
{ {
m_qSettings.setValue(key, value); m_qSettings.setValue(key, value);
@ -304,6 +315,15 @@ public slots:
emit languageChanged(m_language); emit languageChanged(m_language);
} }
void setFont(QString font)
{
if (m_font == font)
return;
m_font = font;
emit fontChanged(m_font);
}
private: private:
void restoreDefault(const QString& appConfigLocation, const QString& settingsFileType); void restoreDefault(const QString& appConfigLocation, const QString& settingsFileType);
@ -316,13 +336,14 @@ private:
bool m_autostart { true }; bool m_autostart { true };
bool m_highPriorityStart { true }; bool m_highPriorityStart { true };
bool m_offlineMode { true }; bool m_offlineMode { true };
bool m_checkWallpaperVisible { true }; bool m_checkWallpaperVisible { false };
bool m_silentStart { false }; bool m_silentStart { false };
bool m_anonymousTelemetry { true }; bool m_anonymousTelemetry { true };
QString m_gitBuildHash; QString m_gitBuildHash;
QString m_decoder; QString m_decoder;
FillMode m_videoFillMode; FillMode m_videoFillMode = FillMode::Cover;
Language m_language = Language::En; Language m_language = Language::En;
QString m_font {"Roboto"};
}; };
} }

View File

@ -9,7 +9,7 @@ namespace ScreenPlay {
*/ */
/*! /*!
Constructor \brief Constructor.
*/ */
Util::Util(QNetworkAccessManager* networkAccessManager, QObject* parent) Util::Util(QNetworkAccessManager* networkAccessManager, QObject* parent)
: QObject(parent) : QObject(parent)
@ -45,7 +45,7 @@ Util::Util(QNetworkAccessManager* networkAccessManager, QObject* parent)
} }
/*! /*!
Copies the given string to the clipboard. \brief Copies the given string to the clipboard.
*/ */
void Util::copyToClipboard(const QString& text) const void Util::copyToClipboard(const QString& text) const
{ {
@ -54,8 +54,8 @@ void Util::copyToClipboard(const QString& text) const
} }
/*! /*!
Opens a json file (absolute path) and tries to convert it to a QJsonObject. \brief Opens a json file (absolute path) and tries to convert it to a QJsonObject.
Return std::nullopt when not successful. Returns std::nullopt when not successful.
*/ */
std::optional<QJsonObject> Util::openJsonFileToObject(const QString& path) std::optional<QJsonObject> Util::openJsonFileToObject(const QString& path)
{ {
@ -78,8 +78,8 @@ std::optional<QJsonObject> Util::openJsonFileToObject(const QString& path)
} }
/*! /*!
Opens a json file (absolute path) and tries to convert it to a QString. \brief Opens a json file (absolute path) and tries to convert it to a QString.
Return std::nullopt when not successful. Returns std::nullopt when not successful.
*/ */
std::optional<QString> Util::openJsonFileToString(const QString& path) std::optional<QString> Util::openJsonFileToString(const QString& path)
{ {
@ -96,7 +96,7 @@ std::optional<QString> Util::openJsonFileToString(const QString& path)
} }
/*! /*!
Generates a (non secure) random string with the default length of 32. Can contain: \brief Generates a (non secure) random string with the default length of 32. Can contain:
\list \list
\li A-Z \li A-Z
\li a-z \li a-z
@ -120,7 +120,7 @@ QString Util::generateRandomString(quint32 length)
} }
/*! /*!
Parses a version from a given QString. The QString must be looke like this: \brief Parses a version from a given QString. The QString must be looke like this:
1.0.0 - Major.Minor.Patch. A fixed position is used for parsing (at 0,2,4). 1.0.0 - Major.Minor.Patch. A fixed position is used for parsing (at 0,2,4).
Return std::nullopt when not successful. Return std::nullopt when not successful.
*/ */
@ -143,7 +143,7 @@ std::optional<QVersionNumber> Util::getVersionNumberFromString(const QString& st
} }
/*! /*!
Writes a given QJsonObject to a file. The path must be absolute. When truncate is set to \brief Writes a given QJsonObject to a file. The path must be absolute. When truncate is set to
true the exsisting json file will be overriten. true the exsisting json file will be overriten.
*/ */
bool Util::writeJsonObjectToFile(const QString& absoluteFilePath, const QJsonObject& object, bool truncate) bool Util::writeJsonObjectToFile(const QString& absoluteFilePath, const QJsonObject& object, bool truncate)
@ -168,22 +168,20 @@ bool Util::writeJsonObjectToFile(const QString& absoluteFilePath, const QJsonObj
return true; return true;
} }
/*!
\brief Helper function to append a QStringList into a QString with a space between the items.
*/
QString Util::toString(const QStringList& list) QString Util::toString(const QStringList& list)
{ {
QString out; QString out;
for (auto string : list) { for (const auto &string : list) {
out += " " + string; out += " " + string;
} }
return out; return out;
} }
QString Util::fixWindowsPath(QString url)
{
return url.replace("/", "\\\\");
}
/*! /*!
Opens a native folder window on the given path. Windows and Mac only for now! \brief Parses a QByteArray to a QJsonObject. If returns and std::nullopt on failure.
*/ */
std::optional<QJsonObject> Util::parseQByteArrayToQJsonObject(const QByteArray& byteArray) std::optional<QJsonObject> Util::parseQByteArrayToQJsonObject(const QByteArray& byteArray)
{ {
@ -199,6 +197,9 @@ std::optional<QJsonObject> Util::parseQByteArrayToQJsonObject(const QByteArray&
return std::nullopt; return std::nullopt;
} }
/*!
\brief Opens a native folder window on the given path. Windows and Mac only for now!
*/
void Util::openFolderInExplorer(const QString& url) const void Util::openFolderInExplorer(const QString& url) const
{ {
QString fileString { "file:///" }; QString fileString { "file:///" };
@ -223,10 +224,8 @@ void Util::openFolderInExplorer(const QString& url) const
explorer.startDetached(); explorer.startDetached();
} }
/*! /*!
Loads all content of the legal folder in the qrc into a property string of this class. \brief Loads all content of the legal folder in the qrc into a property string of this class.
allLicenseLoaded is emited when loading is finished. allLicenseLoaded is emited when loading is finished.
*/ */
void Util::Util::requestAllLicenses() void Util::Util::requestAllLicenses()
@ -272,7 +271,7 @@ void Util::Util::requestAllLicenses()
} }
/*! /*!
Loads all dataprotection of the legal folder in the qrc into a property string of this class. \brief Loads all dataprotection of the legal folder in the qrc into a property string of this class.
allDataProtectionLoaded is emited when loading is finished. allDataProtectionLoaded is emited when loading is finished.
*/ */
void Util::Util::requestDataProtection() void Util::Util::requestDataProtection()
@ -292,7 +291,7 @@ void Util::Util::requestDataProtection()
} }
/*! /*!
Downloads and extracts ffmpeg static version from https://ffmpeg.zeranoe.com \brief Downloads and extracts ffmpeg static version from https://ffmpeg.zeranoe.com
The progress is tracked via setAquireFFMPEGStatus(AquireFFMPEGStatus); The progress is tracked via setAquireFFMPEGStatus(AquireFFMPEGStatus);
*/ */
void Util::downloadFFMPEG() void Util::downloadFFMPEG()
@ -380,7 +379,7 @@ void Util::downloadFFMPEG()
} }
/*! /*!
Basic logging to the GUI. No logging is done to a log file for now. This string can be copied \brief Basic logging to the GUI. No logging is done to a log file for now. This string can be copied
in the settings tab in the UI. in the settings tab in the UI.
*/ */
void Util::logToGui(QtMsgType type, const QMessageLogContext& context, const QString& msg) void Util::logToGui(QtMsgType type, const QMessageLogContext& context, const QString& msg)
@ -391,7 +390,7 @@ void Util::logToGui(QtMsgType type, const QMessageLogContext& context, const QSt
QByteArray line = "in line " + QByteArray::number(context.line) + ", "; QByteArray line = "in line " + QByteArray::number(context.line) + ", ";
QByteArray function = "function " + QByteArray(context.function) + ", Message: "; QByteArray function = "function " + QByteArray(context.function) + ", Message: ";
QString log = "&emsp; <font color=\"#03A9F4\"> " + QDateTime::currentDateTime().toString() + "</font> &emsp; " + localMsg + "<br><br>"; QString log = "&emsp; <font color=\"#03A9F4\"> " + QDateTime::currentDateTime().toString() + "</font> &emsp; " + localMsg + "<br>";
switch (type) { switch (type) {
case QtDebugMsg: case QtDebugMsg:
@ -410,13 +409,14 @@ void Util::logToGui(QtMsgType type, const QMessageLogContext& context, const QSt
log.prepend("<b><font color=\"#F44336\"> Fatal</font>:</b>"); log.prepend("<b><font color=\"#F44336\"> Fatal</font>:</b>");
break; break;
} }
log.append("\n");
if (utilPointer != nullptr) if (utilPointer != nullptr)
utilPointer->appendDebugMessages(log); utilPointer->appendDebugMessages(log);
} }
/*! /*!
Convenient function for the ffmpeg download extraction via libzippp. Extracts a given bytearray \brief Convenient function for the ffmpeg download extraction via libzippp. Extracts a given bytearray
to a given absolute file path and file name. Returns false if extraction or saving wasn't successful. to a given absolute file path and file name. Returns false if extraction or saving wasn't successful.
*/ */
bool Util::saveExtractedByteArray(libzippp::ZipEntry& entry, std::string& absolutePathAndName) bool Util::saveExtractedByteArray(libzippp::ZipEntry& entry, std::string& absolutePathAndName)

View File

@ -90,7 +90,6 @@ public slots:
void downloadFFMPEG(); void downloadFFMPEG();
QString fixWindowsPath(QString url);
static std::optional<QJsonObject> parseQByteArrayToQJsonObject(const QByteArray& byteArray); static std::optional<QJsonObject> parseQByteArrayToQJsonObject(const QByteArray& byteArray);
static std::optional<QJsonObject> openJsonFileToObject(const QString& path); static std::optional<QJsonObject> openJsonFileToObject(const QString& path);
static std::optional<QString> openJsonFileToString(const QString& path); static std::optional<QString> openJsonFileToString(const QString& path);

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