Repath icons to match their linux install locations, add installer and desktop file
27
iconsrc/project/SC9K_Logo.npal
Normal file
@@ -0,0 +1,27 @@
|
||||
K1;3d1a77ec-265f-4905-2061-4f1003ee2189;O1;net.drinkingtea.nostalgia.core.Palette;4;{
|
||||
"colorNames" :
|
||||
[
|
||||
"Color 1",
|
||||
"Color 2",
|
||||
"Color 3"
|
||||
],
|
||||
"pages" :
|
||||
[
|
||||
{
|
||||
"colors" :
|
||||
[
|
||||
{
|
||||
"b" : 10,
|
||||
"g" : 5,
|
||||
"r" : 5
|
||||
},
|
||||
{},
|
||||
{
|
||||
"b" : 31,
|
||||
"g" : 31,
|
||||
"r" : 31
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
269
iconsrc/project/SC9K_Logo.nts
Normal file
@@ -0,0 +1,269 @@
|
||||
K1;40f7b4ac-7f90-409e-80e0-64b59b594a63;O1;net.drinkingtea.nostalgia.gfx.TileSheet;5;{
|
||||
"bpp" : 4,
|
||||
"defaultPalette" : "uuid://3d1a77ec-265f-4905-2061-4f1003ee2189",
|
||||
"subsheet" :
|
||||
{
|
||||
"columns" : 2,
|
||||
"name" : "Root",
|
||||
"pixels" :
|
||||
[
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
"rows" : 2
|
||||
}
|
||||
}
|
9
install.sh
Normal file
@@ -0,0 +1,9 @@
|
||||
#! /usr/bin/env bash
|
||||
|
||||
set -eu
|
||||
|
||||
dist_dir=.
|
||||
|
||||
install -Dm 755 $dist_dir/bin/SlideController /usr/local/bin/SlideController
|
||||
install -Dm 755 $dist_dir/share/applications/net.drinkingtea.sc9k.desktop /usr/share/applications/net.drinkingtea.sc9k.desktop
|
||||
cp -r $dist_dir/share/ /usr/
|
@@ -33,3 +33,17 @@ install(
|
||||
BUNDLE DESTINATION .
|
||||
)
|
||||
|
||||
install(
|
||||
DIRECTORY
|
||||
icons
|
||||
DESTINATION
|
||||
share
|
||||
)
|
||||
|
||||
install(
|
||||
FILES
|
||||
net.drinkingtea.sc9k.desktop
|
||||
DESTINATION
|
||||
share/applications
|
||||
)
|
||||
|
||||
|
BIN
src/icons/hicolor/128x128/apps/net.drinkingtea.sc9k.png
Normal file
After Width: | Height: | Size: 140 B |
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 4.1 KiB |
BIN
src/icons/hicolor/512x512/apps/net.drinkingtea.sc9k.png
Normal file
After Width: | Height: | Size: 224 B |
BIN
src/icons/hicolor/64x64/apps/net.drinkingtea.sc9k.png
Normal file
After Width: | Height: | Size: 132 B |
14
src/net.drinkingtea.sc9k.desktop
Normal file
@@ -0,0 +1,14 @@
|
||||
[Desktop Entry]
|
||||
Name=Slide Controller 9000
|
||||
Comment=Slide and Live Stream Coordinator
|
||||
GenericName=Slide and Live Stream Coordinator
|
||||
X-GNOME-FullName=Slide Controller 9000
|
||||
Type=Application
|
||||
Exec=/usr/local/bin/SlideController
|
||||
Terminal=false
|
||||
X-MultipleArgs=false
|
||||
Icon=net.drinkingtea.sc9k
|
||||
Categories=Multimedia
|
||||
Keywords=slide;controller;sc9k
|
||||
StartupWMClass=Slide Controller 9000
|
||||
StartupNotify=false
|
@@ -26,18 +26,18 @@ void OBSClient::setScene(QString const&scene) {
|
||||
}
|
||||
|
||||
void OBSClient::showSlides() {
|
||||
setScene("MusicScene");
|
||||
setScene(SceneSlides);
|
||||
}
|
||||
|
||||
void OBSClient::hideSlides() {
|
||||
setScene("SpeakerScene");
|
||||
setScene(SceneNoSlides);
|
||||
}
|
||||
|
||||
void OBSClient::setSlidesVisible(bool state) {
|
||||
if (state) {
|
||||
setScene("MusicScene");
|
||||
setScene(SceneSlides);
|
||||
} else {
|
||||
setScene("SpeakerScene");
|
||||
setScene(SceneNoSlides);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -17,6 +17,8 @@
|
||||
class OBSClient: public QObject {
|
||||
Q_OBJECT
|
||||
private:
|
||||
static constexpr auto SceneSlides = "MusicScene";
|
||||
static constexpr auto SceneNoSlides = "SpeakerScene";
|
||||
QString m_baseUrl;
|
||||
QNetworkAccessManager *m_nam = new QNetworkAccessManager(this);
|
||||
QNetworkAccessManager *m_pollingNam = new QNetworkAccessManager(this);
|
||||
|