Skip to content

Commit 3aa2492

Browse files
committed
Add license and readme
1 parent ff60fac commit 3aa2492

7 files changed

Lines changed: 799 additions & 3 deletions

File tree

COPYING

Lines changed: 674 additions & 0 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Multi Screen Saver
2+
3+
![logo](https://i.imgur.com/bUV4bE2.png)
4+
5+
This is a simple photo slideshow screensaver that is optimized to correctly work with multiple screens with different orientations.
6+
7+
Portrait and landscape photo directories are configurable separately and will be displayed on corresponding monitors.
8+
9+
Simple keyboard actions like pause slideshow, next/previous image are also supported.
10+
11+
### Configuration
12+
13+
Right click → configure or go to screensaver settings in windows control panel.
14+
15+
![config](https://i.imgur.com/x315OE8.png)
16+
17+
### Installation
18+
19+
Extract screensaver into a suitable location and right click → install.
20+
21+
To uninstall simply delete the file.
22+
23+
### Compilation
24+
25+
This project is built with cmake and vcpkg and requires wxwidgets library.
26+
Install vcpkg first, then install wxwidgets into vcpkg and run cmake. Make sure to define `CMAKE_TOOLCHAIN_FILE` pointing to `vcpkg/scripts/buildsystems/vcpkg.cmake`. Optionally pass `VCPKG_TARGET_TRIPLET="x64-windows-static"` and `CMAKE_UPX_PATH=path/to/upx.exe` to link statically and compress the executable.
27+
28+
Config form is created using wxFormBuilder, `config_base*` files are auto generated and should not be edited/formatted.
29+
30+
### License
31+
32+
This project is licensed under GNU GPL v3 license, see `COPYING` for more information.

gui/config.cpp

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
/*
2+
* This file is part of MultiScreenSaver.
3+
*
4+
* Copyright (c) qu1ck 2022
5+
*
6+
* MultiScreenSaver is free software: you can redistribute it and/or modify it under the terms of
7+
* the GNU General Public License as published by the Free Software Foundation, either version 3
8+
* of the License, or (at your option) any later version.
9+
*
10+
* MultiScreenSaver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12+
* See the GNU General Public License for more details.
13+
*
14+
* You should have received a copy of the GNU General Public License along with MultiScreenSaver.
15+
* If not, see https://www.gnu.org/licenses/.
16+
*/
17+
118
#include <wx/config.h>
219

320
#include "config.h"

gui/config.h

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,22 @@
1-
#ifndef __config__
2-
#define __config__
1+
/*
2+
* This file is part of MultiScreenSaver.
3+
*
4+
* Copyright (c) qu1ck 2022
5+
*
6+
* MultiScreenSaver is free software: you can redistribute it and/or modify it under the terms of
7+
* the GNU General Public License as published by the Free Software Foundation, either version 3
8+
* of the License, or (at your option) any later version.
9+
*
10+
* MultiScreenSaver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12+
* See the GNU General Public License for more details.
13+
*
14+
* You should have received a copy of the GNU General Public License along with MultiScreenSaver.
15+
* If not, see https://www.gnu.org/licenses/.
16+
*/
17+
18+
#ifndef __CONFIG_H__
19+
#define __CONFIG_H__
320

421
#include <wx/wx.h>
522

@@ -35,4 +52,4 @@ class CONFIG_DIALOG : public CONFIG_BASE
3552
Config& m_config;
3653
};
3754

38-
#endif // __config__
55+
#endif // __CONFIG_H__

main.cpp

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
/*
2+
* This file is part of MultiScreenSaver.
3+
*
4+
* Copyright (c) qu1ck 2022
5+
*
6+
* MultiScreenSaver is free software: you can redistribute it and/or modify it under the terms of
7+
* the GNU General Public License as published by the Free Software Foundation, either version 3
8+
* of the License, or (at your option) any later version.
9+
*
10+
* MultiScreenSaver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12+
* See the GNU General Public License for more details.
13+
*
14+
* You should have received a copy of the GNU General Public License along with MultiScreenSaver.
15+
* If not, see https://www.gnu.org/licenses/.
16+
*/
17+
118
#include <wx/cmdline.h>
219
#include <wx/wx.h>
320

saverframe.cpp

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
/*
2+
* This file is part of MultiScreenSaver.
3+
*
4+
* Copyright (c) qu1ck 2022
5+
*
6+
* MultiScreenSaver is free software: you can redistribute it and/or modify it under the terms of
7+
* the GNU General Public License as published by the Free Software Foundation, either version 3
8+
* of the License, or (at your option) any later version.
9+
*
10+
* MultiScreenSaver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12+
* See the GNU General Public License for more details.
13+
*
14+
* You should have received a copy of the GNU General Public License along with MultiScreenSaver.
15+
* If not, see https://www.gnu.org/licenses/.
16+
*/
17+
118
#include <algorithm>
219
#include <random>
320
#include <wx/dcgraph.h>

saverframe.h

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,23 @@
1+
/*
2+
* This file is part of MultiScreenSaver.
3+
*
4+
* Copyright (c) qu1ck 2022
5+
*
6+
* MultiScreenSaver is free software: you can redistribute it and/or modify it under the terms of
7+
* the GNU General Public License as published by the Free Software Foundation, either version 3
8+
* of the License, or (at your option) any later version.
9+
*
10+
* MultiScreenSaver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11+
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12+
* See the GNU General Public License for more details.
13+
*
14+
* You should have received a copy of the GNU General Public License along with MultiScreenSaver.
15+
* If not, see https://www.gnu.org/licenses/.
16+
*/
17+
18+
#ifndef __SAVERFRAME_H__
19+
#define __SAVERFRAME_H__
20+
121
#include <wx/graphics.h>
222
#include <wx/image.h>
323
#include <wx/timer.h>
@@ -68,3 +88,5 @@ class SaverFrame : public wxFrame
6888

6989
RenderWindow* renderer;
7090
};
91+
92+
#endif // __SAVERFRAME_H__

0 commit comments

Comments
 (0)