def main_window(type, title, width, height):
if type == 'toplevel':
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
elif type == 'popup':
window = gtk.Window(gtk.WINDOW_POPUP)
window.set_position(gtk.WIN_POS_CENTER)
window.connect('destroy', lambda x: gtk.main_quit())
window.set_size_request(width, height)
window.set_resizable(True)
if title == False:
window.set_decorated(False)
else:
window.set_title(title)
return window
python类Window()的实例源码
def run(self, graphic):
window = gtk.Window()
self.__window = window
window.set_default_size(200, 200)
vbox = gtk.VBox()
window.add(vbox)
render = GtkGraphicRenderer(graphic)
self.__render = render
vbox.pack_end(render, True, True, 0)
hbox = gtk.HBox()
vbox.pack_start(hbox, False, False, 0)
smaller_zoom = gtk.Button("Zoom Out")
smaller_zoom.connect("clicked", self.__set_smaller_cb)
hbox.pack_start(smaller_zoom)
bigger_zoom = gtk.Button("Zoom In")
bigger_zoom.connect("clicked", self.__set_bigger_cb)
hbox.pack_start(bigger_zoom)
output_png = gtk.Button("Output Png")
output_png.connect("clicked", self.__output_png_cb)
hbox.pack_start(output_png)
window.connect('destroy', gtk.main_quit)
window.show_all()
#gtk.bindings_activate(gtk.main_quit, 'q', 0)
gtk.main()
def _start_shell(self, dummy_button):
if self.shell_window is not None:
self.shell_window.present()
return
self.shell_window = gtk.Window()
self.shell_window.set_size_request(750,550)
self.shell_window.set_resizable(True)
scrolled_window = gtk.ScrolledWindow()
scrolled_window.set_policy(gtk.POLICY_AUTOMATIC,gtk.POLICY_AUTOMATIC)
ipython = ipython_view.IPythonView()
ipython.modify_font(pango.FontDescription(SHELL_FONT))
ipython.set_wrap_mode(gtk.WRAP_CHAR)
ipython.show()
scrolled_window.add(ipython)
scrolled_window.show()
self.shell_window.add(scrolled_window)
self.shell_window.show()
self.shell_window.connect('destroy', self._on_shell_window_destroy)
self._update_ipython_selected_node()
__IPYTHON__.user_ns['viz'] = self
def __init__(self,servers):
self.servers = servers;
self.serverInfo = {};
table = gtk.Table(60,50);
self.window = gtk.Window();
inputEntry = self.build_InputEntry();
menuBar = self.build_Menu();
self.noteBook = self.build_Note();
self.messageView = self.build_MessageView();
table.attach(menuBar,0,60,0,10);
table.attach(self.noteBook,0,50,11,50, gtk.EXPAND, gtk.FILL);
table.attach(self.messageView, 51, 60, 11, 50);
table.attach(inputEntry,0,60,51,60)
self.window.set_default_size(1000,700);
self.window.add(table);
self.window.show_all();
self.window.connect("delete_event", self.delete_event)
self.window.connect("destroy", self.destroy)
gtk.main();
def __init__(self):
imageLoc = random.choice(os.listdir(os.path.join(WORKINGDIR, "data", "splashScreens")))
imageSize = self.get_image_size(open(os.path.join(WORKINGDIR, "data", "splashScreens", imageLoc), 'rb').read())
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_decorated(False)
self.window.set_title("Micro:Pi")
self.window.set_icon_from_file(os.path.join(WORKINGDIR, "data", "icon.png"))
self.window.set_size_request(imageSize[0], -1)
self.window.set_position(gtk.WIN_POS_CENTER)
main_vbox = gtk.VBox(False, 1)
self.window.add(main_vbox)
hbox = gtk.HBox(False, 0)
self.img = gtk.Image()
self.img.set_from_file(os.path.join(WORKINGDIR, "data", "splashScreens", imageLoc))
main_vbox.pack_start(self.img, True, True)
self.lbl = gtk.Label('')
font = pango.FontDescription("Monospace 7")
self.lbl.modify_font(font)
main_vbox.pack_end(self.lbl, False, False)
self.refresh()
self.window.show_all()
self.refresh()
def createPanelSettingsWidgets(self):
"""Create the Panel Settings widgets."""
self.tablePanelSettings = gtk.Table(rows=5, columns=3, homogeneous=False)
self.tablePanelSettings.set_row_spacings(5)
self.tablePanelSettings.set_col_spacings(5)
createLabel(self.tablePanelSettings, text="Window Manager Menu", gridX=0, gridY=0, xPadding=10)
self.panelMenu = createCheckButton(self.tablePanelSettings, active=False, gridX=1, gridY=0, xExpand=True, yExpand=False, handler=self.changeOccurred)
self.registerComponent("wm_menu", self.panelMenu)
createLabel(self.tablePanelSettings, text="Place In Window Manager Dock", gridX=0, gridY=1, xPadding=10)
self.panelDock = createCheckButton(self.tablePanelSettings, active=False, gridX=1, gridY=1, xExpand=True, yExpand=False, handler=self.changeOccurred)
self.registerComponent("panel_dock", self.panelDock)
createLabel(self.tablePanelSettings, text="Panel Layer", gridX=0, gridY=2, xPadding=10)
self.panelLayer = createComboBox(self.tablePanelSettings, ["bottom", "top", "normal"], gridX=1, gridY=2, handler=self.changeOccurred)
self.registerComponent("panel_layer", self.panelLayer)
createLabel(self.tablePanelSettings, text="Strut Policy", gridX=0, gridY=3, xPadding=10)
self.panelAutohideStrut = createComboBox(self.tablePanelSettings, ["none", "minimum", "follow_size"], gridX=1, gridY=3, handler=self.changeOccurred)
self.registerComponent("strut_policy", self.panelAutohideStrut)
createLabel(self.tablePanelSettings, text="Panel Monitor (all, 1, 2, ...)", gridX=0, gridY=4, xPadding=10)
self.panelMonitor = createEntry(self.tablePanelSettings, maxSize=6, width=8, text=PANEL_MONITOR, gridX=1, gridY=4, xExpand=True, yExpand=False, handler=self.changeOccurred)
self.registerComponent("panel_monitor", self.panelMonitor)
def __init__(self, mpi):
import webkit
self.webview = webkit.WebView()
self.scroller = gtk.ScrolledWindow()
self.scroller.add(self.webview)
self.vbox = gtk.VBox(False, 1)
self.vbox.pack_start(self.scroller, True, True)
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_size_request(1100, 600)
self.window.connect('delete-event', lambda w, e: w.hide() or True)
self.window.add(self.vbox)
self.browser_settings = self.webview.get_settings()
self.browser_settings.set_property("enable-java-applet", False)
self.browser_settings.set_property("enable-plugins", False)
self.browser_settings.set_property("enable-scripts", True)
self.browser_settings.set_property("enable-private-browsing", True)
self.browser_settings.set_property("enable-spell-checking", True)
self.browser_settings.set_property("enable-developer-extras", True)
self.webview.set_settings(self.browser_settings)
def display_splash(self):
"""show splash screen"""
self.splash = gtk.Window()
self.splash.set_decorated(False)
self.splash.set_transient_for(self.winMain)
self.splash.set_position(gtk.WIN_POS_CENTER_ON_PARENT)
self.splash.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
self.splash.set_keep_above(True)
self.splash.set_border_width(self.splash_border_width)
vbox = gtk.VBox()
img = gtk.Image()
self.splash_gfx = os.path.join(CONFIG_DIR, 'layouts', self.layout, 'main-splash.png')
if os.path.exists(self.splash_gfx):
self.log_msg('Custom splash found, loading ' + str(self.splash_gfx))
img.set_from_file(self.splash_gfx)
else:
self.splash_gfx = os.path.join(APP_PATH, 'pixmaps', 'wahcade-logo.png')
self.log_msg('No custom splash found, loading ' + str(self.splash_gfx))
img.set_from_file(self.splash_gfx)
if self.splash_show_text == 1:
lbl = gtk.Label()
lbl.set_alignment(0.5, 0.5)
lbl.set_justify(gtk.JUSTIFY_CENTER)
lbl.set_use_markup(True)
lbl.set_markup('<big><b>Wah!Cade</b></big>\n%s "%s"' % (VERSION, VERSION_NAME))
vbox.pack_end(lbl)
vbox.pack_start(img)
self.splash.add(vbox)
self.splash.show_all()
if not self.tw_api:
self.twitter_api = self.auth_twitter() ## Auth Twitter during startup
self.wait_with_events(0.25)
def __init__(self, title, parent=None):
gtk.Window.__init__(self, gtk.WINDOW_TOPLEVEL)
self.set_modal(True)
self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
self.set_title(title)
if parent:
self.set_transient_for(parent)
self.set_resizable(False)
vbox = gtk.VBox(False, 2)
self.label = gtk.Label("")
self.label.set_size_request(100, 50)
self.label.show()
self.pbar = gtk.ProgressBar()
self.pbar.show()
vbox.pack_start(self.label, 0, 0, 0)
vbox.pack_start(self.pbar, 0, 0, 0)
vbox.show()
self.add(vbox)
def __init__(self, msg, parent=None):
gtk.Window.__init__(self)
self.set_title("Please Wait")
self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
if parent:
self.set_transient_for(parent)
self.set_position(gtk.WIN_POS_CENTER_ON_PARENT)
else:
self.set_position(gtk.WIN_POS_CENTER)
vbox = gtk.VBox(False, 2)
l = gtk.Label(msg)
l.show()
vbox.pack_start(l)
self.prog = gtk.ProgressBar()
self.prog.show()
vbox.pack_start(self.prog)
vbox.show()
self.add(vbox)
def __init__(self, radiosel, download, upload, iport, eport):
gtk.Window.__init__(self)
self.tips = gtk.Tooltips()
self.fn_radiosel = radiosel
self.fn_download = download
self.fn_upload = upload
self.fn_iport = iport
self.fn_eport = eport
self.set_title("CHIRP: CSV Dump")
self.set_resizable(False)
vbox = gtk.VBox(False, 2)
vbox.pack_start(self.make_radio_sel(), 0, , )
vbox.pack_start(self.make_image_ctl(), 0, , )
vbox.pack_start(self.make_file_ctl(), 0, , )
vbox.pack_start(self.make_status_bar(), 0, , )
vbox.show()
self.add(vbox)
def lienInAmelia():
import gtk
import webkit
import gobject
gobject.threads_init()
window = gtk.Window()
window.set_default_size(1100, 680)
window.connect("destroy", lambda a: gtk.main_quit())
browser = webkit.WebView()
browser.open("http://alfred-ia.org/essaye-moi/")
window.add(browser)
window.show_all()
gtk.main()
def __init__(self, fontfile):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_title("%s - pyftinspect" % fontfile)
self.window.connect("delete_event", self._delete_event)
self.window.set_size_request(400, 600)
self.scrolled_window = gtk.ScrolledWindow()
self.window.add(self.scrolled_window)
self.font = ttLib.TTFont(fontfile, lazy=True)
self.treemodel = FontTreeModel(self.font)
self.treeview = gtk.TreeView(self.treemodel)
#self.treeview.set_reorderable(True)
for i in range(2):
col_name = ('Key', 'Value')[i]
col = gtk.TreeViewColumn(col_name)
col.set_sort_column_id(-1)
self.treeview.append_column(col)
cell = gtk.CellRendererText()
col.pack_start(cell, True)
col.add_attribute(cell, 'text', i)
self.treeview.set_search_column(1)
self.scrolled_window.add(self.treeview)
self.window.show_all()
classification-banner.py 文件源码
项目:hardened-centos7-kickstart
作者: fcaviggia
项目源码
文件源码
阅读 35
收藏 0
点赞 0
评论 0
def restore(self, widget, data=None):
self.window.deiconify()
self.window.present()
return True
# Destroy Classification Banner Window on Resize (Display Banner Will Relaunch)
def canvas(self):
"""Init the pygame canvas"""
sdl2.ext.init()
if gtk:
window = gtk.Window()
screen = window.get_screen()
self.width = gtk.gdk.screen_width() if gtk else DEFAULT_WIDTH
self.height = gtk.gdk.screen_height() if gtk else DEFAULT_HEIGHT
self.width = options.width if options.width else self.width
self.height = options.height if options.height else self.height
self.screen = sdl2.ext.Window(self.set_title(),
size=(self.width, self.height))
self.screen.show()
self.surface = self.screen.get_surface()
def open_window(self, url):
url = address_bar.get_text()
for letter in url:
if '.' not in url:
a = gtk.MessageDialog(None, gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_ERROR, gtk.BUTTONS_CANCEL)
a.set_markup("<big><b>WTF!?!? Thats not even a website?</b></big>")
a.run()
return
if 'http://' not in url:
w = gtk.MessageDialog(None, gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_WARNING, gtk.BUTTONS_OK)
w.set_markup("<big><b>**mumble, mumble** Force to change {} to {}</b></big>".format(url, 'http://'+url+'/'))
w.run()
url = 'http://'+url+'/'
os.system('python Web-Window.py '+url)
def __init__(self):
super(ProgressBarDetails, self).__init__()
#Configure the Window
self.set_resizable(False)
self.connect("destroy", self.destroy_progress)
self.set_title("Progress Bar")
self.set_position(gtk.WIN_POS_CENTER)
self.set_size_request(460, 150)
self.set_border_width(0)
#Create the VBox in case we want to add additional items later
self.vbox = gtk.VBox(False, 5)
self.vbox.set_border_width(10)
self.add(self.vbox)
self.vbox.show()
#create the scrolled window
self.scrolled_window =gtk.ScrolledWindow()
self.scrolled_window.set_usize(460, 100)
self.vbox.add(self.scrolled_window)
self.scrolled_window.show()
self.text_view = gtk.TextView()
self.msg_i = 0
self.text_buffer = self.text_view.get_buffer()
self.scrolled_window.add_with_viewport(self.text_view)
self.text_view.connect("size-allocate", self.autoscroll)
self.text_view.show()
# Create the ProgressBar
self.pbar = gtk.ProgressBar()
#self.pbar.set_usize(460, 40)
self.pbar.set_fraction(0.0)
self.vbox.add(self.pbar)
self.pbar.show()
#Display the Window
self.show()
def __init__(self):
super(ProgressBar, self).__init__()
#Configure the Window
self.set_resizable(False)
self.connect("destroy", self.destroy_progress)
self.set_title("Progress Bar")
self.set_position(gtk.WIN_POS_CENTER)
self.set_size_request(460, 50)
self.set_border_width(0)
#Create the VBox in case we want to add additional items later
vbox = gtk.VBox(False, 5)
vbox.set_border_width(10)
self.add(vbox)
vbox.show()
# Create the ProgressBar
self.pbar = gtk.ProgressBar()
self.pbar.set_fraction(0.0)
self.pbar.set_text("Starting")
vbox.add(self.pbar)
self.pbar.show()
#Display the Window
self.show()
def run( Widget, w, h, speed ):
window = gtk.Window( )
window.connect( "delete-event", gtk.main_quit )
widget = Widget( w, h, speed )
widget.show( )
window.add( widget )
window.present( )
gtk.main( )
def run(Widget):
window = gtk.Window()
window.connect("delete-event", gtk.main_quit)
widget = Widget()
widget.show()
window.add(widget)
window.present()
gtk.main()
def show(self):
"""Opens a GTK window and puts the heatmap in it. Intelligent enough to work with the GUI as well."""
window_only = 1 #What needs to be destroyed when the window is destroyed?
if HMAP_ENABLED and DISPLAY_ENABLED:
def destroy():
if window_only:
window.destroy()
else:
gtk.main_quit()
gtk.gdk.threads_enter()
window = gtk.Window()
window.set_title("Showing heatmap...")
window.set_border_width(10)
window.set_resizable(False)
window.connect("delete_event", lambda w, e: destroy())
backbone = gtk.HBox(True)
image = gtk.Image()
image.set_from_pixbuf(self._image_to_pixbuf(self.im))
backbone.pack_start(image)
window.add(backbone)
window.show_all()
gtk.gdk.threads_leave()
if gtk.main_level() == 0:
window_only = 0
gtk.main()
else:
raise "HmapError", "Error loading modules or unable to display"
def _setup_widgets(self):
self._window = gtk.Window()
self._window.hide()
self._window.connect("destroy", self._quit)
widget = gtk.DrawingArea()
self._window.add(widget)
self.lcd_display = LCDWidget(widget, g_rows, g_cols)
def _main_window_setup(self, now=False):
def create(self):
wcfg = self.config['main_window']
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.main_window = {'window': window}
if wcfg.get('style', 'default') == 'default':
self._main_window_default_style()
else:
raise NotImplementedError('We only have one style atm.')
if wcfg.get('close_quits'):
window.connect("delete_event", lambda a1,a2: gtk.main_quit())
else:
window.connect('delete-event', lambda w, e: w.hide() or True)
window.connect("destroy", lambda wid: gtk.main_quit())
window.set_title(self.config.get('app_name', 'gui-o-matic'))
window.set_decorated(True)
if wcfg.get('center', False):
window.set_position(gtk.WIN_POS_CENTER)
window.set_size_request(
wcfg.get('width', 360), wcfg.get('height',360))
if wcfg.get('show'):
window.show_all()
if now:
create(self)
else:
gobject.idle_add(create, self)
def popup_message(message):
"""shows popup message while executing decorated function"""
def wrap(f):
def wrapped_f(*args, **kwargs):
if gtk:
window = gtk.Window()
window.set_title('Griffith info')
window.set_position(gtk.WIN_POS_CENTER)
window.set_keep_above(True)
window.stick()
window.set_default_size(200, 50)
label = gtk.Label()
label.set_markup("""<big><b>Griffith:</b>
%s</big>""" % message)
window.add(label)
window.set_modal(True)
window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
window.show_all()
while gtk.events_pending(): # give GTK some time for updates
gtk.main_iteration()
else:
print message,
res = f(*args, **kwargs)
if gtk:
window.destroy()
else:
print ' [done]'
return res
return wrapped_f
return wrap
def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
self.window.set_title("Unread article list")
#self.window.set_geometry_hints(None, min_width=100, min_height=100, max_width=100, max_height=100)
self.window.connect("destroy", self.hide)
#self.window.connect("key_press_event", self.on_key_pressed)
self.read = []
def __init__(self, parser, max_tree_depth):
self.parser = parser
self._max_tree_depth = max_tree_depth
self.search_thread = None
self.search_lock = threading.Lock()
self.name_entry = name_entry = gtk.Entry()
name_entry.connect('activate', self.on_name_entry_activate)
search_button = self.search_button = gtk.Button(stock=gtk.STOCK_FIND)
search_button.connect('clicked', self.on_search)
search_button.set_no_show_all(True)
search_button.show()
stop_button = self.stop_button = gtk.Button(stock=gtk.STOCK_STOP)
stop_button.connect('clicked', self.stop_search)
stop_button.set_no_show_all(True)
self.progress = progress = gtk.ProgressBar()
progress.set_size_request(-1, 8)
name_box = gtk.HBox(spacing=8)
name_box.set_border_width(8)
name_box.pack_start(name_entry, True, True)
name_box.pack_start(search_button, False)
name_box.pack_start(stop_button, False)
self.store = gtk.TreeStore(str, str, str, str) # name, icon, fnstyle, info
self.treeview = treeview = self._create_treeview(self.store)
scroller = gtk.ScrolledWindow()
scroller.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
scroller.add(treeview)
settings_view = SettingsView(max_depth_value=max_tree_depth)
settings_view.on_max_depth_changed = self.on_max_depth_changed
extension = gtk.expander_new_with_mnemonic('_Settings')
extension.add(settings_view.view)
vbox = gtk.VBox()
vbox.pack_start(name_box, False)
vbox.pack_start(progress, False)
vbox.pack_start(scroller, True, True)
vbox.pack_start(extension, False)
self.window = window = gtk.Window()
window.set_title(Application.title)
window.set_default_size(800, 600)
window.set_icon(Application.get_icon())
window.add(vbox)
def __init__(self):
progress = self.progress = gtk.ProgressBar()
progress.set_text('Loading...')
align = gtk.Alignment(0.5, 0.5, xscale=1.0)
align.add(progress)
window = self.window = gtk.Window()
window.set_title(Application.title)
window.set_border_width(8)
window.add(align)
window.set_default_size(400, 120)
self._last_update_progress = 0.0
def __init__(self, display=True):
import pygst
import gst
if display:
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_title("Video-Player")
self.window.set_default_size(500, 400)
self.window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
self.window.connect('delete-event', lambda _: reactor.stop())
self.movie_window = gtk.DrawingArea()
self.window.add(self.movie_window)
self.window.show_all()
self.player = gst.Pipeline("player")
self.appsrc = gst.element_factory_make("appsrc", "source")
self.appsrc.connect("enough-data", self.on_enough_data)
self.appsrc.connect("need-data", self.on_need_data)
self.appsrc.set_property("max-bytes", 10000)
if display:
self.decodebin = gst.element_factory_make("decodebin2", "decodebin")
self.decodebin.connect("new-decoded-pad", self.on_decoded_pad)
self.player.add(self.appsrc, self.decodebin)
gst.element_link_many(self.appsrc, self.decodebin)
else:
sink = gst.element_factory_make("filesink", "filesink")
sink.set_property("location", "/tmp/hls-player.ts")
self.player.add(self.appsrc, sink)
gst.element_link_many(self.appsrc, sink)
bus = self.player.get_bus()
bus.add_signal_watch()
bus.enable_sync_message_emission()
bus.connect("message", self.on_message)
bus.connect("sync-message::element", self.on_sync_message)
self._playing = False
self._need_data = False
self._cb = None
def searchfunc(self,widget):
fileName = self.searchfile.get_text()
paths = "\n"
for root, dirs, files in os.walk('/home', topdown=False):
for name in files:
if name == fileName:
paths += " " + str(os.path.join(root, name)) + " \n\n"
for name in dirs:
if name == fileName:
paths += " " + str(os.path.join(root, name)) + " \n\n"
paths = paths[:-1]
if len(paths) > 0 :
self.popup = gtk.Window()
self.popup.set_title( "Paths" )
vbox = gtk.VBox(False,0)
hbox = gtk.HBox(False)
label = gtk.Label(paths)
label.set_line_wrap( True )
label.connect( "size-allocate",self.size_allocate)
vbox.pack_start(gtk.Label(paths),True,False,0)
closeButton = gtk.Button(" Close ")
closeButton.set_sensitive(True)
closeButton.connect("clicked",self.on_destroy)
hbox.pack_start(closeButton,True,False,0)
vbox.pack_start(hbox,True,False,10)
self.popup.add(vbox)
self.popup.set_type_hint( gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
self.popup.show_all()
def main():
global __file__
__file__ = os.path.abspath(__file__)
if os.path.islink(__file__):
__file__ = getattr(os, 'readlink', lambda x: x)(__file__)
os.chdir(os.path.dirname(os.path.abspath(__file__)))
if not os.path.exists('goagent-logo.png'):
# first run and drop shortcut to desktop
drop_desktop()
window = gtk.Window()
terminal = vte.Terminal()
GoAgentGTK(window, terminal)
gtk.main()