Пример #1
0
    def __init__(self, master, **kwargs):
        Frame.__init__(self, master)

        self.autoscroll_check = Checkbutton(self, text='Autoscroll', takefocus=False)
        self.autoscroll_check.pack(side=LEFT, anchor=W, padx=8)

        Separator(self, orient=VERTICAL).pack(side=LEFT, fill=Y, pady=2)

        Label(self, text='Size:').pack(side=LEFT, padx=(8, 3))
        self.font_down_button = Button(self, text='-', width=3, takefocus=False)
        self.font_down_button.pack(side=LEFT)
        self.font_size_label = Label(self, text='24', padding=(6, 2, 6, 2), relief=SOLID, borderwidth=1)
        self.font_size_label.pack(side=LEFT, padx=4)
        self.font_up_button = Button(self, text='+', width=3, takefocus=False)
        self.font_up_button.pack(side=LEFT, padx=(0, 8))

        Separator(self, orient=VERTICAL).pack(side=LEFT, fill=Y, pady=2)

        Label(self, text='Speed:').pack(side=LEFT, padx=(8, 3))
        self.speed_control_frame = SpeedControlFrame(self)
        self.speed_control_frame.pack(side=LEFT, padx=(0, 8))

        Separator(self, orient=VERTICAL).pack(side=LEFT, fill=Y, pady=2)
        self.always_on_top_check = Checkbutton(self, text='Top', takefocus=False)
        self.always_on_top_check.pack(side=LEFT, padx=(8, 0))
Пример #2
0
    def __init__(self, parent, theme_name: str):
        # initializes this frame and its sub frames
        tkinter.Frame.__init__(self, parent)
        self.model: FinanceManagerModel = None
        self.color_manager: ColorManager = None

        self.fd: FileDisplay = FileDisplay(self)
        self.fd.set_listener(self)
        self.fd.grid(row=0, column=0, sticky=tkinter.NS)

        separator1 = Separator(self, orient="vertical")
        separator1.grid(row=0, column=1, sticky='ns')

        self.tv: TableVisualizer = TableVisualizer(self)
        self.tv.add_listener(self)
        self.tv.grid(row=0, column=2, sticky=tkinter.NS)

        separator2 = Separator(self, orient="vertical")
        separator2.grid(row=0, column=3, sticky='ns')

        self.dv: DataVisualizer = DataVisualizer(self, text="Data Visualizer")
        self.dv.grid(row=0, column=4, sticky=tkinter.NS)

        if theme_name == "dark":
            self.set_color_manager(
                ColorManager(ColorTheme.get_dark_theme_dict()))
        else:
            self.set_color_manager(
                ColorManager(ColorTheme.get_default_theme_dict()))
Пример #3
0
    def init_ui(self):
        self.segmentation_config_frame = SegmentationConfigFrame(self, self.configuration)
        Label(self, text="Segmentation").grid(row=0, column=0, sticky="w")
        self.segmentation_config_frame.grid(row=0, column=1, sticky="w")

        Separator(self, orient=HORIZONTAL).grid(row=1, column=0, sticky="ew", columnspan=2)

        self.spm_config_frame = SpmConfigFrame(self, self.configuration)
        Label(self, text="Color detection").grid(row=2, column=0, sticky="w")
        self.spm_config_frame.grid(row=2, column=1, sticky="w")

        Separator(self, orient=HORIZONTAL).grid(row=3, column=0, sticky="ew", columnspan=2)

        self.texture_config_frame = TextureConfigFrame(self, self.configuration)
        Label(self, text="Texture detection").grid(row=4, column=0, sticky="w")
        self.texture_config_frame.grid(row=4, column=1, sticky="w")

        Separator(self, orient=HORIZONTAL).grid(row=5, column=0, sticky="ew", columnspan=2)

        self.size_config_frame = SizeConfigFrame(self, self.configuration)
        Label(self, text="Image size").grid(row=6, column=0, sticky="w")
        self.size_config_frame.grid(row=6, column=1, sticky="w")

        Separator(self, orient=HORIZONTAL).grid(row=7, column=0, sticky="ew", columnspan=2)

        self.detection_path_frame = DetectionPathFrame(self, self.configuration)
        Label(self, text="Input image").grid(row=8, column=0, sticky="w")
        self.detection_path_frame.grid(row=8, column=1, sticky="w")

        Separator(self, orient=VERTICAL).grid(row=0, column=2, sticky="ns", rowspan=9)
Пример #4
0
 def __init__(self, master, pakli, kep, nev, ertek, fuggveny, megtekint):
     Toplevel.__init__(self)
     self.master = master
     self.pakli = pakli
     self.nev = nev
     self.ertek = ertek
     self.fuggveny = fuggveny
     self.bezar = self.destroy
     cim = self.master.card_texts[self.nev][0]
     if self.nev == 'treasure':
         szoveg = self.master.card_texts[self.nev][1] % ertek
     else:
         szoveg = self.master.card_texts[self.nev][1]
     self.title(s.language.event_card if self.pakli ==
                "event" else s.language.treasure_card)
     cimStilus = 'helvetica 14 bold'
     self.kartyalap = Frame(self, relief=GROOVE, bd=2, bg='ivory')
     Label(self.kartyalap, image=Gallery.get(kep)).pack()
     Separator(self.kartyalap, orient=HORIZONTAL).pack(fill=X)
     Label(self.kartyalap, wraplength=216, text=cim,
           font=cimStilus).pack(fill=X)
     Separator(self.kartyalap, orient=HORIZONTAL).pack(fill=X)
     self.szovegfelirat = Label(self.kartyalap, wraplength=216, text=szoveg)
     self.szovegfelirat.pack(fill=X)
     self.kartyalap.pack(pady=5, padx=5)
     if megtekint:
         pass
     else:
         exec(self.fuggveny)
         self.protocol("WM_DELETE_WINDOW", self.bezar)
     self.transient(self.master)
     self.resizable(False, False)
