Commit Graph

110 Commits

Author SHA1 Message Date
Campbell Barton
acca04bf33 remove narrow ui feature
- re-arranged UI in a way that gave far too much vert scrolling.
- was added all over for simple things like making text="", layout engine should handle this.
- Ton and Brecht are ok with removing this now. Ton would like to work on the layout engine to make it better support these cases.
2010-08-06 15:17:44 +00:00
Campbell Barton
163f6055d2 bugfix [#23182] Using self.report() inside poll() gives crash
poll() function is now a static method in python, this is more correct, matching C where the operator is not created to run poll.


    def poll(self, context): ...

is now...

    @staticmethod
    def poll(context): ...

Pythons way of doing static methods is a bit odd but cant be helped :|

This does make subclassing poll functions with COMPAT_ENGINES break, so had to modify quite a few scripts for this.
2010-08-05 16:05:30 +00:00
Brecht Van Lommel
8b8c280755 Fix #23157: missing sculpt symmetry and appearance panels after python
registration changes.
2010-08-04 15:56:18 +00:00
Campbell Barton
1f77f7b05a Brush/Paint internal changes
- remove brush array for each Paint struct, just use a single brush pointer.
- removed rna function based template filtering.
- filter brushes using a flag on the brush and the pointer poll function.
- set the brushes using a new operator WM_OT_context_set_id().

TODO
- remake startup.blend, currently brush groupings are lost.
- rewrite WM_OT_context_set_id() to use rna introspection.
2010-08-04 12:18:07 +00:00
Martin Poirier
5b345524ea RNA Types metaclass registration
See mailing list posts for details [1][2][3]

Addons still need to be fixed; Campbell said he'd do it today.

See any of the py files (outside netrender) in this commit for how to do it (it's rather simple).

[1] http://lists.blender.org/pipermail/bf-committers/2010-February/026328.html
[2] http://lists.blender.org/pipermail/bf-committers/2010-August/028311.html
[3] http://lists.blender.org/pipermail/bf-committers/2010-August/028321.html
2010-08-02 02:55:12 +00:00
Matt Ebb
eec1318996 Preview commit in sculpt brushes broke resetting curves in other areas (rgb curves etc).
Fixed by adding a 'slope' parameter to curvemap_reset() to mirror curve presets around Y axis.

Also removed curve preset with 'random' icon, wasn't doing what it looked like it should, 
this was intended only for hue correct node anyway.
2010-07-30 00:06:59 +00:00
Jason Wilkins
3c0ed589c1 * moved Threaded Sculpt, Fast Navigate, and Show Brush back to Sculpt Options panel until they are properly moved in memory to the corresponding places they were in the UI.
Fast Navigate apparently needs to be made an option of the multires modifier

Threaded Sculpt and Show Brush need to be made UserPrefs

Some of these options were removed form UserPref panel without placing them anywhere else in the interface so this commit at least puts them somewhere so they can be used.
2010-07-28 07:19:54 +00:00
Nicholas Bishop
88dcfbaee9 == Sculpt ==
Added a brush reset operator so that a user won't need to reload the default blend to get back default brush settings

* New brush.reset operator, resets a brush based on the currently-selected tool
* Added UI button in the tools panel

TODO:
* Only resets sculpt brushes right now, other paint modes should be added
* Sculpt polish tool exists only as a Brush, not as a tool; I'd suggest we make it a tool so it can be reset to defaults too
2010-07-27 16:09:02 +00:00
Jason Wilkins
9941b7d52d * was suggested I combine all the direction modes into a single enumeration by using RNA_def_property_enum_funcs 2010-07-26 05:25:09 +00:00
Nicholas Bishop
ec19c7dffc == Sculpt ==
Fixed brush icons loading slowly

* Changed brush icon property from an enum to a flag that toggles whether a custom file is used for the brush icon
* Changed get_brush_icon to only handle loading external icons, built-ins are handled through the regular icon system
* Modified preview icon drawing to allow built-in icons
* When not using a custom icon, a default icon is selected based on the current tool

TODO:
* Allowing preview to show built-in icons makes the brush texture selector look ugly when nothing is selected. As discussed on IRC though, the nothing-selected state needs to be clarified anyway; I'll address this in another commit
* Use image browser when selecting a custom icon
* Selecting the default icon is ugly (uses the active object's mode), this can be fixed by making brushes know which paint mode they are part of
2010-07-26 04:00:09 +00:00
Luca Bonavita
0eca3db6c5 - typo: from "lenght" to "length" in rna
fixes [#22997] typo in autocomplete/python api name in bpy.context.active_object.data.draw_edge_lenght not length
  https://projects.blender.org/tracker/index.php?func=detail&aid=22997&group_id=9&atid=498
  no addons are affected by this change

- also found a typo in particles toolbar
2010-07-24 16:35:58 +00:00
Jason Wilkins
3b5b761a56 == Sculpt/Paint Fixes ==
* Fix: unify strength and size did work consistently with other paint modes
* Fix: If [ and ] keys were used to resize a brush it was not possible to increase the size of the brush if it went under 10 pixels
* Fix: Made interpretation of brush size consistent across all modes, Texture/Image paint interpreted brush size as the diameter while all the other modes interpret it as radius
* Fix: The default spacing for vertex paint brushes was 3%, should be 10%
* Fix: due to fixes to unified strength, re-enabled 'Unify Size' by default
* Fix: Unified size and strength were stored in UserPrefs, moved this to ToolSettings
* Fix: The setting of pressure sensitivity was not unified when strength or size were unified.  Now the appropriate pressure sensitivity setting is also unified across all brushes when corresponding unification option is selected
* Fix: When using [ and ] to resize the brush it didn't immediately redraw
* Fix: fkey resizing/"re-strength-ing" was not working consistently accross all paint modes due to only sculpt mode having full support for unified size and strength, now it works properly.
* Fix: other paint modes did expose the ability to have a  custom brush colors, so I added the small bit of code to allow it.  Note: I made all of the other paint mode brushes white.  Note2: Actually, probably want to make the paint modes use the selected color for painting instead of a constant brush color.
* I had removed OPTYPE_REGISTER from some Sculpt/Paint operators but in this commit I add them back.  I'm not completely sure what this option does so I don't want to disturb it for now.
2010-07-22 18:56:46 +00:00
Jason Wilkins
e3ad451ae1 * closed small gap at top of appearance panel 2010-07-21 11:58:23 +00:00
Jason Wilkins
886ce5a351 * can use file for brush icon
* fixed memory leaks
* moved some of the brush icon code around
* the update of the icon after a change is more responsive
2010-07-20 13:42:27 +00:00
Jason Wilkins
b618a335f5 * Made the default sculpt icons an internal part of the executable
* Default icons can be selected from a menu
* Option to make a custom icon from a file is present but the UI is disabled because of a mysterious crash
* New startup.blend that has the appropriate icons selected
2010-07-20 11:32:30 +00:00
Jason Wilkins
80e6323646 * Images for brush icons are now reloaded when they are needed from an external file
* First, try to load the file from the given filename.  This is either absolute or relative to the current .blend
* If file is found using the given filename directly then look for the file in the datafiles/brushicons directory (local, user, or system).

* Note: This commit does not update the .blend to reference the default icons
* Note: This commit does not make sure that the build system copies the default icons to the 2.52/datafiles/brushicons directory
2010-07-20 02:18:10 +00:00
Jason Wilkins
7b1aeea029 * spelling error, "substract" 2010-07-19 07:26:41 +00:00
Jason Wilkins
5505697ac5 Merge GSOC Sculpt Branch: 28499-30319
https://svn.blender.org/svnroot/bf-blender/branches/soc-2010-jwilkins
See log of that branch for details.
2010-07-14 14:11:03 +00:00
Campbell Barton
d9f86e3c73 pedantic pep8 warnings, mostly white space. 2010-07-05 22:22:22 +00:00
Luca Bonavita
6a1d8d8e04 Origin button in the toolshelf
Minipatch to add the Origin button in the Toolshelf in the Transform section.
I missed this because
1) it was called "center" in 2.4 and it's difficult to find just searching if you don't know it's "origin"
2) it was in the the object » transform menu, not very practical to use often
Discussed with Gensher, Campbell and Matt before committing :)
2010-06-22 00:08:05 +00:00
Campbell Barton
c2f36a4d6a naming changes
path -> filepath (for rna and operators, as agreed on with elubie)
 path -> data_path (for windowmanager context functions, this was alredy used in many places)
2010-06-14 03:52:10 +00:00
Matt Ebb
b9d60f2010 Fix [#21440] Bug or loose feature? Texture painting brushes
Removed extra brush features that aren't applicable in some painting modes from the UI.
Would be great to have this properly cleaned up and made consistent.

Also tweak to startup blend, hiding brush tools panel.
2010-04-06 05:52:52 +00:00
Campbell Barton
bc149e0fbe pep8 cleanup 2010-04-04 14:52:15 +00:00
Janne Karhu
371732154b Fix for child drawing bug reported in the comments of [#21103] Updating bugs in Particle Mode 2010-03-22 19:38:40 +00:00
Janne Karhu
867cad85b7 Fix for [#21103] Updating bugs in Particle Mode 2010-03-22 17:12:08 +00:00
Brecht Van Lommel
09b1c681e1 Sculpt Mode Bugfixes:
* #20833: layer brush doesn't work with multires.
* #20946: sculpt mode partially removes parts of the mesh in the viewport.
* #20420: grab brush stops after moving some distance.
* #20906: sculpt grab tool moves in wrong direction.
* #21132 and #21272: undo on object with subdivision surface modifier crashes.
* #21115: subsurf + multires + sculpting + undo causes crash.
* #20683: sculpt + multires apply + undo crash.
* #19094: wrong outline in solid mode.
2010-03-22 11:59:36 +00:00
Brecht Van Lommel
391526c20e option to lock alpha while projection painting.
(commit 27538 by Campbell from render25 branch)
2010-03-16 18:05:53 +00:00
Brecht Van Lommel
ecb35d463b made re-project UI less confusing
(commit 27457 by Campbell from render25 branch)
2010-03-16 17:45:01 +00:00
Campbell Barton
f8a4683b72 pep8 warnings 2010-03-14 23:26:17 +00:00
Thomas Dinges
b89428ec4d Fixing a part of [#21516]. Curve preset menu doesn't appear to be a menu.
Converted to Operator Buttons. Fits well into the toolbar, lets hope, we won't get more presets. ;)
2010-03-14 13:07:13 +00:00
Campbell Barton
b356eb6a8b image re-project now uses offscreen render function and has input for render size.
unrelated changes that ended up being more trouble to commit separate...

- removed BLI_split_dirfile(), was nasty, occasionaly modifying the source string, it could create directories and used the $CWD in some cases. was only used in 2 places in filesel.c, if this gives problems can address without bringing back this function.
  renamed BLI_split_dirfile_basic --> BLI_split_dirfile

- view3d_operator_needs_opengl was being called for offscreen render when it wasnt needed.
2010-03-08 20:08:04 +00:00
Campbell Barton
3838b80cf1 re-project + gimp integration, now its easy to edit the view in the gimp and apply the projection back without manually opening and saving files. 2010-03-06 21:47:16 +00:00
Campbell Barton
b1a05da291 re-project: operators for projecting from a view screenshot rather then a camera.
- new mode for projecting an image with the view matrix saved in the image id-properties rather then using the camera matrix.
 - operator to screenshot the view and create a new image with the view matrix stored in the image.

these will be used for better re-project integration and are not immediately very useful.
2010-03-06 19:46:21 +00:00
Campbell Barton
7c0d2ffb64 pep8 cleanup 2010-03-06 01:40:29 +00:00
Campbell Barton
94d5b31b9d reproject operator, use to reproject edited renders back into textures.
- uses project paint options (UV bleed, normals, culling)
- bicubic interolation from the image
- multithraded

TODO.
project into multiple objects at once.
2010-03-05 18:19:32 +00:00
Campbell Barton
97bdfe6f1b pep8 cleanup + correction for external player operator return value. 2010-02-22 23:32:58 +00:00
Campbell Barton
c72ab0a39e topology based mirror, (from apricot branch)
- correct errors with non-mirrored meshes
- mirror weight paint on asymmetrical meshes
2010-02-17 19:50:42 +00:00
William Reynish
c011bbbdb9 Added separate entries for Extrude Region and Extrude Individual in the mesh toolbar. 2010-02-17 09:33:58 +00:00
Campbell Barton
23efeff6a9 [#21177] Text editor
Running scripts directly didnt call the register function, even though this is not essential its good to be able to run a script directly and see changes in the UI.
2010-02-16 09:55:07 +00:00
Campbell Barton
39c04315e2 change python scripts so modules which register with blender have a register() function rather then making import automatically run the register functions (generally considered bad practice by python people) 2010-02-14 11:21:21 +00:00
Campbell Barton
081c1205a3 correct fsf address 2010-02-12 13:34:04 +00:00
Campbell Barton
52b1c37645 [#21039] OBJ import Clamp Scale limited to .01 as lowest Value. Used to be Zero
[#21053] 2.5alpha0 export obj problem
+ some minor changes.
2010-02-09 19:22:57 +00:00
Campbell Barton
f082c7be05 add access to edge select tagging from mesh toolbar (tagging seams on Ctrl+RMB) 2010-02-09 15:48:34 +00:00
Martin Poirier
46b0e90cf6 Mesh Extrude menu
Todo for Campbell: 
- Make menu context sensitive
- Make menu automatically run the operator if there is only one option


Note: Saved configurations and keymaps with references to "Extrude and Move" operator needs to be updated to either call the menu or one of the new extrude macros.
2010-02-01 18:30:00 +00:00
Campbell Barton
95069f2909 pep8 changes 2010-01-31 14:46:28 +00:00
Matt Ebb
02ca0fda8e Moved the image paint tool and the vertex/weight paint tool (blend mode?)
to the Brush data. This now works the same way as sculpt, with named 
preset brushes that retain settings.
2010-01-20 08:30:40 +00:00
Campbell Barton
b8d743c9c6 particle puff, volume option.
When combing long hair  it will often end up with no volume (flat on the head like its wet).
a way to fix this is to use the puff tool however when applied points at the root only this just gives a bit of volume at the roots and the rest of the hair stays flat.
 
This option moves the unselected parts of the hair without applying the puff tool to them, giving volume to the hair whilst preserving the desired style.
2010-01-12 16:35:34 +00:00
Campbell Barton
40e9b1711b bugfix [#20627] Sculting - Mesh without faces crashes
fix own error in py ui also
2010-01-10 10:20:44 +00:00
Campbell Barton
08c9ecb3b0 RNA/Py API
change how data is added. eg.
 bpy.data.add_mesh(name) --> bpy.data.meshes.new(name)
 bpy.data.remove_lamp(lamp) --> bpy.data.lamps.remove(lamp)


image and texture stil use add_* funcs
2010-01-09 23:44:01 +00:00
Matt Ebb
cf9b728c6a Color Picker work:
Restored the old Eyedropper tool from the 2.4 colour picker. Now it's an operator, 
working nicely using rna properties (fixes #19475 and some todo items)

This ended up being a bit more work than expected, it involved converting the 
colour picker to use RNA properties directly, rather than temporary values. This has 
several advantages, including being able to type in RGB values greater than 1, 
however there are still some redraw issues with sliders.

Also removed the alternate color pickers after this time spent testing, the current one 
should be sufficient, or alternatives to the wheel can possibly become preferences 
in the current design.

Converting the picker to RNA also made it very trivial to make a cool new 
ColorWheel template, which can be embedded in UI layouts. I've enabled it already 
in texture/vertex paint brush properties and the sequence editor color correction:
http://mke3.net/blender/devel/2.5/colorwheels.jpg
2010-01-07 09:55:11 +00:00