Beispiel #1
0
def providerfilms(providernaam):
    """
    returnt een lijst met alle films die een gebruiker in bezit heeft
    de doctest werkt alleen op 30-10-2015 omdat de uitslagen afhankelijk zijn van de datum
    >>> providerfilms("RTL8")
    ['Penthouse North', 'Black Forest']
    >>> providerfilms("SBS9")
    ['Observe and Report', 'Beerfest']
    >>> providerfilms("BBC1")
    ['Hollywood Homicide']
    >>> providerfilms("FOX")
    ['The Frighteners']
    >>> providerfilms("CANVAS")
    []
    """
    TB.schrijf_xml(TB.response)
    TB.films_dict = TB.verwerk_xml()
    global filmnamen
    filmnamen = TB.print_filmnamen(TB.films_dict)
    list = []
    filmnamenlijst = []
    nummer = 0
    for i in filmnamen["provider"]:
        if i == providernaam:
            # print(nummer)
            list.append(nummer)
        nummer += 1
    for provider in list:
        # print(filmnamen["titel"][provider])
        filmnamenlijst.append(filmnamen["titel"][provider])
    # print(filmnamen["provider"])
    return filmnamenlijst
def providerscreen():
    window.destroy()
    rommel.destroy()
    provscreen = tk.Tk()
    provscreen.geometry("310x300")
    provscreen.title("Chill-Flix")
    provscreen.wm_iconbitmap("favicon.ico")  # de logo van het programma
    provscreen.configure(background=background)

    button = {}
    TB.schrijf_xml(TB.response)
    TB.films_dict = TB.verwerk_xml()
    filmnamen = TB.print_filmnamen(TB.films_dict)  # filmnamen geeft alle huidige films in list
    print(filmnamen)  # print de list met alle filmnamen
    rij = 0

    for i in filmnamen:  # http://stackoverflow.com/questions/7300041/tkinter-create-labels-and-entrys-dynamically
        lb = tk.Button(provscreen, text=i, bg=background, fg=textkleur, activeforeground=activeforegroundbutton,
                       activebackground=activebackgroundbutton,
                       width=len(max(filmnamen, key=len)), command=lambda piet=i: huurdersfilm(piet))
        button[i] = lb
    # button[i].grid(row=rij, column=0)

# for i in filmnamen:
        button[i].pack()
        rij += 1

    provscreen.mainloop()
Beispiel #3
0
def filmscreen():
    """
    Laat alle films zien d.m.v. dynamic buttons, hier kan je naar de site gaan of een film huren
    """
    afmeting = correctwindowsize(2)
    global filmwindow
    filmwindow = tkinter.Tk()
    filmwindow.geometry(afmeting)
    filmwindow.title("Chill-Flix")  # http://stackoverflow.com/questions/2395431/using-tkinter-in-python-to-edit-the-title-bar
    filmwindow.wm_iconbitmap("favicon.ico")  # de logo van het programma
    filmwindow.configure(background=background)
    button = {}
    buttonkopen = {}
    TB.schrijf_xml(TB.response)
    TB.films_dict = TB.verwerk_xml()
    global filmnamen
    filmnamen = TB.print_filmnamen(TB.films_dict)  # filmnamen geeft alle huidige films weer in een list
    rij = 0

    for i in filmnamen["titel"]:  # http://stackoverflow.com/questions/7300041/tkinter-create-labels-and-entrys-dynamically
        lb = tk.Button(filmwindow, text=(i + " (bekijk inhoud)"), bg=background, activeforeground=activeforegroundbutton,
                       activebackground=activebackgroundbutton,
                       fg=textkleur, width=17 + len(max(filmnamen["titel"], key=len)),
                       command=lambda piet=i: filmdescription(piet))
        # http://www.tutorialspoint.com/python/tk_button.htm    voor de button arguments
        button[i] = lb
        button[i].grid(row=rij, column=0)

        lb2 = tk.Button(filmwindow, text=(i + " Huren"), bg=background, activeforeground=activeforegroundbutton,
                        activebackground=activebackgroundbutton,
                        fg=textkleur, width=7 + len(max(filmnamen["titel"], key=len)), command=lambda piet=i: filmhuren(piet))
        buttonkopen[i] = lb2
        # http://stackoverflow.com/questions/11504571/clickable-tkinter-labels
        buttonkopen[i].grid(row=rij, column=1)
        # voor de dynamische button breedte: http://stackoverflow.com/questions/873327/pythons-most-efficient-way-to-choose-longest-string-in-list

     # TODO: een goede layout op het scherm krijgen (met .grid werkt column argument niet?)

        rij += 1

    bgoback = tk.Button(filmwindow, text="Go Back", command=lambda: goback(3), bg=background,
                        fg=textkleur, activebackground=activebackgroundbutton, activeforeground=activeforegroundbutton)
    bgoback.grid(row=(rij + 1), column=0)

    bfilmkijken = tk.Button(filmwindow, text="Film kijken", command=lambda: filmkijken(), bg=background, fg=textkleur, activebackground=activebackgroundbutton, activeforeground=activeforegroundbutton)
    bfilmkijken.grid(row=(rij+1), column=1)

    filmwindow.mainloop()
