Commit Graph

985 Commits

Author SHA1 Message Date
5681380db0 simplify x11 path code, had unneeded NULL checks and std namespace 2011-08-07 17:38:36 +00:00
f12df1e386 ndof data change: operators can access values as vectors or components, as both are handy 2011-08-07 17:22:47 +00:00
6c821f4078 stricter NDOF guards for Windows (forgot in earlier commit) 2011-08-06 23:13:36 +00:00
e6e4c7ef8b KEYMAP REFACTORING
Diff Keymaps

User edited keymaps now no longer override the builtin keymaps entirely, but
rather save only the difference and reapply those changes. This means they can
stay better in sync when the builtin keymaps change. The diff/patch algorithm
is not perfect, but better for the common case where only a few items are changed
rather than entire keymaps The main weakness is that if a builtin keymap item
changes, user modification of that item may need to be redone in some cases.

Keymap Editor

The most noticeable change here is that there is no longer an "Edit" button for
keymaps, all are editable immediately, but a "Restore" buttons shows for keymaps
and items that have been edited. Shortcuts for addons can also be edited in the
keymap editor. 

Addons

Addons now should only modify the new addon keyconfiguration, the keymap items
there will be added to the builtin ones for handling events, and not get lost
when starting new files. Example code of register/unregister:

km = wm.keyconfigs.addon.keymaps.new("3D View", space_type="VIEW_3D")
km.keymap_items.new('my.operator', 'ESC', 'PRESS')

km = wm.keyconfigs.addon.keymaps["3D View"]
km.keymap_items.remove(km.keymap_items["my.operator"])

Compatibility

The changes made are not forward compatible, i.e. if you save user preferences
with newer versions, older versions will not have key configuration changes that
were made.
2011-08-05 20:45:26 +00:00
Nathan Letwory
dc4b104e60 typo fix. 2011-08-02 23:52:07 +00:00
3af9651b90 ndof changes: turned off 3D mouse during transform, removed timing bug in image/uv, added option for zoom axis (up/down vs. forward/backward) 2011-08-02 22:50:06 +00:00
70b4758ff8 Made wmNDOFMotionData use a vector rather then xyz members, makes it nicer to use with math functions.
ndof_to_angle_axis and ndof_to_quat now use math functions.
2011-08-02 07:08:22 +00:00
73417bfbb5 spoof MOUSEMOVE after NDOF_MOTION event, added comments 2011-07-25 00:03:07 +00:00
ed232c756d ndof overall sensitivity is now live 2011-07-24 00:40:39 +00:00
Nathan Letwory
eea7c358c7 svn merge -r37276:38555 https://svn.blender.org/svnroot/bf-blender/trunk/blender . 2011-07-21 09:40:59 +00:00
cc1ba4569c more consistent and modal-friendly ndof events, fly mode v1 2011-07-14 21:20:45 +00:00
f10f3d3651 Bugfix #27768
On clicking in a non-active Blender window (when you activated others),
the mouse position of the first click was still the old position.

