Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-09-28File Browser fixes:Brecht Van Lommel
* The code to draw only visible items was not working, giving slow performance with many files (bug #19469). * Fix detailed list display on non-windows, would give overlapping text. * Fix folders with many files not displaying all items, changed short to int in various places, was overflowing. * Recreate layout on area resizes, file view gets out of sync otherwise. * Workaround for v2d height not being correct with image display due to scrollers. * Fix view2d code to compute minimum scroller size, this would make the scroller go outside of its bounds.
2009-09-28Fix #19482: setting cursor position in uv editor was not correctBrecht Van Lommel
zoomed in, needed to make view2d offset for pixel rounding dependent on zoom level.
2009-09-23Some UI tweaks as listed by William Joshua Leung
(http://wiki.blender.org/index.php/BlenderDev/Blender2.5/Todo/UserInterface) * Removed panel docking. "It is too easy to do by accident when reordering panels, is very hard to control and use, and has no real benefit." * Scoll bars have minimum size now, so that the 'thumb' doesn't disappear in long lists.
2009-07-302.5: Buttons ViewBrecht Van Lommel
* When resizing the window, the top position is now preserved, instead of the center position. * Fix zoom level not being preserved in various cases, when changing both with and height. This replaces some earlier code which did this at screen level but wasn't very reliable. * Different tabs now each preserve their own scroll. * When switching between tabs, it now scrolls to show as many buttons as possible, instead of possibly showing empty space. There is a trade-off here between doing that keeping the buttons in the same place, no ideal solution exists I think. * Change zooming in/out to be symmetric, for example doing numpad + then - did not give the original zoom level back. * Added some calls to avoid hanging tooltips when manipulating the view. Internals: * Added V2D_KEEPOFS_X and V2D_KEEPOFS_Y to keep the top/bottom rather than the center. * Renamed V2D_KEEPZOOM to V2D_LIMITZOOM (seems more appropriate), and make V2D_KEEPZOOM preserve the zoom level.
2009-07-282.5: various one-liner fixesBrecht Van Lommel
* Image window only show game properties in game mode. * Fix image window render info drawing wrong with alpha enabled. * Win32 editmode cursor now uses a different one than the system cursor, that one is barely visible, especially in the new theme colors. * Center text in operator header print. * Fix sequencer unlock shortcut key. * Fix uv layer / vertex color active render button now graying out. * Workaround to get default zoom level 1:1 again for new buttons (will try to fix properly later, is due to scrollbars).
2009-07-162.5 - View2D fixes for User PrefsJoshua Leung
Added NULL check for View2D code for invalid style pointer (this underlying problem should get addressed at some point), and reinstated the reinitialisation hack for panel regions.
2009-07-142.5 - Scrollbars are now shown when a list of panels can't fit in viewJoshua Leung
Notes: - These may be taking up a bit too much room in some situations. Perhaps an option to turn these on/off is needed? - I've added a quick hack in area.c -> ED_region_panels_init() to set the flags to make scrollbars show up in regions whose View2D data has already been initialised. This is primarily aimed at the Buttons Window in the 2.5 defaults file, which seems to have been saved in 2.5 or so - The expand icons on either end of the scrollers don't really seem to be necessary? (or not working yet)
2009-07-112.5 - NLA SoC Branch Merged to 2.5!Joshua Leung
(19863 to 21513) Highlights of the new NLA System (and related Animation System changes): * NLA Data is stored in AnimData alongside Action and Drivers. The NLA stack is evaluated before the Action, with the Action always overriding the results of the stack. * NLA Data is arranged in 'Tracks', which act like PhotoShop layers. These can be muted, protected, and/or made to be played back by themselves * Within each track, there can be multiple 'Strips'. There are 3 types of strip -> Action Clip (references some action), Transition (blends between the endpoints of two strips), and Meta (container for several strips that occur sequentially) * FModifiers can be applied to strips, and strips can have animated influence/time controls. Playback for strips can also be backwards now! * Playback can now go in forward and backwards directions. * Animation Editors have been polished (unfinished features added, existing features cleaned up and made more consistent) Notes for BuildSystem Maintainers: * Only scons has been actively tested. Makefiles should work fine. * MSVC ProjectFiles are broken due to the very way they work. * CMake status unknown... Other notes: * Hopefully I haven't made any mistakes while doing the merge. More files than expected were showing some weird conflicts, so you may have some broken code... * Not all old files (with NLA) data load exactly the same anymore. However, the bulk of the files out there should be ok (I hope)
2009-07-11NLA SoC: Merge from 2.5 soc-2009-aligorithJoshua Leung
21470 to 21512 Next up, NLA-branch to 2.5 :)
2009-07-112.5:Brecht Van Lommel
* Default panel zoom level user preference, when creating new button windows or pressing home-key to reset. Patch by Matt D., thanks!
2009-07-10NLA SoC: Merge from 2.5Joshua Leung
21330 to 21469
2009-07-072.5Ton Roosendaal
- Scrollers now only disappear for regions with a fixed total view, like lists, buttons, channels. More or less infinite views keep scrollers to indicate that you can still pan or zoom further. - Nodes: put back SHIFT+D "Add duplicate" (Also fixed duplicate objects menu name... it should be a bit more descriptive)
2009-07-032.5Ton Roosendaal
More scroller work: - Added subtle arrow widgets to denote a scroller can zoom the view. - Made zoom symmetric (old convention to only zoom "one side" just worked badly)
2009-07-032.5Ton Roosendaal
Upgrading text editor to draw new scrollbar too.
2009-07-03NLA SoC: Merge from 2.5Joshua Leung
21301 to 21329
2009-07-022.5Ton Roosendaal
Cleanup of scroller drawing in 2D windows. Before: http://download.blender.org/institute/rt11.jpg After: http://download.blender.org/institute/rt12.jpg Will add 'zoom' widget circles later, as mockupped here: http://www.reynish.com/files/blender25/fcurve_scrollbar.png Also note the scale values are inside scroller; drawing it on top conflicts with current frame item and markers. Currently scroller disappear entirely when view is total. For Joshua: To make sliders behave nicely, the boundbox (v2d->tot) has to be refreshed on each change. I've added it in graph drawing now, but it could be notifier based I guess... not sure what the correct anim api call would be. Can discuss tomorrow! On todo: Layout config hints so people can make scroller positions swap.
2009-06-28NLA SoC: Merge from 2.5 - 21179 to 21209Joshua Leung
2009-06-272.5Ton Roosendaal
Two bugfixes: - When making 2d windows small (zero sized) the view2d data could get corrupted with NaN values. Clipped values correctly to 1. - Search menu (ctrl+alt+f) had wrong color for selected text in text button
2009-06-10NLA SoC: Merge from 2.5Joshua Leung
20669 to 20771 (sheesh, that took an hour, not including having to restart the whole process after TortoiseSVN bailed out midway through the first try)
2009-06-10Timecode printing is more or less duplicated in two different places,Guillermo S. Romero
so make them both use the same style and note down for future.
2009-06-02NLA SoC: Merge from 2.5 20441 to 20570 (HEAD)Joshua Leung
There were a few conflicts/missing files. Hopefully everything updated ok...
2009-06-012.5Ton Roosendaal
- 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)
2009-06-012.5Ton Roosendaal
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) Drawing: 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.
2009-05-29NLA SoC: Start of UI Drawing Code for NLA Editor Joshua Leung
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.
2009-05-19UIBrecht Van Lommel
* Fix buttons jumping around when resizing and zoom. Part of this was adding a tiny a 0.001f offset in UI_view2d_view_ortho, otherwise the rounding is unpredictable (used to be 0.375f, but that was disabled). * Fix various issues with zooming, panning panels. V2D_LOCKOFS_X/Y is now taken into account in more places in the view2d code, to avoid zooming into the center or panning out of the view. * Remove "Free" align mode in buttons window (it's not really useful). * View3D/Graph/Image editors now use the same PanelType system as the buttons window, means some deprecated panel code could be removed. * Some small visual tweaks for panels. * View 2D Reset operator (Home key), to reset zoom and panning for panels. * Added argument to set number buttons as sliders (slider=True for itemR). * Ignore labels for button alignment (doesn't look right). * Fix some use of context.main in py scripts, should get data from active object instead. * Fix autotexspace -> auto_texspace in py script.
2009-05-062.5: Missing include was causing crashes on startup in the drawing code for ↵Joshua Leung
scrollbars
2009-05-06Big, big commit!!Diego Borghetti
1) Remove WITH_FREETYPE2 from code, so now blender always need freetype2 2) Remove the old bmfont 3) Remove ftfont and bFTGL library 4) Implement a new BLF_draw_default function for place that still need/use the old BMF api. I try to update both, scons and cmake, but I only can test with make, so hope all work fine. MSVC is broken, but I don't have Windows, things to search and fix are any reference to WITH_FREETYPE2, FTGL and BMFONT (take in care that blenkernel also have a BKE_bmfont.h, this don't have anything to do with bmfont). Always have to link/include the freetype2 library Remove any reference to libbmfont Remove any reference to libftfont Remove any reference to libbftgl (or libbFTGL)
2009-04-102.5Ton Roosendaal
Quick hack to enable zoom in buttons window again. It uses bad old conventions for fixed panel width still, view2d has to be tweaked for new system. But, it shows layout to work. :)
2009-04-102.5Ton Roosendaal
Grand cleanup: - removal of FTF and ftfont dir - removal of text.c which wrapped it - wrapped old text drawing code temporarily, need to decide how 'style' will behave per editor when you draw strings outside interface code.... wouldn't be very useful to set fonts locally all over?
2009-04-062.5Ton Roosendaal
- fixed pixel offset error for listview (outliner) - removed a lot of old drawing code - put back special widgets Normal, Curve, Colorband
2009-04-032.5Ton Roosendaal
Next part of UI drawing migration coding. Now all calls go via the new wrapper; apart from some special types (Colorband, HSV picking, Curve, Normal) they draw OK. Also added new menu system, nicer shadow, and using same AA code. Used dark theme suggestion from William btw. Don't get afraid, it'll all be tweakable. :) Next steps: - move over all special button types - make external calls for AA draw (nodes for example) - remove old draw code - make new colors save in theme I also have to check on how to treat icons in buttons; this is a bit cumbersome in cases. Then the layout system comes back on agenda, will go over this with Brecht tomorrow. So; all WIP, be patient!
2009-04-02UI: various panels fixes.Brecht Van Lommel
* Fix sometimes non-working close/open button. * Fix panels being a bit out of the view on startup. * Fix too large totrct region for view2d. * Fix wrong panel order when changing vertical <-> horizontal. * Fix wrong panel positions after switching contexts. * Fix an access of freed memory when collapsing panels. * Free align mode works again. * Animations work again.
2009-03-132.5: UI Layout Engine, initial code.Brecht Van Lommel
* As a test, used by: * Object buttons, tried to make it match the mockup. * Text window header. * Text window properties panel. * Panel interaction with view2d is still problematic, need to make this work properly still. * Templates are very basic, the ones there are simple but already can follow the object buttons mockup quite closely. * It's based on a three level system: panels, templates and items. To get an idea of what that means in practice, see: http://wiki.blender.org/index.php/BlenderDev/Blender2.5/UI_LayoutEngine#Panels.2C_Templates_and_Items
2009-03-09Graph Editor: Frame numbers in horizontal scrollbar are no longer restricted ↵Joshua Leung
to 1.0 frame intervals.
2009-03-012.5 - Animation related tweaksJoshua Leung
* Scrollers for zoomable views are now always shown again. The previous method was quite bad for these, as there would be flickering as the view was zoomed + panned. Also, the old method was not suggestive of the drag-zoom features on the scrollers, which was provided by the shaded bars. (Non-zoomable views will still only show scrollers where appropriate). * Insert-Key in 3d-view (i.e. the 'temp' operator which still needs to be ported to use builtin relative keyingsets) had a bug where the wrong keyframe were being inserted (rotation in instead of location, scaling instead of rotation) for bones.
2009-02-192.5Ton Roosendaal
Made sliders behave correct in SpaceGraph and SpaceAction. - no slider draw when all is visible - sliders update correct when visibility changes. Still an issue here to tackle; view2d->tot is used incorrect... it's set on window size now (??), it should be the boundbox of the entire contents. That allows correct slider draws and ops like 'view home'. Will poke Joshua tomorrow. :)
2009-02-102.5Ton Roosendaal
*** Proof of concept! **** 3D window Panels back, in own designated region for now. Activate or hide it with Nkey. Note that Background Image doesn't work yet, Transform Orientations probably need tests by Martin, Sculpt options have to be recoded there by Nicholas. The UI design sessions will of course review all of this! We'll have to solve a lot of related topics; - navigation (where) and context (what) - non-overlapping layouts vs floating panels/bars - properties vs tools (toolbars) - drop panels and make nice (semi-automated) list views? I've also done experiments with making the main 3d view stay 'behind' the buttons region. That makes popping buttons in and out less distracting, but also makes it obscuring the view... it's not in this commit, it didn't work proper :) To get that work it has to be handled by the internal compositor, then it even can have fancy transparency in back. Anyhoo, time enough to play with this a while. Especially for Image window (paint) it can work well too.
2009-02-092.5 - Assorted View2D-Related CleanupsJoshua Leung
* Removed Sequencer's own 'border zoom' tool. There is a generic one in View2D that should be used instead. * Changed the hotkey for View2D's version of borderzoom to Shift-B * Fixed a few hotkey mentions entries in old menus * Added set start/end frame operators for TimeLine. (SKEY and EKEY) * Fixed various issues in Graph Editor - channels area is now drawn wide enough to show the 'protect' toggles without needing to scroll - new Graph Editors have 'auto-snap' enabled by default
2009-01-282.5Ton Roosendaal
Some drawing tweaks for animsys: - added notifier ND_KEYS type, to send proper notes around. now insert-key redraws fcurve/action view - made slider-draggers disappear when view is total or bigger. Also experimented with making sliders go away entirely, but this conflicts too much with current code for channel lists. Ali: I think you have to make call that calculates the 'tot' for channels, and run this in region listener, including the totRect update for view2d. The 'minsize' for channels also fails when there's a slider, it always doesn't fit then :)
2009-01-23fix for eternal loop that could happen when resizing the view.Campbell Barton
2009-01-15UI: various changesBrecht Van Lommel
* View2D to region now returns ints instead of shorts. * Use "Numpad" instead of "Pad" in automatic keymap menu info. * Menus can now use buttons other than BUTM and SEPR, in particular TOG and ROW are now supported instead of flipping bits manually. * Added a simpler uiDefMenu* api for making menus now, and it only supports Operator and RNA buttons at the moment, will be used in next commit. Not sure how this will evolve .. makes menu code look cleaner anyways. * Ensure that interface code doesn't crash when getting unknown Operators and RNA properties, and display their buttons grayed out in that case.
2009-01-122.5Ton Roosendaal
12k lines of sequencer back! Only seqaudio.c skipped for now. Notes: - it only draws now, nothing refreshes or edits. - fixed bug in view2d.c with vertical grid step being 0.0f - render code and fileselect code is #ifdeffed out - sequence evaluation code moved to blenkernel, so it can be used for render without bad level calls General note; sequencer code is very untidy, mixing styles too much. Tried to clean it some, but it would be nice if formatting is kept consistant from now on.
2009-01-052.5 - Various Cleanups/FixesJoshua Leung
* Animation channels - cleaned up the code for selecting channels (removed various TODO stuff that's going to be replaced by something better later). Also, added back the ctrl-shift select feature for groups, which should be extended for other channels too at some stage. * Outliner - added missing flags to do-versions, and replaced the width calculations with the rna-width version for now, as that uses constant width of 100 with OL_X*indention
2009-01-042.5 - Outliner/RNA Viewer View2d Fixes (Part 1)Joshua Leung
Cleaned up the View2D setup stuff here, by removing all the hacky manual setting of tot and cur rects. Now the Outliner and RNA are scrollable again. However, in the process, I uncovered a few rather nasty bugs that must've been around for ages. 1) The width-calculation code depends on te->xend for calculating the max-extents, but that is not set until drawing of channels commences. This is far too late, as it is needed for the setting of the 'tot' rect's extents, so that we can have horizontal scrolling, and an accurate horizontal scroller! I noticed that RNA version of this currently hacks around this by using constant width of 100, but that's not a great final solution. 2) There's some minor pixel offset twitching going on with the restriction columns when the view is resized. Also, for RNA, the buttons sometimes cause a few drawing artifacts. Will check on this in part 2.
2009-01-022.5 - Animation and View2D Joshua Leung
* Added back deselect all (and invert all) tools for Animation Channels (i.e. channel list in Action Editor). * Resolved all MSVC warnings (I came across) in View2d code. Also, added a new API method to get the coordinates (in 'view' space) of a listview 'cell' given the row + column the cell is in. * Tidied up a few comments here and there
2009-01-012.5:Joshua Leung
First commit for 2009! Started of porting of Animation Editor Channels stuff. This code will be used for both the Action and IPO editors, so any existing code involving this has now been moved to the Animation module. * Added mouse-click operator for this channels view. Note: the selection stuff currently uses temporary toggling code only (i.e. it only toggles the selection of the channels in the editor, but does not update status of rest of database). * Fixed bugs in View2D listview functions. Reduced the amount of code needed, and makes the code here simpler. * Renamed action_edit_keyframes.c to action_edit.c, since channels are not handled there anymore. * Dopesheet now refreshes correctly when object selection elsewhere changes.
2008-12-31View2D: Joshua Leung
Added methods for easier checking of visiblity/position of items arranged in some regular table format (i.e. columns and/or rows). Last commit from me for 2008!
2008-12-26UI: PanelsBrecht Van Lommel
* API and usage is basically the same still. * Panels were moved to region level. I first thought of keeping them at area level, but having them at region level it's simpler to handle events and do drawing, and also to integrate with view2d. They can still become area level overlapping regions, if we make a floating (or docked) region that can contain panels. * Added back a few panels from the scene buttons for testing. Issues still: * The view2d handling and alignment refresh of panels is not correct yet in the buttons window. * I did not yet bring back the block handlers system. It was basically a system that stored which panel was open and where the events for that panel would go. Just a few functions, but not sure how it fits in 2.5. * There was a case where dragging panels would not properly remove the window level handler, but could not redo anymore even though I don't think I fixed it. * Some text in the panels goes past the end of the button, that is due to the checkmark button drawing, not related to this commit. Other UI code changes: * Renamed interface.h to interface_intern.h for consistency. * Fixed some issues with freeing of blocks when they changed due to context. * uiDrawBlock now takes a context pointer (mostly for block drawextra).
2008-12-232.5 Action Editor - Big WIP Commit Joshua Leung
* Brought back backend for editing keyframes IPO/IPO-Curves. Did some refactoring work here that will still have to be verified when operators using them are added. * Animation channel filtering code now returns the number of channels filtered (for Action Editor to set totrect of channels - TODO still!) * View2D - made function to check if mouse is in View2D scrollers an API function * Renamed keyframe related files. The old names were too clumsy. * Started porting click-select operators for Action Editor. These don't work currently, as the events are being stolen by the markers. This needs to be fixed ASAP.
2008-12-232.5 - BugfixesJoshua Leung
* View Pan Operator now stores area, etc. values from context in case user moves out of view * Moved the invalid-context check for Action Editor so that mode can still be changed when there's no data to show.