Example #1
0
 def __init__( self, parent, defaultfont=None, showstyles=None ):
    self._family       = Tix.StringVar(  value='Ariel'       )
    self._sizeString   = Tix.StringVar(  value='12'          )
    self._weight       = Tix.StringVar(  value=tkFont.NORMAL )
    self._slant        = Tix.StringVar(  value=tkFont.ROMAN  )
    self._isUnderline  = Tix.BooleanVar( value=False         )
    self._isOverstrike = Tix.BooleanVar( value=False         )
    
    if defaultfont:
       self._initialize( defaultfont )
    
    self._currentFont  = tkFont.Font( font=self.getFontTuple() )
    
    self._showStyles   = showstyles
    
    self.sampleText      = None
    
    tkSimpleDialog.Dialog.__init__( self, parent, 'Font Chooser' )
Example #2
0
    def __build__(self,root,row):
        self._value = Tix.BooleanVar(root)
        self._value.set(self.opt.default)
        self.TkLabel=Tix.Label(root, text=self.label+':')
        self.TkCheckbutton=Tix.Checkbutton(root, variable=self._value)
        self.TkLabel.grid(row=row, column=0,sticky=Tix.W)
        self.TkCheckbutton.grid(row=row, column=1,sticky=Tix.W)
        if self.tooltip:
            self.TkLabelToolTip=_ToolTip(self.TkLabel, delay=250, follow_mouse=1, text=self.tooltip)
            self.TkCheckbuttonToolTip=_ToolTip(self.TkCheckbutton, delay=250, follow_mouse=1, text=self.tooltip)

        self._value.trace('w',self.callback)
        self.enabled=self.enabled #Force update
    def __init__(self, parent, mainhandler, enable=True):
        self.contypes = {}
        OpenIPMI.parse_args_iter_help(self)
        if (len(self.contypes) == 0):
            return

        Tix.ScrolledWindow.__init__(self, parent, height=300, width=600)
        self.parent = parent
        self.enable = enable

        if (not enable):
            self.enablevar = Tix.BooleanVar()
            self.enable_box = Tix.Checkbutton(self.window,
                                              text="Enable",
                                              variable=self.enablevar)
            self.enable_box.pack(side=Tix.TOP)
            pass

        self.contype = Tix.Select(self.window,
                                  label="Connection Type",
                                  radio=1,
                                  allowzero=0,
                                  command=self.selectType)
        for key in self.contypes.keys():
            self.contype.add(key, text=key)
            pass
        self.contype.pack(side=Tix.TOP)

        self.coninfos = []

        show = True
        panel = Tix.Frame(self.window)
        panel.pack(side=Tix.TOP, fill=Tix.BOTH, expand=1)
        for ct in self.contypes.keys():
            cti = ConnTypeInfo(ct, panel)
            if (show):
                cti.pack()
                self.currcon = cti
                show = False
                pass
            self.coninfos.append(cti)
            pass

        self.contype.invoke(list(self.contypes.keys())[0])

        return
    def __init__(self, contype, parent):
        Tix.Frame.__init__(self, parent)
        self.contype = contype
        self.fields = []

        args = OpenIPMI.alloc_empty_args(str(contype))
        self.args = args

        self.errstr = gui_errstr.ErrStr(self)
        self.errstr.pack(side=Tix.TOP, fill=Tix.X, expand=1)

        i = 0
        rv = 0
        frame = None
        while (rv == 0):
            name = [""]
            vtype = [""]
            vrange = [""]
            vhelp = [""]
            value = [""]
            rv = args.get_val(i, name, vtype, vhelp, value, vrange)
            if (rv == 0):
                if (vhelp[0][0] == '*'):
                    optional = False
                    vhelp[0] = vhelp[0][1:]
                else:
                    optional = True
                    pass
                if (vhelp[0][0] == '!'):
                    password = True
                    vhelp[0] = vhelp[0][1:]
                else:
                    password = False
                    pass

                if (vtype[0] == "bool"):
                    if (frame == None):
                        didframe = True
                        frame = Tix.Frame(self)
                        frame.pack(side=Tix.TOP)
                        newframe = frame
                        pass
                    else:
                        newframe = None
                        pass
                    fw = Tix.BooleanVar()
                    w = Tix.Checkbutton(frame, text=name[0], variable=fw)
                    w.pack(side=Tix.LEFT, padx=10)
                    if ((value[0] != None) and (value[0] == "true")):
                        fw.set(True)
                        pass
                    pass
                elif (vtype[0] == "enum"):
                    do_box = False
                    fw = EnumHolder()
                    if (value[0] != None):
                        fw.set(value[0])
                        pass
                    else:
                        fw.set(vrange[0])
                        pass
                    w = Tix.Select(self,
                                   label=name[0],
                                   allowzero=0,
                                   radio=1,
                                   command=fw.SelectType)
                    for v in vrange:
                        w.add(v, text=v)
                        pass
                    newframe = None
                    w.invoke(fw.get())
                    w.pack()
                    pass
                elif (vtype[0] == "str") or (vtype[0] == "int"):
                    if (frame == None):
                        didframe = True
                        frame = Tix.Frame(self)
                        frame.pack(side=Tix.TOP)
                        newframe = frame
                        pass
                    else:
                        newframe = None
                        pass

                    if (value[0] == None):
                        value[0] = ""
                        pass
                    if (password):
                        options = "entry.show '*' entry.width 20"
                    else:
                        options = "entry.width 20"
                        pass
                    w = Tix.LabelEntry(frame, label=name[0], options=options)
                    w.entry.insert(Tix.END, value[0])
                    w.pack(side=Tix.LEFT, padx=10)
                    fw = w.entry
                    pass
                else:
                    i += 1
                    continue
                frame = newframe
                self.fields.append((i, name[0], vtype[0], fw))
                pass
            i += 1
            pass

        return
    def __init__(self,
                 name,
                 default,
                 count,
                 handler,
                 labels=None,
                 longtext=False):
        self.handler = handler
        Tix.Toplevel.__init__(self)
        self.title(name)
        self.longtext = longtext

        sw = Tix.ScrolledWindow(self)
        self.values = sw.window
        if (labels == None):
            if (count == 1):
                label = Tix.Label(self.values, text="Value:")
            else:
                label = Tix.Label(self.values, text="Value(s):")
                pass
            label.grid(row=0, column=0, sticky="e")
            self.fields = []
            row = 0
            for i in range(0, count):
                if (isbool(default[i])):
                    field = Tix.BooleanVar()
                    field.set(default[i])
                    w = Tix.Checkbutton(self.values, variable=field)
                    pass
                elif longtext:
                    field = Tix.Text(self.values)
                    field.insert("1.0", str(default[i]))
                    w = field
                else:
                    field = Tix.Entry(self.values)
                    field.insert("0", str(default[i]))
                    w = field
                    pass
                w.grid(row=row, column=1, sticky="ew")
                row += 1
                self.fields.append(field)
                pass
            pass
        else:
            self.fields = []
            row = 0
            for i in range(0, count):
                label = Tix.Label(self.values, text=labels[i])
                label.grid(row=row, column=0)
                if (isbool(default[i])):
                    field = Tix.BooleanVar()
                    field.set(default[i])
                    w = Tix.Checkbutton(self.values, variable=field)
                    pass
                elif longtext:
                    field = Tix.Text(self.values)
                    field.insert("1.0", str(default[i]))
                    w = field
                else:
                    field = Tix.Entry(self.values)
                    field.insert("0", str(default[i]))
                    w = field
                    pass
                self.fields.append(field)
                w.grid(row=row, column=1, sticky="ew")
                row += 1
                pass
            pass

        sw.pack(side=Tix.TOP, fill=Tix.BOTH, expand=1)

        self.errstr = gui_errstr.ErrStr(self)
        self.errstr.pack(side=Tix.TOP, fill=Tix.X, expand=1)

        bbox = Tix.ButtonBox(self)
        bbox.add("cancel", text="Cancel", command=lambda w=self: w.cancel())
        bbox.add("ok", text="Ok", command=lambda w=self: w.ok())
        bbox.pack(side=Tix.BOTTOM, fill=Tix.X, expand=1)

        self.bind("<Destroy>", self.OnDestroy)
        return
