clean up more code, click defaults in service configuration correctly reset files tab as well as directories tab
This commit is contained in:
parent
c36f060d44
commit
1cba11d9e0
1 changed files with 40 additions and 13 deletions
|
@ -67,6 +67,7 @@ class ServiceConfigDialog(Dialog):
|
||||||
self.service_file_data = None
|
self.service_file_data = None
|
||||||
self.validation_period_entry = None
|
self.validation_period_entry = None
|
||||||
self.original_service_files = {}
|
self.original_service_files = {}
|
||||||
|
self.default_config = None
|
||||||
self.temp_service_files = {}
|
self.temp_service_files = {}
|
||||||
self.modified_files = set()
|
self.modified_files = set()
|
||||||
|
|
||||||
|
@ -89,6 +90,7 @@ class ServiceConfigDialog(Dialog):
|
||||||
custom_service_config = self.service_configs.get(self.node_id, {}).get(
|
custom_service_config = self.service_configs.get(self.node_id, {}).get(
|
||||||
self.service_name, None
|
self.service_name, None
|
||||||
)
|
)
|
||||||
|
self.default_config = default_config
|
||||||
service_config = (
|
service_config = (
|
||||||
custom_service_config if custom_service_config else default_config
|
custom_service_config if custom_service_config else default_config
|
||||||
)
|
)
|
||||||
|
@ -169,7 +171,6 @@ class ServiceConfigDialog(Dialog):
|
||||||
button = ttk.Button(
|
button = ttk.Button(
|
||||||
frame, image=self.editdelete_img, command=self.delete_filename
|
frame, image=self.editdelete_img, command=self.delete_filename
|
||||||
)
|
)
|
||||||
# button.bind("<Button-1>", self.delete_filename)
|
|
||||||
button.grid(row=0, column=3)
|
button.grid(row=0, column=3)
|
||||||
|
|
||||||
frame = ttk.Frame(tab)
|
frame = ttk.Frame(tab)
|
||||||
|
@ -442,17 +443,14 @@ class ServiceConfigDialog(Dialog):
|
||||||
entry.delete(0, tk.END)
|
entry.delete(0, tk.END)
|
||||||
|
|
||||||
def click_apply(self):
|
def click_apply(self):
|
||||||
current_listbox = self.master.current.listbox
|
|
||||||
all_current = current_listbox.get(0, tk.END)
|
|
||||||
if (
|
if (
|
||||||
not self.is_custom_command()
|
not self.is_custom_command()
|
||||||
and not self.is_custom_service_file()
|
and not self.is_custom_service_file()
|
||||||
and not self.has_new_files()
|
and not self.has_new_files()
|
||||||
and not self.is_custom_directory()
|
and not self.is_custom_directory()
|
||||||
):
|
):
|
||||||
if self.node_id in self.service_configs:
|
self.service_configs.get(self.node_id, {}).pop(self.service_name, None)
|
||||||
self.service_configs[self.node_id].pop(self.service_name, None)
|
self.current_service_color("")
|
||||||
current_listbox.itemconfig(all_current.index(self.service_name), bg="")
|
|
||||||
self.destroy()
|
self.destroy()
|
||||||
return
|
return
|
||||||
|
|
||||||
|
@ -486,7 +484,7 @@ class ServiceConfigDialog(Dialog):
|
||||||
self.app.core.set_node_service_file(
|
self.app.core.set_node_service_file(
|
||||||
self.node_id, self.service_name, file, self.temp_service_files[file]
|
self.node_id, self.service_name, file, self.temp_service_files[file]
|
||||||
)
|
)
|
||||||
current_listbox.itemconfig(all_current.index(self.service_name), bg="green")
|
self.current_service_color("green")
|
||||||
except grpc.RpcError as e:
|
except grpc.RpcError as e:
|
||||||
show_grpc_error(e, self.top, self.app)
|
show_grpc_error(e, self.top, self.app)
|
||||||
self.destroy()
|
self.destroy()
|
||||||
|
@ -524,14 +522,26 @@ class ServiceConfigDialog(Dialog):
|
||||||
return set(self.default_directories) != set(self.dir_list.listbox.get(0, "end"))
|
return set(self.default_directories) != set(self.dir_list.listbox.get(0, "end"))
|
||||||
|
|
||||||
def click_defaults(self):
|
def click_defaults(self):
|
||||||
if self.node_id in self.service_configs:
|
"""
|
||||||
self.service_configs[self.node_id].pop(self.service_name, None)
|
clears out any custom configuration permanently
|
||||||
if self.node_id in self.file_configs:
|
"""
|
||||||
self.file_configs[self.node_id].pop(self.service_name, None)
|
# clear coreclient data
|
||||||
|
self.service_configs.get(self.node_id, {}).pop(self.service_name, None)
|
||||||
|
self.file_configs.get(self.node_id, {}).pop(self.service_name, None)
|
||||||
self.temp_service_files = dict(self.original_service_files)
|
self.temp_service_files = dict(self.original_service_files)
|
||||||
filename = self.filename_combobox.get()
|
self.modified_files.clear()
|
||||||
|
|
||||||
|
# reset files tab
|
||||||
|
files = list(self.default_config.configs[:])
|
||||||
|
self.filenames = files
|
||||||
|
self.filename_combobox.config(values=files)
|
||||||
self.service_file_data.text.delete(1.0, "end")
|
self.service_file_data.text.delete(1.0, "end")
|
||||||
|
if len(files) > 0:
|
||||||
|
filename = files[0]
|
||||||
|
self.filename_combobox.set(filename)
|
||||||
self.service_file_data.text.insert("end", self.temp_service_files[filename])
|
self.service_file_data.text.insert("end", self.temp_service_files[filename])
|
||||||
|
|
||||||
|
# reset commands
|
||||||
self.startup_commands_listbox.delete(0, tk.END)
|
self.startup_commands_listbox.delete(0, tk.END)
|
||||||
self.validate_commands_listbox.delete(0, tk.END)
|
self.validate_commands_listbox.delete(0, tk.END)
|
||||||
self.shutdown_commands_listbox.delete(0, tk.END)
|
self.shutdown_commands_listbox.delete(0, tk.END)
|
||||||
|
@ -542,6 +552,15 @@ class ServiceConfigDialog(Dialog):
|
||||||
for cmd in self.default_shutdown:
|
for cmd in self.default_shutdown:
|
||||||
self.shutdown_commands_listbox.insert(tk.END, cmd)
|
self.shutdown_commands_listbox.insert(tk.END, cmd)
|
||||||
|
|
||||||
|
# reset directories
|
||||||
|
self.directory_entry.delete(0, "end")
|
||||||
|
self.dir_list.listbox.delete(0, "end")
|
||||||
|
self.temp_directories = list(self.default_directories)
|
||||||
|
for d in self.default_directories:
|
||||||
|
self.dir_list.listbox.insert("end", d)
|
||||||
|
|
||||||
|
self.current_service_color("")
|
||||||
|
|
||||||
def click_copy(self):
|
def click_copy(self):
|
||||||
dialog = CopyServiceConfigDialog(self, self.app, self.node_id)
|
dialog = CopyServiceConfigDialog(self, self.app, self.node_id)
|
||||||
dialog.show()
|
dialog.show()
|
||||||
|
@ -590,3 +609,11 @@ class ServiceConfigDialog(Dialog):
|
||||||
d = self.dir_list.listbox.get(i)
|
d = self.dir_list.listbox.get(i)
|
||||||
self.directory_entry.delete(0, "end")
|
self.directory_entry.delete(0, "end")
|
||||||
self.directory_entry.insert("end", d)
|
self.directory_entry.insert("end", d)
|
||||||
|
|
||||||
|
def current_service_color(self, color=""):
|
||||||
|
"""
|
||||||
|
change the current service label color
|
||||||
|
"""
|
||||||
|
listbox = self.master.current.listbox
|
||||||
|
services = listbox.get(0, tk.END)
|
||||||
|
listbox.itemconfig(services.index(self.service_name), bg=color)
|
||||||
|
|
Loading…
Add table
Reference in a new issue