Commit Graph

101 Commits

Author SHA1 Message Date
Nick O'Leary 5e63471983
Use markdown editor if editText called with md mode 2020-10-05 20:38:05 +01:00
Nick O'Leary aaf134b1c5
Update ACE to 1.4.12-src-min-noconflict
Fixes #1988
2020-09-16 19:13:40 +01:00
Nick O'Leary 82677c304e
Show node help when switching node edit dialogs
Fixes #2652
2020-07-16 16:12:16 +01:00
Nick O'Leary 5b1fe9aa0a
Emit nodes:change event for config node users list modified 2020-06-15 22:31:47 +01:00
Hiroyasu Nishiyama 152e695f4c prevent conversion of circular structure 2020-06-10 19:56:16 +09:00
Nick O'Leary c061487a16
Massively reduce our dependency on d3 to render the view
This is a slightly scary set of changes to be making. It overhauls
how the view is rendered.

Rather than use d3 for every single part of generating the view,
we new use native DOM functions as much as possible.

d3 is still used for the basic heavy lifting of working out what
nodes/links etc need to be added/removed from the view. But once
it comes to rendering them, d3 is side-lined as much as possible.

There's room for further improvement. This change focusses on Nodes
and Links. It has not touched groups, subflow-ports and link-nodes.
2020-06-10 00:45:20 +01:00
Nick O'Leary 21866634b3
Track subflow instances on the subflow node itself 2020-06-08 11:49:43 +01:00
Nick O'Leary 22e7ddcb1d
Merge branch 'dev' into pr_2490 2020-05-22 15:43:17 +01:00
Nick O'Leary 57f0fbbb98
Add some more trap form elements to workaround Chrome autofill 2020-05-21 10:21:18 +01:00
Nick O'Leary fbd911ed27
[outliner] Keep outliner selection in sync with workspace 2020-05-14 22:08:25 +01:00
Kazuhito Yokoi 341c66a199 Fix description of grouping nodes 2020-05-13 12:32:02 +09:00
Nick O'Leary 73dde4de51
Allow node edit dialog to be opened on a non-default tab 2020-05-01 17:37:42 +01:00
Nick O'Leary 597c4a2e4f
Add createNodeIcon and getDarkerColor to RED.utils 2020-05-01 17:37:15 +01:00
Nick O'Leary 373267c53b
Add more consistent events in the editor
This introduces a much more consistent set of events within the editor
for whenever a element is added, removed or modified.

The events emited on the `RED.events` event system. The event names
take the form: `"<thing>:<action>"`.

`<thing>` can be one of:
 - nodes
 - flows
 - subflows
 - groups
 - links

`<action>` can be one of:
 - add
 - remove
 - change

The payload of the events is the object in question.

There is also:
 - flows:reorder    - when tabs are reordered. Payload is array of flow ids.
 - workspace:clear  - when the workspace is emptied - part of switching projects

The `nodes:change` event was already used by RED.nodes.dirty() to cause
the Deploy button to become active. This renames that event to:
 - workspace:dirty  - Payload is boolean flag for the dirty state

This commit also updates the Palette to use the subflows:change event to
only redraw subflows that have actually changed rather than refresh them
all whenever one of them *might* have changed. This removes a noticable
flicker of the icon which was needlessly being redrawn.
2020-04-20 22:23:34 +01:00
Nick O'Leary 294696daf5
Merge branch 'dev' into groups 2020-03-30 23:42:52 +01:00
Nick O'Leary 05fc3c5eca
Merge branch 'master' into dev 2020-03-30 23:41:33 +01:00
Nick O'Leary 94ef25bbb9
[groups] i18n group messages 2020-03-26 22:50:46 +00:00
Nick O'Leary 58696c6ad4
[groups] Add better colour picker for group fill/stroke 2020-03-19 13:41:54 +00:00
Hiroyasu Nishiyama c4ca0b6e91 fix tab apperance of subflow template panel 2020-03-15 08:02:26 +09:00
Nick O'Leary 86ce5c591b
[groups] add basic group functionality to editor 2020-03-03 20:55:01 +00:00
Kazuhito Yokoi 6675fdf3c2 Saving the node description property to the library 2020-03-02 05:50:32 +00:00
Nick O'Leary cc5fdd9844
Avoid adding extra divs to edit form to avoid size miscalculation 2020-02-26 13:17:03 +00:00
Nick O'Leary cd210d9fbf
Add support for credential-stored env var in subflow 2020-02-10 11:28:56 +00:00
Nick O'Leary bbd471ad93
Trick chrome into autofilling dummy username/password inputs
Fixes #2445

Continuing the arms race against Chrome's war on developers getting
to choose if a form should be autocompleted or not.

