1
0
mirror of https://github.com/Siccity/xNode.git synced 2025-12-20 09:16:01 +08:00

74 Commits

Author SHA1 Message Date
Thor Brigsted
0c1ae4881d Fixed #147 - Adding dynamic port using "+" causes exception 2019-06-08 01:41:58 +02:00
Thor Brigsted
8a03811ee3 More DynamicPortList debug messages 2019-05-13 14:26:29 +02:00
Thor Brigsted
91151b327a Bugfix: Calling base.OnBodyGUI after drawing ports would make noodles disappear 2019-05-09 00:02:58 +02:00
Thor Brigsted
d7f5bd2a1a Added obsolete methods to help with upgrading
Relating the Instance port > dynamic port change
2019-05-06 17:54:43 +02:00
Thor Brigsted
c3e85a9f82 UPGRADE NOTICE: Renamed 'instance ports' to 'dynamic ports'.
To upgrade, simply rename all your method calls involving instance ports eg. 'AddInstanceOutput' to the dynamic port equivalent eg. 'AddDynamicOutput'
There is no functional difference. The community just agreed this was a more fitting name for the feature.
2019-05-05 10:52:36 +02:00
Thor Brigsted
4cf7113740
Improved noodle tangents (#136) 2019-04-14 19:01:26 +02:00
Thor Brigsted
f6e0e3bc4d Added NodeGraphEditor.GetPortColor 2019-04-03 21:50:29 +02:00
Thor Brigsted
af0523db2d Fixed #124 - Errors on DynamicPortList with >10 items
Was using OrderBy(x => x.fieldName). The resulting order would then be 1, 10, 11, .. , 2, 3, 4, etc.
Fixed by parsing the indices as ints, and ordering by that value instead
2019-04-01 19:16:54 +02:00
Thor Brigsted
01d7f782e4 Fixed issues relating to InstancePortList 2019-03-04 19:04:00 +01:00
Thor Brigsted
6783324018 Fix drawing instance twice for instanceportlists 2019-03-04 18:29:43 +01:00
Thor Brigsted
2939fe4935 Added automatic drawing of instance ports
Fixed minor issue getting parentType twice
2019-03-02 11:53:54 +01:00
Thor Brigsted
9875f8d4f0 Merge branch 'master' of git@github.com:Siccity/xNode.git 2019-02-17 02:00:26 +01:00
Thor Brigsted
3a8ae366f2 Fixed #103
Similar issue as #100

GetField was not returning private fields. The method now not only looks for private fields, but also fields inside inherited classes
2019-02-16 03:06:25 +01:00
Thor Brigsted
71defcbdd5 Implemented typeConstraint in InputAttribute 2019-02-16 02:36:42 +01:00
Thor Brigsted
c9a4a81c31 InstandePortLists draw element include children 2019-01-12 02:23:00 +01:00
Thor Brigsted
5ee63d3ee5 Fixed #96
InstancePortLists no longer need to point to a serialized property
2019-01-11 18:54:44 +01:00
Thor Brigsted
432ca09274 Removed debug info 2019-01-11 18:38:54 +01:00
Thor Brigsted
b08d706e0d Changed custom InstancePortList API.
See: NodeEditorGUILayout.InstancePortList
2019-01-10 18:15:16 +01:00
Thor Brigsted
96d73bcb81 Better error handling for InstancePortLists 2019-01-05 22:02:00 +01:00
Thor Brigsted
c321c276d1 Fixed formatting 2018-12-27 02:55:09 +01:00
Simon Rodriguez
3d1da00652 Caches attributes, generates no garbage after first fetch.
Cache gets reset on recompilation of code.
2018-12-21 14:54:12 +01:00
Simon Rodriguez
fe2b7a9684 Fix for [Space] attribute (#90)
* Fix for [Space] attribute.
Code is a bit messy.

* Exchanged EditorGUILayout.Space() to GUILayout.Space() that takes a parameter height, for custom space distances.

* Changed where implementation is added to not messy up the rest of the code.
2018-12-18 10:00:10 +01:00
Thor Brigsted
dc608a3d1b Added NodeEditorGUILayout.onCreateReorderableList action for reorderablelist customization 2018-11-01 00:46:38 +01:00
Thor Brigsted
b9bd67bd28 Cleanup
Removed unused code, added/fixed comments
2018-10-30 09:38:44 +01:00
Thor Brigsted
ba69380638 Fixed error on instanceportlists that aren't arrays 2018-10-29 21:20:22 +01:00
Thor Brigsted
bad05a6e64 InstancePortList custom PropertyHeight supported 2018-10-26 18:42:16 +02:00
Thor Brigsted
b186b7dd34 Finished reorderable instance port lists 2018-10-26 00:17:24 +02:00
Thor Brigsted
17ba6a880c Ugh, this isn't easy 2018-10-22 00:46:49 +02:00
Thor Brigsted
82627812d6 Reordering improved, still WIP 2018-10-19 10:12:35 +02:00
Thor Brigsted
4516293214 Implemented add, remove. Reordering WIP 2018-10-18 10:07:48 +02:00
Thor Brigsted
671481f3b1 Begun working on ReorderableLists 2018-10-14 19:04:13 +02:00
Simon Rodriguez
98edbf0c80 Added label before drawing InstancePortList 2018-09-22 11:09:08 +02:00
Thor Brigsted
7ee89ba79c Added instancePortList field to Input and Output attributes. 2018-09-19 23:17:08 +02:00
Simon Rodriguez
fc0f1983e0 Suggestion, better looking buttons for InstancePortList 2018-09-19 09:04:58 +02:00
Thor Brigsted
ff97cc4494 Switched Dict.ContainsKey out with Dict.TryGetValue for performance gain. 2018-09-09 18:25:41 +02:00
Thor Brigsted
f9e024198e Improved InstancePortList. It now takes a NodePort.IO parameter 2018-08-30 15:52:30 +02:00
Thor Brigsted
632ae09e09 Added AddPortField to NodeEditorGUILayout
Call this after any GUILayout/EditorGUILayout method to add a port to it
2018-07-21 22:09:15 +02:00
Thor Brigsted
cd0a4ca64b Fixed bug in NodeEditorGUILayout.InstancePortList 2018-07-19 00:01:11 +02:00
Thor Brigsted
ac9db2a0b0 Fixed drawing arrays inside InstancePortList 2018-07-12 00:21:24 +02:00
Thor Brigsted
12ddf51164 Fixed bug that ironically appeared in c202829c9da1a94496d0c864d79c1cf71cbf7e8f
Bug would cause ports drawn with InstancePortList to not appear at all
2018-06-24 23:20:29 +02:00
Thor Brigsted
a0d86c895e Added convenience NodeEditorGUILayout.PortPair 2018-06-23 16:40:03 +02:00
Thor Brigsted
c202829c9d Bugfix and old code removal
Fixed NodeEditorGUILayout.PortField being inconsistent with Ports drawn by NodeEditorGUILayout.PropertyField
Removed obsolete NodeEditorGraph.GetNodePath
2018-06-21 23:21:32 +02:00
Thor Brigsted
dc9b11c5a3 Added NodeEditorGUILayout.InstancePortList.
Use it to draw lists of instance ports easily.
2018-06-10 21:16:18 +02:00
Thor Brigsted
941189a4d6 Started work on Reroute nodes 2018-03-31 19:01:36 +02:00
Thor Brigsted
682dccdd9d Changed NodeEditorGUILayout labels to use dynamic output GUIStyle based on EditorStyles.label
This will make it easier to change node text color

Example:
[CustomNodeEditor(typeof(MyNode))]
public class MyNodeEditor : NodeEditor {
    private static GUIStyle editorLabelStyle;

    public override void OnBodyGUI() {
        if (editorLabelStyle == null) editorLabelStyle = new GUIStyle(EditorStyles.label);
        EditorStyles.label.normal.textColor = Color.green;
        base.OnBodyGUI();
        EditorStyles.label.normal = editorLabelStyle.normal;
    }
}
2018-02-05 02:07:22 +01:00
Thor Brigsted
63b51aaa10 Added more preferences control
Preferences can now be saved with a custom key, and custom default settings can be specified.

Other changes:
XNodeInternal renamed to XNodeEditor.Internal
NodeEditorWindow.graphEditor exposed as public
2018-01-30 12:27:17 +01:00
Thor Brigsted
5f900c0b14 Removed references to previous project name 2017-12-31 01:22:18 +01:00
Thor
66de07e1a7 More strongly typed namespaces to prevent import conflicts 2017-12-18 10:37:02 +01:00
Thor Brigsted
d7e133a822 Defined namespaces across all scripts prevent conflicts. 2017-12-02 09:56:41 +01:00
Thor Kramer Brigsted
aabd2e4145 Added NodeGraphEditor.GetTypeColor for custom node-graph specific type colors 2017-11-28 10:49:24 +01:00