Simply recompute texture context on every redraw, like already done for sbuts->texuser (also called texture context :/ ).
Also allows simplification, buttons_check_texture_context can be merged back into set_texture_context...
Adding only the .svg file, the PNG can make once the multiview branch is merged.
I wanted to commit this to avoid having conflicts in the .svg file if
someone works on new icons too.
The new icon is at X-23
Now also check previous button context, when switching. This way, if the previous one was a texture one, and become valid after the last switch (e.g. a material added to a new object), relevant texture context can still be set.
Note this commit also partially fixes [#35769] The “show texture in texture tab” button in a modifier does not show up until the user manually shows the texture in the Texture tab (full fix of this one will probably implies to always have a valid ButsContextTexture [sbuts->texuser]...).
draw mode open. OpenGL texture free needs to happen in the main thread, but it was
freeing a copy of the image datablock. I can't understand how this code ever worked,
probably it never did.
* [#35724] Backdrop zoom can be set to a very small value, making the backdrop disapear.
There were checks in the drawnode that needed to be placed in the readfile.
The checks checked if the zoomlevel was 0.0, then it was defaulted to 1.0, but the zoomvalue had a minimum limit of 0.01, hence it did not work.
Moved the check to the readfile and checked for all values smaller then 0.02. These values are then reset to 1.0
Jeroen & Monique
- At Mind -
are not an accurate representation of the actual node size which is determined by the uiLayout.
Please note that the dimensions calculation depends on the drawing of nodes, so it may not get updated if nodes are not visible in any editor. Also the node height in particular can change dramatically
based on previews, visible sockets, etc.
Was using edge-slide & remove-doubles but this was error prone since remove doubles could fail in some cases or find doubles where it shouldn't (with very small scale objects).
This gives more predictable behavior when the edges of a loop wouldnt slide (in that case they would just drag over to one of the sides with no user control)
and multiple edge loops work better too. eg:
- http://www.graphicall.org/ftp/ideasman42/edge_loop_del_update.png
- ED_view3d_from_m4() got incorrect rotation from scaled cameras, was noticable with smoothview transitions.
- when you lock the camera to the view, any view edits would reset the cameras scale to 1.
- another problem with view locking if the camera was scaled and had a parent, the parent would be transformed incorrectly.
- fly mode was chaning object scale a little over time, now restore after applying scale so it never changes.