Example #1
0
    def countdown_timer(self):
        # Container Frame for the countdown timer setting
        self.countdown_timer_frame = ttk.Frame(self.game_settings)
        self.countdown_timer_frame.pack(side=TOP)

        # The label for the countdown timer setting
        self.countdown_timer_title = ttk.Label(self.countdown_timer_frame,
                                               text="Timer Duration:")
        self.countdown_timer_title.pack(side=LEFT)

        # Making an IntVar object that will hold the duration length
        self.countdown_duration = IntVar(self.countdown_timer_frame)
        # Making the options menus for the minutes and seconds
        self.countdown_options = ttk.OptionMenu(self.countdown_timer_frame,
                                                self.countdown_duration, 0,
                                                *range(6))
        self.countdown_duration.set(self.COUNTDOWN)
        self.countdown_options.pack(side=LEFT)
Example #2
0
 def configuration_frame(self):
     """
     Central diplay: algorithm selection, voice number selection. 
     """
     self.config_frame = tk.Frame(self.display_frame)
     self.algo_frame = AlgorithmGUI(self.config_frame, self)
     self.algo_frame.pack(padx=10, pady=20)
     self.change_algorithm_image()
     self.voicesframe = tk.Frame(self.config_frame)
     self.voicesframe.pack(padx=10, pady=20)
     self.voicesLabel = tk.Label(self.voicesframe, text="Voices : ")
     self.voicesLabel.grid(row=0, column=0)
     self.input_num_voices = tk.IntVar(value=self.output.max_voices)
     self.num_voices = ttk.OptionMenu(self.voicesframe,
                                      self.input_num_voices,
                                      *[i for i in range(15)],
                                      command=self.set_voices)
     self.num_voices.grid(row=0, column=1)
Example #3
0
def european_widget():
    # set european
    selectedEuropeanCountry.set(europeanCountry[0])
    # create select region label
    euLabel = Label(fifthFrame,
                    text='Comparison between Italy and',
                    font=("Verdana", 15))
    # create select region option menu
    euOption = ttk.OptionMenu(fifthFrame, selectedEuropeanCountry,
                              *europeanCountry)
    # create check button
    euBtn = ttk.Button(fifthFrame,
                       text="compare infection rates",
                       command=compare_selected_country)
    # pack widgets to the left
    euLabel.pack(side=LEFT, padx=5)
    euOption.pack(side=LEFT, padx=5)
    euBtn.pack(side=LEFT, padx=5)
Example #4
0
File: gui.py Project: trasse/skan
    def create_parameters_frame(self, parent):
        parameters = ttk.Frame(master=parent, padding=STANDARD_MARGIN)
        parameters.grid(sticky='nsew')

        heading = ttk.Label(parameters, text='Analysis parameters')
        heading.grid(column=0, row=0, sticky='n')

        for i, param in enumerate(self.parameters, start=1):
            param_label = ttk.Label(parameters, text=param._name)
            param_label.grid(row=i, column=0, sticky='nsew')
            if type(param) == tk.BooleanVar:
                param_entry = ttk.Checkbutton(parameters, variable=param)
            elif hasattr(param, '_choices'):
                param_entry = ttk.OptionMenu(parameters, param, param.get(),
                                             *param._choices.keys())
            else:
                param_entry = ttk.Entry(parameters, textvariable=param)
            param_entry.grid(row=i, column=1, sticky='nsew')
Example #5
0
    def create_new_option_menu(self):
        '''
		This is very ugly, but the creation of another Toplevel caused problems for
		the OptionMenu in the other Toplevel.. 
		'''
        self.optionMenuSheets.destroy()
        self.optionMenuSheets = ttk.OptionMenu(self.cont_widgets,
                                               self.sheet_selected,
                                               self.sheets_available[1],
                                               *self.sheets_available,
                                               command=self.refresh_preview)

        self.optionMenuSheets.grid(padx=5,
                                   pady=5,
                                   row=2,
                                   column=1,
                                   columnspan=9,
                                   sticky=tk.EW)
    def init_UI(self):
        self.main_frame = ttk.Frame(self)
        self.main_frame.pack(fill=tk.BOTH, expand=True)

        self.fieldset = ttk.LabelFrame(self.main_frame, text='Select Country')
        self.fieldset.pack(fill=tk.BOTH, expand=True, padx=10, pady=10)

        self.local_timezone = tk.StringVar()
        countries = list(pytz.all_timezones)
        country_drop_down = ttk.OptionMenu(self.fieldset, self.local_timezone,
                                           *countries)
        self.local_timezone.set(get_localzone())
        country_drop_down.grid(row=0, column=1, sticky=tk.W, padx=5, pady=5)

        go_btn = ttk.Button(self.fieldset,
                            text='Go',
                            command=self.display_datetime)
        go_btn.grid(row=0, column=2, sticky=tk.W, padx=(0, 5), pady=5)
