Commit Graph

452 Commits

Author SHA1 Message Date
Nick O'Leary 010e20989a
[popover] Allow hover-type popovers to contain buttons 2020-05-06 16:12:07 +01:00
Nick O'Leary 2af7066512
Merge branch 'dev' into outliner 2020-05-05 15:11:35 +01:00
Nick O'Leary 0edc57f0e3
Merge pull request #2547 from node-red-hitachi/fix-project-menu-item-activation
Activate project menu after initial clone
2020-05-04 16:14:42 +01:00
Nick O'Leary d7df20413d
Merge branch 'master' into dev 2020-05-04 11:41:44 +01:00
Nick O'Leary fc2a9a85ff
[outline] Reveal selected item after clearing outline filter 2020-05-01 17:51:44 +01:00
Nick O'Leary 78c86880e4
[outline] Update information section of info sidebar 2020-05-01 17:39:54 +01:00
Nick O'Leary aca61c0354
Modify RED.panels to use flexbox position 2020-05-01 17:38:23 +01: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
Hiroyasu Nishiyama 4245c0a0ad activate project menu after initial clone 2020-04-30 12:59:10 +09:00
Nick O'Leary 12dc4ab1fa
[outline] Connect search dialog to outline filter box 2020-04-27 15:23:39 +01:00
Nick O'Leary 55a5917282
[search] Refactor search to use editor events to generate index 2020-04-27 14:43:22 +01:00
Nick O'Leary a5b33d11fc
[outline] Add outline section to info sidebar 2020-04-27 11:17:19 +01:00
Nick O'Leary d2d872f51c
TreeList updates for the outliner sidebar
All data items now get their `item.treeList` api added even if deferBuild is set.
This means the apis can be used regardless of whether the tree has built their
ui pieces.

Also adds a number of new api calls

Top-level methods:

 - clearSelection - clears selection from the list
 - filter(filterFunc) - filters the tree using the provided function

Data item functions:

 - item.treeList.sortChildren(sortFunction)
 - item.treeList.replaceElement(element)
2020-04-27 11:14:47 +01:00
Nick O'Leary 5c0b500f48
Reorder group creation so groups:add is fired before nodes:change 2020-04-27 11:06:28 +01:00
Nick O'Leary 28418288e3
Allow RED.notify.popover to have a position offset 2020-04-27 11:05:32 +01:00
Nick O'Leary 0150769c17
EditableList api calls must not return nested list items 2020-04-27 11:04:41 +01:00
Nick O'Leary 1a9c4b7714
All node button to be clicked via api call 2020-04-27 11:03:43 +01:00
Nick O'Leary d9f710aa52
Only update disabled workspace css if it is the active ws 2020-04-27 11:03:02 +01:00
Nick O'Leary f78be9050a
Reorder inital load so projects:load event emits before any nodes:add 2020-04-27 10:49:14 +01:00
Nick O'Leary 3dfbefb9f5
Handle error objects when reporting in palette manager 2020-04-24 13:54:49 +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 b032e00d01
[groups] increase group border radius 2020-04-14 22:39:42 +01:00
Nick O'Leary e26eb85718
Fine tune typedInput flexbox handling on option-button 2020-04-08 17:06:11 +01:00
Nick O'Leary 24f7000918
[groups] Remove padStart because IE11 2020-04-02 23:23:41 +01:00
Nick O'Leary 6ff3286d78
Merge branch 'master' into dev 2020-04-02 16:52:55 +01:00
Nick O'Leary f058de8bcd
Update TypedInput to use flexbox and remove resizing code 2020-04-02 16:49:58 +01:00
Nick O'Leary fbfc74e5ca
[groups] Ensure newly imported nodes have width/height 2020-04-02 11:58:08 +01:00
Nick O'Leary 5da89892b4
[groups] Draw group selection above all other groups 2020-04-01 14:10:35 +01:00
Nick O'Leary 7fa4df082e
Force sync redraw of view when replacing unknown nodes 2020-03-31 15:58:51 +01:00
Hiroyasu Nishiyama fa8236ee2c update for recent change of dev branch 2020-03-31 20:32:07 +09:00
Hiroyasu Nishiyama 08ec04c889 merge upstream/dev 2020-03-31 19:05:22 +09:00
Hiroyasu Nishiyama e5150ea012 force redraw after node installation 2020-03-31 16:48:20 +09: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 6ae7c51dc5
Check node props when deciding if pasted node can splice links
Fixes #2494
2020-03-29 20:33:15 +01:00
Nick O'Leary b1d0013214
[groups] Better ordering of group elements on the DOM 2020-03-26 22:51:06 +00:00
Nick O'Leary 94ef25bbb9
[groups] i18n group messages 2020-03-26 22:50:46 +00:00
Nick O'Leary 13830ffc9c
[groups] Tidy up Info sidebar summary of group selection 2020-03-26 21:00:22 +00:00
Nick O'Leary e0bef941b4
[groups] Include groups when copying whole tabs 2020-03-26 20:26:58 +00:00
Nick O'Leary 03e9522d98
[groups] Include groups when exporting 2020-03-26 18:01:57 +00:00
Nick O'Leary 1bdbd31b96
[groups] Overhaul group drag handling for empty groups 2020-03-26 15:27:34 +00:00
Nick O'Leary afb564a4fc
[groups] Add copy/paste group style actions 2020-03-26 15:24:02 +00:00
Nick O'Leary 3e7f58dedd
[groups] Include group counts in copy/paste notifications 2020-03-26 15:22:59 +00:00
Nick O'Leary 7c91c4ae5a
[groups] Prevent subflow port nodes being added group 2020-03-24 14:05:35 +00:00
Nick O'Leary 7bc3b662e4
[groups] Fix up various delete/undo actions with groups 2020-03-24 14:05:09 +00:00
Nick O'Leary 64af1f7e9b
[groups] Lasso should select top-most group of selection 2020-03-23 22:04:40 +00:00
Nick O'Leary f0038e9796
[groups] Use requestAnimationFrame for view redraw
This moves the expensive redraw code out of the event handling phase
and onto the browser's repaint phase. This makes the event handling
more responsive, particularly when dragging a large number of nodes.

It also removes lots of unnecessary anonymous functions in the redraw
code that should also improve performance.
2020-03-23 21:30:52 +00:00
Nick O'Leary 768aa4ac92
[groups] getGroupAt should return top most group 2020-03-23 21:30:09 +00:00
Nick O'Leary f61c137ea3
[groups] Improve styling of group selection/highlight 2020-03-23 14:51:18 +00:00