Commit Graph

249 Commits

Author SHA1 Message Date
Campbell Barton
b9d99b9c5b apply all rna naming changes for rna_space.c 2010-08-17 07:49:53 +00:00
Campbell Barton
556b615cf8 mathutils module methods only contained matrix constructors, move these to matrix class methods since this is acceptable in python. eg: dict.fromkeys() and groups them more logically.
mathutils.RotationMatrix -> mathutils.Matrix.Rotation
 mathutils.ScaleMatrix -> mathutils.Matrix.Scale
 mathutils.ShearMatrix -> mathutils.Matrix.Shear
 mathutils.TranslationMatrix -> mathutils.Matrix.Translation
 mathutils.OrthoProjectionMatrix -> mathutils.Matrix.OrthoProjection
2010-08-11 16:40:36 +00:00
Campbell Barton
d739a1788d small edits to text editor from writing a python editor extension.
- rename TextLine.line -> body, ConsoleLine.line -> body
- minor speedups when setting the body text, also re-allocate console lines if they are < half the length.
- added option to highlight current line in the text editor.
2010-08-11 05:21:43 +00:00
Campbell Barton
a6f13f9d7b poll() as a python '@staticmethod' was too limiting and didnt allow useful base class poll functions in many cases.
now rna functions that dont have a 'self' are automatically assumed '@classmethods'.

