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
2017-01-22Merge branch 'master' into blender2.8Julian Eisel
Conflicts: source/blender/editors/space_action/action_draw.c
2017-01-20Cleanup/fix some BLI_string_utf8 not using size_t/off_t as expected.Bastien Montagne
2016-12-17Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: intern/cycles/blender/CMakeLists.txt source/blender/editors/gpencil/drawgpencil.c source/blender/editors/physics/physics_ops.c
2016-12-15Proper fix for strict compiler warningSergey Sharybin
2016-12-15Revert "Cleanup: Remove unused variable"Sergey Sharybin
This reverts commit 743165eb48870f1d68c8df48cc5907dea857b017. Didn't see it is used in debug mode, sorry
2016-12-15Cleanup: Remove unused variableSergey Sharybin
2016-12-13UI: Externally open file and path from context menuJulian Eisel
Adds two buttons to context (RMB) menu of path buttons: * "Open File Externally" to open a file in an external app (only visible if path contains a filename) * "Open Location Externally" to open a path in an external file browser The functionallity for this was already there, just hidden behind Shift/Alt click of file_browse button (folder icon next to path button).
2016-12-01Merge branch 'master' into blender2.8Lukas Tönne
2016-11-28UI: Add 'x' icon to text buttons to clear contentJulian Eisel
This is useful e.g. for search buttons to quickly clear the filter string. We might want to make this optional for python scripts.
2016-11-27Enable multi-selection editing by default (Alt-key behavior)Julian Eisel
This means editing a property will now always affect all selected objects, bones or sequencer strips. Support for this was added in rBdfbb876d4660 but you had to hold the Alt-key to use it. The old behavior of only editing the active object will not be kept like decided in the 2.8 workflow meeting (reports comming). If you only want to edit the active object, you have to deselect others. There are still a couple of issues to be resolved (listed below), but having it enabled by default helps testing and getting used to it and should motivate us to fix them ;) To be fixed: * Give users hint when edits are applied to all objects/bones/strips ("Applying to x objects") - there are ideas but we need to finalize and implement them * Make it work better in corner cases (material editing, modifier property editing, etc) Note: Values usually override the initial value of the object/bones/strips, except of number buttons where it depends if you enter the value (absolute override) or drag the value (add value change). This behavior is consistent with multi-button editing.
2016-11-18Fix T50063: Editing driver's expression eliminates "Zero" numberJulian Eisel
Disables trimming of trailing zeros in case button contains an expression.
2016-11-01Add 'copy array' for rna buttonsBastien Montagne
ctrl-alt-c/v allows to copy/paste whole RNA array, e.g. location, rotation, etc., from UI buttons. Request from Andy at the studio.
2016-10-31UI: Don't show empty panel right-click menuJulian Eisel
2016-10-20Python API: add full_path parameter for bpy.ops.ui.copy_data_path_button.christian brinkmann
Also use the operator as part of the UI keymap now, to deduplicate code and let users configure a custom shortcut. Reviewed By: brecht Differential Revision: https://developer.blender.org/D2303
2016-09-21UI: Make eyedropper shortcut configurableJulian Eisel
It's now possible to change the shortcut for invoking the eyedropper while hovering a button (E by default). Also removed the keymap editor entry for the modal eyedropper keymap, it's now automatically appended to the eyedropper shortcut.
2016-09-21UI: Make button driver and keying set shortcuts configurableJulian Eisel
2016-09-21UI: Configurable shortcuts for keyframe operatorsJulian Eisel
Adds support for editing the shortcuts for inserting (I), deleting (Alt+I) and clearing (Alt+Shift+I) button keyframes.
2016-09-21UI: Fix crash using drag-toggle over window bounds with button callbackJulian Eisel
Steps to reproduce: * Go to modifier context in properties editor * Add modifier, collapse it * Press down LMB over collapse button of modifier, hold it * Drag over pin-icon in properties editor (to keep fixed data-block displayed) * Drag outside of window bounds (should crash) Also could've solved by getting space data from callback arguments instead of context, but this fix is much nicer (though not totally un-risky).
2016-09-19Various cleanups related to button lockingJulian Eisel
* Rename uiBut.lockstr to disabled_info * Remove unreachable code * Replace duplicated check with assert * Replace overly ambitious check with assert * Add comments
2016-09-19Cleanup: Completely replace/remove uiBut.lockJulian Eisel
Old leftover from pre 2.5 days. Now handled through UI_BUT_DISABLED button flag.
2016-09-01Fix T49199: Combination of dialog + wm.open_mainfile causes crashJulian Eisel
Issue was that the wm.open_mainfile OP caused all handlers to be removed and since rB45592291 cancelled (which is correct in general), the menu that triggered the OP should not be cancelled though. Not sure if this is a nice fix or not, it's however the safest fix I found. A different fix would be to call UI_popup_block_close before WM_operator_call_ex (in dialog_exec_cb), but not sure how safe this is and want to further investigate if it makes other hacks/fixes redundant. There's still a crash with --debug-memory that confused the heck out of me (since I always have --debug-memory enabled), but I'll commit fix for that separately.
2016-08-18NDOF: compile 3D mouse code only if WITH_INPUT_NDOFMike Erwin
When WITH_INPUT_NDOF is disabled, 3D mouse handling code is removed from: - GHOST (was mostly done, finished the job) - window manager - various editors - RNA - keymaps The input tab of user prefs does not show 3D mouse settings. Key map editor does not show NDOF mappings. DNA does not change. On my Mac the compiled binary is 42KB smaller after this change. It runs fine WITH_INPUT_NDOF on or off.
2016-07-27Fix memory leak when closing Blender with operator popup openJulian Eisel
Steps to reproduce: * Default startup.blend * RMB-Click on "Cube" item in outliner * Select Remap Users * Close Blender using window 'x' button
2016-07-16Cleanup: line lengthCampbell Barton
2016-07-15UI: modifier keys now trigger number button updatesCampbell Barton
Number buttons & sliders weren't updating when shift/ctrl were pressed. Note that this is a regression in 2.77 but hard to track down since it worked unreliably for some time.
2016-07-08Cleanup: use normalize_v#_lengthCampbell Barton
2016-07-01UI: take zoom into account w/ curves widgetAlexander Gavrilov
The Curves widget has buttons to zoom in on the curve. However the click detection code doesn't take it into account, and at full zoom in click on curve is detected very far from the actual visible curve. Change it to compare the position to the actual line segments in the UI coordinate space, i.e. with curve zoom applied.
2016-06-27Fix T48743: Broken menu key acceleratorsCampbell Barton
Regression caused by fc96110b
2016-06-24Cleanup: use return argument prefixCampbell Barton
2016-06-13Fix T48595: UI glitch with driver menu re-openingCampbell Barton
Holding Ctrl-D would keep opening driver menus.
2016-06-08Make uiLists placed in popups usableJulian Eisel
It's still not completely working - there are still some glitches - but far better than before. To make buttons of the uiList work, you have to add a 'check' callback to the operator that invokes the menu. Only if it returns True, the uiList gets refreshed. To avoid this we have to make the region refresh tagging in the entire button handling a bit smarter. Changes I had to do: * Call uiList handling from menu/popup handling if needed. * Make uiList handling use special popup refresh tag if placed in menu. * Allow popups invoked from py operator to tag for refresh by using operator 'check' callback. * Tag popup for refresh when resizing uiList. Mostly fixes T48612.
2016-06-02Fix leak using UI_BTYPE_TEXT button w/o a callbackJulian Eisel
Moving ownership of the string to the button's 'rename_orig' leaked when the button didn't have a uiAfterFunc.
2016-05-06Cleanup: warningsCampbell Barton
Values set but not used
2016-05-05Cleanup: styleCampbell Barton
2016-05-04Fix T48210: Editing all selected buttons fails to auto-keyCampbell Barton
2016-05-03Cache whether current translation language supports IME or notSergey Sharybin
Solves the weak point mentionedi n previous commit.
2016-05-03Fix T47841: Shift-space doesn't type space in type-in fields on WindowsSergey Sharybin
Shift-space was reserved for IME support, however IME will only be enabled on certain languages. We can avoid any IME-related exceptions form other languages without too much trouble. There's one weak point around ui_ime_is_lang_supported() tho, which is it might be doing string comparison a bit too much often now, this we can avoid by handling those checks from BLT.
2016-05-03UI: limit listview arrow/wheel bindingsCampbell Barton
Allow Ctrl-Up for eg to be used when in a list view.
2016-05-03UI: don't show tips when navigating ui-listCampbell Barton
2016-04-25Refactor BKE_blender into separate headersCampbell Barton
- BKE_blender_version.h (only version defines & versionstr). - BKE_blender_copybuffer.h (currently only used for view3d copy/paste). - BKE_blender_undo.h (global undo functions). - BKE_blendfile.h (high level blend file read/write API).
2016-04-17Fix T48171: activating spacebar search menu over text button activates it or ↵Brecht Van Lommel
shows tooltip.
2016-04-15UI: copy to selected: add 'single'/'all' options to buttons' menu when relevant.Bastien Montagne
Same as reset or anim keyframe/driver operators... Inconsistency reported by Leon Cheung through IRC, thanks.
2016-03-29RMB Menu: Add icons for delineating each cluster of options in this menuJoshua Leung
From T33052 by Harley Acheson (harley)
2016-03-29Drivers Setup: Expose all mapping types for creating driversJoshua Leung
* This includes the "manually create" modes, which correspond to the previous behaviour for setting up drivers. This is necessary when the current screen layout is not well suited to having multiple property editors open (e.g. small screen or heavily subdivided screen). * Only the modes relevant for the current property type (i.e. array vs single) will be shown * The "Add Driver" entries in the RMB context menu have now been replaced by a submenu which will list all the available mapping types. * NOTE: The code for the ANIM_OT_button_driver_add() operator is perhaps a bit hairy. However, it currently allows us to have the desired behaviour. It can always get cleaned up later though.
2016-03-28T47532: Pop-ups drop fast mouse clicksJulian Eisel
Caused by rBc24be7ec6e5. Before rBc24be7ec6e5, wm_handlers_do always called handlers a second time with event value KM_PRESS in case of a double click. After it, this was only the case for non-LEFTMOUSE events. Since ui_popup_handler (almost) always returned WM_UI_HANDLER_BREAK, the second handler iteration with KM_PRESS wouldn't run. This fix just makes sure we return WM_UI_HANDLER_CONTINUE for double click events instead (causing second iteration to run).
2016-03-26Driver Setup Workflow Improvement: Property EyedropperJoshua Leung
This commit brings some long requested improvements to the workflow for setting up drivers, which should make it easier and faster to set up new drivers in a more interactive fashion. The new workflow is as follows: 1) Hover over the property (e.g. "Lamp Energy" or "Y Location") or properties ("Rotation") you wish to add drivers to. We'll refer to this as the "destination" 2) Ctrl-D to active the new "Add Drivers" eyedropper 3) Click on the property you want to use as the source/target. The property under the mouse will be used to drive the property you invoked Ctrl-D on. For example, to drive the X, Y, and Z location of the Cube using the Y Location of the Lamp, hover over any of the X/Y/Z location buttons, hit Ctrl-D, then click on the Y-Location button of the Lamp object. Drivers will be added to the X, Y, and Z Location properties of the Cube; each driver will have a single variable, which uses the Y-Location Transform Channel of the Lamp. Tips: - Transform properties will automatically create "Transform Channel" driver variables. Everything else will use "Single Property" ones - Due to the way that Blender's UI Context works, you'll need two Properties Panel instances open (and to have pinned one of the two to show the properties for the unselected object). It's slightly clunky, but necessary for implementing a workflow like this, as the UI cannot be manipulated while using eyedroppers to pick data. - The eyedropper operator implemented here actually has three modes of operation. 1) The "1-N" (one to many) mode is the default used for Ctrl-D, and "Add Driver to All" in the RMB Menu. This is the behaviour described above. 2) There's also a "1-1" (one to one) mode that is used for the "Add Single Driver" in the RMB Menu. 3) Finally, there's the "N-N" mode (many to many), which isn't currently exposed. The point of this is to allow mapping XYZ to XYZ elementwise (i.e. direct copying) which is useful for things like locations, rotations, scaling, and colours. Implementation Notes: - The bulk of the driver adding logic is in editors/animation/drivers.c, where most of the Driver UI operators and tools are defined - The property eyedropper code is in interface_eyedropper.c along with all the other eyedroppers (even though they don't share much actual code in common). However, this turns out to be necessary, as we can't get access to many of the low-level buttons API's otherwise. Todo: - It may be necessary to restore a way to access the old behaviour (i.e. "manual setup") in case it is not practical to immediately pick a property. - Other things to investigate here include extra hotkeys (e.g. Ctrl-Shift-D for Add Single?), and to expose the N-N mode. - Other things we could try include interactively applying scaling factors, picking multiple targets (e.g. for location difference and rotation difference drivers), and/or other ways of using these property picking methods.
2016-03-26Drivers Workflow: Change hotkey for "Add Drivers" to Ctrl-D (it was ↵Joshua Leung
previously just DKEY) Just using DKEY for this was resulting in too many drivers being accidentally created by users drawing using Grease Pencil. This change also works better with the following workflow changes to the driver setup process.
2016-03-09Cleanup: remove button flag for forced tool-tipsCampbell Barton
2016-03-09Fix/workaround T47685: Drag keymap slider failsCampbell Barton
This is a special case where the UI update function re-creases the keymap we're currently editing. Making it so dragging values fails.
2016-03-04Cleanup: suspicious use of commasCampbell Barton