def buildForm(self, titleStr): # ??FIX THIS: self.stop = 1 if hasattr(self, "form"): self.form.deiconify() return maxval = self.endFrame ifd = InputFormDescr(title=titleStr) if self.hasCounter: ifd.append( { "widgetType": Pmw.Counter, "name": "statesCounter", "required": 1, "tooltip": "used to show frames via random access", "wcfg": { #'labelpos': 'n, #'label_text':'conformation: ', "autorepeat": 0, "entryfield_value": self.startFrame, #'entryfield_value':self.idList[0], "datatype": self.custom_counter, "entry_width": 9, "entryfield_validate": self.custom_validate, }, "gridcfg": {"sticky": "nesw", "columnspan": 2}, } ) ifd.append( { "name": "playB", "widgetType": Tkinter.Button, "text": "Play", "tooltip": "play sequence according to current play mode", "wcfg": {"bd": 4}, "gridcfg": {"sticky": "nesw", "columnspan": 1}, "command": self.Play_cb, } ) ifd.append( { "name": "playRevB", "widgetType": Tkinter.Button, "text": "Play Reverse", "wcfg": {"bd": 4}, "gridcfg": {"sticky": "nesw", "row": -1, "column": 1}, "command": self.PlayRev_cb, } ) ifd.append( { "name": "playTB", "widgetType": Tkinter.Button, "text": "Play+Return", "wcfg": {"bd": 4}, "gridcfg": {"sticky": "nesw", "columnspan": 1}, "command": self.PlayReturn_cb, } ) ifd.append( { "name": "loopB", "widgetType": Tkinter.Button, "text": "Loop", "wcfg": {"bd": 4}, "gridcfg": {"sticky": "nesw", "row": -1, "column": 1}, "command": self.Loop_cb, } ) ifd.append( { "name": "stopB", "widgetType": Tkinter.Button, "text": "Stop", "tooltip": "stop play", "wcfg": {"bd": 4}, "gridcfg": {"sticky": "nesw"}, "command": self.Stop_cb, } ) # add fastforward, fastrewind, thumbwheel for speed ifd.append( { "name": "pauseB", "widgetType": Tkinter.Button, "text": "Pause", "wcfg": {"bd": 4}, "gridcfg": {"sticky": "nesw", "row": -1, "column": 1}, "command": self.Pause_cb, } ) ifd.append( { "name": "closeB", "widgetType": Tkinter.Button, "text": "Close", "wcfg": {"bd": 4}, #'gridcfg':{'sticky':'nesw','row':-1, 'column':1}, "gridcfg": {"sticky": "nesw", "columnspan": 2}, "command": self.Close_cb, } ) form = InputForm(self.master, self.root, descr=ifd, modal=0, blocking=0, closeWithWindow=1) form.ifd = ifd if self.hasCounter: ctr = ifd.entryByName["statesCounter"]["widget"] entF = ctr.component("entryfield") form.ent2 = entF._entryFieldEntry da = ctr.component("downarrow") ua = ctr.component("uparrow") for item in [da, ua]: item.bind("<ButtonPress-1>", self.SetState_cb, "+") form.ent2.bind("<Return>", self.SetState_cb, "+") form.counter = form.ifd.entryByName["statesCounter"]["widget"] form.stopB = form.ifd.entryByName["stopB"]["widget"] form.playB = form.ifd.entryByName["playB"]["widget"] form.playRevB = form.ifd.entryByName["playRevB"]["widget"] # print 'returning form1' self.form = form return form
def buildForm2(self, titleStr): self.stop = 1 if hasattr(self, "form"): if hasattr(self.form, "deiconify"): self.form.deiconify() return maxval = self.endFrame ifd = InputFormDescr(title=titleStr) if self.buttonMask.get("gotoStartB", None) is not False: ifd.append( { "name": "gotoStartB", "widgetType": Tkinter.Button, #'text':'gotoStart', "tooltip": "sets frame to current startFrame", "wcfg": { "bd": 4, "image": self.gotoStartIcon, "width": self.gotoStartIcon.width(), "height": self.gotoStartIcon.height(), }, "gridcfg": {"sticky": "nesw"}, "command": self.GoToStart_cb, } ) if self.buttonMask.get("fastReverseB", None) is not False: ifd.append( { "name": "fastReverseB", "widgetType": Tkinter.Button, #'text':'fastReverse', "tooltip": "play reverse as fast as possible", "wcfg": { "bd": 4, "image": self.ff_revIcon, "width": self.ff_revIcon.width(), "height": self.ff_revIcon.height(), }, "gridcfg": {"sticky": "nesw", "row": -1, "column": 1}, "command": self.FastReverse_cb, } ) if self.buttonMask.get("playRevB", None) is not False: ifd.append( { "name": "playRevB", "widgetType": Tkinter.Button, #'text':'Play Reverse', "tooltip": "play reverse according to current play mode", "wcfg": { "bd": 4, "image": self.playRevIcon, "width": self.playRevIcon.width(), "height": self.playRevIcon.height(), }, "gridcfg": {"sticky": "nesw", "row": -1, "column": 2}, "command": self.PlayRev_cb, } ) if self.hasCounter: ifd.append( { "widgetType": Pmw.Counter, "name": "statesCounter", "required": 1, "tooltip": "used to show frames via random access", "wcfg": { #'labelpos': 'n, #'label_text':'conformation: ', "autorepeat": 0, "entryfield_value": self.startFrame, #'entryfield_value':self.idList[0], "datatype": self.custom_counter, "entry_width": 3, "entryfield_validate": self.custom_validate, }, "gridcfg": {"sticky": "nesw", "row": -1, "column": 3, "columnspan": 2}, } ) if self.buttonMask.get("playB", None) is not False: ifd.append( { "name": "playB", "widgetType": Tkinter.Button, #'text':'Play', "tooltip": "play forward according to current play mode", "wcfg": { "bd": 4, "image": self.playIcon, "width": self.playIcon.width(), "height": self.playIcon.height(), }, "gridcfg": {"sticky": "nesw", "row": -1, "column": 5}, "command": self.Play_cb, } ) if self.buttonMask.get("fastForwardB", None) is not False: ifd.append( { "name": "fastForwardB", "widgetType": Tkinter.Button, #'text':'fastForward', "tooltip": "play as fast as possible", "wcfg": { "bd": 4, "image": self.ff_fwdIcon, "width": self.ff_fwdIcon.width(), "height": self.ff_fwdIcon.height(), }, "gridcfg": {"sticky": "nesw", "row": -1, "column": 6}, "command": self.FastForward_cb, } ) if self.buttonMask.get("gotoEndB", None) is not False: ifd.append( { "name": "gotoEndB", "widgetType": Tkinter.Button, #'text':'gotoEnd', "tooltip": "sets frame to current endFrame", "wcfg": { "bd": 4, "image": self.gotoEndIcon, "width": self.gotoEndIcon.width(), "height": self.gotoEndIcon.height(), }, "gridcfg": {"sticky": "nesw", "row": -1, "column": 7}, "command": self.GoToEnd_cb, } ) if self.buttonMask.get("modeB", None) is not False: ifd.append( { "name": "modeB", "widgetType": Tkinter.Button, "text": "Change Mode", "tooltip": "opens panel to change play options", "wcfg": { "bd": 4, "image": self.chmodIcon, "width": self.chmodIcon.width(), "height": self.chmodIcon.height(), }, "gridcfg": {"sticky": "nesw", "row": -1, "column": 8}, "command": self.SetMode_cb, } ) if pymediaFound and self.buttonMask.get("recordB", None) is not False: ifd.append( { "name": "recordB", "widgetType": Tkinter.Checkbutton, "text": "Record", "tooltip": "record an mpeg movie into movie_####.mpg", "defaultValue": 0, "wcfg": { "bd": 4, "variable": Tkinter.IntVar(), "image": self.recIcon, "width": self.recIcon.width(), "height": self.recIcon.height(), "indicatoron": 0, }, "gridcfg": {"sticky": "nesw", "row": -1, "column": 9}, "command": self.startRecording_cb, } ) if self.buttonMask.get("setanimB", None) is not False: ifd.append( { "name": "setanimB", "widgetType": Tkinter.Button, "text": "SetAnim", "tooltip": "Set Animation", "wcfg": {"bd": 4}, "gridcfg": {"sticky": "nesw", "row": -1, "column": 10}, "command": self.SetAnim_cb, } ) if self.buttonMask.get("closeB", None) is not False: ifd.append( { "name": "closeB", "widgetType": Tkinter.Button, "text": "Close", "tooltip": "closes player", "wcfg": { "bd": 4, "image": self.closeIcon, "width": self.closeIcon.width(), "height": self.closeIcon.height(), }, "gridcfg": {"sticky": "nesw", "row": -1, "column": 11}, #'gridcfg':{'sticky':'nesw', 'columnspan':2}, "command": self.Close_cb, } ) if self.hasSlider: ifd.append( { "name": "slider", "widgetType": Tkinter.Scale, "wcfg": {"orient": "horizontal", "from_": self.startFrame, "to": self.maxFrame, "showvalue": False}, "gridcfg": {"sticky": "nesw", "row": 1, "column": 0, "columnspan": 12}, "command": self.nextFrame, } ) # form = self.vf.getUserInput(ifd, modal=0,blocking=0) form = InputForm(self.master, self.root, descr=ifd, modal=0, blocking=0, closeWithWindow=1) form.ifd = ifd form.playB = form.ifd.entryByName["playB"]["widget"] form.playRevB = form.ifd.entryByName["playRevB"]["widget"] # set up link to balloon help which needs to change, also form.playTT = form.ifd.entryByName["playB"]["balloon"] form.playRevTT = form.ifd.entryByName["playRevB"]["balloon"] if self.hasCounter: ctr = ifd.entryByName["statesCounter"]["widget"] entF = ctr.component("entryfield") form.ent2 = entF._entryFieldEntry da = ctr.component("downarrow") ua = ctr.component("uparrow") for item in [da, ua]: item.bind("<ButtonPress-1>", self.SetState_cb, "+") form.ent2.bind("<Return>", self.SetState_cb, "+") form.counter = form.ifd.entryByName["statesCounter"]["widget"] if self.hasSlider: slider = form.ifd.entryByName["slider"]["widget"] slider.set(self.currentFrameIndex) # print 'returning form' return form
def buildForm(self, titleStr): #??FIX THIS: self.stop = 1 if hasattr(self, 'form'): self.form.deiconify() return maxval = self.endFrame ifd = InputFormDescr(title=titleStr) if self.hasCounter: ifd.append({'widgetType':Pmw.Counter, 'name':'statesCounter', 'required':1, 'tooltip':'used to show frames via random access', 'wcfg':{#'labelpos': 'n, #'label_text':'conformation: ', 'autorepeat':0, 'entryfield_value':self.startFrame, #'entryfield_value':self.idList[0], 'datatype': self.custom_counter, 'entry_width':9, 'entryfield_validate': self.custom_validate }, 'gridcfg':{'sticky':'nesw', 'columnspan':2}}) ifd.append({'name': 'playB', 'widgetType': Tkinter.Button, 'text':'Play', 'tooltip':'play sequence according to current play mode', 'wcfg':{'bd':4}, 'gridcfg':{'sticky':'nesw','columnspan':1}, 'command':self.Play_cb}) ifd.append({'name': 'playRevB', 'widgetType': Tkinter.Button, 'text':'Play Reverse', 'wcfg':{'bd':4}, 'gridcfg':{'sticky':'nesw','row':-1, 'column':1}, 'command':self.PlayRev_cb}) ifd.append({'name': 'playTB', 'widgetType': Tkinter.Button, 'text':'Play+Return', 'wcfg':{'bd':4}, 'gridcfg':{'sticky':'nesw','columnspan':1}, 'command':self.PlayReturn_cb}) ifd.append({'name': 'loopB', 'widgetType': Tkinter.Button, 'text':'Loop', 'wcfg':{'bd':4}, 'gridcfg':{'sticky':'nesw','row':-1, 'column':1}, 'command':self.Loop_cb}) ifd.append({'name': 'stopB', 'widgetType': Tkinter.Button, 'text':'Stop', 'tooltip':'stop play', 'wcfg':{'bd':4, }, 'gridcfg':{'sticky':'nesw'}, 'command':self.Stop_cb}) #add fastforward, fastrewind, thumbwheel for speed ifd.append({'name': 'pauseB', 'widgetType': Tkinter.Button, 'text':'Pause', 'wcfg':{'bd':4}, 'gridcfg':{'sticky':'nesw','row':-1, 'column':1}, 'command':self.Pause_cb}) ifd.append({'name': 'closeB', 'widgetType': Tkinter.Button, 'text':'Close', 'wcfg':{'bd':4}, #'gridcfg':{'sticky':'nesw','row':-1, 'column':1}, 'gridcfg':{'sticky':'nesw', 'columnspan':2}, 'command':self.Close_cb}) form = InputForm(self.master, self.root, descr = ifd, modal = 0, blocking = 0,closeWithWindow=1) form.ifd = ifd if self.hasCounter: ctr = ifd.entryByName['statesCounter']['widget'] entF = ctr.component('entryfield') form.ent2 = entF._entryFieldEntry da = ctr.component('downarrow') ua = ctr.component('uparrow') for item in [da,ua]: item.bind('<ButtonPress-1>', self.SetState_cb, '+') form.ent2.bind('<Return>', self.SetState_cb, '+') form.counter = form.ifd.entryByName['statesCounter']['widget'] form.stopB = form.ifd.entryByName['stopB']['widget'] form.playB = form.ifd.entryByName['playB']['widget'] form.playRevB = form.ifd.entryByName['playRevB']['widget'] #print 'returning form1' self.form = form return form
def buildForm2(self, titleStr): self.stop = 1 if hasattr(self, 'form'): if hasattr(self.form, 'deiconify'): self.form.deiconify() return maxval = self.endFrame ifd = InputFormDescr(title=titleStr) ifd.append({'name': 'gotoStartB', 'widgetType': Tkinter.Button, #'text':'gotoStart', 'tooltip':'sets frame to current startFrame', 'wcfg':{'bd':4, 'image':self.gotoStartIcon, 'width':self.gotoStartIcon.width(), 'height':self.gotoStartIcon.height() }, 'gridcfg':{'sticky':'nesw'}, 'command':self.GoToStart_cb}) ifd.append({'name': 'fastReverseB', 'widgetType': Tkinter.Button, #'text':'fastReverse', 'tooltip':'play reverse as fast as possible', 'wcfg':{'bd':4, 'image':self.ff_revIcon, 'width':self.ff_revIcon.width(), 'height':self.ff_revIcon.height() }, 'gridcfg':{'sticky':'nesw', 'row':-1, 'column':1}, 'command':self.FastReverse_cb}) ifd.append({'name': 'playRevB', 'widgetType': Tkinter.Button, #'text':'Play Reverse', 'tooltip':'play reverse according to current play mode', 'wcfg':{'bd':4, 'image':self.playRevIcon, 'width':self.playRevIcon.width(), 'height':self.playRevIcon.height()}, 'gridcfg':{'sticky':'nesw','row':-1, 'column':2}, 'command':self.PlayRev_cb}) if self.hasCounter: ifd.append({'widgetType':Pmw.Counter, 'name':'statesCounter', 'required':1, 'tooltip':'used to show frames via random access', 'wcfg':{#'labelpos': 'n, #'label_text':'conformation: ', 'autorepeat':0, 'entryfield_value':self.startFrame, #'entryfield_value':self.idList[0], 'datatype': self.custom_counter, 'entry_width':3, 'entryfield_validate': self.custom_validate }, 'gridcfg':{'sticky':'nesw', 'row':-1, 'column':3,'columnspan':2}}) ifd.append({'name': 'playB', 'widgetType': Tkinter.Button, #'text':'Play', 'tooltip':'play forward according to current play mode', 'wcfg':{'bd':4, 'image':self.playIcon, 'width':self.playIcon.width(), 'height':self.playIcon.height() }, 'gridcfg':{'sticky':'nesw', 'row':-1, 'column':5}, 'command':self.Play_cb}) ifd.append({'name': 'fastForwardB', 'widgetType': Tkinter.Button, #'text':'fastForward', 'tooltip':'play as fast as possible', 'wcfg':{'bd':4, 'image': self.ff_fwdIcon, 'width':self.ff_fwdIcon.width(), 'height':self.ff_fwdIcon.height() }, 'gridcfg':{'sticky':'nesw','row':-1, 'column':6}, 'command':self.FastForward_cb}) ifd.append({'name': 'gotoEndB', 'widgetType': Tkinter.Button, #'text':'gotoEnd', 'tooltip':'sets frame to current endFrame', 'wcfg':{'bd':4, 'image':self.gotoEndIcon, 'width':self.gotoEndIcon.width(), 'height':self.gotoEndIcon.height() }, 'gridcfg':{'sticky':'nesw','row':-1, 'column':7}, 'command':self.GoToEnd_cb}) ifd.append({'name': 'modeB', 'widgetType': Tkinter.Button, 'text':'Change Mode', 'tooltip':'opens panel to change play options', 'wcfg':{'bd':4, 'image':self.chmodIcon, 'width':self.chmodIcon.width(), 'height':self.chmodIcon.height() }, 'gridcfg':{'sticky':'nesw','row':-1, 'column':8}, 'command':self.SetMode_cb}) ifd.append({'name': 'setanimB', 'widgetType': Tkinter.Button, 'text':'SetAnim', 'tooltip':'Set Animation', 'wcfg':{'bd':4}, 'gridcfg':{'sticky':'nesw','row':-1, 'column':9}, 'command':self.SetAnim_cb}) ifd.append({'name': 'closeB', 'widgetType': Tkinter.Button, 'text':'Close', 'tooltip':'closes player', 'wcfg':{'bd':4, 'image':self.closeIcon, 'width':self.closeIcon.width(), 'height':self.closeIcon.height(), }, 'gridcfg':{'sticky':'nesw','row':-1, 'column':10}, #'gridcfg':{'sticky':'nesw', 'columnspan':2}, 'command':self.Close_cb}) if self.hasSlider: ifd.append({'name': 'slider', 'widgetType': Tkinter.Scale, 'wcfg':{'orient':'horizontal', 'from_':self.startFrame, 'to':self.maxFrame, 'showvalue':False}, 'gridcfg':{'sticky':'nesw','row':1, 'column':0, 'columnspan':11}, 'command':self.nextFrame }) #form = self.vf.getUserInput(ifd, modal=0,blocking=0) form = InputForm(self.master, self.root, descr = ifd, modal = 0, blocking = 0, closeWithWindow=1) form.ifd = ifd form.playB = form.ifd.entryByName['playB']['widget'] form.playRevB = form.ifd.entryByName['playRevB']['widget'] #set up link to balloon help which needs to change, also form.playTT = form.ifd.entryByName['playB']['balloon'] form.playRevTT = form.ifd.entryByName['playRevB']['balloon'] if self.hasCounter: ctr = ifd.entryByName['statesCounter']['widget'] entF = ctr.component('entryfield') form.ent2 = entF._entryFieldEntry da = ctr.component('downarrow') ua = ctr.component('uparrow') for item in [da,ua]: item.bind('<ButtonPress-1>', self.SetState_cb, '+') form.ent2.bind('<Return>', self.SetState_cb, '+') form.counter = form.ifd.entryByName['statesCounter']['widget'] #print 'returning form' return form
def buildForm(self, titleStr): #??FIX THIS: self.stop = 1 if hasattr(self, 'form'): self.form.deiconify() return maxval = self.endFrame ifd = InputFormDescr(title=titleStr) if self.hasCounter: ifd.append({ 'widgetType': Pmw.Counter, 'name': 'statesCounter', 'required': 1, 'tooltip': 'used to show frames via random access', 'wcfg': { #'labelpos': 'n, #'label_text':'conformation: ', 'autorepeat': 0, 'entryfield_value': self.startFrame, #'entryfield_value':self.idList[0], 'datatype': self.custom_counter, 'entry_width': 9, 'entryfield_validate': self.custom_validate }, 'gridcfg': { 'sticky': 'nesw', 'columnspan': 2 } }) ifd.append({ 'name': 'playB', 'widgetType': Tkinter.Button, 'text': 'Play', 'tooltip': 'play sequence according to current play mode', 'wcfg': { 'bd': 4 }, 'gridcfg': { 'sticky': 'nesw', 'columnspan': 1 }, 'command': self.Play_cb }) ifd.append({ 'name': 'playRevB', 'widgetType': Tkinter.Button, 'text': 'Play Reverse', 'wcfg': { 'bd': 4 }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 1 }, 'command': self.PlayRev_cb }) ifd.append({ 'name': 'playTB', 'widgetType': Tkinter.Button, 'text': 'Play+Return', 'wcfg': { 'bd': 4 }, 'gridcfg': { 'sticky': 'nesw', 'columnspan': 1 }, 'command': self.PlayReturn_cb }) ifd.append({ 'name': 'loopB', 'widgetType': Tkinter.Button, 'text': 'Loop', 'wcfg': { 'bd': 4 }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 1 }, 'command': self.Loop_cb }) ifd.append({ 'name': 'stopB', 'widgetType': Tkinter.Button, 'text': 'Stop', 'tooltip': 'stop play', 'wcfg': { 'bd': 4, }, 'gridcfg': { 'sticky': 'nesw' }, 'command': self.Stop_cb }) #add fastforward, fastrewind, thumbwheel for speed ifd.append({ 'name': 'pauseB', 'widgetType': Tkinter.Button, 'text': 'Pause', 'wcfg': { 'bd': 4 }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 1 }, 'command': self.Pause_cb }) ifd.append({ 'name': 'closeB', 'widgetType': Tkinter.Button, 'text': 'Close', 'wcfg': { 'bd': 4 }, #'gridcfg':{'sticky':'nesw','row':-1, 'column':1}, 'gridcfg': { 'sticky': 'nesw', 'columnspan': 2 }, 'command': self.Close_cb }) form = InputForm(self.master, self.root, descr=ifd, modal=0, blocking=0, closeWithWindow=1) form.ifd = ifd if self.hasCounter: ctr = ifd.entryByName['statesCounter']['widget'] entF = ctr.component('entryfield') form.ent2 = entF._entryFieldEntry da = ctr.component('downarrow') ua = ctr.component('uparrow') for item in [da, ua]: item.bind('<ButtonPress-1>', self.SetState_cb, '+') form.ent2.bind('<Return>', self.SetState_cb, '+') form.counter = form.ifd.entryByName['statesCounter']['widget'] form.stopB = form.ifd.entryByName['stopB']['widget'] form.playB = form.ifd.entryByName['playB']['widget'] form.playRevB = form.ifd.entryByName['playRevB']['widget'] #print 'returning form1' self.form = form return form
def buildForm2(self, titleStr): self.stop = 1 if hasattr(self, 'form'): if hasattr(self.form, 'deiconify'): self.form.deiconify() return maxval = self.endFrame ifd = InputFormDescr(title=titleStr) if self.buttonMask.get('gotoStartB', None) is not False: ifd.append({ 'name': 'gotoStartB', 'widgetType': Tkinter.Button, #'text':'gotoStart', 'tooltip': 'sets frame to current startFrame', 'wcfg': { 'bd': 4, 'image': self.gotoStartIcon, 'width': self.gotoStartIcon.width(), 'height': self.gotoStartIcon.height() }, 'gridcfg': { 'sticky': 'nesw' }, 'command': self.GoToStart_cb }) if self.buttonMask.get('fastReverseB', None) is not False: ifd.append({ 'name': 'fastReverseB', 'widgetType': Tkinter.Button, #'text':'fastReverse', 'tooltip': 'play reverse as fast as possible', 'wcfg': { 'bd': 4, 'image': self.ff_revIcon, 'width': self.ff_revIcon.width(), 'height': self.ff_revIcon.height() }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 1 }, 'command': self.FastReverse_cb }) if self.buttonMask.get('playRevB', None) is not False: ifd.append({ 'name': 'playRevB', 'widgetType': Tkinter.Button, #'text':'Play Reverse', 'tooltip': 'play reverse according to current play mode', 'wcfg': { 'bd': 4, 'image': self.playRevIcon, 'width': self.playRevIcon.width(), 'height': self.playRevIcon.height() }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 2 }, 'command': self.PlayRev_cb }) if self.hasCounter: ifd.append({ 'widgetType': Pmw.Counter, 'name': 'statesCounter', 'required': 1, 'tooltip': 'used to show frames via random access', 'wcfg': { #'labelpos': 'n, #'label_text':'conformation: ', 'autorepeat': 0, 'entryfield_value': self.startFrame, #'entryfield_value':self.idList[0], 'datatype': self.custom_counter, 'entry_width': 3, 'entryfield_validate': self.custom_validate }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 3, 'columnspan': 2 } }) if self.buttonMask.get('playB', None) is not False: ifd.append({ 'name': 'playB', 'widgetType': Tkinter.Button, #'text':'Play', 'tooltip': 'play forward according to current play mode', 'wcfg': { 'bd': 4, 'image': self.playIcon, 'width': self.playIcon.width(), 'height': self.playIcon.height() }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 5 }, 'command': self.Play_cb }) if self.buttonMask.get('fastForwardB', None) is not False: ifd.append({ 'name': 'fastForwardB', 'widgetType': Tkinter.Button, #'text':'fastForward', 'tooltip': 'play as fast as possible', 'wcfg': { 'bd': 4, 'image': self.ff_fwdIcon, 'width': self.ff_fwdIcon.width(), 'height': self.ff_fwdIcon.height() }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 6 }, 'command': self.FastForward_cb }) if self.buttonMask.get('gotoEndB', None) is not False: ifd.append({ 'name': 'gotoEndB', 'widgetType': Tkinter.Button, #'text':'gotoEnd', 'tooltip': 'sets frame to current endFrame', 'wcfg': { 'bd': 4, 'image': self.gotoEndIcon, 'width': self.gotoEndIcon.width(), 'height': self.gotoEndIcon.height() }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 7 }, 'command': self.GoToEnd_cb }) if self.buttonMask.get('modeB', None) is not False: ifd.append({ 'name': 'modeB', 'widgetType': Tkinter.Button, 'text': 'Change Mode', 'tooltip': 'opens panel to change play options', 'wcfg': { 'bd': 4, 'image': self.chmodIcon, 'width': self.chmodIcon.width(), 'height': self.chmodIcon.height() }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 8 }, 'command': self.SetMode_cb }) if pymediaFound and self.buttonMask.get('recordB', None) is not False: ifd.append({ 'name': 'recordB', 'widgetType': Tkinter.Checkbutton, 'text': 'Record', 'tooltip': 'record an mpeg movie into movie.mpeg', 'defaultValue': 0, 'wcfg': { 'bd': 4, 'variable': Tkinter.IntVar(), 'image': self.recIcon, 'width': self.recIcon.width(), 'height': self.recIcon.height(), 'indicatoron': 0, }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 9 }, 'command': self.startRecording_cb }) if self.buttonMask.get('setanimB', None) is not False: ifd.append({ 'name': 'setanimB', 'widgetType': Tkinter.Button, 'text': 'SetAnim', 'tooltip': 'Set Animation', 'wcfg': { 'bd': 4 }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 10 }, 'command': self.SetAnim_cb }) if self.buttonMask.get('closeB', None) is not False: ifd.append({ 'name': 'closeB', 'widgetType': Tkinter.Button, 'text': 'Close', 'tooltip': 'closes player', 'wcfg': { 'bd': 4, 'image': self.closeIcon, 'width': self.closeIcon.width(), 'height': self.closeIcon.height(), }, 'gridcfg': { 'sticky': 'nesw', 'row': -1, 'column': 11 }, #'gridcfg':{'sticky':'nesw', 'columnspan':2}, 'command': self.Close_cb }) if self.hasSlider: ifd.append({ 'name': 'slider', 'widgetType': Tkinter.Scale, 'wcfg': { 'orient': 'horizontal', 'from_': self.startFrame, 'to': self.maxFrame, 'showvalue': False }, 'gridcfg': { 'sticky': 'nesw', 'row': 1, 'column': 0, 'columnspan': 12 }, 'command': self.nextFrame }) #form = self.vf.getUserInput(ifd, modal=0,blocking=0) form = InputForm(self.master, self.root, descr=ifd, modal=0, blocking=0, closeWithWindow=1) form.ifd = ifd form.playB = form.ifd.entryByName['playB']['widget'] form.playRevB = form.ifd.entryByName['playRevB']['widget'] #set up link to balloon help which needs to change, also form.playTT = form.ifd.entryByName['playB']['balloon'] form.playRevTT = form.ifd.entryByName['playRevB']['balloon'] if self.hasCounter: ctr = ifd.entryByName['statesCounter']['widget'] entF = ctr.component('entryfield') form.ent2 = entF._entryFieldEntry da = ctr.component('downarrow') ua = ctr.component('uparrow') for item in [da, ua]: item.bind('<ButtonPress-1>', self.SetState_cb, '+') form.ent2.bind('<Return>', self.SetState_cb, '+') form.counter = form.ifd.entryByName['statesCounter']['widget'] if self.hasSlider: slider = form.ifd.entryByName['slider']['widget'] slider.set(self.currentFrameIndex) #print 'returning form' return form