Example #7
0
    def __init__(self, root, playlist):
        self.root = root
        self.playlist_path = AVIDEOM_DIR + '/playlists/' + playlist
        var = tk.StringVar(root)
        root.title(playlist)
        root.geometry('260x120+10+10')
        root['bg'] = 'white'

        songlist = os.listdir(self.playlist_path)
        var.set(songlist[0])
        var.trace('w', self.change_dropdown)
        w = ttk.OptionMenu(root, var, songlist[0], *songlist)
        w.place(x=10, y=30)

        tk.Label(root, text='Choose song to edit:', bg='white').place(x=10, y=10)
        add = tk.Button(root, text='Add song', bg='white', borderwidth=1, command=self.add_song).place(x=10, y=60)
        dlt = tk.Button(root, text='Delete song', bg='white', borderwidth=1,
                        command=lambda: self.del_song(var.get())).place(x=10, y=90)
Example #8
0
    def populate(self):
        titration = self.titration
        self.fig = Figure()
        self.ax = self.fig.add_subplot()

        self.canvas = FigureCanvasTkAgg(self.fig, master=self)
        self.canvas.draw()
        self.canvas.get_tk_widget().grid(row=1, column=0, sticky="")

        self.toolbar = NavigationToolbar2Tk(self.canvas,
                                            self,
                                            pack_toolbar=False)
        self.toolbar.update()
        self.toolbar.grid(row=2, column=0, sticky="w", padx=10 * padding)

        self.optionsFrame = ttk.Frame(self)
        self.optionsFrame.grid(row=1, column=1, sticky="")
        self.speciesLabel = ttk.Label(self.optionsFrame,
                                      anchor="center",
                                      justify="center",
                                      text="Select species:")
        self.speciesLabel.pack(pady=padding, fill="x")

        self.speciesDropdown = ttk.OptionMenu(
            self.optionsFrame,
            self.speciesVar,
            titration.freeNames[0],
            command=lambda *args: self.plot(),
            *titration.freeNames,
            style="primary.Outline.TMenubutton",
        )
        self.speciesDropdown.pack()
        self.logScaleButton = ttk.Checkbutton(
            self.optionsFrame,
            text="Logarithmic x axis",
            command=self.toggleLogScale,
            style="Outline.Toolbutton",
        )
        self.logScaleButton.pack(pady=padding, fill="x")

        self.rowconfigure(0, weight=1)
        self.rowconfigure(1, weight=1)
        self.rowconfigure(2, weight=1)
        self.grid_anchor("center")
Example #9
0
    def __init__(self, parent, controller):
        tk.Frame.__init__(self, parent)
        self.controller = controller

        self.Title = tk.Label(self,
                              text="Please fill in your details",
                              font=controller.title_font)
        self.loginButton = ttk.Button(
            self, text="Login", command=lambda: controller.show_frame("Login"))
        self.registerButton = ttk.Button(self,
                                         text="Register",
                                         command=lambda: self.register())
        self.lblUsername = ttk.Label(self, text="Username: "******"Password: "******"Confirm Username: "******"Confirm Password: "******"Email: ")
        self.txtUsername = ttk.Entry(self)
        self.txtConfirmUsername = ttk.Entry(self)
        self.txtPassword = ttk.Entry(self)
        self.txtConfirmPassword = ttk.Entry(self)
        self.txtEmail = ttk.Entry(self)
        self.lblAccessLevel = ttk.Label(self, text="Position: ")
        self.var = tk.StringVar()
        options = ["Player", "Coach/Captin", "Admin"]
        self.var.set(options[0])

        self.cmbAccessLevel = ttk.OptionMenu(self, self.var, *options)

        self.txtUsername.grid(row=1, column=1)
        self.txtConfirmUsername.grid(row=2, column=1)
        self.txtPassword.grid(row=3, column=1)
        self.txtConfirmPassword.grid(row=4, column=1)
        self.txtEmail.grid(row=5, column=1)
        self.loginButton.grid(row=7, column=1)
        self.registerButton.grid(row=7, column=0)
        self.lblUsername.grid(row=1, column=0)
        self.lblConfirmUsername.grid(row=2, column=0)
        self.lblPassword.grid(row=3, column=0)
        self.lblConfirmPassword.grid(row=4, column=0)
        self.lblEmail.grid(row=5, column=0)
        self.Title.grid(row=0, column=0, columnspan=2)
        self.lblAccessLevel.grid(row=6, column=0)
        self.cmbAccessLevel.grid(row=6, column=1)
