Commit graph

451 commits

Author SHA1 Message Date
Blake Harnden
50e3aadc6b daemon: refactoring to load emane models one time during startup, updates to account for this change 2021-05-07 10:40:18 -07:00
Blake Harnden
53ae6ac784 grpc: updated create session to return a session object with default values, avoids scripts needing to create and then join, can just create and leverage the returned object 2021-05-06 15:06:16 -07:00
Blake Harnden
d40435fa68 grpc: removed add session server, achieved with start session providing servers for session 2021-05-06 10:56:51 -07:00
Blake Harnden
8108db545a grpc: combined get services and get config services into new get config call, that can be used to get all daemon configuration information 2021-05-04 16:58:51 -07:00
Blake Harnden
15acdaa40f grpc: removed old client, refactored wrapped client to be the new standard client, removed old client tests, updated documentation 2021-05-04 13:29:22 -07:00
Blake Harnden
634341dd03 grpc: removed set session metadata, now accomplished with start session 2021-04-27 21:08:58 -07:00
Blake Harnden
e0fe86bcb2 grpc: updated start_session to have a definition option, to allow saving xml files and getting service configurations, without fully starting a session 2021-04-27 10:49:52 -07:00
Blake Harnden
f891974e3a grpc: removed set session user, added to start session 2021-04-24 22:35:45 -07:00
Blake Harnden
3d356272f1 pygui: adjust service configuration to not use grpc calls, data is saved and provided in start session call 2021-04-23 22:51:35 -07:00
Blake Harnden
7938379e6d grpc: added session options to session wrapped object, updated get_session and start_session to utilize this change, updated pygui to leverage as well 2021-04-22 16:12:33 -07:00
Blake Harnden
69652ac577 updates to python based logging to use module named loggers, updated logging config file to align with these changes 2021-04-21 21:09:35 -07:00
Blake Harnden
25025c00bc Merge branch 'master' into develop 2021-04-15 22:21:40 -07:00
Blake Harnden
984d28275b pygui: fixed issue with saving services for custom nodes, fixed issue with setting default services present when selecting services for a custom node 2021-04-13 21:53:50 -07:00
Blake Harnden
44f81391c4 daemon: added grpc wrapped client tests, added new wrapped class ServiceFileConfig to consolidate associated data for its purpose 2021-04-01 13:37:19 -07:00
Blake Harnden
f7f54d9aa6 pygui: updates to leveraged wrapped grpc client for proper type hinting without manual conversion 2021-03-26 10:43:45 -07:00
Blake Harnden
1c970bbe00 daemon: refactoring to remove usage of os.path where possible and pathlib.Path instead 2021-03-19 16:54:24 -07:00
Blake Harnden
b163b06596 pygui: added simple error dialog call to app, also added blocking option for some error dialogs when needed 2021-02-19 10:35:59 -08:00
Blake Harnden
2387812a76 pygui: update to allow custom nodes to use icons from any directory 2021-02-19 09:31:58 -08:00
Blake Harnden
93813358b5 pygui: further refactoring around retrieving icon images 2021-02-18 23:07:55 -08:00
Blake Harnden
a6fadb76cc pygui: refactored images.py and fixed issue with recreating a default config.yaml every time the gui was started 2021-02-18 21:04:16 -08:00
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