Commit Graph

83 Commits

Author SHA1 Message Date
Martin Poirier
21b7556bf7 Add cfg folder for keyconfigs (and possibly others later) to be imported after everything else.
Also remove .pyc file when removing keyconfigs.
2010-01-28 21:52:07 +00:00
Martin Poirier
b81cb0200b Keyconfig import and remove
- Keyconfig are now marked as user_defined when it is the case
- Import keyconfig operator: select an exported keyconfig .py file, copies it to the scripts folder (keep the original copy if wanted, default True), imports and select as active config. The active keyconfig is stored in the user default file, so that still has to be saved after import.
- Remove keyconfig operator and button next to the keyconfig name (poll False if not user_defined). Removes the keyconfig from the list and deletes the file from the folder.

Remaining bug: The file is copied in the user defined script folder (if present) or the /scripts/ui folder. The problem is that it might be imported before operators defined in python are imported themselves. One solution would be to use a separate folder for keyconfigs that is imported after all others.
2010-01-28 19:54:06 +00:00
Martin Poirier
86a65890c4 Add missing properties to keymap export operator. 2010-01-27 21:12:33 +00:00
Martin Poirier
c896f1aa43 [#20808] r26221 - Cannot remove shortcuts in user preferences @ modified configuration
keymap in context was wrong after modal keymap was shown.
2010-01-27 16:13:05 +00:00
Matt Ebb
eed13d859b Added a 'linked' icon to modal key maps, to communicate better that they're
instantiated. Helps [#20778] [2.5 - r26180] "Gesture Border" items in user 
preferences panel are not unique
2010-01-25 07:19:28 +00:00
Martin Poirier
b400703403 Macro operator properties using property groups in groups (initial code by brecht).
Works correctly with menu, keymap definitions and keymap export/import.

Properties set in the macro definition overwrite those set by the user (there's no way to see that in the UI at this point).

MISSING: Python operator calling code to fill in the properties hierarchy.

Also contains some keymap export changes by Imran Syed (freakabcd on irc): the exported configuration will use the name of the file and the exported script will select the added configuration when ran.
2010-01-21 21:58:40 +00:00
Joshua Leung
9d54d6ba4e Patch #20693: add parameters for FPS and wait timer for screen cast
This patch by Guillaume Lecocq (lguillaume) adds user preference settings for setting the playback frame-rate and delay between captured frames for the screencasting feature. 

-- 

I've made a few tweaks for a few minor issues
- Made DNA vars for these settings shorts instead of ints, reducing the number of unnecessary extra pad vars 
- Added version patching to ensure that these settings are initialised by default
- Made tooltips for the settings more descriptive
2010-01-21 10:28:19 +00:00
Matt Ebb
467cece2c1 Fix for key map python file export and load
Contributed by 'freakabcd' in IRC.
2010-01-21 02:10:50 +00:00
Matt Ebb
aab8196a1c Finished some work from the weekend to keep local tree clean..
* Added a generic 'histogram' ui control, currently available in new image editor 
'scopes' region (shortcut P). Shows the histogram of the currently viewed image.

It's a baby step in unifying the functionality and code from the sequence editor, 
so eventually we can migrate the sequence preview to the image editor too, 
like compositor.

Still a couple of rough edges to tweak, regarding when it updates. Also would 
be very nice to have this region as a partially transparent overlapping region...
2010-01-19 01:32:06 +00:00
Thomas Dinges
1b580dde6e Console:
* 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-15 17:00:37 +00:00
Joerg Mueller
99b713e8b0 Removed game_sound property as it is not working and not necessary anymore. 2010-01-09 22:28:05 +00:00
Thomas Dinges
e3641796c2 Themes:
*Some more cleanup.
*Renamed active_theme to theme_area, active_theme will be useful, when we have multiple themes again. 
*New layout (Theme Area selection is now expanded).

ToDo:
* Nice wrapping of all options for the different spaces, either manual or via auto generation.
Some items are missing, some are in different positions, altough they are available in different areas.
2010-01-09 18:17:40 +00:00
Thomas Dinges
9ac2d072d1 User Preferences:
*More cleanup, still this file gives me a headache.
2010-01-09 15:49:27 +00:00
Thomas Dinges
cba7e546d8 User Preferences Themes:
* Code cleanup, for general ui style settings.
2010-01-09 12:05:30 +00:00
Matt Ebb
3564eb7763 Added user preferences for color picker type, includes colour wheel + 3 square types.
Find it in prefs -> system
2010-01-09 06:44:54 +00:00
Damien Plisson
05af8dfe53 Disable anti-aliasing initialization, was causing GL_SELECT issues
NVidia (at least) GL drivers don't provide correct picking through GL_SELECT when the GL context is initialized with sample buffers.

So we can't have FSAA on for now as it breaks border,lasso,.. select.
2010-01-08 14:40:47 +00:00
Damien Plisson
f0a22ac2f9 OpenGL anti-aliasing for 3D view, user selectable
Enables AA only for 3D view, and gives the user the option to turn it on/off (in system panel of user prefs)
2010-01-07 10:32:48 +00:00
Campbell Barton
e49e9289f0 - leg_quadruped_generic missing imports
- move global pivot in the UI of userprefs since others are closer related
2010-01-06 22:38:51 +00:00
Brecht Van Lommel
e67df065b8 Fix #20561: keymap editing after using search could edit wrong keymap item. 2010-01-04 16:48:14 +00:00
Campbell Barton
58b1591ceb netrender tab to spaces 2009-12-29 00:04:57 +00:00
Matt Ebb
5f329190c9 Added 'Add New' buttons to key maps shown in filtered mode.
Also on adding new, it expands the key map category and clears the 
filter so you can see the newly added item.
2009-12-28 09:19:32 +00:00
Campbell Barton
944a4f2a3f pep8 edits, removed MakeCursor.py and rna_array.py, not important to make pep8 2009-12-26 09:36:50 +00:00
Campbell Barton
5f4e24d599 operator draw function working again. needed to add layout to the operator to give access to "self.layout" - like panels, headers and manu's have 2009-12-24 21:17:14 +00:00
Campbell Barton
bbe13e7823 * register operators like other classes
* operators now return sets (converted into flags)
* can't remove bpy_operator_wrap.c since macro's still use the custom register funcs
2009-12-24 19:50:43 +00:00
Matt Ebb
980e97923b Key map related things:
* Moved 'change shortcut' (previously directly RMB on menu items) to a context-menu item, and added Remove Shortcut and Add Shortcut. This is all available now in a RMB context menu for operator buttons and menu entries.
* Renamed a bunch of key maps to be consistent with UI names, and human-readable. Since these key map names are now being directly used in the UI for people to find things, they should be understandable and in plain language.

This renaming may break some older saved key map setups - though previously saved .b25.blends should convert over ok. Exported .py files may need some find/replacing - in this commit check the changes in resources.c to see what's changed.
2009-12-24 09:26:06 +00:00
Martin Poirier
62639a55d9 Keymap conflict detection operator.
Takes into account the hierarchical structures of keymaps as well as wildcards (KM_ANY) in event definitions, user remaps (emulate numpad, action/select mouse buttons, ...) and event values that overlap (click, press and release)

For now, doesn't do anything other than print conflicts in the console.

As a result, I cleaned up a lot of keymaps that had double definitions, moved some keymap items in more appropriate places, fixed wrong definitions and removed kmi that were added for testing a long long time ago.

Out of all the remaining conflicts, after removing obvious non-issues, here's what remains: http://www.pasteall.org/9898
2009-12-17 22:14:43 +00:00
Martin Poirier
fd18f55510 keymap editor
New unique ID per keymap item (unique inside their keymap) for default and configuration keymaps.
This allows restoring a single user defined kmi to its previous (default or config) values instead of having to restore the whole keymap.
The restore item button is disabled for kmi added by the users (they don't have an ID).

Also fixes a bug in the rna function for add keymap item (parameter order was incorrect, messing adding back saved configurations).
2009-12-17 03:32:33 +00:00
Campbell Barton
c3b978828c pep8 corrections and no need to use C's _OT_ syntax when accessing operator names from py 2009-12-17 01:21:55 +00:00
Matt Ebb
b9dbd53aea Added search filtering to key map editor - searches in UI names of operators 2009-12-17 01:06:12 +00:00
Matt Ebb
3455261e17 First version of updated key map editor UI (in User Preferences)
Now the key maps are displayed in a hierarchical list which you can 
browse through. As well as in the main list, modal key maps are also 
available in context, for example, if you unfold out a Transform key 
map item, you'll be able to fold out and access its modal key map underneath.

More work to do, including search, better operator browsing, etc.
Still need to revise the ordering/hierarchy and clean up naming to be 
consistent too, it's a bit of an 'evolved' mess right now.

Thanks to theeth for some initial work here too.
2009-12-16 10:13:26 +00:00
William Reynish
66880f62bb Slight reorganization of user preferences. I've switched out the clunky use of splits with percentages and used simple rows instead. 2009-12-15 14:22:34 +00:00
Joshua Leung
b1a39375e5 Keyframing Bugfixes and Feature Requests:
* Added a User-Pref option for the "XYZ to RGB" colour-mode setting for new F-Curves to compliment the one used for Keying Sets. With this option enabled, the builtin Keying Sets also can obey this option.

* Made all places that were previously manually checking the flags for keyframing to use a standard API function to do this now.

* Fixed bug introduced earlier today in commit 25353 by reverting the changes to keyingsets.c. Forgot that delete_keyframe doesn't handle do the "entire array" hack with array_index = -1

* Fixed bug with the insert-keyframe code for the array_index = -1 case, where too many channels were being keyed (i.e. an imaginary channel was often keyed in addition to the valid ones)
2009-12-14 12:09:20 +00:00
Campbell Barton
a1656300ba script for automating pep8 checks.
On ubuntu/debian install these tools...

   sudo apt-get install pylint pyflakes python-setuptools python-pip
   sudo pip install pep8

then run from blenders source dir...
   python release/test/pep8.py

This searches for the comments "# <pep8 compliant>" and "# <pep8-80 compliant>", running the checking tools on these scripts only.

* some minor pep8 corrections too.
2009-12-13 13:59:16 +00:00
Matt Ebb
7e7e1018ac Added back rendered animation playback (in a sense), with a
customisable player.

You can choose a player in User Preferences -> File Paths. You can 
choose a plan custom command line, otherwise there are presets available
for the Blender 2.4 player or DJV (where it will give it the correct filename, 
fps, etc on the command line). So for example if you have a Blender 2.4 
version installed, you can enter the path to the blender 2.4 executable, 
and the playback will work just like before.

Any info on other frame players (FrameCycler? pdplayer?) and their 
command line settings could be useful for adding some more presets too, 
if anyone knows of them.

It's available in Render->Play Rendered Animation (Ctrl F11)
2009-12-11 08:05:05 +00:00
Martin Poirier
0779f2c425 Double Click event value.
Timeout between both clicks is user configurable, should be taken from the OS when possible.
2009-12-10 17:41:03 +00:00
Campbell Barton
b5740b0e77 remove ICON prefix from the enum, for python this is redundant eg.
layout.prop("setting", icon='ICON_BLAH_BLAH')

Also reverted previous commit, the cursor subtype just needed to be added to the switch statement.
2009-12-10 10:23:53 +00:00
Thomas Dinges
1c9da5fe2c 2.5 User Preferences:
* Massive Code Cleanup, still not "Layout Code Guidelines" conform, but much better.

* Commented out buttons that don't work yet, like translation buttons.
* Some minor shuffling around of buttons in "System" Tab. William: Feel free to modify that, still some room for improvements. :)
2009-12-08 19:08:35 +00:00
Guillermo S. Romero
648122b1a2 String fix and a bunch of PEP8 issues I had collected in the meanwhile. 2009-12-04 17:54:48 +00:00
Thomas Dinges
4a4fff5b21 Cleanup:
* Deleted "Add" Prefix for mesh.duplicate_move in Toolbar.
* Renamed "duplicate_ipo" property to "duplicate_fcurve"
2009-11-30 18:26:53 +00:00
William Reynish
e7beae5670 Rename Centroid to Origin, following discussions on mailing list. 2009-11-30 14:40:45 +00:00
Campbell Barton
8b897879cd pep8 cleanup in ui and op dirs, added popup to select pattern 2009-11-28 23:37:56 +00:00
Thomas Dinges
b3784c4751 * Restored the "Solid OpenGL lamps" Buttons in user Preferences. 2009-11-28 18:08:17 +00:00
Matt Ebb
49b828f7fe A few new mouse navigation config options to help transitioning users
* Dolly zoom Vertical/Horizontal switch
  Changes between using vertical or horizontal mouse movement for zooming

* Invert Zoom Direction
   Inverts the vertical or horizontal mouse movement for dolly zoom
2009-11-28 04:43:15 +00:00
Matt Ebb
6ece643979 removed mmb pan/rotate user preference - this is handled by key maps now 2009-11-24 02:07:57 +00:00
Campbell Barton
e0fc6d0c33 more ui api changes.
- remove functions such as operator_int(), operator_enum(), operator_string
  this mixed with keyword arguments in a way that made them hard to read.
  Instead, have operator() always return properties rather then needing an argument.

- rename prop_pointer() --> prop_object(), pointer is more a C thing.

- missed item_enumR(), rename to prop_enum()
2009-11-23 11:43:38 +00:00
Campbell Barton
caab05ec8c rna UI api rename...
note: this aims to follow pep8 however I chose to use 'prop/props' rather then 'property/properties' because it would make function names too long.

itemR() --> prop()
items_enumR() --> props_enum()
item_menu_enumR() --> prop_menu_enum()
item_pointerR() --> prop_pointer()
itemO() --> operator()
item_enumO() --> operator_enum()
items_enumO() --> operator_enums()
item_menu_enumO() --> operator_menu_enum()
item_booleanO() --> operator_boolean()
item_intO() --> operator_int()
item_floatO() --> operator_float()
item_stringO() --> operator_string()
itemL() --> label()
itemM() --> menu()
itemS() --> separator()

batch script used http://www.pasteall.org/9345
2009-11-23 00:27:30 +00:00
Campbell Barton
bdb8004165 use is rather then == when comparing with singletons (None/False/True), its faster and suggested by pep8 2009-11-22 17:41:35 +00:00
Brecht Van Lommel
1295a213a4 2.5: Emulate numpad works again. 2009-11-22 16:33:47 +00:00
Campbell Barton
6073bc9bc3 pep8 cleanup & default select axis to negative (artist requst, make sense if you model the RHS and spend most time looping at the models front) 2009-11-21 00:05:43 +00:00
Campbell Barton
e61c90e416 operators were copying the properties from the rna operator into the class instance.
however this meant the invoke function could not modify properties for exec to use (unless it called exec directly after)
since the popup for eg would re-instance the python class each time.

now use the operator properties directly through rna without an automatic copy.

now an operator attribute is accessed like this...
self.path --> self.properties.path
2009-11-19 17:12:08 +00:00