#!/usr/bin/python

import Tkinter, tkFileDialog, tkSimpleDialog
from libgitcpp import GitCPP

def commit():
    commit_message = tkSimpleDialog.askstring(root, "commit message")
    if commit_message:
        repo.commit(commit_message)


root = Tkinter.Tk()
root.title("GitCPP")

label_info = Tkinter.Label(root, text="GitCPP", justify="left", font="monospace")
label_info.grid(columnspan=3)

dirname = tkFileDialog.askdirectory(parent=root, title='Please select a directory')
repo = GitCPP(dirname)

if repo.is_repository():
    root.title("GitCPP "+dirname)

    label_repo = Tkinter.Label(root, text=dirname, justify="left", font="monospace")
    label_repo.grid(columnspan=3)

    button_commit = Tkinter.Button(root, text="commit", command=commit)
    button_push = Tkinter.Button(root, text="push", command=repo.push)
    button_pull = Tkinter.Button(root, text="pull", command=repo.pull)

    button_commit.grid(row=3, column=0)
    button_push.grid(row=3, column=1)
    button_pull.grid(row=3, column=2)

else:
    label_repo = Tkinter.Label(root, text="isn't git repository\n"+dirname, justify="left", font="monospace")
    label_repo.grid(columnspan=3)

root.mainloop()