Example #10
0
 def config_menu(self):
     """ menu - user configurable settings for visualisation"""
     self.menu_frame.grid(row=0, column=0, sticky='n')
     menu_width = 18
     self.tkk_btn(self.menu_frame, [('Visualise', self.validate_graph)],
                  True)
     self.display_logo()
     current_algo = tk.StringVar()
     current_algo.set(self.algorithms[self.solve_mode])
     algorithms_menu = tkk.OptionMenu(self.menu_frame,
                                      current_algo,
                                      self.algorithms[0],
                                      *self.algorithms,
                                      command=self.algorithm_change)
     algorithms_menu.config(width=menu_width)
     self.tkk_label(self.menu_frame, ['Node Size'])
     self.tkk_scaler(20, 60, self.change_node_size)
     self.tkk_label(self.menu_frame, ['Wall Frequency'])
     self.tkk_scaler(0.05, 0.5, self.change_wall_frequency)
     self.tkk_btn(self.menu_frame,
                  [('Generate Random Maze', self.random_maze),
                   ('Clear Graph', self.clear_graph),
                   ('Clear Wall', self.clear_walls_and_weights),
                   ('Clear Path', self.clear_path)], True)
     rb = tk.IntVar()
     rb.set(self.draw_mode)
     self.tkk_rbtn([('Place Start Node', rb), ('Place Finish Node', rb),
                    ('Draw Wall Node', rb), ('Draw Weighted Node', rb)])
     self.tkk_label(self.menu_frame, ['Node Weight'])
     callback = self.menu_frame.register(self.only_numeric_input)
     tkk.Entry(self.menu_frame,
               validate="key",
               validatecommand=(callback,
                                "%P")).insert(0, str(self.weight))
     self.tkk_label(self.menu_frame, ['Graph Legend'])
     state_keys = [(state.name, state.value) for state in State]
     self.tkk_btn(self.menu_frame, state_keys, False)
     for r, child in enumerate(self.menu_frame.winfo_children()):
         pad = 0 if isinstance(child, tk.Button) else 5
         child.grid_configure(row=r,
                              column=0,
                              sticky='ew',
                              padx=pad,
                              pady=pad)
    def __init__(self, parent, controller):
        tk.Frame.__init__(self, parent)
        label = tk.Label(self, text="Examples of Modulation")
        label.pack(pady=10, padx=10)
        lable = tk.Label(
            self,
            text=
            "Note, currently only planning to show analogue modulation techniques and carrier is set in code"
        )
        returnButton = ttk.Button(
            self,
            text="Return home",
            command=lambda: controller.showFrame(StartPage))
        returnButton.pack()

        signalButton = ttk.Button(self,
                                  text="Choose signal to modulate",
                                  command=lambda: self.pickFile())
        signalButton.pack()

        MODULATION = ["AM", "AM", "DSB-SC", "SSB-SC", "FM"]
        modVar = tk.StringVar(self)
        modVar.set("AM")
        modSelect = ttk.OptionMenu(self, modVar, *MODULATION)
        modSelect.pack()
        modulateButton = ttk.Button(
            self, text="Modulate", command=lambda: self.modulate(modVar.get()))
        modulateButton.pack()
        fftButton = ttk.Button(self,
                               text="Show Fourier Transform",
                               command=lambda: self.showFT())
        fftButton.pack()

        #currently creating graphs in frames but may look into doing it in functions to have more flexibility or smth
        self.fig = Figure(figsize=(5, 5), dpi=100)
        self.a = self.fig.add_subplot(211)
        self.a.title.set_text("Signal")
        self.fft = self.fig.add_subplot(212)
        self.fft.title.set_text("Frequencies")
        self.fig.tight_layout()
        self.canvas = FigureCanvasTkAgg(self.fig, self)
        self.canvas._tkcanvas.pack(side=tk.TOP, fill=tk.BOTH, expand=True)
        self.toolbar = NavigationToolbar2Tk(self.canvas, self)
        self.toolbar.update()
Example #12
0
    def InitGUI(self, root):

        # Menubar GUI
        self.menubar = tkinter.Menu(self.root)
        self.menubar.add_command(label="Exit",
                                 command=super(GestureGUI, self).quit)
        self.menubar.add_command(label="Help",
                                 command=super(GestureGUI, self).openhelp)
        root.config(menu=self.menubar)

        #Setup for list of all gestures in micro:bit
        self.gesturelist = microbit.accelerometer.gesturelist

        #Setup for drop down menu
        self.selectedgesture = tkinter.StringVar()
        self.selectedgesture.set(self.gesturelist[0])
        self.gesturemenu = ttk.OptionMenu(root, self.selectedgesture,
                                          self.gesturelist[0],
                                          *self.gesturelist)
        self.gesturemenu.config(width=13)
        self.gesturemenu.grid(row=0,
                              column=0,
                              sticky="EW",
                              padx=10,
                              pady=(15, 15))

        #Button to execute gesture
        self.gesturebutton = ttk.Button(root,
                                        text="Execute Gesture",
                                        command=self.ExecuteGesture)
        self.gesturebutton.grid(row=0,
                                column=1,
                                sticky="EW",
                                padx=(0, 10),
                                pady=(15, 15))

        self.stopbutton = ttk.Button(root,
                                     text="Stop Gesture",
                                     command=self.StopGesture)
        self.stopbutton.grid(row=0,
                             column=2,
                             sticky="EW",
                             padx=(0, 10),
                             pady=15)
    def __init__(self, master):
        super().__init__(master, text="Fit")
        self.master = master

        self.fix_z0 = tk.BooleanVar()
        self.fix_z0.set(config.fix_z0)
        fix_z0_btn = ttk.Checkbutton(self,
                                     text="Fix z0",
                                     variable=self.fix_z0,
                                     command=self._toggle_fix_z0)
        fix_z0_btn.grid(row=0, column=0, sticky="w")

        self.fix_theta = tk.BooleanVar()
        self.fix_theta.set(config.fix_theta)
        fix_theta_btn = ttk.Checkbutton(self,
                                        text="Fix θ",
                                        variable=self.fix_theta,
                                        command=self._toggle_fix_theta)
        fix_theta_btn.grid(row=0, column=1, sticky="w")

        self.enable_fit = tk.BooleanVar()
        self.enable_fit.set(config.fit)
        enable_fit_btn = ttk.Checkbutton(
            self,
            text="Enable Fitting",
            variable=self.enable_fit,
            command=self._toggle_fit,
        )
        enable_fit_btn.grid(row=1, column=0, sticky="w")

        self.fit_against = tk.StringVar(self,
                                        name="fit_against",
                                        value=self._get_fit_against())
        fit_against_options = ("Optical Density", "Raw Absorption")
        ttk.Label(self, text="Fit Against: ").grid(row=2, column=0)
        fa_menu = ttk.OptionMenu(
            self,
            self.fit_against,
            self.fit_against.get(),
            *fit_against_options,
            command=self._set_fit_against,
        )
        fa_menu.configure(width=11)
        fa_menu.grid(row=2, column=1)
