Commit Graph

1636 Commits

Author SHA1 Message Date
Bastien Montagne
113997a03c Last uiList patch (for now!): filtering and reordering of shown elements.
Thanks to Brecht for the reviews. :)

This commit adds a show/hide extension below each uiList, containing by default an option to filter and/or reorder items by name (and to reverse those filtering and reordering).

Each derived uiList class in Python can define more specific filtering by implementing callbacks: the draw_filter() function to draw options in UI, and the filter_items() function to effectively filter/reorder items.

Note: the advanced options for vgroups shown as "proof od concept" in patches do not go in trunk for now, we have to find a better way to get those vgroups info for UI code, we can't afford to loop over each vertex here!

And doc (release notes and uiList example) is still to be updated, will do this in next days.
2013-08-29 12:55:31 +00:00
Campbell Barton
95fcf02500 patch [#36336] Split operator for curves and surfaces
by Kevin Mackay (yakca)

The operator follows roughly the same behaviour as the split operator for a mesh (Ykey).
2013-08-29 02:32:51 +00:00
Lukas Toenne
562313bfd3 Fix for #36589 Node Editor displays incorrect Material name when Pinning.
The material button displayed in the node editor header is the "active_material" of the active object. When pinning the node tree this should ideally be the pinned node tree's material slot, but this
would require adding even more confusing info in SpaceNode to find the correct slot in addition to the id_from datablock. Solution for now is to just disable these buttons when pinning to communicate
better.
2013-08-28 09:05:09 +00:00
Lukas Toenne
771906bc09 Fix for #36387, User Preferences "Addons" panel bogs down the whole interface.
The addons panel draw function calls addon_utils.modules() which in turn retrieves a list of fake modules from the script paths every time. This can become costly when network paths are included for
addons. Solution is to put the scanning process into a dedicated "refresh" function and disable it in frequently called draw and filter functions, i.e. in these cases the cached addons_fake_modules list
will be used instead.

Note that this may lead to invalid addon lists if script paths are changed (which is not working 100% without restart anyway according to Campbell). For this there is now a "Refresh" operator button in
the addons preferences. If necessary and feasible such forced refreshes can be added later too.
2013-08-28 06:36:54 +00:00
Tamito Kajiyama
6c14f641f3 Partial revert of UI appearance changes in r52778 in the Strokes tab of the Freestyle Line Style panel. 2013-08-25 16:29:10 +00:00
Bastien Montagne
5b83a89c81 Followup to r59434 : py UI scripts edits.
Notes:
* Made those edits by full checking of py files, so I should have spoted most needed edits, yet it remains quite probable I missed a few ones, we'll fix if/when someone notice it...
* Also made some cleanup "on the road"!
2013-08-23 20:41:21 +00:00
Campbell Barton
c752346cfa new mesh bisect tool, available in the mesh menu.
cuts the mesh in half based on the cursor location and the viewport,
optionally supports filling the cut area (with uvs. vcols, etc),
and removing geometry on either side of the cut.
2013-08-23 11:46:08 +00:00
Sergey Sharybin
9f72bf7865 Tracking cleanup
- Collapse plane track panels by default
- Hide 3D markers when in mask edit mode
- Remove alpha from mask layers list

Discussed with Sebastian and Roman.
2013-08-23 09:40:42 +00:00
Sergey Sharybin
400bd9bfba MCE: usability improvement
Align Clear Before/After into a row and remove
Clear button (which wasn't actually used by
artists).
2013-08-19 11:24:35 +00:00
Bastien Montagne
b9f78815f1 Fix [#36423] Audio strips contain selectable (visual) blend modes and opacity value
Simply hide blend type and opacity for SOUND strips!
2013-08-18 15:48:51 +00:00
Campbell Barton
0f07ca6809 remove unused args from edgenet fill (since rewrite, but they weren't used before either) 2013-08-17 09:25:12 +00:00
Sergey Sharybin
24ce60cfe4 Merge plane track feature from tomato branch
This commit includes all the changes made for plane tracker
in tomato branch.

Movie clip editor changes:

- Artist might create a plane track out of multiple point
  tracks which belongs to the same track (minimum amount of
  point tracks is 4, maximum is not actually limited).

  When new plane track is added, it's getting "tracked"
  across all point tracks, which makes it stick to the same
  plane point tracks belong to.

- After plane track was added, it need to be manually adjusted
  in a way it covers feature one might to mask/replace.

  General transform tools (G, R, S) or sliding corners with
  a mouse could be sued for this. Plane corner which
  corresponds to left bottom image corner has got X/Y axis
  on it (red is for X axis, green for Y).

- Re-adjusting plane corners makes plane to be "re-tracked"
  for the frames sequence between current frame and next
  and previous keyframes.

- Kayframes might be removed from the plane, using Shit-X
  (Marker Delete) operator. However, currently manual
  re-adjustment or "re-track" trigger is needed.

Compositor changes:

- Added new node called Plane Track Deform.

- User selects which plane track to use (for this he need
  to select movie clip datablock, object and track names).

- Node gets an image input, which need to be warped into
  the plane.

- Node outputs:
  * Input image warped into the plane.
  * Plane, rasterized to a mask.

Masking changes:

- Mask points might be parented to a plane track, which
  makes this point deforming in a way as if it belongs
  to the tracked plane.

Some video tutorials are available:
- Coder video: http://www.youtube.com/watch?v=vISEwqNHqe4
- Artist video: https://vimeo.com/71727578

This is mine and Keir's holiday code project :)
2013-08-16 09:46:30 +00:00
Miika Hamalainen
91d148b891 Dynamic Paint: Added a new "smoothness" parameter for waves.
It greatly helps getting rid of that "noise" that occurs if you use really steep objects (like cubes) as a brush. New default value is 1.0 which is just high enough to only get rid of the sharpest spikes, so if you want really smooth waves it's better use higher values.

This also seems to "fix" bug [#35413].
2013-08-03 09:46:38 +00:00
Thomas Dinges
6c5a4aedc2 Fix for [#36321] 'Mark Freestyle Edge' still showing with Cycles renderer
* Now we hide Freestyle properties when "use_shading_nodes" is true.
2013-07-30 09:00:31 +00:00
Mitchell Stokes
29f8dfd37a BGE: Adding vsync control. Users can enable vsync, disable vsync, or use adaptive vsync via UI options in the render properties, or by using the new Python method bge.render.setVsync(). Win32 and X11 support are done via EXT_swap_control. Support for using EXT_swap_control on OS X still needs to be added to Ghost. 2013-07-29 22:31:32 +00:00
Thomas Dinges
46ad9b6b47 UI / Code:
Cody style changes for r58692.
* First of all, UI code is really simple, especially in such small panels, no need to comment obvious things like left/right column.
* "if 1" nested structs for code clarity? That's a really bad thing, especially if you have 3  lines which belong together, but only 2 of them are indented...

    sub = row.row()
    sub.active = obj.show_bounds
sub.prop(obj, "draw_bounds_type", text="")

* Empty line after layout = self.layout declarations, we still follow these Rules.
http://wiki.blender.org/index.php/Dev:2.5/Py/Scripts/Guidelines/Layouts

Thanks!
2013-07-28 22:12:19 +00:00
Campbell Barton
4f02555004 new mesh tool for cleaning up meshes, splits up non-planar faces while they exceed a given angle threshold
(access from the 'Mesh -> Clean' menu).
2013-07-28 19:53:46 +00:00
Campbell Barton
46aea9c0c8 patch [#36296] object->display-properties subpanel layout cleanup
from David Jeske (jeske), with minor edits of my own.
2013-07-28 11:43:11 +00:00
Campbell Barton
4bc32d5ded mesh tool to fill in holes, added in mesh clean menu,
unlike other face creation tools it copies data from surrounding faces.
2013-07-25 18:43:05 +00:00
Campbell Barton
df0114a17a curve only supported radius smoothing, add smooth for tilt and weight. 2013-07-24 14:30:45 +00:00
Campbell Barton
576161b186 fix [#36262] Paste strip with video or sound content from another file crashes Blender
existing code was very stupid.

- all ID pointers for clipboard strips are handled uniformly.
- clipboard stores a duplicate ID pointer which are restored on paste.
- restoring pointers...
-- use ID's that are still in the database (copy&paste within the same file).
-- fallback to name lookup.
-- fallback to loading them from the original filepath (movie-clip and sound only).

also fix bug pasting where initialing the sound wasn't done if there was no frame-offset.
2013-07-24 06:51:04 +00:00
Campbell Barton
f77405356a remove use_relative option from simple deform,
all modifiers should be using object transformations relatively.
2013-07-23 19:31:49 +00:00
Campbell Barton
4d47f5fe05 snap to cursor (offset option) added for UV's too. 2013-07-21 16:45:38 +00:00
Campbell Barton
7233f22e21 add new snap option: 'Selection to Cursor (Offset)',
rather then moving everything into the cursor location, the current selection centers around the cursor, maintaining their relative distances.
works for mesh, object, pose bones etc.
2013-07-20 17:12:33 +00:00
Campbell Barton
49c61e169b misc edits
- fix for missing None check with recent 'Hidden Wire' draw option.
- avoid int overflow with mesh selection.
- remove ';' outside of functions.
2013-07-20 15:07:57 +00:00
Sv. Lockal
8ff67f12c7 Fix descriptions for mask selection operators and use less ambiguous "letter-spacing" term 2013-07-20 12:24:53 +00:00
Sv. Lockal
3de1458cdf Select more/less tool for mask splines 2013-07-20 10:24:16 +00:00
Campbell Barton
32f3771d0b hidden wireframe option for mesh editmode, important for retopology mode (can be used with xray). 2013-07-20 03:51:49 +00:00
Campbell Barton
2dc6b22382 patch [#35789] Quick hack select more/less tool for armatures
by Pedro Riera (priera), Andrey Dubravin and parts rewritten by myself.
2013-07-19 10:51:54 +00:00
Campbell Barton
df299ab500 patch [#36032] Quick Hack lattice random selection
by Andrey Dubravin (daa)
2013-07-19 10:44:39 +00:00
Campbell Barton
b2b6d56443 move keymap ui into modules, its not loaded on startup anymore. 2013-07-08 22:57:51 +00:00
Campbell Barton
8a388a7bef fix [#36043] Missing Tooltip for Excluded Paths field of Auto Run Python Scripts in User Preferences -> File
also select more/less were flipped for mesh menu compared to everywhere else.
2013-07-08 07:40:32 +00:00
Campbell Barton
2c87b88180 re-arrange space_userpref_keymap, no need to use a subclass here, just import the module and call draw_keymaps().
- making this change now because some addons developers are interested in showing keymap UI in their addons prefs and using the class involved making a fake class instance which isnt needed.
2013-07-08 07:25:33 +00:00
Brecht Van Lommel
1268eda19b Fix #35994: shape key mirror without topology did not properly work after
doing mirror with topology.
2013-07-04 11:37:32 +00:00
Campbell Barton
75aed60ed8 remove checks for active object in the weight panel, this is incorrect for weight transfer and we better rely on operators poll functions. 2013-07-03 21:07:41 +00:00
Gaia Clary
bce00b605c Weight Paint: Enable Transfer Weights tool for Obejcts with no Vertex Groups 2013-07-03 15:57:30 +00:00
Campbell Barton
b96aa8800e bump up openmp limit for release,
also remove 'Vertex ' prefix for items in the vertex menu.
2013-07-02 04:34:39 +00:00
Joshua Leung
4f3f95751a Bugfix [#35936] Can't create new vertex group when using Ctrl G menu
This was caused by r.57812

There were two problems here:
  1) vertex_group_vert_select_unlocked_poll()  had faulty logic which meant that
it always failed when there were no vgroups present yet - the final return
always just fell through
  2) Since the "Assign to New Groups" option was actually implemented using the
same operator as "Assign to Active Group" (just with an extra parameter set), if
the active group was locked, it was not possible to "Assign to New Group" (even
though a new group would not be locked).
2013-07-01 13:02:53 +00:00
Brecht Van Lommel
77e0709e48 Fix #35551: the topology mirror setting affected shape key and vertex group but
this was confusing as there was no setting visible for it. Now these menus
contain an entry to mirror without and with topology mirror.
2013-06-28 17:13:09 +00:00
Gaia Clary
e5ff9cced4 weight Paint: moved Auto Normalize and Multipaint options below Blend selector 2013-06-28 17:10:25 +00:00
Thomas Dinges
ee85587a43 Blender 2.68 Release maintenance:
* Update readme and release-log links to 2.68.
2013-06-27 11:30:53 +00:00
Campbell Barton
3ff36f928c 3d text tool - 'insert lorem' was crashing, also add this to the text menu. 2013-06-27 04:18:01 +00:00
Campbell Barton
2085a42e52 pep8 cleanup 2013-06-27 03:05:19 +00:00
Gaia Clary
47cfdc4494 Fixed operator call (due to renamed operator parameter) 2013-06-25 22:58:45 +00:00
Campbell Barton
23c053748d add missing notifiers for mask tools, some wouldn't refresh the compositor. 2013-06-23 15:48:00 +00:00
Campbell Barton
219f3ea85d mask menus were missing from the image editor. 2013-06-23 15:12:26 +00:00
Campbell Barton
c6adbe794e comment the icon file from the theme buttons since its not working. 2013-06-22 18:08:58 +00:00
Campbell Barton
c721d82f25 move sort from vert/edge/face into mesh menu only (sorting isn't such a common operation).
correct own recently added assert.
2013-06-20 19:09:18 +00:00
Campbell Barton
2dc88ca338 support proportional editing with x-mirror enabled. 2013-06-20 18:19:42 +00:00
Campbell Barton
c00b408052 Snap to Symmetry (editmesh tool)
Update from a script I had in 2.4x, useful if you have mesh data which is _almost_ symmetrical,
there was no good way to automatically make the minor adjustments to make the mesh fully symmetrical.

Options for...
- symmetry-axis.
- blending between the +/- side.
- center mid verts.

Access from Mesh menu.
2013-06-19 21:35:06 +00:00