Lanzador de aplicaciones en Python para ubuntu…
Agosto 20, 2009
Deja un comentario
Ahí les dejo un lanzador de terminales que hice para la empresa donde trabajo. Simplemente muestra cuatro botones y ejecuta terminales de gnome (gnome-terminal) y a su vez les envia parámetros de conexión (protocolos ssh y telnet).
#!/usr/bin/env python
# manejo de conexiones desde python
import pygtk
pygtk.require("2.0")
import gtk
import os
class HacerLlamadas:
def enl_desarrollo(self, widget, data=None):
os.system("gnome-terminal -e \"ssh 172.16.1.3 -l mi_login\" &")
def enl_produccion(self, widget, data=None):
os.system("gnome-terminal -e \"telnet 172.16.1.4 -l mi_login\" &")
def ftp_desarrollo(self, widget, data=None):
os.system("gnome-terminal -e \"ftp 172.16.1.3\" &")
def ftp_produccion(self, widget, data=None):
os.system("gnome-terminal -e \"ftp 172.16.1.4\" &")
def delete_event(self, widget, event, data=None):
gtk.FALSE
def destroy(self, widget, data=None):
gtk.main_quit()
def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.connect("delete_event", self.delete_event)
self.window.connect("destroy", self.destroy)
self.window.set_border_width(5)
self.window.set_title("Enlaces Alcanos")
self.box1 = gtk.VButtonBox()
self.window.add(self.box1)
self.btn_edesa = gtk.Button("Servidor de desarrollo")
self.btn_edesa.connect("clicked", self.enl_desarrollo, None)
self.btn_eprod = gtk.Button("Servidor de produccion")
self.btn_eprod.connect("clicked", self.enl_produccion, None)
self.btn_fdesa = gtk.Button("Ftp de desarrollo")
self.btn_fdesa.connect("clicked", self.ftp_desarrollo, None)
self.btn_fprod = gtk.Button("Ftp de produccion")
self.btn_fprod.connect("clicked", self.ftp_produccion, None)
self.box1.set_border_width(5)
self.box1.set_layout(gtk.BUTTONBOX_SPREAD)
self.box1.set_spacing(5)
self.box1.pack_start(self.btn_edesa, True, True, 0)
self.box1.pack_start(self.btn_eprod, True, True, 0)
self.box1.pack_start(self.btn_fdesa, True, True, 0)
self.box1.pack_start(self.btn_fprod, True, True, 0)
self.btn_edesa.show()
self.btn_eprod.show()
self.btn_fdesa.show()
self.btn_fprod.show()
self.box1.show()
self.window.show()
def main(self):
gtk.main()
if __name__ == "__main__":
ventana = HacerLlamadas()
ventana.main()