Example #14
0
        def draw_map_within_frame(self, master):
            self._frame_within_frame.destroy()

            map_frame = ttk.Frame(master, height=1000)
            map_frame.grid(row=0, column=2, padx=500, pady=5, sticky='n')

            label = tk.Label(map_frame, text='Track Truck', font=LARGE_FONT)
            label.grid(row=0, column=1)

            label2 = tk.Label(
                map_frame,
                text=
                'Data Cut Count\n(Higher the Value, Faster it plots)       ')
            label2.grid(row=1, column=0, sticky='w')
            entry2_var = tk.IntVar(map_frame)
            entry2_var.set(10)
            entry2 = ttk.Entry(map_frame, textvariable=entry2_var)
            entry2.grid(row=1, column=1, sticky='w', padx=0)
            self.track_data_cut = entry2_var

            label3 = tk.Label(map_frame, text='Parameter to Map with Route')
            label3.grid(row=2, column=0, pady=10, sticky='w')
            myOptList = [
                'None', 'None', 'roc_abs', 'altitude_filt', 'speed_filt',
                'long_accel_vbox_filt_corrected', 'lat_accel_vbox_filt', 'roc'
            ]
            var = tk.StringVar(map_frame)
            om = ttk.OptionMenu(map_frame, var, *myOptList)
            var.set(myOptList[0])
            om.grid(row=2, column=1, pady=10, sticky='w')

            button1 = ttk.Button(
                map_frame,
                text='Track Truck',
                command=lambda: draw_map(self.process_data,
                                         self.track_data_cut.get(), var.get()))
            button1.grid(row=3, column=1, sticky='w')
            button2 = ttk.Button(map_frame,
                                 text='Home',
                                 command=lambda: self.start_page(master))
            button2.grid(row=4, column=1, sticky='w')

            self._frame_within_frame = map_frame
Example #15
0
 def __init__(self, master, intypes, options, type_str, *args, **kwargs):
     # call super constructor
     tk.Frame.__init__(self, master, *args, **kwargs)
     # create tkinter var for input/output source
     self.source = tk.StringVar()
     # create label and dropdown
     tk.Label(self,
              text='Select an {}:'.format(type_str)).pack(side='left',
                                                          padx=(0, 20))
     self.menu = ttk.OptionMenu(
         self,
         self.source,
         'Select',
         *[intype['label'] for intype in intypes],
         command=(lambda choice: OpenFile(
             master, *[
                 intype for intype in intypes if intype['label'] == choice
             ], options).pack(side='top', fill='x', expand=True)))
     self.menu.pack(side='left')
