11 years agoNLA SoC: Merge from 2.5
Joshua Leung [Sat, 6 Jun 2009 05:00:40 +0000 (05:00 +0000)]
NLA SoC: Merge from 2.5

20571 to 20667

11 years agoNLA SoC: Action-line is now drawn with green colouring when a strip is being tweaked...
Joshua Leung [Sat, 6 Jun 2009 04:44:18 +0000 (04:44 +0000)]
NLA SoC: Action-line is now drawn with green colouring when a strip is being tweaked to show the relationship between them.

11 years agoFirst new particle code:
Janne Karhu [Fri, 5 Jun 2009 23:59:33 +0000 (23:59 +0000)]
First new particle code:
-Many things not yet working properly :)
-Experimental new (hopefully more logical) categorization of buttons, feedback on this is very welcome.
-Separate render & draw types, for example now there is actually a render option "halo" instead of all the different point draw types.
-Particles get recalculated only from buttons that actually change something that has to be recalculated, for example changing visualization doesn't reset particles any more.
-Boid physics buttons are still missing as I'm currently redoing the whole boids code.
-Point caching is still very wip, so baking is not possible for example, but I added a few cache baking flags for rna that were/will be needed for particle buttons logic.

11 years agofix for printing operator collection values, also set some freed pointers to NULL
Campbell Barton [Fri, 5 Jun 2009 19:43:33 +0000 (19:43 +0000)]
fix for printing operator collection values, also set some freed pointers to NULL

11 years agoBlender file selector support for setting multiple selected files/dirs which operator...
Campbell Barton [Fri, 5 Jun 2009 16:11:35 +0000 (16:11 +0000)]
Blender file selector support for setting multiple selected files/dirs which operators can use.
This allows the sequencers Add-Image strip to work like it does in 2.4x.

- as well as setting the "filename" operator property, operators can have collections called "files" and "dirs" which are set when available.
- RNA_OperatorFileListElement as new collection type, its a bit redundant since each item only has a "name" property but its needed since we don't have a string array type.
- the file selector now prints operators it runs.

Tested with python, adding a list of images works to the sequencer works.
bpy.ops.SEQUENCER_OT_image_strip_add(name="MyImages", start_frame=54, channel=2, filename="/somedir/", replace_sel=True, files=[{"name":"test1.png"}, {"name":"test2.png"}])

11 years ago2.5
Ton Roosendaal [Fri, 5 Jun 2009 16:11:18 +0000 (16:11 +0000)]

Search menu:

- Made nicer drawing for popup version of search. It now uses
  entire backdrop like pulldowns.
  Search boxes for text buttons will use different style still;
  if we use this option all over it shouldn't look too intrusive.

- Search menu allows scroll, to view all items. It doesn't cycle

- Click outside search menu now cancels

- If a match is in search button, it highlights it. This also
  allows ALT+CTRL+F - Enter to redo last op.

- Search popup draws higher when no no space below. No order

11 years agoMSVC cries of uninitialized param
Shaul Kedem [Fri, 5 Jun 2009 13:20:42 +0000 (13:20 +0000)]
MSVC cries of uninitialized param

11 years agoPyRNA
Campbell Barton [Fri, 5 Jun 2009 12:48:58 +0000 (12:48 +0000)]
- Support for python to convert a PyObject into a collection (uses a list of dicts - quite verbose :/)
- Operators can now take collection args when called from python.
- Support for printing operators that use collections (macro recording).
- Added RNA_pointer_as_string which prints all pointer prop values as a python dict.

Example that can run in the in (F7 key)
bpy.ops.VIEW3D_OT_select_lasso(path=[{"loc":(0, 0), "time":0}, {"loc":(1000, 0), "time":0}, {"loc":(1000, 1000), "time":0}], type='SELECT')

for some reason lasso locations always print as 0,0. Need to look into why this is.

11 years agoNLA SoC: NLA-Evaluation Bugfixes
Joshua Leung [Fri, 5 Jun 2009 11:51:27 +0000 (11:51 +0000)]
NLA SoC: NLA-Evaluation Bugfixes

* Fixed an evil bug where the last frame of a strip was always incorrectly evaluated.
This was because these frames were not being included in the strip's 'range' as defined by the IN_RANGE() testing macro, which only considers the given range as an open interval (i.e. non-inclusive of boundary points). I've added a new macro, IN_RANGE_INCL(), which is inclusive of boundary points, since this is a common test in many other parts of the code.

* When an AnimData block is in 'tweaking' mode, the tracks following (and including the active track) are now correctly skipped during evaluation.

