73 Commits

Author SHA1 Message Date
Davide Faconti 80f4a278c9 Improve scene cleanup operations (#185)
* cleaner cleanup

* avoid inconsistency in nPorts

* allow exceptions if the user pass an invalid PortIndex
2019-02-09 19:13:27 +01:00
Davide Faconti 87f0d386bf Prefer for loop over lambda (#181) 2018-06-06 11:30:40 +02:00
Justin Bassett 5f3d84329b Misc improvements (use std::move, use const&, etc) (#170) 2018-05-11 10:21:44 +02:00
Justin Bassett 2d4499c1fb Move implementation of std::make_unique to QtNodes::detail::make_unique (#162) 2018-05-02 17:54:58 +02:00
paceholder 2c94a67cee Fix memory leake by passing parent to FlowScene (#151) (#155) 2018-04-27 19:37:58 +02:00
Dmitry Pinaev 6a4340ec2e Implement Converters separately from DataModels (#148) 2018-04-15 12:11:29 +02:00
Dmitry Pinaev 7a0d971bfc Remove unused FlowItemInterface class 2017-08-10 10:37:03 +02:00
Dmitry Pinaev 276940926d Expose Node and Connection classes (#97) 2017-06-08 09:17:06 +02:00
Dmitry Pinaev ec0c78d35d Apply code style 2017-05-19 00:17:21 +02:00
Russell Greene 449984af79 Add selectedNodes() function to FlowScene (#65)
* Add selectedNodes() function to FlowScene

* Fix extra line

* Fix extraenous whitespace change
2017-03-18 14:04:57 +01:00
mtbrobotanist a1fe18a21f Add clearScene() function (#69)
* added clearScene(), calling it in load() and ~FlowScene()

* added CMakeLists.txt.user to .gitignore
2017-03-18 13:50:55 +01:00
David Bachrati ce5f164fdc Added functions to load and save graphs from memory (#62) 2017-03-13 16:18:49 +01:00
David Bachrati c0642a8c20 Various fixes and additions (#60)
* - Extra method added to iterate over node data structure outside of the library

* - Added more robust context menu

* - Fixing crashes during node/connection removal
2017-03-09 13:31:26 +01:00
paceholder a9b6405a4d Implement Json serialization (#53) 2017-01-31 21:30:56 +01:00
David Bachrati 64dd7d491a Implement automatic insertion of typecast nodes (#52)
* Automatic type cast node insertation working in a basic manner

* Port paint fix to handle convertible types

* Code cleanup, documentation,, and minor fixes

* Fixing master merge

* Master merge fix 2

* Master merge fix 3

* Code style fixes

* Fixing logic error, where typecast node with the same input-output types were permitted

* Fixes based on @russelltg 's suggestions

* Got rid of unique_ptr static_casts

* Partial fixes from the code review

* Merging master into branch vol. 3
2017-01-30 18:03:49 +01:00
Dmitry Pinaev a18376f2e1 Fix windows build with namespaces 2017-01-30 16:06:30 +01:00
Dmitry Pinaev 0eaa18eb30 Introducet QtNodes namespace (#40) 2017-01-30 15:00:42 +01:00
Russell Greene 72282eba1a Fix segfault in NodeScene (#51)
The CGO is requested in `NodeGraphicsObject::moveConnections` with the call stack:
```
Node::onDataUpdated
Connection::propagateData
Node::onDataUpdated
```

Which is called in createConnection
2017-01-29 16:08:48 +01:00
David Bachrati 770a1aa9ec Implement runtime validation and error reporting (#46)
* Node validation and error display implemented

* Added option to iterate through nodes in the scene. (Useful to read out data from all the nodes, makes code generation based on the graphs easier.)

* Visual error fix for nodes that change size depending on input, plus minor styling and logic fixes in the example, based on the comments of @russelltg

* Validation extended to handle warnings, based on the idea of @russeltg ; Error display colors now come from the style system;  Additional bugfixes

* DefaultStyle.json identation fix

* FlowScene.cpp identation fix

* Travis build test fix
2017-01-25 11:34:03 +01:00
Russell Greene 870520fceb Make Nodes uniques owned by FlowScene instead of using shared_ptr (#38)
Nodes were stored in shared_ptr objects, which doesn't make sense
because FlowScene shoule be the only owner of Nodes.
2017-01-08 19:42:16 +01:00
Russell Greene f1c1bdd021 Add miscalenous changes--not sure about them 2016-12-31 17:08:44 +01:00
Russell Greene cf4e293534 Fix some things in FlowScene so the correct signals are called at the
right time
2016-12-12 07:55:30 +01:00
Dmitry Pinaev 65f98d06d3 Fix issue with objects removing 2016-12-11 19:23:19 +01:00
Dmitry Pinaev 494bfae803 Update README 2016-12-11 18:39:58 +01:00
Russell Greene c83fdb0f46 Add virtual constructors to abstract classes 2016-11-29 09:14:05 +01:00