Example #16
0
    def doneshapes_menu(self):

        for x, dropdown in enumerate(self.dropdowns):
            curr_label = ttk.Label(self,
                                   text=dropdown.label + ' - ' +
                                   dropdown.data_type)
            curr_text_variable = tk.StringVar(
                self, value=self.defaults[dropdown.label])
            curr_entry = ttk.OptionMenu(self,
                                        curr_text_variable,
                                        self.defaults[dropdown.label],
                                        *dropdown.list,
                                        command=self.set_var)
            self.elements[dropdown.label] = self.Elem(curr_label, curr_entry,
                                                      curr_text_variable)
            self.elements[dropdown.label].label.grid(row=x + 1, column=0)
            self.elements[dropdown.label].entry.grid(row=x + 1,
                                                     column=1,
                                                     sticky='ew')
    def draw(self, csv_path=None):
        s = ttk.Style()
        s.configure('Kim.TButton', foreground='maroon')
        t = ttk.Style()
        t.configure('RB.TButton', foreground='royal blue')

        generate_btn = ttk.Button(self.top_frame, text="Generate CSV File")
        generate_btn.bind("<Button-1>", self.generate)
        Menu_button = ttk.Button(self.top_frame,
                                 text="Back to Monthly Assessment",
                                 style='Kim.TButton',
                                 command=self.back)
        tooltip_box = ttk.LabelFrame(self.top_frame, text="Tooltip")
        tooltip_txt = ttk.Label(tooltip_box, text=self.help_txt)

        tooltip_txt.grid(row=0, column=0)
        generate_btn.grid(row=0, sticky="nsew", padx=20, pady=10)
        Menu_button.grid(row=1, sticky="nsew", padx=20, pady=10)
        tooltip_box.grid(row=0, column=1, padx=20, pady=10)

        add_btn = ttk.Button(self.bottom_frame,
                             style='RB.TButton',
                             text="Add",
                             command=self.add_row)
        add_btn.grid(row=0, sticky="nsew", padx=20, pady=10)
        remove_btn = ttk.Button(self.bottom_frame,
                                style='Kim.TButton',
                                text="Remove",
                                command=self.remove_row)
        remove_btn.grid(row=0, column=1, sticky="nsew", padx=20, pady=10)

        if csv_path != None:
            self.path = csv_path
            self.process_csv(csv_path)
            labels = [col[0] for col in self.columns]
            self.id_var = tk.StringVar(self.middle_frame)
            self.study_id_col = ttk.OptionMenu(self.middle_frame, self.id_var,
                                               labels[0], *labels)
            self.ID_l = ttk.Label(self.middle_frame, text="ID Column:")
            self.ID_l.grid(row=0, sticky="nsew", pady=5)
            self.study_id_col.grid(row=1, columnspan=3, sticky="nsew", pady=5)

            self.add_row()
Example #18
0
def search_credit():
    if db_open:
        messagebox.showerror("Error", "Create a Database Function First")
        data_base_check()
    else:
        open_new_search_window()
        OptionList = [
            "Choose A Type",
            "CR",
            "DR"
        ]
        variable = tk.StringVar(data_retrieve_frame)

        opt = ttk.OptionMenu(data_retrieve_frame, variable, *OptionList)
        opt.pack()

        button = tk.Button(data_retrieve_frame, text="Search", bg="#7f7fff", fg="white",
                           command=(lambda: call_credit_from_db(variable.get(), data_retrieve_frame)))
        button.pack()
Example #19
0
def show_text_box(r, c):
    global v, text, lis
    for i in range(3):
        if i == 0:
            v.append(tk.StringVar(root))
            m = len(v) - 1
            text[i].append(ttk.OptionMenu(frame, v[m], *choiceso))
            text[i][m].config(width=20)
            lis = []
            lis.append(str(r))
            lis.append(str(c))
            place.append(lis)
            text[i][m].grid(row=r, column=c, padx=10, pady=10, sticky="E")
            c += 1
        else:

            text[i].append(tk.Text(frame, width=25, height=4, highlightthickness=0))
            text[i][m].grid(row=r, column=c, padx=10, pady=10)
            c += 1
Example #20
0
    def crearBotones(self):

        self.var = StringVar(root)
        self.opciones = ['Estandar', 'Admin', 'Estandar']
        self.opcion = ttk.OptionMenu(root, self.var, *self.opciones)
        self.opcion.place(x=140, y=164, width=80, height=22)

        self.label1 = Label(self, text="USUARIO:", bg="lightblue")
        self.txtUsuario = Entry(self, bg="white")
        self.label2 = Label(self, text="CONTRASEÑA:", bg="lightblue")
        self.txtContrasena = Entry(self, bg="white", show="*")

        self.label1.place(x=40, y=198, width=60, height=20)
        self.txtUsuario.place(x=130, y=195, width=100, height=25)
        self.label2.place(x=40, y=238, width=85, height=20)
        self.txtContrasena.place(x=130, y=235, width=100, height=25)

        self.btn1 = Button(self, text="INGRESAR", command=self.validacionDatos)
        self.btn1.place(x=100, y=275, width=90, height=50)
 def newcol_add(self, tablen, colu, newindex):
     fontsizeB = 11
     top = Toplevel()
     top.title("Añadir variables")
     fontsizeB = '11'
     lab1 = ttk.Label(top, text="Variable: ", font=('Arial', fontsizeB))
     lab1.grid(row=0, column=0, columnspan=1)
     entryv = StringVar()
     entryv.set(colu)
     entry1 = ttk.Entry(top, width=24, textvariable=entryv)
     entry1.grid(row=0, column=1, columnspan=2)
     lab2 = ttk.Label(top, text="Tipo: ", font=('Arial', fontsizeB))
     lab2.grid(row=1, column=0, columnspan=1)
     combo1 = StringVar()
     combo1.set('TEXT')
     l = ["TEXT", "INTEGER", "DATE", "REAL"]
     combo = ttk.OptionMenu(top, combo1, *l)
     combo.grid(row=1, column=1, columnspan=2)
     cbnull1 = IntVar()
     cbnull1.set(0)
     cbnull = ttk.Checkbutton(top,
                              text="Puede estar vacío",
                              variable=cbnull1)
     cbnull.grid(row=2, column=0, columnspan=2)
     cbstatic1 = IntVar()
     cbstatic1.set(1)
     cbstatic = ttk.Checkbutton(
         top,
         text="Valor inestable que puede cambiar cada recogida de datos",
         variable=cbstatic1)
     cbstatic.grid(row=3, column=0, columnspan=2)
     bt = ttk.Button(top,
                     text="Añadir",
                     command=lambda:
                     (Db.add_variables(self, entryv.get(), combo1.get(
                     ), cbstatic1.get(), cbnull1.get()), top.destroy()))
     bt.grid(row=4, column=0)
     btb = ttk.Button(
         top,
         text="Otras opciones",
         command=lambda:
         (MainWindow.newcol(self, tablen, colu, newindex), top.destroy()))
     btb.grid(row=4, column=1)