def filmscreen():
    filmwindow = tkinter.Tk()
    filmwindow.geometry("300x500")
    filmwindow.title("Chill-Flix")
    filmwindow.wm_iconbitmap("favicon.ico")  # het logo van het programma
    filmwindow.configure(background=background)
    # names = ["kees", "philippe", "dylan"]
    button = {}
    buttonkopen = {}
    TB.schrijf_xml(TB.response)
    TB.films_dict = TB.verwerk_xml()
    filmnamen = TB.print_filmnamen(TB.films_dict)  # filmnamen geeft alle huidige films in list
    print(filmnamen)  # print de list met alle filmnamen
    rij = 0

    for i in filmnamen:  # http://stackoverflow.com/questions/7300041/tkinter-create-labels-and-entrys-dynamically
        lb = tk.Button(filmwindow, text=i + " (bekijk inhoud)", bg=background, activeforeground=activeforegroundbutton,
                       activebackground=activebackgroundbutton,
                       fg=textkleur, width=17 + len(max(filmnamen, key=len)),
                       command=lambda piet=i: filmdescription(piet))
        button[i] = lb
        # label[i].bind("<Button-1>",command=(lambda filmdescription("a")))   # http://stackoverflow.com/questions/11504571/clickable-tkinter-labels
        # button[i].grid(row=rij, column=0)

        lb2 = tk.Button(filmwindow, text=i + " Huren", bg=background, activeforeground=activeforegroundbutton,
                        activebackground=activebackgroundbutton,
                        fg=textkleur, width=7 + len(max(filmnamen, key=len)), command=lambda piet=i: filmdescription(piet))
        buttonkopen[i] = lb2
        # http://stackoverflow.com/questions/11504571/clickable-tkinter-labels
        # button[i].grid(row=rij, column=1)
        # voor de dynamische button breedte: http://stackoverflow.com/questions/873327/pythons-most-efficient-way-to-choose-longest-string-in-list

    # for i in filmnamen:
        buttonkopen[i].pack()  # TODO: een goede layout op het scherm krijgen (met .grid werkt column argument niet?)
        button[i].pack()
        rij += 1

    filmwindow.mainloop()
Beispiel #5
0
def providerscreen():
    """
    In dit scherm krijgen de providers de films te zien die zij zelf aanvoeren, als ze op een film drukken kunnen ze de
    huurders zien
    """
    window.destroy()
    rommel.destroy()
    TB.schrijf_xml(TB.response)
    TB.films_dict = TB.verwerk_xml()
    filmnamen = TB.print_filmnamen(TB.films_dict)  # filmnamen geeft alle huidige films in list
    afmeting = correctwindowsize(1)
    # print(filmnamen)  # print de dictionaries met alle filmnamen

    global provscreen
    provscreen = tk.Tk()
    provscreen.geometry(afmeting)
    provscreen.title("Chill-Flix")
    provscreen.wm_iconbitmap("favicon.ico")  # de logo van het programma
    provscreen.configure(background=background)

    button = {}
    rij = 0
    providernaam = TB.gebruiker

    for i in providerfilms(providernaam):  # http://stackoverflow.com/questions/7300041/tkinter-create-labels-and-entrys-dynamically
        lb = tk.Button(provscreen, text=i, bg=background, fg=textkleur, activeforeground=activeforegroundbutton,
                       activebackground=activebackgroundbutton,
                       width=len(max(providerfilms(providernaam), key=len)), command=lambda piet=i: huurdersfilm(piet))
        button[i] = lb
    # button[i].grid(row=rij, column=0)

