Commit graph

431 commits

Author SHA1 Message Date
Blake Harnden
47ac4c850d pygui: refactoring of nodeutils and its usage, fixed issue with drawing custom nodes and copying services 2021-02-18 10:47:20 -08:00
Blake Harnden
422a1a500e pygui: hide related wireless edges when hiding nodes, update to handle hiding wireless edges that are re-added when moving 2021-02-17 16:03:01 -08:00
Blake Harnden
7871a678ca pygui: updates to handle visibility toggles in relation to having nodes hidden, fix final position of a drawn edge when dragging to draw 2021-02-17 15:23:04 -08:00
Blake Harnden
4a21cd5789 pygui: updated sample1.xml to update the background stored due to multi canvas changes 2021-02-17 12:01:46 -08:00
Blake Harnden
27f7bdb004 pygui: fixed issue not properly sending service customization data when not runtime 2021-01-22 22:33:26 -08:00
Blake Harnden
ca004b3e96 pygui: fixed issue sorting node ids for edge token to avoid issues with edges defining nodes in a different order 2021-01-20 10:09:46 -08:00
Blake Harnden
e9bf50b3ff pygui: moved complete edge logic into the edge itself 2021-01-15 23:39:38 -08:00
Blake Harnden
fb3d593751 pygui: small cleanup for wireless edge creation 2021-01-15 22:49:01 -08:00
Blake Harnden
754b8ba91e pygui: fix bug if emane name happened to contain multiple underbars 2021-01-15 11:35:13 -08:00
Blake Harnden
097f248120 pygui: small cleanup to node utils to simplify usage where possible 2021-01-15 11:33:00 -08:00
Blake Harnden
0fee29754d pygui: moved shadow node code to same file as regular nodes 2021-01-14 23:46:25 -08:00
Blake Harnden
e7c721989f pygui: small cleanup to add some utility functions to edges 2021-01-14 23:31:53 -08:00
Blake Harnden
886b56cf8c pygui: fixed wireless nodes not linking with full netmasks, fixed assigning addresses for nodes connected to other nodes that may have had a full netmask 2021-01-14 13:28:06 -08:00
Blake Harnden
b7483c2715 pygui: adjust logging 2021-01-13 21:31:58 -08:00
Blake Harnden
cadbf8dd14 pygui: add node context and interactions to shadow nodes 2021-01-13 20:49:23 -08:00
Blake Harnden
a5098263fd pygui: sort services in node context menu during runtime 2021-01-13 10:51:47 -08:00
Blake Harnden
4007dc331b pygui: update to account for already used mac addresses that may collide with auto assigned addresses 2021-01-13 10:50:16 -08:00
Blake Harnden
878d943ee3 pygui: add services and their actions to container nodes during runtime 2021-01-12 23:51:09 -08:00
Blake Harnden
623cc13fca pygui: fixed issue deleting current session from sessions dialog, also now join session when deleting if present, or create new one when none are left 2021-01-12 22:43:27 -08:00
Blake Harnden
6f3246e329 pygui: further updates to support hiding nodes and related edges, added hidden nodes to metadata sent to daemon and parsed when joining a session 2021-01-09 20:35:24 -08:00
Blake Harnden
313768ea56 pygui: added logic to sort canvas tabs when joining a session to organize, removed editing a nodes canvas as it currently is not supported by either gui and causes issue in the python gui due to grpc editing of a node and how values are handled 2021-01-08 11:22:16 -08:00
Blake Harnden
35cc8fab65 pygui: fix redrawing edge labels for multiple canvases, updated edit menu to account for multiple canvases, fixed issue with not setting menubar state when joining a session, starting point for hide/show nodes and related edges 2021-01-08 10:10:46 -08:00
Blake Harnden
bc540e0669 Merge branch 'develop' into feature/pygui-multi-canvas 2021-01-07 15:28:05 -08:00
Blake Harnden
a660b01e93 pygui: validation of the node name field will allow - instead of _, - is valid while _ is not 2021-01-07 14:24:57 -08:00
Blake Harnden
44ee5308de pygui: adjustments to create gui home directories if not present and add new files that may have been added that do not exist 2021-01-06 10:24:06 -08:00
Blake Harnden
cba86a3da7 pygui: added simple black dot image to represent shadowed nodes in gui 2021-01-06 09:57:19 -08:00
Blake Harnden
acaef00087 pygui: fixed checking link options when joining a session, fixed stopping a session and deleting wireless links due to logic moved to being a part of wireless edge delete itself 2021-01-05 22:44:33 -08:00
Blake Harnden
3c97f80614 pygui: adjustments to help handle links between shadow nodes with initial desired behaviors 2021-01-05 15:42:46 -08:00
Blake Harnden
685b21924c pygui: refactored how edges determine if they are linked wireless, removed wireless network tracking that was not being used by the canvas manager, added helper function to nodes to check if they are of wireless type 2021-01-03 22:08:09 -08:00
Blake Harnden
63282134f5 pygui: added logic to reuse shadow nodes when linked between nodes on same canvas, added logic to avoid deleting shadow nodes when still linked to other nodes on same canvas 2021-01-02 12:59:15 -08:00
Blake Harnden
a2d9659fb7 pygui: cleaned up how edges get drawn to reuse logic, fixed clearing canvas manager edges between changing sessions, fixed deleting edge check for link interfaces 2021-01-02 10:46:05 -08:00
Blake Harnden
77e2b08d76 pygui: fixed deleting selected nodes due to logic changes 2021-01-02 10:05:40 -08:00
Blake Harnden
f24d5f20b4 pygui: updated logic to use new canvases when receiving node delete messages 2021-01-02 09:35:39 -08:00
Blake Harnden
a7d7b94215 pygui: fixed edge context, fixed node context, updated find to leverage multi canvas changes and select canvas of found node 2021-01-02 00:10:23 -08:00
Blake Harnden
62d111b74c pygui: fixed joining a multi canvas session in initial basic test case 2020-12-31 12:24:21 -08:00
Blake Harnden
2af7d595c0 pygui: cleaned up node label position for edge duplicate logic 2020-12-31 11:43:11 -08:00
Blake Harnden
3e2ea42ebd pygui: adjustments to have canvas manager manage all edges, allow shadow nodes to be moved, and updates to account for old usages of a universal canvas 2020-12-30 22:11:45 -08:00
Blake Harnden
f171c6111a pygui: created node function to check if it can be linked to another node 2020-12-17 22:32:25 -08:00
Blake Harnden
28d22c5800 pygui: initial add for link menu within node context menu 2020-12-17 17:23:37 -08:00
Blake Harnden
29ffd64b41 pygui: updates to capture canvas tab change events and set the statusbar zoom variable to be the current canvas 2020-12-17 14:56:54 -08:00
Blake Harnden
f9a4fe3331 pygui: initial canvas manager with a single tab by default, updates to how throughputs are handled related to canvases 2020-12-17 14:31:09 -08:00
Blake Harnden
2f9c169e66 pygui: improvement for loading canvas backgrounds and checking if a gui file or specific path 2020-12-17 13:27:23 -08:00
Blake Harnden
b937e316c4 pygui: cleanup for canvas metadata creation and parsing 2020-12-17 13:10:28 -08:00
Blake Harnden
367a2096fa pygui: added multi canvas support to shapes, updated how shape metadata is saved and loaded to align 2020-12-17 12:42:49 -08:00
Blake Harnden
4a8f8557a6 pygui: changes to support saving and loading canvas backgrounds to xml, canvas dimensions will apply globally 2020-12-17 12:25:11 -08:00
Blake Harnden
b01249bb4e added canvas to protobuf node messages, added node canvas id to grpc server handling, updating pygui to draw canvases based on joined session and add nodes to respective canvas 2020-12-12 23:17:43 -08:00
Blake Harnden
9621df6bc4 pygui: able to start session with multiple canvases, just using 1 canvas for now 2020-12-12 00:03:03 -08:00
Blake Harnden
6f43d0e88f pygui: added menu buttons to add/delete canvases 2020-12-11 22:54:52 -08:00
Blake Harnden
886bfc093b pygui: further refactoring to work towards multiple canvas support 2020-12-11 18:39:58 -08:00
Blake Harnden
9fa98ae378 pygui: initial commit for starting on canvas manager 2020-12-09 23:33:36 -08:00
Blake Harnden
d1c2b1bdb9 pygui: fixed configuring node back to default server after switching to a distributed server 2020-12-09 21:22:19 -08:00
Blake Harnden
836e929fbc pygui: add support to rename interfaces in the node config dialog, some small cleanup to interface validation 2020-12-08 10:02:34 -08:00
Blake Harnden
6793382f44 pygui: fixed edit node mac setting to auto to properly clear out current mac setting 2020-12-07 21:08:05 -08:00
Blake Harnden
b762fe664b pygui: avoid saving edge config metadata when values are default 2020-12-04 00:03:30 -08:00
Blake Harnden
664b049bf7 pygui: updated edge token to default to 0 for interface ids due to grpc messages not properly supporting None 2020-12-02 20:40:03 -08:00
Blake Harnden
a35e91aeba daemon: added link option to configure buffer, added support in pygui to allow configuring buffer 2020-11-30 16:49:44 -08:00
Blake Harnden
aa40229495 pygui: updated edge tokens to use core node ids instead of canvas ids, updated link config to properly set/load width/color, updated metadata to store/load edge width/color when switching sessions and saving xml 2020-10-13 10:25:40 -07:00
Blake Harnden
68934da204 pygui: fixed link options check when options is not present 2020-10-13 09:12:10 -07:00
Blake Harnden
961f630acb pygui: added option to hide/show links with 100% loss, added checks to flag links for this case 2020-10-13 06:45:37 -07:00
Blake Harnden
a1b4279d80 pygui: dont add created edges to node until after a link has been created 2020-10-12 23:42:58 -07:00
Blake Harnden
053cd1da65 pygui: removed edges tracking interfaces, since the link associated with them already does 2020-10-12 22:51:15 -07:00
Blake Harnden
055029e5c5 pygui: added check so bridge based nodes can only have 1 link between them 2020-10-12 20:41:55 -07:00
Blake Harnden
29bd6ef7f8 pygui: initial changes to allow multiple wired links between nodes, updated to commonize logic for creating edges and adjustments in the UI for several edge related cases 2020-10-12 20:28:27 -07:00
Blake Harnden
8597c5c1a8 pygui: updated edge labels to just use a set distance from nodes 2020-10-11 10:05:57 -07:00
Blake Harnden
0c847cfb37 pygui: fixed wlan/emane linked nodes drawing link options for invisible links when joining session or clearing throughput 2020-10-10 06:15:59 -07:00
Blake Harnden
93a5d1fb01 docs: cleanup of some of the emane demos, added antennaprofile demo example 2020-10-04 22:42:09 -07:00
Blake Harnden
5a07929fde added emane examples for various emane topics when used within core 2020-10-04 18:31:34 -07:00
Blake Harnden
570ad9522c initial code for a wrapped grpc client, fix for pygui node emane config, fix for xml reading emane configs specific to nodes/interfaces, fix for adding emane nodes and setting the emane model properly 2020-09-01 16:19:01 -07:00
Blake Harnden
b0bac1d319 daemon: moved grpc wrapper classes to core.grpc.wrappers 2020-08-27 11:02:02 -07:00
Blake Harnden
b89a19a18e grpc: update node events to include icon, pygui: updated handling node events to update icon when there is a change 2020-08-05 12:10:27 -07:00
Blake Harnden
5976bca34b pygui: added view toggle for normal links 2020-08-04 16:32:39 -07:00
Blake Harnden
cd0351c818 pygui: added view option to toggle wireless edges 2020-08-04 16:20:51 -07:00
Blake Harnden
e2b3a2dc6d pygui: fixed issues with configuring services on nodes due to refactoring changes 2020-08-04 12:29:08 -07:00
Blake Harnden
082677c17b pygui: fixed issue saving selected background to xml when not located within the ~/.coregui/backgrounds directory 2020-08-03 16:37:31 -07:00
Blake Harnden
4bcaa32fdb pygui: fixed issue in task handling a returned boolean value, should be doing a none check 2020-08-03 16:29:35 -07:00
Blake Harnden
b7e3d1c877 pygui: fixed emane config dialog and emane model config dialogs to expand tabs the full height of the dialog 2020-08-02 10:47:01 -07:00
Blake Harnden
f0bc3bbc99 pygui: updates to leverage tk provided constants for sticky configuration, instead of duplicate strings everywhere 2020-08-02 10:36:14 -07:00
Blake Harnden
2aeb119b04 pygui: changes to display both link and asym link options on edges in canvas 2020-08-02 10:03:21 -07:00
Blake Harnden
06563d5953 pygui: fixed issue editing hook with a new name 2020-08-01 11:07:11 -07:00
Blake Harnden
fc44ad6fe8 pygui: update title to show xml file when one is opened, fixed issue creating nodes/links when not runtime due to refactoring, removed xml_file from coreclient and depend on the grpc GetSession wrapped data, grpc: added opened file information to GetSession call 2020-08-01 11:00:26 -07:00
Blake Harnden
04f7bc561b pygui: fixed exception from bad check when double clicking in sessions dialog 2020-07-31 23:23:18 -07:00
Blake Harnden
e7a93e7fd6 pygui: config dialogs that allow selecting a file default to ~/.coregui 2020-07-31 23:18:11 -07:00
Blake Harnden
eb422f5bab pygui: mac editing disabled for nodes during runtime 2020-07-31 23:13:07 -07:00
Blake Harnden
63103ab250 pygui: removed unused unlimited button from linkconfig dialog 2020-07-31 23:09:26 -07:00
Blake Harnden
d30778b238 daemon: fixed mobility checks to allow both wlan/emane, pygui: enabled emane nodes to configure mobility 2020-07-29 16:55:42 -07:00
Blake Harnden
fe36d28522 pygui: fixed issue with changes to protobuf files for getting emane model configs on a session 2020-07-28 22:45:42 -07:00
Blake Harnden
858e771efd pygui: fixes for copying links/asymmetric links, fixes for configuring asymmetric links, fixed issues adding nodes/links and editing links from gui due to not being able to identify same source changes 2020-07-28 21:49:34 -07:00
Blake Harnden
27495cbda1 pygui: changes around using session.nodes instead of canvas_nodes when possible 2020-07-28 10:24:01 -07:00
Blake Harnden
588afaad13 pygui: changes to make use of wrapped session object and wrapped nodes to maintain and retrieving configurations information 2020-07-28 00:03:15 -07:00
Blake Harnden
3bdd6292cd grpc: update GetSession to return all session related information, rather than needing 8 different calls, pygui: updated session protobuf wrapper to handle all new data 2020-07-27 18:19:51 -07:00
Blake Harnden
41a3c5fd7f pygui: added wrapper class for sessions returned by grpc GetSession 2020-07-26 11:45:40 -07:00
Blake Harnden
82a212d1cf pygui: modified usages of protobufs within coreclient to use module namespace to make more obvious, replaced config services and services with wrappers 2020-07-25 20:27:11 -07:00
Blake Harnden
a9a2fb8e46 pygui: added wrapper for throughput events, fixed sending nodes/links for configuration 2020-07-25 19:43:24 -07:00
Blake Harnden
77f6577bce pygui: added wrappers for most usages of protobufs within pygui 2020-07-25 10:30:14 -07:00
Blake Harnden
154fa8b77d pygui: replaced hook with wrapped hook class, fixed hook dialog edit 2020-07-24 22:00:38 -07:00
Blake Harnden
fff4bd7963 moved cpu usage to a grpc call that the gui will listen to, fixed grpc stream typing to be grpc.Future, fixed pygui issue for start callback when a start fails, but there are no exceptions 2020-07-23 09:41:39 -07:00
Blake Harnden
3544d00431 pygui: implemented cpu usage monitor to status bar 2020-07-22 21:57:05 -07:00
Blake Harnden
f8d862a296 grpc/pygui: added grpc alert api, updated pygui to better handle and display alerts 2020-07-22 19:19:22 -07:00
Blake Harnden
e34002b851 pygui: added option to launch core-pygui into a specific session using an id 2020-07-22 17:18:35 -07:00
Blake Harnden
6d4434bc12 grpc: added set session user call, updated mobility to look for files within new gui as well, fixed pygui issue when start session has a grpc exceptions, showing and empty error window 2020-07-16 22:51:26 -07:00