Пример #5
0
    def __init__(self, main):
        super(ElementsFrame, self).__init__(main.screen)

        s = Style()
        s.configure('my.TButton', font=('Arial', 16))

        self.main = main
        self.ask = None  # RESPECT PEP8

        self.title = Label(self,
                           text=main.lang.get_translate(
                               "elements_title", "Elements"),
                           font=('Arial', '16'))
        add_element = Button(self,
                             text=main.lang.get_translate(
                                 "elements_add", "Add Element"),
                             style="my.TButton",
                             command=self.add_elements)

        self.columnconfigure(0, weight=1)

        self.title.grid(row=0, column=0)
        Separator(self, orient=HORIZONTAL).grid(row=1, column=0, sticky="EW")
        add_element.grid(row=2, column=0, sticky="NESW", pady=5)
        Separator(self, orient=HORIZONTAL).grid(row=3, column=0, sticky="EW")

        self.elements_widgets = {}

        self.current_row = 4
Пример #6
0
    def __init__(self, parent, main):
        Frame.__init__(self, parent)

        self.main = main
        self.next_frame = None
        self.prev_frame = None

        self.main_frame = ScrollFrame(self, self)
        self.main_frame.grid(row=0, column=0, sticky='nswe')

        variable_frame = Frame(self.main_frame.viewPort)

        variable_frame.grid(column=0, row=0, sticky='nswe', padx=20, pady=5)

        Label(variable_frame, text=LANGUAGES[settings.LANGUAGE]['stp3'],
              font='Arial 14 bold').grid(row=0, column=0, pady=2, sticky='w')

        variable_frame.columnconfigure(0, weight=0, minsize=150)
        variable_frame.columnconfigure(1, weight=1, minsize=200)

        Label(variable_frame, text=LANGUAGES[settings.LANGUAGE]['e_v'],
              font='Arial 11').grid(row=1, column=0, pady=20, sticky='w')
        Separator(variable_frame, orient=HORIZONTAL).grid(row=2, sticky='we', columnspan=3)

        Label(variable_frame, text=LANGUAGES[settings.LANGUAGE]['tmp'] + ' (K):').grid(row=3, column=0, sticky='w')
        self.temperature_entry = Spinbox(variable_frame, from_=0, to=100000, increment=0.1, bd=1, relief=SOLID)
        self.temperature_entry.grid(row=3, column=1, padx=2, sticky='w', pady=10)
        self.temp_advertise = Label(variable_frame, text='', font='Arial 10')
        self.temp_advertise.grid(row=3, column=2, sticky='w')

        Label(variable_frame,
              text=LANGUAGES[settings.LANGUAGE]['volume'] + ' (angstrom^3):').grid(row=4, column=0, sticky='w')
        self.volume_entry = Spinbox(variable_frame, increment=1, bd=1, relief=SOLID)
        self.volume_entry.grid(row=4, column=1, padx=2, sticky='w')

        Label(variable_frame,
              text=LANGUAGES[settings.LANGUAGE]['timestep'] + ' (fs):').grid(row=5, column=0, sticky='w')
        self.DT_FS_entry = Spinbox(variable_frame, increment=0.1, bd=1, relief=SOLID)
        self.DT_FS_entry.grid(row=5, column=1, padx=2, sticky='w', pady=10)

        Label(variable_frame, text=LANGUAGES[settings.LANGUAGE]['fl_v'],
              font='Arial 11').grid(row=6, column=0, pady=20, sticky='w')
        Separator(variable_frame, orient=HORIZONTAL).grid(row=7, sticky='we', columnspan=3)

        Label(variable_frame, text=LANGUAGES[settings.LANGUAGE]['fl_w'] + ' (THz):').grid(row=8, column=0, sticky='w')
        self.filter_width_entry = Spinbox(variable_frame, from_=0.1, to=10.0, increment=0.1, bd=1, relief=SOLID)
        self.filter_width_entry.grid(row=8, column=1, padx=2, sticky='w', pady=10)

        variable_frame.rowconfigure(9, weight=1)
        button_frame = Frame(variable_frame)
        button_frame.grid(row=9, column=0, sticky='ws', pady=20)

        Button(button_frame, text=LANGUAGES[settings.LANGUAGE]['back'], bd=1, relief=SOLID, font='Arial 12',
               command=lambda: self.back(), width=10).grid(row=0, column=0, sticky='we')

        Button(button_frame, text=LANGUAGES[settings.LANGUAGE]['next'], bd=1, relief=SOLID, font='Arial 12',
               command=lambda: self.next(), width=10).grid(row=0, column=1, padx=5, sticky='we')