Example #6
0
 def __init__(self, parent, out):
     self.page = parent
     self.out = out
     self.flag = 'c'
     #        self.place = len(self.page.linelist)
     self.place = self.out.instrument.outlist.index(self.out)
     self.mute = tk.BooleanVar()
     self.mute.set(self.out.mute)
     self.mute.trace("w", self.mutechange)
     self.solo = tk.BooleanVar()
     self.solo.set(self.out.solo)
     self.solo.trace("w", self.solochange)
     self.volume = tk.DoubleVar()
     self.volume.set(self.out.volume)
     self.volume.trace("w", self.volumechange)
     self.instnum = tk.StringVar()
     self.instnum.set(self.out.instnum)
     self.instnum.trace("w", self.instnumchange)
     self.csdstring = tk.StringVar()
     self.csdstring.set(self.out.pfields)
     self.csdstring.trace("w", self.csdstringchange)
     self.frame = tk.Frame(self.page.toprow, bd=5, relief="ridge")
     self.frame.grid(row=self.place, column=0, columnspan=2, sticky='ew')
     self.frame.columnconfigure(0, weight=0)
     self.frame.columnconfigure(1, weight=0)
     self.frame.columnconfigure(2, weight=0)
     self.frame.columnconfigure(3, weight=0)
     self.frame.columnconfigure(4, weight=0)
     self.frame.columnconfigure(5, weight=0)
     self.frame.columnconfigure(6, weight=0)
     self.frame.columnconfigure(7, weight=0)
     self.frame.columnconfigure(8, weight=1)
     self.field1 = tk.Entry(self.frame, width=2)
     self.field1.grid(row=0, column=0, sticky='w', pady=10, padx=20)
     self.field1.insert(0, 'c')
     self.field1.configure(state='disabled')
     self.mutewidget = tk.Checkbutton(self.frame,
                                      height=1,
                                      width=1,
                                      variable=self.mute,
                                      bg='#ffaaaa',
                                      selectcolor='#996666',
                                      padx=2,
                                      pady=0,
                                      indicatoron=0,
                                      activebackground='#ff8888')
     self.mutewidget.grid(row=0, column=1, rowspan=1)
     self.solowidget = tk.Checkbutton(self.frame,
                                      height=1,
                                      width=1,
                                      variable=self.solo,
                                      bg='#aaffaa',
                                      selectcolor='#669966',
                                      padx=2,
                                      pady=0,
                                      indicatoron=0,
                                      activebackground='#88ff88')
     self.solowidget.grid(row=0, column=2, rowspan=1)
     self.field2label = tk.Label(self.frame, text="inst")
     self.field2label.grid(row=0,
                           column=self.page.cc1,
                           rowspan=1,
                           columnspan=self.page.ccs1,
                           sticky='w')
     self.field2 = tk.Entry(self.frame, width=8, textvariable=self.instnum)
     self.field2.grid(row=0,
                      column=self.page.cc2,
                      rowspan=1,
                      columnspan=self.page.ccs2,
                      sticky='w')
     self.field2.focus_set()
     self.field2.select_range(0, "end")
     self.field2.bind("<FocusOut>", self.stringupdate)
     self.field3label = tk.Label(self.frame, text="   time dur ")
     self.field3label.grid(row=0,
                           column=self.page.cc3,
                           rowspan=1,
                           columnspan=self.page.ccs3)
     self.field3 = tk.Entry(self.frame,
                            width=30,
                            textvariable=self.csdstring)
     self.field3.grid(row=0,
                      column=self.page.cc4,
                      rowspan=1,
                      columnspan=self.page.ccs4,
                      sticky='w')
     self.field3.bind("<FocusOut>", self.stringupdate)
     self.x = tk.Button(self.frame,
                        text="x",
                        padx=0,
                        pady=0,
                        command=self.remove)
     self.x.grid(row=0, column=self.page.cc5, sticky='e', padx=40)
     self.volumewidget = tk.Scale(self.frame,
                                  orient="horizontal",
                                  width=7,
                                  fg='#552288',
                                  sliderlength=10,
                                  sliderrelief='raised',
                                  tickinterval=10,
                                  from_=-90,
                                  to=10,
                                  resolution=.1,
                                  variable=self.volume)
     self.volumewidget.set(self.out.volume)
     self.volumewidget.grid(row=1,
                            column=0,
                            columnspan=11,
                            sticky='ew',
                            pady=2)
     self.page.widget.update_idletasks()
     bottomy = self.page.toprow.winfo_reqheight()
     self.page.canvas.coords(self.page.botrowoncanvas, 0, bottomy)
     self.page.canvas.config(scrollregion=self.page.canvas.bbox("all"))
     self.page.canvas.yview_moveto(1.0)
     if self.page.scroll.winfo_ismapped():
         #            print self.page.scroll.get()
         pass
     else:
         self.page.widget.update_idletasks()
         #            print self.page.scroll.get()
         if self.page.scroll.get() != (0.0, 1.0):
             self.page.scroll.grid(row=1, column=1, sticky='ns')