* Finished coding the option of setting a single NLA-track per NLA-block to play 'solo' (i.e. only that track is enabled for evaluation).
To enable this, simply click on one of the grey 'dots' beside the NLA-track names, turning this dot yellow. The 'yellow' dot means that the track will play by itself (even the 'active action' gets silenced). Only one track per AnimData block can play solo at a time. To disable, simply click on the 'yellow' dot again.
NOTE: this currently uses the View3D layer-status icons. We probably need some special ones for these later (coloured vs grey star?)

* Also (not related to evaluation) made the selection operators for the NLA Editor only work when not in tweaking mode, since in tweaking mode they can potentially result in data being resolved inappropriately when leaving tweaking mode.

11 years agoNLA SoC: Operators for 'tweaking' strip actions (TAB-Key for both)
Joshua Leung [Fri, 5 Jun 2009 05:18:07 +0000 (05:18 +0000)]
NLA SoC: Operators for 'tweaking' strip actions (TAB-Key for both)

In this commit, I've introduced the mechanism by which actions already referenced by strips used in the NLA can be edited (or 'tweaked'). To use, simply select a strip you wish to edit, and hit that TAB key to start tweaking that strip's action, and hit TAB again once you're done.

What happens when you enter 'tweak mode':
1) The action of the active strip temporarily becomes the 'active action' of the AnimData block. You are now able to edit this in one of the Animation Editors (DopeSheet/Action, Graph Editors) as per normal (i.e. sliding keyframes around, inserting keyframes, etc.). The 'action-line' will therefore get drawn immediately above the active track containing the active strip, so that it's clear that that's what we're editing.

2) All the NLA-tracks (and all the strips within them) that occur after the track that the active strip lived in get disabled while you're in tweakmode. This is equivalent to travelling back to an earlier state in a construction history stack.

3) The active NLA track also gets disabled while in tweakmode, since it would otherwise interfere with the correct functioning of the tweaking for the action of interest.

4) The 'real' active action (i.e. the one displaced by the active strip's action) gets put into temp storage, and will be restored after you exit tweakmode.

5) Any strips which also reference the action being tweaked will get highlighted in red shading to indicate that you may be making some changes to the action which you don't really want to make for the other users too.

Please note though, that this is only a rough prototype of this functionality, with some niceties still to come. i.e.:
* NLA-tracks after the active track should still get drawn above the 'tweaking action line', but perhaps with different appearance?
* Various tools will still need awareness of this to prevent corrupting operations from taking place. How to proceed is still undecided...
* When exiting tweak-mode, the strip the action came from still needs some form of syncing with the modified action... there are a few tricky issues here that will need to be solved
* Evaluation code doesn't totally take this into account yet...

Also, fixed a number of bugs with various code (notably selection, and also a few drawing bugs)

11 years agoUI:
Brecht Van Lommel [Fri, 5 Jun 2009 00:39:42 +0000 (00:39 +0000)]
* Make ESC-key close the search popup menu.
* Also make ESC-key cancel number button dragging.

11 years ago2.5 filebrowser
Andrea Weikert [Thu, 4 Jun 2009 20:07:06 +0000 (20:07 +0000)]
2.5 filebrowser
* code cleanup: removed unused fileselect mode (type)
* brought back 'hide dot files', needs proper storing of the settings still.

11 years ago2.5 MSVC projectfiles
Andrea Weikert [Thu, 4 Jun 2009 20:05:08 +0000 (20:05 +0000)]
2.5 MSVC projectfiles
* added file editors/space_buttons/buttons_context.c
* removed BRE_yafray project

11 years ago2.5
Ton Roosendaal [Thu, 4 Jun 2009 18:38:10 +0000 (18:38 +0000)]

Just a minor tweak in menu draw, makes Search menu a tinsy prettier.
Tomorrow more!

11 years ago2.5
Ton Roosendaal [Thu, 4 Jun 2009 15:19:48 +0000 (15:19 +0000)]

Bugfix: Icons were drawing on wrong subpixel positions, distorting
badly. Now it's crispy and tasty!

Noticed there's a magnifier icon already, using it for the search

11 years ago2.5
Ton Roosendaal [Thu, 4 Jun 2009 14:32:10 +0000 (14:32 +0000)]

Two small fixes;
- Search menu options text could overlap with hotkey
- Operator "duplicate area into window" didnt work for non-actionzone

11 years agoCleaned up the node wrapping code
Robin Allen [Thu, 4 Jun 2009 14:11:39 +0000 (14:11 +0000)]
Cleaned up the node wrapping code

11 years agoAll nodes are now wrapped! Some still need limits and extra logic though.
Robin Allen [Thu, 4 Jun 2009 13:55:02 +0000 (13:55 +0000)]
All nodes are now wrapped! Some still need limits and extra logic though.

11 years ago2.5 RNA:
Thomas Dinges [Thu, 4 Jun 2009 11:16:56 +0000 (11:16 +0000)]
2.5 RNA:

