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
2010-02-12correct fsf addressCampbell Barton
2010-02-11Theme support for console background. Thx cam for help!Daniel Salazar
2010-02-11batch remove .'s used with RNA_def_struct_ui_textCampbell Barton
2010-01-26Drag and drop 2.5 integration! Finally, slashdot regulars can useTon Roosendaal
Blender too now! :) ** Drag works as follows: - drag-able items are defined by the standard interface ui toolkit - each button can get this feature, via uiButSetDragXXX(but, ...). There are calls to define drag-able images, ID blocks, RNA paths, file paths, and so on. By default you drag an icon, exceptionally an ImBuf - Drag items are registered centrally in the WM, it allows more drag items simultaneous too, but not implemented ** Drop works as follows: - On mouse release, and if drag items exist in the WM, it converts the mouse event to an EVT_DROP type. This event then gets the full drag info as customdata - drop regions are defined with WM_dropbox_add(), similar to keymaps you can make a "drop map" this way, which become 'drop map handlers' in the queues. - next to that the UI kit handles some common button types (like accepting ID or names) to be catching a drop event too. - Every "drop box" has two callbacks: - poll() = check if the event drag data is relevant for this box - copy() = fill in custom properties in the dropbox to initialize an operator - The dropbox handler then calls its standard Operator with its dropbox properties. ** Currently implemented Drag items: - ID icons in browse buttons - ID icons in context menu of properties region - ID icons in outliner and rna viewer - FileBrowser icons - FileBrowser preview images Drag-able icons are subtly visualized by making them brighter a bit on mouse-over. In case the icon is a button or UI element too (most cases), the drag-able feature will make the item react to mouse-release instead of mouse-press. Drop options: - UI buttons: ID and text buttons (paste name) - View3d: Object ID drop copies object - View3d: Material ID drop assigns to object under cursor - View3d: Image ID drop assigns to object UV texture under cursor - Sequencer: Path drop will add either Image or Movie strip - Image window: Path drop will open image ** Drag and drop Notes: - Dropping into another Blender window (from same application) works too. I've added code that passes on mousemoves and clicks to other windows, without activating them though. This does make using multi-window Blender a bit friendler. - Dropping a file path to an image, is not the same as dropping an Image ID... keep this in mind. Sequencer for example wants paths to be dropped, textures in 3d window wants an Image ID. - Although drop boxes could be defined via Python, I suggest they're part of the UI and editor design (= how we want an editor to work), and not default offered configurable like keymaps. - At the moment only one item can be dragged at a time. This is for several reasons.... For one, Blender doesn't have a well defined uniform way to define "what is selected" (files, outliner items, etc). Secondly there's potential conflicts on what todo when you drop mixed drag sets on spots. All undefined stuff... nice for later. - Example to bypass the above: a collection of images that form a strip, should be represented in filewindow as a single sequence anyway. This then will fit well and gets handled neatly by design. - Another option to check is to allow multiple options per drop... it could show the operator as a sort of menu, allowing arrow or scrollwheel to choose. For time being I'd prefer to try to design a singular drop though, just offer only one drop action per data type on given spots. - What does work already, but a tad slow, is to use a function that detects an object (type) under cursor, so a drag item's option can be further refined (like drop object on object = parent). (disabled) ** More notes - Added saving for Region layouts (like split points for toolbar) - Label buttons now handle mouse over - File list: added full path entry for drop feature. - Filesel bugfix: wm_operator_exec() got called there and fully handled, while WM event code tried same. Added new OPERATOR_HANDLED flag for this. Maybe python needs it too? - Cocoa: added window move event, so multi-win setups work OK (didnt save). - Interface_handlers.c: removed win->active - Severe area copy bug: area handlers were not set to NULL - Filesel bugfix: next/prev folder list was not copied on area copies ** Leftover todos - Cocoa windows seem to hang on cases still... needs check - Cocoa 'draw overlap' swap doesn't work - Cocoa window loses focus permanently on using Spotlight (for these reasons, makefile building has Carbon as default atm) - ListView templates in UI cannot become dragged yet, needs review... it consists of two overlapping UI elements, preventing handling icon clicks. - There's already Ghost library code to handle dropping from OS into Blender window. I've noticed this code is unfinished for Macs, but seems to be complete for Windows. Needs test... currently, an external drop event will print in console when succesfully delivered to Blender's WM.
2010-01-16mirror modifier vgroup option was doing string name conversion to find the ↵Campbell Barton
flipped name for every vertex for every weight. the vertex flip mapping only needs to be made once. warning fixes too.
2010-01-16generic operator menu was searching for "type" and using the first enum ↵Campbell Barton
property if it wasnt found. this is too arbitrary and could break if roperty order is changed. store the property in the operator type that is to be used for menu and enum search func's. python function for searching operator enums on invoke. (just need dynamic python enums now) wm.invoke_search_popup(self)
2010-01-15*Fix for last commit. Removed unused code. Thomas Dinges
2010-01-15Console:Thomas Dinges
* Added Theme support for the console. You can change: -Header Color -Text Color of Output, Input, Info and Error Messages. (Inside the User Preferences -> Themes)
2010-01-03bugfix [#20542] Crash 2.50a0 Click event in Console window Report modeCampbell Barton
2010-01-03- WM_OT_context_cycle_int wasnt working (also wasnt used anywhere)Campbell Barton
- remove console zoom operator, use WM_OT_context_cycle_int instead. - use WM_OT_context_cycle_int for text editor zoom also (Ctrl +/- and Ctrl+MouseWheel)
2010-01-01armature ghost stepsize was not initialized, Aligorith: can you check this ↵Campbell Barton
is correct? remove other small warnings
2009-12-27WIP console text selection, modal selection operator and selection drawing.Campbell Barton
word wrap and clipboard are not working yet.
2009-12-24support for registering operators using the same internal rna api as panels, ↵Campbell Barton
menus, headers & render engines since there was a fair bit of duplicate functionality. will remove the old system and update scripts next.
2009-12-20Add missing names to SpaceTypesMartin Poirier
2009-12-07Text and Console operators don't need to register themselves. (this cleans ↵Martin Poirier
the reports quite a bit)
2009-11-27Added RMB-menu to Headers:Joshua Leung
This contains two entries - one which calls the region flip operator, and one which calls the maxmize area operator. Unfortunately, there seem to be some context issues which are causing the wrong region to get activated for use by the region flipping, meaning that nothing happens. Also, fixed own typo in 3d-view header/menu code...
2009-11-10Math LibBrecht Van Lommel
* Convert all code to use new functions. * Branch maintainers may want to skip this commit, and run this conversion script instead, if they use a lot of math functions in new code: http://www.pasteall.org/9052/python
2009-11-07- modal keymap for border selectCampbell Barton
- revert circle select keys adjustments & view navigation while selecting (durian guys liked but allowed activating multiple circle select's at once)
2009-11-05only run the banner function for console (not reports)Campbell Barton
2009-11-05- added bpy.context to the python moduleCampbell Barton
- made the console banner printing function into a python operator (includes sys.version) - added 'C' into the consoles default namespace for convenience
2009-10-21Silencing some compiler warnings for mingwJoshua Leung
* Unused functions * Uninitialised vars
2009-10-08Key ConfigurationBrecht Van Lommel
Keymaps are now saveable and configurable from the user preferences, note that editing one item in a keymap means the whole keymap is now defined by the user and will not be updated by Blender, an option for syncing might be added later. The outliner interface is still there, but I will probably remove it. There's actually 3 levels now: * Default builtin key configuration. * Key configuration loaded from .py file, for configs like Blender 2.4x or other 3D applications. * Keymaps edited by the user and saved in .B.blend. These can be saved to .py files as well to make creating distributable configurations easier. Also, user preferences sections were reorganized a bit, now there is: Interface, Editing, Input, Files and System. Implementation notes: * wmKeyConfig was added which represents a key configuration containing keymaps. * wmKeymapItem was renamed to wmKeyMapItem for consistency with wmKeyMap. * Modal maps are not wrapped yet. * User preferences DNA file reading did not support newdataadr() yet, added this now for reading keymaps. * Key configuration related settings are now RNA wrapped. * is_property_set and is_property_hidden python methods were added.
2009-09-24fix for [#19437] Console (Python): first run doesn't have the ">>>"Campbell Barton
2009-09-22PyConsole improvementsCampbell Barton
- Commands from the history wont get modified in-place when you cycle back and re-use them. - Ctrl Left/Right skip words. - Autocompletion on a variable that has no alternatives adds a '.' 'bpy' -> 'bpy.', generally more useful since autocomp again will give the members of bpy also moved text_check_* functions into BKE_text.h for the console to access.
2009-09-18Keymaps now have a poll() function, rather than adding/removingBrecht Van Lommel
their handlers based on notifiers, which is simpler and more reliable. This fixes for example editmode or uv edit keymaps not working when creating a new 3dview or image space.
2009-09-10- off by 1 error with console command line memory re-allocation.Campbell Barton
- documenting vgroups crashed.
2009-09-09Keyboard shortcutsWilliam Reynish
Made Mac-specific keys only appear on the Mac. This has the added benefit that it shows the Mac key shortcuts in menus.
2009-09-052.5Brecht Van Lommel
Notifiers --------- Various fixes for wrong use of notifiers, and some new notifiers to make things a bit more clear and consistent, with two notable changes: * Geometry changes are now done with NC_GEOM, rather than NC_OBJECT|ND_GEOM_, so an object does need to be available. * Space data now use NC_SPACE|ND_SPACE_*, instead of data notifiers or even NC_WINDOW in some cases. Note that NC_SPACE should only be used for notifying about changes in space data, we don't want to go back to allqueue(REDRAW..). Depsgraph --------- The dependency graph now has a different flush call: DAG_object_flush_update(scene, ob, flag) is replaced by: DAG_id_flush_update(id, flag) It still works basically the same, one difference is that it now also accepts object data (e.g. Mesh), again to avoid requiring an Object to be available. Other ID types will simply do nothing at the moment. Docs ---- I made some guidelines for how/when to do which kinds of updates and notifiers. I can't specify totally exact how to make these decisions, but these are basically the guidelines I use. So, new and updated docs are here: http://wiki.blender.org/index.php/BlenderDev/Blender2.5/NotifiersUpdates http://wiki.blender.org/index.php/BlenderDev/Blender2.5/DataNotifiers
2009-09-04poll functions to stop crashing when running operators in an invalid context.Campbell Barton
2009-09-04- rna documentation layout now matches blenders internal layout, ↵Campbell Barton
autogenerate packages for nested modules. bpy.data, bpy.ops.object etc. - added basic docs for bpy.props - omit panel, menu and operator classes (took up too much space and not useful) - exec cant be used as an operator suffix eg- CONSOLE_OT_exec --> CONSOLE_OT_execute (same for file) - fixed some crashes when generating docs Updated docs here http://www.graphicall.org/ftp/ideasman42/html/
2009-08-24patch from Ron Walker (o6a).Campbell Barton
Descriptions for TFM, TEXT, CONSOLE and ED operators. - Made some minor edits.
2009-07-30Operator Copy/PasteCampbell Barton
you can copy operator strings from buttons or the reporting interface and run them in the console. - Ctrl+C over an operator button copies its python string to the clipboard. - Paste in the console (1 line only for now). - operators run from python no longer require all arguments.
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-29- console remove doubles with command historyCampbell Barton
- povray file removal was uncommented
2009-07-28console copy text was upside down.Campbell Barton
made ctrl+space operator find and autocomplete in the console, need a bette way to make these key bindings co-exist.
2009-07-26- console scrollback userprefCampbell Barton
- copy coperator for the console (Ctrl+C and from the menu)
2009-07-25- report header buttons were not drawing.Campbell Barton
- shift+b in the console would do border zoom (rather then upper case B), fixed by making v2d's border zoom check if the v2d's zoom is locked. - blender in debug mode registers all operators, useful for testing.
2009-07-19SVN maintenance.Guillermo S. Romero
2009-07-19operator macro playback (run operator reports in the console)Campbell Barton
- reports can be selected with RMB, Border (bkey) and (de)select all. - delete reports (X key) - run operators in the console (R key) - copy reports (Ctrl+C), can be pasted in the text editor an run with alt+p Details - Added "selected_editable_objects" and "selected_editable_bases" to screen_context.c, use the scene layers, this was needed for duplicate to run outside the 3D view. - RNA_property_as_string converted an array of 1 into "(num)" need a comma so python sees it as a tuple - "(num,)" - add flag to reports, use for seletion atm. opens a new world of context bugs :)
2009-07-18fixes for errors on startup and compiler errors and draw speedup.Campbell Barton
* Drawing the console text now skips all lines outside the view bounds. * Added dummy C operators for console.exec and console.autocomplete so blender wont complain at startup, its not really a problem but people testing reported it a few times. Eventually we should have some way python operators are initialized before the spaces operators are checked. * reordered the imports so the "ui" dir is imported before "io", for now this means bpy.ops is defined before exporters and importers need to use it, was causing a python error on startup. * fixed all compiler warnings for the console (gcc4.4) * stopped operators were printing out the return flag. * removed references to ACT_OT_test, TEXT_OT_console_exec and TEXT_OT_console_autocomplete
2009-07-182.5Ton Roosendaal
Fix for Makefile to use GLEW in console editor
2009-07-18worked for me but broke building for eman, this fixes (both on linux which ↵Campbell Barton
is confusing).
2009-07-18removed BeOS dirs (BeOS isn't supported anymore)Campbell Barton
removed unneeded includes for the console.
2009-07-17patch from William, adds some rna user prefs and adjusts prefs UI.Campbell Barton
2009-07-17bpy rnaCampbell Barton
Calling rna functions with invalid keywords, too many keywords and too many args would fail silently - now raise an error with invalid keywords and a list of valid ones, raise an error when too many args are given. - calling rna functions would alloc a ParameterList each time, changed to use a stack variable (2 pointers and an int). - store the number of parameters ParameterList - python exception types were wrong in many cases, (using attribute error rather then type error) - fixes to small errors in python UI scripts.
2009-07-17- Scrollbars for the console (use View2D functions)Campbell Barton
- Set View2D operators not to register, got in the way a lot with the console. - Made autocomplete Ctrl+Enter so Tab can be used. - Should work with python 2.5 now. (patch from Vilda) - Moved report struct definitions into DNA_windowmanager_types.h, could also have DNA_report_types.h however the reports are not saved, its just needed so the report list can be used in the wmWindowManager struct. Fixes a crash reported by ZanQdo. - Store the report message length in the report so calculating the total height including word wrap is not so slow.
2009-07-16- use outliner colors (with subtle stripes) for report so you can see ↵Campbell Barton
divisions between operators with wrapping. - added class option for PyOperators __register__ so you can set if py operators are logged in the console. - PyOperators was refcounting in a more readable but incorrect way. in some cases would be possible to crash so better not drop the reference before using the value. - console zoom operator was registering which meant zooming in to see some text would push it away :)
2009-07-16Add Makefile build support for Console Space Type (added in r21611).Guillermo S. Romero
2009-07-16SVN maintenance.Guillermo S. Romero
2009-07-16Console Space TypeCampbell Barton
* interactive console python console. * display reports and filter types. defaults to operator display so you can see the python commands for tools as you use them, eventually it should be possible to select commands and make macto/tools from them. Example use of autocomp. b<tab>, bpy.<tab>, bpy.<tab>, bpy.data.<tab> etc. basic instructions are printed when opening the console. Details... * Console exec and autocomp are done with operators written in python. * added CTX_wm_reports() to get the global report list. * The window manager had a report ListBase but reports have their own struct, switched to allocate and assign when initializing the WM since the type is not available in DNA. * changed report types flags for easier display filtering. * added report type RPT_OPERATOR * logging operators also adds a python-syntax report into CTX_wm_reports() so they can be displayed in the console as well as calling a notifier for console to redraw. * RnaAPI context.area.tag_redraw() to redraw the current area from a python operator. Todo... * better interactions with the console, scrolling, copy/paste. * the text displayed doesnt load back. * colors need to be themed. * scroll limit needs to be a user pref. * only tested with cmake and scons.