Пример #1
0
def demo():
    choice = "/"
    while choice:
        if not os.path.isdir(choice):
            return os.path.join(os.getcwd(), choice)
        os.chdir(choice)
        paths = [".."] + sorted(os.listdir("."))
        choice = dmenu(paths, lines=10, bottom=True, prompt="Browse..")
    def fetchFilename(self):
        print('Please enter a filename')
        menu = dmenu('Filename')
        menu.show()

        self.filename = menu.getResult()

        print(self.filename)
        return self.filename
def main():
    screenshot = Screenshot()

    mainMenu = dmenu('Action', ['Take a screenshot', 'Upload last screenshot'], ['-l', '10', '-i'])
    if not mainMenu.show():
        sys.exit(1)

    if mainMenu.getResult() == 'Take a screenshot':

        flags = []

        screenAreaMenu = dmenu('Take a screenshot of', ['Window', 'Section', 'Monitor', 'Everything'], ['-l', '10', '-i'])
        screenAreaMenu.show()

        if screenAreaMenu.getResult() == 'Window':
            print('Taking a screenshot of a single window')
            flags.append('-u')

        elif screenAreaMenu.getResult() == 'Section':
            print('Taking a screenshot of a section of the screen')
            flags.append('-s')

        elif screenAreaMenu.getResult() == 'Monitor':
            print('Taking of a single monitor is not yet supported')
            sys.exit(2)

        elif screenAreaMenu.getResult() == 'Everything':
            print('Taking a screenshot of the entire screen')

        screenshot.fetchFilename()
        screenshot.grab(flags)

        uploadMenu = dmenu('Upload it to server', ['Yes', 'No'], ['-i'])
        uploadMenu.show()

        if uploadMenu.getResult() == 'Yes':
            screenshot.upload()

            print('Copying link to clipboard')
            clipboard(screenshot.fetchUrl())