* Found more bugs in factor properties.

11 years ago2.5 RNA:
Thomas Dinges [Thu, 4 Jun 2009 11:05:36 +0000 (11:05 +0000)]
2.5 RNA:

Bugfix: Smooth Modifier didn't accept negative factor values.
Patch by Wahooney. Thanks!

11 years ago2.5 RNA:
Thomas Dinges [Thu, 4 Jun 2009 10:56:39 +0000 (10:56 +0000)]
2.5 RNA:

* Wrapped some more object force properties.
* Fixed a bug in the field_type_items.

11 years agoUI:
Brecht Van Lommel [Wed, 3 Jun 2009 23:33:56 +0000 (23:33 +0000)]
* First step for buttons context browsing, read-only still.
* Drawn in a panel now, though this should become a separate region.
* Path of the context is constructed as an array of RNA pointers and
  then used for drawing and context lookups from python.

11 years agoRNA:
Brecht Van Lommel [Wed, 3 Jun 2009 23:22:43 +0000 (23:22 +0000)]
* Added a MaterialSlot collection in Object rather than giving
  the list of materials immediately. This should more correctly
  reflect how this data is organized, even though there is no
  equivalent C struct.

* Added name properties to MaterialSlot/TextureSlot/ParticleSystem.

11 years agoUI/RNA:
Brecht Van Lommel [Wed, 3 Jun 2009 23:16:51 +0000 (23:16 +0000)]
* Added an icon entry to RNA structs, instead of the UI_GetIconRNA
  function, to keep code together a bit more and make the lookup

11 years ago2.5 RNA:
Thomas Dinges [Wed, 3 Jun 2009 22:19:04 +0000 (22:19 +0000)]
2.5 RNA:

* Started wrapping object force.
* Added "absorption" property in Collision Modifier RNA.

11 years ago2.5
Ton Roosendaal [Wed, 3 Jun 2009 18:31:37 +0000 (18:31 +0000)]

Further work on new "text search" button.

- Now allows to browse items (mouse, arrow key)
- Assigns active value
- Uses different backdrop to distinguish from popup menus
- Cleaned API for it, so it can be used nicely generic

Also added a search menu, which shows all currently working
operators: CTRL+ALT+F. (mind the looks, it needs some tweaks!)

To make a menu activating a button I've added a new event...
could use some tweaks.

Important note: the callback to pass on "old string" for text
button (bone rename) couldn't work yet, added first code for new
callback, but has to be worked on further. When bone rename gets
added it can be tested.

11 years agoNLA SoC: More Drawing Tweaks
Joshua Leung [Wed, 3 Jun 2009 11:22:49 +0000 (11:22 +0000)]
NLA SoC: More Drawing Tweaks

* Following user feedback, I've increased the separation between normal NLA-tracks and the 'action lines' to try and differentiate them more. This hopefully this will be sufficient, otherwise, I'm going to have to abandon the use of nice, generic channel-identification code for lists of channels...

* Improved drawing of 'active' strips.
- Now, the active strip (when NOT being 'tweaked') will be simply drawn as a yellow strip + a white border.
- The active strip (when BEING 'tweaked') will now be greenish + a white border. The colour here may be tweakable, but we'll see...

* Strip extrapolation modes (hold, etc.) are now visualised as rects with alpha and the same colour as the strip they belong to.

* Selecting strips now makes them 'active' (and deactivates the others). Only one strip can be active at a time. Still need to figure out precisely how this will work with multiple AnimData blocks + NLA-'tweaking'.

* Fixed view-matrix bug introduced in last commit for text drawing. For now, we'll just reset the view matrix after doing that, since it's not too acceptable to move these calls to the end yet, as they should get overlapped by some other editor features (such as the Current Frame indicator)

11 years agoCloth Buttons:
Thomas Dinges [Wed, 3 Jun 2009 09:06:32 +0000 (09:06 +0000)]
Cloth Buttons:

Cloth Collision settings dindt't use the new button space context data.

11 years agoRNA: more compositor nodes wrapped
Robin Allen [Wed, 3 Jun 2009 00:40:38 +0000 (00:40 +0000)]
RNA: more compositor nodes wrapped

11 years agoUI:
Brecht Van Lommel [Wed, 3 Jun 2009 00:17:35 +0000 (00:17 +0000)]
* Add Lamp Fallof Curve and Texture Color Ramp panels.
* Use button space context data.
* A few other minor python layout script updates.

11 years agoUI:
Brecht Van Lommel [Wed, 3 Jun 2009 00:14:12 +0000 (00:14 +0000)]
* Added initial color ramp and curve mapping templates.

