def make_timelines( self ): if not self._drawable: return dr = self._drawable params = system.get_object_params( dr ) params.append( ('_alpha', parameters.SCALAR, 1.0) ) Element.make_timelines( self, params )
def make_timelines( self ): if not self._drawable: return dr = self._drawable params = system.get_object_params( dr ) #params_keys = [x[0] for x in params] if '_alpha' in self._defaults.keys(): params.append( ('_alpha', parameters.SCALAR, self._defaults['_alpha']) ) else: params.append( ('_alpha', parameters.SCALAR, 1.0) ) Element.make_timelines( self, params )
def make_timelines(self): if not self._drawable: return dr = self._drawable params = system.get_object_params(dr) #params_keys = [x[0] for x in params] if '_alpha' in self._defaults.keys(): params.append( ('_alpha', parameters.SCALAR, self._defaults['_alpha'])) else: params.append(('_alpha', parameters.SCALAR, 1.0)) Element.make_timelines(self, params)
def build_diagram_controls( self, index, object, pdict ): params = system.get_object_params( object ) ranges = system.get_object_param_ranges( object ) oldpdict = self.pdict self.pdict = {} self.wcontrols = [] self.wlabels = [] self.tkvars = {} j = 0 for name, ptype, value in params: if name in pdict: self.pdict[name] = pdict[name] elif name in oldpdict: self.pdict[name] = oldpdict[name] else: self.pdict[name] = value if ptype == parameters.SCALAR: wl = Tk.Label( self.controls, text = name, font = self.labelfont ) wl.grid( row = j, column = 0, sticky = Tk.E ) self.wlabels.append( wl ) v = Tk.DoubleVar() w = Tk.Scale( self.controls, {'from' : ranges[name][0], 'to' : ranges[name][1]}, width = 5, res = math.fabs( ranges[name][1] - ranges[name][0] ) * 0.001, orient = 'h', variable = v, command = self.diagram_eval ) v.set( self.pdict[name] ) w.grid( row = j, column = 1, sticky = Tk.EW ) j += 1 self.wcontrols.append( w ) self.tkvars[name] = v elif ptype == parameters.INTEGER: wl = Tk.Label( self.controls, text = name, font = self.labelfont ) wl.grid( row = j, column = 0, sticky = Tk.E ) self.wlabels.append( wl ) v = Tk.IntVar() w = Tk.Scale( self.controls, {'from' : ranges[name][0], 'to' : ranges[name][1]}, width = 5, res = 1, orient = 'h', variable = v, command = self.diagram_eval ) v.set( self.pdict[name] ) w.grid( row = j, column = 1, sticky = Tk.EW ) j += 1 self.wcontrols.append( w ) self.tkvars[name] = v elif ptype == parameters.BOOLEAN: wl = Tk.Label( self.controls, text = name, font = self.labelfont ) wl.grid( row = j, column = 0, sticky = Tk.E ) self.wlabels.append( wl ) v = Tk.BooleanVar() w = Tk.Checkbutton( self.controls, variable = v, command = self.diagram_eval ) v.set( self.pdict[name] ) w.grid( row = j, column = 1, sticky = Tk.W ) j += 1 self.wcontrols.append( w ) self.tkvars[name] = v elif ptype == parameters.STRING: wl = Tk.Label( self.controls, text = name, font = self.labelfont ) wl.grid( row = j, column = 0, sticky = Tk.E ) self.wlabels.append( wl ) v = Tk.StringVar() w = Tk.Entry( self.controls, width = 40, textvariable = v ) w.bind( '<Key-Return>', self.diagram_eval ) v.set( self.pdict[name] ) w.grid( row = j, column = 1, sticky = Tk.W ) j += 1 self.wcontrols.append( w ) self.tkvars[name] = v elif ptype == parameters.COLOR: wl = Tk.Label( self.controls, text = name, font = self.labelfont ) wl.grid( row = j, column = 0, sticky = Tk.E ) self.wlabels.append( wl ) c = self.pdict[name] vr = Tk.DoubleVar() vr.set( c[0] ) vg = Tk.DoubleVar() vg.set( c[1] ) vb = Tk.DoubleVar() vb.set( c[2] ) va = Tk.DoubleVar() va.set( c[3] ) w = Tk.Frame( self.controls ) wr = Tk.Scale( w, {'from' : 0.0, 'to' : 1.0}, width = 5, res = 0.01, orient = 'h', variable = vr, command = self.diagram_eval ) wg = Tk.Scale( w, {'from' : 0.0, 'to' : 1.0}, width = 5, res = 0.01, orient = 'h', variable = vg, command = self.diagram_eval ) wb = Tk.Scale( w, {'from' : 0.0, 'to' : 1.0}, width = 5, res = 0.01, orient = 'h', variable = vb, command = self.diagram_eval ) wa = Tk.Scale( w, {'from' : 0.0, 'to' : 1.0}, width = 5, res = 0.01, orient = 'h', variable = va, command = self.diagram_eval ) wr.pack( side = 'left', fill = 'x', expand = 1 ) wg.pack( side = 'left', fill = 'x', expand = 1 ) wb.pack( side = 'left', fill = 'x', expand = 1 ) wa.pack( side = 'left', fill = 'x', expand = 1 ) w.grid( row = j, column = 1, sticky = Tk.EW ) j += 1 self.wcontrols.append( w ) self.tkvars[name] = (vr, vg, vb, va) self.controls.grid_columnconfigure( 1, weight = 1 ) self.controls.grid_columnconfigure( 0, weight = 0 ) self.object = object self.index = index