Skip to content

Commit

Permalink
Merge 0bb5a00 into 9353ce7
Browse files Browse the repository at this point in the history
  • Loading branch information
Entea committed Mar 9, 2020
2 parents 9353ce7 + 0bb5a00 commit 5af3371
Showing 1 changed file with 26 additions and 11 deletions.
37 changes: 26 additions & 11 deletions doorstop/gui/application.py
Expand Up @@ -67,6 +67,10 @@ def __init__(self, root, cwd, project):
self.stringvar_item = tk.StringVar()
self.stringvar_item.trace('w', self.display_item)

# The item header
self.stringvar_header = tk.StringVar()
self.stringvar_header.trace('w', self.update_item)

self.stringvar_text = tk.StringVar()
self.stringvar_text.trace('w', self.update_item)
self.intvar_active = tk.IntVar()
Expand Down Expand Up @@ -259,17 +263,19 @@ def frame_item(root):
# Configure grid
frame = ttk.Frame(root, **kw_f)
frame.rowconfigure(0, weight=0)
frame.rowconfigure(1, weight=4)
frame.rowconfigure(1, weight=0)
frame.rowconfigure(2, weight=0)
frame.rowconfigure(3, weight=1)
frame.rowconfigure(3, weight=4)
frame.rowconfigure(4, weight=1)
frame.rowconfigure(5, weight=1)
frame.rowconfigure(6, weight=1)
frame.rowconfigure(7, weight=0)
frame.rowconfigure(8, weight=0)
frame.rowconfigure(9, weight=0)
frame.rowconfigure(10, weight=0)
frame.rowconfigure(11, weight=4)
frame.rowconfigure(11, weight=0)
frame.rowconfigure(12, weight=0)
frame.rowconfigure(13, weight=4)
frame.columnconfigure(0, weight=1, pad=kw_f['padding'] * 2)
frame.columnconfigure(1, weight=1)

Expand All @@ -294,45 +300,52 @@ def text_extendedvalue_focusout(event):
value = thewidget.get('1.0', tk.END)
self.stringvar_extendedvalue.set(value)

# Item header
widget.Label(frame, text="Header:").grid(
row=0, column=0, columnspan=3, sticky=tk.W, **kw_gp
)
self.text_header = widget.Entry(frame, textvariable=self.stringvar_header)
self.text_header.grid(row=1, column=0, columnspan=3, **kw_gsp)

# Selected Item
widget.Label(frame, text="Selected Item:").grid(
row=0, column=0, columnspan=3, sticky=tk.W, **kw_gp
row=2, column=0, columnspan=3, sticky=tk.W, **kw_gp
)
self.text_item = widget.Text(
frame, width=width_text, height=height_text, wrap=tk.WORD
)
self.text_item.bind('<FocusIn>', text_focusin)
self.text_item.bind('<FocusOut>', text_item_focusout)
self.text_item.grid(row=1, column=0, columnspan=3, **kw_gsp)
self.text_item.grid(row=3, column=0, columnspan=3, **kw_gsp)

# Column: Properties
self.create_properties_widget(frame).grid(
row=2, rowspan=2, column=0, columnspan=2, sticky=tk.NSEW, **kw_gp
row=4, rowspan=2, column=0, columnspan=2, sticky=tk.NSEW, **kw_gp
)

# Column: Links
self.create_links_widget(frame).grid(
row=4, rowspan=3, column=0, columnspan=2, sticky=tk.NSEW, **kw_gp
row=5, rowspan=3, column=0, columnspan=2, sticky=tk.NSEW, **kw_gp
)

# External Reference
self.create_reference_widget(frame).grid(
row=7, rowspan=2, column=0, columnspan=2, sticky=tk.NSEW, **kw_gp
row=9, rowspan=2, column=0, columnspan=2, sticky=tk.NSEW, **kw_gp
)

widget.Label(frame, text="Extended Attributes:").grid(
row=9, column=0, columnspan=3, sticky=tk.W, **kw_gp
row=11, column=0, columnspan=3, sticky=tk.W, **kw_gp
)
self.combobox_extended = widget.Combobox(
frame, textvariable=self.stringvar_extendedkey
)
self.combobox_extended.grid(row=10, column=0, columnspan=3, **kw_gsp)
self.combobox_extended.grid(row=12, column=0, columnspan=3, **kw_gsp)
self.text_extendedvalue = widget.Text(
frame, width=width_text, height=height_ext, wrap=tk.WORD
)
self.text_extendedvalue.bind('<FocusIn>', text_focusin)
self.text_extendedvalue.bind('<FocusOut>', text_extendedvalue_focusout)
self.text_extendedvalue.grid(row=11, column=0, columnspan=3, **kw_gsp)
self.text_extendedvalue.grid(row=13, column=0, columnspan=3, **kw_gsp)

return frame

Expand Down Expand Up @@ -527,6 +540,7 @@ def display_item(self, *_):
)

# Display the item's properties
self.stringvar_header.set("" if self.item is None else self.item.header)
self.stringvar_text.set("" if self.item is None else self.item.text)
self.intvar_active.set(False if self.item is None else self.item.active)
self.intvar_derived.set(False if self.item is None else self.item.derived)
Expand Down Expand Up @@ -633,6 +647,7 @@ def update_item(self, *_):
# Update the current item
log.info("updating {}...".format(self.item))
self.item.auto = False
self.item.header = self.stringvar_header.get()
self.item.text = self.stringvar_text.get()
self.item.active = self.intvar_active.get()
self.item.derived = self.intvar_derived.get()
Expand Down

0 comments on commit 5af3371

Please sign in to comment.