11 years agoUI:
Brecht Van Lommel [Wed, 3 Jun 2009 00:09:30 +0000 (00:09 +0000)]
* Make modifier and constraint templates use left/right alignment for
  buttons in the header.
* Added mdef bind operator as an example of how to use local context
  for a modifier, and add some code I forgot to commit last time to
  make this system actually work.

11 years agoUI:
Brecht Van Lommel [Wed, 3 Jun 2009 00:04:48 +0000 (00:04 +0000)]
* Implemented scale_x/scale_y for layouts.
* Implemented left/right/center/expand alignment for row layouts.

11 years ago2.5:
Brecht Van Lommel [Wed, 3 Jun 2009 00:01:22 +0000 (00:01 +0000)]
* Button space context now includes most data so python code doesn't
  have to look it up manually, and to plug-in context browsing later.

11 years ago2.5:
Brecht Van Lommel [Tue, 2 Jun 2009 23:56:33 +0000 (23:56 +0000)]
* Fix crash adding rigid body constraint.
* Give new nodetrees NT in ID name to make them recognizned by RNA,
  even if the nodetrees aren't actual ID datablock.

11 years agoRNA
Brecht Van Lommel [Tue, 2 Jun 2009 23:53:40 +0000 (23:53 +0000)]
* Fix an issue where the pointer types wasn't always refine
  to the most specific type, now RNA_pointer_create also
  does this for convenience.
* Make lamp fallof type editable.

11 years ago2.5
Ton Roosendaal [Tue, 2 Jun 2009 18:10:06 +0000 (18:10 +0000)]

Part one of new text button type: SEARCH_MENU
This opens a popup showing all matches for a typed string, nice
for object names, materials, operators, and so on.

Warning: Currently menu doesn't function yet! Only draws choices.

As test I've added an operator search button in top bar. It only
shows operators that can be used in this context now. Also that
is part of the WIP, tomorrow more fun :)

11 years ago2.5
Ton Roosendaal [Tue, 2 Jun 2009 16:40:15 +0000 (16:40 +0000)]

Crash; reading NULL pointer in poll() callback for UV edit.

Note: poll() is ONLY for checking context, not for changing things.

11 years agoNLA SoC: Added basic info-text drawing on strips
Joshua Leung [Tue, 2 Jun 2009 13:03:33 +0000 (13:03 +0000)]
NLA SoC: Added basic info-text drawing on strips

The format of these is still rather experimental.

11 years agoNLA SoC: Fixed merge errors. Manually copied over any files from 2.5 that were modifi...
Joshua Leung [Tue, 2 Jun 2009 09:58:06 +0000 (09:58 +0000)]
NLA SoC: Fixed merge errors. Manually copied over any files from 2.5 that were modified in a commit by Brecht between the time when I had done the previous merge and the time when the commit for that finally got through.

11 years ago2.5 Constraints:
Thomas Dinges [Tue, 2 Jun 2009 09:40:24 +0000 (09:40 +0000)]
2.5 Constraints:

Wrapped IK and Rigid Body Joint constraint to Python.
Note: Couldn't test Rigid constraint due to crash.

11 years agoWrapped buttons window in RNA
Matt Ebb [Tue, 2 Jun 2009 08:08:41 +0000 (08:08 +0000)]
Wrapped buttons window in RNA

11 years agoNLA SoC: Merge from 2.5 20441 to 20570 (HEAD)
Joshua Leung [Tue, 2 Jun 2009 01:40:53 +0000 (01:40 +0000)]
NLA SoC: Merge from 2.5   20441 to 20570 (HEAD)

There were a few conflicts/missing files. Hopefully everything updated ok...

11 years ago2.5
Ton Roosendaal [Mon, 1 Jun 2009 17:21:03 +0000 (17:21 +0000)]

- Fix: text draw in fonts was slightly too low; it didn't calculate offset
  correctly. Now it is aligned to have number characters in center.

- Fix: text clip was too wide, giving errors on extreme zoom in.

- Added boundbox-clipped default text drawing for view2d:

  void UI_view2d_text_cache_rectf(View2D *v2d, rctf *rect, char *str)

  (Note; also for previous commit, this cache immediately projects, so if
   you change view2d while drawing, text is still on correct positions)

11 years ago2.5
Ton Roosendaal [Mon, 1 Jun 2009 16:22:53 +0000 (16:22 +0000)]

Added support for cached text drawing in View2D. Cache is needed to
prevent the viewmatrix being set/restored on each text drawing.

Adding a string:
void UI_view2d_text_cache_add(View2D *v2d, float x, float y, char *str)

void UI_view2d_text_cache_draw(ARegion *ar)

Nothing else needed; just make sure cache-draw is always called at end
of a view2d drawing function, to clear cache memory.

On todo for next: a version with a rectf boundary to clip text within.

