- Put all the setings windows together
This commit is contained in:
parent
45aeec4042
commit
377787ef29
6 changed files with 62 additions and 37 deletions
|
|
@ -14,12 +14,10 @@ import gi
|
|||
gi.require_version("Gtk", "3.0")
|
||||
from gi.repository import Gtk, GLib, Gio
|
||||
import select
|
||||
from .voice_settings import VoiceSettingsWindow
|
||||
from .text_settings import TextSettingsWindow
|
||||
from .settings_window import MainSettingsWindow
|
||||
from .voice_overlay import VoiceOverlayWindow
|
||||
from .text_overlay import TextOverlayWindow
|
||||
from .discord_connector import DiscordConnector
|
||||
from .general_settings import GeneralSettingsWindow
|
||||
import logging
|
||||
import pidfile
|
||||
import os
|
||||
|
|
@ -35,7 +33,7 @@ class Discover:
|
|||
def __init__(self, rpc_file, args):
|
||||
self.create_gui()
|
||||
self.connection = DiscordConnector(
|
||||
self.text_settings, self.voice_settings,
|
||||
self.settings.text_settings, self.settings.voice_settings,
|
||||
self.text_overlay, self.voice_overlay)
|
||||
self.connection.connect()
|
||||
GLib.timeout_add((1000 / 60), self.connection.do_read)
|
||||
|
|
@ -55,16 +53,8 @@ class Discover:
|
|||
pass
|
||||
elif "--about" in data:
|
||||
pass
|
||||
elif "--configure-general" in data:
|
||||
self.show_gsettings()
|
||||
elif "--configure-voice" in data:
|
||||
self.show_vsettings()
|
||||
elif "--configure-text" in data:
|
||||
self.show_tsettings()
|
||||
elif "--configure" in data:
|
||||
self.show_tsettings()
|
||||
self.show_vsettings()
|
||||
self.show_gsettings()
|
||||
self.show_settings()
|
||||
elif "--close" in data:
|
||||
sys.exit(0)
|
||||
|
||||
|
|
@ -80,9 +70,7 @@ class Discover:
|
|||
self.text_overlay = TextOverlayWindow(self)
|
||||
self.menu = self.make_menu()
|
||||
self.make_sys_tray_icon(self.menu)
|
||||
self.voice_settings = VoiceSettingsWindow(self.voice_overlay)
|
||||
self.text_settings = TextSettingsWindow(self.text_overlay)
|
||||
self.general_settings = GeneralSettingsWindow(self.text_overlay, self.voice_overlay)
|
||||
self.settings = MainSettingsWindow(self.text_overlay, self.voice_overlay)
|
||||
|
||||
def make_sys_tray_icon(self, menu):
|
||||
# Create AppIndicator
|
||||
|
|
@ -104,19 +92,13 @@ class Discover:
|
|||
def make_menu(self):
|
||||
# Create System Menu
|
||||
menu = Gtk.Menu()
|
||||
vsettings_opt = Gtk.MenuItem.new_with_label("Voice Settings")
|
||||
tsettings_opt = Gtk.MenuItem.new_with_label("Text Settings")
|
||||
gsettings_opt = Gtk.MenuItem.new_with_label("General Settings")
|
||||
settings_opt = Gtk.MenuItem.new_with_label("Settings")
|
||||
close_opt = Gtk.MenuItem.new_with_label("Close")
|
||||
|
||||
menu.append(vsettings_opt)
|
||||
menu.append(tsettings_opt)
|
||||
menu.append(gsettings_opt)
|
||||
menu.append(settings_opt)
|
||||
menu.append(close_opt)
|
||||
|
||||
vsettings_opt.connect("activate", self.show_vsettings)
|
||||
tsettings_opt.connect("activate", self.show_tsettings)
|
||||
gsettings_opt.connect("activate", self.show_gsettings)
|
||||
settings_opt.connect("activate", self.show_settings)
|
||||
close_opt.connect("activate", self.close)
|
||||
menu.show_all()
|
||||
return menu
|
||||
|
|
@ -126,14 +108,8 @@ class Discover:
|
|||
self.menu.popup(
|
||||
None, None, Gtk.StatusIcon.position_menu, obj, button, time)
|
||||
|
||||
def show_vsettings(self, obj=None, data=None):
|
||||
self.voice_settings.present()
|
||||
|
||||
def show_tsettings(self, obj=None, data=None):
|
||||
self.text_settings.present()
|
||||
|
||||
def show_gsettings(self, obj=None, data=None):
|
||||
self.general_settings.present()
|
||||
def show_settings(self, obj=None, data=None):
|
||||
self.settings.present()
|
||||
|
||||
def close(self, a=None, b=None, c=None):
|
||||
Gtk.main_quit()
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import logging
|
|||
|
||||
class GeneralSettingsWindow(SettingsWindow):
|
||||
def __init__(self, overlay, overlay2):
|
||||
Gtk.Window.__init__(self)
|
||||
Gtk.VBox.__init__(self)
|
||||
self.overlay = overlay
|
||||
self.overlay2 = overlay
|
||||
self.set_size_request(400, 200)
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ except ModuleNotFoundError:
|
|||
from xdg import XDG_CONFIG_HOME as xdg_config_home
|
||||
|
||||
|
||||
class SettingsWindow(Gtk.Window):
|
||||
class SettingsWindow(Gtk.VBox):
|
||||
def init_config(self):
|
||||
self.configDir = os.path.join(xdg_config_home, "discover_overlay")
|
||||
os.makedirs(self.configDir, exist_ok=True)
|
||||
|
|
|
|||
49
discover_overlay/settings_window.py
Normal file
49
discover_overlay/settings_window.py
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
from .voice_settings import VoiceSettingsWindow
|
||||
from .text_settings import TextSettingsWindow
|
||||
from .general_settings import GeneralSettingsWindow
|
||||
|
||||
import gi
|
||||
gi.require_version("Gtk", "3.0")
|
||||
import sys
|
||||
import os
|
||||
from gi.repository import Gtk, Gdk
|
||||
import logging
|
||||
|
||||
|
||||
class MainSettingsWindow(Gtk.Window):
|
||||
def __init__(self, text_overlay, voice_overlay):
|
||||
Gtk.Window.__init__(self)
|
||||
|
||||
self.connect("destroy", self.close_window)
|
||||
self.connect("delete-event", self.close_window)
|
||||
|
||||
self.text_overlay = text_overlay
|
||||
self.voice_overlay = voice_overlay
|
||||
|
||||
# Create
|
||||
nb = Gtk.Notebook()
|
||||
#nb.set_tab_pos(Gtk.POS_TOP)
|
||||
|
||||
self.voice_settings = VoiceSettingsWindow(self.voice_overlay)
|
||||
nb.append_page(self.voice_settings)
|
||||
nb.set_tab_label_text(self.voice_settings, "Voice")
|
||||
self.text_settings = TextSettingsWindow(self.text_overlay)
|
||||
nb.append_page(self.text_settings)
|
||||
nb.set_tab_label_text(self.text_settings, "Text")
|
||||
self.core_settings = GeneralSettingsWindow(self.text_overlay,self.voice_overlay)
|
||||
nb.append_page(self.core_settings)
|
||||
nb.set_tab_label_text(self.core_settings, "Core")
|
||||
self.add(nb)
|
||||
|
||||
def close_window(self,a=None,b=None):
|
||||
self.text_settings.close_window(a,b)
|
||||
self.voice_settings.close_window(a,b)
|
||||
self.core_settings.close_window(a,b)
|
||||
self.hide()
|
||||
return True
|
||||
|
||||
def present(self):
|
||||
self.voice_settings.present()
|
||||
self.text_settings.present()
|
||||
self.core_settings.present()
|
||||
self.show_all()
|
||||
|
|
@ -10,7 +10,7 @@ import logging
|
|||
|
||||
class TextSettingsWindow(SettingsWindow):
|
||||
def __init__(self, overlay):
|
||||
Gtk.Window.__init__(self)
|
||||
Gtk.VBox.__init__(self)
|
||||
self.overlay = overlay
|
||||
self.set_size_request(400, 200)
|
||||
self.connect("destroy", self.close_window)
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import logging
|
|||
|
||||
class VoiceSettingsWindow(SettingsWindow):
|
||||
def __init__(self, overlay):
|
||||
Gtk.Window.__init__(self)
|
||||
Gtk.VBox.__init__(self)
|
||||
self.overlay = overlay
|
||||
self.set_size_request(400, 200)
|
||||
self.connect("destroy", self.close_window)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue