University of Bremen

Manual

Main->API->Commands Overview

API Commands Overview

Help about API syntax.

API commands are built by applying the following rules. A single API command uDG_command can be sent to the API, i.e. one after the other. A list of API commands uDG_commands is used in an initialization file that can be loaded in uDraw(Graph) with command-line option -init.

Grammar with Syntax Rules

uDG_commands ::= List of API commands.
[uDG_commands1].
uDG_commands1::=
uDG_command | uDG_command,uDG_commands1.
uDG_command ::= Commands of the API (top-level).
graph(graph_cmd) Graph category. Details.
|multi(multi_cmd) Multi category. Details.
|menu(menu_cmd) Menu category. Details.
|app_menu(app_menu_cmd) Appl. menu category. Details.
|gui(gui_cmd) GUI category. Details.
|set(set_cmd) Set category. Details.
|window(window_cmd) Window category. Details.
|tcl(tcl_cmd) Tcl category. Details.
|special(special_cmd) Special category. Details.
|visual(visual_cmd) Visual category. Details.
|drag_and_drop(drag_and_drop_cmd) Drag and Drop category. Details.
|nothing. No operation, for synchronization.
graph_cmd ::= Send and update graphs. Details.
new(graphterm) Send new graph. Details.
|new_placed(graphterm) As above, but with better layout. Details.
|update(node_updates,edge_updates) Send graph updates. Details.
|mixed_update(mixed_updates) Node / edges in a list. Details.
|change_attr(attr_changes) Change attributes. Details.
|update_and_change_attr(node_updates,edge_updates,attr_changes)
Combination of both. Details.
|mixed_update_and_change_attr(mixed_updates,attr_changes)
Node / edges in a list. Details.
|change_type(type_changes). Change type. Details.
multi_cmd ::= For multi-graph mode. Details.
new_context Open graph context. Details.
|open_context(context_id) As above, but ID is given. Details.
|set_context(context_id). Switch to context. Details.
|set_context(context_id,window_id). Switch to context+window. Details.
menu_cmd ::= Call functions of menu. Details.
file(file_menu_cmd) File menu category. Details.
|view(view_menu_cmd) View menu category. Details.
|navigation(navigation_menu_cmd) Navigation menu category. Details.
|abstraction(abstraction_menu_cmd) Abstraction menu category. Details.
|layout(layout_menu_cmd) Layout menu category. Details.
|option(option_menu_cmd). Option menu category. Details.
file_menu_cmd ::= File menu functions. Details.
new Clear graph. Get Details.
|open_graph(filename) Load graph from file. Details.
|open_graph_placed(filename) As above, but with better layout. Details.
|open_status(filename) Load status from file. Details.
|save_graph(filename) Save graph as term. Details.
|save_status(filename) Save graph as status. Details.
|print(filename) Save as PostScript. Details.
|print_to_printer Print graph on printer. Details.
|print Open print dialog. Details.
|export(boolean,string,filename) Export graph to file. Details.
|export Open export dialog. Details.
|close Close graph window. Details.
|exit. Exit uDraw(Graph). Details.
view_menu_cmd ::= View menu functions. Details.
open_new_view Open additional view. Details.
|open_survey_view Open survey view. Details.
|full_scale Set scale to 100%. Details.
|fit_scale_to_window Set scale to fit. Details.
|scale(integer) Set scale to integer. Details.
|scale Open Scale dialog. Details.
|graph_info Open Graph Info dialog. Details.
|uDrawGraph_info. Open uDraw(Graph) Info dialog. Details.
navigation_menu_cmd ::= Navigation menu functions. Details.
select_parents(node_ids) Select parents of nodes. Details.
|select_parent(edge_id) Select parent of edge. Details.
|select_siblings(node_ids) Select siblings of nodes. Details.
|select_children(node_ids) Select children of nodes. Details.
|select_child(edge_id) Select child of edge. Details.
|navigator(node_id,direction,boolean)Navigate in graph. Details.
|navigator Open Navigator dialog. Details.
|find(string,boolean,boolean) Find a node. Details.
|find. Open Find dialog. Details.
abstraction_menu_cmd ::= Abstraction menu functions. Details.
hide_subgraph(node_ids) Hide subgraphs of nodes. Details.
|show_subgraph(node_ids) Show subgraphs of nodes. Details.
|restore_all_subgraphs Show all hidden subgraphs. Details.
|hide_edges(node_ids) Hide edges of nodes. Details.
|show_edges(node_ids) Show edges of nodes. Details.
|restore_all_edges. Show all hidden edges. Details.
layout_menu_cmd ::= Layout menu functions. Details.
improve_all Start layout algorithm. Details.
|improve_edges As above, but only dummy nodes. Details.
|improve_spacing As above, but keeps node order. Details.
|improve_selected As above, but only selected nodes. Details.
|improve_nodes(node_ids) As above, but only supplied nodes. Details.
|improve_spacing Compact graph layout. Details.
|orientation(orientation). Switch orientation. Details.
option_menu_cmd ::= Option menu functions. Details.
layout_algorithm Open this option dialog. Details.
|layout_settings Open this option dialog. Details.
|general_settings Open this option dialog. Details.
|save. Save options. Details.
app_menu_cmd ::= Create menus / icons. Details.
create_menus(menus) Add menus in Edit. Details.
|create_icons(icons) Add icons in icon-bar. Details.
|activate_menus(menu_ids) Enable menus. Details.
|activate_icons(icon_ids) Enable icons. Details.
|control_file_events. Get events of File menu. Details.
gui_cmd ::= Configure user interface. Details.
configure(filename) Read configuration file. Details.
|activate_menus(menu_ids) Enable menus. Details.
|set_radio_menus(menu_ids) Set value in radio menus. Details.
|activate_icons(icon_ids) Enable icons. Details.
|set_radio_icons(icon_ids). Set value in radio icons. Details.
set_cmd ::= Set options. Details.
layout_accuracy(integer) Layout algorithm param. Details.
|keep_nodes_at_levels(boolean) Keep nodes at levels. Details.
|manual_layout(manual_constraints) Manual layout constraints. Details.
|font_size(integer) Font size of nodes. Details.
|edge_style(spline_drawing) Draw splines or not. Details.
|edge_text_black(boolean) Draw unselected edges black or not. Details.
|gap_width(integer) Min. node distance. Details.
|gap_height(integer) Min. level distance. Details.
|multi_edge_gap(integer) Distance for multi-edges. Details.
|self_edge_radius(integer) Distance for self-edges. Details.
|scrolling_on_selection(boolean) Auto focusing node. Details.
|animation_speed(integer) Speed of animation. Details.
|browser(string) Browser path. Details.
|documentation(string) Online documentation URL. Details.
|print(string) Print command. Details.
|measure(measures) Measures in cm or inch. Details.
|tooltip_delay(integer) Delay for tooltips in ms. Details.
|rules_first(boolean). Attr. evaluation order. Details
window_cmd ::= Control windows. Details.
title(string) Set window title. Details.
|show_message(lang_string) Show text in left footer. Details.
|show_status(lang_string) Show text in right footer. Details.
|position(integer,integer) Window origin x / y. Details.
|size(integer,integer) Window width / height. Details.
|raise Bring window to top. Details.
|iconify Hide window. Details.
|deiconify Show window again. Details.
|activate Enable interaction. Details.
|deactivate Disable interaction. Details.
|background(string) Window background color. Details.
|file_browser(boolean,lang_string,lang_string,string,string,btypes,boolean).
Show file browser. Details.
tcl_cmd ::= Tcl / Tk interface. Details.
eval(string) Eval Tcl / Tk script. Details.
|eval_file(filename). As above, but reads script from file. Details.
special_cmd ::= Special commands. Details.
select_nodes(node_ids) Select specified nodes. Details.
|select_edge(edge_id) Select specified edge. Details.
|focus_node(node_id) Scroll to specified node. Details.
|focus_node_animated(node_id) As above, but with animation. Details.
|show_url(string) Show HTML page in browser. Details.
|add_language(filename) Add language file. Details.
|version. Return version info. Details.
visual_cmd ::= Visualization definitions. Details.
new_rules(visual_rules) Define new rules. Details.
|add_rules(visual_rules). Add or overwrite rules. Details.
drag_and_drop_cmd ::= Drag and Drop. Details.
dragging_on Switch drag and drop on. Details.
|dragging_off Switch drag and drop off. Details.
|new_node_at_coord(node_update) New node at drop pos. Details.
|new_edge_and_node_at_coord(node_update,edge_update).
New node and edge at drop position. Details.