11 years ago2.5
Ton Roosendaal [Mon, 1 Jun 2009 14:08:19 +0000 (14:08 +0000)]

Fix for Spin & Screw Mesh edit operators.

- now center and axis are RNA properties for operator
- axis is drawn as Normal button in properties buttons. Fun toy!

11 years ago2.5
Ton Roosendaal [Mon, 1 Jun 2009 12:10:30 +0000 (12:10 +0000)]

Cleanup commit:

- Yafray removed. Also did cmake/scons files, but didn't compile with it,
  so test would be appreciated :)
- Removed old crap from Windows release dir, should be checked on
  further by windows release builder later.

11 years ago2.5: Added first particle panel, and an RNA property to retrieve
Brecht Van Lommel [Mon, 1 Jun 2009 11:39:11 +0000 (11:39 +0000)]
2.5: Added first particle panel, and an RNA property to retrieve
the active particle system.

11 years ago2.5
Ton Roosendaal [Mon, 1 Jun 2009 11:31:06 +0000 (11:31 +0000)]

Added new widget type in drawing and themes: "Box Backdrop", which is
in use by modifiers. Allows alpha blend, shade, etc.
It was using the general button theme for standard buttons still, to
indicate this change I made it a bit darker. Matt/Bill are invited to
tweak this default color :)

11 years agoDeform modifiers can now use useRenderParams and isFinalCalc in modifier stack as...
Daniel Genrich [Sun, 31 May 2009 17:20:57 +0000 (17:20 +0000)]
Deform modifiers can now use useRenderParams and isFinalCalc in modifier stack as non-deforming and constructing modifiers can already - please check for problems or if i missed something

11 years agoRNA: Wrapped texture nodes, made a start on compo nodes.
Robin Allen [Sun, 31 May 2009 16:45:30 +0000 (16:45 +0000)]
RNA: Wrapped texture nodes, made a start on compo nodes.

Difficult to test, because outliner no longer shows nodetree? (Just a bullet icon)

11 years ago2.5 Buttons:
Thomas Dinges [Sun, 31 May 2009 16:40:28 +0000 (16:40 +0000)]
2.5 Buttons:

* Some world button tweaks by William Reynish. Thanks!

* Quality slider in scene buttons gets hidden again.

11 years ago2.5
Ton Roosendaal [Sun, 31 May 2009 12:47:36 +0000 (12:47 +0000)]

RNA didn't compile for msvc, variable declaration on wrong place.

11 years ago2.5 Constraints:
Thomas Dinges [Sun, 31 May 2009 11:47:45 +0000 (11:47 +0000)]
2.5 Constraints:

* Wrapped Action Constraint to Python.

* Some layout tweaks by William Reynish.
* Cleaned up the code a bit.

11 years agoNLA SoC: Basic selection operators
Joshua Leung [Sun, 31 May 2009 11:14:50 +0000 (11:14 +0000)]
NLA SoC: Basic selection operators

* Added click-select/left-right select and deselect all/invert all selection operators. For now, these basic operators will suffice (more advanced selection operators will be coded at a later stage).

* Fixed a few bugs in DopeSheet found while coding the relevant tools for NLA.

* Added custom border-select operator for NLA channels (since the standard one assumes negative direction channel order)

* Added new API-method for NLA strips to check if the strip occurs within a given range, since this test needed to be performed in a few places...

* Tweaked the NLA Editor View2D ranges a bit to give saner default sizing. This still isn't right yet though.

11 years agoNLA SoC: Bugfixes + Improvements to 'Push Down' track-selection
Joshua Leung [Sun, 31 May 2009 04:52:20 +0000 (04:52 +0000)]
NLA SoC: Bugfixes + Improvements to 'Push Down' track-selection

* Trying to save no longer crashes in some cases when the NLA Editor was open with some data. The sanity check added in filesel.c might be able to be backported to 2.5? (Elubie, please check)

* NLA-track names now get drawn with the correct colours for identifying themselves as being selected or not selected.

* Now the 'push down' functionality for actions will try to add the new strip to the last NLA track, provided it has space in the range required.
* When new strips are added, they will only be allowed to extrapolate before/after if they are the first (time-wise) strip for the set of NLA data per AnimData block. This stops layered strips overriding strips that occurred in earlier tracks at earlier times.

11 years ago* started wrapping 3d view space in RNA
Matt Ebb [Sun, 31 May 2009 01:22:34 +0000 (01:22 +0000)]
* started wrapping 3d view space in RNA

11 years ago2.5 Constraints:
Thomas Dinges [Sat, 30 May 2009 23:31:10 +0000 (23:31 +0000)]
2.5 Constraints:

* Wrapped the constraint layout to python and deleted the corresponding C code.
ToDo: 4 constraints are still C code (IK, Script, Action and Rigid Body Joint)