Example #22
0
 def _set_username_password(self, value):
     self.groups_list = []
     for account in self.accounts:
         if value == account[3]:
             self.username.set(account[3])
             self.password.set(account[4])
             self.distribution_list = db.Database(
             ).get_distribution_lists_by_username(value)
             for group in self.distribution_list:
                 self.groups_list.append(group[1])
             if len(self.groups_list) > 0:
                 self.distribution_menu = ttk.OptionMenu(
                     self, self.distribution_menu_var, self.groups_list[0],
                     *self.groups_list)
                 self.distribution_menu.grid(column=1, row=12)
                 self.distribution_title.grid_forget()
             else:
                 self.distribution_title.grid(column=1, row=12)
                 self.distribution_menu.grid_forget()
    def StorePerItem(self):
        self.canvas.get_tk_widget().destroy()

        self.SPIlabel = Label(self, text="Select Store to View")
        MIFlist = ReadMonthlyItems(MonthlyItemsFile)
        storeList = [MIFlist[2][0]]
        for x in range(2, len(MIFlist)):
            storeList.append(MIFlist[x][0])
        print(storeList)
        ShowingStore = StringVar()
        ShowingStore.set(storeList[0])
        self.StoreMenu = ttk.OptionMenu(self, ShowingStore, *storeList)
        self.SPIlabel.grid(column=7, row=6, rowspan=2)
        self.StoreMenu.grid(column=7, row=8, rowspan=2)
        self.SPIbutton = ttk.Button(
            self,
            text="ENTER",
            command=lambda: self.GetStoreAndProceed(ShowingStore))
        self.SPIbutton.grid(column=7, row=10, rowspan=2)
 def __init__(self, app, row):
     super().__init__(app.current_state)
     self.app = app
     self.speed_settings = [
         '0.25', '0.50', '1.00', '1.50', '2.00', '3.00', '4.00'
     ]
     self.speed = 1.0
     self.frame = tk.LabelFrame(self.app.window, padx=10, pady=10)
     self.frame.grid(row=row, column=4, columnspan=2, rowspan=4, padx=10)
     self.rec_txt = tk.StringVar(self.frame)
     self.record_label = ttk.Label(self.frame,
                                   textvariable=self.rec_txt,
                                   font='TkFixedFont')
     self.record_label.grid(row=row, column=0, sticky=tk.E)
     self.speed_var = tk.StringVar(self.frame)
     self.speed_var.set("1.00")
     self.speed_menu = ttk.OptionMenu(self.frame,
                                      self.speed_var,
                                      '1.00',
                                      *self.speed_settings,
                                      command=self.set_speed)
     self.speed_menu.grid(row=row, column=1)
     self.btn_bwd = tk.Button(self.frame,
                              text="<",
                              command=lambda: self.app.step(False))
     self.btn_bwd.grid(row=row + 1, column=0, sticky=tk.NSEW)
     self.btn_fwd = tk.Button(self.frame,
                              text=">",
                              command=lambda: self.app.step(True))
     self.btn_fwd.grid(row=row + 1, column=1, sticky=tk.NSEW)
     self.btn_rwd = tk.Button(self.frame,
                              text="<<",
                              command=lambda: self.app.thread_run(False))
     self.btn_rwd.grid(row=row + 2, column=0, sticky=tk.NSEW)
     self.btn_play = tk.Button(self.frame,
                               text=">>",
                               command=lambda: self.app.thread_run(True))
     self.btn_play.grid(row=row + 2, column=1, sticky=tk.NSEW)
     self.btn_stop = tk.Button(self.frame,
                               text="Stop",
                               state=tk.DISABLED,
                               command=self.app.thread_stop)
     self.btn_stop.grid(row=row + 3, column=0, columnspan=2, sticky=tk.NSEW)