# for i in filmnamen:
        button[i].pack()
        rij += 1

    bgoback = tk.Button(provscreen, text="Go Back", command=lambda: goback(4), bg=background, fg=textkleur, activeforeground=activeforegroundbutton, activebackground=activebackgroundbutton)
    bgoback.pack(side="left")
    provscreen.mainloop()
Beispiel #6
0
def correctwindowsize(input):
    """
    Returnt een window size gebaseerd op berekeningen ivm grote van elementen
    """
    TB.schrijf_xml(TB.response)
    TB.films_dict = TB.verwerk_xml()
    filmnamen = TB.print_filmnamen(TB.films_dict)  # filmnamen geeft alle huidige films in list
    aantal = 0
    for i in filmnamen['titel']:
        aantal = aantal + 1
    if input == 1:
        lengte = len(providerfilms(TB.gebruiker))
        afmeting = ("310x"+str(40+26*lengte)) # 26 = approx 1 button, 40 = extra voor go back button
    elif input == 2:
        afmeting = ("600x"+str(40+26*aantal)) # 26 = approx 1 button, 40 = extra voor go back button
    elif input == 3:
        TB.aanbiederInfo(mijnfilm)
        if TB.aantalgebruikers < 30:
            afmeting = ("310x"+str(22*(TB.aantalgebruikers+3))) # 26 = approx 1 button, 40 = extra voor go back button
        else:
            afmeting = ("310x1000")
    else:
        afmeting = ("310x300") # default afmeting
    return afmeting
Beispiel #7
0
import Thuisbioscoop as TB
TB.schrijf_xml(TB.response) #
TB.films_dict = TB.verwerk_xml()
global filmnamen
filmnamen = TB.print_filmnamen(TB.films_dict)
naam = "RTL8"
list = []
filmnamenlijst = []
nummer = 0
for i in filmnamen["provider"]:
    if i == naam:
        print(nummer)
        list.append(nummer)
    nummer += 1
for provider in list:
    print(filmnamen["titel"][provider])
    filmnamenlijst.append(filmnamen["titel"][provider])
print(filmnamen["provider"])

return filmnamenlijst

highlightbuttoncolorthingy = "#6B99A0"


def filmscreen():
    filmwindow = tkinter.Tk()
    filmwindow.geometry(windowsize)
    filmwindow.title("Chill-Flix")
    filmwindow.wm_iconbitmap("favicon.ico")  # het logo van het programma
    filmwindow.configure(background=background)
    names = ["kees", "philippe", "dylan"]
    button = {}
    for i in names: # http://stackoverflow.com/questions/7300041/tkinter-create-labels-and-entrys-dynamically
        lb = tk.Button(filmwindow, text=i, command=lambda piet=i:filmdescription(piet), bg=background, fg=textkleur)
        button[i] = lb
        # label[i].bind("<Button-1>",command=(lambda filmdescription("a")))   # http://stackoverflow.com/questions/11504571/clickable-tkinter-labels   hoort filmdescription op te roepen wanneer je drukt op de label
        button[i].pack()

    filmwindow.mainloop()


def filmdescription(film):
    print("hoi" + film)

filmscreen()
TB.schrijf_xml(TB.response)
TB.films_dict = TB.verwerk_xml()
filmNamen = TB.print_filmnamen(TB.films_dict) # filmNamen geeft alle huidige films in list
print(filmNamen) # print de list met alle filmnamen
for i in filmNamen: # print films 1 voor 1
    print(str(i)) # TODO: hier code om in tkinter te zetten