* Some Constraint RNA fixes.
* Wrapped the Shrinkwrap Constraint in RNA.

11 years agoNLA SoC: Fixes (UI, evaluation?)
Joshua Leung [Sat, 30 May 2009 12:40:07 +0000 (12:40 +0000)]
NLA SoC: Fixes (UI, evaluation?)

* Fixed some bugs which meant that NLA-strips weren't getting drawn
* Removed some debugging code
* Fixed bug with Action-line disappearing after 'pushing down' actions
* Fixed bug where Objects with no animation data showed up in NLA
* Tried fixing a bug where NLA-strips were evaluated erratically. I have a feeling that there are some rounding errors I'll need to pay more attention to somewhere :/

11 years agoNLA SoC: Bugfixes for previous commit
Joshua Leung [Sat, 30 May 2009 11:05:29 +0000 (11:05 +0000)]
NLA SoC: Bugfixes for previous commit

* Compile fix in nla_draw.c
* Not totally correct yet, but now NLA-tracks get drawn too after action 'push-down'

11 years agoNLA SoC: More UI work + 'Push down' tool
Joshua Leung [Sat, 30 May 2009 10:41:41 +0000 (10:41 +0000)]
NLA SoC: More UI work + 'Push down' tool

'UI Work'
* Added more drawing code for drawing NLA data
* Made the operators for the 'channel-list' of NLA work. A special version of borderselect for the NLA channel-list (due to the different vertical order) still needs to be coded though.

'Push Down' tool
The active action of each AnimData block, represented by the reddy/orange channel, can be added to the NLA stack as a new action by using the 'snow-flake' icon/button (probably need a special icon for this later). This will add a new NLA track and an NLA strip referencing this action. The AnimData block's 'active action' slot will then be left empty.

(Unfortunately, there still seems to be a bug here, which I'll check on later)

11 years ago* fix for resetting window size on builtin b.blend startup.
Matt Ebb [Sat, 30 May 2009 07:26:45 +0000 (07:26 +0000)]
* fix for resetting window size on builtin b.blend startup.

I think this should work ok for now, but would really appreciate someone who knows the windowmanager code well to take a look at it  :)

11 years agoupdated outliner header python file, still disabled for now, because there's not...
Matt Ebb [Sat, 30 May 2009 06:23:17 +0000 (06:23 +0000)]
updated outliner header python file, still disabled for now, because there's not a nice way yet to represent the keying sets menu.

11 years agofix for previous commit, reload startup was freezing
Matt Ebb [Sat, 30 May 2009 04:24:10 +0000 (04:24 +0000)]
fix for previous commit, reload startup was freezing

11 years ago* Updated blender 2.5 default setup
Matt Ebb [Sat, 30 May 2009 04:16:24 +0000 (04:16 +0000)]
* Updated blender 2.5 default setup

Simplified and started from a clean slate, without much of
the hidden existing space data that was hanging around
in the old one.

One issue I found is that saving the startup file from
Blender 2.5 also saves the window size and location.
This means the version I just saved would open up
strangely on other screen sizes/setups. I added code to
reset this to default when loading it up from the version
compiled into the Blender binary, but perhaps Ton/
Brecht might want to check the diff.

11 years agoNLA SoC: Basic Strip drawing
Joshua Leung [Sat, 30 May 2009 00:28:33 +0000 (00:28 +0000)]
NLA SoC: Basic Strip drawing

Implemented some basic strip-drawing code with some hardcoded colours. These colours will be made into theme colours at some point, but the aim is to use different colours as indicators of the 'state' of the strip (i.e. active/being tweaked, uses the same action as the strip being tweaked, selected, normal).

This is not yet usable though...

11 years agoRNA:
Brecht Van Lommel [Fri, 29 May 2009 15:12:31 +0000 (15:12 +0000)]
* Added PROP_ID_REFCOUNT flag to control if refcounting should
  be done on ID pointer properties. All ID pointers are refcounted,
  by default, with the exception of Object, Scene and Text.
* Also made TextureFace image pointer editable, with the special
  refcounting behavior.

11 years ago2.5 Buttons:
Thomas Dinges [Fri, 29 May 2009 12:42:06 +0000 (12:42 +0000)]
2.5 Buttons:

* Modifier Button tweaks by William Reynish. Thanks!

11 years agoNLA SoC: Start of UI Drawing Code for NLA Editor
Joshua Leung [Fri, 29 May 2009 12:26:47 +0000 (12:26 +0000)]
NLA SoC: Start of UI Drawing Code for NLA Editor

In this commit, I've only setup the drawing code for the channels list. Only the drawing of the 'active action' dummy-line has been tested so far.