The honey-pot username/password fields we already had were being
ignored. This is because they were hidden.

This fix does three things:

 - unhides the honey-pot inputs, but moves them offscreen so they won't be seen
 - gives them dummy id's so Chrome thinks they are username/password fields
 - updates our autocomplete setting to be the standards-compliant 'off' for all
  the other browsers who adhere to the standard
2020-02-06 15:36:23 +00:00
Nick O'Leary b96164d4f5
Fix false change detection when no config node selected 2020-01-10 14:52:20 +00:00
Kazuhito Yokoi 9dbdf0947b Add tooltip to expand button in markdown editor 2019-10-31 17:21:26 +09:00
tseigo e022b782a9 Fixed jsdoc descriptions 2019-10-22 00:35:35 +09:00
Nick O'Leary 147d2a02be
Ensure node status is refreshed whenever node is edited
Fixes an issue where, if the number of node outputs was changes
the node would resize, but the status text would not reposition
until a new status message arrived.

This change marks status as dirty whenever the node has been
edited, forcing it to be redrawn.
2019-10-14 13:05:45 +01:00
Kazuhito Yokoi 0124bb17e8 i18n support in tooltips 2019-10-04 12:22:09 +09:00
Phi Dong dbca2178c0 Fix issue where subflow color did not update when not on a flow 2019-10-01 22:46:01 -07:00
Nick O'Leary 6fb6b13037
Normalise default subflow color references 2019-09-23 10:28:26 +01:00
Kazuhito Yokoi 8eb28555bc Enable wrap mode in Markdown editor 2019-09-17 20:26:59 +09:00
Kazuhito Yokoi 42c6487ff3 Show print margin on ace editor 2019-09-17 14:47:00 +09:00
Kazuhito Yokoi a4d48077ba Remove print margin from ace editor 2019-09-13 14:42:45 +09:00
Nick O'Leary 311c7b1158
Merge pull request #2261 from eeyepee/master
Add HTTP Persistent (session reuse) capability
2019-08-21 11:44:35 +01:00
Nick O'Leary b274bafe8e
Allow a node to change if it has an input port
Closes #2268
2019-08-15 13:29:08 +01:00
Nick O'Leary ee6ee99577
Make icon and color pickers more consistent 2019-08-12 22:07:55 +01:00
Nick O'Leary 607bc42f59
Merge branch 'dev' into pr_2225 2019-08-12 15:05:12 +01:00
Nick O'Leary 880757fb5d
Rework Subflow Instance property UI (#2236)
* Add support of Subflow UI definition

* new UI definition for env var

* fix label

* fixed value obtaining

* fixed label width

* fix checkbox

* fix subflow info

* remove old subflow ui tests

* add tests

* merge ui new changes

* fix initial open button

* fix environment variable edit tab

* WIP: cp-1

* Rework subflow ui property

* Restrict SF value type according to input selection

* Move subflow property UI code to subflow.js

* Update subflow ui type select appearance

* Present subflow instance properties as table rather than generated UI

* Move subflow instance properties to separate tab

* Fix subflow property ui element layout issues
2019-08-12 15:01:54 +01:00
Kazuhito Yokoi c082bb97e0 Remove tab menu from node property UI for subflow and config nodes 2019-08-07 12:29:20 +09:00
Nick O'Leary 7926055b97
Merge branch 'master' into dev 2019-08-06 16:10:33 +01:00
Hiroyasu Nishiyama db65460ec0 fix SUBFLOW palette node update & SUBFLOW default color 2019-07-31 22:59:29 +09:00
Tyler Eastman 14ac6446de Handle undefined node._def in edit stack title. 2019-07-22 14:25:52 -07:00
Hiroyasu Nishiyama 260a9723a4 use custom color picker instead of color input type 2019-07-21 22:55:25 +09:00
Nick O'Leary 04d7106956
Remove unwanted icons 2019-07-12 13:37:01 +01:00
Hiroyasu Nishiyama db5589f2aa rearrange contents of subflow template settings tab 2019-07-11 19:37:47 +09:00
Hiroyasu Nishiyama d06dbbb4bd changed to color change reflect immediately on OK 2019-07-11 08:22:31 +09:00
Hiroyasu Nishiyama 3ee8bcad8c add support for specifying subflow template color 2019-07-08 23:52:08 +09:00
Nick O'Leary 04bdcbd490
Do not save subflow env vars with blank names 2019-06-21 12:46:53 +01:00
Nick O'Leary d623848c87
Update all node icons to SVG
When listing icons provided by a module, if there is a png and svg
with the same name, only the svg will be listed.

If a node asks for a png icon which is not known, but there is a
corresponding svg, that will be used instead.
2019-06-21 12:36:20 +01:00