Example #7
0
    def __init__(self, ui, domain_id, cnum):
        Tix.Toplevel.__init__(self)
        self.ui = ui
        self.cnum = cnum;
        self.sol = None
        domain_id.to_domain(self)
        if (self.sol == None):
            return
        self.nack_count = 0
        self.take_input = True
        self.in_destroy = False
        self.title("SoL for " + self.dname + " connection "
                   + str(self.cnum))

        mbar = Tix.Frame(self)
        fileb = Tix.Menubutton(mbar, text="File", underline=0, takefocus=0)
        filemenu = Tix.Menu(fileb, tearoff=0)
        self.filemenu = filemenu
        fileb["menu"] = filemenu
        filemenu.add_command(label="Open", command=self.open)
        filemenu.add_command(label="Close", command=self.close,
                             state="disabled")
        filemenu.add_command(label="Force Close", command=self.forceclose,
                             state="disabled")
        filemenu.add_command(label="Quit", command=self.quit)
        
        ctrlb = Tix.Menubutton(mbar, text="Controls", underline=0, takefocus=0)
        ctrlmenu = Tix.Menu(ctrlb, tearoff=0)
        self.ctrlmenu = ctrlmenu
        ctrlb["menu"] = ctrlmenu

        self.acceptinput = Tix.BooleanVar()
        self.acceptinput.set(True)
        ctrlmenu.add_checkbutton(label="Accept Input",
                                 variable=self.acceptinput,
                                 command=self.AcceptInputToggle)

        self.useenc = Tix.BooleanVar()
        self.useenc.set(self.sol.get_use_encryption())
        ctrlmenu.add_checkbutton(label="Use Encryption",
                                 variable=self.useenc,
                                 command=self.UseEncToggle)

        self.useauth = Tix.BooleanVar()
        self.useauth.set(self.sol.get_use_authentication())
        ctrlmenu.add_checkbutton(label="Use Authentication",
                                 variable=self.useauth,
                                 command=self.UseAuthToggle)

        self.deassert_on_connect = Tix.BooleanVar()
        self.deassert_on_connect.set(
            self.sol.get_deassert_CTS_DCD_DSR_on_connect())
        ctrlmenu.add_checkbutton(label="Deassert CTS/DCD/DSR on connect",
                                 variable=self.deassert_on_connect,
                                 command=self.DeassertOnConnectToggle)

        self.ctsassertable = Tix.BooleanVar()
        self.ctsassertable.set(True)
        ctrlmenu.add_checkbutton(label="CTS Assertable",
                                 variable=self.ctsassertable,
                                 command=self.CTSAssertableToggle,
                                 state="disabled")
        
        self.dcd_dsr = Tix.BooleanVar()
        self.dcd_dsr.set(True)
        ctrlmenu.add_checkbutton(label="DCD/DSR Asserted",
                                 variable=self.dcd_dsr,
                                 command=self.DCDDSRToggle,
                                 state="disabled")
        
        self.ri = Tix.BooleanVar()
        self.ri.set(False)
        ctrlmenu.add_checkbutton(label="RI Asserted",
                                 variable=self.ri,
                                 command=self.RIToggle,
                                 state="disabled")
        
        ctrlmenu.add_command(label="Set Ack Timeout",
                             command=self.SetAckTimeout)
        ctrlmenu.add_command(label="Set Ack Retries",
                             command=self.SetAckRetries)
        ctrlmenu.add_command(label="Send Break",
                             command=self.SendBreak, state="disabled")

        sermenu = Tix.Menu(ctrlmenu, tearoff=0)
        ctrlmenu.add_cascade(label="Serial Rate", menu=sermenu)
        self.servar = Tix.StringVar()
        self.servar.set("default")
        sermenu.add_radiobutton(label="Default", value="default",
                                variable=self.servar, command=self.SetRate)
        sermenu.add_radiobutton(label="9600", value="9600",
                                variable=self.servar, command=self.SetRate)
        sermenu.add_radiobutton(label="19200", value="19200",
                                variable=self.servar, command=self.SetRate)
        sermenu.add_radiobutton(label="38400", value="38400",
                                variable=self.servar, command=self.SetRate)
        sermenu.add_radiobutton(label="57600", value="57600",
                                variable=self.servar, command=self.SetRate)
        sermenu.add_radiobutton(label="115200", value="115200",
                                variable=self.servar, command=self.SetRate)

        serbehavemenu = Tix.Menu(ctrlmenu, tearoff=0)
        ctrlmenu.add_cascade(label="Serial Alert Behavior", menu=serbehavemenu)
        self.serbehave = Tix.StringVar()
        self.serbehave.set("fail")
        serbehavemenu.add_radiobutton(label="Serial Alerts Fail", value="fail",
                                      variable=self.serbehave,
                                      command=self.SetSerialAlerts)
        serbehavemenu.add_radiobutton(label="Serial Alerts Deferred",
                                      value="defer",
                                      variable=self.serbehave,
                                      command=self.SetSerialAlerts)
        serbehavemenu.add_radiobutton(label="Serial Alerts Succeed",
                                      value="succeed",
                                      variable=self.serbehave,
                                      command=self.SetSerialAlerts)

        flushmenu = Tix.Menu(ctrlmenu, tearoff=0)
        self.flushmenu = flushmenu
        ctrlmenu.add_cascade(label="Queue Flush", menu=flushmenu)
        fmenus = [ ]
        flushmenu.add_command(label="Flush BMC Transmit Queue",
                              command=self.FlushBMCXmit,
                              state="disabled")
        fmenus.append("Flush BMC Transmit Queue")
        flushmenu.add_command(label="Flush BMC Receive Queue",
                              command=self.FlushBMCRecv,
                              state="disabled")
        fmenus.append("Flush BMC Receive Queue")
        flushmenu.add_command(label="Flush My Transmit Queue",
                              command=self.FlushMyXmit,
                              state="disabled")
        fmenus.append("Flush My Transmit Queue")
        flushmenu.add_command(label="Flush My Receive Queue",
                              command=self.FlushMyRecv,
                              state="disabled")
        fmenus.append("Flush My Receive Queue")
        flushmenu.add_command(label="Flush BMC Queues",
                              command=self.FlushBMC,
                              state="disabled")
        fmenus.append("Flush BMC Queues")
        flushmenu.add_command(label="Flush My Queues",
                              command=self.FlushMe,
                              state="disabled")
        fmenus.append("Flush My Queues")
        flushmenu.add_command(label="Flush All Queues",
                              command=self.FlushAll,
                              state="disabled")
        fmenus.append("Flush All Queues")
        self.fmenus = fmenus

        mbar.pack(side=Tix.TOP, fill=Tix.X, expand=1)
        fileb.pack(side=Tix.LEFT)
        ctrlb.pack(side=Tix.LEFT)

        self.term = SolTerm(self, self)
        f = Tix.Frame(self)
        f.pack(side=Tix.BOTTOM, fill=Tix.X, expand=1)
        self.errstr = gui_errstr.ErrStr(f)
        self.errstr.pack(side=Tix.LEFT, fill=Tix.X, expand=1)
        self.statestr = gui_errstr.ErrStr(f)
        self.statestr.pack(side=Tix.LEFT, fill=Tix.X, expand=1)

        self.statestr.SetError(OpenIPMI.sol_state_string(
            OpenIPMI.sol_state_closed))
        self.state = OpenIPMI.sol_state_closed

        self.bind("<Destroy>", self.OnDestroy)
        return
