51 Commits

Author SHA1 Message Date
Phillip Stephens d5b3c7defb Linux build fixes 2020-04-17 07:18:45 -07:00
Dmitry Pinaev edaaeac459 Fix data propagation in converter (in calculator example) (#217) 2019-03-18 12:58:41 +01:00
fredakilla 282b439af0 Cleanup Qt keywords (#199)
* Qt no keywords

* replace emit with Q_EMIT

* add QT_NO_KEYWORDS definition to CMakeLists.txt
2019-02-06 22:05:38 +01:00
Davide Faconti a8264e391d Remove NodeDataModel::clone() (#164)
* removed NodeDataModel::clone(), using a more classic Factory/Builder pattern.

* trying to make visual studio happy

* Allow the DataModelRegistry to use static method Name() if defined

* use modern type_traits
2018-05-11 11:00:30 +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 3bd5cdc44d Fix warnings for missing variable names #116 2018-02-10 00:00:09 +01:00
Remigiusz Kołłątaj 49da648f4c Correct -Wall and -Wextra warnings for GCC7.1.1 and Clang++ 4.0.1 (#105)
* Correct -Wall and -Wextra warnings for GCC7.1.1 and Clang++ 4.0.1

Signed-off-by: Remigiusz Kołłątaj <remigiusz.kollataj@mobica.com>

* MSVC doesn't like -Wextra

Signed-off-by: Remigiusz Kołłątaj <remigiusz.kollataj@mobica.com>
2017-08-10 10:35:07 +02:00
Dmitry Pinaev 4278637d93 Make ConnectionStyle complete in Calculator example 2017-06-08 09:17:05 +02:00
Bastian Schumacher abf6a41765 Apply some minor cleanup (warnings and undefined behavior) (#92)
* Surpessed warnings for unused parameters (-Wunused-parameter) in NodeDataModel

* Initialized som former uninitialized members

* Q_OBJECT macro removed, as it is already in base class

* explicitly deleted copy constructor and assignment operator for classes with pointer members

* Revert "Q_OBJECT macro removed, as it is already in base class"

This reverts commit 7aaa2b8b7e7e3517ef90aaca18d38b71e9554c55.

* removed unnecessary breaks after return statements

* replaced default branch of switch case with explicit enum value

* hack to silence warning, this needs some proper handling

* Update NodeDataModel.hpp
2017-05-13 16:38:33 +02: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 0eaa18eb30 Introducet QtNodes namespace (#40) 2017-01-30 15:00:42 +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
David Bachrati a62f088b2b Renamable input and output ports on nodes (#45)
* Add option to set custom captions for node ports

* Calculator example modified to consistently use custom ports labels where it makes sense

* Minor fixes in modified code
2017-01-12 23:10:03 +01:00
Dmitry Pinaev 6c730a2ef6 Implement hash-based connection color 2016-12-11 17:35:22 +01:00
Dmitry Pinaev 318ce62ba7 Implement JSON-based styles for Nodes, Connections, and Scene 2016-11-27 20:07:18 +01:00
Dmitry Pinaev e6cbca5f4e Simplify model registering 2016-11-26 12:53:59 +01:00
Russell Greene 412350d8ae Use std::shared_ptr for storing registries so editors can share them 2016-11-25 18:02:44 -07:00
Dmitry Pinaev d9079a37aa Remove clang warnings 2016-11-25 02:15:27 +01:00
Dmitry Pinaev 4ba6e6f36a Add override keyword to remove clang complains 2016-11-23 11:57:37 +01:00
Dmitry Pinaev 0835f9af92 Use std::make_unique 2016-11-23 00:42:25 +01:00
Russell Greene 20fa0a62b2 Make DataModelRegistry static 2016-11-22 22:57:09 +01:00
Dmitry Pinaev f64f915cb3 Revert c++14 until CI is fixed 2016-11-22 22:46:41 +01:00