de-duplicated poll functions and made some minor tweaks too.
2010-08-09 01:37:09 +00:00
Campbell Barton
30d180ff0d bugfix [#23194] export UVs miss the extension file
also made all other exporters do this.

Made some internal changes.
- moved path functions from bpy.utils to bpy.path (similar to os.path)
- added functions...
  bpy.path.ensure_ext(path, ".ext", case_sensitive=False) # simple function to ensure the extension is set.
  bpy.path.resolve_ncase(path) # useful for importing scenes made on windows where the path case doesnt match the files.
2010-08-06 01:40:54 +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
Campbell Barton
4906290f0d rewrote wm.context_set_id() to automatuically match the pointer type with the bpy.data.* iterator by inspecting rna. 2010-08-04 13:59:25 +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
Campbell Barton
33a6ba99ca exit image externally wasnt checking if the image existed first. 2010-08-03 23:02:18 +00:00
Campbell Barton
233df907d0 py/rna update, reload works again.
- fix for reload (f8) crashing, missing incref when creating the script namespace.
- store the module names rather then the modules for reloading incase the modules get out of date.
2010-08-03 03:53:36 +00:00
Campbell Barton
c475f38239 bugfix for python console getting its namespace cleared after the first command was executed. 2010-08-03 02:10:28 +00:00
Martin Poirier
15e4753396 [#23156] Cannot Edit Custom Properties
Missing import after moving operators around.
2010-08-02 22:52:55 +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
Campbell Barton
2e7c8bbeec fix for py console autocomp. need to swap out __main__ module there too. 2010-08-01 22:54:39 +00:00
Nathan Letwory
11b140fb3a patch [#23110] isolate render type UI labelling + operator to clear all hide render flags in scene by Peter Schulman 2010-07-30 23:25:26 +00:00
Campbell Barton
88cbcb0206 bugfix [#23062] Resolve conflict button in text editor dissappers in Blener 2.5 beta release
also uncommented console some code for testing by mistake & remove warning.
2010-07-29 00:44:53 +00:00
Campbell Barton
fe77e6d919 minor changes to r30843
- the __main__ modules namespace was initialized cleanly but left dirty, now restore when finished executing a script incase a module uses this later.
- made the interactive console use the __main__ modules namespace.
2010-07-28 23:24:17 +00:00
Campbell Barton
dcb644af0d bugfix [#22605] Context auto-compleate fails first time 2010-07-27 00:38:00 +00:00
Campbell Barton
9a0e0027f8 fix for error in select hierarchy if no children exist. 2010-07-23 05:49:12 +00:00
Peter Schlaile
aa0e4277a2 == Sequencer ==
In multicam editing, do not cut to non existent cams (above multicam 
track)
2010-07-19 17:39:25 +00:00
Campbell Barton
fd31436897 spelling correction: alredy --> already 2010-07-17 18:08:14 +00:00
Campbell Barton
02da5ecfed Apply first pass of edits to rna values from rna_booleans.txt.
These are not animated and are best not change names like this too late in the release.

ActionGroup.selected -> select:    boolean    Action Group is selected
BezierSplinePoint.hidden -> hide:    boolean    Visibility status
BezierSplinePoint.selected_control_point -> select_control_point:    boolean    Control point selection status
BezierSplinePoint.selected_handle1 -> select_left_handle:    boolean    Handle 1 selection status
BezierSplinePoint.selected_handle2 -> select_right_handle:    boolean    Handle 2 selection status
Bone.restrict_select -> hide_select:    boolean    Bone is able to be selected
Bone.selected -> select:    boolean
CurveMapPoint.selected -> select:    boolean    Selection state of the curve point
EditBone.restrict_select -> hide_select:    boolean    Bone is able to be selected
EditBone.selected -> select:    boolean
EditBone.selected_head -> select_head:    boolean
EditBone.selected_tail -> select_tail:    boolean
EditBone.locked -> lock:    boolean    Bone is not able to be transformed when in Edit Mode
EditBone.hidden -> hide:    boolean    Bone is not visible when in Edit Mode
NEGATE * FCurve.disabled -> enabled:    boolean    F-Curve could not be evaluated in past, so should be skipped when evaluating
FCurve.locked -> lock:    boolean    F-Curve's settings cannot be edited
FCurve.muted -> mute:    boolean    F-Curve is not evaluated
FCurve.selected -> select:    boolean    F-Curve is selected for editing
NEGATE * FCurve.visible -> hide:    boolean    F-Curve and its keyframes are shown in the Graph Editor graphs
FCurveSample.selected -> select:    boolean    Selection status
GPencilFrame.selected -> select:    boolean    Frame is selected for editing in the DopeSheet
GPencilLayer.locked -> lock:    boolean    Protect layer from further editing and/or frame changes
GPencilLayer.selected -> select:    boolean    Layer is selected for editing in the DopeSheet
Keyframe.selected -> select:    boolean    Control point selection status
Keyframe.selected_handle1 -> select_left_handle:    boolean    Handle 1 selection status
Keyframe.selected_handle2 -> select_right_handle:    boolean    Handle 2 selection status
MeshEdge.selected -> select:    boolean
MeshEdge.hidden -> hide:    boolean
MeshFace.hidden -> hide:    boolean
MeshFace.selected -> select:    boolean
MeshVertex.hidden -> hide:    boolean
MeshVertex.selected -> select:    boolean
MotionPathVert.selected -> select:    boolean    Path point is selected for editing
NlaStrip.selected -> select:    boolean    NLA Strip is selected
NlaTrack.locked -> lock:    boolean    NLA Track is locked
NlaTrack.muted -> mute:    boolean    NLA Track is not evaluated
NlaTrack.selected -> select:    boolean    NLA Track is selected
Object.restrict_render -> hide_render:    boolean    Restrict renderability
Object.restrict_select -> hide_select:    boolean    Restrict selection in the viewport
Object.restrict_view -> hide:    boolean    Restrict visibility in the viewport
Object.selected -> select:    boolean    Object selection state
ObjectBase.selected -> select:    boolean    Object base selection state
PoseBone.selected -> select:    boolean
Sequence.right_handle_selected -> select_right_handle:    boolean
Sequence.selected -> select:    boolean
SplinePoint.selected -> select_control_point:    boolean    Selection status
TimelineMarker.selected -> select:    boolean    Marker selection state
Sequence.left_handle_selected -> select_left_handle:    boolean
ActionGroup.locked -> lock:    boolean    Action Group is locked
Bone.hidden -> hide:    boolean    Bone is not visible when it is not in Edit Mode (i.e. in Object or Pose Modes)
SplinePoint.hidden -> hide:    boolean    Visibility status
FModifier.muted -> mute:    boolean    F-Curve Modifier will not be evaluated

 note: rebaned uv_select to select_uv
2010-07-15 16:56:04 +00:00
Campbell Barton
7f083c45be use dict comprehension where possible 2010-07-15 00:52:26 +00:00
Campbell Barton
8e3a9634a3 Change to text3d: When back or front is enabled, the bevel rim on the other side is not created anymore, just as the back/front filling faces are not created when disabled.
when both are off the behavior is unchanged.

This is needed when rendering alpha text so its possible to have a single layer of faces but use the bevel option to make text thicker.
adding a rim on the back when back is disabled also doesnt make much sense IMHO.

minor python edits too.
2010-07-14 17:47:58 +00:00
Campbell Barton
80355fd456 bugfix [#22843] Cannot export to folder with ".blend" on the end. 2010-07-14 11:58:19 +00:00
Campbell Barton
a305a72939 select parent/child now works for multiple selections ([/] keys) 2010-07-14 09:40:26 +00:00
Campbell Barton
3580d6229a - text3d was missing menu items for toggling bold/underline/italic/smallcaps.
- made smallcaps use a temp flag so caps can still have the smallcaps flag.
- utility function for getting the char from a font. find_vfont_char(), was inline in ~5 places.
- removed CU_STYLE mix of flags only used in one place, not needed. removed 'style' from rna too.
- fix for some warnings.
2010-07-13 23:51:21 +00:00
Campbell Barton
3b81c67353 - presets were not being written with 'import bpy' at the start.
- attribute save_keyconfig defaulted to True when unset, not sure why, but .
- use repr() rather then str() so strings are quoted without manually checking. also converts less common chars properly \m \" etc.
2010-07-12 18:15:48 +00:00
Campbell Barton
d9f86e3c73 pedantic pep8 warnings, mostly white space. 2010-07-05 22:22:22 +00:00
Campbell Barton
8e97e561a9 convenience functionality for browse button (requested by Colin for the sequence editor, useful for managing files for the final edit)
- Holding Alt while clocking on the browse button opens a file browser with the containing dir.
- Holding Shift opens the file its self in the default application.

obscure but at least theres a tooltip so its not totally hidden.
2010-07-04 10:02:30 +00:00
Campbell Barton
9a85435e96 rna api:
rename object.matrix --> matrix_world
added object.matrix_local (parent relative matrix)
2010-07-03 17:39:29 +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
Campbell Barton
1022ec3fe4 clear python console namespace when used with a new window manager, otherwise old python objects are kept around between opening different blend files (leaking memory).
ideally loading a new file would clear the namespace but practically its unliekly to be a problem.
2010-06-10 21:31:39 +00:00
Campbell Barton
1028284301 pep8, whitespace edits 2010-06-09 19:12:03 +00:00
Campbell Barton
9cbbc9d3af rename some rna properties filename --> filepath
* filename == "foo.ext"
 * filepath == "/path/to/and/including/foo.ext"

this was alredy followed in some places not not everywhere.
2010-06-02 17:58:28 +00:00
Campbell Barton
ed3a7bd299 script reload (f8), is closer to working.
there are internal memory problems which can make it crash still.
If you remove all directories in the scripts folder except for 'modules' and 'ui', it runs without crashes.
2010-06-01 08:15:43 +00:00
Thomas Dinges
ccda04131a Python Open Link operator.
* Unified some code for Opening an URL to use only one operator: WM_OT_url_open
* Removed the HELP_OT_url operators.
2010-05-31 11:38:13 +00:00
Peter Schlaile
b8f3a1f4fe == Sequencer ==
Current SVN crashes, if we are using hard-cuts on multicam tracks. Changing to soft cuts for now 
(since it should be the same for effect strips anyways...)
2010-05-30 20:04:24 +00:00
Peter Schlaile
c2580dd639 == Sequencer ==
Multicam editing: don't cut to the camera we are already on...
2010-05-30 19:29:58 +00:00
Campbell Barton
a9867c226b add torus now works like other C add-object operators, location and rotation are initialized and kept even when settings are changed after. 2010-05-30 17:18:16 +00:00
Campbell Barton
71d4c092ce console now shows unicode errors as well as errors caused by introspecting the api with autocompleate. 2010-05-30 15:17:33 +00:00
Campbell Barton
1658a28a58 - Python console argument '--python-console', option so you can start blender and drop into a python console, (useful for debugging some problems on a renderfarm over ssh)
- Also made it so sys.stdin isnt overwritten anymore, instead the interactive consoel overwrites while it executes and restores after.

- removed hope folder from sphinx patch path
2010-05-30 14:05:58 +00:00
Campbell Barton
8c767ce0e8 utility function for mesh data types
mesh.edge_loops_from_edges(edges=None)

Lets you get edge loops from python either from the entire mesh or from by passing an edge list.
2010-05-24 12:18:12 +00:00
Campbell Barton
f1b9d395e3 - base_object.layers_from_view(view3d), needed for setting local layers
- module 'add_object_utils', so each script doesnt need its own add object code, dealing with layers, scene, cursor location, editmode etc.
2010-05-23 12:14:07 +00:00
Campbell Barton
a368bdad8d [#22391] Fix for eps-export of UVs
patch from Marc Fontaine (cubbie)
2010-05-23 06:00:08 +00:00
Campbell Barton
4d6d68bfa1 obscure sounding feature thats actually useful: isolate render type
Select lamp, isolate, all other visible lamps are disabled.
2010-05-20 15:30:28 +00:00
Campbell Barton
80de1162ee clear some pep8 warnings 2010-05-16 12:15:04 +00:00
Matt Ebb
0524fc1df6 Fix [#22337] Wrong operator descriptions 2010-05-14 07:20:16 +00:00
Thomas Dinges
9502fb0dcf Wrong operator description in preset base class. 2010-05-10 18:04:04 +00:00
Peter Schlaile
e09c47a0da == Sequencer ==
Added operator (and menu entry) to deinterlace all selected movie strips.
(does also walk into selected meta strips)

Also: small fix for multicam cutting tool (now works also within metas)
2010-05-03 22:17:05 +00:00