Example #8
0
    def __init__(self, name, num_vals, light_list, vals, handler):
        self.handler = handler
        self.light_list = light_list
        Tix.Toplevel.__init__(self)
        self.title(name)

        svalues = Tix.ScrolledWindow(self)
        self.values = svalues.window
        self.lights = []

        row = 0
        for i in range(0, num_vals):
            if (len(vals) <= i):
                ivals = ("", "black", '0', '1')
            else:
                ivals = vals[i]
                pass

            label = Tix.Label(self.values, text="Light " + str(i))
            label.grid(row=row, column=0, sticky="e")
            if (light_list[i][0]):
                lc = Tix.BooleanVar()
                lcw = Tix.Checkbutton(self.values,
                                      text="Local Control",
                                      variable=lc)
                lc.set(ivals[0] == "lc")
                lcw.grid(row=row, column=1, sticky="ew")
                row += 1
            else:
                lc = None
                pass

            color = EnumHolder()
            colorw = Tix.Select(self.values,
                                label="Color",
                                allowzero=0,
                                radio=1,
                                command=color.SelectType)
            for v in light_list[i][1]:
                colorw.add(v, text=v)
                pass
            colorw.configure(value=ivals[1])
            colorw.grid(row=row, column=1, sticky="ew")
            row += 1

            ontime = Tix.LabelEntry(self.values, label="On Time")
            ontime.entry.insert("0", ivals[2])
            ontime.grid(row=row, column=1, sticky="ew")
            row += 1
            ontime = ontime.entry

            offtime = Tix.LabelEntry(self.values, label="Off Time")
            offtime.entry.insert("0", ivals[3])
            offtime.grid(row=row, column=1, sticky="ew")
            row += 1
            offtime = offtime.entry

            self.lights.append((lc, color, ontime, offtime))
            pass

        svalues.pack(side=Tix.TOP, fill=Tix.BOTH, expand=1)

        bbox = Tix.ButtonBox(self)
        bbox.add("cancel", text="Cancel", command=lambda w=self: w.cancel())
        bbox.add("ok", text="Ok", command=lambda w=self: w.ok_press())
        bbox.pack(side=Tix.BOTTOM, fill=Tix.X, expand=1)

        self.bind("<Destroy>", self.OnDestroy)
        return