Пример #7
0
 def config_Style(self):
     Separator(root, orient='horizontal').grid(row=1,
                                               column=0,
                                               columnspan=7,
                                               sticky='esw')
     Separator(root, orient='horizontal').grid(row=0,
                                               column=0,
                                               columnspan=7,
                                               sticky='esw')
    def __init__(self, parent: Tk, main):
        super(CommandSettingsWindow, self).__init__(parent)
        self._root = parent

        self._main = main

        w = 300
        h = 250
        # get screen width and height
        ws = self._root.winfo_screenwidth()  # width of the screen
        hs = self._root.winfo_screenheight()  # height of the screen

        # calculate x and y coordinates for the Tk window
        x = (ws / 2) - (w / 2)
        y = (hs / 2) - (h / 2)

        self._root.title('Command settings')
        # root.geometry('{}x{}'.format(300, 250))
        self._root.geometry('%dx%d+%d+%d' % (2.5 * w, 2.5 * h, x, y))
        self._root.resizable(height=False, width=False)

        frame1 = Frame(self._root)
        frame1.pack(fill="both", expand=True)

        label_buttons = Label(frame1,
                              text='Button names',
                              font=fontStyle_medium)
        label_commands = Label(frame1,
                               text='Transmitted data',
                               font=fontStyle_medium)
        label_buttons.grid(row=0, column=0, padx=10)
        label_commands.grid(row=0, column=2, padx=10)

        button_list = []
        for i in range(len(button_text)):
            button_list.append(
                Label(frame1,
                      text=button_text[i],
                      borderwidth=borderwidth,
                      relief='sunken',
                      width=15).grid(row=i + 2, column=0, pady=5, padx=15))

        command_list = []
        for i in range(len(dict_commands)):
            text = ''.join(
                format(x, '02X') for x in list(dict_commands.values())[i])
            command_list.append(
                Label(frame1, text='0x' + text).grid(row=i + 2,
                                                     column=2,
                                                     padx=10))

        sep1 = Separator(frame1, orient='vertical')
        sep1.grid(row=0, column=1, rowspan=9, sticky='ns', pady=(5, 0))

        sep2 = Separator(frame1, orient='horizontal')
        sep2.grid(row=1, column=0, columnspan=3, sticky='we', padx=5)
Пример #9
0
 def create_widgets(self):
     self.spread1 = Spread(self)
     self.sep1 = Separator(self)
     self.spread2 = Spread(self)
     self.sep2 = Separator(self)
     self.spread3 = Spread(self)
     self.spread1.pack(side=TOP, fill=X)
     self.sep1.pack(side=TOP, fill=X)
     self.spread2.pack(side=TOP, fill=X)
     self.sep2.pack(side=TOP, fill=X)
     self.spread3.pack(side=TOP, fill=X)
Пример #10
0
    def __set_up_separators(self):
        vertical_sep1 = Separator(self.__main_frame, orient="vertical")
        vertical_sep2 = Separator(self.__main_frame, orient="vertical")
        vertical_sep1.grid(column=1, row=0, sticky="ns", rowspan=5)
        vertical_sep2.grid(column=3, row=0, sticky="ns", rowspan=5)
        horizontal_sep = Separator(self.__main_frame, orient="horizontal")
        horizontal_sep.grid(column=0, row=0, sticky="ew", columnspan=5)
        self.__main_frame.grid_rowconfigure(
            0, minsize=4, pad=0)  # create some space from the top

        sty = Style(self.__main_frame)
        sty.configure("TSeparator", background="DeepSkyBlue2")
Пример #11
0
    def __init__(self, master):
        super().__init__(master)
        self.master.title("Chat Player")
        self.pack(fill=BOTH, expand=True)

        # Variables

        self.font_size_var: IntVar = IntVar(value=DEFAULT_FONT_SIZE)
        self.time_display_var: StringVar = StringVar(value='0:00:00')
        self.speed_display_var: StringVar = StringVar(value='1.00')
        self.seconds_elapsed_var: DoubleVar = DoubleVar(value=0)
        self.autoscroll_var: BooleanVar = BooleanVar(value=True)
        self.paused_var: BooleanVar = BooleanVar(value=True)
        self.always_on_top_var: BooleanVar = BooleanVar(value=False)
        self.pause_button_text_var: StringVar = StringVar(value='⏵')
        self.search_regex_var: BooleanVar = BooleanVar(value=False)
        self.search_case_sensitive_var: BooleanVar = BooleanVar(value=False)
        self.search_count_var: IntVar = IntVar()

        # Style
        self.chat_font = Font(family="Helvetica", size=self.font_size_var.get())

        # Gui

        # self.chat_frame_container = Scrollable(self, outer_kwargs={'padding': 0})
        # self.chat_frame_container.pack(side=TOP, fill=BOTH, expand=True)
        # self.chat_frame = self.chat_frame_container.frame

        self.chat_text = ChatText(self, undo=False, wrap=WORD, padx=6)
        self.chat_text.search_frame.regex_check.configure(variable=self.search_regex_var)
        self.chat_text.search_frame.case_check.configure(variable=self.search_case_sensitive_var)

        self.options_frame = OptionsFrame(self, pad=2)
        self.options_frame.autoscroll_check.configure(variable=self.autoscroll_var)
        self.options_frame.font_size_label.configure(textvariable=self.font_size_var)
        self.speed_control_frame = self.options_frame.speed_control_frame
        self.speed_control_frame.speed_label.configure(textvariable=self.speed_display_var)

        self.time_frame = TimeFrame(self, height=150)
        self.time_frame.play_pause_button.configure(textvariable=self.pause_button_text_var)
        self.time_frame.time_elapsed_label.configure(textvariable=self.time_display_var)
        self.time_frame.time_scale.configure(variable=self.seconds_elapsed_var)

        self.time_frame.pack(side=BOTTOM, fill=X, anchor=S)
        Separator(self, orient=HORIZONTAL).pack(side=BOTTOM, anchor=W, fill=X)
        self.options_frame.pack(side=BOTTOM, fill=X, anchor=S)
        self.options_frame.always_on_top_check.configure(variable=self.always_on_top_var)
        Separator(self, orient=HORIZONTAL).pack(side=BOTTOM, fill=X, anchor=W)
        # Separator(self, orient=HORIZONTAL).pack(side=TOP, anchor=N, fill=X, pady=(5, 0), ipady=0)
        self.chat_text.pack(side=TOP, fill=BOTH, expand=True)
        self.master.attributes('-topmost', True)
        self.master.attributes('-topmost', False)
