Node program Editor
Node program editor is a Flutter package based on the flutter package diagram_editor.
Description
The package provide a NodeProgramEditor widget witch is an editor dashboard who look like this :
How to use
You can use the node program editor widget in any other Flutter. The widget need a mandatory argument a json type data who need to had this specific format :
{
"input_types": [],
"blocks": [
{
"name": "block_name",
"input": [{
"name": "input_name",
"type": "type_from_type_array",
"mandatory": true,
}],
"output": [
{
"name": "output_name",
"type": "type_from_type_array",
"mandatory": true,
}
],
"parameter": [
{
"name": "param_name",
"type": "DROPDOWN",
"value": []
}
]
},
]
}
The parameters type depend on the field type that you want to have when update the block. The package allow this types of parameters type :
- INT_FIELD => only integer values
- STRING_FIELD => basic Flutter text input
- FILE_FIELD => file picker
- FOLDER_FIELD => directory picker
- DROPDOWN => dropdown
- FLOAT_FIELD => ensure that the value is a digit
- COLOR_FIELD => color picker
you can also use an optional parameters onProgramEmitted witch is a callback function that return the program logic execution => the block parameters, the link between blocks,...
the other parameters are :
- height,
- width,
- programName,
- appName
Libraries
- bloc/program/program_cubit
- bloc/show_component_settings/show_component_settings_cubit
- component/port
- component/rect_component
- models/builder_component_data
- models/component_parameter
- models/components_parameters_types
- models/entry_types_data
- models/result
- node_program_editor
- policy/base_policy
- policy/builder_canvas_display_policy
- policy/builder_canvas_policy
- policy/builder_component_design_policy
- policy/builder_component_policy
- policy/builder_component_widget_policy
- policy/builder_init_policy
- policy/builder_link_attachment_policy
- policy/builder_link_control_policy
- policy/builder_link_join_control_policy
- policy/builder_link_widget_policy
- policy/builder_set_policy
- policy/minimap_policy
- providers/builder_style
- providers/program_data_provider
- widgets/diagram_app
- widgets/node_program_editor_widget
- widgets/package_theme
- widgets/parameters_fields/color_field
- widgets/parameters_fields/color_picker_dialog
- widgets/parameters_fields/dropdown
- widgets/parameters_fields/file_field
- widgets/parameters_fields/float_field
- widgets/parameters_fields/folder_field
- widgets/parameters_fields/int_field
- widgets/parameters_fields/str_field
- widgets/parameters_menu_widgets/app_settings
- widgets/parameters_menu_widgets/builder_component_settings
- widgets/parameters_menu_widgets/setting_box
- widgets/parameters_menu_widgets/settings_bottom_bar