11 years ago2.5 Buttons
Thomas Dinges [Fri, 29 May 2009 09:53:46 +0000 (09:53 +0000)]
2.5 Buttons

* More greying out tweaks by William Reynish and myself.

11 years ago2.5 Buttons:
Thomas Dinges [Fri, 29 May 2009 08:43:44 +0000 (08:43 +0000)]
2.5 Buttons:

* Example code for greying out individual items.

11 years ago2.5: fix crash loading saved file with render result, image user
Brecht Van Lommel [Fri, 29 May 2009 00:20:41 +0000 (00:20 +0000)]
2.5: fix crash loading saved file with render result, image user
scene wasn't set to NULL on load. Still doesn't seem entirely safe
but prevents crash here.

11 years agoUI: Matt, check space_outliner.c diff to see how to get python
Brecht Van Lommel [Thu, 28 May 2009 23:58:18 +0000 (23:58 +0000)]
UI: Matt, check space_outliner.c diff to see how to get python
layouts in a header.

11 years ago2.5: fix text editor issue with scrolling and an invalid memory read.
Brecht Van Lommel [Thu, 28 May 2009 23:48:29 +0000 (23:48 +0000)]
2.5: fix text editor issue with scrolling and an invalid memory read.

11 years agoUI:
Brecht Van Lommel [Thu, 28 May 2009 23:45:50 +0000 (23:45 +0000)]
* Added panels with dummy preview template.
* Added constraints panel for bones next to objects, though it
  doesn't work that well yet, the operators and code need to be
  changed so they don't assume it is one or the other in/out
  of posemode.
* Added some graying out in the scene and world buttons.

11 years agoUI:
Brecht Van Lommel [Thu, 28 May 2009 23:41:12 +0000 (23:41 +0000)]
* Added a dummy preview render template, to test some layout
  engine features on tomorrow.

11 years agoUI:
Brecht Van Lommel [Thu, 28 May 2009 23:37:55 +0000 (23:37 +0000)]
* Added some properties of uiLayout that can be set. I've added
  some API code for more than the two I've implementeds, so
  ignore those for now.

  * = False will gray out buttons inside a layout.
  * layout.enabled = False will gray out and completely disable
    the buttons inside a layout.

* Also some function renames.

11 years agoRNA:
Brecht Van Lommel [Thu, 28 May 2009 23:23:47 +0000 (23:23 +0000)]
* Automatically do us++ and us-- reference counting in ID pointer
  set functions.
* Added an enum property callback to dynamically vary the list of
  available items.
* Added some functions to do removes on pointers and collections
  runtime defined for RNA and using ID properties.

* Constraints now have owner/target space wrapped, and most
  pointers made editable. They can be ported to use python layouts.
* Also other pointers made editable that I think are see now with
  the automatic reference counting.

11 years agoContext:
Brecht Van Lommel [Thu, 28 May 2009 23:13:42 +0000 (23:13 +0000)]

Added a system for adding a "local" context in a UI layout.
This way you can define for example within a modifier panel
all operators to get the modifier in the context.

In the layout code:

uiLayoutSetContextPointer(layout, "modifier", &ptr)
layout.set_context_pointer("modifier", md)

In the operator:

ptr = CTX_data_pointer_get(C, "modifier")
md = context.modifier

11 years agoNeeded to cast to a PyObject*
Campbell Barton [Thu, 28 May 2009 10:31:56 +0000 (10:31 +0000)]
Needed to cast to a PyObject*

11 years ago* Wrapped outliner space in RNA, and added a python ui file for the header.
Matt Ebb [Thu, 28 May 2009 05:09:25 +0000 (05:09 +0000)]
* Wrapped outliner space in RNA, and added a python ui file for the header.

Brecht, would you be able to have a look at this if you have time - I can't
figure out how to trigger the python file to register the header instead of
what's in outliner_header.c.

11 years agorna_define.c, RNA_def_struct - set the py_type to NULL when making an rna struct...
Campbell Barton [Thu, 28 May 2009 02:03:48 +0000 (02:03 +0000)]
rna_define.c, RNA_def_struct - set the py_type to NULL when making an rna struct based on another.
bpy_util.c, PyObSpit - print refcount with PyObject

11 years ago2.5 - Fixes for animating enum values
Joshua Leung [Thu, 28 May 2009 01:57:29 +0000 (01:57 +0000)]
2.5 - Fixes for animating enum values

Interpolation between keyframes for enum values (and booleans) can only be constant now.

A way to do this for modifiers is still needed.

11 years agopatch from Andrea Weikert, added some comments.
Campbell Barton [Wed, 27 May 2009 15:41:44 +0000 (15:41 +0000)]
patch from Andrea Weikert, added some comments.
thanks for looking into this.

