From 1ead56ffac58d4f10b9f9e2a9b50bd5e0577a399 Mon Sep 17 00:00:00 2001 From: Maxim Stewart Date: Fri, 5 Jul 2019 03:39:48 -0500 Subject: [PATCH] Added auto offset list; removed debs build parts --- bin/gwinwrap-0-0-1-x64.deb | Bin 41056 -> 41176 bytes .../opt => }/GWinWrap/GWinWrap.py | 21 +- src/GWinWrap/GWinWrap.sh | 12 + .../GWinWrap/resources/GWinWrap.glade | 40 - .../GWinWrap/resources/icons/GWinWrap.png | Bin .../GWinWrap/resources/icons/folder.png | Bin .../GWinWrap/resources/icons/picture.png | Bin .../GWinWrap/resources/icons/player.png | Bin .../GWinWrap/resources/stylesheet.css | 2 +- .../GWinWrap/utils/SaveGWinWrapSettings.py | 0 .../GWinWrap/utils/SaveStateToXWinWarp.py | 0 .../opt => }/GWinWrap/utils/__init__.py | 0 src/{versions/0.0.1 => }/XWinWrap/Makefile | 0 src/{versions/0.0.1 => }/XWinWrap/xwinwrap.c | 0 src/{versions/0.0.1 => }/compileBin.sh | 0 src/debs/build.sh | 39 - src/debs/chownAll.sh | 6 - src/debs/gwinwrap-0-0-1-x64/DEBIAN/control | 8 - src/debs/gwinwrap-0-0-1-x64/DEBIAN/postrm | 20 - src/debs/gwinwrap-0-0-1-x64/bin/gwinwrap | Bin 6168 -> 0 bytes src/debs/gwinwrap-0-0-1-x64/bin/xwinwrap | Bin 22603 -> 0 bytes .../usr/share/applications/GWinWrap.desktop | 9 - .../usr/share/doc/gwinwrap/copyright | 22 - .../0.0.1 => }/gwinwrap_exec_bin.cpp | 0 src/versions/0.0.1/GWinWrap/GWinWrap.py | 380 -------- .../0.0.1/GWinWrap/resources/GWinWrap.glade | 883 ------------------ .../GWinWrap/resources/icons/GWinWrap.png | Bin 9278 -> 0 bytes .../0.0.1/GWinWrap/resources/icons/folder.png | Bin 4698 -> 0 bytes .../GWinWrap/resources/icons/picture.png | Bin 6591 -> 0 bytes .../0.0.1/GWinWrap/resources/icons/player.png | Bin 6535 -> 0 bytes .../0.0.1/GWinWrap/resources/stylesheet.css | 3 - .../GWinWrap/utils/SaveGWinWrapSettings.py | 52 -- .../GWinWrap/utils/SaveStateToXWinWarp.py | 65 -- src/versions/0.0.1/GWinWrap/utils/__init__.py | 2 - 34 files changed, 31 insertions(+), 1533 deletions(-) rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/GWinWrap.py (94%) create mode 100755 src/GWinWrap/GWinWrap.sh rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/resources/GWinWrap.glade (93%) rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/resources/icons/GWinWrap.png (100%) rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/resources/icons/folder.png (100%) rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/resources/icons/picture.png (100%) rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/resources/icons/player.png (100%) rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/resources/stylesheet.css (83%) rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/utils/SaveGWinWrapSettings.py (100%) rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/utils/SaveStateToXWinWarp.py (100%) rename src/{debs/gwinwrap-0-0-1-x64/opt => }/GWinWrap/utils/__init__.py (100%) rename src/{versions/0.0.1 => }/XWinWrap/Makefile (100%) rename src/{versions/0.0.1 => }/XWinWrap/xwinwrap.c (100%) rename src/{versions/0.0.1 => }/compileBin.sh (100%) delete mode 100644 src/debs/build.sh delete mode 100644 src/debs/chownAll.sh delete mode 100644 src/debs/gwinwrap-0-0-1-x64/DEBIAN/control delete mode 100755 src/debs/gwinwrap-0-0-1-x64/DEBIAN/postrm delete mode 100755 src/debs/gwinwrap-0-0-1-x64/bin/gwinwrap delete mode 100755 src/debs/gwinwrap-0-0-1-x64/bin/xwinwrap delete mode 100644 src/debs/gwinwrap-0-0-1-x64/usr/share/applications/GWinWrap.desktop delete mode 100644 src/debs/gwinwrap-0-0-1-x64/usr/share/doc/gwinwrap/copyright rename src/{versions/0.0.1 => }/gwinwrap_exec_bin.cpp (100%) delete mode 100755 src/versions/0.0.1/GWinWrap/GWinWrap.py delete mode 100644 src/versions/0.0.1/GWinWrap/resources/GWinWrap.glade delete mode 100644 src/versions/0.0.1/GWinWrap/resources/icons/GWinWrap.png delete mode 100644 src/versions/0.0.1/GWinWrap/resources/icons/folder.png delete mode 100644 src/versions/0.0.1/GWinWrap/resources/icons/picture.png delete mode 100644 src/versions/0.0.1/GWinWrap/resources/icons/player.png delete mode 100644 src/versions/0.0.1/GWinWrap/resources/stylesheet.css delete mode 100644 src/versions/0.0.1/GWinWrap/utils/SaveGWinWrapSettings.py delete mode 100644 src/versions/0.0.1/GWinWrap/utils/SaveStateToXWinWarp.py delete mode 100644 src/versions/0.0.1/GWinWrap/utils/__init__.py diff --git a/bin/gwinwrap-0-0-1-x64.deb b/bin/gwinwrap-0-0-1-x64.deb index ce5c0d1ff2fa163205e50b5c56ff45879866bc35..952079b8b3a652b8f2a39b54d84c1c2d48c46e00 100644 GIT binary patch delta 32777 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 z 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 delta 32656 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 PvBYQl0ssI200dcDn<8>y diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/GWinWrap.py b/src/GWinWrap/GWinWrap.py similarity index 94% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/GWinWrap.py rename to src/GWinWrap/GWinWrap.py index cf62815..e9a0ce6 100755 --- a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/GWinWrap.py +++ b/src/GWinWrap/GWinWrap.py @@ -5,7 +5,12 @@ import os, cairo, sys, gi, re, threading, subprocess, hashlib, signal, time gi.require_version('Gtk', '3.0') gi.require_version('Gdk', '3.0') -from gi.repository import Gtk as gtk, Gdk as gdk, GObject as gobject, GdkPixbuf +from gi.repository import Gtk as gtk +from gi.repository import Gdk as gdk +from gi.repository import GObject as gobject +from gi.repository import GdkPixbuf +from gi.repository import GLib + from os import listdir from os.path import isfile, join @@ -28,8 +33,7 @@ class GWinWrap: window = self.builder.get_object("Main") monitors = self.setWindowData(window) window.connect("delete-event", gtk.main_quit) - - print(monitors[1]) + GLib.unix_signal_add(GLib.PRIORITY_DEFAULT, signal.SIGINT, gtk.main_quit) # Add filter to allow only folders to be selected dialog = self.builder.get_object("selectedDirDialog") @@ -98,6 +102,7 @@ class GWinWrap: cr.set_operator(cairo.OPERATOR_OVER) def getMonitorData(self, screen): + posOff = self.builder.get_object("posOffset") monitors = [] wxhxny = [] @@ -108,6 +113,16 @@ class GWinWrap: for monitor in monitors: wxhxny.append(str(monitor.width) + "x" + str(monitor.height) + "+" + str(monitor.x) + "+" + str(monitor.y)) + if monitor.x >= 0 and monitor.y >= 0: + posOff.append_text("+" + str(monitor.x) + "+" + str(monitor.y)) + elif monitor.x <= 0 and monitor.y <= 0: + posOff.append_text(str(monitor.x) + str(monitor.y)) + elif monitor.x >= 0 and monitor.y <= 0: + posOff.append_text("+" + str(monitor.x) + str(monitor.y)) + elif monitor.x <= 0 and monitor.y >= 0: + posOff.append_text(str(monitor.x) + "+" + str(monitor.y)) + + posOff.set_active(0) return wxhxny diff --git a/src/GWinWrap/GWinWrap.sh b/src/GWinWrap/GWinWrap.sh new file mode 100755 index 0000000..6ef2628 --- /dev/null +++ b/src/GWinWrap/GWinWrap.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +# set -o xtrace ## To debug scripts +# set -o errexit ## To exit on error +# set -o errunset ## To exit if a variable is referenced but not set + + +function main() { + # GTK_DEBUG=interactive python3 ./GWinWrap.py + python3 ./GWinWrap.py +} +main $@; diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/GWinWrap.glade b/src/GWinWrap/resources/GWinWrap.glade similarity index 93% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/GWinWrap.glade rename to src/GWinWrap/resources/GWinWrap.glade index 5ec4874..1864a66 100644 --- a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/GWinWrap.glade +++ b/src/GWinWrap/resources/GWinWrap.glade @@ -387,46 +387,6 @@ True False - 18 - - Left - -7680+0 - -3840+0 - -2048+0 - -1920+0 - -1440+0 - -1600+0 - -1280+0 - -800+0 - Right - +7680+0 - +3840+0 - +2048+0 - +1920+0 - +1440+0 - +1600+0 - +1280+0 - +800+0 - +0+0 - Top - +0+7680 - +0+3840 - +0+2048 - +0+1920 - +0+1440 - +0+1600 - 0+1280 - +0+800 - Bottum - +0-7680 - +0-3840 - +0-2048 - +0-1920 - +0-1440 - +0-1600 - 0-1280 - +0-800 - True diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/icons/GWinWrap.png b/src/GWinWrap/resources/icons/GWinWrap.png similarity index 100% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/icons/GWinWrap.png rename to src/GWinWrap/resources/icons/GWinWrap.png diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/icons/folder.png b/src/GWinWrap/resources/icons/folder.png similarity index 100% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/icons/folder.png rename to src/GWinWrap/resources/icons/folder.png diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/icons/picture.png b/src/GWinWrap/resources/icons/picture.png similarity index 100% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/icons/picture.png rename to src/GWinWrap/resources/icons/picture.png diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/icons/player.png b/src/GWinWrap/resources/icons/player.png similarity index 100% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/icons/player.png rename to src/GWinWrap/resources/icons/player.png diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/stylesheet.css b/src/GWinWrap/resources/stylesheet.css similarity index 83% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/stylesheet.css rename to src/GWinWrap/resources/stylesheet.css index b1a267d..722921b 100644 --- a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/resources/stylesheet.css +++ b/src/GWinWrap/resources/stylesheet.css @@ -1,3 +1,3 @@ window { -} \ No newline at end of file +} diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/utils/SaveGWinWrapSettings.py b/src/GWinWrap/utils/SaveGWinWrapSettings.py similarity index 100% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/utils/SaveGWinWrapSettings.py rename to src/GWinWrap/utils/SaveGWinWrapSettings.py diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/utils/SaveStateToXWinWarp.py b/src/GWinWrap/utils/SaveStateToXWinWarp.py similarity index 100% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/utils/SaveStateToXWinWarp.py rename to src/GWinWrap/utils/SaveStateToXWinWarp.py diff --git a/src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/utils/__init__.py b/src/GWinWrap/utils/__init__.py similarity index 100% rename from src/debs/gwinwrap-0-0-1-x64/opt/GWinWrap/utils/__init__.py rename to src/GWinWrap/utils/__init__.py diff --git a/src/versions/0.0.1/XWinWrap/Makefile b/src/XWinWrap/Makefile similarity index 100% rename from src/versions/0.0.1/XWinWrap/Makefile rename to src/XWinWrap/Makefile diff --git a/src/versions/0.0.1/XWinWrap/xwinwrap.c b/src/XWinWrap/xwinwrap.c similarity index 100% rename from src/versions/0.0.1/XWinWrap/xwinwrap.c rename to src/XWinWrap/xwinwrap.c diff --git a/src/versions/0.0.1/compileBin.sh b/src/compileBin.sh similarity index 100% rename from src/versions/0.0.1/compileBin.sh rename to src/compileBin.sh diff --git a/src/debs/build.sh b/src/debs/build.sh deleted file mode 100644 index bb0b522..0000000 --- a/src/debs/build.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash - -# Fixes ownershp -function main() { - sudo find . -type f -exec chmod 644 {} + - sudo find . -type d -exec chmod 755 {} + - - # Set postrm permissions - for i in `find . -name postrm`; do - sudo chmod 755 "${i}" - done - - # Set gwinwrap permissions - for i in `find . -name gwinwrap`; do - sudo chmod 755 "${i}" - done - - # Set xwinwrap permissions - for i in `find . -name xwinwrap`; do - sudo chmod 755 "${i}" - done - - sudo chown -R root:root ./*/ - - builder; - bash ./chownAll.sh -} - -#builds debs -function builder() { - for i in `ls`; do - if [[ -d "${i}" ]]; then - dpkg --build "${i}" - else - echo "Not a dir." - fi - done -} -main; diff --git a/src/debs/chownAll.sh b/src/debs/chownAll.sh deleted file mode 100644 index 44bef62..0000000 --- a/src/debs/chownAll.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -function main() { - sudo chown -R abaddon:abaddon . -} -main; diff --git a/src/debs/gwinwrap-0-0-1-x64/DEBIAN/control b/src/debs/gwinwrap-0-0-1-x64/DEBIAN/control deleted file mode 100644 index a23c389..0000000 --- a/src/debs/gwinwrap-0-0-1-x64/DEBIAN/control +++ /dev/null @@ -1,8 +0,0 @@ -Package: gwinwrap64 -Version: 0.0-1 -Section: python -Priority: optional -Architecture: amd64 -Depends: ffmpegthumbnailer (>= 2.0.10-0.1), mplayer (>=2.0-728-g2c378c7-4), gifsicle (>=1.86-1), nitrogen (>=1.5.2-2), xscreensaver (>=5.36-1ubuntu1), xscreensaver-gl (>=5.36-1ubuntu1), xscreensaver-gl-extra (>=5.36-1ubuntu1), xscreensaver-screensaver-dizzy (>=0.3-3), xscreensaver-screensaver-bsod (>=5.36-1ubuntu1), xscreensaver-data (>=5.36-1ubuntu1), xscreensaver-data-extra (>=5.36-1ubuntu1), xscreensaver-screensaver-webcollage (>=5.36-1ubuntu1) -Maintainer: Maxim Stewart <1itdominator@gmail.com> -Description: GWinWrap is a GUI to handle setting XWinWrap options. diff --git a/src/debs/gwinwrap-0-0-1-x64/DEBIAN/postrm b/src/debs/gwinwrap-0-0-1-x64/DEBIAN/postrm deleted file mode 100755 index c65bdd9..0000000 --- a/src/debs/gwinwrap-0-0-1-x64/DEBIAN/postrm +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -#postrm (script executed after uninstalling the package) -#set -e - -if [ -f /bin/xwinwrap ]; then - rm /bin/xwinwrap -fi - -if [ -f /bin/gwinwrap ]; then - rm /bin/gwinwrap -fi - -if [ -d /opt/GWinWrap ]; then - rm -rf /opt/GWinWrap -fi - -if [ -x "`which xdg-desktop-menu 2>/dev/null`" ]; then - xdg-desktop-menu uninstall /usr/share/applications/GWinWrap.desktop - xdg-desktop-menu forceupdate --mode user -fi diff --git a/src/debs/gwinwrap-0-0-1-x64/bin/gwinwrap b/src/debs/gwinwrap-0-0-1-x64/bin/gwinwrap deleted file mode 100755 index fe880e0f8cada85e9f3ed05334a9508d6ad4723d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6168 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 DjE;QH diff --git a/src/debs/gwinwrap-0-0-1-x64/usr/share/applications/GWinWrap.desktop b/src/debs/gwinwrap-0-0-1-x64/usr/share/applications/GWinWrap.desktop deleted file mode 100644 index 157de6e..0000000 --- a/src/debs/gwinwrap-0-0-1-x64/usr/share/applications/GWinWrap.desktop +++ /dev/null @@ -1,9 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Name=GWinWrap -Comment=Glade gui with python controls for XWinWrap -Exec=/bin/gwinwrap -Icon=/opt/GWinWrap/resources/icons/GWinWrap.png -Terminal=false -Type=Application -Categories=System; diff --git a/src/debs/gwinwrap-0-0-1-x64/usr/share/doc/gwinwrap/copyright b/src/debs/gwinwrap-0-0-1-x64/usr/share/doc/gwinwrap/copyright deleted file mode 100644 index 53b78e8..0000000 --- a/src/debs/gwinwrap-0-0-1-x64/usr/share/doc/gwinwrap/copyright +++ /dev/null @@ -1,22 +0,0 @@ -GWinWrap is copyright 2016, 2017 Maxim Stewart. -GWinWrap is currently developed by ITDominator <1itdominator@gmail.com>. - -License: GPLv2+ - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. - -See /usr/share/common-licenses/GPL-2, or - for the terms of the latest version -of the GNU General Public License. diff --git a/src/versions/0.0.1/gwinwrap_exec_bin.cpp b/src/gwinwrap_exec_bin.cpp similarity index 100% rename from src/versions/0.0.1/gwinwrap_exec_bin.cpp rename to src/gwinwrap_exec_bin.cpp diff --git a/src/versions/0.0.1/GWinWrap/GWinWrap.py b/src/versions/0.0.1/GWinWrap/GWinWrap.py deleted file mode 100755 index cf62815..0000000 --- a/src/versions/0.0.1/GWinWrap/GWinWrap.py +++ /dev/null @@ -1,380 +0,0 @@ -#!/usr/bin/env python - -import os, cairo, sys, gi, re, threading, subprocess, hashlib, signal, time - -gi.require_version('Gtk', '3.0') -gi.require_version('Gdk', '3.0') - -from gi.repository import Gtk as gtk, Gdk as gdk, GObject as gobject, GdkPixbuf - -from os import listdir -from os.path import isfile, join -from threading import Thread - -from utils import SaveStateToXWinWarp, SaveGWinWrapSettings - -gdk.threads_init() - - -class GWinWrap: - def __init__(self): - self.builder = gtk.Builder() - self.builder.add_from_file("resources/GWinWrap.glade") - self.builder.connect_signals(self) - - # Get window and connect signals - self.stateSaver = SaveStateToXWinWarp() - self.sttngsSver = SaveGWinWrapSettings() - window = self.builder.get_object("Main") - monitors = self.setWindowData(window) - window.connect("delete-event", gtk.main_quit) - - print(monitors[1]) - - # Add filter to allow only folders to be selected - dialog = self.builder.get_object("selectedDirDialog") - filefilter = self.builder.get_object("Folders") - dialog.add_filter(filefilter) - - # Get reference to remove and add it back... - self.gridLabel = self.builder.get_object("gridLabel") - - self.focusedImg = gtk.Image() - self.usrHome = os.path.expanduser('~') - self.xScreenVal = None - self.toSavePath = None # Global file path and type for saving to file - self.applyType = 1 # 1 is XWinWrap and 2 is Nitrogen - - self.loadProgress = self.builder.get_object("loadProgress") - self.helpLabel = self.builder.get_object("helpLabel") - self.defaultLabel = "Note: Double click an image to view the video or image." - self.savedLabel = "Saved settings..." - self.appliedLabel = "Running xwinwrap..." - self.stoppedLabel = "Stopped xwinwrap..." - # foreground=\"#ffa800\" - # foreground=\"#88cc27\" - # foreground=\"#ff0000\" - - # Fill list xscreensaver - self.xscrPth = "/usr/lib/xscreensaver/" - xscreenList = self.builder.get_object("XScreensaver List") - list = [f for f in listdir(self.xscrPth) if isfile(join(self.xscrPth, f))] - list.sort() - - for file in list: - xscreenList.append((file,)) - - self.selectedImg = None # EventBox holder - self.defPath = None - self.player = None - self.imgVwr = None - self.demoAreaPid = None - - self.retrieveSettings() - window.show() - - def setWindowData(self, window): - screen = window.get_screen() - visual = screen.get_rgba_visual() - if visual != None and screen.is_composited(): - window.set_visual(visual) - - window.set_app_paintable(True) - window.connect("draw", self.area_draw) - - # bind css file - cssProvider = gtk.CssProvider() - cssProvider.load_from_path('resources/stylesheet.css') - screen = gdk.Screen.get_default() - styleContext = gtk.StyleContext() - styleContext.add_provider_for_screen(screen, cssProvider, gtk.STYLE_PROVIDER_PRIORITY_USER) - - return self.getMonitorData(screen) - - def area_draw(self, widget, cr): - cr.set_source_rgba(0, 0, 0, 0.64) - cr.set_operator(cairo.OPERATOR_SOURCE) - cr.paint() - cr.set_operator(cairo.OPERATOR_OVER) - - def getMonitorData(self, screen): - monitors = [] - wxhxny = [] - - for m in range(screen.get_n_monitors()): - monitors.append(screen.get_monitor_geometry(m)) - - wxhxny.append(monitors) - for monitor in monitors: - wxhxny.append(str(monitor.width) + "x" + str(monitor.height) + "+" + str(monitor.x) + "+" + str(monitor.y)) - - return wxhxny - - - def setNewDir(self, widget, data=None): - dir = widget.get_filename() - Thread(target=self.newDir, args=(dir,)).start() - - def newDir(self, dir): - imageGrid = self.builder.get_object("imageGrid") - dirPath = dir - list = [f for f in listdir(dirPath) if isfile(join(dirPath, f))] - files = [] - row = 0 - col = 0 - - for file in list: - if file.lower().endswith(('.mkv', '.avi', '.flv', '.mov', '.m4v', '.mpg', '.wmv', '.mpeg', '.mp4', '.webm', '.png', '.jpg', '.jpeg', '.gif')): - files.append(file) - - fractionTick = 1.0 / 1.0 if len(files) == 0 else len(files) - tickCount = 0.0 - self.clear() - imageGrid.remove_column(0) - self.loadProgress.set_text("Loading...") - self.loadProgress.set_fraction(0.0) - self.helpLabel.set_markup("" + dirPath.strip(self.usrHome) + "") - for file in files: - fullPathFile = dirPath + "/" + file - eveBox = gtk.EventBox() - thumbnl = gtk.Image() - - if file.lower().endswith(('.mkv', '.avi', '.flv', '.mov', '.m4v', '.mpg', '.wmv', '.mpeg', '.mp4', '.webm')): - fileHash = hashlib.sha256(str.encode(fullPathFile)).hexdigest() - hashImgpth = self.usrHome + "/.thumbnails/normal/" + fileHash + ".png" - if isfile(hashImgpth) == False: - self.generateThumbnail(fullPathFile, hashImgpth) - - thumbnl = self.createGtkImage(hashImgpth, [310, 310]) - eveBox.connect("button_press_event", self.runMplayerProcess, (fullPathFile, file, eveBox,)) - eveBox.connect("enter_notify_event", self.mouseOver, ()) - eveBox.connect("leave_notify_event", self.mouseOut, ()) - elif file.lower().endswith(('.png', '.jpg', '.jpeg', '.gif')): - thumbnl = self.createGtkImage(fullPathFile, [310, 310]) - eveBox.connect("button_press_event", self.runImageViewerProcess, (fullPathFile, file, eveBox,)) - eveBox.connect("enter_notify_event", self.mouseOver, ()) - eveBox.connect("leave_notify_event", self.mouseOut, ()) - else: - print("Not a video or image file.") - return - - gobject.idle_add(self.preGridSetup, (eveBox, thumbnl, )) - gobject.idle_add(self.addToGrid, (imageGrid, eveBox, col, row,)) - tickCount = tickCount + fractionTick - self.loadProgress.set_fraction(tickCount) - - col += 1 - if col == 2: - col = 0 - row += 1 - - self.loadProgress.set_text("Finished...") - - def preGridSetup(self, args): - args[0].show() - args[1].show() - args[0].add(args[1]) - - def addToGrid(self, args): - args[0].attach(args[1], args[2], args[3], 1, 1) - - def generateThumbnail(self, fullPathFile, hashImgpth): - subprocess.call(["ffmpegthumbnailer", "-t", "65%", "-s", "300", "-c", "jpg", "-i", fullPathFile, "-o", hashImgpth]) - - def createGtkImage(self, path, wxh): - try: - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale( - filename = path, - width = wxh[0], - height = wxh[1], - preserve_aspect_ratio = True) - return gtk.Image.new_from_pixbuf(pixbuf) - except Exception as e: - print(e) - - return gtk.Image() - - - def openMainImageViewer(self, widget): - subprocess.call([self.imgVwr, self.toSavePath]) - - def runImageViewerProcess(self, widget, eve, params): - self.setSelected(params[2]) - - if eve.type == gdk.EventType.DOUBLE_BUTTON_PRESS: - previewWindow = self.builder.get_object("previewWindow") - previewImg = self.builder.get_object("previewImg") - previewImg.set_from_file(params[0]) - previewWindow.show_all() - previewWindow.popup() - - self.toSavePath = params[0] - self.applyType = 2 - self.helpLabel.set_markup("" + params[1] + "") - - def setSelected(self, eveBox): - if self.selectedImg: - col = gdk.RGBA(0.0, 0.0, 0.0, 0.0) - self.selectedImg.override_background_color(gtk.StateType.NORMAL, col) - - col = gdk.RGBA(0.9, 0.7, 0.4, 0.74) - eveBox.override_background_color(gtk.StateType.NORMAL, col) - self.selectedImg = eveBox - - def closePopup(self, widget): - self.builder.get_object("previewWindow").popdown() - - def mouseOver(self, widget, eve, args): - hand_cursor = gdk.Cursor(gdk.CursorType.HAND2) - self.builder.get_object("Main").get_window().set_cursor(hand_cursor) - - def mouseOut(self, widget, eve, args): - watch_cursor = gdk.Cursor(gdk.CursorType.LEFT_PTR) - self.builder.get_object("Main").get_window().set_cursor(watch_cursor) - - def toggleXscreenUsageField(self, widget, data=None): - useXscreenSaver = self.builder.get_object("useXScrnList") - if useXscreenSaver.get_active(): - self.builder.get_object("xScreenSvrList").set_sensitive(True) - else: - self.builder.get_object("xScreenSvrList").set_sensitive(False) - - def popSttingsWindow(self, widget): - self.builder.get_object("settingsWindow").popup() - - def saveToSettingsFile(self, widget): - self.defPath = self.builder.get_object("customDefaultPath").get_text().strip() - self.player = self.builder.get_object("customVideoPlyr").get_text().strip() - self.imgVwr = self.builder.get_object("customImgVwr").get_text().strip() - - self.sttngsSver.saveSettings(self.defPath, self.player, self.imgVwr) - - def retrieveSettings(self): - data = self.sttngsSver.retrieveSettings() - self.defPath = data[0] - self.player = data[1] - self.imgVwr = data[2] - - self.builder.get_object("customDefaultPath").set_text(self.defPath) - self.builder.get_object("customVideoPlyr").set_text(self.player) - self.builder.get_object("customImgVwr").set_text(self.imgVwr) - self.builder.get_object("selectedDirDialog").set_filename(self.defPath) - - def saveToFile(self, widget, data=None): - saveLoc = self.builder.get_object("saveLoc").get_active_text() - useXscreenSaver = self.builder.get_object("useXScrnList").get_active() - plyBckRes = self.builder.get_object("playbackResolution") - offset4Res = self.builder.get_object("posOffset") - resolution = plyBckRes.get_active_text() + offset4Res.get_active_text() - self.applyType = self.stateSaver.saveToFile(self.toSavePath, resolution, - saveLoc, useXscreenSaver, self.xScreenVal) - if self.applyType == -1: - self.helpLabel.set_markup("Nothing saved...") - return - - self.helpLabel.set_markup(self.savedLabel) - - def applySttngs(self, widget, data=None): - os.system("killall xwinwrap &") - if self.applyType == 1: - os.system("bash -c '~/.animatedBGstarter.sh' &") - os.system("bash -c '~/.animatedBGstarter2.sh' &") - elif self.applyType == 2: - os.system("nitrogen --restore &") - else: - os.system("nitrogen --restore &") - self.helpLabel.set_markup(self.appliedLabel) - - def killXWinWrp(self, widget, data=None): - os.system("killall xwinwrap &") - self.helpLabel.set_markup(self.stoppedLabel) - - def passXScreenVal(self, widget): - xSvrListStore = self.builder.get_object("XScreensaver List") - row = widget.get_cursor() - path = gtk.TreePath(row.path) - treeiter = xSvrListStore.get_iter(path[0]) - self.xScreenVal = xSvrListStore.get_value(treeiter, 0) - - - def runMplayerProcess(self, widget, eve, params): - self.setSelected(params[2]) - video = params[0] - - if eve.type == gdk.EventType.DOUBLE_BUTTON_PRESS: - if self.player == "mplayer": - xid = self.getXID() - command = [self.player, video, "-slave", "-wid", str(xid), "-really-quiet", "-ao", "null", "-loop", "0"] - self.runDemoToDrawArea(command) - else: - subprocess.call([self.player, video, "-really-quiet", "-ao", "null", "-loop", "0"]) - - self.toSavePath = params[0] - self.applyType = 1 - self.helpLabel.set_markup("" + params[1] + "") - - def previewXscreen(self, widget, eve): - if eve.type == gdk.EventType.DOUBLE_BUTTON_PRESS: - demoXscrnSaver = self.xscrPth + self.xScreenVal - xid = self.getXID() - command = [demoXscrnSaver, "-window-id", str(xid)] - self.runDemoToDrawArea(command) - - def getXID(self): - # Must be actualized before getting window - demoWindowPopup = self.builder.get_object("demoPreviewPopWindow") - - if demoWindowPopup.get_visible() == False: - demoWindowPopup.show_all() - demoWindowPopup.popup() - - demoPreview = self.builder.get_object("demoPreview") - drwWindow = demoPreview.get_window() - return drwWindow.get_xid() - - def runDemoToDrawArea(self, command): - self.helpLabel.set_markup("") - - if self.demoAreaPid: - os.kill(self.demoAreaPid, signal.SIGTERM) #or signal.SIGKILL - self.demoAreaPid = None - - time.sleep(.800) # 800 mili-seconds to ensure first process dead - process = subprocess.Popen(command) - self.demoAreaPid = process.pid - - def closeDemoWindow(self, widget, data=None): - self.builder.get_object("demoPreviewPopWindow").popdown() - os.kill(self.demoAreaPid, signal.SIGTERM) #or signal.SIGKILL - self.demoAreaPid = None - - def clearSelection(self, widget, data=None): - self.clear() - - def clear(self): - imageGrid = self.builder.get_object("imageGrid") - - while True: - if imageGrid.get_child_at(0,0)!= None: - imageGrid.remove_row(0) - else: - break - - imageGrid.attach(self.gridLabel, 0, 0, 1, 1) - self.builder.get_object("xScreenSvrList").set_sensitive(False) - self.builder.get_object("useXScrnList").set_active(False) - self.helpLabel.set_markup(self.defaultLabel) - self.loadProgress.set_text("") - self.loadProgress.set_fraction(0.0) - self.toSavePath = None - self.xScreenVal = None - self.applyType = 1 # Default to XWinWrap - - def closeProgram(self, widget, data=None): - sys.exit(0) - - - -if __name__ == "__main__": - main = GWinWrap() - gtk.main() diff --git a/src/versions/0.0.1/GWinWrap/resources/GWinWrap.glade b/src/versions/0.0.1/GWinWrap/resources/GWinWrap.glade deleted file mode 100644 index 5ec4874..0000000 --- a/src/versions/0.0.1/GWinWrap/resources/GWinWrap.glade +++ /dev/null @@ -1,883 +0,0 @@ - - - - - - - inode/directory - - - - - - - - - - True - False - gtk-clear - 3 - - - True - False - gtk-quit - 3 - - - True - False - gtk-cancel - 3 - - - True - False - gtk-jump-to - 3 - - - True - False - gtk-save - 3 - - - True - False - gtk-save - 3 - - - True - False - Settings.... - gtk-properties - 3 - - - True - False - gtk-media-play - 3 - - - True - False - gtk-media-stop - 3 - - - 950 - 600 - False - GWinWrap - center - 950 - 600 - icons/GWinWrap.png - center - - - - - - True - False - - - True - False - 15 - 15 - 15 - vertical - - - True - False - 5 - - - True - False - 15 - Note: Double click an image to view the video or image. - - - True - True - 0 - - - - - True - False - Chose Dream Scene / Image Directory - select-folder - False - Folders - Dream Scene / Image Dir - - - - False - True - 1 - - - - - True - True - True - settingsImage - True - - - - False - True - 2 - - - - - False - True - 0 - - - - - True - False - True - - - False - True - 1 - - - - - True - True - in - - - True - False - - - True - False - vertical - 10 - 10 - True - True - - - 640 - 525 - True - False - Choose Image/Video Directory... - - - - - - 0 - 0 - - - - - - - - - True - True - 2 - - - - - Clear - True - True - True - clearImage - True - - - - False - True - 3 - - - - - True - True - 0 - - - - - 300 - True - False - 10 - 15 - 15 - 15 - False - vertical - - - True - False - vertical - - - Use XScreenSaver - True - True - False - center - 5 - True - - - - False - True - 0 - - - - - True - True - in - - - True - False - True - XScreensaver List - False - - - - - - - - XScreensaves - - - - 0 - - - - - - - - - True - True - 1 - - - - - True - True - 0 - - - - - True - False - False - vertical - - - True - False - vertical - - - True - False - - - True - False - 10 - 10 - Playback Resolutions - - - True - True - 0 - - - - - True - False - 10 - 10 - Position Offset - - - True - True - 1 - - - - - False - True - 0 - - - - - True - False - - - True - False - 3 - - 7680x4320 - 3840x2160 - 2048x1080 - 1920x1080 - 1440x720 - 1600x900 - 1280x720 - 800x600 - - - - True - True - 0 - - - - - True - False - 18 - - Left - -7680+0 - -3840+0 - -2048+0 - -1920+0 - -1440+0 - -1600+0 - -1280+0 - -800+0 - Right - +7680+0 - +3840+0 - +2048+0 - +1920+0 - +1440+0 - +1600+0 - +1280+0 - +800+0 - +0+0 - Top - +0+7680 - +0+3840 - +0+2048 - +0+1920 - +0+1440 - +0+1600 - 0+1280 - +0+800 - Bottum - +0-7680 - +0-3840 - +0-2048 - +0-1920 - +0-1440 - +0-1600 - 0-1280 - +0-800 - - - - True - True - 1 - - - - - False - True - 1 - - - - - False - True - 0 - - - - - True - False - vertical - - - True - False - 10 - 5 - Save Path - - - True - True - 0 - - - - - True - False - 0 - - .animatedBGstarter.sh - .animatedBGstarter2.sh - - - - True - True - 1 - - - - - False - True - 1 - - - - - True - False - - - Save - True - True - True - True - True - saveImage - True - - - - 1 - 0 - - - - - (Re)Start - True - True - True - True - True - startImage - True - - - - 0 - 0 - - - - - Stop - True - True - True - True - True - stopImage - True - - - - 0 - 1 - - - - - Close - True - True - True - True - True - closeImage - True - - - - 1 - 1 - - - - - False - True - 2 - - - - - False - False - end - 1 - - - - - False - True - 1 - 1 - - - - - - - 640 - 525 - False - 350 - True - True - helpLabel - bottom - False - - - True - False - vertical - - - True - False - - - True - True - True - Close Demo Window - closePopupImage - True - - - - False - True - end - 0 - - - - - False - True - 0 - - - - - True - False - 0 - none - - - True - False - - - - - True - True - 1 - - - - - - - 640 - 525 - False - True - True - helpLabel - bottom - - - True - False - vertical - - - True - False - bottom - - - Main Image Viewer - True - True - True - openProgImage - True - - - - False - True - 0 - - - - - True - True - True - True - - - - False - True - 1 - - - - - False - True - 0 - - - - - True - True - in - False - - - True - False - - - True - False - gtk-missing-image - 6 - - - - - - - True - True - 1 - - - - - - - 250 - False - button1 - - - True - False - vertical - - - True - False - - - True - False - icons/folder.png - - - False - True - 0 - - - - - 330 - 26 - True - True - Set Custom Default Path - Set Custom Default Path - - - False - True - 1 - - - - - False - True - 0 - - - - - True - False - - - True - False - icons/player.png - - - False - True - 0 - - - - - 330 - 26 - True - True - Set Custom Video Player - Set Custom Video Player - - - False - True - 1 - - - - - False - True - 1 - - - - - True - False - - - True - False - icons/picture.png - - - False - True - 0 - - - - - 330 - 26 - True - True - Set Custom Image Viewer - Set Custom Image Viewer - - - False - True - 1 - - - - - False - True - 2 - - - - - Save - True - True - True - saveImag - True - - - - False - True - 3 - - - - - - diff --git a/src/versions/0.0.1/GWinWrap/resources/icons/GWinWrap.png b/src/versions/0.0.1/GWinWrap/resources/icons/GWinWrap.png deleted file mode 100644 index cdd708d16faef991c910643670ab5cc4abfc605b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9278 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 diff --git a/src/versions/0.0.1/GWinWrap/resources/icons/player.png b/src/versions/0.0.1/GWinWrap/resources/icons/player.png deleted file mode 100644 index 4f5ebda47ea6229b630a2a3af02fa59e99c678f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6535 zcmV;28F=Q2P)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000iMNklQ=&+Uq9sd-ELHL&uKY;i!bsA(aqJ>!&;)G) z1OLoC`lo1MAVD9gvr(V+p<04xJo0&p6@JOIyrH;}1WDbrTD zE)5X8NB=JYq`Z24Ku9?%r5pw@XpG4MND+|)Ac%;YzIUw#1DFNymNiJ#8o~ph5|rkv zHGosd=QEjXPhYiC9h$p1GeIOarqk)sbSB;Jx+x=sFj{M;-9$nNO++k&2!%7o2moMa zV&-7Q*>N1@x~?ar)I@@telLzf`SO%C74!3=9m;XL@=rTTk&K9-FAB z(~bL|Ix*Gr&dC$E*6X!B7iVVfFBTT>tW+vnl;`z6@Ue$ZkBp8<$8m&GO8eiUb`K=0 zfnY#@Sz0%5_7LBli8RH-4MarDEZ7*Kv?8zWiKV3yUOMo@jeY$CQ_SXcUtj-E`UeIM z-FN?o-rBKi_o6k1NeYEd9w08xOsA*berwaI6O*5szHs3&qxA#{p^Vm<;HKaH-AC|$ zVeEb8pTJ-!PeDovV~lZK_t3WYZvXo2ckX#{WOOut^S1YR%|>YF0rKVl{NegHj=cV1 z<#~^m%jG>lo| zfs=+|BaPO*#X{ke7tWu1;@|)6JMVASx!C}8{MZ}L-lw1XIEWs1U3VQJ{zNHcvLHlj zvclaOlffVhDMSS2dH3Yz=N^4w|93}h21_)6-23!X!{u`MbJ=WmunECq*+grdm@01c z2$gPx@xTv0dU1AUsI37`otXMy%5^``P&iCi9aW9u!CDVv!%_+f?(7xL z$*IXd*#GRlZHXZG+QA>Yl}hDT$twT8J$ECU?EwH}GCf#aT*R@XhhvjYUpSA=TW$t} zz$@Ux^-eafa&w+Ec!P(;FY2?7a%bR>ob*I63t|2sML_LGSoaQ@x1+oR8MT{i|guIsh{-^r;d6beOr=$C&5 zj^hH%5K_P}!)OgQ3=#w(B!nP;l?>ZRYCtU8A4Cm+HOvj{iO69LLwR*ns#P32au_qy z7h+<$t{V$U$8|zrWN>tjZ_^Cs6s4aFG1u{Ymno0YWDaqoy;Tv{sq zRyv(ob;{uc?4@gz7#ZA^3^Ag_oLGb~Gqh6h>h)v;)T&hgfaiIMl!80udq%{~B7#%f zMZ4k}ILf=Y$pg@VC@IfFrBXq)T4`f|S`A>1Stx2_YK!awAi#B;>z?+g0Y6}HgOGK> z5WRXG)k+1GN*e=crBDNq&o5wjWCQ~PgJ>p1LD3V<1X2iOdwY@T$#g5r6)(RK0wf4p zY1Ha9lrLYlV8{T8#D{CGQ7)H}o6n(AE<-C-Y+DVoG04r&p})T$4?Oq~1_m3se=(oO zn@0{eA+*FDckV&9uNNCOjKc9tQ4kRvn>HQCfsoSA8pebMY-9k2Qa(5dn>_+Ogb+5o z7*a|AjC$Pz8-q%C^b$f9%KX%msML>)a4w zW|RsAoI86Ko>xb$T17gOfe-@ghlg9Nd+!H-3AgOn*>#oXE0L7y-0n+Wdv9-FABKlF zU~J-*X1m-W!VlltaLfM_xg3dR6vABq0VG*@z6=NI6A=7Dp zHJbF?`3t+60<<0K(bb_}Q>nu+VB>oc5yc*x$@D-eFI*HM1>95$%q9TOp^gm^W`^=S zTsU_Q6E|%}u~0y^H;bjx5|&COxULI9IF%M>DB2tkKcjunq-e>+1LI|W%X*jNfo}Mg**00CV&^lzZ zyIP?RjuhDdgtop|nD&P{eBoU%{nP0kvAqUrcQv1togtih0Wz zgIcYMS`Da_%eZ{$67snm`UeI=R}0;f{FF%7u{pwEfC6JFlyB*vc0{?=W^XL zQFm1ykc1D>6>jDUYZC&1)_(4nj*Q7rtyYl9^t3H2qV2F&15hXa#fcy%1l<4w5ZDNi zBVe@hWeEBawky;o3OgHsR%GCSw%r$L6~8eaKwv4s%zj1^B9uLoPJy{q7rzweloZrG z2tM+AkH;9*%*-^Ne)1n;4bgVQ=DIgM36^oDLK(F2+2W@^`&qnq`*yoP5_5AG@z39U z2FuIKtIGnLCMLjaLYA~?Vgg3%m~{n-8;}M87zPOeX48Bl#O2^ypQ z-i1;~rBZnKBloXro>OxrT16IUKcZQH)?j-qFaX$qi6Dq#Szxu}s#`c~o(6-1Dnfv5 z7P=Z4uG#>>X6afpL4r?sjL=slLqb2G!_96Q^;$K?{%#Bt1pEUg2sd1=H2R$6-Z>|x z4CU2Y6uwclfZx4V5G1Zo2#}EY{V#kO6I(WizneaP9)I`MC%SBaT;FPth~PL9TB(=} zuIu8l&wmMy>)O_sL}mFh{^C#nsCxrQLC{L!CaZk#fUVoM-FOfT%3;GGDZxg^Wbix> zH*MbRr(|XrtrPCB31W?S00A%r5Hnmi1rj1A zSG`_GI+F>@cf;JaKhQP=v^H4CRMy! ze|{Rf_U@T8*uG;&_<1ft?v7Mg+wJSGedVu`TLY1C^z}oy>)v};*Z2%mSpt?su5rM@ zo3JK0ctzx=;pe`yuh9=6fv3Om^%dprSPVH~TA|jiK+{S+`L|!iCqDI?*mc_-7+yb& zY+tXx;Q>Ht4W&G&x(5;huIq$PVtbB22-z|x5!v3KRW|4bvcD1IIxgzX5Q~dK0S!c8w2RQ4kxuWfkoHB%K#*=i)(IJql#~{e1v{QfaB>+UVFQ zz<}q~VGOWTDqPX|q{-PLb;Sgu4-b@RR)*Q%q`cyTQq0i7oXjW|icP%4gf2QeGZVTa zN9AJEa*(23Tdyk+%w#gCRBQf*W4KZjc7visNeY5Cj4LLEQE%y%R}gHohHPVmR;WmM zby=WVt>Vjn{Abv_WeXg~fz}%5-hDS27~3=(u765wERHq?t~K5l{_sz*b=x*bDWSE- z*)wPGH&6Wa>WiVxTekS8EbS4Mo40Q5syd9O!)OQvA;Q7?DpOy(`vXOTar4%#v2aZy zaP186Z2+GMJ}l<*7~ZfUMCRtxq2VNs6ABS+l6HzorBrx5l}e*tuf?uKzaLy@OV)@0 z>AJX7DupRAdV(#OJD4Xp`4SmlYG;6Rv6k4vd<@v?v6CYKDsRN@TW`ajd*2^Eu-!_f z(rK_UO-FE6=K+r6z;zvzm&?d6%;SwChjHd-Ka0us&dHOwW#`U_9t+I{UbS5s{0#vA zx*DM#c<>=S`uGERJox;r$0=XsEh+agEfY!N?CL}x>cYI^1(fInZ20Y*l~;CUX5 z?ZFEn!k3h?BF9|3obQlNLcVy4NS+|B+Q92IK*} zvKj;Q4Ggq!^tCLFg^-9Iw@h_D=XeOfi%|nKdw>FP48Y%a-=thSg~M`~D8vXML@Wa& zEkGppj{`U~Ia}0;9xypu0ANorGB><0DVhL=TMDbXbe!lG_yGWucJ=>za<*9SSPmzRUE@OnzzBd3 z1Grx)^*(0q**Lx_yKDEYsRusx(7Jm*aNmGZnrqbxJFW|(HH4IK9fvYKJwi%JN$E}- z!^T#TYz6VpB-L0e#kR`iq||8Ga5|l)^767i{m!ZCs|R1X{QUm!=IixZt*0kD4d6!r t_5(QIyy~km!2kCl@N+(X?hWw20{|>%TF~k*h3NnQ002ovPDHLkV1kwwJ(d6f diff --git a/src/versions/0.0.1/GWinWrap/resources/stylesheet.css b/src/versions/0.0.1/GWinWrap/resources/stylesheet.css deleted file mode 100644 index b1a267d..0000000 --- a/src/versions/0.0.1/GWinWrap/resources/stylesheet.css +++ /dev/null @@ -1,3 +0,0 @@ -window { - -} \ No newline at end of file diff --git a/src/versions/0.0.1/GWinWrap/utils/SaveGWinWrapSettings.py b/src/versions/0.0.1/GWinWrap/utils/SaveGWinWrapSettings.py deleted file mode 100644 index a26fbb5..0000000 --- a/src/versions/0.0.1/GWinWrap/utils/SaveGWinWrapSettings.py +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env python - -import os, json - -class SaveGWinWrapSettings: - def __init__(self): - configFolder = os.path.expanduser('~') + "/.config/gwinwrap/" - self.configFile = configFolder + "settings.ini" - - if os.path.isdir(configFolder) == False: - os.mkdir(configFolder) - - if os.path.isfile(self.configFile) == False: - open(self.configFile, 'a').close() - - - def saveSettings(self, defPath, player, imgVwr): - data = {} - data['gwinwrap_settings'] = [] - - data['gwinwrap_settings'].append({ - 'defPath' : defPath, - 'player' : player, - 'imgvwr' : imgVwr - }) - - with open(self.configFile, 'w') as outfile: - json.dump(data, outfile) - - - def retrieveSettings(self): - returnData = [] - - with open(self.configFile) as infile: - try: - data = json.load(infile) - for obj in data['gwinwrap_settings']: - returnData = [obj['defPath'], obj['player'], obj['imgvwr']] - except Exception as e: - returnData = ['', 'mplayer', 'xdg-open'] - - - if returnData[0] == '': - returnData[0] = '' - - if returnData[1] == '': - returnData[1] = 'mplayer' - - if returnData[2] == '': - returnData[2] = 'xdg-open' - - return returnData diff --git a/src/versions/0.0.1/GWinWrap/utils/SaveStateToXWinWarp.py b/src/versions/0.0.1/GWinWrap/utils/SaveStateToXWinWarp.py deleted file mode 100644 index ee0045d..0000000 --- a/src/versions/0.0.1/GWinWrap/utils/SaveStateToXWinWarp.py +++ /dev/null @@ -1,65 +0,0 @@ -#!/usr/bin/env python - -import os - -class SaveStateToXWinWarp: - def __init__(self): - self.fileWriter = None - self.toSavePath = None - self.useXSvrn = None - self.xScreenVal = None - self.sveFileLoc = None - self.resolution = None - - def saveToFile(self, toSavePath, resolution, - saveLoc, useXSvrn, xScreenVal): - - self.toSavePath = toSavePath - self.useXSvrn = useXSvrn - self.xScreenVal = xScreenVal - self.resolution = resolution - userPth = os.path.expanduser('~') - - # Saves to file with selected and needed settings - if toSavePath: - if toSavePath.lower().endswith(('.png', '.jpg', '.jpeg', '.gif')): - self.sveFileLoc = userPth + "/" + ".config/nitrogen/bg-saved.cfg" - else: - self.sveFileLoc = userPth + "/" + saveLoc - elif useXSvrn and xScreenVal: - self.sveFileLoc = userPth + "/" + saveLoc - else: - return -1 - - if self.sveFileLoc: - self.fileWriter = open(self.sveFileLoc, "w") - - return self.startSave() - - def startSave(self): - applyType = 1 - output = None - - print("XScreen: " + str(self.useXSvrn)) - print(self.fileWriter) - - # XSCREENSAVER - if self.useXSvrn: - output = "xwinwrap -ov -g " + self.resolution + " -st -sp -b -nf -s -ni -- /usr/lib/xscreensaver/" + self.xScreenVal + " -window-id WID -root"; - # GIF - elif self.toSavePath.lower().endswith(('.gif')): - output = "xwinwrap -ov -g " + self.resolution + " -st -sp -b -nf -s -ni -- gifview -a -w WID " + self.toSavePath; - # Standard images using nitrogen - elif self.toSavePath.lower().endswith(('.png', 'jpg', '.jpeg')): - output = "[xin_0] \n file=" + self.toSavePath + "\nmode=0 \nbgcolor=#000000\n[xin_1] \nfile=" + self.toSavePath + "\nmode=0 \nbgcolor=#000000"; - applyType = 2; - # VIDEO - else: - output = "xwinwrap -ov -g " + self.resolution + " -st -sp -b -nf -s -ni -- mplayer -wid WID -really-quiet -ao null -loop 0 '" + self.toSavePath + "'"; - pass - - if self.fileWriter: - self.fileWriter.write(output) - self.fileWriter.close() - - return applyType; diff --git a/src/versions/0.0.1/GWinWrap/utils/__init__.py b/src/versions/0.0.1/GWinWrap/utils/__init__.py deleted file mode 100644 index 579b043..0000000 --- a/src/versions/0.0.1/GWinWrap/utils/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -from utils.SaveStateToXWinWarp import SaveStateToXWinWarp -from utils.SaveGWinWrapSettings import SaveGWinWrapSettings\