Пример #12
0
    def __init__(self):

        self.version = (1, 0, 0)

        self.screen = Tk()

        self.paths = {
            "PyModder": os.path.dirname(__file__),
            "Mods": os.path.join(os.path.dirname(__file__), "Mods"),
            "Core": os.path.join(os.path.dirname(__file__), "Core"),
            "Images": os.path.join(os.path.dirname(__file__), "Core", "Images"),
            "Lang": os.path.join(os.path.dirname(__file__), "Core", "Lang"),
            "Logs": os.path.join(os.path.dirname(__file__), "Core", "Logs")
        }

        if os.path.exists(os.path.join(self.paths["Logs"], "last.log")):
            os.remove(os.path.join(self.paths["Logs"], "last.log"))

        self.logger = Logger("PyModder", True, os.path.join(self.paths["Logs"], "last.log"))

        self.logger.info("PyModder V %s launched.", ".".join(str(i) for i in self.version))

        self.conf = Config(os.path.join(self.paths["Core"], "config.json"))
        self.lang = Lang(os.path.join(self.paths["Lang"], self.conf.get("lang", "en")+".lang"))
        self.screen.state("zoomed")

        self.menu = MenuBar(self)
        self.elements = ElementsFrame(self)
        self.properties = PropertiesFrame(self)

        self.project = self.load_project(self.conf.get("last_project", ""))
        self.launcher = Launcher(self)
        self.conf.set("last_project", self.project.name)
        self.conf.save()

        self.screen.columnconfigure(1, weight=1)
        self.screen.columnconfigure(3, weight=3)
        self.screen.rowconfigure(3, weight=1)

        Separator(self.screen, orient=VERTICAL).grid(row=0, column=0, sticky="NS")
        Separator(self.screen, orient=HORIZONTAL).grid(row=0, column=0, columnspan=5, sticky="EW")
        self.menu.grid(row=1, column=1, columnspan=3, sticky="NESW")
        Separator(self.screen, orient=HORIZONTAL).grid(row=2, column=0, columnspan=5, sticky="EW")
        self.elements.grid(row=3, column=1, sticky="NESW")
        Separator(self.screen, orient=VERTICAL).grid(row=3, column=2, sticky="NS")
        self.properties.grid(row=3, column=3, sticky="NESW")
        Separator(self.screen, orient=VERTICAL).grid(row=0, column=4, sticky="NS")

        self.logger.info("PyModder loaded.")

        self.screen.protocol("WM_DELETE_WINDOW", self.close)
        self.screen.mainloop()
Пример #13
0
def open(db_manager_instance):
    global db
    db = db_manager_instance
    filter_lb_list = []

    window = Toplevel()
    window.grab_set()
    window.title("Filter Settings")
    window.minsize(750, 450)

    main_frame = Frame(window)

    title_lbl = Label(main_frame,
                      text="Add or Remove Filters",
                      font=("Calibri", 14))

    # Creates a frame that contains the three filters and their components
    filter_frame = Frame(main_frame)
    prefix_frame = create_filter_frame(filter_frame, Database.PREFIX,
                                       filter_lb_list)
    phrase_frame = create_filter_frame(filter_frame, Database.PHRASE,
                                       filter_lb_list)
    suffix_frame = create_filter_frame(filter_frame, Database.SUFFIX,
                                       filter_lb_list)
    padding_x = 25
    prefix_frame.grid(column=0, row=0, padx=padding_x)
    Separator(filter_frame, orient=VERTICAL).grid(column=1,
                                                  row=0,
                                                  sticky='wns')
    phrase_frame.grid(column=1, row=0, padx=padding_x)
    Separator(filter_frame, orient=VERTICAL).grid(column=2,
                                                  row=0,
                                                  sticky='wns')
    suffix_frame.grid(column=2, row=0, padx=padding_x)

    # Creates a frame containing the save and cancel buttons
    save_cancel_frame = Frame(main_frame)
    cancel_btn = Button(save_cancel_frame,
                        text="Cancel",
                        width=10,
                        command=window.destroy)
    save_btn = Button(save_cancel_frame,
                      text="Save",
                      width=10,
                      command=lambda: save_changes(filter_lb_list))
    cancel_btn.grid(column=0, row=0, padx=20)
    save_btn.grid(column=1, row=0, padx=20)

    title_lbl.grid(column=0, row=0, pady=10)
    filter_frame.grid(column=0, row=1)
    save_cancel_frame.grid(column=0, row=2, pady=30)
    main_frame.place(anchor="center", relx="0.5", rely="0.50")