Example #9
0
    def __init__(self, parent=None):
        if __name__ == '__main__':
            self.myparent = self.myroot = parent
            self.myparent.rowconfigure(0, weight=1)
            self.myparent.columnconfigure(0, weight=1)
            self.outputfr = tk.Frame(self.myparent, width=640, height=480)
            self.outputfr.rowconfigure(0, weight=1)
            self.outputfr.rowconfigure(1, weight=0)
            self.outputfr.columnconfigure(0, weight=1)
            self.outputfr.grid(row=0, column=0, sticky='nesw')
            self.nb = tk.NoteBook(self.outputfr, width=640, height=400)
            self.nb.rowconfigure(0, weight=1)
            self.nb.columnconfigure(0, weight=1)
            self.outputbuttons = tk.ButtonBox(self.outputfr, width=640, height=80)
            self.outputbuttons.add('ok', text='OK', command=self.ok)
            self.outputbuttons.add('cancel', text='Cancel', command=self.cancel)
            self.outputbuttons.add('apply', text='Apply', command=self.apply)
            self.outputbuttons.add('play', text='Play', command=self.audition)
            self.outputbuttons.add('newinst', text='New Instrument', command=self.newinstrument)
            self.outputbuttons.grid(row=1, column=0, sticky='')
        else:
            self.myparent = parent
            self.myroot = self.myparent.myparent
            self.instmaybe = copy.deepcopy(self.myparent.instlist)
            self.outputfr = tk.Toplevel(self.myroot, width=640, height=480)
            self.outputfr.bind("<Return>", self.ok)
            self.outputfr.bind("<Escape>", self.cancel)
            self.outputfr.title("Output")
            self.outputfr.rowconfigure(0, weight=1)
            self.outputfr.rowconfigure(1, weight=0)
            self.outputfr.columnconfigure(0, weight=1)
            self.nb = tk.NoteBook(self.outputfr, width=640, height=480)
            self.nb.rowconfigure(0, weight=1)
            self.nb.columnconfigure(0, weight=1)
            self.nb.grid(row=0, column=0, sticky='nesw')
            self.outputbuttons = tk.ButtonBox(self.outputfr, width=640, height=80)
            self.outputbuttons.add('ok', text='OK', command=self.ok)
            self.outputbuttons.add('cancel', text='Cancel', command=self.cancel)
            self.outputbuttons.add('apply', text='Apply', command=self.apply)
            self.outputbuttons.add('play', text='Play', command=self.audition)
            self.outputbuttons.add('newinst', text='New Instrument', command=self.newinstrument)
            self.outputbuttons.grid(row=1, column=0, sticky='')

        self.instpagelist = []
        self.csdpage = self.nb.add('csd', label='CSD')
        self.csdpage.rowconfigure(0, weight=1)
        self.csdpage.rowconfigure(1, weight=0)
        self.csdpage.columnconfigure(0, weight=1)
        self.csdpage.columnconfigure(1, weight=1)
        self.csdtext = tk.Text(self.csdpage)
        self.csdtext.grid(row=0, column=0, columnspan=2, sticky='nesw')
        self.csdtext.insert('0.0', self.myparent.csdimported)
        for i in range(1, len(self.instmaybe)):
            inst = self.instmaybe[i]
            newpage = self.addinstpage(inst)
            for out in inst.outlist:
                if out.__class__.__name__ == 'csdout':
                    newline = csdline(newpage, out)
                elif out.__class__.__name__ == 'sf2out':
                    newline = sf2line(newpage, out)
        self.autoload = tk.BooleanVar()
        self.autoload.set(self.myparent.outautoload)
        self.autocheck = tk.Checkbutton(self.csdpage, variable=self.autoload)
        self.autocheck.grid(row=1, column=0, sticky='e')
        self.csdloadbutton = tk.Button(self.csdpage, text="Load", command=self.csdload)
        self.csdloadbutton.grid(row=1, column=1, sticky='w')
