-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsettings.py
More file actions
80 lines (62 loc) · 3.56 KB
/
settings.py
File metadata and controls
80 lines (62 loc) · 3.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
import tkinter as tk
import configparser
def save_settings_to_config(machine_tarief, werkplaats_tarief, sell_margin_percentage):
config = configparser.ConfigParser()
config['Settings'] = {
'Machinetarief': str(machine_tarief),
'Werkplaatstarief': str(werkplaats_tarief),
'Verkoopmarge': str(sell_margin_percentage),
}
with open('settings.ini', 'w') as configfile:
config.write(configfile)
def open_settings():
settings_window = tk.Toplevel()
settings_window.title("Instellingen")
settings_window.geometry("300x400")
settings_window.iconbitmap(r"images/pss.ico")
# Maak een configuratieparser
config = configparser.ConfigParser()
# Standaardwaarden instellen
machine_tarief = 0.0
werkplaats_tarief = 0.0
sell_margin_percentage = 20 # Standaardwaarde in percentage
# Probeer het configuratiebestand te lezen
if config.read("settings.ini"):
# Controleer of elke optie in de sectie "Settings" bestaat
if config.has_option("Settings", "Machinetarief"):
machine_tarief = float(config.get("Settings", "Machinetarief"))
if config.has_option("Settings", "Werkplaatstarief"):
werkplaats_tarief = float(config.get("Settings", "Werkplaatstarief"))
if config.has_option("Settings", "Verkoopmarge"):
sell_margin_percentage = float(config.get("Settings", "Verkoopmarge"))
hourly_price_frame = tk.Frame (settings_window, bd=1, relief="solid")
hourly_price_frame.grid(sticky="w")
# Voeg labels en invoervelden toe voor het machine-uurtarief en werkplaatsuurtarief
machine_tarief_label = tk.Label(hourly_price_frame, text="Machine tarief:")
machine_tarief_label.grid(row=0, column=0, padx=10, pady=5, sticky="w")
machine_tarief_entry = tk.Entry(hourly_price_frame, width=10)
machine_tarief_entry.grid(row=0, column=1, padx=10, pady=5,sticky="w")
machine_tarief_entry.insert(0, machine_tarief)
werkplaats_tarief_label = tk.Label(hourly_price_frame, text="Werkplaats tarief:")
werkplaats_tarief_label.grid(row=1, column=0, padx=10, sticky="w")
werkplaats_tarief_entry = tk.Entry(hourly_price_frame, width=10)
werkplaats_tarief_entry.grid(row=1, column=1, padx=10, sticky="w")
werkplaats_tarief_entry.insert(0, werkplaats_tarief)
sell_margin_percentage_label = tk.Label(hourly_price_frame, text="Verkoopmarge in %:")
sell_margin_percentage_label.grid(row=2, column=0, padx=10, sticky="w")
sell_margin_percentage_entry = tk.Entry(hourly_price_frame, width=10)
sell_margin_percentage_entry.grid(row=2, column=1, padx=10, sticky="w")
sell_margin_percentage_entry.insert(0, sell_margin_percentage)
# Voeg een knop toe om de ingevulde waardes op te slaan en de instellingenvenster te sluiten
def save_settings():
global machine_tarief, werkplaats_tarief, sell_margin_percentage
machine_tarief = float(machine_tarief_entry.get())
werkplaats_tarief = float(werkplaats_tarief_entry.get())
sell_margin_percentage = float(sell_margin_percentage_entry.get())
# Save the settings to a configuration file
save_settings_to_config(machine_tarief, werkplaats_tarief, sell_margin_percentage)
settings_window.destroy()
save_button = tk.Button(hourly_price_frame, text="Opslaan", command=save_settings)
save_button.grid(row=3, column=0, columnspan=2, padx=10, pady=5)
separator = tk.ttk.Separator(settings_window, orient='horizontal')
separator.grid(row=1, column=6, rowspan=10, pady=10, sticky='ns')