Пример #1
0
        def edit_file_func(file_name):
            if file_type[8:12] == 'play':
                settings['edit_subject'] = 'players'
            elif file_type[8:12] == 'form':
                settings['edit_subject'] = 'formations'
            elif file_type[8:12] == 'team':
                settings['edit_subject'] = 'teams'
            else:
                print "Invalid file type."

            settings['file_name'] = file_name

            EditMenu.open_edit_menu(win_pick_file.x, win_pick_file.y, db_dict, settings=settings)
            settings['file_changes'] = True
            win_pick_file.hide()
Пример #2
0
    def __init__(self, master):
        self.mainRoot = master
        self.menuBar = Menu(master)

        self.fileMenu = FileMenu.FileMenu(self.mainRoot)
        self.menuBar.add_cascade(label="Plik", menu=self.fileMenu.GetMenu())

        self.editMenu = EditMenu.EditMenu(self.mainRoot)
        self.menuBar.add_cascade(label="Edycja", menu=self.editMenu.GetMenu())
Пример #3
0
    def back_btn_func():
        if settings['window'] == 'search':
            SearchMenu.open_search_menu(win_attribute.x, win_attribute.y, db_dict, attr_dict, attr_list, settings)
        elif settings['window'] == 'edit':
            EditMenu.open_edit_menu(win_attribute.x, win_attribute.y, db_dict, attr_dict, attr_list, settings)
        elif settings['window'] == 'ultimate_player_judging':
            CreateUltimateTeams.open_create_ultimate_teams_window(
                win_attribute.x, win_attribute.y, db_dict, settings['prev_window_value'], player_judge_list=attr_list,
                file_name=settings['file_name'], roster=settings['roster'], input_formation=settings['input_formation'])
        elif settings['window'] == 'ultimate_team_judging':
            CreateUltimateTeams.open_create_ultimate_teams_window(
                win_attribute.x, win_attribute.y, db_dict, settings['prev_window_value'], team_judge_list=attr_list,
                file_name=settings['file_name'], roster=settings['roster'], input_formation=settings['input_formation'])
        elif settings['window'] == 'pick_player':
            PickPlayer.open_pick_player_window(win_attribute.x, win_attribute.y, db_dict,
                                               settings['input_formation'], settings['win_previous'],
                                               settings['roster'], settings['pos_symbol'],
                                               settings['pick_formations_page'], attr_dict, attr_list, settings)
        else:
            print "Invalid window setting."

        win_attribute.become_target()
        win_attribute.hide()
Пример #4
0
    def __init__(self, master, text_widget, fmc, var):
        self.master = master
        self.FileName = fmc.FileName
        self.TextWidget = text_widget
        self.emc = EditMenu.Edit_Menu(self.master, self.TextWidget, var)

        self.MenuNames = ('Undo', 'Cut', 'Copy', 'Paste', 'Delete',
                          'Select All', 'Take Screenshot',
                          'Search with Google', 'Open Containing Folder')
        self.commands = (self.emc.undo, self.emc.cut, self.emc.copy,
                         self.emc.paste, self.emc.delete, self.emc.SelectAll,
                         self.TakeScreenshot, self.emc.SearchWithGoogle,
                         self.OpenFileLocation)

        self.menu = Menu(self.master, tearoff=False)

        for index, value in enumerate(zip(self.MenuNames, self.commands)):
            if index in [1, 6]:
                self.menu.add_separator()

            self.menu.add_command(label=value[0], command=value[1])