Пример #14
0
 def crear_barra(self,b_lateral):
     """
     Funcion dedicada a crear la barra lateral de los accesos directos que varian dependiendo del sistena operativo
     :param b_lateral: la barra proporcionada por la interfaz
     :return:
     """
     for nombre,direccion in self.listadir.items():
         separador=Separator(b_lateral, orient=HORIZONTAL)
         separador.pack(fill=BOTH,expand=True)
         auxButton=Button(master=b_lateral,text=nombre,command=lambda direccion=direccion:self.actualizar_direccion(direccion))
         auxButton.pack(fill=X)
     separador = Separator(b_lateral, orient=HORIZONTAL)
     separador.pack(fill=BOTH, expand=True)
Пример #15
0
 def _create_control_panel(self):
     self.control_panel = tk.Frame(self.root)
     self.control_panel.pack(side="left", expand="no", fill="both")
     self.cave_control_panel = KFrame(self.control_panel)
     self.image_control_panel = KFrame(self.control_panel)
     self.image_enhance_panel = KFrame(self.control_panel)
     self.cave_control_panel.pack(side="top", expand="no", fill="both")
     Separator(self.control_panel, orient=tk.HORIZONTAL).pack(side="top",
                                                              fill="x",
                                                              pady=1)
     self.image_control_panel.pack(side="top", expand="no", fill="both")
     Separator(self.control_panel, orient=tk.HORIZONTAL).pack(side="top",
                                                              fill="x",
                                                              pady=1)
     self.image_enhance_panel.pack(side="bottom", expand="no", fill="both")
Пример #16
0
    def __init__(self, main):
        super(MenuBar, self).__init__(main.screen)
        self.main = main

        self.icons = {
            "Parameters": PhotoImage(file=os.path.join(main.paths["Images"], "parameters_icon.png")),
            "Open": PhotoImage(file=os.path.join(main.paths["Images"], "open_icon.png")),
            "New": PhotoImage(file=os.path.join(main.paths["Images"], "new_icon.png")),
            "Save": PhotoImage(file=os.path.join(main.paths["Images"], "save_icon.png")),
            "Launch": PhotoImage(file=os.path.join(main.paths["Images"], "launch_icon.png")),
            "Build": PhotoImage(file=os.path.join(main.paths["Images"], "build_icon.png"))
        }

        self.param_btn = Button(self, image=self.icons["Parameters"], command=self.open_param)
        self.open_btn = Button(self, image=self.icons["Open"])
        self.save_btn = Button(self, image=self.icons["Save"], command=self.save)
        self.new_btn = Button(self, image=self.icons["New"], command=self.new)
        self.launch_btn = Button(self, image=self.icons["Launch"], command=self.launch)
        self.build_btn = Button(self, image=self.icons["Build"], command=self.build)

        ToolTip(self.param_btn, main.lang.get_translate("parameters_tooltip", "Parameters"))
        ToolTip(self.open_btn, main.lang.get_translate("open_tooltip", "Open"))
        ToolTip(self.save_btn, main.lang.get_translate("save_tooltip", "Save"))
        ToolTip(self.new_btn, main.lang.get_translate("new_tooltip", "New"))
        ToolTip(self.launch_btn, main.lang.get_translate("launch_tooltip", "Launch"))
        ToolTip(self.build_btn, main.lang.get_translate("build_tooltip", "Build"))

        self.separators = {
            "file_exe": Separator(self, orient=VERTICAL),
            "exe_param": Separator(self, orient=VERTICAL),
            "left": Separator(self, orient=VERTICAL),
            "right": Separator(self, orient=VERTICAL)
        }

        for i in range(8):
            if i in (3, 6):
                self.columnconfigure(i, weight=0)
            else:
                self.columnconfigure(i, weight=1)

        self.new_btn.grid(row=0, column=0, sticky="NSEW", padx=5, pady=5)
        self.open_btn.grid(row=0, column=1, sticky="NSEW", padx=5, pady=5)
        self.save_btn.grid(row=0, column=2, sticky="NSEW", padx=5, pady=5)
        self.separators["file_exe"].grid(row=0, column=3, sticky="NS")
        self.launch_btn.grid(row=0, column=4, sticky="NSEW", padx=5, pady=5)
        self.build_btn.grid(row=0, column=5, sticky="NSEW", padx=5, pady=5)
        self.separators["exe_param"].grid(row=0, column=6, sticky="NS")
        self.param_btn.grid(row=0, column=7, sticky="NSEW", padx=5, pady=5)
