Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def build_gui(self, container):
vbox = Widgets.VBox()
self.msg_font = self.fv.get_font('fixed', 12)
vbox.add_widget(Widgets.Label("Output:"))
tw = Widgets.TextArea(wrap=True, editable=False)
tw.set_font(self.msg_font)
tw.set_limit(self.histlimit)
self.hist_w = tw
vbox2 = Widgets.VBox()
vbox2.add_widget(tw, stretch=1)
vbox2.add_widget(Widgets.Label(''), stretch=0)
vbox.add_widget(vbox2, stretch=1)
vbox2 = Widgets.VBox()
vbox2.add_widget(Widgets.Label("Type command here:"))
self.cmd_w = Widgets.TextEntry()
self.cmd_w.set_font(self.msg_font)
vbox2.add_widget(self.cmd_w, stretch=0)
self.cmd_w.add_callback('activated', self.exec_cmd_cb)
vbox.add_widget(vbox2, stretch=0)
btns = Widgets.HBox()
btns.set_spacing(4)
btns.set_border_width(4)
if options.num_cols is not None:
cols = options.num_cols
self.settings.add_defaults(columns=cols, zones=['UTC'],
colors=colors)
self.colors = self.settings.get('colors', colors)
# now import our items
from ginga.gw import Widgets, GwHelp
self.app = Widgets.Application(logger=logger)
self.app.add_callback('shutdown', self.quit)
self.top = self.app.make_window("Clocks")
self.top.add_callback('close', self.closed)
vbox = Widgets.VBox()
menubar = Widgets.Menubar()
clockmenu = menubar.add_name('Clock')
item = clockmenu.add_name("Quit")
item.add_callback('activated', lambda *args: self.quit())
vbox.add_widget(menubar, stretch=0)
self.grid = Widgets.GridBox()
self.grid.set_border_width(1)
self.grid.set_spacing(2)
vbox.add_widget(self.grid, stretch=1)
hbox = Widgets.HBox()
self.timezone_label = Widgets.Label('TimeZone')
self.county_timezone = Widgets.ComboBox(editable=True)
def build_gui(self, container):
assert iqcalc.have_scipy is True, \
Exception("Please install python-scipy to use this plugin")
vtop = Widgets.VBox()
vtop.set_border_width(4)
box, sw, orientation = Widgets.get_oriented_box(container)
box.set_border_width(4)
box.set_spacing(2)
paned = Widgets.Splitter(orientation=orientation)
self.w.splitter = paned
nb = Widgets.TabWidget(tabpos='bottom')
self.w.nb1 = nb
paned.add_widget(Widgets.hadjust(nb, orientation))
cm, im = self.fv.cm, self.fv.im
di = Viewers.CanvasView(logger=self.logger)
def build_gui(self, container, future=None):
vbox1 = Widgets.VBox()
nb = Widgets.TabWidget(tabpos='bottom')
self.w.nb = nb
vbox1.add_widget(nb, stretch=1)
vbox0 = Widgets.VBox()
hbox = Widgets.HBox()
hbox.set_spacing(4)
vbox0.add_widget(hbox, stretch=1)
vbox = Widgets.VBox()
fr = Widgets.Frame(" Image Server ")
fr.set_widget(vbox)
hbox.add_widget(fr, stretch=0)
captions = (('Server:', 'llabel'),
('Server', 'combobox'),
('Use DSS channel', 'checkbutton'),
('Get Image', 'button'))
w, b = Widgets.build_info(captions)
self.w.update(b)
box, sw, orientation = Widgets.get_oriented_box(container)
box.set_border_width(4)
box.set_spacing(2)
paned = Widgets.Splitter(orientation=orientation)
self.w.splitter = paned
self.plot = plots.Plot(logger=self.logger,
width=400, height=400)
ax = self.plot.add_axis()
ax.grid(True)
w = Plot.PlotWidget(self.plot)
w.resize(400, 400)
paned.add_widget(Widgets.hadjust(w, orientation))
vbox = Widgets.VBox()
vbox.set_border_width(2)
# for statistics line
self.w.stats1 = Widgets.Label('')
vbox.add_widget(self.w.stats1)
captions = (('Cut Low:', 'label', 'Cut Low', 'entry'),
('Cut High:', 'label', 'Cut High', 'entry',
'Cut Levels', 'button'),
('Auto Levels', 'button'),
('Log Histogram', 'checkbutton',
'Plot By Cuts', 'checkbutton'),
('NumBins:', 'label', 'NumBins', 'entry'),
('Full Image', 'button'),
)
def add_viewer(self, name, settings, workspace=None):
vbox = Widgets.VBox()
vbox.set_border_width(1)
vbox.set_spacing(0)
if not workspace:
workspace = self.main_wsname
w = self.ds.get_nb(workspace)
size = (700, 700)
if isinstance(w, Widgets.MDIWidget) and w.true_mdi:
size = (300, 300)
# build image viewer & widget
fi = self.build_viewpane(settings, size=size)
# add scrollbar support
scr_val = settings.setdefault('scrollbars', None)
def show_help_text(self, name, help_txt, wsname='right'):
"""
Show help text in a closeable tab window. The title of the
window is set from ``name`` prefixed with 'HELP:'
"""
tabname = 'HELP: {}'.format(name)
group = 1
tabnames = self.ds.get_tabnames(group)
if tabname in tabnames:
# tab is already up somewhere
return
vbox = Widgets.VBox()
vbox.set_margins(4, 4, 4, 4)
vbox.set_spacing(2)
msg_font = self.get_font('fixed', 12)
tw = Widgets.TextArea(wrap=False, editable=False)
tw.set_font(msg_font)
tw.set_text(help_txt)
vbox.add_widget(tw, stretch=1)
btns = Widgets.HBox()
btns.set_border_width(4)
btns.set_spacing(3)
def _close_cb(w):
self.ds.remove_tab(tabname)
plname = pInfo.name
lname = pInfo.name.lower()
if lname in self.active:
if alreadyOpenOk:
self.set_focus(pInfo.name)
return
raise PluginManagerError("Plugin %s is already active." % (
plname))
# Raise tab with GUI
pInfo.tabname = pInfo.spec.get('tab', plname)
vbox = None
had_error = False
try:
if hasattr(pInfo.obj, 'build_gui'):
vbox = Widgets.VBox()
# attach size of workspace to container so plugin
# can plan for how to configure itself
wd, ht = self.ds.get_ws_size(pInfo.spec.ws)
vbox.size = (wd, ht)
if future:
pInfo.obj.build_gui(vbox, future=future)
else:
pInfo.obj.build_gui(vbox)
except Exception as e:
errstr = "Plugin UI failed to initialize: %s" % (
str(e))
self.logger.error(errstr)
try:
w.set_widget(Widgets.Label("Framed content"))
vbox.add_widget(w)
elif wname == 'expander':
w = Widgets.Expander(title="Expander Title")
w.set_widget(Widgets.Label("Expander content"))
vbox.add_widget(w)
elif wname == 'hbox':
w = Widgets.HBox()
w.add_widget(Widgets.Label("Item 1"), stretch=0)
w.add_widget(Widgets.Label("Item 2"), stretch=1)
vbox.add_widget(w)
elif wname == 'vbox':
w = Widgets.VBox()
w.add_widget(Widgets.Label("Item 1"), stretch=0)
w.add_widget(Widgets.Label("Item 2"), stretch=1)
vbox.add_widget(w)
elif wname == 'splitter':
w = Widgets.Splitter(orientation='horizontal')
w.add_widget(Widgets.Label('Content of Pane 1'))
w.add_widget(Widgets.Label('Content of Pane 2'))
vbox.add_widget(w, stretch=1)
elif wname == 'scrollarea':
w = Widgets.ScrollArea()
img = Widgets.Image()
img.load_file(os.path.join(icondir, 'ginga-512x512.png'))
w.set_widget(img)
vbox.add_widget(w, stretch=1)