Example #10
0
    def __init__(self, parent, out):
        self.page = parent
        self.out = out
        self.flag = 's'
        self.place = self.out.instrument.outlist.index(self.out)
        self.mute = tk.BooleanVar()
        self.mute.set(self.out.mute)
        self.mute.trace("w", self.mutechange)
        self.solo = tk.BooleanVar()
        self.solo.set(self.out.solo)
        self.solo.trace("w", self.solochange)
        self.sf2file = tk.StringVar()
        self.sf2file.set(self.out.file)
        self.sf2file.trace("w", self.filechange)
        self.bank = tk.IntVar()
        self.bank.set(self.out.bank)
        self.bank.trace("w", self.bankchange)
        self.program = tk.IntVar()
        self.program.set(self.out.program)
        self.program.trace("w", self.programchange)
        self.csdstring = tk.StringVar()
        self.string = ''
        self.frame = tk.Frame(self.page.midrow, bd=5, relief="ridge")
        self.frame.columnconfigure(0, weight=0)
        self.frame.columnconfigure(1, weight=0)
        self.frame.columnconfigure(2, weight=0)
        self.frame.columnconfigure(3, weight=0)
        self.frame.columnconfigure(4, weight=0)
        self.frame.columnconfigure(5, weight=0)
        self.frame.columnconfigure(6, weight=0)
        self.frame.columnconfigure(7, weight=0)
        self.frame.columnconfigure(8, weight=0)
        self.frame.columnconfigure(9, weight=0)
        self.frame.columnconfigure(10, weight=1)
        self.field1 = tk.Entry(self.frame, width=2)
        self.field1.grid(row=0, column=0, sticky='w', pady=10, padx=20)
        self.field1.insert(0, 's')
        self.field1.configure(state='disabled')
        self.mutewidget = tk.Checkbutton(self.frame, height=1, width=1, variable=self.mute, bg='#ffaaaa', selectcolor='#996666', padx=2, pady=0, indicatoron=0, activebackground='#ff8888')
        self.mutewidget.grid(row=0, column=1, rowspan=1)
        self.solowidget = tk.Checkbutton(self.frame, height=1, width=1, variable=self.solo, bg='#aaffaa', selectcolor='#669966', padx=2, pady=0, indicatoron=0, activebackground='#88ff88')
        self.solowidget.grid(row=0, column=2, rowspan=1)
        self.field2label = tk.Label(self.frame, text="sf2")
        self.field2label.grid(row=0, column=self.page.sc1, rowspan=1, columnspan=self.page.scs1, sticky='w')
        self.field2 = tk.ComboBox(self.frame, variable=self.sf2file, editable=0, value="Load")
        self.field2.entry.configure(width=10)
        self.field2.grid(row=0, column=self.page.sc2, rowspan=1, columnspan=self.page.scs2, sticky='w', padx=0)
        self.field2.focus_set()