Пример #17
0
    def __init__(self, parent, **optional_arguments):
        tkinter.LabelFrame.__init__(self,
                                    parent,
                                    text=optional_arguments['text'])
        self.colors = None

        # setup default parameters and then process optional arguments
        self.field_count = default_field_count
        self.process_optional_arguments(optional_arguments)

        # setup the table showing initial balance, current balance, and expenditure totals
        self.totals_table: TableWidget = None
        self.load_total_amounts()

        # sets up a separator between the two tables
        separator = Separator(self)
        separator.grid(row=0, column=1, sticky="NS")

        # setup the table showing spending by category
        self.category_table: TableWidget = None
        self.load_spending_by_category()

        # setup the pie chart
        self.pie_chart = PieChart(self)
        self.pie_chart.grid(row=1, columnspan=3)

        self.load_table_data(None, None, None)
Пример #18
0
 def build_topic(self, text, value_topic, command, bkg):
     """Creates a topic widget, i.e. a main node of a tree"""
     self.grid_columnconfigure(1, weight=1)
     Label(self, text=text, background=bkg).grid(row=0, column=0)
     Separator(self, orient=HORIZONTAL).grid(row=0, column=1, sticky=W+E)
     tk.Checkbutton(self, text="", variable=value_topic, command=command, bg=bkg,
                    highlightthickness=0, bd=0).grid(row=0, column=2)
Пример #19
0
 def __init__(self, master, **kwargs):
     Frame.__init__(self, master, **kwargs)
     Separator(self, orient=HORIZONTAL).pack(side=TOP, fill=X)
     self.close = Button(self, text='x', width=3, takefocus=False)
     self.close.pack(side=RIGHT)
     self.entry = Entry(self)
     self.entry.pack(side=LEFT, padx=8)
     self.prev = Button(self, text="<", width=3, takefocus=False)
     self.prev.pack(side=LEFT)
     self.next = Button(self, text=">", width=3, takefocus=False)
     self.next.pack(side=LEFT)
     Separator(self, orient=VERTICAL).pack(side=LEFT, fill=Y, pady=2, padx=(6, 4))
     self.regex_check = Checkbutton(self, text='Regex', takefocus=False)
     self.regex_check.pack(side=LEFT)
     self.case_check = Checkbutton(self, text='Case Sensitive', takefocus=False)
     self.case_check.pack(side=LEFT, padx=5)
Пример #20
0
def createMainWindow():
    window = Tk()
    window.title("System application")
    w_options = getWorkers()
    chosen_w = StringVar()
    chosen_w.set("Choose a worker")

    intro_label = Label(window, text="Select action:", width=100)
    intro_label.pack()
    button_add = Button(window, text="Add workers", command=lambda: addWorkerWindow(), width=50)
    button_add.pack()
    button_as = Button(window, text="Assign card", command=lambda: assignCardWindow(), width=50)
    button_as.pack()
    button_unas = Button(window, text="Unassign card", command=lambda: unassignCardWindow(), width=50)
    button_unas.pack()
    Separator(orient=HORIZONTAL).pack(fill="x", expand=1)
    frame = Frame(window)
    frame.pack()
    bottom_frame = Frame(window)
    bottom_frame.pack()
    raport_label = Label(frame, text="Create raport:", width=20)
    raport_label.pack(side=LEFT)
    name = OptionMenu(frame, chosen_w, *w_options)
    name.config(width=50)
    name.pack(side=LEFT)

    def action():
        rap = createRaport(chosen_w.get())
        current_label = Label(bottom_frame, text="Worker: " + chosen_w.get() + ", Total work time: " + rap)
        current_label.pack()

    button_rap = Button(frame, text="Create", command=action, width=10)
    button_rap.pack()
    window.mainloop()
Пример #21
0
 def create_widgets(self):
     entry = ReactiveTextEntry(self)
     entry.grid(row=1, column=0)
     entry.bind('<<TextModified>>', self.onModification)
     Separator(self, orient='vertical').grid(row=0, column=1, sticky='ns')
     self.preview = ScrolledText(self)
     self.preview.grid(row=1, column=2)
Пример #22
0
    def initItems(self):
        """Initialize all widgets here"""
        # First way to create a frame
        frame = Frame(self)
        frame['padding'] = (5, 10)
        frame['borderwidth'] = 2
        frame['relief'] = 'sunken'
        frame.pack(fill='both')
        lbl = Label(frame, text='sunken!')
        lbl.pack()
        lbl2 = Label(frame, text='_2!')
        lbl2.pack()

        # The second way to create a frame
        frame2 = Frame(self, borderwidth=2,
                       relief='raised')  # or constant tkinter.RAISED
        frame2.pack(fill='both')
        Label(frame2, text='raised').grid(row=1, column=1, sticky='w')
        Label(frame2, text='2col 2row').grid(row=2, column=2, sticky='we')
        Label(frame2,
              text='3col 3row',
              relief='raised',
              anchor='center',
              wraplength=50,
              width='7').grid(row=3, column=3, columnspan=2, sticky='we')
        Label(frame2, text='5col 5row').grid(row=4, column=5, sticky='e')

        # The first way to create a separator - with Frame
        sep1 = Frame(self, height=2, borderwidth=1, relief='sunken')
        sep1.pack(fill=X, padx=5, pady=10)
        Label(self, text='Between the separators').pack()
        # The second way to create a Separator - with tkinter.ttk.Separator
        sep = Separator(self, orient=tkinter.HORIZONTAL)
        sep.pack(fill=X, padx=5, pady=10)