Пример #5
0
    def __init__(self, NewWindow=False):
        self.get_font = Include.GetFontDetails()

        if NewWindow:  # When user wants to make a new window
            self.master = Toplevel()

            if 'Number of Windows' not in self.get_font:  # Tracking the number of Toplevel Windows
                self.get_font['Number of Windows'] = 1

            else:
                self.get_font['Number of Windows'] += 1

            Include.SaveFontDetails(self.get_font)

        else:  # When programs starts for the first time
            self.master = Tk()

        self.font = Font(family=self.get_font['Font Family'],
                         size=self.get_font['Font Size'])
        Include.ConfigFontStyle(self.get_font['Font Style'], self.font)

        self.menu = Menu(self.master)
        self.file_menu = Menu(self.menu, tearoff=0)
        self.edit_menu = Menu(self.menu, tearoff=0)
        self.format_menu = Menu(self.menu, tearoff=0)
        self.view_menu = Menu(self.menu, tearoff=0)
        self.help_menu = Menu(self.menu, tearoff=0)

        for label, menu in {
                'File': self.file_menu,
                'Edit': self.edit_menu,
                'Format': self.format_menu,
                'View': self.view_menu,
                'Help': self.help_menu
        }.items():
            self.menu.add_cascade(label=label, menu=menu)

        self.master.config(menu=self.menu)

        self.CanvasFrame = Frame(self.master)
        self.LineCanvas = Canvas(self.CanvasFrame, width=50)
        self.CanvasHSB = Scrollbar(self.CanvasFrame,
                                   orient='horizontal',
                                   command=self.LineCanvas.xview)
        self.LineCanvas.configure(xscrollcommand=self.CanvasHSB.set)
        self.CanvasHSB.pack(side='bottom', fill='x')
        self.LineCanvas.pack(side='left', fill='y')

        self.TextWidgetFrame = Frame(self.master, width=659, height=424)
        self.TextWidgetFrame.grid_propagate(False)
        self.TextWidget = Text(master=self.TextWidgetFrame,
                               bd=0,
                               undo=True,
                               font=self.font,
                               maxundo=-1,
                               autoseparators=True)
        self.VSB = Scrollbar(self.TextWidgetFrame,
                             orient='vertical',
                             command=self.TextWidget.yview)
        self.HSB = Scrollbar(self.TextWidgetFrame,
                             orient='horizontal',
                             command=self.TextWidget.xview)
        self.TextWidget.configure(yscrollcommand=self.VSB.set,
                                  xscrollcommand=self.HSB.set)

        self.TextWidget.grid(row=0, column=0, sticky='nsew')
        self.VSB.grid(row=0, column=1, sticky='ns')
        self.HSB.grid(row=1, column=0, sticky='ew')

        self.TextWidgetFrame.grid_rowconfigure(0, weight=1)
        self.TextWidgetFrame.grid_columnconfigure(0, weight=1)
        self.TextWidget.focus_set()
        self.TextWidgetFrame.pack(side='top', fill='both', expand=True)

        self.LineColumnVar = StringVar()
        self.status_label_var = StringVar()
        self.LineColumnVar.set('Ln 1, Col 1')

        self.StatusBarFrame = Frame(self.TextWidgetFrame)
        self.StatusBarFrame.grid(row=2, column=0, sticky='e')

        self.StatusLabel = Label(self.StatusBarFrame,
                                 textvariable=self.status_label_var)
        self.StatusLabel.grid(row=0, column=0, sticky='w')
        self.LineColumn = Label(self.StatusBarFrame,
                                textvariable=self.LineColumnVar)
        self.LineColumn.grid(row=0, column=1, ipadx=20)
        self.ZoomLabel = Label(self.StatusBarFrame, text='100%')
        self.ZoomLabel.grid(row=0, column=2, ipadx=10)
        self.TextFormatter = Label(self.StatusBarFrame, text='Windows (CRLF)')
        self.TextFormatter.grid(row=0, column=3, ipadx=14)
        self.encoding = Label(self.StatusBarFrame, text='UTF-8')
        self.encoding.grid(row=0, column=4, ipadx=10)

        self.fmc = FileMenu.File_Menu(self.master, self.TextWidget,
                                      self.status_label_var)
        self.FileMenuOptions = [
            'New', 'New Window ', 'Open... ', 'Save', 'SaveAs...', 'Exit'
        ]
        self.FileMenuCommands = [
            self.fmc.New, self.fmc.NewWindow, self.fmc.Open, self.fmc.Save,
            self.fmc.SaveAs, self.exit
        ]
        self.FileMenuAccelerator = [
            'Ctrl+N', 'Ctrl+Shift+N', 'Ctrl+O', 'Ctrl+S', 'Ctrl+Shift+S',
            'Ctrl+Q'
        ]

        self.emc = EditMenu.Edit_Menu(self.master, self.TextWidget,
                                      self.status_label_var)
        self.EditMenuOptions = [
            'Undo', 'Cut', 'Copy', 'Paste', 'Delete', 'Search with Google',
            'Find...', 'Replace...', 'Go To...', 'Select All', 'Time / Date',
            'Strip Trailing Whitespace'
        ]
        self.EditMenuCommands = [
            self.emc.undo, self.emc.cut, self.emc.copy, self.emc.paste,
            self.emc.delete, self.emc.SearchWithGoogle, self.emc.FindWidget,
            self.emc.ReplaceWidget, self.emc.GoToWidget, self.emc.SelectAll,
            self.emc.GetDateTime, self.emc.StripWhitespaces
        ]
        self.EditMenuAccelerator = [
            'Ctrl+Z', 'Ctrl+X', 'Ctrl+C', 'Ctrl+V', 'DEL', 'Ctrl+E', 'Ctrl+F',
            'Ctrl+H', 'Ctr+G', 'Ctrl+A', 'F5', 'Alt+Enter'
        ]

        self.Fmc = FormatMenu.Format(self.master, self.TextWidget, self.font)
        self.FormatMenuOptions = ['Word Wrap', 'Font...']
        self.FormatMenuAccelerator = ['Ctrl+W', 'Ctrl+Shift+F']

        self.vmc = ViewMenu.View(self.master, self.TextWidget,
                                 self.TextWidgetFrame, self.CanvasFrame,
                                 self.LineCanvas, self.StatusBarFrame,
                                 self.ZoomLabel, self.font)
        self.ViewMenuOptions = [
            'Zoom', 'Status Bar', 'FullScreen', 'Show Line Numbers'
        ]
        self.ZoomCommands = [
            self.vmc.ZoomIn, self.vmc.ZoomOut, self.vmc.DefaultZoom
        ]
        self.ViewMenuZoomAccelerator = {
            'Zoom In': '            Ctrl+Plus',
            'Zoom Out': '        Ctrl+Minus',
            'Restore Default Zoom': '                 Ctrl+0'
        }

        self.HelpMenuOptions = ['About']
        self.HelpMenuAccelerator = ['F12']
        self.HelpMenuCommands = [self.about]

        for index, value in enumerate(self.FileMenuOptions):
            if index in [5, 7]:
                self.file_menu.add_separator()

            self.file_menu.add_command(
                label=value.ljust(23),
                accelerator=self.FileMenuAccelerator[index],
                command=self.FileMenuCommands[index])

        for index, value in enumerate(self.EditMenuOptions):
            if index in [1, 5, 11]:
                self.edit_menu.add_separator()

            self.edit_menu.add_command(
                label=value.ljust(40),
                accelerator=self.EditMenuAccelerator[index],
                command=self.EditMenuCommands[index])

        for index, value in enumerate(self.FormatMenuOptions):
            if index == 1:
                self.format_menu.add_command(
                    label=value.ljust(30),
                    accelerator=self.FormatMenuAccelerator[index],
                    command=self.Fmc.FontSelection)

            else:
                self.format_menu.add_checkbutton(
                    label=value,
                    onvalue=True,
                    offvalue=False,
                    variable=self.Fmc.WrapAroundVar,
                    accelerator=self.FormatMenuAccelerator[index],
                    command=self.Fmc.WrapAround)

        for index, value in enumerate(self.ViewMenuOptions):
            if index == 0:
                self.sub_view_menu = Menu(self.view_menu, tearoff=0)
                self.view_menu.add_cascade(label=value,
                                           menu=self.sub_view_menu)

                for index, values in enumerate(
                        self.ViewMenuZoomAccelerator.items()):
                    self.sub_view_menu.add_command(
                        label=values[0],
                        accelerator=values[1],
                        command=self.ZoomCommands[index])

            elif index == 1:
                self.view_menu.add_checkbutton(
                    label=value,
                    onvalue=1,
                    offvalue=False,
                    variable=self.vmc.ShowStatusBar,
                    accelerator='Alt+S'.rjust(30),
                    command=self.vmc.toggle_statusbar)

            elif index == 2:
                self.view_menu.add_checkbutton(
                    label=value,
                    onvalue=1,
                    offvalue=False,
                    variable=self.vmc.FullScreenVar,
                    accelerator='F11'.rjust(28),
                    command=self.vmc.set_full_screen)

            elif index == 3:
                self.view_menu.add_checkbutton(
                    label=value,
                    onvalue=1,
                    offvalue=False,
                    variable=self.vmc.LineNumberVar,
                    accelerator='Alt+L'.rjust(30),
                    command=self.vmc.ToggleLineNumber)

        for index, value in enumerate(self.HelpMenuOptions):
            self.help_menu.add_command(
                label=value.ljust(20),
                accelerator=self.HelpMenuAccelerator[index],
                command=self.HelpMenuCommands[index])

        self.Fmc.WrapAround()
        self.vmc.ToggleLineNumber()
        self.UpdateLineColumn()
        self.EnableDisableMenu()
        self.UpdateLabelText()

        self.TextWidget.bind('<Control-q>', self.exit)
        self.TextWidget.bind('<Button-3>', self.button_3)
        self.TextWidget.bind('<Delete>', self.emc.delete)
        self.TextWidget.bind('<Control-n>', self.fmc.New)
        self.TextWidget.bind('<Control-x>', self.emc.cut)
        self.TextWidget.bind('<Control-o>', self.fmc.Open)
        self.TextWidget.bind('<Control-s>', self.fmc.Save)
        self.TextWidget.bind('<Control-z>', self.emc.undo)
        self.TextWidget.bind('<Control-c>', self.emc.copy)
        self.TextWidget.bind('<BackSpace>', self.backspace)
        self.TextWidget.bind('<Control-v>', self.emc.paste)
        self.TextWidget.bind('<Key>', self.RemoveSelection)
        self.TextWidget.bind('<F5>', self.emc.GetDateTime)
        self.master.bind('<F12>', self.HelpMenuCommands[0])
        self.master.protocol('WM_DELETE_WINDOW', self.exit)
        self.TextWidget.bind('<Control-S>', self.fmc.SaveAs)
        self.TextWidget.bind('<Control-N>', self.fmc.NewWindow)
        self.TextWidget.bind('<Control-a>', self.emc.SelectAll)
        self.TextWidget.bind('<Control-N>', self.fmc.NewWindow)
        self.TextWidget.bind('<Control-plus>', self.vmc.ZoomIn)
        self.TextWidget.bind('<Control-g>', self.emc.GoToWidget)
        self.TextWidget.bind('<MouseWheel>', self.vmc.WheelZoom)
        self.TextWidget.bind('<Button-1>', self.SingleLeftClick)
        self.TextWidget.bind('<Control-f>', self.ShowFindWidget)
        self.TextWidget.bind('<Control-minus>', self.vmc.ZoomOut)
        self.TextWidget.bind('<Control-0>', self.vmc.DefaultZoom)
        self.TextWidget.bind('<Triple-Button-1>', self.TripleClick)
        self.TextWidget.bind('<Control-h>', self.ShowReplaceWidget)
        self.master.bind('<F11>', lambda e: self.view_menu.invoke(2))
        self.master.bind('<Alt-s>', lambda e: self.view_menu.invoke(1))
        self.TextWidget.bind('<Control-e>', self.emc.SearchWithGoogle)
        self.TextWidget.bind('<Double-Button-1>', self.DoubleLeftClick)
        self.TextWidget.bind('<Alt-Return>', self.ActivateStripWhiteSpace)
        self.master.after(0, lambda: Include.initial_position(self.master))
        self.TextWidget.bind('<Alt-l>', lambda e: self.view_menu.invoke(3))
        self.TextWidget.bind('<Control-F>', lambda e: self.Fmc.FontSelection())
        self.TextWidget.bind('<Control-w>',
                             lambda e: self.format_menu.invoke(0))
        self.TextWidget.bind(
            '<Configure>', lambda e: self.TextWidget.configure(
                scrollregion=self.TextWidget.bbox('end')))
        self.master.mainloop()