Compare commits
5 Commits
release-1.
...
873f0281c8
Author | SHA1 | Date | |
---|---|---|---|
873f0281c8 | |||
be97085609 | |||
e054feb0f7 | |||
d8b040631e | |||
0cd84cac2b |
@@ -25,3 +25,11 @@ endif()
|
||||
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
|
||||
|
||||
add_subdirectory(src)
|
||||
|
||||
install(
|
||||
PROGRAMS
|
||||
install.sh
|
||||
DESTINATION
|
||||
.
|
||||
)
|
||||
|
||||
|
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/
|
5
release-notes.md
Normal file
@@ -0,0 +1,5 @@
|
||||
|
||||
# 1.1.0
|
||||
|
||||
* Add Linux app icon, desktop file, and install script
|
||||
* Rename MusicScene SlidesScene and SpeakerScene to NoSlidesScene
|
@@ -33,3 +33,30 @@ install(
|
||||
BUNDLE DESTINATION .
|
||||
)
|
||||
|
||||
install(
|
||||
DIRECTORY
|
||||
icons
|
||||
DESTINATION
|
||||
share
|
||||
)
|
||||
|
||||
install(
|
||||
FILES
|
||||
net.drinkingtea.sc9k.desktop
|
||||
DESTINATION
|
||||
share/applications
|
||||
)
|
||||
|
||||
if(UNIX)
|
||||
qt_add_resources(
|
||||
SlideController "app_images"
|
||||
PREFIX "/"
|
||||
FILES
|
||||
icons/hicolor/16x16/apps/net.drinkingtea.sc9k.png
|
||||
icons/hicolor/32x32/apps/net.drinkingtea.sc9k.png
|
||||
icons/hicolor/64x64/apps/net.drinkingtea.sc9k.png
|
||||
icons/hicolor/128x128/apps/net.drinkingtea.sc9k.png
|
||||
icons/hicolor/256x256/apps/net.drinkingtea.sc9k.png
|
||||
icons/hicolor/512x512/apps/net.drinkingtea.sc9k.png
|
||||
)
|
||||
endif()
|
||||
|
@@ -10,5 +10,5 @@
|
||||
|
||||
constexpr auto MaxCameraPresets = 9;
|
||||
constexpr auto MaxViews = 9;
|
||||
constexpr auto Version = "1.0.0";
|
||||
constexpr auto Version = "1.1.0";
|
||||
|
||||
|
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 |
10
src/main.cpp
@@ -19,6 +19,16 @@ int main(int argc, char *argv[]) {
|
||||
QApplication a(argc, argv);
|
||||
QApplication::setOrganizationName("DrinkingTea");
|
||||
QApplication::setApplicationName("Slide Controller 9000");
|
||||
#ifdef __linux
|
||||
QIcon icon;
|
||||
icon.addFile(":/icons/hicolor/16x16/apps/net.drinkingtea.sc9k.png");
|
||||
icon.addFile(":/icons/hicolor/32x32/apps/net.drinkingtea.sc9k.png");
|
||||
icon.addFile(":/icons/hicolor/64x64/apps/net.drinkingtea.sc9k.png");
|
||||
icon.addFile(":/icons/hicolor/128x128/apps/net.drinkingtea.sc9k.png");
|
||||
icon.addFile(":/icons/hicolor/256x256/apps/net.drinkingtea.sc9k.png");
|
||||
icon.addFile(":/icons/hicolor/512x512/apps/net.drinkingtea.sc9k.png");
|
||||
QApplication::setWindowIcon(icon);
|
||||
#endif
|
||||
MainWindow w;
|
||||
w.show();
|
||||
return QApplication::exec();
|
||||
|
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 = "SlidesScene";
|
||||
static constexpr auto SceneNoSlides = "NoSlidesScene";
|
||||
QString m_baseUrl;
|
||||
QNetworkAccessManager *m_nam = new QNetworkAccessManager(this);
|
||||
QNetworkAccessManager *m_pollingNam = new QNetworkAccessManager(this);
|
||||
|