Esempio n. 1
0
class KvMemeApp(App):
    def build(self):
        self.meme = Meme('gifs/this_is_fine.gif')
        return MemeAppMainView(self)

    def set_top(self, value):
        self.meme.set_top(value)

    def set_mid(self, value):
        self.meme.set_mid(value)

    def set_bot(self, value):
        self.meme.set_bot(value)
Esempio n. 2
0
class MemeApp(object):
    def __init__(self):
        self.root = Tk()
        self.root.title('Memez!!!!1!')
        self.mainframe = ttk.Frame(self.root, padding='3 3 12 12')
        self.mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
        self.mainframe.columnconfigure(0, weight=1)
        self.mainframe.rowconfigure(0, weight=1)

        self.top = StringVar()
        self.top.trace('w', self.update_top)
        self.top_entry = ttk.Entry(self.mainframe, textvariable=self.top)
        self.top_entry.grid(column=0, row=0)

        self.mid = StringVar()
        self.mid.trace('w', self.update_mid)
        self.mid_entry = ttk.Entry(self.mainframe, textvariable=self.mid)
        self.mid_entry.grid(column=0, row=1)

        self.bot = StringVar()
        self.bot.trace('w', self.update_bot)
        self.bot_entry = ttk.Entry(self.mainframe, textvariable=self.bot)
        self.bot_entry.grid(column=0, row=2)

        self.filename = 'gifs/this_is_fine.gif'
        self.meme = Meme(self.filename)
        self.img = self.meme.render('test.gif')
        self.tkimg = ImageTk.PhotoImage(self.img)
        self.button = ttk.Button(self.mainframe, image=self.tkimg)
        self.button.grid(column=1, row=0, rowspan=3, stick=(W, E))

        self.select_meme = ttk.Button(self.mainframe,
                                      text='Select Image',
                                      command=self.select_image)
        self.select_meme.grid(column=0, row=3)

        #self.button.pack()
        self.mainframe.pack()

    def run(self):
        self.root.mainloop()

    def update_top(self, var, align, *args):
        str = self.top.get()
        self.top.set(str)
        self.meme.set_top(str)
        self.meme.set_top_align(align)
        self.update_img()
        return True

    def update_mid(self, var, align, *args):
        str = self.mid.get()
        self.mid.set(str)
        self.meme.set_mid(str)
        self.meme.set_mid_align(align)
        self.update_img()
        return True

    def update_bot(self, var, align, *args):
        str = self.bot.get()
        self.bot.set(str)
        self.meme.set_bot(str)
        self.meme.set_bot_align(align)
        self.update_img()
        return True

    def select_image(self, *args):
        self.filename = tkFileDialog.askopenfilename(initialdir="/",
                                                     title="Select file")
        self.meme.set_input(self.filename)

    def update_img(self):
        self.img = self.meme.render('temp.gif')
        self.tkimg = ImageTk.PhotoImage(self.img)
        self.button['image'] = self.tkimg