From 41f7b7a2a38ca9f3929fcbd88d228b3815034876 Mon Sep 17 00:00:00 2001 From: monsta Date: Sat, 13 Jan 2018 13:54:33 +0300 Subject: drop broken invest-applet and all Python dependencies closes https://github.com/mate-desktop/mate-applets/issues/297 --- invest-applet/invest/applet.py | 199 ----------------------------------------- 1 file changed, 199 deletions(-) delete mode 100644 invest-applet/invest/applet.py (limited to 'invest-applet/invest/applet.py') diff --git a/invest-applet/invest/applet.py b/invest-applet/invest/applet.py deleted file mode 100644 index 82001ed3..00000000 --- a/invest-applet/invest/applet.py +++ /dev/null @@ -1,199 +0,0 @@ -import os, time -from os.path import * -import mate_invest.defs - -import gi -gi.require_version("Gtk", "3.0") - -from gi.repository import Gtk -from gi.repository import Gdk -from gi.repository import GdkPixbuf -from gi.repository import GObject -from gi.repository import MatePanelApplet - -GObject.threads_init() -from gettext import gettext as _ - -import mate_invest, mate_invest.about, mate_invest.chart, mate_invest.preferences -from mate_invest.quotes import QuoteUpdater -from mate_invest.widgets import * - -Gtk.Window.set_default_icon_from_file(join(mate_invest.ART_DATA_DIR, "invest_neutral.svg")) - -class InvestApplet(MatePanelApplet.Applet): - def __init__(self, applet): - self.applet = applet - - # name, stock_id, label, accellerator, tooltip, callback - menu_actions = [("About", Gtk.STOCK_ABOUT, _("About"), None, None, self.on_about), - ("Help", Gtk.STOCK_HELP, _("Help"), None, None, self.on_help), - ("Prefs", Gtk.STOCK_PREFERENCES, _("Preferences"), None, None, self.on_preferences), - ("Refresh", Gtk.STOCK_REFRESH, _("Refresh"), None, None, self.on_refresh) - ] - actiongroup = Gtk.ActionGroup.new("InvestAppletActions") - actiongroup.set_translation_domain(mate_invest.defs.GETTEXT_PACKAGE) - actiongroup.add_actions(menu_actions, None) - self.applet.setup_menu_from_file (join(mate_invest.defs.PKGDATADIR, "Invest_Applet.xml"), actiongroup) - - evbox = Gtk.HBox() - self.applet_icon = Gtk.Image() - self.set_applet_icon(0) - self.applet_icon.show() - evbox.add(self.applet_icon) - self.applet.add(evbox) - self.applet.connect("button-press-event", self.button_clicked) - self.applet.show_all() - self.new_ilw() - - def new_ilw(self): - self.quotes_updater = QuoteUpdater(self.set_applet_icon, - self.set_applet_tooltip) - self.investwidget = InvestWidget(self.quotes_updater) - self.ilw = InvestmentsListWindow(self.applet, self.investwidget) - - def reload_ilw(self): - self.ilw.destroy() - self.new_ilw() - - def button_clicked(self, widget,event): - if event.type == Gdk.EventType.BUTTON_PRESS and event.button == 1: - # Three cases... - if len (mate_invest.STOCKS) == 0: - # a) We aren't configured yet - mate_invest.preferences.show_preferences(self, _("You have not entered any stock information yet")) - self.reload_ilw() - elif not self.quotes_updater.quotes_valid: - # b) We can't get the data (e.g. offline) - alert = Gtk.MessageDialog(buttons=Gtk.ButtonsType.CLOSE) - alert.set_markup(_("No stock quotes are currently available")) - alert.format_secondary_text(_("The server could not be contacted. The computer is either offline or the servers are down. Try again later.")) - alert.run() - alert.destroy() - else: - # c) Everything is normal: pop-up the window - self.ilw.toggle_show() - - def on_about(self, action): - mate_invest.about.show_about() - - def on_help(self, action): - mate_invest.help.show_help() - - def on_preferences(self, action): - mate_invest.preferences.show_preferences(self) - self.reload_ilw() - - def on_refresh(self, action): - self.quotes_updater.refresh() - - def set_applet_icon(self, change): - if change == 1: - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(join(mate_invest.ART_DATA_DIR, "invest-22_up.png"), -1,-1) - elif change == 0: - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(join(mate_invest.ART_DATA_DIR, "invest-22_neutral.png"), -1,-1) - else: - pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(join(mate_invest.ART_DATA_DIR, "invest-22_down.png"), -1,-1) - self.applet_icon.set_from_pixbuf(pixbuf) - - def set_applet_tooltip(self, text): - self.applet_icon.set_tooltip_text(text) - -class InvestmentsListWindow(Gtk.Window): - def __init__(self, applet, list): - Gtk.Window.__init__(self, type=Gtk.WindowType.TOPLEVEL) - self.set_type_hint(Gdk.WindowTypeHint.DOCK) - self.stick() - self.set_resizable(False) - self.set_border_width(6) - - self.applet = applet # this is the widget we want to align with - self.alignment = self.applet.get_orient () - - self.add(list) - list.show() - - # boolean variable that identifies if the window is visible - # show/hide is triggered by left-clicking on the applet - self.hidden = True - - def toggle_show(self): - if self.hidden == True: - self.update_position() - self.show_all() - self.hidden = False - elif self.hidden == False: - self.hide() - self.hidden = True - - def update_position (self): - """ - Calculates the position and moves the window to it. - """ - self.realize() - - # Get our own dimensions & position - #(wx, wy) = self.get_origin() - - window = self.applet.get_window() - screen = window.get_screen() - monitor = screen.get_monitor_geometry (screen.get_monitor_at_window (window)) - (ret, ax, ay) = window.get_origin() - (ignored, ignored, aw, ah) = window.get_geometry() - - (ww, wh) = self.get_size() - - if self.alignment == MatePanelApplet.AppletOrient.LEFT: - x = ax - ww - y = ay - - if (y + wh > monitor.y + monitor.height): - y = monitor.y + monitor.height - wh - - if (y < 0): - y = 0 - - if (y + wh > monitor.height / 2): - gravity = Gdk.Gravity.SOUTH_WEST - else: - gravity = Gdk.Gravity.NORTH_WEST - - elif self.alignment == MatePanelApplet.AppletOrient.RIGHT: - x = ax + aw - y = ay - - if (y + wh > monitor.y + monitor.height): - y = monitor.y + monitor.height - wh - - if (y < 0): - y = 0 - - if (y + wh > monitor.height / 2): - gravity = Gdk.Gravity.SOUTH_EAST - else: - gravity = Gdk.Gravity.NORTH_EAST - - elif self.alignment == MatePanelApplet.AppletOrient.DOWN: - x = ax - y = ay + ah - - if (x + ww > monitor.x + monitor.width): - x = monitor.x + monitor.width - ww - - if (x < 0): - x = 0 - - gravity = Gdk.Gravity.NORTH_WEST - elif self.alignment == MatePanelApplet.AppletOrient.UP: - x = ax - y = ay - wh - - if (x + ww > monitor.x + monitor.width): - x = monitor.x + monitor.width - ww - - if (x < 0): - x = 0 - - gravity = Gdk.Gravity.SOUTH_WEST - - self.move(x, y) - self.set_gravity(gravity) -- cgit v1.2.1