pygui simplify show/hiding annotations
This commit is contained in:
parent
d26c4fc4ab
commit
3233d8ab58
5 changed files with 17 additions and 28 deletions
|
@ -235,7 +235,7 @@ class ShapeDialog(Dialog):
|
|||
text=shape_text,
|
||||
fill=self.text_color,
|
||||
font=text_font,
|
||||
tags=tags.SHAPE_TEXT,
|
||||
tags=(tags.SHAPE_TEXT, tags.ANNOTATION),
|
||||
)
|
||||
self.shape.created = True
|
||||
else:
|
||||
|
|
|
@ -94,9 +94,7 @@ class CanvasGraph(tk.Canvas):
|
|||
self.show_node_labels = ShowVar(self, tags.NODE_LABEL, value=True)
|
||||
self.show_link_labels = ShowVar(self, tags.LINK_LABEL, value=True)
|
||||
self.show_grid = ShowVar(self, tags.GRIDLINE, value=True)
|
||||
self.show_shapes = ShowVar(self, tags.SHAPE, value=True)
|
||||
self.show_shape_labels = ShowVar(self, tags.SHAPE_TEXT, value=True)
|
||||
self.show_marker = ShowVar(self, tags.MARKER, value=True)
|
||||
self.show_annotations = ShowVar(self, tags.ANNOTATION, value=True)
|
||||
self.show_interface_names = BooleanVar(value=False)
|
||||
self.show_ip4s = BooleanVar(value=True)
|
||||
self.show_ip6s = BooleanVar(value=True)
|
||||
|
@ -585,8 +583,8 @@ class CanvasGraph(tk.Canvas):
|
|||
y + r,
|
||||
fill=self.app.toolbar.marker_tool.color,
|
||||
outline="",
|
||||
tags=tags.MARKER,
|
||||
state=self.show_marker.state(),
|
||||
tags=(tags.MARKER, tags.ANNOTATION),
|
||||
state=self.show_annotations.state(),
|
||||
)
|
||||
return
|
||||
if selected is None:
|
||||
|
@ -669,7 +667,7 @@ class CanvasGraph(tk.Canvas):
|
|||
y + r,
|
||||
fill=self.app.toolbar.marker_tool.color,
|
||||
outline="",
|
||||
tags="marker",
|
||||
tags=(tags.MARKER, tags.ANNOTATION),
|
||||
)
|
||||
return
|
||||
|
||||
|
|
|
@ -80,12 +80,12 @@ class Shape:
|
|||
self.y1,
|
||||
self.x2,
|
||||
self.y2,
|
||||
tags=tags.SHAPE,
|
||||
tags=(tags.SHAPE, tags.ANNOTATION),
|
||||
dash=dash,
|
||||
fill=self.shape_data.fill_color,
|
||||
outline=self.shape_data.border_color,
|
||||
width=self.shape_data.border_width,
|
||||
state=self.canvas.show_shapes.state(),
|
||||
state=self.canvas.show_annotations.state(),
|
||||
)
|
||||
self.draw_shape_text()
|
||||
elif self.shape_type == ShapeType.RECTANGLE:
|
||||
|
@ -94,12 +94,12 @@ class Shape:
|
|||
self.y1,
|
||||
self.x2,
|
||||
self.y2,
|
||||
tags=tags.SHAPE,
|
||||
tags=(tags.SHAPE, tags.ANNOTATION),
|
||||
dash=dash,
|
||||
fill=self.shape_data.fill_color,
|
||||
outline=self.shape_data.border_color,
|
||||
width=self.shape_data.border_width,
|
||||
state=self.canvas.show_shapes.state(),
|
||||
state=self.canvas.show_annotations.state(),
|
||||
)
|
||||
self.draw_shape_text()
|
||||
elif self.shape_type == ShapeType.TEXT:
|
||||
|
@ -107,11 +107,11 @@ class Shape:
|
|||
self.id = self.canvas.create_text(
|
||||
self.x1,
|
||||
self.y1,
|
||||
tags=tags.SHAPE_TEXT,
|
||||
tags=(tags.SHAPE_TEXT, tags.ANNOTATION),
|
||||
text=self.shape_data.text,
|
||||
fill=self.shape_data.text_color,
|
||||
font=font,
|
||||
state=self.canvas.show_shapes.state(),
|
||||
state=self.canvas.show_annotations.state(),
|
||||
)
|
||||
else:
|
||||
logging.error("unknown shape type: %s", self.shape_type)
|
||||
|
@ -135,11 +135,11 @@ class Shape:
|
|||
self.text_id = self.canvas.create_text(
|
||||
x,
|
||||
y,
|
||||
tags=tags.SHAPE_TEXT,
|
||||
tags=(tags.SHAPE_TEXT, tags.ANNOTATION),
|
||||
text=self.shape_data.text,
|
||||
fill=self.shape_data.text_color,
|
||||
font=font,
|
||||
state=self.canvas.show_shape_labels.state(),
|
||||
state=self.canvas.show_annotations.state(),
|
||||
)
|
||||
|
||||
def shape_motion(self, x1: float, y1: float):
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
ANNOTATION = "annotation"
|
||||
GRIDLINE = "gridline"
|
||||
SHAPE = "shape"
|
||||
SHAPE_TEXT = "shapetext"
|
||||
|
|
|
@ -3,7 +3,7 @@ import os
|
|||
import tkinter as tk
|
||||
import webbrowser
|
||||
from functools import partial
|
||||
from tkinter import BooleanVar, filedialog, messagebox
|
||||
from tkinter import filedialog, messagebox
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from core.gui.appconfig import XMLS_PATH
|
||||
|
@ -44,7 +44,6 @@ class Menubar(tk.Menu):
|
|||
self.canvas = app.canvas
|
||||
self.recent_menu = None
|
||||
self.edit_menu = None
|
||||
self.show_annotations = BooleanVar(value=True)
|
||||
self.draw()
|
||||
|
||||
def draw(self) -> None:
|
||||
|
@ -158,8 +157,8 @@ class Menubar(tk.Menu):
|
|||
)
|
||||
menu.add_checkbutton(
|
||||
label="Annotations",
|
||||
command=self.click_show_annotations,
|
||||
variable=self.show_annotations,
|
||||
command=self.canvas.show_annotations.click_handler,
|
||||
variable=self.canvas.show_annotations,
|
||||
)
|
||||
menu.add_checkbutton(
|
||||
label="Canvas Grid",
|
||||
|
@ -462,12 +461,3 @@ class Menubar(tk.Menu):
|
|||
def click_edge_label_change(self) -> None:
|
||||
for edge in self.canvas.edges.values():
|
||||
edge.draw_labels()
|
||||
|
||||
def click_show_annotations(self) -> None:
|
||||
value = self.show_annotations.get()
|
||||
self.canvas.show_shapes.set(value)
|
||||
self.canvas.show_shape_labels.set(value)
|
||||
self.canvas.show_marker.set(value)
|
||||
self.canvas.show_shapes.click_handler()
|
||||
self.canvas.show_shape_labels.click_handler()
|
||||
self.canvas.show_marker.click_handler()
|
||||
|
|
Loading…
Reference in a new issue