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
AgeCommit message (Collapse)Author
2016-03-16Fix text on collapsed node not positioned correctly with high DPIJulian Eisel
Reported by @JacquesLucke via IRC, thx!
2016-03-02Avoid node tree update tag when changed nodes which are not affecting resultSergey Sharybin
This was we don't have re-compo or viewport re-rendering happening when changing nodes which are not connected to the output at all (for example when adding new nodes or changing settings for unconnected nodes). Only basic operations are covered for now. checks could be added to more tools when needed. Currently it's not fully optimal implementation, but seems to work fast enough. Don't see reliable alternative to that -- keeping tag in the node wouldn't work because of the node groups (which are probably already broken, but should be easy to solve with current approach). So guess it's more matter of optimizing path search from a node to output. Before processing forward let's check whether it's indeed something we want and whether the approach is indeed not fully bad. Reviewers: campbellbarton, mont29 Subscribers: sebastian_k Differential Revision: https://developer.blender.org/D1765
2016-02-10Node Editor: Another missing glLineWidth resetJulian Eisel
Caused too thick outlines around nodes and around preview image in node.
2016-01-23OpenGL: call glLineWidth less oftenMike Erwin
Each LINES draw call is now responsible for its own line width. No need to set it back to its 1.0 default after every draw. This eliminates half our calls to glLineWidth , similar to last week’s work on glPointSize.
2015-11-11Cleanup: replace more direct id->us handling by calls to BKE_library API.Bastien Montagne
2015-08-18Refactor translation code out of blenfontCampbell Barton
- Add blentranslation `BLT_*` module. - moved & split `BLF_translation.h` into (`BLT_translation.h`, `BLT_lang.h`). - moved `BLF_*_unifont` functions from `blf_translation.c` to new source file `blf_font_i18n.c`.
2015-08-01Node Editor: A bunch of new utility functionsJulian Eisel
Needed for node insert offset (Auto-offset in UI), but kept separate so people notice it without having to check insert offset commit (not for commit ratio of course ;) )
2015-05-15Cleanup: style, spellingCampbell Barton
2015-05-12Depsgraph: Add additional relations/id update tagsSergey Sharybin
This calls are not strictly speaking needed for the old dependency graph, but due to more granular nature of upcoming depsgraph more actions requires update of relations of IDs. On the one hand this extra tags could be wrapped with if() statements, but on the other hand it makes sense to keep tag in sync so it's clear if some issue is caused by missing/extra tag or by depsgraph itself.
2015-04-20Cleanup: use bool /w flag checksCampbell Barton
2015-02-02Fix T43501: Crash on custom node tree creationjulianeisel
2015-01-25Fix T43335: Node Editor: name doesn't updatejulianeisel
Update Node Editor info (drawn on the bottom left) on redraw if needed
2015-01-14Fix T43201: Update the "in use" flags of sockets before drawing,Lukas Tönne
so value buttons are displayed when the link is not used.
2014-11-28Cleanup: unused headersCampbell Barton
2014-11-16Cleanup: use BLI_listbase_*** prefix for count,sort,sort_rCampbell Barton
2014-11-11UI Refactor T41640Campbell Barton
Make the UI API more consistent and reduce confusion with some naming. mainly: - API function calls - enum values some internal static functions have been left for now
2014-08-27CleanupCampbell Barton
2014-08-22Fix missing tag for detecting changes with bpy.data.node_groups[...].is_updated.Brecht Van Lommel
2014-06-13Code cleanup: use ED_gpencil_ prefix for grease pencilCampbell Barton
2014-05-03Patch D246: Texture Marks for freestyle strokes, written and contributed by ↵Tamito Kajiyama
Paolo Acampora. Reviewers: brecht, kjym3, #freestyle Reviewed By: brecht, kjym3 Differential Revision: https://developer.blender.org/D246
2014-04-30Code cleanup: remove unused includesCampbell Barton
Opted to keep includes if they are used indirectly (even if removing is possible).
2014-04-27Code cleanup: const args and arraysCampbell Barton
2014-04-21Code cleanup: view2d api namingCampbell Barton
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-03-30Code cleanup: de-duplicate cotangent weight function & add arg sizesCampbell Barton
2014-01-27Code Cleanup: de-duplicate nested node tree checkingCampbell Barton
2014-01-17UI: tweak menu padding and make separator line more visible.Brecht Van Lommel
Adds some padding to the left of the icon, adds more space around the separator line and make it more visible, and add some spacing at the top and bottom of the menu. Ref T37794 Reviewed By: dingto, billrey Differential Revision: https://developer.blender.org/D223
2013-12-09Enhancement: added node colors for every node classJeroen Bakker
In the user preferences all node classes can get its own color The in/out color is splitted into 2 sepatate colors the rna has been updated to better names
2013-11-12Make dynamic node labels possible as a registerable function 'draw_label' ↵Lukas Toenne
(simple 'label' identifier is already in use, need to avoid API breakage). This should simply return a string. The dynamic label can still be overridden by the user-defined node.label string.
2013-11-12Instead of requiring a const char* return from the (optional) node label ↵Lukas Toenne
callback function, let it write into a mutable string buffer. This will allow actual dynamic labels for nodes using the python API.
2013-11-06True grid snapping for nodes: This snaps nodes to the actual background grid ↵Lukas Toenne
instead of using incremental offset (which is not useful for nodes). Increment snapping has been disabled for nodes to avoid confusion, grid snap is now the default as it seems to be the most wanted and easy to use mode. Absolute grid snapping happens in a somewhat generic function 'applyGridAbsolute', which could also be used for objects and other transforms later on. It is conceptually similar to the 'project' snapping option, in that it calculates a delta vector for each element on top of the overall transform, which places each node on the grid. Node transform now uses the top-left node corner for TransformData->loc. The transform center is still the average of node centers, so that scaling and rotation works nicely. snapGrid*** functions have been renamed to snapGridIncrement*** to distinguish better between incremental and absolute grid snapping.
2013-10-10Get rid of the draw_input/draw_output callbacks for nodes. These are pretty ↵Lukas Toenne
useless wrappers around socket draw functions. Only use-case is the File Output node, which draws socket format type instead of an input value. This is now a special case in the standard socket type drawing, but should eventually become a socket type of its own for the File Output node.
2013-10-10Cleanup: Consistent names for draw callbacks in bNodeType.Lukas Toenne
This aims to establish a common pattern for the various confusing draw callback function pointers in bNodeType: draw_<purpose>_<nodetype>[_ex] Currently there are 4 different types of draw callbacks: * draw_nodetype, draw_nodetype_prepare: Main draw functions, allows specialized node drawing for things like frames and reroute nodes. Not exposed in the API. * draw_buttons, draw_buttons_ex: Optional non-socket buttons, most commonly used callback. Extended version used in sidebar for verbose buttons that don't fit into a node. * draw_backdrop: Draw elements in the backdrop (compositor only). Not exposed in the API. * draw_input, draw_output: Specialized socket drawing for some nodes, only for OutputFile node. Should not be used any further and be removed at some point. Not exposed in the API.
2013-10-08uiSetRoundBox still took hard coded numbers in places.Campbell Barton
2013-09-07missing NULL check in recent commit, also skip some calculations in ↵Campbell Barton
mean_value_half_tan functions for degenerate cases.
2013-09-07avoid divide by zeto in node preview drawing.Campbell Barton
2013-09-05Bugfix #35920Ton Roosendaal
Adding a new node in Node Editor failed for "High DPI" (Only Mac retina now). - Py script for adding nodes was doing dpi magic, which it shouldn't. It has been replaced with a (temporary) API call to set the correct cursor location. (Thanks to Lukas T for helping here) - The SpaceNode->cursor[2] property now is *only* storing the coordinate in "adding new node space". Use of this has been removed from the code where possible, with as only exception the code to draw noodles while adding them. Special coder note: Nodes should respect the DPI value, and draw larger with larger buttons if you increase this size. The hack here is that this can only work nice if also the node positions are scaled accordingly. A better fix could be to check on scaling the node view itself for it. That then would also remove this Python API call that was added in this commit. However, that again might fight with how buttons layout code works now... needs some careful checking.
2013-07-19style cleanup: switch statements, include break statements within braces & ↵Campbell Barton
indent. also indent case's within the switch (we already did both of these almost everywhere)
2013-06-25Fix unnecessary 3D viewport redraws in various cases, in particular when editingBrecht Van Lommel
node materials. Area and region listener callbacks now get the screen and area pointers passed, so they can do more fine grained checks to see if redraw is really needed, for example depending on the 3D view drawtype.
2013-05-29Remove the NODE_OPTIONS flag usage from node->typeinfo. This is a redundant ↵Lukas Toenne
flag which can be replaced by simply checking for nodetype->uifunc/uifuncbut callbacks (if these callbacks are defined the node type generally supports options). Note that the node->flag still uses NODE_OPTIONS as a switch to toggle the display of such options!
2013-05-29Reverted a TODO comment from r54429 which disabled the NODE_OPTIONS flag ↵Lukas Toenne
check, so node option buttons could not be disabled at all. This was meant as a workaround to avoid adding do_versions just to set initial NODE_OPTIONS flags on old nodes, but needs a better solution.
2013-05-25use math functions rather then macros for bicubic interpolation.Campbell Barton
2013-05-08Change to socket draw functions: instead of always only drawing the socket ↵Lukas Toenne
label for connected sockets, leave this check up to the socket draw function itself. This allows future socket types to draw buttons or other info in all cases and handle connected/unconnected state more flexibly. The drawinputfunc/drawoutputfunc callbacks in bNodeType are pretty much empty wrappers now and should be removed at some point. This per-node differentiation should rather be implemented as a specialized socket type if necessary. The only use case for this feature that remains is the file output node in compositor, which displays shortened file format info for each socket.
2013-05-08code cleanup: use 'const float[2]' where possible.Campbell Barton
2013-04-25Fix two more high DPI / retina draw issues with running jobs in info header andBrecht Van Lommel
the node tree name in the node editor.
2013-04-25minor fixesCampbell Barton
- build with netbsd works again. - select uv more/less was crashing when called outside image space. - node RNA property update was crashing when not called in node space.
2013-04-24Fix for #34739 and #35060, avoid ambiguity in compositor viewer nodes.Lukas Toenne
The design changes coming with pynodes for the node editor allow editing multiple node groups or pinning. This is great for working on different node groups without switching between them all the time, but it causes a problem for viewer nodes: these nodes all write to the same Image data by design, causing access conflicts and in some cases memory corruption. This was not a problem before pynodes because the editor would only allow 1 edited node group at any time. With the new flexibility of node editors this restriction is gone. In order to avoid concurrent write access to the viewer image buffer and resolve the ambiguity this patch adds an "active viewer key" to the scene->nodetree (added in bNodeTree instead of Scene due to otherwise circular DNA includes). This key identifies a specific node tree/group instance, which enables the compositor to selectively enable only 1 viewer node. The active viewer key is switched when opening/closing node groups (push/pop on the snode->treepath stack) or when selecting a viewer node. This way only the "last edited" viewer will be active. Eventually it would be nicer if each viewer had its own buffer per node space so one could actually compare viewers without switching. But that is a major redesign of viewer nodes and images, not a quick fix for bcon4 ...
2013-04-21Fix for NULL pointer bug, reported by Jens Verwiebe in IRC. ↵Lukas Toenne
ED_node_tag_update_id tries to get a node tree from the active id pointer, but this only works for standard node types, not for pynodes.
2013-04-19UI drawing fix:Ton Roosendaal
Wrongly replaced a "&" with "|" for a define. That made node headers in node editor draw too dark. Also made header for default node not use alpha. In general this drawing is not very good - it gets too transparent and dark. Needs nicer AA function in interface, will be done later.
2013-04-17Fix for #34911, Compositor with multiple views autozooms to node when ↵Lukas Toenne
creating a link. In order to allow node trees have different offsets in different editor instances, the view_center is now stored primarily in the bNodeTreePath struct for each tree in a node space. The view_center in bNodeTree is only used as an initial setting when opening a node group or switching node trees.