Example #25
0
def main():
    global root
    root = tk.Tk()
    root.title("Serial USB IMU/Pressure Sensor Data Collector")
    mainframe = ttk.Frame(root)
    mainframe.grid(column=0, row=0, sticky=(tk.N, tk.W, tk.E, tk.S))
    mainframe.pack()
    serial_label = ttk.Label(mainframe, text="Sensor Serial Port:")
    serial_label.grid(row=0, column=0)
    serial_var = tk.StringVar(root)
    raw_ports = list(serial.tools.list_ports.comports())
    # ports = []
    # for p in raw_ports:
    #     if "USB Serial" in p.description:
    #         ports.append(p.device)'
    # raw_ports = serial.tools.list_ports.comports(include_links=False)
    ports = []
    for port in raw_ports:
        # if "USB Serial" in port.description:
        ports.append(port.device)

    serial_menu = ttk.OptionMenu(mainframe, serial_var, *ports)
    serial_menu.grid(row=0, column=1)
    counter = tk.IntVar()
    counter.set(1)
    # duration_label = ttk.Label(mainframe, textvariable=counter)
    duration_label = ttk.Label(mainframe, textvariable="")
    duration_label.grid(row=1, column=1)
    # duration_increment = ttk.Button(mainframe,
    #                                 text="Increase Collection Interval (sec)",
    #                                 command=lambda: onIncrement(counter))
    # duration_increment.grid(row=1, column=0)
    collect_button = ttk.Button(
        mainframe,
        text="Begin Data Collection",
        command=lambda: collect(serial_var.get(), counter.get()))
    collect_button.grid(row=2, column=0, sticky=(tk.E, tk.W))
    end_button = ttk.Button(mainframe,
                            text="End Data Collection",
                            command=lambda: end())
    end_button.grid(row=2, column=1, sticky=(tk.E, tk.W))
    root.mainloop()
Example #26
0
    def make_UI(self):
        style = ttk.Style()
        # global style changes
        style.configure(".",
                        background='black',
                        foreground='white',
                        anchor="center")
        # Button style changes
        style.map("TButton", background=[('hover', 'blue')])
        # Optionmenu. The actual menu cannot be themed :(
        style.map("TMenubutton", background=[('hover', 'blue')])

        heading = ttk.Label(self, text="IMAGES", font=("Courier", 44))
        heading.grid(column=1, row=0, rowspan=2, columnspan=2, sticky='WENS')

        intro = ttk.Label(self, font=("Courier", 12))
        intro[
            'text'] = "Welcome to the image generator, select your image type below."
        intro.grid(column=1, row=2, rowspan=2, columnspan=2, sticky='WENS')

        # options
        self.var = tk.StringVar(self)
        self.var.set("Select Type")
        option = ttk.OptionMenu(self, self.var, "Select Type", *CHOICES)
        option.grid(column=1, row=4, sticky='N')

        # button
        button = ttk.Button(self,
                            text="Get Images",
                            command=self.create_img_list)
        button.grid(column=2, row=4, sticky='N')
        back = ttk.Button(self, text="<--", command=self.decrese_num)
        back.grid(column=1, row=5)
        forward = ttk.Button(self, text="-->", command=self.increse_num)
        forward.grid(column=2, row=5)

        # set inital holding image
        init_image = "initial.jpg"
        image = Image.open(init_image)
        self.photo = ImageTk.PhotoImage(image)
        self.img_label = ttk.Label(self, image=self.photo)
        self.img_label.grid(column=1, row=6, columnspan=2, padx=5, pady=5)
Example #27
0
    def UI(self):
        # Waveform choice
        self.waveforms = {
            "sine": SineWave,
            "square": SquareWave,
            # "triangle": None,
            # "sawtooth": None,
            # "noise": None
        }
        self.input_waveformtype = tk.StringVar()
        self.waveform = ttk.OptionMenu(self,
                                       self.input_waveformtype,
                                       '<modulator waveform>',
                                       *self.waveforms.keys(),
                                       command=self.set_modulator)
        self.waveform.pack(padx=10, pady=10)

        # Control frame
        self.control_frame = tk.Frame(self)
        self.control_frame.pack(padx=10, pady=5)
        # Frequency slider
        self.freq_label = tk.Label(self.control_frame, text='frequency')
        self.freq_label.grid(row=0, column=0)
        self.frequency = tk.Scale(self.control_frame,
                                  from_=0,
                                  to=10,
                                  orient=tk.HORIZONTAL,
                                  resolution=.1,
                                  command=self.set_frequency)
        self.frequency.set(5)
        self.frequency.grid(row=0, column=1)
        # Sensitivity slider
        self.sens_label = tk.Label(self.control_frame, text='sensitivity')
        self.sens_label.grid(row=1, column=0)
        self.sensitivity = tk.Scale(self.control_frame,
                                    from_=0,
                                    to=1,
                                    orient=tk.HORIZONTAL,
                                    resolution=.02,
                                    command=self.set_sensitivity)
        self.sensitivity.set(0.5)
        self.sensitivity.grid(row=1, column=1)