Пример #23
0
    def create_content(self, **kw):
        self.rowconfigure(2, weight=1)
        self.columnconfigure(0, weight=1)
        self.minsize(50, 50)
        self.hide_completed = CONFIG.getboolean('Tasks', 'hide_completed')

        # --- elements
        label = Label(self, text=_('Tasks').upper(), style='title.Tasks.TLabel',
                      anchor='center')
        label.grid(row=0, columnspan=2, pady=4, sticky='ew')
        Separator(self, style='Tasks.TSeparator').grid(row=1, columnspan=2, sticky='we')
        self.display = Text(self, width=20, height=10, relief='flat',
                            cursor='arrow', wrap='word',
                            highlightthickness=0, state='disabled',
                            spacing1=5,
                            tabs=('35', 'right', '45', 'left'))
        self.display.grid(sticky='nsew', row=2, column=0, padx=2, pady=2)
        scroll = AutoScrollbar(self, orient='vertical',
                               style='Tasks.Vertical.TScrollbar',
                               command=self.display.yview)
        scroll.grid(row=2, column=1, sticky='ns', pady=(2, 16))
        self.display.configure(yscrollcommand=scroll.set)
        self.display_tasks()

        corner = Sizegrip(self, style="Tasks.TSizegrip")
        corner.place(relx=1, rely=1, anchor='se')

        # --- bindings
        self.bind('<3>', lambda e: self.menu.tk_popup(e.x_root, e.y_root))
        label.bind('<ButtonPress-1>', self._start_move)
        label.bind('<ButtonRelease-1>', self._stop_move)
        label.bind('<B1-Motion>', self._move)
Пример #24
0
	def makeGrid(self):
		configs = Frame(self)
		configs.pack(side=TOP, expand=YES, fill=BOTH)

		self.entFields = []
		for i, (var, name) in enumerate(self.variables().items()):
			# print(i, var)
			if name == 'separator':
				Separator(configs, orient=HORIZONTAL).grid(row=i, sticky=EW, columnspan=2)
			else:
				lab = Label(configs, text=name, justify=LEFT, anchor=W)
				lab.bind('<Button-3>', self.onHelp)
				if var == 'sslServerMode':
					self.sslMode = BooleanVar()
					self.sslMode.set(True if self.config[var] == 'True' else False)
					ent = Checkbutton(configs, text='SSL', anchor=W)
					ent.config(variable=self.sslMode, command=self.sslOn)
				else:
					ent = Entry(configs)
					ent.insert(0, self.config[var])
					self.entFields.append((ent, lab))
				lab.grid(row=i, column=0, sticky=EW)
				ent.grid(row=i, column=1, sticky=EW)
				configs.rowconfigure(i, weight=1)
		configs.columnconfigure(1, weight=1)
Пример #25
0
    def __init__(self, parent, model: Model, graph: BuildGraph, *args, graph_change_callback=None,
                 **kwargs):
        super().__init__(parent, *args, **kwargs)

        self.model = model
        self.graph = graph
        self.link_types = sorted(str(label) for label in self.model.link_types)
        self.graph_change_callback = graph_change_callback

        self.token_listing = ['%s [%s]' % (token.spelling, index)
                              for index, token in enumerate(graph.tokens)]
        assert len(self.token_listing) == len(graph.tokens)

        self.token_labels = [Label(self, text='%s [%s]' % (token.spelling, index))
                             for index, token in enumerate(graph.tokens)]
        assert len(self.token_labels) == len(graph.tokens)

        self.separators = [Separator(self, orient=HORIZONTAL) for _ in graph.tokens]
        assert len(self.separators) == len(graph.tokens)

        link_sets = []
        for source in range(len(graph.tokens)):
            link_set = set()
            for sink in graph.get_sinks(source):
                for label in graph.get_labels(source, sink):
                    link_set.add((str(label), sink))
            link_sets.append(link_set)
        assert len(link_sets) == len(graph.tokens)

        self.link_selector_maps = []  # type: List[Dict[Tuple[Optional[Property], int], Tuple]]
        for source, link_set in enumerate(link_sets):
            link_selector_map = {}
            for label, sink in link_set:
                label_drop_down = Combobox(self, values=self.link_types)
                label_drop_down.current(self.link_types.index(label))
                label_drop_down.bind("<<ComboboxSelected>>",
                                     (lambda *a, r=(source, label, sink), v=label_drop_down, **k:
                                      self.modify_link(r, label=v.get())))
                sink_drop_down = Combobox(self, values=self.token_listing)
                sink_drop_down.current(sink)
                sink_drop_down.bind('<<ComboboxSelected>>',
                                    (lambda *a, r=(source, label, sink), v=sink_drop_down, **k:
                                     self.modify_link(r, sink=self.token_listing.index(v.get()))))
                remove_button = Button(self, text='-',
                                       command=lambda r=(source, label, sink): self.modify_link(r))
                link_selector_map[label, sink] = label_drop_down, sink_drop_down, remove_button
            self.link_selector_maps.append(link_selector_map)
        assert len(self.link_selector_maps) == len(graph.tokens)

        self.new_link_selectors = []  # type: List[Tuple[Combobox, Combobox]]
        for source in range(len(self.graph.tokens)):
            label_drop_down = Combobox(self, values=[''] + self.link_types)
            label_drop_down.current(0)
            label_drop_down.bind('<<ComboboxSelected>>',
                                 (lambda *a, r=(source, None, None): self.modify_link(r, new=True)))
            sink_drop_down = Combobox(self, values=[''] + self.token_listing)
            sink_drop_down.current(0)
            sink_drop_down.bind('<<ComboboxSelected>>',
                                (lambda *a, r=(source, None, None): self.modify_link(r, new=True)))
            self.new_link_selectors.append((label_drop_down, sink_drop_down))