11 years agoReverted last buttons commit after chatting with Thomas :)
Matt Ebb [Wed, 27 May 2009 11:21:34 +0000 (11:21 +0000)]
Reverted last buttons commit after chatting with Thomas :)

note: The new 'Toggle' options in the UI api should be
avoided for normal text buttons, and used sparingly
otherwise. We want to avoid having two inconsistent
appearances for the same type of buttons.

11 years ago2.5 Buttons:
Thomas Dinges [Wed, 27 May 2009 09:37:48 +0000 (09:37 +0000)]
2.5 Buttons:

* Changed some checkboxes into Toggle Buttons.

11 years ago2.5 - Constraint Buttons Layout file
Joshua Leung [Wed, 27 May 2009 07:28:51 +0000 (07:28 +0000)]
2.5 - Constraint Buttons Layout file

Separated out the code for defining the layout for the constraint targets since its practically the same (with a few minor variations) for all of the other constraints.

11 years ago* Small graphical/gui tweaks to constraint and modifier templates
Matt Ebb [Wed, 27 May 2009 03:42:51 +0000 (03:42 +0000)]
* Small graphical/gui tweaks to constraint and modifier templates

11 years agoNLA SoC: Merge from 2.5 20215:20439 (HEAD)
Joshua Leung [Wed, 27 May 2009 00:07:03 +0000 (00:07 +0000)]
NLA SoC: Merge from 2.5 20215:20439 (HEAD)

11 years agoUI:
Brecht Van Lommel [Wed, 27 May 2009 00:03:49 +0000 (00:03 +0000)]
* Added Constraints template and Add Constraint operator.
* Added toggle=True/False parameter to uiItemR, to get a
  toggle button (actual button) rather than an "option"
  button (checkbox)
* Added OPTION/OPTIONN button type, to distinguish with

* Make all modifier pointers editable, including correct updates.
* Added notifiers and updates to constraints.
* Fix a stack corruption, pointed out by Andrea, and potentially
  causing crashes.

11 years ago2.5 filebrowser
Andrea Weikert [Tue, 26 May 2009 21:34:20 +0000 (21:34 +0000)]
2.5 filebrowser
- some cleanup of ugly conditional.

11 years ago2.5 MSVC projectfiles update
Andrea Weikert [Tue, 26 May 2009 18:54:39 +0000 (18:54 +0000)]
2.5 MSVC projectfiles update
- file editors/space_image/image_panels.c -> image_buttons.c (renamed)
- file editors/interface/interface_templates.c added

Also added small fix for crash in filebrowser.

11 years agominor ref-counting changes, means new subclasses will get the correct ref count thoug...
Campbell Barton [Tue, 26 May 2009 06:29:15 +0000 (06:29 +0000)]
minor ref-counting changes, means new subclasses will get the correct ref count though there are big problems with this still.
Found that subclassing an RNA struct (without even registering or instancing adds a reference to Py_None).
Unlikely a python bug, tested with py2.6 and 3.1

11 years ago* Tiny cloth panel tweaks
Matt Ebb [Tue, 26 May 2009 05:12:27 +0000 (05:12 +0000)]
* Tiny cloth panel tweaks

11 years ago* Scene buttons tweaks
Matt Ebb [Tue, 26 May 2009 05:03:27 +0000 (05:03 +0000)]
* Scene buttons tweaks
* Added 'render stamp' rna & buttons

11 years ago* Small tweaks to texture panels
Matt Ebb [Tue, 26 May 2009 02:49:46 +0000 (02:49 +0000)]
* Small tweaks to texture panels

11 years ago2.5 Buttons:
Thomas Dinges [Mon, 25 May 2009 18:32:28 +0000 (18:32 +0000)]
2.5 Buttons:

* Added initial Cloth Modifer panel.
Enable a Cloth Modifier to see the panels in the physics tab.

11 years agotexture buttons raised py errors when there were no textures on an object
Campbell Barton [Mon, 25 May 2009 14:58:10 +0000 (14:58 +0000)]
texture buttons raised py errors when there were no textures on an object

11 years agoStore the context for python in a static variable with assessor functions - BPy_GetCo...
Campbell Barton [Mon, 25 May 2009 13:48:44 +0000 (13:48 +0000)]
Store the context for python in a static variable with assessor functions - BPy_GetContext/BPy_SetContext,
Still not happy with this in the long term but its less problematic then storing the context in pythons namespace which couldn't be set before importing modules.

This might fix a crash quite a few people have reported (but I cant reproduce).

11 years agoNLA SoC: Groundwork for NLA UI
Joshua Leung [Mon, 25 May 2009 13:07:54 +0000 (13:07 +0000)]
NLA SoC: Groundwork for NLA UI

Adapted the channel-filtering code for the other animation editors for eventual use by the NLA Editor.