#        self.field2.appendhistory("Load")
        self.field3label = tk.Label(self.frame, text="   bank")
        self.field3label.grid(row=0, column=self.page.sc3, rowspan=1, columnspan=self.page.scs3, sticky='w')
        self.field3 = tk.Control(self.frame, min=0, max=128, variable=self.bank)
        self.field3.grid(row=0, column=self.page.sc4, rowspan=1, columnspan=self.page.scs4, sticky='w')
        self.field4label = tk.Label(self.frame, text="   prog")
        self.field4label.grid(row=0, column=self.page.sc5, rowspan=1, columnspan=self.page.scs5, sticky='w')
        self.field4 = tk.Control(self.frame, min=0, max=128, variable=self.program)
        self.field4.grid(row=0, column=self.page.sc6, rowspan=1, columnspan=self.page.scs6, sticky='w')
        self.x = tk.Button(self.frame, text="x", padx=0, pady=0, command=self.remove)
        self.x.grid(row=0, column=self.page.sc7, sticky='e', padx=40)
        self.volumewidget = tk.Scale(self.frame, orient="horizontal", width=7, fg='#552288', sliderlength=10, sliderrelief='raised', tickinterval=10, from_=-90, to=10, resolution=.1, variable=self.volume)
        self.volumewidget.grid(row=1, column=0, columnspan=11, sticky='ew', pady=2)
        self.page.widget.update_idletasks()
        bottomy = self.page.midrow.winfo_reqheight()
        self.page.canvas.coords(self.page.botrowoncanvas, 0, bottomy)
        self.page.canvas.config(scrollregion=self.page.canvas.bbox("all"))
        self.page.canvas.yview_moveto(1.0)
        if self.page.scroll.winfo_ismapped():
#            print self.page.scroll.get()
            pass
        else:
            self.page.widget.update_idletasks()
#            print self.page.scroll.get()
            if self.page.scroll.get() != (0.0, 1.0):
                self.page.scroll.grid(row=1, column=1, sticky='ns')

        self.string = ''
Example #11
0
    def __init__(self, parent, inst):
        self.myparent = parent
        self.myinst = inst
        number = self.myinst.number
        self.linelist = []
        self.mute = tk.BooleanVar()
        self.mute.set(self.myinst.mute)
        self.mute.trace("w", self.mutechange)
        self.solo = tk.BooleanVar()
        self.solo.set(self.myinst.solo)
        self.solo.trace("w", self.solochange)
        self.widget = self.myparent.nb.add('inst%.4d' % number, label='i%d' % number, raisecmd=lambda arg1=0.0: self.canvas.yview_moveto(arg1))

        self.widget.rowconfigure(0, weight=0)
        self.widget.rowconfigure(1, weight=1)
