Age | Commit message (Collapse) | Author |
|
-r17434:HEAD
|
|
Fix for crash on joining (previously splitted) areas.
Reason was the stored regions in pushed 'spaces' not being copied.
next: free running handlers on area join/split.
|
|
Basics for the remaining 6 spacetypes.
Note: Andrea prefers to merge SpaceImaSel with SpaceFile
for that I'll provide a good readfile.c patch later
|
|
in an area, the handlers (UI and keymap) were not removed.
|
|
|
|
called recursively.
|
|
|
|
- Added file space (too) :) Andrea was first, this is more
complete.
- Suggestion from Joshua: move all standard header buttons to
1 function, makes it all easier, less code, and less area/space
stuff needs to be exposed.
|
|
Second attempt at fixing crashing when merging spaces after splitting them.
|
|
* Scrollers now keep corners free for drawing widgets if there are horizontal and vertical ones in use. They draw a rect which covers up all of the excess over-flowing drawing that was previously masked by the vertical scrollers.
* Tweaked the behaviour of the scroller zoom-handles again as they still weren't behaving correctly on vertical scrollers. This was partly caused by a typo, but also wrong checks...
|
|
|
|
|
|
Fixed more crashers in screen/region/area/spacetype freeing code...
Hint to Ton: watch how you're getting the pointer to the next item in the list when freeing the list ;)
|
|
Skeleton for bringing back SpaceFile.
Code to initialize the SpaceFile struct missing still, I think this is the right time to cleanup there :)
|
|
* Headers were twitching when moved again due to a hack I had made for the TimeLine
* Properly fixed TimeLine init so that grid will start in the right place.
|
|
The basics for InfoSpace.
Also added InfoSpace data to area by default, older files allowed to
have nothing here (space empty). (prevents reported crasher in switching
space info to others).
Also: added ifdeffed code in readfile.c to debug missing memory frees
from data read from files. (instead of "data from SCR" it will print
the actual struct names).
|
|
Added freeing functions in outliner space, this makes blender quit
without memory free errors in my test .b.blends.
Note: I'll move current rna viewer to new SpaceData editor, then I
can bring back original outliner stuff. Proposed menu name is
"Data Viewer". Probably better not not expose name 'rna' in UI?
|
|
|
|
* Scrollers now draw using nice rounded+shaded style everywhere
* When scrollers 'bubble' completely fills a scroller or is completely out of view, the view zooming using the handles is now only activated if the mouse is within a quarter of the total length of the scroller on either end of the scroller. Otherwise, pan is activated. This should make the scrollers more usable in anim editors.
* Fixed drawing of gridlines in TimeLine - needed to adjust ymin value of cur and tot rects to accomodate for the new mask/cur adjustments as old TimeLines didn't draw with 'real' scrollbars. Also, adjusted min/max values to fit these new tot/cur rect y-sizes.
* Tidying up vars and fixing errors in declaring new View2D types in preparation for simpler method of initialising views...
|
|
Added missing basic callbacks for region drawing of view3d and
ipo channels.
|
|
Added basics for oour precious Buttons Window. The one that will be
(OH NO!) vertical one day? ;)
|
|
The basics for Node Space.... no complaints sofar :)
|
|
Added basic code for Space Image. Now let's check if this
commit has all it needed :)
|
|
Bugfix in the "map cur with mask to region". Division had to be switched. :)
|
|
* Grid calculation now takes separate args for x/y units and clamping
* Timeline now gets V2D_LOCKZOOM_Y flag to prevent zooming in y-axis
|
|
Still need to find out how to get the variable struct-type for constraint->data to work correctly. Any ideas brecht?
|
|
|
|
IPO Editor Fixes:
* Grid now draws correct. Fixed typo in gridline calculations preventing drawing from occurring. Also, set the right arguments to the appropriate View2D calls.
* Limited Ton's cur<->mask mapping 'hack' to Outliner only, as it was causing problems with the drawing of the grid. Perhaps there's still some faulty code in curRect_validate that should be changed instead...
* Horizontal scroller draws frames now by default. However, the values are still offset a bit, so will need further investigation.
Outliner Fixes:
* Fixed overlapping text problem with RNA-path and menus. Now RNA path draws as a label beside the menus, so there shouldn't be any more problems there.
* do_versions code now sets all appropriate flags, as old OOPS views could cause errors with scroller drawing + view manipulation operators which depend on flags being set.
|
|
|
|
the rna stuff but its close. Need to get it working for
blender then copy over same to game engine.
Kent
|
|
actually built and linked to.
|
|
Another make file...
|
|
Scons was missing WM includes
|
|
- Added rudimentary support for Ipo window
(Joshua can check on view2d issues for this? :)
- removed ED_area.h, added ED_space_api.h
|
|
- found fix for time-space view2d when increasing height of area, it has min/max Y zoom stored based on size of area... needs
smarter way.
- outliner: header file added, area switch menu + dummy pulldown.
this will become template for other space types...
|
|
Fixes in view2d:
- mask/slider rects were calculated wrong 1 pixel (was overlapping)
- found bug with outliner stretching on area-edge-dragging. It required
an extra mapping of the 'cur view' via mask to actual region.
- added v2d sanity check for uninitialized v2d's
- removed cruft in do_versions for headers (gets catched with above)
- added header-view2d-initialize function, for new-space calls
Fixes in areamanager:
- fixes in 'new space' for time/outliner/view2d
(unfinished)
For Joshua:
- Making time window higher shows it doesn't update 'cur'. Not sure
what kind of v2d flag should be checked or set?
|
|
Scrollers now draw in the 'rounded + shaded' style as much of the rest of Blender now. This is just a rough draft of what they could look like (vertical scrollbers in particular highlight the need for a complementary version of gl_round_box_shade).
|
|
Removed notifier SCREEN_CHANGED from creating menus or tooltips.
This one is used to re-initialize spaces, areas, regions in screen.
|
|
Resolved cyclic calls for editors.
Now there's a space_api/ module, here you can use functions calling
other editor modules. The functions in the module are only used by
the WindowManager module to initialize space types.
Note for sconzers and MSVC and cmake: the proper linking order for
editors is:
- space_api
- space_xxx
- object / mesh / transform / etc
- interface
- util / datafiles
- screen
|
|
|
|
|
|
after the menus are closed, to avoid conflicts with those callbacks
manipulating their own area or region.
|
|
Today's progress; half working, but i better commit to prevent
conflicts tomorrow :)
- added storage for regions in spacedata
- added space switching (unfinished, gives mem-free errors)
- bugfix: icon of timewindow gave error on split-area
- cleaned interface_icons.c a bit, no warnings
- first work on space new() callbacks, they have to make regions too
NOTE: probably files saved with 2.5 crash now. Have to look at
patching this.
NOTE2: the Makefiles required libeditor screen twice... scons too?
|
|
TimeLine window pulldowns work sorta (for the options that were coded :)
Still trying to bring back code without recoding uiDefButs. In future these
will get directly operator stuff linked. For time being made a simple
operator call function, like:
WM_operator_call(C, "ED_MARKER_OT_add");
and for forcing operator to run in the main region-window:
WM_operator_call_rwin(C, "ED_MARKER_OT_add");
These calls also work for modal operators, like marker grab in this case.
|
|
Small fix: Screen state updating should be blocked while menus are open.
Caused draw errors for activated headers. Todo is: bring back separation
between window-handlers and screen-handlers, to solve this?
|
|
Notes:
- I'm not sure whether we want to move out the PoseMode hide flags from here, but PoseChannels directly get most of their flags from here.
- Some of the settings for Bones have not been exposed, as they are mostly internal flags or used only by transform
- I'm not sure whether we should be exposing EditMode settings like head/tail/roll directly here...
|
|
Added support for panning headers using View2D of the header regions (only done for TimeLine, as only that one has buttons on it).
Currently, this uses some do_versions magic to initialise the View2D rects required, however, I'm not sure if all the information was safely ported over yet (notably height and position of rects due to alignment issues).
In the process, I noticed a few bugs with the current View2D code:
* UI_view2d_curRect_validate() is now called after UI_view2d_size_update(), as the size of the 'mask' rect is closely related to the size of the 'cur' rect (especially when zooming is locked).
* Fixed a bug in UI_view2d_curRect_validate() which meant that if the 'cur' rect was slightly larger than the 'tot' rect, and keeptot was set, the view would flicker between the two closely related positions.
|
|
* Added context pointer to function callbacks for buttons and blocks.
* Added a uiBlockSetHandleFunc, which will be called with the button
return value. This seems kind of redundant with uiBlockSetButmFunc,
but the latter uses a2 to pass the value.
|
|
- Brought back (most of) buttons in TimeLine window.
They don't work yet though! Waiting for Brecht to commit callbacks
for menus and ui-blocks
- Area headers hilite again when mouse is inside.
|
|
Fix: on quit with a ghost event, windows were freed without freeing screens.
|