Codice per le dimostrazioni del Linux Winter Day 2018.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
1.3 KiB

#!/usr/bin/env python
import sys, decifra, string
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
class DecifraGui:
def on_window1_destroy(self, object, data=None):
Gtk.main_quit()
def btnQuit_clicked(self, object, data=None):
Gtk.main_quit()
def btnDecifra_clicked(self, object, data=None):
self.risultato.hide()
testo = self.testocifrato.get_text()
rotazione = self.rotazione.get_value_as_int()
self.risultato.set_text(decifra.decifra(testo, rotazione))
self.risultato.show()
def __init__(self):
self.gladefile = "gui.glade"
self.builder = Gtk.Builder()
self.builder.add_from_file(self.gladefile)
self.builder.connect_signals(self)
self.window = self.builder.get_object("window1")
self.window.set_wmclass("Decifra ROTx", "Decifra ROTx")
self.testocifrato = self.builder.get_object("fldTestoCifrato_in")
self.rotazione = self.builder.get_object("fldRotazione_in")
adj = Gtk.Adjustment(1, 1, len(string.ascii_uppercase), 1, 1, 1)
self.rotazione.configure(adj, 1, 0)
self.risultato = self.builder.get_object("lblRisultato")
self.risultato.hide()
self.window.show()
if __name__ == '__main__':
main = DecifraGui()
Gtk.main()