Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2019-03-05 10:30:06 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-03-05 10:38:37 +0300
commite83854e759f61ed82c9c0ceedadf55c9a670245a (patch)
tree9b7a12ac11dc737e366260b41a2eeada5257b008 /source/blender/editors/space_node/node_edit.c
parent08e1218d5da7b4e06c1d3232e83bb62f3bfbb2de (diff)
Nodes: move select all into a utility function
Diffstat (limited to 'source/blender/editors/space_node/node_edit.c')
-rw-r--r--source/blender/editors/space_node/node_edit.c31
1 files changed, 26 insertions, 5 deletions
diff --git a/source/blender/editors/space_node/node_edit.c b/source/blender/editors/space_node/node_edit.c
index 038ab62af78..66f0e17db0f 100644
--- a/source/blender/editors/space_node/node_edit.c
+++ b/source/blender/editors/space_node/node_edit.c
@@ -48,6 +48,7 @@
#include "ED_node.h" /* own include */
+#include "ED_select_utils.h"
#include "ED_screen.h"
#include "ED_render.h"
@@ -1216,12 +1217,8 @@ void NODE_OT_duplicate(wmOperatorType *ot)
}
bool ED_node_select_check(ListBase *lb)
-
-
{
- bNode *node;
-
- for (node = lb->first; node; node = node->next) {
+ for (bNode *node = lb->first; node; node = node->next) {
if (node->flag & NODE_SELECT) {
return true;
}
@@ -1230,6 +1227,30 @@ bool ED_node_select_check(ListBase *lb)
return false;
}
+void ED_node_select_all(ListBase *lb, int action)
+{
+ if (action == SEL_TOGGLE) {
+ if (ED_node_select_check(lb))
+ action = SEL_DESELECT;
+ else
+ action = SEL_SELECT;
+ }
+
+ for (bNode *node = lb->first; node; node = node->next) {
+ switch (action) {
+ case SEL_SELECT:
+ nodeSetSelected(node, true);
+ break;
+ case SEL_DESELECT:
+ nodeSetSelected(node, false);
+ break;
+ case SEL_INVERT:
+ nodeSetSelected(node, !(node->flag & SELECT));
+ break;
+ }
+ }
+}
+
/* ******************************** */
// XXX some code needing updating to operators...