Example #28
0
def on_reset_profile():
    # Pop up confirm massage when reset was clicked
    def on_reset_button_clicked():
        name_to_reset = profile_name.get()
        reset_profile_popup.destroy()
        confirmation_text = "Are you sure you want to reset this player profile?\n\n" + name_to_reset + "\n\nAll stats will be reset and can not be restored."
        confirm_message = messagebox.showwarning("Reset player " +
                                                 name_to_reset,
                                                 confirmation_text,
                                                 type="okcancel",
                                                 default="cancel")
        if confirm_message:
            reset_profile(name_to_reset)

    # Create list of all existing profiles
    profiles = []

    for profile in data["player_profiles"].keys():
        if profile != "Player 1" and profile != "Player 2":
            profiles.append(profile)

    # Popup window
    reset_profile_popup = Toplevel()
    reset_profile_popup.title("Reset Profile")

    # Widgets for loading profile
    reset_profile_label = ttk.Label(reset_profile_popup,
                                    text="Reset profile: ")
    reset_profile_label.grid(row=0, column=0, sticky="W", padx=5, pady=5)

    # Set default value to "None"
    profile_name = StringVar(reset_profile_popup)
    profile_name.set("None")

    profiles_option_menu = ttk.OptionMenu(reset_profile_popup, profile_name,
                                          *profiles)
    profiles_option_menu.grid(row=0, column=1, padx=5, pady=5)

    reset_button = ttk.Button(reset_profile_popup,
                              text="Reset",
                              command=on_reset_button_clicked)
    reset_button.grid(row=1, column=0, padx=5, pady=5, columnspan=2)
Example #29
0
    def _make_widgets(self):
        fields = REVENUE_FIELDS if self.type == REVENUE else COSTS_FIELDS
        self._entries = {}
        categories = name_dict(
            self.pre.data_connector.get_categories(self.type))
        default_category = self.default['Category']
        i = 0
        for el in fields:
            if el == 'id':
                continue
            ttk.Label(self._main_frame, text=el).grid(row=i,
                                                      column=1,
                                                      padx=5,
                                                      pady=5)
            if el == 'Category':
                _values = tuple(categories.keys())
                self._chosen_category = StringVar(self._main_frame)
                tmp = ttk.OptionMenu(self._main_frame, self._chosen_category,
                                     default_category, *_values)
                tmp.grid(row=i, column=2, padx=5, pady=5)
                ttk.Button(self._main_frame,
                           text='New Category',
                           command=self._new_category).grid(row=i,
                                                            column=3,
                                                            padx=5,
                                                            pady=5)
            else:
                tmp = ttk.Entry(self._main_frame)
                tmp.insert(0, self.default[el])
                tmp.grid(row=i, column=2, columnspan=2, padx=5, pady=5)
            self._entries[el] = tmp
            i += 1

        ttk.Button(self._main_frame, text='Change',
                   command=self._change).grid(row=i, column=1, padx=5, pady=5)
        ttk.Button(self._main_frame, text='Delete',
                   command=self._del).grid(row=i, column=3, padx=5, pady=5)
        ttk.Button(self._main_frame, text='Cancel',
                   command=self.diag.destroy).grid(row=i,
                                                   column=2,
                                                   padx=5,
                                                   pady=5)
Example #30
0
    def setupGUI(self):
        self.pack(fill=BOTH, expand=True)
        self.master.title("SRB base")
        
        self.master.bind('<Return>', self.sendSentence)
        
        # Log box
        textScrollFrame = ttk.Frame(self)
        textScrollFrame.pack(fill=BOTH, expand=True)
        textScrollFrame.grid_columnconfigure(0,weight=1)
        textScrollFrame.grid_columnconfigure(0,weight=1)
        textScrollFrame.grid_rowconfigure(0,weight=1)
        
        scrollbar = ttk.Scrollbar(textScrollFrame)
        scrollbar.grid(column=1,row=0,sticky=N+S)
        self.textBox = tk.Text(textScrollFrame, yscrollcommand=scrollbar.set)
        self.textBox.grid(column=0,row=0,sticky=N+S+E+W)
        self.textBox.config(state=DISABLED)
        self.textBox.tag_configure("error", foreground="red")
        scrollbar.config(command=self.textBox.yview)
        
        # Command entry
        self.textEntry = ttk.Entry(self)
        self.textEntry.pack(fill=X)
        
        # Bottom controls
        controls = ttk.Frame(self)
        controls.pack(fill=X,ipady=3)
        
        self.autoscroll = tk.IntVar()
        scrollCheck = ttk.Checkbutton(controls, text="Autoscroll",
                                      variable=self.autoscroll)
        scrollCheck.pack(side=LEFT)
        self.autoscroll.set(1)

        serialPorts = [item.device for item in comports()]
        self.selectedPort = tk.StringVar()
        self.connectButton = ttk.Button(controls, text="Connect",
                                        command=self.openPort)
        self.connectButton.pack(side=RIGHT)
        portMenu = ttk.OptionMenu(controls, self.selectedPort, *serialPorts)
        portMenu.pack(side=RIGHT,fill=X, expand=True)