Problem is in GHOST; it sends out the 'activate window' event after the
mouseclick event itself. Code now checks for this case and reads the
correct mouse position.
2011-06-27 11:21:25 +00:00
c518aa1383 GHOST Cocoa: move y origin top/bottom conversions out of windowmanager module
and into GHOST. Also fixes a problem where e.g. the user preferences window
would not open under the mouse cursor correctly.
2011-06-23 19:55:47 +00:00
6aa7777144 removed temporary debug logging 2011-06-15 02:40:25 +00:00
7b124242e7 SpaceNav works on Linux 2011-06-11 00:25:48 +00:00
e75ff53452 migrated NDOF code from soc-2010-merwin, SpaceNavigator now works on Mac blender 2011-06-08 21:18:03 +00:00
7c9d76199c spelling corrections 2011-06-06 00:48:10 +00:00
e4bb5403d3 fix for crash opening the file selector twice with multiple windows open (when the mouse was over the inactive window). 2011-06-06 00:42:36 +00:00
b1ddf90239 fix [#27458] Links for Logic Bricks no longer work
event->mval wasn't being set in some cases by the event system.
2011-05-22 04:05:09 +00:00
5f5cdf9d00 for bug [#27358] Transform bug when transform > 500
mouse coords would with cont. grab would wrap at short.
use mouse coords as int rather then short.

this problem still happens on linux because of XTranslateCoordinates
2011-05-12 16:47:36 +00:00
d494c97b58 fix for using enter on menus which load files:
commonly Ctrl+N,Enter or Ctrl+O,Enter
2011-04-23 03:31:27 +00:00
f9f771cd01 converted more mixed tab/space indentations to tabs. only whitespace changes. 2011-04-21 15:53:30 +00:00
c605091b09 Fix for fix for the bugfix :)
Just cleaned the code/order here and added comments why this works.
I should have known it... thanks Andrea for quick action!
2011-04-21 09:43:38 +00:00
2d9c94604a fix crash with lots of operators when running "blender -d". Easy case to reproduce, just try to delete default cube.
Temporary hack to prevent crasher, likely caused by rev. 36242.
2011-04-20 20:46:02 +00:00
069a3c193c Bugfix #27058
Top bar: Add -> Mesh -> UV Sphere + Enter crashed.
It didn't crash with leftmouse, but that was coincidentally working.

Menus were freeing modal handlers in Window, while handlers were still 
in use. Fix provides to tag handlers for being freed now.

Will add on my attention list for more elaborate checking work here, for
upcoming 2.57a I rather stick to minimal change in code here.
2011-04-20 11:15:58 +00:00
Nathan Letwory
d13df6cffc Print out reports on console too (debug and up) as fix for [#26708] "INFO" reports are not displayed
reported by Tom Edwards

Showing of certain reports (ie. info) is very hidden. At least print these to console.
2011-04-09 02:23:39 +00:00
57d020f061 fix [#26756] "Release confirms" breaks marker functionality in Timeline 2011-04-04 07:42:08 +00:00
37007a7bc8 disable continuous grab in the header, its more annoying then useful.
also NULL texture's point density tree data when copying to prevent possible double free.
2011-04-04 03:25:05 +00:00
bfadd7c9aa modify error when python is not found so as not to confuse users who don't build blender.
+ minor edits.
2011-03-30 07:21:41 +00:00
b2ac8ff1e1 Maintenance:
Gave the report-timer (in top header) an own TIMER define, to not
confuse with timers in use for UI. Easier for debugging. :)
Also gave better malloc names to regions in 3d window.

All this for testing proper buffer drawing in Intel cards... which
is still unsolved.
2011-03-28 18:51:27 +00:00
fc7c3c663e - weight paint poll would crash if no area was found.
- don't print a line for each operator run when in background mode.
- extrude was using an invalid type for RNA access.
2011-03-22 14:04:47 +00:00
2299d674f4 operators called from python were not getting their reports back into python errors.
eg:
- console calls operator
- operator calls report
- report went into header rather them back into the console as an error.
2011-03-22 02:38:39 +00:00
6559209dbf [#26482] Solidify / Animation Opengl render. no texture.
workaround for view3d datamask not being correct on opengl render.
2011-03-13 02:44:25 +00:00
bfe5a6ed8f fix [#26448] Solidify Modifier makes mesh texture missing in OpenGL render 2011-03-11 05:23:56 +00:00
476eadbcb1 Bugfix #26437
- Tooltip-hanging fix made the 'active' button be removed when mouse
  enters another subwindow. Caused by commit of a week ago.

- Reverted the eventsystem change that sets 'active subwindow' before
  it calls modal handlers. This made editors become active on using
  menus, buttons, or other modal ops.

  Side effect is that for transform operators called via toolbar, the
  overlay-extra draw with helplines now gets skipped. Will check on
  good ways for it.
2011-03-10 11:11:26 +00:00
108d150032 From the todo:
Hanging Tooltips solved!

It appeared to be that an active button remained in that state when
another region/editor became active. It then kept the button-activate
state, and therefore also the optional tooltip.

This only happened on fast moves, when a mousemove event was not passed
on anymore to the previously active subwindow.

It has been solved with a new notifier (SWINACTIVE), which gets sent on
new active regions. The screen listener then calls uiFreeActiveButtons()
to find out if buttons were still active somewhere else.
2011-03-09 18:42:35 +00:00
2818add586 From the OFTL:
Arrows-move-cursor is back!
It now works for any running modal operator that doesn't handle own
arrow keys. Might need to become more restricted though, some modal
ops don't need it. Want to investigate that still where conflicts are.
2011-03-07 14:56:19 +00:00
882514d28f Bugfix #26270
Transform started with button in Toolbar was drawing the helper
line badly.

This needed two fixes:
- helper line now has poll() callback to check for correct region
- event system needs to set 'subwinactive' for modal handlers too

The latter might fix issues with cursor/overlay drawing in other
cases?
2011-03-04 18:39:58 +00:00
Nathan Letwory
60b22c5d12 doxygen: blender/windowmanager tagged. 2011-02-25 14:04:21 +00:00
Nathan Letwory
5b607701a7 doxygen: prevent GPL license block from being parsed as doxygen comment. 2011-02-23 10:52:22 +00:00
346f749a57 Adding support for the "media" play/pause/stop/next/prev buttons
available on many keyboards these days, so that they can be used for
animation playback (giving more options over alt-a and alt-a ad-
infinitum).

Currently, this is Windows only as I don't have a Linux/Mac system to
test on (it should compile with both mingw and msvc, at least using
scons). Maintainers for those systems can probably easily add this in
once they find out the relevant mappings for those systems.
2011-02-18 22:42:03 +00:00
f7295ad6d9 Bugfix: "Tweaking" Markers was working incorrectly
WM_modal_tweak_exit() was making incorrect use of the user-pref option
"Release Confirms Transform", indicated by confused coder comment
(<quote>"XXX: WTH is this?"</quote>).

This manisfested when moving markers by just click-dragging and
existing marker, and having it "drop" whereever the mouse was released
regardless of the user-pref option. This was quite confusing as it was
inconsistent with the way that all other transforms worked when this
option is off, where you would usually start the transform (click-
drag), release the button, move around a bit, and then finally click
to end.
2011-02-17 01:24:52 +00:00
4124804b4e many functions in blender are not marked static but should be.
most local modifier,GPU,ImBuf and Interface functions are now static.

also fixed an error were the fluid modifier definition and the header didnt have the same number of args.
2011-02-13 14:16:36 +00:00
36852b98cb Bugfix #25613
Dropping file in Blender from pre 2.5 period caused eternal loop
loading .blend files :)
2011-01-19 18:07:13 +00:00
69c582a3d4 error in last commit, also skip getting vars for wm_operator_reports() when there are no reports. 2011-01-14 21:45:49 +00:00
8227b3d463 remove/comment unused vars
also removed unnecessary NULL checks (where the pointer was used later without checking).
2011-01-13 04:53:55 +00:00
89c9aaaa25 remove references to BKE_utildefines where its not needed.
- move GS() define into DNA_ID.h
- add BLI_utildefines as an automatic include with makesrna generated files.
2011-01-07 19:18:31 +00:00
8f21a43535 split BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.
2011-01-07 18:36:47 +00:00
8b1bfbcfea Todo items:
- File Window: when opened with operator (save, load, etc), you 
  couldn't start a new one, causing memleaks. Now it nicely 
  refreshes file window for new operator.
  Also means you can make CTRL+F3 screenies of filewindow now.
- CTRL+F3 screenshot had memleak on cancel.
2011-01-04 14:37:21 +00:00
be5f30416b Todo item
Drag/drop now has a User preset for dragging threshold.
Noticed this was set to 3 pixels even, made it 5 as default.
Tablet owners can put it larger too :)

Note: the tweak-threshold (3d win) is 10 pixels now, I think
this needs another preset too, leave this for now.

Also: fixed crash in filewindow: drag .blend icon and drop it.
You can't test anything in Blender or you get a bug :)
2011-01-03 17:00:49 +00:00