/usr/share/pyshared/recordMyDesktop/rmdTrayPopup.py is in gtk-recordmydesktop 0.3.8-4.1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 | # -*- Mode: Python -*-
# vi:si:et:sw=4:sts=4:ts=4
#
# Istanbul - A desktop recorder
# Copyright (C) 2005 Zaheer Abbas Merali (zaheerabbas at merali dot org)
# Copyright (C) 2006 John N. Laliberte (allanonjl@gentoo.org) (jlaliberte@gmail.com)
# Portions Copyright (C) 2004,2005 Fluendo, S.L. (www.fluendo.com).
# All rights reserved.
# This file may be distributed and/or modified under the terms of
# the GNU General Public License version 2 as published by
# the Free Software Foundation.
# This file is distributed without any warranty; without even the implied
# warranty of merchantability or fitness for a particular purpose.
# See "COPYING" in the source distribution for more information.
#gtk-recordMyDesktop - a graphical frontend for recordMyDesktop
#Copyright (C) 2006 John Varouhakis
#This file has been modified to be used in gtk-recordMyDesktop
#original file name is tray_popup.py in istanbul-0.2.1
#25/11/2006: picked aboutdialog close-button fix from upstream Istanbul
import gtk
import locale, gettext
try:
import appindicator
has_indicator = True
except ImportError:
has_indicator = False
import rmdConfig
_ = gettext.gettext
gettext.textdomain('gtk-recordMyDesktop')
gettext.bindtextdomain('gtk-recordMyDesktop',rmdConfig.locale_install_dir)
import rmdSelect as iSel
import rmdPrefsWidget as pW
from rmdStrings import *
class TrayPopupMenu:
options=None
def __init__(self,parent,values,optionsOpen,tray_icon=None):
self.parent=parent
self.optionsOpen=optionsOpen
self.values=values
self.tray_icon=tray_icon
self._setup_popup_menu()
self.selector = None
self.popupmenu.show_all()
if has_indicator:
self.popupmenu_continueitem.hide()
self.popupmenu_stopitem.hide()
self.popupmenu_pauseitem.hide()
def _setup_popup_menu(self):
self.popupmenu = gtk.Menu()
if has_indicator:
self._setup_record()
self._setup_continue()
self._setup_stop()
self._setup_pause()
self._setup_prefs_widget()
self._setup_select_area()
self._setup_about()
self._setup_quit()
def _prefs_widget(self,button):
if self.optionsOpen[0] ==0:
self.optionsOpen[0]=1
#self.options=pW.prefsWidget(self.values,self.optionsOpen)
self.parent.show()
else:
#if self.options != None:
self.parent.hide()
self.optionsOpen[0]=0
def _setup_prefs_widget(self):
self.popupmenu_prefs_widget = gtk.ImageMenuItem(
TpmStr['ShowHide'])
self.popupmenu_prefs_widget.connect('activate', self._prefs_widget)
self.popupmenu.add(self.popupmenu_prefs_widget)
def _setup_about(self):
self.popupmenu_aboutitem = gtk.ImageMenuItem(gtk.STOCK_ABOUT)
self.popupmenu_aboutitem.connect('activate', self._about)
self.popupmenu.add(self.popupmenu_aboutitem)
def _about(self, button):
aboutdialog = gtk.AboutDialog()
aboutdialog.set_name('gtk-recordMyDesktop')
aboutdialog.set_version(rmdConfig.VERSION)
aboutdialog.set_comments(TpmStr['ProgDesc'])
aboutdialog.set_copyright(TpmStr['Copyright'])
aboutdialog.set_authors(['recordMyDesktop and gtk-recordMyDesktop\nis written by John Varouhakis','Portions of gtk-recordMyDesktop\nare taken from Istanbul\n(http://live.gnome.org/Istanbul)\nwritten by\nZaheer Abbas Merali and John N. Laliberte'])
aboutdialog.set_website('http://recordmydesktop.sourceforge.net')
aboutdialog.set_license('GPL-2')
aboutdialog.set_translator_credits(TpmStr['TranslatorCredits'])
aboutdialog.connect('response', lambda widget, response: widget.destroy())
aboutdialog.show_all()
def _setup_select_area(self):
self.popupmenu_selectarea = gtk.ImageMenuItem(
TpmStr['SelectOnScreen'])
self.popupmenu.add(self.popupmenu_selectarea)
self.popupmenu_selectarea.connect("activate", self._select_area_cb)
def _select_area_cb(self, menuitem):
self.popupmenu.hide()
self.selector = iSel.GtkAreaSelector(self.values[5])
self.selector.show()
def _setup_quit(self):
self.popupmenu_quititem = gtk.ImageMenuItem(gtk.STOCK_QUIT)
self.popupmenu_quititem.connect('activate', self._quit)
self.popupmenu.add(self.popupmenu_quititem)
def _setup_record(self):
self.popupmenu_recorditem = gtk.ImageMenuItem(gtk.STOCK_MEDIA_RECORD)
self.popupmenu_recorditem.connect('activate', self._record_stop)
self.popupmenu.add(self.popupmenu_recorditem)
def _setup_continue(self):
self.popupmenu_continueitem = gtk.ImageMenuItem(gtk.STOCK_MEDIA_RECORD, False)
self.popupmenu_continueitem.set_label(_("Continue recording"))
self.popupmenu_continueitem.connect('activate', self._pause_continue)
self.popupmenu.add(self.popupmenu_continueitem)
def _setup_stop(self):
self.popupmenu_stopitem = gtk.ImageMenuItem(gtk.STOCK_MEDIA_STOP)
self.popupmenu_stopitem.connect('activate', self._record_stop)
self.popupmenu.add(self.popupmenu_stopitem)
def _record_stop(self, button):
self.tray_icon.__buttonPress__(1)
def _setup_pause(self):
self.popupmenu_pauseitem = gtk.ImageMenuItem(gtk.STOCK_MEDIA_PAUSE)
self.popupmenu_pauseitem.connect('activate', self._pause_continue)
self.popupmenu.add(self.popupmenu_pauseitem)
def _pause_continue(self, button):
self.tray_icon.__buttonPress__(3)
def _quit(self, button):
gtk.main_quit()
def show(self):
self.popupmenu.show_all()
self.popupmenu.popup(None, None, None, 3, gtk.get_current_event_time())
|