#        self.widget.rowconfigure(2, weight=1)
#        self.widget.rowconfigure(3, weight=1)
        self.widget.columnconfigure(0, weight=1)
#        self.widget.columnconfigure(1, weight=1)
        self.toprow = tk.Frame(self.widget)
        self.toprow.grid(row=0, column=0, sticky='we')
        self.toprow.columnconfigure(0, weight=0)
        self.toprow.columnconfigure(1, weight=0)
        self.toprow.columnconfigure(2, weight=0)
        self.toprow.columnconfigure(3, weight=1)
        self.canvas = tk.Canvas(self.widget)
        self.canvas.grid(row=1, column=0, sticky='nesw')
        self.canvas.rowconfigure(2, weight=1)
        self.canvas.columnconfigure(0, weight=1)
        self.midrow = tk.Frame(self.canvas)
#        self.midrow.grid(row=0, column=0, sticky='we')
        self.midrowoncanvas = self.canvas.create_window(0, 0, window=self.midrow, anchor="nw")
        self.midrow.columnconfigure(0, weight=0)
        self.midrow.columnconfigure(1, weight=1)
        self.botrow = tk.Frame(self.canvas, bd=5, relief="ridge")
#        self.botrow.grid(row=1, column=0, sticky='we')
        self.botrow.columnconfigure(0, weight=0)
        self.botrow.columnconfigure(1, weight=1)
#        self.scroll = tk.Scrollbar(self.widget, orient='vertical', takefocus=0, troughcolor="#ccaaaa", activebackground="#cc7777", bg="#cc8f8f")
        self.scroll = tk.Scrollbar(self.widget, orient='vertical', takefocus=0)
        self.canvas.config(yscrollcommand=self.scroll.set)
        self.canvas.config(scrollregion=self.canvas.bbox("all"))
        self.scroll.config(command=self.canvas.yview)
        self.myparent.outputfr.bind("<Button-4>",
                              lambda
                              event, arg1="scroll", arg2=-1, arg3="units":
                              self.canvas.yview(arg1, arg2, arg3), "+")
        self.myparent.outputfr.bind("<Button-5>",
                              lambda
                              event, arg1="scroll", arg2=1, arg3="units":
                              self.canvas.yview(arg1, arg2, arg3), "+")
#        self.scroll.grid(row=1, column=1, sticky='ns')
#       SF2 LINE GRID COLUMNS
        self.sc1 = 3
        self.scs1 = 1
        self.sc2 = 4
        self.scs2 = 1
        self.sc3 = 5
        self.scs3 = 1
        self.sc4 = 6
        self.scs4 = 1
        self.sc5 = 7
        self.scs5 = 1
        self.sc6 = 8
        self.scs6 = 1
        self.sc7 = 9
        self.scs7 = 1
#       CSOUND LINE GRID COLUMNS
        self.cc1 = 3
        self.ccs1 = 1
        self.cc2 = 4
        self.ccs2 = 1
        self.cc3 = 5
        self.ccs3 = 1
        self.cc4 = 6
        self.ccs4 = 1
        self.cc5 = 7
        self.ccs5 = 1
        self.color = tk.StringVar()
        self.color.set(self.myinst.color)
        self.color.trace("w", self.colorchange)
        self.colorwidget = tk.Frame(self.toprow, width=40, height=40, bg=self.color.get())
        self.colorwidget.grid(row=0, column=0, padx=10)
        self.colorwidget.bind("<Button-1>", self.colorchoose)
        self.mutewidget = tk.Checkbutton(self.toprow, bg='#ffaaaa', text='M', variable=self.mute, indicatoron=1, activebackground='#ffaaaa', selectcolor='#ff0000', width=1, height=1, bd=2, highlightthickness=0)
        self.mutewidget.grid(row=0, column=1, padx=4)
        self.solowidget = tk.Checkbutton(self.toprow, bg='#00aa00', text='S', variable=self.solo, indicatoron=1, activebackground='#00aa00', selectcolor='#00ff00', width=1, height=1, bd=2, highlightthickness=0)
        self.solowidget.grid(row=0, column=2)
        self.blank = tk.Entry(self.botrow, width=2)
        self.blank.grid(row=0, column=0, pady=10, padx=20, sticky='w')
        self.blank.bind("<Tab>", self.outputselect)
        self.widget.update_idletasks()
        bottomy = self.midrow.winfo_reqheight()
#        print bottomy
        self.botrowoncanvas = self.canvas.create_window(0, bottomy, window=self.botrow, anchor="nw")