Пример #26
0
    def create_widgets(self):
        self.refresh_btn = Button(self, text='Refresh')
        self.sep1 = Separator(self)
        self.process_btn = Button(self, text='Process All')

        self.refresh_btn.pack(side=LEFT)
        self.sep1.pack(side=LEFT)
        self.process_btn.pack(side=LEFT)
Пример #27
0
def build_main_window(activities, events):
    """
    Sets up the main window
    :return: None
    """
    # Import global to write the main_window
    global main_window

    # Set up main window basics
    main_window = Tk()
    main_window.configure(background="gray30")
    main_window.title("Label Mapper")

    # Advise user to remap the activities
    Label(
        main_window,
        text=
        "Please map the activities of the process model\n to the events in the log",
        bg="gray30",
        fg="white",
        font=("Arial Bold", 15)).grid(pady=10, padx=20)

    # Separate heading from the main selection frames
    Separator(main_window, orient="horizontal").grid(sticky="ew", pady=1)
    Separator(main_window, orient="horizontal").grid(sticky="ew", pady=1)

    # Build comboboxes from the lists
    build_comboboxes(activities, events)

    # Separate selection frames from the remap button
    Separator(main_window, orient="horizontal").grid(sticky="ew", pady=1)
    Separator(main_window, orient="horizontal").grid(sticky="ew", pady=1)

    # Remaps the dcr graphs labels and quits the gui
    button1 = Button(main_window,
                     text="Remap & Quit",
                     bg="black",
                     fg="white",
                     command=set_mapping_cb)
    button1.grid(sticky="ew")

    # Start GUI
    main_window.mainloop()

    # Return the mappings that were created during gui action
    return mappings
Пример #28
0
    def __init__(self, parent, controller):
        tk.Frame.__init__(self, parent)

        self.controller = controller
        self.configure(bg="white")

        # Set a page title
        self.Title = tk.Label(self,
                              text="Game Over!",
                              bg="white",
                              font=FONTS["large"])
        self.Title.pack(side="top")

        Separator(self, orient="horizontal").pack(side="top",
                                                  fill="x",
                                                  padx=10)

        # Set the winner text object
        self.Winner = tk.Label(self,
                               text="The winner is black-discs.",
                               bg="white",
                               font=FONTS["medium"])
        self.Winner.pack(side="top")

        # Create the replay and exit buttons
        self.Buttons = tk.Frame(self, bg="white")
        self.Buttons.pack()

        Replay = tk.Button(self.Buttons,
                           text="Replay",
                           bg="#bbbbbb",
                           font=FONTS["medium"],
                           command=lambda: self.Replay())
        Replay.grid(row=0, column=0)

        Quit = tk.Button(self.Buttons,
                         text="Quit",
                         bg="#bbbbbb",
                         font=FONTS["medium"],
                         command=lambda: self.Quit())
        Quit.grid(row=0, column=1)

        # the area for the board output
        self.Board_Area = tk.Frame(self, bg="white")
        self.Board_Area.pack(side="bottom")

        # Score text
        self.Score = tk.Label(self.Board_Area,
                              text="",
                              bg="white",
                              font=FONTS["medium"])
        self.Score.pack()

        # The display for the board
        self.Board_Display = tk.Frame(self.Board_Area, bg="green")
        self.Board_Display.pack()

        self.Board = []
Пример #29
0
    def _create_top_bar(self):
        """ Create top bar

        :return:
        """
        self.top_bar = KFrame(self.root, relief=tk.RAISED)
        self.top_bar.pack(fill="x", side="top",
                          padx=2)  # pady = external padding (rembourrage...)
        Separator(self.root, orient=tk.HORIZONTAL).pack(side="top", fill="x")
Пример #30
0
 def __init__(self, title, parent, row, column, width, top=10, bottom=10):
     Separator(parent, orient=HORIZONTAL).grid(row=row,
                                               column=column,
                                               pady=(top, bottom),
                                               sticky=(W, E))
     self.panel = Frame(parent, width=width, height=10)
     self.panel.grid(row=row, column=column)
     self.label = Label(self.panel, text=" %s " % title)
     self.label.grid(row=row, column=column, pady=(top, bottom))