def __init__(self, x, y, w, h, doc): super(hpObjectInfoWnd, self).__init__(x, y, w, h, doc) self.valObjects = dict() self.valObjOffset = 30 self.begin() saveBtn = fltk.Fl_Button(10, self.valObjOffset, 80, 20, 'param save') saveBtn.callback(self.save) loadBtn = fltk.Fl_Button(100, self.valObjOffset, 80, 20, 'param load') loadBtn.callback(self.load) self.end() self.valObjOffset += 40
def __init__(self, text, file, command, argument, type="classic"): file = os.path.join(rcParams['datapath'], 'images', file) self.im = Fltk.Fl_PNM_Image(file) size = 26 if type == "repeat": self.b = Fltk.Fl_Repeat_Button(0, 0, size, 10) self.b.box(Fltk.FL_THIN_UP_BOX) elif type == "classic": self.b = Fltk.Fl_Button(0, 0, size, 10) self.b.box(Fltk.FL_THIN_UP_BOX) elif type == "light": self.b = Fltk.Fl_Light_Button(0, 0, size + 20, 10) self.b.box(Fltk.FL_THIN_UP_BOX) elif type == "pushed": self.b = Fltk.Fl_Button(0, 0, size, 10) self.b.box(Fltk.FL_UP_BOX) self.b.down_box(Fltk.FL_DOWN_BOX) self.b.type(Fltk.FL_TOGGLE_BUTTON) self.tooltiptext = text + " " self.b.tooltip(self.tooltiptext) self.b.callback(command, argument) self.b.image(self.im) self.b.deimage(self.im) self.type = type
def __init__(self, label=None): super(DiceWindow, self).__init__(200, 200, 270, 175, label) self.color(fltk.FL_WHITE) self.begin() self.dicebox1 = fltk.Fl_Box(10, 10, 120, 120) self.dicebox2 = fltk.Fl_Box(140, 10, 120, 120) self.rollbut = fltk.Fl_Button(10, 140, 50, 25, "Roll") self.rollbut.shortcut(" ") self.rollbut.tooltip("Click or press space to roll the dice") self.rollbut.callback(self.rolldice) self.totalbox = fltk.Fl_Box(225, 140, 50, 25) self.end()
def __init__(self): fltk.Fl_Window.__init__(self, 560, 420, "Embedding in FLTK") # Make a panel with a button but = fltk.Fl_Button(10, 10, 70, 30, 'Click me') but.callback(self._Plot) # Make figure to draw stuff in self.fig = vv.backends.backend_fltk.Figure(100, 10, 560 - 110, 420 - 20, "") # Make box for resizing box = fltk.Fl_Box(fltk.FL_NO_BOX, 100, 50, 560 - 110, 420 - 60, "") self.resizable(box) box.hide() # Finish self.end() self.show() self.fig._widget.show()
def addBtn(self, name, callback): self.begin() btn = fltk.Fl_Button(10, self.valObjOffset, 80, 20, name) btn.callback(callback) self.end() self.valObjOffset += 40
def __init__(self, x, y, w, h, label="button"): self.widget = fltk.Fl_Button(x, y, w, h, label) self.customize()
def demo(): """ runs a small demo program """ xWin = 200 yWin = 200 wWin = 300 hWin = 400 xTree = 20 yTree = 20 wTree = 200 hTree = hWin - 2 * yTree xButs = xTree + wTree + 20 class MyTree(Fl_Tree): """ """ def on_select(self, node): print("on_select: node=%s" % node.title) print("creating window") win = fltk.Fl_Window(xWin, yWin, wWin, hWin, "Fl_Tree demo") print("adding tree") tree = MyTree(xTree, yTree, wTree, hTree, "something") tree.align(fltk.FL_ALIGN_TOP) def on_promote(ev): node = tree.valuenode() if node: print("promote: %s" % node.title) node.promote() def on_demote(ev): node = tree.valuenode() if node: print("demote: %s" % node.title) node.demote() def on_moveup(ev): node = tree.valuenode() if node: print("moveup: %s" % node.title) node.moveup() def on_movedown(ev): node = tree.valuenode() if node: print("movedown: %s" % node.title) node.movedown() but_promote = fltk.Fl_Button(xButs, 20, 20, 20, "@<-") but_promote.callback(on_promote) but_demote = fltk.Fl_Button(xButs, 50, 20, 20, "@->") but_demote.callback(on_demote) but_moveup = fltk.Fl_Button(xButs, 80, 20, 20, "up") but_moveup.callback(on_moveup) but_movedown = fltk.Fl_Button(xButs, 110, 20, 20, "dn") but_movedown.callback(on_movedown) print("ending window") win.end() print("showing window") win.show() # add stuff to root node if 1: for i in range(3): node = tree.append("item-%s" % i) if 1: for j in range(3): subnode = node.append("item-%s%s" % (i, j)) if 1: for k in range(2): subnode.append("item-%s%s%s" % (i,j,k)) print("entering main loop") fltk.Fl.run()
def __init__(self, file): # flag to initialize data on first run self.firstCall = True #create figure self.fig = pp.figure() #add plot to figure self.ax = self.fig.add_subplot(111) self.ipp = file.attrs.get('IPP', 0) * 1e3 self.file = file self.keys = file.keys() self.tIndex = TableIndexer(self.keys) #access toolbar callbacks and reassign with custom functionality manager = pp.get_current_fig_manager() toolbar = manager.toolbar fButton = toolbar.bForward.widget() rButton = toolbar.bBack.widget() fButton.callback(self.forward) rButton.callback(self.reverse) #get access to existing menu button widget on toolbar menuButton = toolbar.omenu.widget() #get rid of default buttons menuButton.clear() toolbar.omenu = CustomAxisMenu(toolbar) #add our custom buttons and callbacks menuButton.add('Power Map', 0, PowerCallBack, self) menuButton.add('Doppler Map', 0, DopplerCallBack, self) menuButton.resize(0, 0, 70, 10) menuButton.label('Plot Type') t1, t2, w, h = toolbar.canvas.figure.bbox.bounds toolbar.message.resize(0, 0, int(w / 3), 8) self.input = Fltk.Fl_Input(0, 0, int(90), 8) self.searchButton = Fltk.Fl_Button(0, 0, int(70), 8, '&Search') self.searchButton.callback(Search, self) toolbar._group.add(self.input) toolbar._group.add(self.searchButton) toolbar.update() self.ds = self.file[self.tIndex.Current()] time = self.ds.attrs.get('START_TIME', '00:00:00') fs = self.file.attrs.get('OUTPUT_RATE', 0) winStart = self.file.attrs.get('RxWin_START', 0) winStop = self.file.attrs.get('RxWin_STOP', 0) # initialize instances of PowerMap and DopplerMap # this will be referenced later when the user chooses # the desired plot type self.powerMap = rt.PowerMap(self.ds, file, fs, winStart, winStop) self.dopplerMap = rt.DopplerMap(self.ds, file, fs, winStart, winStop) #default to power map computation self.map = self.powerMap self.Update() pp.show()