2011-02-23 10:52:22 +00:00
|
|
|
/*
|
2009-01-02 13:47:33 +00:00
|
|
|
* ***** BEGIN GPL LICENSE BLOCK *****
|
|
|
|
|
*
|
|
|
|
|
* This program is free software; you can redistribute it and/or
|
|
|
|
|
* modify it under the terms of the GNU General Public License
|
|
|
|
|
* as published by the Free Software Foundation; either version 2
|
|
|
|
|
* of the License, or (at your option) any later version.
|
|
|
|
|
*
|
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
|
*
|
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
|
* along with this program; if not, write to the Free Software Foundation,
|
2010-02-12 13:34:04 +00:00
|
|
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
2009-01-02 13:47:33 +00:00
|
|
|
*
|
|
|
|
|
* Contributor(s): Blender Foundation (2008).
|
|
|
|
|
*
|
|
|
|
|
* ***** END GPL LICENSE BLOCK *****
|
|
|
|
|
*/
|
|
|
|
|
|
2011-02-27 20:20:01 +00:00
|
|
|
/** \file blender/makesrna/intern/rna_userdef.c
|
|
|
|
|
* \ingroup RNA
|
|
|
|
|
*/
|
|
|
|
|
|
2009-01-02 13:47:33 +00:00
|
|
|
#include <stdlib.h>
|
|
|
|
|
|
2009-02-02 11:51:10 +00:00
|
|
|
#include "DNA_curve_types.h"
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
#include "DNA_space_types.h"
|
2009-01-02 13:47:33 +00:00
|
|
|
#include "DNA_userdef_types.h"
|
2010-07-14 14:11:03 +00:00
|
|
|
#include "DNA_brush_types.h"
|
2010-11-01 02:22:20 +00:00
|
|
|
#include "DNA_view3d_types.h"
|
2012-01-17 16:31:13 +00:00
|
|
|
#include "DNA_scene_types.h"
|
2009-01-02 13:47:33 +00:00
|
|
|
|
2011-01-07 18:36:47 +00:00
|
|
|
#include "BLI_utildefines.h"
|
2012-04-13 20:25:05 +00:00
|
|
|
|
2014-11-23 14:37:13 +01:00
|
|
|
#include "BKE_appdir.h"
|
2014-11-28 15:15:19 +01:00
|
|
|
#include "BKE_DerivedMesh.h"
|
2009-08-09 21:16:39 +00:00
|
|
|
#include "BKE_sound.h"
|
2012-12-29 10:24:42 +00:00
|
|
|
#include "BKE_addon.h"
|
2009-08-09 21:16:39 +00:00
|
|
|
|
2013-03-07 02:44:55 +00:00
|
|
|
#include "RNA_access.h"
|
|
|
|
|
#include "RNA_define.h"
|
|
|
|
|
#include "RNA_enum_types.h"
|
|
|
|
|
|
|
|
|
|
#include "rna_internal.h"
|
|
|
|
|
|
|
|
|
|
#include "WM_api.h"
|
|
|
|
|
#include "WM_types.h"
|
|
|
|
|
|
2015-08-16 17:32:01 +10:00
|
|
|
#include "BLT_lang.h"
|
2014-11-28 15:15:19 +01:00
|
|
|
#include "GPU_buffers.h"
|
2013-03-07 02:44:55 +00:00
|
|
|
|
2012-01-09 16:58:01 +00:00
|
|
|
#ifdef WITH_CYCLES
|
|
|
|
|
static EnumPropertyItem compute_device_type_items[] = {
|
|
|
|
|
{USER_COMPUTE_DEVICE_NONE, "NONE", 0, "None", "Don't use compute device"},
|
|
|
|
|
{USER_COMPUTE_DEVICE_CUDA, "CUDA", 0, "CUDA", "Use CUDA for GPU acceleration"},
|
|
|
|
|
{USER_COMPUTE_DEVICE_OPENCL, "OPENCL", 0, "OpenCL", "Use OpenCL for GPU acceleration"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{ 0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2012-01-09 16:58:01 +00:00
|
|
|
#endif
|
|
|
|
|
|
2015-07-20 16:08:06 +02:00
|
|
|
#ifdef WITH_OPENSUBDIV
|
|
|
|
|
static EnumPropertyItem opensubdiv_compute_type_items[] = {
|
|
|
|
|
{USER_OPENSUBDIV_COMPUTE_NONE, "NONE", 0, "None", ""},
|
|
|
|
|
{USER_OPENSUBDIV_COMPUTE_CPU, "CPU", 0, "CPU", ""},
|
|
|
|
|
{USER_OPENSUBDIV_COMPUTE_OPENMP, "OPENMP", 0, "OpenMP", ""},
|
|
|
|
|
{USER_OPENSUBDIV_COMPUTE_OPENCL, "OPENCL", 0, "OpenCL", ""},
|
|
|
|
|
{USER_OPENSUBDIV_COMPUTE_CUDA, "CUDA", 0, "CUDA", ""},
|
|
|
|
|
{USER_OPENSUBDIV_COMPUTE_GLSL_TRANSFORM_FEEDBACK, "GLSL_TRANSFORM_FEEDBACL", 0, "GLSL Transform Feedback", ""},
|
|
|
|
|
{USER_OPENSUBDIV_COMPUTE_GLSL_COMPUTE, "GLSL_COMPUTE", 0, "GLSL Compute", ""},
|
|
|
|
|
{ 0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
|
|
|
|
#endif
|
|
|
|
|
|
2013-03-27 07:19:54 +00:00
|
|
|
static EnumPropertyItem audio_device_items[] = {
|
|
|
|
|
{0, "NONE", 0, "None", "Null device - there will be no audio output"},
|
|
|
|
|
#ifdef WITH_SDL
|
|
|
|
|
{1, "SDL", 0, "SDL", "SDL device - simple direct media layer, recommended for sequencer usage"},
|
|
|
|
|
#endif
|
|
|
|
|
#ifdef WITH_OPENAL
|
|
|
|
|
{2, "OPENAL", 0, "OpenAL", "OpenAL device - supports 3D audio, recommended for game engine usage"},
|
|
|
|
|
#endif
|
|
|
|
|
#ifdef WITH_JACK
|
|
|
|
|
{3, "JACK", 0, "Jack", "JACK - Audio Connection Kit, recommended for pro audio users"},
|
|
|
|
|
#endif
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
|
|
|
|
|
2013-12-03 03:14:09 -02:00
|
|
|
EnumPropertyItem navigation_mode_items[] = {
|
|
|
|
|
{VIEW_NAVIGATION_WALK, "WALK", 0, "Walk", "Interactively walk or free navigate around the scene"},
|
|
|
|
|
{VIEW_NAVIGATION_FLY, "FLY", 0, "Fly", "Use fly dynamics to navigate the scene"},
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
|
|
|
|
|
2009-01-02 13:47:33 +00:00
|
|
|
#ifdef RNA_RUNTIME
|
|
|
|
|
|
2009-10-14 16:23:23 +00:00
|
|
|
#include "DNA_object_types.h"
|
2010-11-01 02:22:20 +00:00
|
|
|
#include "DNA_screen_types.h"
|
2010-11-26 22:12:46 +00:00
|
|
|
|
Holiday coding log :)
Nice formatted version (pictures soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Usability
Short list of main changes:
- Transparent region option (over main region), added code to blend in/out such panels.
- Min size window now 640 x 480
- Fixed DPI for ui - lots of cleanup and changes everywhere. Icon image need correct size still, layer-in-use icon needs remake.
- Macbook retina support, use command line --no-native-pixels to disable it
- Timeline Marker label was drawing wrong
- Trackpad and magic mouse: supports zoom (hold ctrl)
- Fix for splash position: removed ghost function and made window size update after creation immediate
- Fast undo buffer save now adds UI as well. Could be checked for regular file save even...
Quit.blend and temp file saving use this now.
- Dixed filename in window on reading quit.blend or temp saves, and they now add a warning in window title: "(Recovered)"
- New Userpref option "Keep Session" - this always saves quit.blend, and loads on start.
This allows keeping UI and data without actual saves, until you actually save.
When you load startup.blend and quit, it recognises the quit.blend as a startup (no file name in header)
- Added 3D view copy/paste buffers (selected objects). Shortcuts ctrl-c, ctrl-v (OSX, cmd-c, cmd-v).
Coded partial file saving for it. Could be used for other purposes. Todo: use OS clipboards.
- User preferences (themes, keymaps, user settings) now can be saved as a separate file.
Old option is called "Save Startup File" the new one "Save User Settings".
To visualise this difference, the 'save startup file' button has been removed from user preferences window. That option is available as CTRL+U and in File menu still.
- OSX: fixed bug that stopped giving mouse events outside window.
This also fixes "Continuous Grab" for OSX. (error since 2009)
2012-12-12 18:58:11 +00:00
|
|
|
#include "BKE_blender.h"
|
2010-11-26 22:12:46 +00:00
|
|
|
#include "BKE_depsgraph.h"
|
2010-02-27 12:34:49 +00:00
|
|
|
#include "BKE_global.h"
|
2010-11-26 22:12:46 +00:00
|
|
|
#include "BKE_main.h"
|
2012-12-29 10:24:42 +00:00
|
|
|
#include "BKE_idprop.h"
|
2015-07-16 16:22:28 +02:00
|
|
|
#include "BKE_pbvh.h"
|
|
|
|
|
#include "BKE_paint.h"
|
2010-11-26 22:12:46 +00:00
|
|
|
|
|
|
|
|
#include "GPU_draw.h"
|
2014-07-23 15:24:07 +02:00
|
|
|
#include "GPU_select.h"
|
2010-11-26 22:12:46 +00:00
|
|
|
|
|
|
|
|
#include "BLF_api.h"
|
2009-10-14 16:23:23 +00:00
|
|
|
|
2010-02-14 23:33:18 +00:00
|
|
|
#include "MEM_guardedalloc.h"
|
2010-07-22 14:02:05 +00:00
|
|
|
#include "MEM_CacheLimiterC-Api.h"
|
2010-02-14 23:33:18 +00:00
|
|
|
|
2011-09-21 15:15:30 +00:00
|
|
|
#include "UI_interface.h"
|
|
|
|
|
|
2012-01-09 16:58:01 +00:00
|
|
|
#include "CCL_api.h"
|
|
|
|
|
|
2015-07-20 16:08:06 +02:00
|
|
|
#ifdef WITH_OPENSUBDIV
|
|
|
|
|
# include "opensubdiv_capi.h"
|
|
|
|
|
#endif
|
|
|
|
|
|
2014-11-17 16:35:36 +05:00
|
|
|
#ifdef WITH_SDL_DYNLOAD
|
|
|
|
|
# include "sdlew.h"
|
|
|
|
|
#endif
|
|
|
|
|
|
2015-07-24 15:44:17 +02:00
|
|
|
|
2011-05-31 02:14:25 +00:00
|
|
|
static void rna_userdef_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
2.5
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-04 20:51:09 +00:00
|
|
|
{
|
2009-12-08 17:23:48 +00:00
|
|
|
WM_main_add_notifier(NC_WINDOW, NULL);
|
2.5
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-04 20:51:09 +00:00
|
|
|
}
|
|
|
|
|
|
Holiday coding log :)
Nice formatted version (pictures soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Usability
Short list of main changes:
- Transparent region option (over main region), added code to blend in/out such panels.
- Min size window now 640 x 480
- Fixed DPI for ui - lots of cleanup and changes everywhere. Icon image need correct size still, layer-in-use icon needs remake.
- Macbook retina support, use command line --no-native-pixels to disable it
- Timeline Marker label was drawing wrong
- Trackpad and magic mouse: supports zoom (hold ctrl)
- Fix for splash position: removed ghost function and made window size update after creation immediate
- Fast undo buffer save now adds UI as well. Could be checked for regular file save even...
Quit.blend and temp file saving use this now.
- Dixed filename in window on reading quit.blend or temp saves, and they now add a warning in window title: "(Recovered)"
- New Userpref option "Keep Session" - this always saves quit.blend, and loads on start.
This allows keeping UI and data without actual saves, until you actually save.
When you load startup.blend and quit, it recognises the quit.blend as a startup (no file name in header)
- Added 3D view copy/paste buffers (selected objects). Shortcuts ctrl-c, ctrl-v (OSX, cmd-c, cmd-v).
Coded partial file saving for it. Could be used for other purposes. Todo: use OS clipboards.
- User preferences (themes, keymaps, user settings) now can be saved as a separate file.
Old option is called "Save Startup File" the new one "Save User Settings".
To visualise this difference, the 'save startup file' button has been removed from user preferences window. That option is available as CTRL+U and in File menu still.
- OSX: fixed bug that stopped giving mouse events outside window.
This also fixes "Continuous Grab" for OSX. (error since 2009)
2012-12-12 18:58:11 +00:00
|
|
|
/* also used by buffer swap switching */
|
2011-10-20 00:19:21 +00:00
|
|
|
static void rna_userdef_dpi_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
Code holiday commit:
- fix: user pref, window title was reset to 'Blender' on tab usage
- Undo history menu back:
- name "Undo History"
- hotkey alt+ctrl+z (alt+apple+z for mac)
- works like 2.4x, only for global undo, editmode and particle edit.
- Menu scroll
- for small windows or screens, popup menus now allow to display
all items, using internal scrolling
- works with a timer, scrolling 10 items per second when mouse
is over the top or bottom arrow
- if menu is too big to display, it now draws to top or bottom,
based on largest available space.
- also works for hotkey driven pop up menus.
- User pref "DPI" follows widget/layout size
- widgets & headers now become bigger and smaller, to match
'dpi' font sizes. Works well to match UI to monitor size.
- note that icons can get fuzzy, we need better mipmaps for it
2011-06-04 17:03:46 +00:00
|
|
|
{
|
2014-01-17 03:04:46 +11:00
|
|
|
/* font's are stored at each DPI level, without this we can easy load 100's of fonts */
|
|
|
|
|
BLF_cache_clear();
|
|
|
|
|
|
Holiday coding log :)
Nice formatted version (pictures soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Usability
Short list of main changes:
- Transparent region option (over main region), added code to blend in/out such panels.
- Min size window now 640 x 480
- Fixed DPI for ui - lots of cleanup and changes everywhere. Icon image need correct size still, layer-in-use icon needs remake.
- Macbook retina support, use command line --no-native-pixels to disable it
- Timeline Marker label was drawing wrong
- Trackpad and magic mouse: supports zoom (hold ctrl)
- Fix for splash position: removed ghost function and made window size update after creation immediate
- Fast undo buffer save now adds UI as well. Could be checked for regular file save even...
Quit.blend and temp file saving use this now.
- Dixed filename in window on reading quit.blend or temp saves, and they now add a warning in window title: "(Recovered)"
- New Userpref option "Keep Session" - this always saves quit.blend, and loads on start.
This allows keeping UI and data without actual saves, until you actually save.
When you load startup.blend and quit, it recognises the quit.blend as a startup (no file name in header)
- Added 3D view copy/paste buffers (selected objects). Shortcuts ctrl-c, ctrl-v (OSX, cmd-c, cmd-v).
Coded partial file saving for it. Could be used for other purposes. Todo: use OS clipboards.
- User preferences (themes, keymaps, user settings) now can be saved as a separate file.
Old option is called "Save Startup File" the new one "Save User Settings".
To visualise this difference, the 'save startup file' button has been removed from user preferences window. That option is available as CTRL+U and in File menu still.
- OSX: fixed bug that stopped giving mouse events outside window.
This also fixes "Continuous Grab" for OSX. (error since 2009)
2012-12-12 18:58:11 +00:00
|
|
|
BKE_userdef_state();
|
2012-05-12 11:01:29 +00:00
|
|
|
WM_main_add_notifier(NC_WINDOW, NULL); /* full redraw */
|
|
|
|
|
WM_main_add_notifier(NC_SCREEN | NA_EDITED, NULL); /* refresh region sizes */
|
Code holiday commit:
- fix: user pref, window title was reset to 'Blender' on tab usage
- Undo history menu back:
- name "Undo History"
- hotkey alt+ctrl+z (alt+apple+z for mac)
- works like 2.4x, only for global undo, editmode and particle edit.
- Menu scroll
- for small windows or screens, popup menus now allow to display
all items, using internal scrolling
- works with a timer, scrolling 10 items per second when mouse
is over the top or bottom arrow
- if menu is too big to display, it now draws to top or bottom,
based on largest available space.
- also works for hotkey driven pop up menus.
- User pref "DPI" follows widget/layout size
- widgets & headers now become bigger and smaller, to match
'dpi' font sizes. Works well to match UI to monitor size.
- note that icons can get fuzzy, we need better mipmaps for it
2011-06-04 17:03:46 +00:00
|
|
|
}
|
|
|
|
|
|
2014-09-30 18:29:32 +02:00
|
|
|
static void rna_userdef_virtual_pixel_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
|
|
|
|
{
|
|
|
|
|
/* font's are stored at each DPI level, without this we can easy load 100's of fonts */
|
|
|
|
|
BLF_cache_clear();
|
|
|
|
|
|
|
|
|
|
BKE_userdef_state();
|
|
|
|
|
WM_main_add_notifier(NC_WINDOW, NULL); /* full redraw */
|
|
|
|
|
WM_main_add_notifier(NC_SCREEN | NA_EDITED, NULL); /* refresh region sizes */
|
|
|
|
|
}
|
|
|
|
|
|
2011-09-15 13:20:18 +00:00
|
|
|
static void rna_userdef_language_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
|
|
|
|
{
|
2011-09-21 15:15:30 +00:00
|
|
|
BLF_cache_clear();
|
2015-08-16 17:32:01 +10:00
|
|
|
BLT_lang_set(NULL);
|
2011-09-21 15:15:30 +00:00
|
|
|
UI_reinit_font();
|
2011-09-15 13:20:18 +00:00
|
|
|
}
|
|
|
|
|
|
2015-07-16 16:22:28 +02:00
|
|
|
static void update_cb(PBVHNode *node, void *UNUSED(rebuild))
|
|
|
|
|
{
|
|
|
|
|
BKE_pbvh_node_mark_rebuild_draw(node);
|
|
|
|
|
}
|
|
|
|
|
|
2014-11-28 15:15:19 +01:00
|
|
|
static void rna_userdef_vbo_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
|
|
|
|
{
|
|
|
|
|
Object *ob;
|
|
|
|
|
|
|
|
|
|
for (ob = bmain->object.first; ob; ob = ob->id.next) {
|
|
|
|
|
GPU_drawobject_free(ob->derivedFinal);
|
2015-07-16 16:22:28 +02:00
|
|
|
|
|
|
|
|
if (ob->sculpt && ob->sculpt->pbvh) {
|
|
|
|
|
BKE_pbvh_search_callback(ob->sculpt->pbvh, NULL, NULL, update_cb, NULL);
|
|
|
|
|
}
|
2014-11-28 15:15:19 +01:00
|
|
|
}
|
2015-07-16 16:22:28 +02:00
|
|
|
GPU_buffer_multires_free(false);
|
2014-11-28 15:15:19 +01:00
|
|
|
}
|
|
|
|
|
|
2010-11-01 02:22:20 +00:00
|
|
|
static void rna_userdef_show_manipulator_update(Main *bmain, Scene *scene, PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
UserDef *userdef = (UserDef *)ptr->data;
|
|
|
|
|
|
|
|
|
|
/* lame, loop over all views and set */
|
|
|
|
|
bScreen *sc;
|
|
|
|
|
ScrArea *sa;
|
|
|
|
|
SpaceLink *sl;
|
|
|
|
|
|
|
|
|
|
/* from scene copy to the other views */
|
2012-03-05 23:30:41 +00:00
|
|
|
for (sc = bmain->screen.first; sc; sc = sc->id.next) {
|
|
|
|
|
for (sa = sc->areabase.first; sa; sa = sa->next) {
|
|
|
|
|
for (sl = sa->spacedata.first; sl; sl = sl->next) {
|
|
|
|
|
if (sl->spacetype == SPACE_VIEW3D) {
|
|
|
|
|
View3D *v3d = (View3D *)sl;
|
|
|
|
|
if (userdef->tw_flag & V3D_USE_MANIPULATOR)
|
2010-11-01 02:22:20 +00:00
|
|
|
v3d->twflag |= V3D_USE_MANIPULATOR;
|
|
|
|
|
else
|
|
|
|
|
v3d->twflag &= ~V3D_USE_MANIPULATOR;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rna_userdef_update(bmain, scene, ptr);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2011-05-31 02:14:25 +00:00
|
|
|
static void rna_userdef_script_autoexec_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr)
|
2010-02-27 12:34:49 +00:00
|
|
|
{
|
2012-05-12 11:01:29 +00:00
|
|
|
UserDef *userdef = (UserDef *)ptr->data;
|
|
|
|
|
if (userdef->flag & USER_SCRIPT_AUTOEXEC_DISABLE) G.f &= ~G_SCRIPT_AUTOEXEC;
|
|
|
|
|
else G.f |= G_SCRIPT_AUTOEXEC;
|
2010-02-27 12:34:49 +00:00
|
|
|
}
|
|
|
|
|
|
2013-06-10 10:55:57 +00:00
|
|
|
static void rna_userdef_load_ui_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
UserDef *userdef = (UserDef *)ptr->data;
|
|
|
|
|
if (userdef->flag & USER_FILENOUI) G.fileflags |= G_FILE_NO_UI;
|
|
|
|
|
else G.fileflags &= ~G_FILE_NO_UI;
|
|
|
|
|
}
|
|
|
|
|
|
2010-02-11 15:45:19 +00:00
|
|
|
static void rna_userdef_mipmap_update(Main *bmain, Scene *scene, PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
GPU_set_mipmap(!(U.gameflags & USER_DISABLE_MIPMAP));
|
|
|
|
|
rna_userdef_update(bmain, scene, ptr);
|
|
|
|
|
}
|
|
|
|
|
|
2011-06-24 03:30:50 +00:00
|
|
|
static void rna_userdef_anisotropic_update(Main *bmain, Scene *scene, PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
GPU_set_anisotropic(U.anisotropic_filter);
|
|
|
|
|
rna_userdef_update(bmain, scene, ptr);
|
|
|
|
|
}
|
|
|
|
|
|
2012-12-05 11:46:13 +00:00
|
|
|
static void rna_userdef_gl_gpu_mipmaps(Main *bmain, Scene *scene, PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
GPU_set_gpu_mipmapping(U.use_gpu_mipmap);
|
|
|
|
|
rna_userdef_update(bmain, scene, ptr);
|
|
|
|
|
}
|
|
|
|
|
|
2011-04-16 10:19:34 +00:00
|
|
|
static void rna_userdef_gl_texture_limit_update(Main *bmain, Scene *scene, PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
GPU_free_images();
|
|
|
|
|
rna_userdef_update(bmain, scene, ptr);
|
|
|
|
|
}
|
|
|
|
|
|
2012-01-17 16:31:13 +00:00
|
|
|
static void rna_userdef_gl_use_16bit_textures(Main *bmain, Scene *scene, PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
GPU_free_images();
|
|
|
|
|
rna_userdef_update(bmain, scene, ptr);
|
|
|
|
|
}
|
|
|
|
|
|
2014-11-07 10:24:11 +01:00
|
|
|
static void rna_userdef_undo_steps_set(PointerRNA *ptr, int value)
|
|
|
|
|
{
|
|
|
|
|
UserDef *userdef = (UserDef *)ptr->data;
|
|
|
|
|
|
|
|
|
|
/* Do not allow 1 undo steps, useless and breaks undo/redo process (see T42531). */
|
|
|
|
|
userdef->undosteps = (value == 1) ? 2 : value;
|
|
|
|
|
}
|
|
|
|
|
|
2012-04-29 15:47:02 +00:00
|
|
|
static void rna_userdef_select_mouse_set(PointerRNA *ptr, int value)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
2012-05-12 11:01:29 +00:00
|
|
|
UserDef *userdef = (UserDef *)ptr->data;
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
if (value) {
|
2009-01-07 21:05:51 +00:00
|
|
|
userdef->flag |= USER_LMOUSESELECT;
|
|
|
|
|
userdef->flag &= ~USER_TWOBUTTONMOUSE;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
userdef->flag &= ~USER_LMOUSESELECT;
|
|
|
|
|
}
|
|
|
|
|
|
2.5
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-04 20:51:09 +00:00
|
|
|
static int rna_userdef_autokeymode_get(PointerRNA *ptr)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
2012-05-12 11:01:29 +00:00
|
|
|
UserDef *userdef = (UserDef *)ptr->data;
|
2009-01-07 21:05:51 +00:00
|
|
|
short retval = userdef->autokey_mode;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
if (!(userdef->autokey_mode & AUTOKEY_ON))
|
2009-01-07 21:05:51 +00:00
|
|
|
retval |= AUTOKEY_ON;
|
|
|
|
|
|
|
|
|
|
return retval;
|
|
|
|
|
}
|
|
|
|
|
|
2012-04-29 15:47:02 +00:00
|
|
|
static void rna_userdef_autokeymode_set(PointerRNA *ptr, int value)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
2012-05-12 11:01:29 +00:00
|
|
|
UserDef *userdef = (UserDef *)ptr->data;
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
if (value == AUTOKEY_MODE_NORMAL) {
|
2009-01-07 21:05:51 +00:00
|
|
|
userdef->autokey_mode |= (AUTOKEY_MODE_NORMAL - AUTOKEY_ON);
|
|
|
|
|
userdef->autokey_mode &= ~(AUTOKEY_MODE_EDITKEYS - AUTOKEY_ON);
|
|
|
|
|
}
|
2012-03-05 23:30:41 +00:00
|
|
|
else if (value == AUTOKEY_MODE_EDITKEYS) {
|
2009-01-07 21:05:51 +00:00
|
|
|
userdef->autokey_mode |= (AUTOKEY_MODE_EDITKEYS - AUTOKEY_ON);
|
|
|
|
|
userdef->autokey_mode &= ~(AUTOKEY_MODE_NORMAL - AUTOKEY_ON);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2015-07-01 13:45:19 +10:00
|
|
|
static void rna_userdef_ndof_deadzone_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
UserDef *userdef = ptr->data;
|
|
|
|
|
WM_ndof_deadzone_set(userdef->ndof_deadzone);
|
|
|
|
|
}
|
|
|
|
|
|
2010-01-30 04:43:36 +00:00
|
|
|
static void rna_userdef_timecode_style_set(PointerRNA *ptr, int value)
|
|
|
|
|
{
|
2012-05-12 11:01:29 +00:00
|
|
|
UserDef *userdef = (UserDef *)ptr->data;
|
2010-01-30 04:43:36 +00:00
|
|
|
int required_size = userdef->v2d_min_gridsize;
|
|
|
|
|
|
|
|
|
|
/* set the timecode style */
|
2012-03-05 23:30:41 +00:00
|
|
|
userdef->timecode_style = value;
|
2010-01-30 04:43:36 +00:00
|
|
|
|
2012-03-18 09:27:36 +00:00
|
|
|
/* adjust the v2d gridsize if needed so that timecodes don't overlap
|
2010-01-30 04:43:36 +00:00
|
|
|
* NOTE: most of these have been hand-picked to avoid overlaps while still keeping
|
|
|
|
|
* things from getting too blown out
|
|
|
|
|
*/
|
|
|
|
|
switch (value) {
|
|
|
|
|
case USER_TIMECODE_MINIMAL:
|
|
|
|
|
case USER_TIMECODE_SECONDS_ONLY:
|
|
|
|
|
/* 35 is great most of the time, but not that great for full-blown */
|
2012-03-05 23:30:41 +00:00
|
|
|
required_size = 35;
|
2010-01-30 04:43:36 +00:00
|
|
|
break;
|
|
|
|
|
case USER_TIMECODE_SMPTE_MSF:
|
2012-03-05 23:30:41 +00:00
|
|
|
required_size = 50;
|
2010-01-30 04:43:36 +00:00
|
|
|
break;
|
|
|
|
|
case USER_TIMECODE_SMPTE_FULL:
|
|
|
|
|
/* the granddaddy! */
|
2012-03-05 23:30:41 +00:00
|
|
|
required_size = 65;
|
2010-01-30 04:43:36 +00:00
|
|
|
break;
|
|
|
|
|
case USER_TIMECODE_MILLISECONDS:
|
2012-03-05 23:30:41 +00:00
|
|
|
required_size = 45;
|
2010-01-30 04:43:36 +00:00
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (U.v2d_min_gridsize < required_size)
|
2012-03-05 23:30:41 +00:00
|
|
|
U.v2d_min_gridsize = required_size;
|
2010-01-30 04:43:36 +00:00
|
|
|
}
|
|
|
|
|
|
2009-02-02 19:57:57 +00:00
|
|
|
static PointerRNA rna_UserDef_view_get(PointerRNA *ptr)
|
2009-01-27 04:37:12 +00:00
|
|
|
{
|
2009-02-02 19:57:57 +00:00
|
|
|
return rna_pointer_inherit_refine(ptr, &RNA_UserPreferencesView, ptr->data);
|
2009-01-27 04:37:12 +00:00
|
|
|
}
|
|
|
|
|
|
2009-02-02 19:57:57 +00:00
|
|
|
static PointerRNA rna_UserDef_edit_get(PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
return rna_pointer_inherit_refine(ptr, &RNA_UserPreferencesEdit, ptr->data);
|
|
|
|
|
}
|
|
|
|
|
|
2009-10-26 11:03:12 +00:00
|
|
|
static PointerRNA rna_UserDef_input_get(PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
return rna_pointer_inherit_refine(ptr, &RNA_UserPreferencesInput, ptr->data);
|
|
|
|
|
}
|
|
|
|
|
|
2009-02-02 19:57:57 +00:00
|
|
|
static PointerRNA rna_UserDef_filepaths_get(PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
return rna_pointer_inherit_refine(ptr, &RNA_UserPreferencesFilePaths, ptr->data);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static PointerRNA rna_UserDef_system_get(PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
return rna_pointer_inherit_refine(ptr, &RNA_UserPreferencesSystem, ptr->data);
|
|
|
|
|
}
|
2009-01-27 04:37:12 +00:00
|
|
|
|
2011-05-31 02:14:25 +00:00
|
|
|
static void rna_UserDef_audio_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
2009-08-09 21:16:39 +00:00
|
|
|
{
|
2015-03-26 11:35:41 +01:00
|
|
|
BKE_sound_init(bmain);
|
2009-08-09 21:16:39 +00:00
|
|
|
}
|
|
|
|
|
|
2011-05-31 02:14:25 +00:00
|
|
|
static void rna_Userdef_memcache_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
2010-07-22 14:02:05 +00:00
|
|
|
{
|
2012-09-26 11:16:27 +00:00
|
|
|
MEM_CacheLimiter_set_maximum(((size_t) U.memcachelimit) * 1024 * 1024);
|
2010-07-22 14:02:05 +00:00
|
|
|
}
|
|
|
|
|
|
2009-12-08 17:23:48 +00:00
|
|
|
static void rna_UserDef_weight_color_update(Main *bmain, Scene *scene, PointerRNA *ptr)
|
2009-10-14 16:23:23 +00:00
|
|
|
{
|
|
|
|
|
Object *ob;
|
|
|
|
|
|
2013-03-05 20:30:38 +00:00
|
|
|
bTheme *btheme = UI_GetTheme();
|
|
|
|
|
vDM_ColorBand_store((U.flag & USER_CUSTOM_RANGE) ? (&U.coba_weight) : NULL, btheme->tv3d.vertex_unreferenced);
|
2009-10-14 16:23:23 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
for (ob = bmain->object.first; ob; ob = ob->id.next) {
|
|
|
|
|
if (ob->mode & OB_MODE_WEIGHT_PAINT)
|
2010-12-05 18:59:23 +00:00
|
|
|
DAG_id_tag_update(&ob->id, OB_RECALC_DATA);
|
2009-10-14 16:23:23 +00:00
|
|
|
}
|
|
|
|
|
|
2009-12-08 17:23:48 +00:00
|
|
|
rna_userdef_update(bmain, scene, ptr);
|
2009-10-14 16:23:23 +00:00
|
|
|
}
|
|
|
|
|
|
2009-12-08 17:23:48 +00:00
|
|
|
static void rna_UserDef_viewport_lights_update(Main *bmain, Scene *scene, PointerRNA *ptr)
|
2009-11-28 19:32:23 +00:00
|
|
|
{
|
2011-06-10 16:59:15 +00:00
|
|
|
/* if all lights are off gpu_draw resets them all, [#27627]
|
|
|
|
|
* so disallow them all to be disabled */
|
2012-03-05 23:30:41 +00:00
|
|
|
if (U.light[0].flag == 0 && U.light[1].flag == 0 && U.light[2].flag == 0) {
|
|
|
|
|
SolidLight *light = ptr->data;
|
2011-06-10 16:59:15 +00:00
|
|
|
light->flag |= 1;
|
|
|
|
|
}
|
|
|
|
|
|
2012-05-12 11:01:29 +00:00
|
|
|
WM_main_add_notifier(NC_SPACE | ND_SPACE_VIEW3D | NS_VIEW3D_GPU, NULL);
|
2009-12-08 17:23:48 +00:00
|
|
|
rna_userdef_update(bmain, scene, ptr);
|
2009-11-28 19:32:23 +00:00
|
|
|
}
|
|
|
|
|
|
2014-07-23 15:24:07 +02:00
|
|
|
static int rna_Scene_GPU_selection_supported(UserDef *UNUSED(U))
|
|
|
|
|
{
|
|
|
|
|
return GPU_select_query_check_support();
|
|
|
|
|
}
|
|
|
|
|
|
2009-12-08 17:23:48 +00:00
|
|
|
static void rna_userdef_autosave_update(Main *bmain, Scene *scene, PointerRNA *ptr)
|
2009-10-20 13:58:53 +00:00
|
|
|
{
|
2012-03-05 23:30:41 +00:00
|
|
|
wmWindowManager *wm = bmain->wm.first;
|
2009-12-08 17:23:48 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
if (wm)
|
2009-12-08 17:23:48 +00:00
|
|
|
WM_autosave_init(wm);
|
|
|
|
|
rna_userdef_update(bmain, scene, ptr);
|
2009-10-20 13:58:53 +00:00
|
|
|
}
|
2009-10-14 16:23:23 +00:00
|
|
|
|
2010-02-26 14:28:29 +00:00
|
|
|
static bAddon *rna_userdef_addon_new(void)
|
2010-02-14 23:33:18 +00:00
|
|
|
{
|
2012-03-05 23:30:41 +00:00
|
|
|
bAddon *bext = MEM_callocN(sizeof(bAddon), "bAddon");
|
2010-02-26 14:28:29 +00:00
|
|
|
BLI_addtail(&U.addons, bext);
|
2010-02-14 23:33:18 +00:00
|
|
|
return bext;
|
|
|
|
|
}
|
|
|
|
|
|
2013-06-18 18:11:52 +00:00
|
|
|
static void rna_userdef_addon_remove(ReportList *reports, PointerRNA *path_cmp_ptr)
|
2010-02-14 23:33:18 +00:00
|
|
|
{
|
2013-06-18 18:11:52 +00:00
|
|
|
bAddon *bext = path_cmp_ptr->data;
|
2012-11-02 09:41:26 +00:00
|
|
|
if (BLI_findindex(&U.addons, bext) == -1) {
|
|
|
|
|
BKE_report(reports, RPT_ERROR, "Addon is no longer valid");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
2013-01-14 10:36:43 +00:00
|
|
|
if (bext->prop) {
|
|
|
|
|
IDP_FreeProperty(bext->prop);
|
|
|
|
|
MEM_freeN(bext->prop);
|
|
|
|
|
}
|
|
|
|
|
|
2010-02-26 14:28:29 +00:00
|
|
|
BLI_freelinkN(&U.addons, bext);
|
2013-06-18 18:11:52 +00:00
|
|
|
RNA_POINTER_INVALIDATE(path_cmp_ptr);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static bPathCompare *rna_userdef_pathcompare_new(void)
|
|
|
|
|
{
|
|
|
|
|
bPathCompare *path_cmp = MEM_callocN(sizeof(bPathCompare), "bPathCompare");
|
|
|
|
|
BLI_addtail(&U.autoexec_paths, path_cmp);
|
|
|
|
|
return path_cmp;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_userdef_pathcompare_remove(ReportList *reports, PointerRNA *path_cmp_ptr)
|
|
|
|
|
{
|
|
|
|
|
bPathCompare *path_cmp = path_cmp_ptr->data;
|
|
|
|
|
if (BLI_findindex(&U.autoexec_paths, path_cmp) == -1) {
|
2013-11-02 10:37:42 +00:00
|
|
|
BKE_report(reports, RPT_ERROR, "Excluded path is no longer valid");
|
2013-06-18 18:11:52 +00:00
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
BLI_freelinkN(&U.autoexec_paths, path_cmp);
|
|
|
|
|
RNA_POINTER_INVALIDATE(path_cmp_ptr);
|
2010-02-14 23:33:18 +00:00
|
|
|
}
|
|
|
|
|
|
2011-05-31 02:14:25 +00:00
|
|
|
static void rna_userdef_temp_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
2010-03-16 17:23:20 +00:00
|
|
|
{
|
2014-11-23 15:54:29 +01:00
|
|
|
BKE_tempdir_init(U.tempdir);
|
2010-03-16 17:23:20 +00:00
|
|
|
}
|
2010-02-14 23:33:18 +00:00
|
|
|
|
2011-05-31 02:14:25 +00:00
|
|
|
static void rna_userdef_text_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
2010-11-26 22:12:46 +00:00
|
|
|
{
|
|
|
|
|
BLF_cache_clear();
|
|
|
|
|
WM_main_add_notifier(NC_WINDOW, NULL);
|
|
|
|
|
}
|
|
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
static PointerRNA rna_Theme_space_generic_get(PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
return rna_pointer_inherit_refine(ptr, &RNA_ThemeSpaceGeneric, ptr->data);
|
|
|
|
|
}
|
|
|
|
|
|
2013-01-07 15:42:42 +00:00
|
|
|
static PointerRNA rna_Theme_space_gradient_get(PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
return rna_pointer_inherit_refine(ptr, &RNA_ThemeSpaceGradient, ptr->data);
|
|
|
|
|
}
|
|
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
static PointerRNA rna_Theme_space_list_generic_get(PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
return rna_pointer_inherit_refine(ptr, &RNA_ThemeSpaceListGeneric, ptr->data);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2012-01-09 16:58:01 +00:00
|
|
|
#ifdef WITH_CYCLES
|
2012-03-18 09:27:36 +00:00
|
|
|
static EnumPropertyItem *rna_userdef_compute_device_type_itemf(bContext *UNUSED(C), PointerRNA *UNUSED(ptr),
|
2014-01-04 18:08:43 +11:00
|
|
|
PropertyRNA *UNUSED(prop), bool *r_free)
|
2012-01-09 16:58:01 +00:00
|
|
|
{
|
2012-03-05 23:30:41 +00:00
|
|
|
EnumPropertyItem *item = NULL;
|
|
|
|
|
int totitem = 0;
|
2012-01-09 16:58:01 +00:00
|
|
|
|
|
|
|
|
/* add supported device types */
|
|
|
|
|
RNA_enum_items_add_value(&item, &totitem, compute_device_type_items, USER_COMPUTE_DEVICE_NONE);
|
2012-03-05 23:30:41 +00:00
|
|
|
if (CCL_compute_device_list(0))
|
2012-01-09 16:58:01 +00:00
|
|
|
RNA_enum_items_add_value(&item, &totitem, compute_device_type_items, USER_COMPUTE_DEVICE_CUDA);
|
2012-03-05 23:30:41 +00:00
|
|
|
if (CCL_compute_device_list(1))
|
2012-01-09 16:58:01 +00:00
|
|
|
RNA_enum_items_add_value(&item, &totitem, compute_device_type_items, USER_COMPUTE_DEVICE_OPENCL);
|
|
|
|
|
|
|
|
|
|
RNA_enum_item_end(&item, &totitem);
|
2014-01-04 18:08:43 +11:00
|
|
|
*r_free = true;
|
2012-01-09 16:58:01 +00:00
|
|
|
|
|
|
|
|
return item;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static int rna_userdef_compute_device_get(PointerRNA *UNUSED(ptr))
|
|
|
|
|
{
|
2012-03-05 23:30:41 +00:00
|
|
|
if (U.compute_device_type == USER_COMPUTE_DEVICE_NONE)
|
2012-01-09 16:58:01 +00:00
|
|
|
return 0;
|
|
|
|
|
|
|
|
|
|
return U.compute_device_id;
|
|
|
|
|
}
|
|
|
|
|
|
2012-03-18 09:27:36 +00:00
|
|
|
static EnumPropertyItem *rna_userdef_compute_device_itemf(bContext *UNUSED(C), PointerRNA *UNUSED(ptr),
|
2014-01-04 18:08:43 +11:00
|
|
|
PropertyRNA *UNUSED(prop), bool *r_free)
|
2012-01-09 16:58:01 +00:00
|
|
|
{
|
2012-03-05 23:30:41 +00:00
|
|
|
EnumPropertyItem tmp = {0, "", 0, "", ""};
|
|
|
|
|
EnumPropertyItem *item = NULL;
|
|
|
|
|
int totitem = 0;
|
2012-01-09 16:58:01 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
if (U.compute_device_type == USER_COMPUTE_DEVICE_NONE) {
|
2012-01-09 16:58:01 +00:00
|
|
|
/* only add a single CPU device */
|
|
|
|
|
tmp.value = 0;
|
|
|
|
|
tmp.name = "CPU";
|
|
|
|
|
tmp.identifier = "CPU";
|
|
|
|
|
RNA_enum_item_add(&item, &totitem, &tmp);
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
/* get device list from cycles. it would be good to make this generic
|
2012-05-16 23:37:23 +00:00
|
|
|
* once we have more subsystems using opencl, for now this is easiest */
|
2012-01-09 16:58:01 +00:00
|
|
|
int opencl = (U.compute_device_type == USER_COMPUTE_DEVICE_OPENCL);
|
|
|
|
|
CCLDeviceInfo *devices = CCL_compute_device_list(opencl);
|
|
|
|
|
int a;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
if (devices) {
|
2012-11-10 08:37:02 +00:00
|
|
|
for (a = 0; devices[a].identifier[0]; a++) {
|
2012-01-30 15:33:28 +00:00
|
|
|
tmp.value = devices[a].value;
|
|
|
|
|
tmp.identifier = devices[a].identifier;
|
|
|
|
|
tmp.name = devices[a].name;
|
|
|
|
|
RNA_enum_item_add(&item, &totitem, &tmp);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
tmp.value = 0;
|
|
|
|
|
tmp.name = "CPU";
|
|
|
|
|
tmp.identifier = "CPU";
|
2012-01-09 16:58:01 +00:00
|
|
|
RNA_enum_item_add(&item, &totitem, &tmp);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
RNA_enum_item_end(&item, &totitem);
|
2014-01-04 18:08:43 +11:00
|
|
|
*r_free = true;
|
2012-01-09 16:58:01 +00:00
|
|
|
|
|
|
|
|
return item;
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
2015-07-20 16:08:06 +02:00
|
|
|
#ifdef WITH_OPENSUBDIV
|
|
|
|
|
static EnumPropertyItem *rna_userdef_opensubdiv_compute_type_itemf(bContext *UNUSED(C), PointerRNA *UNUSED(ptr),
|
|
|
|
|
PropertyRNA *UNUSED(prop), bool *r_free)
|
|
|
|
|
{
|
|
|
|
|
EnumPropertyItem *item = NULL;
|
|
|
|
|
int totitem = 0;
|
|
|
|
|
int evaluators = openSubdiv_getAvailableEvaluators();
|
|
|
|
|
|
|
|
|
|
RNA_enum_items_add_value(&item, &totitem, opensubdiv_compute_type_items, USER_OPENSUBDIV_COMPUTE_NONE);
|
|
|
|
|
|
|
|
|
|
#define APPEND_COMPUTE(compute) \
|
|
|
|
|
if (evaluators & OPENSUBDIV_EVALUATOR_## compute) { \
|
|
|
|
|
RNA_enum_items_add_value(&item, &totitem, opensubdiv_compute_type_items, USER_OPENSUBDIV_COMPUTE_ ## compute); \
|
|
|
|
|
} ((void)0)
|
|
|
|
|
|
|
|
|
|
APPEND_COMPUTE(CPU);
|
|
|
|
|
APPEND_COMPUTE(OPENMP);
|
|
|
|
|
APPEND_COMPUTE(OPENCL);
|
|
|
|
|
APPEND_COMPUTE(CUDA);
|
|
|
|
|
APPEND_COMPUTE(GLSL_TRANSFORM_FEEDBACK);
|
|
|
|
|
APPEND_COMPUTE(GLSL_COMPUTE);
|
|
|
|
|
|
|
|
|
|
#undef APPEND_COMPUTE
|
|
|
|
|
|
|
|
|
|
RNA_enum_item_end(&item, &totitem);
|
|
|
|
|
*r_free = true;
|
|
|
|
|
|
|
|
|
|
return item;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_userdef_opensubdiv_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *UNUSED(ptr))
|
|
|
|
|
{
|
|
|
|
|
Object *object;
|
|
|
|
|
|
|
|
|
|
for (object = bmain->object.first;
|
|
|
|
|
object;
|
|
|
|
|
object = object->id.next)
|
|
|
|
|
{
|
|
|
|
|
if (object->derivedFinal != NULL &&
|
|
|
|
|
object->derivedFinal->type == DM_TYPE_CCGDM)
|
|
|
|
|
{
|
|
|
|
|
DAG_id_tag_update(&object->id, OB_RECALC_OB);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
2013-03-27 07:19:54 +00:00
|
|
|
static EnumPropertyItem *rna_userdef_audio_device_itemf(bContext *UNUSED(C), PointerRNA *UNUSED(ptr),
|
2014-01-04 18:08:43 +11:00
|
|
|
PropertyRNA *UNUSED(prop), bool *r_free)
|
2013-03-27 07:19:54 +00:00
|
|
|
{
|
2014-11-17 16:35:36 +05:00
|
|
|
int index = 0;
|
|
|
|
|
int totitem = 0;
|
|
|
|
|
EnumPropertyItem *item = NULL;
|
2013-03-27 07:19:54 +00:00
|
|
|
|
2015-07-24 15:44:17 +02:00
|
|
|
#ifdef WITH_SYSTEM_AUDASPACE
|
|
|
|
|
int i;
|
|
|
|
|
|
2015-07-29 10:43:32 +10:00
|
|
|
char **names = BKE_sound_get_device_names();
|
2015-07-24 15:44:17 +02:00
|
|
|
|
2015-07-29 10:43:32 +10:00
|
|
|
for (i = 0; names[i]; i++) {
|
2015-07-24 15:44:17 +02:00
|
|
|
EnumPropertyItem new_item = {i, names[i], 0, names[i], names[i]};
|
|
|
|
|
RNA_enum_item_add(&item, &totitem, &new_item);
|
|
|
|
|
}
|
|
|
|
|
#else
|
2014-11-17 16:35:36 +05:00
|
|
|
/* NONE */
|
|
|
|
|
RNA_enum_item_add(&item, &totitem, &audio_device_items[index++]);
|
2013-03-27 07:19:54 +00:00
|
|
|
|
|
|
|
|
#ifdef WITH_SDL
|
2014-11-17 16:35:36 +05:00
|
|
|
# ifdef WITH_SDL_DYNLOAD
|
|
|
|
|
if (sdlewInit() == SDLEW_SUCCESS)
|
|
|
|
|
# endif
|
|
|
|
|
{
|
|
|
|
|
RNA_enum_item_add(&item, &totitem, &audio_device_items[index]);
|
|
|
|
|
}
|
|
|
|
|
index++;
|
2013-03-27 07:19:54 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef WITH_OPENAL
|
2014-11-17 16:35:36 +05:00
|
|
|
RNA_enum_item_add(&item, &totitem, &audio_device_items[index++]);
|
2013-03-27 07:19:54 +00:00
|
|
|
#endif
|
|
|
|
|
|
2014-11-17 16:35:36 +05:00
|
|
|
#ifdef WITH_JACK
|
2015-03-26 13:19:33 +01:00
|
|
|
if (BKE_sound_is_jack_supported()) {
|
2014-11-17 16:35:36 +05:00
|
|
|
RNA_enum_item_add(&item, &totitem, &audio_device_items[index]);
|
2013-03-27 07:19:54 +00:00
|
|
|
}
|
2014-11-17 16:35:36 +05:00
|
|
|
index++;
|
2015-07-24 15:44:17 +02:00
|
|
|
#endif
|
2013-03-27 07:19:54 +00:00
|
|
|
#endif
|
2014-11-17 16:35:36 +05:00
|
|
|
|
2015-08-06 16:52:28 +10:00
|
|
|
/* may be unused */
|
|
|
|
|
UNUSED_VARS(index, audio_device_items);
|
|
|
|
|
|
2014-11-17 16:35:36 +05:00
|
|
|
RNA_enum_item_end(&item, &totitem);
|
|
|
|
|
*r_free = true;
|
|
|
|
|
|
|
|
|
|
return item;
|
2013-03-27 07:19:54 +00:00
|
|
|
}
|
|
|
|
|
|
2012-10-22 18:19:55 +00:00
|
|
|
#ifdef WITH_INTERNATIONAL
|
2012-10-22 14:04:40 +00:00
|
|
|
static EnumPropertyItem *rna_lang_enum_properties_itemf(bContext *UNUSED(C), PointerRNA *UNUSED(ptr),
|
2014-01-04 18:08:43 +11:00
|
|
|
PropertyRNA *UNUSED(prop), bool *UNUSED(r_free))
|
2012-10-22 14:04:40 +00:00
|
|
|
{
|
2015-08-16 17:32:01 +10:00
|
|
|
return BLT_lang_RNA_enum_properties();
|
2012-10-22 14:04:40 +00:00
|
|
|
}
|
2012-10-22 18:19:55 +00:00
|
|
|
#endif
|
2012-10-22 14:04:40 +00:00
|
|
|
|
2013-03-07 02:44:55 +00:00
|
|
|
static IDProperty *rna_AddonPref_idprops(PointerRNA *ptr, bool create)
|
2012-12-29 10:24:42 +00:00
|
|
|
{
|
|
|
|
|
if (create && !ptr->data) {
|
|
|
|
|
IDPropertyTemplate val = {0};
|
|
|
|
|
ptr->data = IDP_New(IDP_GROUP, &val, "RNA_AddonPreferences group");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return ptr->data;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static PointerRNA rna_Addon_preferences_get(PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
bAddon *addon = (bAddon *)ptr->data;
|
2014-04-01 11:34:00 +11:00
|
|
|
bAddonPrefType *apt = BKE_addon_pref_type_find(addon->module, true);
|
2012-12-29 10:24:42 +00:00
|
|
|
if (apt) {
|
|
|
|
|
if (addon->prop == NULL) {
|
|
|
|
|
IDPropertyTemplate val = {0};
|
|
|
|
|
addon->prop = IDP_New(IDP_GROUP, &val, addon->module); /* name is unimportant */
|
|
|
|
|
}
|
|
|
|
|
return rna_pointer_inherit_refine(ptr, apt->ext.srna, addon->prop);
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
return PointerRNA_NULL;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_AddonPref_unregister(Main *UNUSED(bmain), StructRNA *type)
|
|
|
|
|
{
|
|
|
|
|
bAddonPrefType *apt = RNA_struct_blender_type_get(type);
|
|
|
|
|
|
|
|
|
|
if (!apt)
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
RNA_struct_free_extension(type, &apt->ext);
|
|
|
|
|
|
|
|
|
|
BKE_addon_pref_type_remove(apt);
|
|
|
|
|
RNA_struct_free(&BLENDER_RNA, type);
|
|
|
|
|
|
|
|
|
|
/* update while blender is running */
|
2013-01-09 13:15:23 +00:00
|
|
|
WM_main_add_notifier(NC_WINDOW, NULL);
|
2012-12-29 10:24:42 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static StructRNA *rna_AddonPref_register(Main *bmain, ReportList *reports, void *data, const char *identifier,
|
|
|
|
|
StructValidateFunc validate, StructCallbackFunc call, StructFreeFunc free)
|
|
|
|
|
{
|
|
|
|
|
bAddonPrefType *apt, dummyapt = {{'\0'}};
|
|
|
|
|
bAddon dummyaddon = {NULL};
|
|
|
|
|
PointerRNA dummyhtr;
|
|
|
|
|
// int have_function[1];
|
|
|
|
|
|
|
|
|
|
/* setup dummy header & header type to store static properties in */
|
|
|
|
|
RNA_pointer_create(NULL, &RNA_AddonPreferences, &dummyaddon, &dummyhtr);
|
|
|
|
|
|
|
|
|
|
/* validate the python class */
|
|
|
|
|
if (validate(&dummyhtr, data, NULL /* have_function */ ) != 0)
|
|
|
|
|
return NULL;
|
|
|
|
|
|
|
|
|
|
BLI_strncpy(dummyapt.idname, dummyaddon.module, sizeof(dummyapt.idname));
|
|
|
|
|
if (strlen(identifier) >= sizeof(dummyapt.idname)) {
|
|
|
|
|
BKE_reportf(reports, RPT_ERROR, "Registering addon-prefs class: '%s' is too long, maximum length is %d",
|
|
|
|
|
identifier, (int)sizeof(dummyapt.idname));
|
|
|
|
|
return NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* check if we have registered this header type before, and remove it */
|
2014-04-01 11:34:00 +11:00
|
|
|
apt = BKE_addon_pref_type_find(dummyaddon.module, true);
|
2012-12-29 10:24:42 +00:00
|
|
|
if (apt) {
|
|
|
|
|
if (apt->ext.srna) {
|
|
|
|
|
rna_AddonPref_unregister(bmain, apt->ext.srna);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* create a new header type */
|
|
|
|
|
apt = MEM_mallocN(sizeof(bAddonPrefType), "addonpreftype");
|
|
|
|
|
memcpy(apt, &dummyapt, sizeof(dummyapt));
|
|
|
|
|
BKE_addon_pref_type_add(apt);
|
|
|
|
|
|
2013-01-09 05:32:15 +00:00
|
|
|
apt->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, identifier, &RNA_AddonPreferences);
|
2012-12-29 10:24:42 +00:00
|
|
|
apt->ext.data = data;
|
|
|
|
|
apt->ext.call = call;
|
|
|
|
|
apt->ext.free = free;
|
|
|
|
|
RNA_struct_blender_type_set(apt->ext.srna, apt);
|
|
|
|
|
|
|
|
|
|
// apt->draw = (have_function[0]) ? header_draw : NULL;
|
|
|
|
|
|
|
|
|
|
/* update while blender is running */
|
2013-01-09 13:15:23 +00:00
|
|
|
WM_main_add_notifier(NC_WINDOW, NULL);
|
2012-12-29 10:24:42 +00:00
|
|
|
|
|
|
|
|
return apt->ext.srna;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* placeholder, doesn't do anything useful yet */
|
|
|
|
|
static StructRNA *rna_AddonPref_refine(PointerRNA *ptr)
|
|
|
|
|
{
|
|
|
|
|
return (ptr->type) ? ptr->type : &RNA_AddonPreferences;
|
|
|
|
|
}
|
|
|
|
|
|
2009-01-02 13:47:33 +00:00
|
|
|
#else
|
|
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
static void rna_def_userdef_theme_ui_font_style(BlenderRNA *brna)
|
2009-01-02 13:47:33 +00:00
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2009-07-10 22:16:25 +00:00
|
|
|
static EnumPropertyItem font_kerning_style[] = {
|
2010-02-11 01:11:52 +00:00
|
|
|
{0, "UNFITTED", 0, "Unfitted", "Use scaled but un-grid-fitted kerning distances"},
|
2012-12-24 00:29:24 +00:00
|
|
|
{1, "FITTED", 0, "Fitted", "Use scaled and grid-fitted kerning distances"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-07-10 22:16:25 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeFontStyle", NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_struct_sdna(srna, "uiFontStyle");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Font Style", "Theme settings for Font");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "points", PROP_INT, PROP_NONE);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_range(prop, 6, 48);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Points", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-06-11 21:43:59 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "font_kerning_style", PROP_ENUM, PROP_NONE);
|
2009-07-10 22:16:25 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "kerning");
|
|
|
|
|
RNA_def_property_enum_items(prop, font_kerning_style);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Kerning Style", "Which style to use for font kerning");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-07-10 22:16:25 +00:00
|
|
|
|
2013-12-13 17:03:44 +01:00
|
|
|
prop = RNA_def_property(srna, "shadow", PROP_INT, PROP_PIXEL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_range(prop, 0, 5);
|
2013-12-13 17:03:44 +01:00
|
|
|
RNA_def_property_ui_text(prop, "Shadow Size", "Shadow size (0, 3 and 5 supported)");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2013-12-13 04:39:15 +11:00
|
|
|
prop = RNA_def_property(srna, "shadow_offset_x", PROP_INT, PROP_PIXEL);
|
2010-08-17 13:14:41 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "shadx");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_range(prop, -10, 10);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Shadow X Offset", "Shadow offset in pixels");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2013-12-13 04:39:15 +11:00
|
|
|
prop = RNA_def_property(srna, "shadow_offset_y", PROP_INT, PROP_PIXEL);
|
2010-08-17 13:14:41 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "shady");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_range(prop, -10, 10);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Shadow Y Offset", "Shadow offset in pixels");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-02 13:47:33 +00:00
|
|
|
|
2013-06-06 20:36:28 +00:00
|
|
|
prop = RNA_def_property(srna, "shadow_alpha", PROP_FLOAT, PROP_NONE);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shadowalpha");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_range(prop, 0.0f, 1.0f);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Shadow Alpha", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2013-06-06 20:36:28 +00:00
|
|
|
prop = RNA_def_property(srna, "shadow_value", PROP_FLOAT, PROP_NONE);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shadowcolor");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_range(prop, 0.0f, 1.0f);
|
2012-07-03 19:09:07 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Shadow Brightness", "Shadow color in gray value");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-03-05 23:30:41 +00:00
|
|
|
}
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
static void rna_def_userdef_theme_ui_style(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
rna_def_userdef_theme_ui_font_style(brna);
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeStyle", NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_struct_sdna(srna, "uiStyle");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Style", "Theme settings for style sets");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-05-12 11:01:29 +00:00
|
|
|
|
2013-01-23 16:01:35 +00:00
|
|
|
prop = RNA_def_property(srna, "panel_title", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2013-01-23 16:01:35 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "paneltitle");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_struct_type(prop, "ThemeFontStyle");
|
2013-01-23 16:01:35 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Panel Title Font", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-01-23 16:01:35 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "widget_label", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "widgetlabel");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeFontStyle");
|
2011-06-24 14:00:15 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Widget Label Style", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "widget", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "widget");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeFontStyle");
|
2011-06-24 14:00:15 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Widget Style", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
}
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
static void rna_def_userdef_theme_ui_wcol(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeWidgetColors", NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_struct_sdna(srna, "uiWidgetColors");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Widget Color Set", "Theme settings for widget color sets");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "outline", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Outline", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "inner", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Inner", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "inner_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Inner Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "item", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Item", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Text", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "text_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Text Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_shaded", PROP_BOOLEAN, PROP_NONE);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "shaded", 1);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Shaded", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "shadetop", PROP_INT, PROP_NONE);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_range(prop, -100, 100);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Shade Top", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "shadedown", PROP_INT, PROP_NONE);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_range(prop, -100, 100);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Shade Down", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-07-12 02:06:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_ui_wcol_state(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeWidgetStateColors", NULL);
|
2009-07-12 02:06:15 +00:00
|
|
|
RNA_def_struct_sdna(srna, "uiWidgetStateColors");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Widget State Color", "Theme settings for widget state colors");
|
2009-07-12 02:06:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "inner_anim", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-07-12 02:06:15 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Animated", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-07-12 02:06:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "inner_anim_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-07-12 02:06:15 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Animated Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "inner_key", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-07-12 02:06:15 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Keyframe", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-07-12 02:06:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "inner_key_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-07-12 02:06:15 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Keyframe Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-07-12 02:06:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "inner_driven", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-07-12 02:06:15 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Driven", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-07-12 02:06:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "inner_driven_sel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-07-12 02:06:15 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Driven Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-07-12 02:06:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "blend", PROP_FLOAT, PROP_FACTOR);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Blend", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
}
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2011-11-19 20:57:53 +00:00
|
|
|
static void rna_def_userdef_theme_ui_panel(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemePanelColors", NULL);
|
2011-11-19 20:57:53 +00:00
|
|
|
RNA_def_struct_sdna(srna, "uiPanelColors");
|
|
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
|
|
|
|
RNA_def_struct_ui_text(srna, "Theme Panel Color", "Theme settings for panel colors");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "header", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-19 20:57:53 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Header", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-12-15 16:22:18 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "back", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_header", PROP_BOOLEAN, PROP_NONE);
|
2011-11-19 20:57:53 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Show Header", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-12-15 16:22:18 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "show_back", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Show Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-11-19 20:57:53 +00:00
|
|
|
}
|
|
|
|
|
|
2013-01-06 16:45:10 +00:00
|
|
|
static void rna_def_userdef_theme_ui_gradient(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
srna = RNA_def_struct(brna, "ThemeGradientColors", NULL);
|
|
|
|
|
RNA_def_struct_sdna(srna, "uiGradientColors");
|
|
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Background Color", "Theme settings for background colors and gradient");
|
2013-01-06 16:45:10 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "show_grad", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Use Gradient",
|
|
|
|
|
"Do a gradient for the background of the viewport working area");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-01-07 15:42:42 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "gradient", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Gradient Low", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "high_gradient", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Gradient High/Off", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-01-06 16:45:10 +00:00
|
|
|
}
|
|
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
static void rna_def_userdef_theme_ui(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
rna_def_userdef_theme_ui_wcol(brna);
|
2009-07-12 02:06:15 +00:00
|
|
|
rna_def_userdef_theme_ui_wcol_state(brna);
|
2011-11-19 20:57:53 +00:00
|
|
|
rna_def_userdef_theme_ui_panel(brna);
|
2013-01-06 16:45:10 +00:00
|
|
|
rna_def_userdef_theme_ui_gradient(brna);
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeUserInterface", NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeUI");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme User Interface", "Theme settings for user interface elements");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_regular", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Regular Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_tool", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Tool Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_radio", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Radio Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_text", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Text Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_option", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Option Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-06-24 14:16:56 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_toggle", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-06-24 14:16:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Toggle Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_num", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Number Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_numslider", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Slider Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_box", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-06-01 11:31:06 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Box Backdrop Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-06-01 11:31:06 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_menu", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Menu Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_pulldown", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Pulldown Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_menu_back", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Menu Backdrop Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
Pie Menus C code backend.
This commit merges the code in the pie-menu branch.
As per decisions taken the last few days, there are no pie menus
included and there will be an official add-on including overrides of
some keys with pie menus. However, people will now be able to use the
new code in python.
Full Documentation is in http://wiki.blender.org/index.php/Dev:Ref/
Thanks:
Campbell Barton, Dalai Felinto and Ton Roosendaal for the code review
and design comments
Jonathan Williamson, Pawel Lyczkowski, Pablo Vazquez among others for
suggestions during the development.
Special Thanks to Sean Olson, for his support, suggestions, testing and
merciless bugging so that I would finish the pie menu code. Without him
we wouldn't be here. Also to the rest of the developers of the original
python add-on, Patrick Moore and Dan Eicher and finally to Matt Ebb, who
did the research and first implementation and whose code I used to get
started.
2014-08-11 10:39:59 +02:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "wcol_pie_menu", PROP_POINTER, PROP_NONE);
|
|
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Pie Menu Colors", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-19 22:29:16 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_tooltip", PROP_POINTER, PROP_NONE);
|
|
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Tooltip Colors", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_menu_item", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Menu Item Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-06-24 14:16:56 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_scroll", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-06-24 14:16:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Scroll Widget Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2010-05-27 08:22:16 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_progress", PROP_POINTER, PROP_NONE);
|
2010-05-27 08:22:16 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Progress Bar Widget Colors", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-07-12 02:06:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_list_item", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-07-21 01:26:17 +00:00
|
|
|
RNA_def_property_ui_text(prop, "List Item Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-07-21 01:26:17 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wcol_state", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-07-12 02:06:15 +00:00
|
|
|
RNA_def_property_ui_text(prop, "State Colors", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-11-19 20:57:53 +00:00
|
|
|
|
2012-12-20 16:50:39 +00:00
|
|
|
prop = RNA_def_property(srna, "menu_shadow_fac", PROP_FLOAT, PROP_FACTOR);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Menu Shadow Strength", "Blending factor for menu shadows");
|
|
|
|
|
RNA_def_property_range(prop, 0.01f, 1.0f);
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2013-12-13 17:03:44 +01:00
|
|
|
prop = RNA_def_property(srna, "menu_shadow_width", PROP_INT, PROP_PIXEL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Menu Shadow Width", "Width of menu shadows, set to zero to disable");
|
2012-12-20 16:50:39 +00:00
|
|
|
RNA_def_property_range(prop, 0.0f, 24.0f);
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "icon_file", PROP_STRING, PROP_FILEPATH);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "iconfile");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Icon File", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-11-19 20:57:53 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "icon_alpha", PROP_FLOAT, PROP_FACTOR);
|
2011-11-19 20:57:53 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Icon Alpha", "Transparency of icons in the interface, to reduce contrast");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
Axis Colours are now Themeable
This commit allows you to set the RGB <-> XYZ axis colours used for things like
the mini axis indicator, grid axis indicators, manipulators, transform
constraint indicators, F-Curves (when using XYZ to RGB colouring option), and
perhaps something else I've missed. Previously, these places all used hardcoded
defines (220 * i/j/k), but the readability of these colours was often quite
poor, especially when used with certain themes.
The settings for these colours can be found under the "User Interface" section
of the themes (i.e. same set of colours is used across editors). I could have
made these per editor, but since it's unlikely that these will need to be too
different across editors in practice (+ being easier to version patch), they are
stored under the UI section.
2012-11-09 06:36:11 +00:00
|
|
|
|
2014-12-08 00:38:36 +01:00
|
|
|
prop = RNA_def_property(srna, "widget_emboss", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "widget_emboss");
|
2014-10-27 18:11:55 +01:00
|
|
|
RNA_def_property_array(prop, 4);
|
2014-12-08 00:38:36 +01:00
|
|
|
RNA_def_property_ui_text(prop, "Widget Emboss", "Color of the 1px shadow line underlying widgets");
|
2014-10-27 18:11:55 +01:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
Axis Colours are now Themeable
This commit allows you to set the RGB <-> XYZ axis colours used for things like
the mini axis indicator, grid axis indicators, manipulators, transform
constraint indicators, F-Curves (when using XYZ to RGB colouring option), and
perhaps something else I've missed. Previously, these places all used hardcoded
defines (220 * i/j/k), but the readability of these colours was often quite
poor, especially when used with certain themes.
The settings for these colours can be found under the "User Interface" section
of the themes (i.e. same set of colours is used across editors). I could have
made these per editor, but since it's unlikely that these will need to be too
different across editors in practice (+ being easier to version patch), they are
stored under the UI section.
2012-11-09 06:36:11 +00:00
|
|
|
/* axis */
|
|
|
|
|
prop = RNA_def_property(srna, "axis_x", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "xaxis");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "X Axis", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "axis_y", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "yaxis");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Y Axis", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "axis_z", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "zaxis");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Z Axis", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
static void rna_def_userdef_theme_space_common(StructRNA *srna)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "title", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2009-11-11 16:27:00 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Title", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-01-14 03:24:41 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2009-11-11 16:27:00 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Text", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "text_hi", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2009-11-11 16:27:00 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Text Highlight", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
/* header */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "header", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Header", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "header_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Header Text", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-01-14 03:24:41 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "header_text_hi", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Header Text Highlight", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-01-14 03:24:41 +00:00
|
|
|
|
2012-12-15 16:22:18 +00:00
|
|
|
/* panel settings */
|
|
|
|
|
prop = RNA_def_property(srna, "panelcolors", PROP_POINTER, PROP_NONE);
|
|
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Panel Colors", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
/* buttons */
|
2012-03-24 06:24:53 +00:00
|
|
|
/* if (! ELEM(spacetype, SPACE_BUTS, SPACE_OUTLINER)) { */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "button", PROP_FLOAT, PROP_COLOR_GAMMA);
|
Holiday coding log :)
Nice formatted version (pictures soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Usability
Short list of main changes:
- Transparent region option (over main region), added code to blend in/out such panels.
- Min size window now 640 x 480
- Fixed DPI for ui - lots of cleanup and changes everywhere. Icon image need correct size still, layer-in-use icon needs remake.
- Macbook retina support, use command line --no-native-pixels to disable it
- Timeline Marker label was drawing wrong
- Trackpad and magic mouse: supports zoom (hold ctrl)
- Fix for splash position: removed ghost function and made window size update after creation immediate
- Fast undo buffer save now adds UI as well. Could be checked for regular file save even...
Quit.blend and temp file saving use this now.
- Dixed filename in window on reading quit.blend or temp saves, and they now add a warning in window title: "(Recovered)"
- New Userpref option "Keep Session" - this always saves quit.blend, and loads on start.
This allows keeping UI and data without actual saves, until you actually save.
When you load startup.blend and quit, it recognises the quit.blend as a startup (no file name in header)
- Added 3D view copy/paste buffers (selected objects). Shortcuts ctrl-c, ctrl-v (OSX, cmd-c, cmd-v).
Coded partial file saving for it. Could be used for other purposes. Todo: use OS clipboards.
- User preferences (themes, keymaps, user settings) now can be saved as a separate file.
Old option is called "Save Startup File" the new one "Save User Settings".
To visualise this difference, the 'save startup file' button has been removed from user preferences window. That option is available as CTRL+U and in File menu still.
- OSX: fixed bug that stopped giving mouse events outside window.
This also fixes "Continuous Grab" for OSX. (error since 2009)
2012-12-12 18:58:11 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
2009-11-11 16:27:00 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Region Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-01-14 03:24:41 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "button_title", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-11-11 16:27:00 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Region Text Titles", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-01-14 03:24:41 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "button_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-11-11 16:27:00 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Region Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-01-14 03:24:41 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "button_text_hi", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-11-11 16:27:00 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Region Text Highlight", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-01-07 15:42:42 +00:00
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
/* tabs */
|
|
|
|
|
prop = RNA_def_property(srna, "tab_active", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-23 11:44:35 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Tab Active", "");
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
prop = RNA_def_property(srna, "tab_inactive", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-23 11:44:35 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Tab Inactive", "");
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
prop = RNA_def_property(srna, "tab_back", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2014-02-09 01:38:20 +11:00
|
|
|
RNA_def_property_array(prop, 4);
|
2014-01-23 11:44:35 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Tab Background", "");
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
prop = RNA_def_property(srna, "tab_outline", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-23 11:44:35 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Tab Outline", "");
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
/* } */
|
|
|
|
|
}
|
2013-01-07 15:42:42 +00:00
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
static void rna_def_userdef_theme_space_gradient(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
2013-01-07 15:42:42 +00:00
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
srna = RNA_def_struct(brna, "ThemeSpaceGradient", NULL);
|
|
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
|
|
|
|
RNA_def_struct_ui_text(srna, "Theme Space Settings", "");
|
2013-01-07 15:42:42 +00:00
|
|
|
|
|
|
|
|
/* gradient/background settings */
|
|
|
|
|
prop = RNA_def_property(srna, "gradients", PROP_POINTER, PROP_NONE);
|
|
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Gradient Colors", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
rna_def_userdef_theme_space_common(srna);
|
|
|
|
|
}
|
2013-01-07 15:42:42 +00:00
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
static void rna_def_userdef_theme_space_generic(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
2013-01-07 15:42:42 +00:00
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
srna = RNA_def_struct(brna, "ThemeSpaceGeneric", NULL);
|
|
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
|
|
|
|
RNA_def_struct_ui_text(srna, "Theme Space Settings", "");
|
2013-01-07 15:42:42 +00:00
|
|
|
|
2014-01-23 11:44:35 +11:00
|
|
|
prop = RNA_def_property(srna, "back", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-23 11:44:35 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Window Background", "");
|
2013-01-07 15:42:42 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2014-01-23 11:44:35 +11:00
|
|
|
|
|
|
|
|
rna_def_userdef_theme_space_common(srna);
|
2013-01-07 15:42:42 +00:00
|
|
|
}
|
|
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
/* list / channels */
|
|
|
|
|
static void rna_def_userdef_theme_space_list_generic(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeSpaceListGeneric", NULL);
|
2012-01-14 03:24:41 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
|
|
|
|
RNA_def_struct_ui_text(srna, "Theme Space List Settings", "");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "list", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-14 03:24:41 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Source List", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "list_title", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-14 03:24:41 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Source List Title", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "list_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-14 03:24:41 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Source List Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "list_text_hi", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-14 03:24:41 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Source List Text Highlight", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_spaces_main(StructRNA *srna)
|
|
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "space", PROP_POINTER, PROP_NONE);
|
2012-01-14 03:24:41 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeSpaceGeneric");
|
|
|
|
|
RNA_def_property_pointer_funcs(prop, "rna_Theme_space_generic_get", NULL, NULL, NULL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Theme Space", "Settings for space");
|
|
|
|
|
}
|
|
|
|
|
|
2013-01-07 15:42:42 +00:00
|
|
|
static void rna_def_userdef_theme_spaces_gradient(StructRNA *srna)
|
|
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "space", PROP_POINTER, PROP_NONE);
|
|
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeSpaceGradient");
|
|
|
|
|
RNA_def_property_pointer_funcs(prop, "rna_Theme_space_gradient_get", NULL, NULL, NULL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Theme Space", "Settings for space");
|
|
|
|
|
}
|
|
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
static void rna_def_userdef_theme_spaces_list_main(StructRNA *srna)
|
|
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "space_list", PROP_POINTER, PROP_NONE);
|
2012-01-14 03:24:41 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeSpaceListGeneric");
|
|
|
|
|
RNA_def_property_pointer_funcs(prop, "rna_Theme_space_list_generic_get", NULL, NULL, NULL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Theme Space List", "Settings for space list");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_spaces_vertex(StructRNA *srna)
|
|
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "vertex", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Vertex", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "vertex_select", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Vertex Select", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "vertex_size", PROP_INT, PROP_NONE);
|
2009-04-12 17:28:41 +00:00
|
|
|
RNA_def_property_range(prop, 1, 10);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Vertex Size", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-03-05 20:30:38 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "vertex_unreferenced", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Vertex Group Unreferenced", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_spaces_edge(StructRNA *srna)
|
|
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "edge_select", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2009-10-25 00:24:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Edge Select", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "edge_seam", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Edge Seam", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "edge_sharp", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Edge Sharp", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2010-04-06 02:36:37 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "edge_crease", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-04-06 02:36:37 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Edge Crease", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "edge_facesel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Edge UV Face Select", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-10-06 02:04:43 +00:00
|
|
|
|
2012-12-11 22:00:22 +00:00
|
|
|
prop = RNA_def_property(srna, "freestyle_edge_mark", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-10-06 02:04:43 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Freestyle Edge Mark", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_spaces_face(StructRNA *srna)
|
|
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "face", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Face", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "face_select", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Face Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "face_dot", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Face Dot Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "facedot_size", PROP_INT, PROP_NONE);
|
2009-04-12 17:28:41 +00:00
|
|
|
RNA_def_property_range(prop, 1, 10);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Face Dot Size", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-10-06 02:04:43 +00:00
|
|
|
|
2012-12-11 22:00:22 +00:00
|
|
|
prop = RNA_def_property(srna, "freestyle_face_mark", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-10-06 02:04:43 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Freestyle Face Mark", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2014-07-21 12:02:05 +02:00
|
|
|
static void rna_def_userdef_theme_spaces_paint_curves(StructRNA *srna)
|
|
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "paint_curve_handle", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Paint Curve Handle", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "paint_curve_pivot", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Paint Curve Pivot", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
}
|
|
|
|
|
|
2014-08-07 14:35:04 +02:00
|
|
|
static void rna_def_userdef_theme_spaces_curves(StructRNA *srna, bool incl_nurbs, bool incl_lastsel,
|
|
|
|
|
bool incl_vector, bool incl_verthandle)
|
2010-03-12 16:43:04 +00:00
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
|
|
|
|
|
if (incl_nurbs) {
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "nurb_uline", PROP_FLOAT, PROP_COLOR_GAMMA);
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nurb_uline");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-10-20 07:56:04 +00:00
|
|
|
RNA_def_property_ui_text(prop, "NURBS U-lines", "");
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2010-03-12 16:43:04 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "nurb_vline", PROP_FLOAT, PROP_COLOR_GAMMA);
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nurb_vline");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-10-20 07:56:04 +00:00
|
|
|
RNA_def_property_ui_text(prop, "NURBS V-lines", "");
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2010-03-12 16:43:04 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "nurb_sel_uline", PROP_FLOAT, PROP_COLOR_GAMMA);
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nurb_sel_uline");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-10-20 07:56:04 +00:00
|
|
|
RNA_def_property_ui_text(prop, "NURBS active U-lines", "");
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2010-03-12 16:43:04 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "nurb_sel_vline", PROP_FLOAT, PROP_COLOR_GAMMA);
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nurb_sel_vline");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-10-20 07:56:04 +00:00
|
|
|
RNA_def_property_ui_text(prop, "NURBS active V-lines", "");
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2010-03-12 16:43:04 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "act_spline", PROP_FLOAT, PROP_COLOR_GAMMA);
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "act_spline");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active spline", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
}
|
2010-03-12 16:43:04 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "handle_free", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-03-12 16:43:04 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_free");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Free handle color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "handle_auto", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-03-12 16:43:04 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_auto");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Auto handle color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2013-10-30 10:38:45 +01:00
|
|
|
if (incl_vector) {
|
|
|
|
|
prop = RNA_def_property(srna, "handle_vect", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_vect");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Vector handle color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "handle_sel_vect", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_sel_vect");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Vector handle selected color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
}
|
2010-03-12 16:43:04 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "handle_align", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-03-12 16:43:04 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_align");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Align handle color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "handle_sel_free", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-03-12 16:43:04 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_sel_free");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Free handle selected color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "handle_sel_auto", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-03-12 16:43:04 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_sel_auto");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Auto handle selected color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "handle_sel_align", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-03-12 16:43:04 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_sel_align");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Align handle selected color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2014-08-07 14:35:04 +02:00
|
|
|
|
|
|
|
|
if (!incl_nurbs) {
|
2011-08-04 14:13:05 +00:00
|
|
|
/* assume that when nurbs are off, this is for 2D (i.e. anim) editors */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "handle_auto_clamped", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-08-04 14:13:05 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_auto_clamped");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Auto-Clamped handle color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "handle_sel_auto_clamped", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-08-04 14:13:05 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "handle_sel_auto_clamped");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Auto-Clamped handle selected color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
}
|
2010-04-30 04:48:40 +00:00
|
|
|
|
2013-10-30 10:38:45 +01:00
|
|
|
if (incl_lastsel) {
|
|
|
|
|
prop = RNA_def_property(srna, "lastsel_point", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "lastsel_point");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Last selected point", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
}
|
2014-08-07 14:35:04 +02:00
|
|
|
|
|
|
|
|
if (incl_verthandle) {
|
|
|
|
|
prop = RNA_def_property(srna, "handle_vertex", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Handle Vertex", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "handle_vertex_select", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Handle Vertex Select", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "handle_vertex_size", PROP_INT, PROP_NONE);
|
|
|
|
|
RNA_def_property_range(prop, 0, 255);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Handle Vertex Size", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
}
|
2010-03-12 16:43:04 +00:00
|
|
|
}
|
|
|
|
|
|
2015-01-03 18:07:05 +13:00
|
|
|
static void rna_def_userdef_theme_spaces_gpencil(StructRNA *srna)
|
|
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "gp_vertex", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil Vertex", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "gp_vertex_select", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil Vertex Select", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "gp_vertex_size", PROP_INT, PROP_NONE);
|
|
|
|
|
RNA_def_property_range(prop, 1, 10);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil Vertex Size", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
}
|
|
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
static void rna_def_userdef_theme_space_view3d(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_view3d */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeView3D", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme 3D View", "Theme settings for the 3D View");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2013-01-07 15:42:42 +00:00
|
|
|
rna_def_userdef_theme_spaces_gradient(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "grid", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grid", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wire", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Wire", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2013-06-08 21:58:00 +00:00
|
|
|
prop = RNA_def_property(srna, "wire_edit", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Wire Edit", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2015-01-03 18:07:05 +13:00
|
|
|
|
|
|
|
|
rna_def_userdef_theme_spaces_gpencil(srna);
|
2013-06-08 21:58:00 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "lamp", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Lamp", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "speaker", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-08-01 11:44:20 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Speaker", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-03-23 16:14:25 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "camera", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Camera", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2014-03-18 05:34:43 +11:00
|
|
|
prop = RNA_def_property(srna, "view_overlay", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "View Overlay", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-23 16:14:25 +00:00
|
|
|
prop = RNA_def_property(srna, "empty", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Empty", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-08-01 11:44:20 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "object_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Object Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "object_active", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "active");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active Object", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "object_grouped", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "group");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Object Grouped", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "object_grouped_active", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "group_active");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Object Grouped Active", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "transform", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Transform", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2010-07-14 14:11:03 +00:00
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
rna_def_userdef_theme_spaces_vertex(srna);
|
|
|
|
|
rna_def_userdef_theme_spaces_edge(srna);
|
|
|
|
|
rna_def_userdef_theme_spaces_face(srna);
|
2014-08-07 14:35:04 +02:00
|
|
|
rna_def_userdef_theme_spaces_curves(srna, true, true, true, false);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "extra_edge_len", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-12-20 03:59:22 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Edge Length Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2013-03-29 04:01:52 +00:00
|
|
|
prop = RNA_def_property(srna, "extra_edge_angle", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Edge Angle Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "extra_face_angle", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-12-20 03:59:22 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Face Angle Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "extra_face_area", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-12-20 03:59:22 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Face Area Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "editmesh_active", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active Vert/Edge/Face", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "normal", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2010-02-11 03:37:51 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Face Normal", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "vertex_normal", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-02-11 03:37:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Vertex Normal", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2014-08-25 12:45:49 +02:00
|
|
|
prop = RNA_def_property(srna, "split_normal", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "loop_normal");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Split Normal", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "bone_solid", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Bone Solid", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "bone_pose", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Bone Pose", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-07-26 10:53:59 +00:00
|
|
|
prop = RNA_def_property(srna, "bone_pose_active", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Bone Pose Active", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "frame_current", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "cframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Current Frame", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-03-14 03:34:57 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "outline_width", PROP_INT, PROP_NONE);
|
2011-03-14 03:34:57 +00:00
|
|
|
RNA_def_property_range(prop, 1, 5);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Outline Width", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-11-07 12:55:18 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "bundle_solid", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "bundle_solid");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Bundle Solid", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "camera_path", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "camera_path");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Camera Path", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-05-22 15:29:15 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "skin_root", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Skin Root", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2014-07-21 12:02:05 +02:00
|
|
|
|
2015-01-28 13:03:42 +01:00
|
|
|
prop = RNA_def_property(srna, "clipping_border_3d", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Clipping Border", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2014-07-21 12:02:05 +02:00
|
|
|
rna_def_userdef_theme_spaces_paint_curves(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2011-11-07 12:55:18 +00:00
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
static void rna_def_userdef_theme_space_graph(BlenderRNA *brna)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
/* space_graph */
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeGraphEditor", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Graph Editor", "Theme settings for the graph editor");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
|
|
|
|
rna_def_userdef_theme_spaces_list_main(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "grid", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grid", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2014-01-17 17:06:02 +13:00
|
|
|
prop = RNA_def_property(srna, "frame_current", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "cframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Current Frame", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "window_sliders", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade1");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Window Sliders", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "channels_region", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade2");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2009-02-02 11:51:10 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Channels Region", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2014-01-17 15:49:20 +13:00
|
|
|
prop = RNA_def_property(srna, "dopesheet_channel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "ds_channel");
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-17 15:49:20 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Dope Sheet Channel", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2014-01-17 15:49:20 +13:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "dopesheet_subchannel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "ds_subchannel");
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-17 15:49:20 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Dope Sheet Sub-Channel", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-02-09 23:06:29 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "channel_group", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-02-09 23:06:29 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "group");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Channel Group", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-02-09 23:06:29 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "active_channels_group", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-02-09 23:06:29 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "group_active");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active Channel Group", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-02-09 23:06:29 +00:00
|
|
|
|
2014-01-17 15:49:20 +13:00
|
|
|
rna_def_userdef_theme_spaces_vertex(srna);
|
2014-08-07 14:35:04 +02:00
|
|
|
rna_def_userdef_theme_spaces_curves(srna, false, true, true, true);
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_space_file(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_file */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeFileBrowser", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme File Browser", "Theme settings for the File Browser");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
|
|
|
|
rna_def_userdef_theme_spaces_list_main(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "selected_file", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "hilite");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Selected File", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "scrollbar", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade1");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Scrollbar", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "scroll_handle", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade2");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Scroll Handle", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "active_file", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "active");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active File", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "active_file_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "grid");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active File Text", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
static void rna_def_userdef_theme_space_outliner(BlenderRNA *brna)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
2012-01-22 06:10:21 +00:00
|
|
|
PropertyRNA *prop;
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
/* space_outliner */
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeOutliner", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Outliner", "Theme settings for the Outliner");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2012-01-22 06:10:21 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "match", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-22 06:10:21 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Filter Match", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "selected_highlight", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-22 06:10:21 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Selected Highlight", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2009-08-18 12:58:51 +00:00
|
|
|
static void rna_def_userdef_theme_space_userpref(BlenderRNA *brna)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
|
2009-08-18 12:58:51 +00:00
|
|
|
/* space_userpref */
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeUserPreferences", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme User Preferences", "Theme settings for the User Preferences");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2009-08-18 12:58:51 +00:00
|
|
|
}
|
|
|
|
|
|
2010-01-15 17:00:37 +00:00
|
|
|
static void rna_def_userdef_theme_space_console(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_console */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeConsole", NULL);
|
2010-01-15 17:00:37 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Console", "Theme settings for the Console");
|
2010-01-15 17:00:37 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2010-01-15 17:00:37 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "line_output", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-01-15 17:00:37 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "console_output");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Line Output", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "line_input", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-01-15 17:00:37 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "console_input");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Line Input", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "line_info", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-01-15 17:00:37 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "console_info");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Line Info", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "line_error", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-01-15 17:00:37 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "console_error");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Line Error", "");
|
2010-02-15 02:39:40 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "cursor", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-02-15 02:39:40 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "console_cursor");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Cursor", "");
|
2010-01-15 17:00:37 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-02-18 02:36:36 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "select", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "console_select");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Selection", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2010-01-15 17:00:37 +00:00
|
|
|
}
|
|
|
|
|
|
2009-08-18 12:58:51 +00:00
|
|
|
static void rna_def_userdef_theme_space_info(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
2013-12-18 05:02:42 +11:00
|
|
|
PropertyRNA *prop;
|
2009-08-18 12:58:51 +00:00
|
|
|
|
|
|
|
|
/* space_info */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeInfo", NULL);
|
2009-08-18 12:58:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Info", "Theme settings for Info");
|
2009-08-18 12:58:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2013-12-18 05:02:42 +11:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_selected");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Selected Line Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_selected_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_selected_text");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Selected Line Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_error", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_error");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Error Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_error_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_error_text");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Error Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_warning", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_warning");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Warning Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_warning_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_warning_text");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Warning Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_info", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_info");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Info Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_info_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_info_text");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Info Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_debug", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_debug");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Debug Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "info_debug_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "info_debug_text");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Debug Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2009-08-18 12:58:51 +00:00
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
static void rna_def_userdef_theme_space_text(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_text */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeTextEditor", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Text Editor", "Theme settings for the Text Editor");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "line_numbers_background", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "grid");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Line Numbers Background", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-04-06 05:53:01 +00:00
|
|
|
/* no longer used */
|
|
|
|
|
#if 0
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "scroll_bar", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade1");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Scroll Bar", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-04-06 05:53:01 +00:00
|
|
|
#endif
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "selected_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade2");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Selected Text", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "cursor", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "hilite");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Cursor", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "syntax_builtin", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxb");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2010-05-04 05:15:53 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Syntax Built-in", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-12-30 01:26:31 +00:00
|
|
|
prop = RNA_def_property(srna, "syntax_symbols", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxs");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Syntax Symbols", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "syntax_special", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxv");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2012-12-29 18:25:03 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Syntax Special", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "syntax_preprocessor", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxd");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Syntax PreProcessor", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "syntax_reserved", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxr");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Syntax Reserved", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "syntax_comment", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxc");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Syntax Comment", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "syntax_string", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxl");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Syntax String", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "syntax_numbers", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxn");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Syntax Numbers", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_space_node(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_node */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeNodeEditor", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Node Editor", "Theme settings for the Node Editor");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
|
|
|
|
rna_def_userdef_theme_spaces_list_main(srna);
|
2015-01-03 18:07:05 +13:00
|
|
|
|
|
|
|
|
rna_def_userdef_theme_spaces_gpencil(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-05-22 14:13:33 +00:00
|
|
|
prop = RNA_def_property(srna, "node_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Node Selected", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "node_active", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "active");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wire", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "wire");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Wires", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2014-10-14 10:16:46 +02:00
|
|
|
prop = RNA_def_property(srna, "wire_inner", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxr");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Wire Color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wire_select", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "edge_select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Wire Select", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "selected_text", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade2");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Selected Text", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "node_backdrop", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxl");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Node Backdrop", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "converter_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxv");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Converter Node", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2013-12-01 21:30:04 +01:00
|
|
|
prop = RNA_def_property(srna, "color_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxb");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2013-12-01 21:30:04 +01:00
|
|
|
RNA_def_property_ui_text(prop, "Color Node", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "group_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxc");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Group Node", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-08-04 10:05:14 +00:00
|
|
|
|
2013-03-18 18:25:05 +00:00
|
|
|
prop = RNA_def_property(srna, "group_socket_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2013-03-18 16:34:57 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "console_output");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Group Socket Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-06-01 14:42:21 +00:00
|
|
|
prop = RNA_def_property(srna, "frame_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "movie");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Frame Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-01-19 04:20:53 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "matte_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxs");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Matte Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "distor_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxd");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Distort Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-06-01 14:42:21 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "noodle_curving", PROP_INT, PROP_NONE);
|
2011-08-04 10:05:14 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "noodle_curving");
|
|
|
|
|
RNA_def_property_int_default(prop, 5);
|
|
|
|
|
RNA_def_property_range(prop, 0, 10);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Noodle curving", "Curving of the noodle");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-12-01 21:30:04 +01:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "input_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "syntaxn");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Input Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "output_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nodeclass_output");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Output Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "filter_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nodeclass_filter");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Filter Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "vector_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nodeclass_vector");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Vector Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "texture_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nodeclass_texture");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Texture Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "shader_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nodeclass_shader");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Shader Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "script_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nodeclass_script");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Script Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "pattern_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nodeclass_pattern");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Pattern Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "layout_node", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nodeclass_layout");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Layout Node", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2009-06-16 13:09:36 +00:00
|
|
|
static void rna_def_userdef_theme_space_logic(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
2012-12-15 16:22:18 +00:00
|
|
|
// PropertyRNA *prop;
|
2009-06-16 13:09:36 +00:00
|
|
|
|
2011-11-01 20:14:58 +00:00
|
|
|
/* space_logic */
|
2009-06-16 13:09:36 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeLogicEditor", NULL);
|
2009-06-16 13:09:36 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Logic Editor", "Theme settings for the Logic Editor");
|
2009-06-16 13:09:36 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2009-06-16 13:09:36 +00:00
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
static void rna_def_userdef_theme_space_buts(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
2012-12-15 16:22:18 +00:00
|
|
|
// PropertyRNA *prop;
|
2009-01-07 21:05:51 +00:00
|
|
|
|
|
|
|
|
/* space_buts */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeProperties", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Properties", "Theme settings for the Properties");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_space_time(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_time */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeTimeline", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Timeline", "Theme settings for the Timeline");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "grid", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grid", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "frame_current", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "cframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Current Frame", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2015-01-04 00:48:29 +13:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "time_keyframe", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "time_keyframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Keyframe", "Base color for keyframe indicator lines");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "time_grease_pencil", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "time_gp_keyframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil", "Color of Grease Pencil keyframes");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_space_image(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_image */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeImageEditor", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Image Editor", "Theme settings for the Image Editor");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2015-01-03 18:07:05 +13:00
|
|
|
rna_def_userdef_theme_spaces_gpencil(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
rna_def_userdef_theme_spaces_vertex(srna);
|
|
|
|
|
rna_def_userdef_theme_spaces_face(srna);
|
2015-01-03 18:07:05 +13:00
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "editmesh_active", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active Vert/Edge/Face", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-12-08 01:36:31 +02:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "wire_edit", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Wire Edit", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "edge_select", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Edge Select", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "scope_back", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-01-19 01:32:06 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "preview_back");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Scope region background color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-01-17 16:31:13 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "preview_stitch_face", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-17 16:31:13 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "preview_stitch_face");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Stitch preview face color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "preview_stitch_edge", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-17 16:31:13 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "preview_stitch_edge");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Stitch preview edge color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "preview_stitch_vert", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-17 16:31:13 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "preview_stitch_vert");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Stitch preview vertex color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "preview_stitch_stitchable", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-17 16:31:13 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "preview_stitch_stitchable");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Stitch preview stitchable color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "preview_stitch_unstitchable", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-17 16:31:13 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "preview_stitch_unstitchable");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Stitch preview unstitchable color", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "preview_stitch_active", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2012-01-17 16:31:13 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "preview_stitch_active");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Stitch preview active island", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-09-05 15:09:10 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "uv_shadow", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "uv_shadow");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Texture paint/Modifier UVs", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "uv_others", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "uv_others");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Other Object UVs", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-10-30 10:38:45 +01:00
|
|
|
|
2014-04-30 17:35:19 +06:00
|
|
|
prop = RNA_def_property(srna, "frame_current", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "cframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Current Frame", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2015-04-21 17:15:40 +02:00
|
|
|
prop = RNA_def_property(srna, "metadatabg", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "metadatabg");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Metadata Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "metadatatext", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "metadatatext");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Metadata Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2014-08-07 14:35:04 +02:00
|
|
|
rna_def_userdef_theme_spaces_curves(srna, false, false, false, true);
|
2014-07-21 12:02:05 +02:00
|
|
|
|
|
|
|
|
rna_def_userdef_theme_spaces_paint_curves(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_space_seq(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_seq */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeSequenceEditor", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Sequence Editor", "Theme settings for the Sequence Editor");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2015-01-03 18:07:05 +13:00
|
|
|
rna_def_userdef_theme_spaces_gpencil(srna);
|
2009-11-02 17:18:17 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "grid", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grid", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "window_sliders", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade1");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Window Sliders", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "movie_strip", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "movie");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Movie Strip", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-21 18:02:29 +00:00
|
|
|
prop = RNA_def_property(srna, "movieclip_strip", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "movieclip");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Clip Strip", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "image_strip", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "image");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Image Strip", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "scene_strip", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "scene");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Scene Strip", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "audio_strip", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "audio");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Audio Strip", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "effect_strip", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "effect");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Effect Strip", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "transition_strip", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "transition");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Transition Strip", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "meta_strip", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "meta");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Meta Strip", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "frame_current", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "cframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Current Frame", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "keyframe", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "vertex_select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Keyframe", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "draw_action", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "bone_pose");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Draw Action", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-03-23 20:50:38 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "preview_back", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "preview_back");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Preview Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2015-05-04 12:17:49 +02:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "metadatabg", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "metadatabg");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Metadata Background", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "metadatatext", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "metadatatext");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Metadata Text", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_space_action(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_action */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeDopeSheet", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2013-05-08 21:05:52 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Dope Sheet", "Theme settings for the Dope Sheet");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
|
|
|
|
rna_def_userdef_theme_spaces_list_main(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "grid", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grid", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2014-01-17 17:06:02 +13:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "frame_current", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "cframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Current Frame", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "value_sliders", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "face");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2009-02-02 11:51:10 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Value Sliders", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "view_sliders", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade1");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "View Sliders", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2014-01-17 17:06:02 +13:00
|
|
|
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "dopesheet_channel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "ds_channel");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Dope Sheet Channel", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "dopesheet_subchannel", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "ds_subchannel");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Dope Sheet Sub-Channel", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "channels", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade2");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Channels", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "channels_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "hilite");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Channels Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "channel_group", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "group");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Channel Group", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "active_channels_group", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "group_active");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active Channel Group", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2014-01-17 17:06:02 +13:00
|
|
|
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "long_key", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "strip");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Long Key", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "long_key_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "strip_select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Long Key Selected", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2009-02-02 11:51:10 +00:00
|
|
|
|
2012-06-04 01:17:37 +00:00
|
|
|
|
2014-01-07 22:45:40 +13:00
|
|
|
prop = RNA_def_property(srna, "keyframe", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keytype_keyframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Keyframe", "Color of Keyframe");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keytype_keyframe_select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-16 23:56:40 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Keyframe Selected", "Color of selected keyframe");
|
2014-01-07 22:45:40 +13:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_extreme", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keytype_extreme");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-16 23:56:40 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Extreme Keyframe", "Color of extreme keyframe");
|
2014-01-07 22:45:40 +13:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_extreme_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keytype_extreme_select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-16 23:56:40 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Extreme Keyframe Selected", "Color of selected extreme keyframe");
|
2014-01-07 22:45:40 +13:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_breakdown", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keytype_breakdown");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-16 23:56:40 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Breakdown Keyframe", "Color of breakdown keyframe");
|
2014-01-07 22:45:40 +13:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_breakdown_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keytype_breakdown_select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-16 23:56:40 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Breakdown Keyframe Selected", "Color of selected breakdown keyframe");
|
2014-01-07 22:45:40 +13:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_jitter", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keytype_jitter");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-16 23:56:40 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Jitter Keyframe", "Color of jitter keyframe");
|
2014-01-07 22:45:40 +13:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_jitter_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keytype_jitter_select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2014-01-16 23:56:40 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Jitter Keyframe Selected", "Color of selected jitter keyframe");
|
2014-01-07 22:45:40 +13:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_border", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keyborder");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
2014-01-16 23:56:40 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Keyframe Border", "Color of keyframe border");
|
2014-01-07 22:45:40 +13:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_border_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keyborder_select");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
2014-01-16 23:56:40 +13:00
|
|
|
RNA_def_property_ui_text(prop, "Keyframe Border Selected", "Color of selected keyframe border");
|
2014-01-07 22:45:40 +13:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2014-01-17 17:06:02 +13:00
|
|
|
|
2012-06-04 01:17:37 +00:00
|
|
|
prop = RNA_def_property(srna, "summary", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "anim_active");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Summary", "Color of summary channel");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_space_nla(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_nla */
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeNLAEditor", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme NLA Editor", "Theme settings for the NLA Editor");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
|
|
|
|
rna_def_userdef_theme_spaces_list_main(srna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "grid", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grid", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "view_sliders", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "shade1");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "View Sliders", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-06-04 01:17:37 +00:00
|
|
|
prop = RNA_def_property(srna, "active_action", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "anim_active");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active Action", "Animation data block has active action");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-06-04 01:17:37 +00:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "active_action_unset", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "anim_non_active");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "No Active Action", "Animation data block doesn't have active action");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-06-04 01:17:37 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "strips", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "strip");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2012-06-04 01:17:37 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Strips", "Action-Clip Strip - Unselected");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2012-06-04 01:17:37 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "strips_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "strip_select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2012-06-04 01:17:37 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Strips Selected", "Action-Clip Strip - Selected");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "transition_strips", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nla_transition");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Transitions", "Transition Strip - Unselected");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "transition_strips_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nla_transition_sel");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Transitions Selected", "Transition Strip - Selected");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "meta_strips", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nla_meta");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2012-06-04 19:43:12 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Meta Strips", "Meta Strip - Unselected (for grouping related strips)");
|
2012-06-04 01:17:37 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "meta_strips_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nla_meta_sel");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2012-06-04 19:43:12 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Meta Strips Selected", "Meta Strip - Selected (for grouping related strips)");
|
2012-06-04 01:17:37 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "sound_strips", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nla_sound");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Sound Strips",
|
2012-06-04 19:43:12 +00:00
|
|
|
"Sound Strip - Unselected (for timing speaker sounds)");
|
2012-06-04 01:17:37 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "sound_strips_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nla_sound_sel");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Sound Strips Selected",
|
2012-06-04 19:43:12 +00:00
|
|
|
"Sound Strip - Selected (for timing speaker sounds)");
|
2012-06-04 01:17:37 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "tweak", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nla_tweaking");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Tweak", "Color for strip/action being 'tweaked' or edited");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "tweak_duplicate", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "nla_tweakdupli");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Tweak Duplicate Flag",
|
|
|
|
|
"Warning/error indicator color for strips referencing the strip being tweaked");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2014-01-16 23:56:40 +13:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_border", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keyborder");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Keyframe Border", "Color of keyframe border");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "keyframe_border_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "keyborder_select");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Keyframe Border Selected", "Color of selected keyframe border");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "frame_current", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "cframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Current Frame", "");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_theme_colorset(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeBoneColorSet", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeWireColor");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Bone Color Set", "Theme settings for bone color sets");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "normal", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "solid");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Normal", "Color used for the surface of bones");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "select", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Select", "Color used for selected bones");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "active", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Active", "Color used for active bones");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_colored_constraints", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", TH_WIRECOLOR_CONSTCOLS);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Colored Constraints",
|
|
|
|
|
"Allow the use of colors indicating constraints/keyed status");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2011-11-07 12:55:18 +00:00
|
|
|
static void rna_def_userdef_theme_space_clip(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
/* space_clip */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "ThemeClipEditor", NULL);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_struct_sdna(srna, "ThemeSpace");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme Clip Editor", "Theme settings for the Movie Clip Editor");
|
|
|
|
|
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_spaces_main(srna);
|
2012-04-30 16:19:20 +00:00
|
|
|
rna_def_userdef_theme_spaces_list_main(srna);
|
2015-01-03 18:07:05 +13:00
|
|
|
|
|
|
|
|
rna_def_userdef_theme_spaces_gpencil(srna);
|
2011-11-07 12:55:18 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "marker_outline", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "marker_outline");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2012-07-03 17:20:21 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Marker Outline Color", "Color of marker's outline");
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "marker", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "marker");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Marker Color", "Color of marker");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "active_marker", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "act_marker");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Active Marker", "Color of active marker");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "selected_marker", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "sel_marker");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2012-03-17 14:27:46 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Selected Marker", "Color of selected marker");
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "disabled_marker", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "dis_marker");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Disabled Marker", "Color of disabled marker");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "locked_marker", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "lock_marker");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Locked Marker", "Color of locked marker");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "path_before", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "path_before");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Path Before", "Color of path before current frame");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "path_after", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "path_after");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Path After", "Color of path after current frame");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "frame_current", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "cframe");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Current Frame", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-04-30 16:19:20 +00:00
|
|
|
prop = RNA_def_property(srna, "strips", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "strip");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Strips", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "strips_selected", PROP_FLOAT, PROP_COLOR_GAMMA);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "strip_select");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Strips Selected", "");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2013-10-30 10:38:45 +01:00
|
|
|
|
2014-08-07 14:35:04 +02:00
|
|
|
rna_def_userdef_theme_spaces_curves(srna, false, false, false, true);
|
2011-11-07 12:55:18 +00:00
|
|
|
}
|
|
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
static void rna_def_userdef_themes(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
2009-10-26 11:03:12 +00:00
|
|
|
|
2010-01-09 18:17:40 +00:00
|
|
|
static EnumPropertyItem active_theme_area[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{0, "USER_INTERFACE", ICON_UI, "User Interface", ""},
|
2012-12-24 00:29:24 +00:00
|
|
|
{19, "STYLE", ICON_FONTPREVIEW, "Text Style", ""},
|
2011-09-15 13:20:18 +00:00
|
|
|
{18, "BONE_COLOR_SETS", ICON_COLOR, "Bone Color Sets", ""},
|
|
|
|
|
{1, "VIEW_3D", ICON_VIEW3D, "3D View", ""},
|
|
|
|
|
{2, "TIMELINE", ICON_TIME, "Timeline", ""},
|
|
|
|
|
{3, "GRAPH_EDITOR", ICON_IPO, "Graph Editor", ""},
|
2013-05-08 21:05:52 +00:00
|
|
|
{4, "DOPESHEET_EDITOR", ICON_ACTION, "Dope Sheet", ""},
|
2011-09-15 13:20:18 +00:00
|
|
|
{5, "NLA_EDITOR", ICON_NLA, "NLA Editor", ""},
|
|
|
|
|
{6, "IMAGE_EDITOR", ICON_IMAGE_COL, "UV/Image Editor", ""},
|
|
|
|
|
{7, "SEQUENCE_EDITOR", ICON_SEQUENCE, "Video Sequence Editor", ""},
|
|
|
|
|
{8, "TEXT_EDITOR", ICON_TEXT, "Text Editor", ""},
|
|
|
|
|
{9, "NODE_EDITOR", ICON_NODETREE, "Node Editor", ""},
|
|
|
|
|
{10, "LOGIC_EDITOR", ICON_LOGIC, "Logic Editor", ""},
|
|
|
|
|
{11, "PROPERTIES", ICON_BUTS, "Properties", ""},
|
|
|
|
|
{12, "OUTLINER", ICON_OOPS, "Outliner", ""},
|
|
|
|
|
{14, "USER_PREFERENCES", ICON_PREFERENCES, "User Preferences", ""},
|
|
|
|
|
{15, "INFO", ICON_INFO, "Info", ""},
|
|
|
|
|
{16, "FILE_BROWSER", ICON_FILESEL, "File Browser", ""},
|
|
|
|
|
{17, "CONSOLE", ICON_CONSOLE, "Python Console", ""},
|
2012-05-12 11:01:29 +00:00
|
|
|
{20, "CLIP_EDITOR", ICON_CLIP, "Movie Clip Editor", ""},
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "Theme", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "bTheme");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Theme", "Theme settings defining draw style and colors in the user interface");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "name", PROP_STRING, PROP_NONE);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Name", "Name of the theme");
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_name_property(srna, prop);
|
2012-05-12 11:01:29 +00:00
|
|
|
/* XXX: for now putting this in presets is silly - its just Default */
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_SKIP_SAVE);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "theme_area", PROP_ENUM, PROP_NONE);
|
2010-01-09 18:17:40 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "active_theme_area");
|
2012-01-11 00:22:21 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_SKIP_SAVE);
|
2010-01-09 18:17:40 +00:00
|
|
|
RNA_def_property_enum_items(prop, active_theme_area);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Active Theme Area", "");
|
2009-10-26 11:03:12 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "user_interface", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tui");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeUserInterface");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "User Interface", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "view_3d", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tv3d");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeView3D");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "3D View", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "graph_editor", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tipo");
|
2009-02-02 11:51:10 +00:00
|
|
|
RNA_def_property_struct_type(prop, "ThemeGraphEditor");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Graph Editor", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "file_browser", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tfile");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeFileBrowser");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "File Browser", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "nla_editor", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tnla");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeNLAEditor");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "NLA Editor", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "dopesheet_editor", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tact");
|
2009-02-10 02:39:19 +00:00
|
|
|
RNA_def_property_struct_type(prop, "ThemeDopeSheet");
|
2013-05-08 21:05:52 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Dope Sheet", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "image_editor", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tima");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeImageEditor");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Image Editor", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "sequence_editor", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tseq");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeSequenceEditor");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Sequence Editor", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "properties", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tbuts");
|
2009-08-18 12:58:51 +00:00
|
|
|
RNA_def_property_struct_type(prop, "ThemeProperties");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Properties", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "text_editor", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "text");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeTextEditor");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Text Editor", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "timeline", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "ttime");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeTimeline");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Timeline", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "node_editor", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tnode");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeNodeEditor");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Node Editor", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "logic_editor", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-06-16 13:09:36 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tlogic");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeLogicEditor");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Logic Editor", "");
|
2009-06-16 13:09:36 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "outliner", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "toops");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeOutliner");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Outliner", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "info", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tinfo");
|
2009-08-18 12:58:51 +00:00
|
|
|
RNA_def_property_struct_type(prop, "ThemeInfo");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Info", "");
|
2009-08-18 12:58:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "user_preferences", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-08-18 12:58:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tuserpref");
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_struct_type(prop, "ThemeUserPreferences");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "User Preferences", "");
|
2010-01-15 17:00:37 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "console", PROP_POINTER, PROP_NONE);
|
2010-01-15 17:00:37 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tconsole");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeConsole");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Console", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "bone_color_sets", PROP_COLLECTION, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_collection_sdna(prop, NULL, "tarm", "");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeBoneColorSet");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Bone Color Sets", "");
|
2011-11-07 12:55:18 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "clip_editor", PROP_POINTER, PROP_NONE);
|
2011-11-07 12:55:18 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "tclip");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeClipEditor");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Clip Editor", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2010-02-26 14:28:29 +00:00
|
|
|
static void rna_def_userdef_addon(BlenderRNA *brna)
|
2010-02-14 23:33:18 +00:00
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "Addon", NULL);
|
2010-02-26 14:28:29 +00:00
|
|
|
RNA_def_struct_sdna(srna, "bAddon");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-26 14:28:29 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Addon", "Python addons to be loaded automatically");
|
2010-02-14 23:33:18 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "module", PROP_STRING, PROP_NONE);
|
2010-02-14 23:33:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Module", "Module name");
|
|
|
|
|
RNA_def_struct_name_property(srna, prop);
|
2012-12-29 10:24:42 +00:00
|
|
|
|
|
|
|
|
/* Collection active property */
|
|
|
|
|
prop = RNA_def_property(srna, "preferences", PROP_POINTER, PROP_NONE);
|
|
|
|
|
RNA_def_property_struct_type(prop, "AddonPreferences");
|
|
|
|
|
RNA_def_property_pointer_funcs(prop, "rna_Addon_preferences_get", NULL, NULL, NULL);
|
|
|
|
|
}
|
|
|
|
|
|
2013-06-18 18:11:52 +00:00
|
|
|
static void rna_def_userdef_pathcompare(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
srna = RNA_def_struct(brna, "PathCompare", NULL);
|
|
|
|
|
RNA_def_struct_sdna(srna, "bPathCompare");
|
|
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
|
|
|
|
RNA_def_struct_ui_text(srna, "Path Compare", "Match paths against this value");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "path", PROP_STRING, PROP_DIRPATH);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Path", "");
|
|
|
|
|
RNA_def_struct_name_property(srna, prop);
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "use_glob", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_PATHCMP_GLOB);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Use Wildcard", "Enable wildcard globbing");
|
|
|
|
|
}
|
|
|
|
|
|
2012-12-29 10:24:42 +00:00
|
|
|
static void rna_def_userdef_addon_pref(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
srna = RNA_def_struct(brna, "AddonPreferences", NULL);
|
|
|
|
|
RNA_def_struct_ui_text(srna, "Addon Preferences", "");
|
|
|
|
|
RNA_def_struct_sdna(srna, "bAddon"); /* WARNING: only a bAddon during registration */
|
|
|
|
|
|
|
|
|
|
RNA_def_struct_refine_func(srna, "rna_AddonPref_refine");
|
|
|
|
|
RNA_def_struct_register_funcs(srna, "rna_AddonPref_register", "rna_AddonPref_unregister", NULL);
|
|
|
|
|
RNA_def_struct_idprops_func(srna, "rna_AddonPref_idprops");
|
|
|
|
|
|
|
|
|
|
/* registration */
|
|
|
|
|
RNA_define_verify_sdna(0);
|
|
|
|
|
prop = RNA_def_property(srna, "bl_idname", PROP_STRING, PROP_NONE);
|
|
|
|
|
RNA_def_property_string_sdna(prop, NULL, "module");
|
2014-02-09 05:51:22 +11:00
|
|
|
RNA_def_property_flag(prop, PROP_REGISTER);
|
2012-12-29 10:24:42 +00:00
|
|
|
RNA_define_verify_sdna(1);
|
2010-02-14 23:33:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
static void rna_def_userdef_dothemes(BlenderRNA *brna)
|
|
|
|
|
{
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
|
|
|
|
rna_def_userdef_theme_ui_style(brna);
|
2009-01-07 21:05:51 +00:00
|
|
|
rna_def_userdef_theme_ui(brna);
|
2012-01-14 03:24:41 +00:00
|
|
|
|
|
|
|
|
rna_def_userdef_theme_space_generic(brna);
|
2013-01-07 15:42:42 +00:00
|
|
|
rna_def_userdef_theme_space_gradient(brna);
|
2012-01-14 03:24:41 +00:00
|
|
|
rna_def_userdef_theme_space_list_generic(brna);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
rna_def_userdef_theme_space_view3d(brna);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
rna_def_userdef_theme_space_graph(brna);
|
2009-01-07 21:05:51 +00:00
|
|
|
rna_def_userdef_theme_space_file(brna);
|
|
|
|
|
rna_def_userdef_theme_space_nla(brna);
|
|
|
|
|
rna_def_userdef_theme_space_action(brna);
|
|
|
|
|
rna_def_userdef_theme_space_image(brna);
|
|
|
|
|
rna_def_userdef_theme_space_seq(brna);
|
|
|
|
|
rna_def_userdef_theme_space_buts(brna);
|
|
|
|
|
rna_def_userdef_theme_space_text(brna);
|
|
|
|
|
rna_def_userdef_theme_space_time(brna);
|
|
|
|
|
rna_def_userdef_theme_space_node(brna);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
rna_def_userdef_theme_space_outliner(brna);
|
2009-01-07 21:05:51 +00:00
|
|
|
rna_def_userdef_theme_space_info(brna);
|
2009-08-18 12:58:51 +00:00
|
|
|
rna_def_userdef_theme_space_userpref(brna);
|
2010-01-15 17:00:37 +00:00
|
|
|
rna_def_userdef_theme_space_console(brna);
|
2009-06-16 13:09:36 +00:00
|
|
|
rna_def_userdef_theme_space_logic(brna);
|
2011-11-07 12:55:18 +00:00
|
|
|
rna_def_userdef_theme_space_clip(brna);
|
2009-01-07 21:05:51 +00:00
|
|
|
rna_def_userdef_theme_colorset(brna);
|
|
|
|
|
rna_def_userdef_themes(brna);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void rna_def_userdef_solidlight(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
2011-09-08 09:46:31 +00:00
|
|
|
static float default_dir[3] = {0.f, 1.f, 0.f};
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "UserSolidLight", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "SolidLight");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Solid Light", "Light used for OpenGL lighting in solid draw mode");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", 1);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Enabled", "Enable this OpenGL light in solid draw mode");
|
2009-11-28 19:32:23 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_viewport_lights_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "direction", PROP_FLOAT, PROP_DIRECTION);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "vec");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-08 09:46:31 +00:00
|
|
|
RNA_def_property_float_array_default(prop, default_dir);
|
2011-10-20 07:56:04 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Direction", "Direction that the OpenGL light is shining");
|
2009-11-28 19:32:23 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_viewport_lights_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "diffuse_color", PROP_FLOAT, PROP_COLOR);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "col");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-10-20 07:56:04 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Diffuse Color", "Diffuse color of the OpenGL light");
|
2009-11-28 19:32:23 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_viewport_lights_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "specular_color", PROP_FLOAT, PROP_COLOR);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "spec");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-10-20 07:56:04 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Specular Color", "Color of the light's specular highlight");
|
2009-11-28 19:32:23 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_viewport_lights_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2013-12-03 03:14:09 -02:00
|
|
|
static void rna_def_userdef_walk_navigation(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
srna = RNA_def_struct(brna, "WalkNavigation", NULL);
|
|
|
|
|
RNA_def_struct_sdna(srna, "WalkNavigation");
|
|
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
|
|
|
|
RNA_def_struct_ui_text(srna, "Walk Navigation", "Walk navigation settings");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "mouse_speed", PROP_FLOAT, PROP_NONE);
|
|
|
|
|
RNA_def_property_range(prop, 0.01f, 10.0f);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Mouse Sensitivity", "Speed factor for when looking around, high values mean faster mouse movement");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "walk_speed", PROP_FLOAT, PROP_VELOCITY);
|
|
|
|
|
RNA_def_property_range(prop, 0.01f, 100.f);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Walk Speed", "Base speed for walking and flying");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "walk_speed_factor", PROP_FLOAT, PROP_NONE);
|
|
|
|
|
RNA_def_property_range(prop, 0.01f, 10.f);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Speed Factor", "Multiplication factor when using the fast or slow modifiers");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "view_height", PROP_FLOAT, PROP_UNIT_LENGTH);
|
|
|
|
|
RNA_def_property_ui_range(prop, 0.1f, 10.f, 0.1, 2);
|
|
|
|
|
RNA_def_property_range(prop, 0.f, 1000.f);
|
|
|
|
|
RNA_def_property_ui_text(prop, "View Height", "View distance from the floor when walking");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "jump_height", PROP_FLOAT, PROP_UNIT_LENGTH);
|
|
|
|
|
RNA_def_property_ui_range(prop, 0.1f, 10.f, 0.1, 2);
|
|
|
|
|
RNA_def_property_range(prop, 0.1f, 100.f);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Jump Height", "Maximum height of a jump");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "teleport_time", PROP_FLOAT, PROP_NONE);
|
|
|
|
|
RNA_def_property_range(prop, 0.f, 10.f);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Teleport Duration", "Interval of time warp when teleporting in navigation mode");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "use_gravity", PROP_BOOLEAN, PROP_BOOLEAN);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_WALK_GRAVITY);
|
2013-12-03 22:42:58 +01:00
|
|
|
RNA_def_property_ui_text(prop, "Gravity", "Walk with gravity, or free navigate");
|
2013-12-03 03:14:09 -02:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "use_mouse_reverse", PROP_BOOLEAN, PROP_BOOLEAN);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_WALK_MOUSE_REVERSE);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Reverse Mouse", "Reverse the mouse look");
|
|
|
|
|
}
|
|
|
|
|
|
2009-01-27 04:37:12 +00:00
|
|
|
static void rna_def_userdef_view(BlenderRNA *brna)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
2010-01-30 04:43:36 +00:00
|
|
|
static EnumPropertyItem timecode_styles[] = {
|
2011-09-28 14:08:56 +00:00
|
|
|
{USER_TIMECODE_MINIMAL, "MINIMAL", 0, "Minimal Info",
|
|
|
|
|
"Most compact representation, uses '+' as separator for sub-second frame numbers, "
|
|
|
|
|
"with left and right truncation of the timecode as necessary"},
|
|
|
|
|
{USER_TIMECODE_SMPTE_FULL, "SMPTE", 0, "SMPTE (Full)", "Full SMPTE timecode (format is HH:MM:SS:FF)"},
|
|
|
|
|
{USER_TIMECODE_SMPTE_MSF, "SMPTE_COMPACT", 0, "SMPTE (Compact)",
|
|
|
|
|
"SMPTE timecode showing minutes, seconds, and frames only - "
|
|
|
|
|
"hours are also shown if necessary, but not by default"},
|
|
|
|
|
{USER_TIMECODE_MILLISECONDS, "MILLISECONDS", 0, "Compact with Milliseconds",
|
|
|
|
|
"Similar to SMPTE (Compact), except that instead of frames, "
|
|
|
|
|
"milliseconds are shown instead"},
|
2012-03-18 09:27:36 +00:00
|
|
|
{USER_TIMECODE_SECONDS_ONLY, "SECONDS_ONLY", 0, "Only Seconds",
|
|
|
|
|
"Direct conversion of frame numbers to seconds"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2015-05-13 20:30:53 +02:00
|
|
|
|
|
|
|
|
static EnumPropertyItem zoom_frame_modes[] = {
|
|
|
|
|
{ZOOM_FRAME_MODE_KEEP_RANGE, "KEEP_RANGE", 0, "Keep Range", ""},
|
|
|
|
|
{ZOOM_FRAME_MODE_SECONDS, "SECONDS", 0, "Seconds", ""},
|
|
|
|
|
{ZOOM_FRAME_MODE_KEYFRAMES, "KEYFRAMES", 0, "Keyframes", ""},
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
|
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
PropertyRNA *prop;
|
2009-01-27 04:37:12 +00:00
|
|
|
StructRNA *srna;
|
2009-09-18 07:44:52 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "UserPreferencesView", NULL);
|
2009-01-27 04:37:12 +00:00
|
|
|
RNA_def_struct_sdna(srna, "UserDef");
|
|
|
|
|
RNA_def_struct_nested(brna, srna, "UserPreferences");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2009-01-27 04:37:12 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "View & Controls", "Preferences related to viewing data");
|
|
|
|
|
|
2009-10-26 11:03:12 +00:00
|
|
|
/* View */
|
2009-01-07 21:05:51 +00:00
|
|
|
|
|
|
|
|
/* display */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_tooltips", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_TOOLTIPS);
|
2014-08-09 22:04:55 +02:00
|
|
|
RNA_def_property_ui_text(prop, "Tooltips", "Display tooltips (when off hold Alt to force display)");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_tooltips_python", PROP_BOOLEAN, PROP_NONE);
|
2010-11-22 05:36:49 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", USER_TOOLTIPS_PYTHON);
|
2013-10-14 21:41:03 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Python Tooltips", "Show Python references in tooltips");
|
2010-11-22 00:10:32 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_object_info", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_DRAWVIEWINFO);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Display Object Info", "Display objects name and frame number in 3D view");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_global_scene", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_SCENEGLOBAL);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Global Scene", "Force the current Scene to be displayed in all Screens");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_large_cursors", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "curssize", 0);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Large Cursors", "Use large mouse cursors when available");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_view_name", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_SHOW_VIEWPORTNAME);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Show View Name", "Show the name of the view's direction in each 3D View");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2011-04-21 13:11:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_splash", PROP_BOOLEAN, PROP_NONE);
|
2010-03-14 18:08:12 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "uiflag", USER_SPLASH_DISABLE);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Show Splash", "Display splash screen on startup");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_playback_fps", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_SHOW_FPS);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Show Playback FPS",
|
|
|
|
|
"Show the frames per second screen refresh rate, while animation is played back");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
|
|
|
|
/* menus */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_mouse_over_open", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_MENUOPENAUTO);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Open On Mouse Over",
|
|
|
|
|
"Open menu buttons and pulldowns automatically when the mouse is hovering");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "open_toplevel_delay", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "menuthreshold1");
|
|
|
|
|
RNA_def_property_range(prop, 1, 40);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Top Level Menu Open Delay",
|
|
|
|
|
"Time delay in 1/10 seconds before automatically opening top level menus");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "open_sublevel_delay", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "menuthreshold2");
|
|
|
|
|
RNA_def_property_range(prop, 1, 40);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Sub Level Menu Open Delay",
|
|
|
|
|
"Time delay in 1/10 seconds before automatically opening sub level menus");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
Pie Menus C code backend.
This commit merges the code in the pie-menu branch.
As per decisions taken the last few days, there are no pie menus
included and there will be an official add-on including overrides of
some keys with pie menus. However, people will now be able to use the
new code in python.
Full Documentation is in http://wiki.blender.org/index.php/Dev:Ref/
Thanks:
Campbell Barton, Dalai Felinto and Ton Roosendaal for the code review
and design comments
Jonathan Williamson, Pawel Lyczkowski, Pablo Vazquez among others for
suggestions during the development.
Special Thanks to Sean Olson, for his support, suggestions, testing and
merciless bugging so that I would finish the pie menu code. Without him
we wouldn't be here. Also to the rest of the developers of the original
python add-on, Patrick Moore and Dan Eicher and finally to Matt Ebb, who
did the research and first implementation and whose code I used to get
started.
2014-08-11 10:39:59 +02:00
|
|
|
/* pie menus */
|
|
|
|
|
prop = RNA_def_property(srna, "pie_initial_timeout", PROP_INT, PROP_NONE);
|
|
|
|
|
RNA_def_property_range(prop, 0, 1000);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Recenter Timeout",
|
|
|
|
|
"Pie menus will use the initial mouse position as center for this amount of time "
|
|
|
|
|
"(in 1/100ths of sec)");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "pie_animation_timeout", PROP_INT, PROP_NONE);
|
|
|
|
|
RNA_def_property_range(prop, 0, 1000);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Animation Timeout",
|
|
|
|
|
"Time needed to fully animate the pie to unfolded state (in 1/100ths of sec)");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "pie_menu_radius", PROP_INT, PROP_PIXEL);
|
|
|
|
|
RNA_def_property_range(prop, 0, 1000);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Radius", "Pie menu size in pixels");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "pie_menu_threshold", PROP_INT, PROP_PIXEL);
|
|
|
|
|
RNA_def_property_range(prop, 0, 1000);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Threshold", "Distance from center needed before a selection can be made");
|
|
|
|
|
|
2014-10-10 19:13:40 +02:00
|
|
|
prop = RNA_def_property(srna, "pie_menu_confirm", PROP_INT, PROP_PIXEL);
|
|
|
|
|
RNA_def_property_range(prop, 0, 1000);
|
2014-10-22 22:26:45 +02:00
|
|
|
RNA_def_property_ui_text(prop, "Confirm Threshold",
|
|
|
|
|
"Distance threshold after which selection is made (zero to disable)");
|
2014-10-10 19:13:40 +02:00
|
|
|
|
2012-10-15 23:17:24 +00:00
|
|
|
prop = RNA_def_property(srna, "use_quit_dialog", PROP_BOOLEAN, PROP_NONE);
|
2012-03-16 17:37:45 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_QUIT_PROMPT);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Prompt Quit",
|
2015-03-03 10:40:52 +01:00
|
|
|
"Ask for confirmation when quitting through the window close button");
|
2012-03-16 17:37:45 +00:00
|
|
|
|
2015-02-25 13:51:53 +01:00
|
|
|
prop = RNA_def_property(srna, "use_gl_warn_support", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "uiflag2", USER_OPENGL_NO_WARN_SUPPORT);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Warn On Deprecated OpenGL",
|
2015-03-03 10:40:52 +01:00
|
|
|
"Pop up a warning when an old OpenGL version is detected");
|
2015-02-25 13:51:53 +01:00
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
/* Toolbox click-hold delay */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "open_left_mouse_delay", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "tb_leftmouse");
|
|
|
|
|
RNA_def_property_range(prop, 1, 40);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Hold LMB Open Toolbox Delay",
|
|
|
|
|
"Time in 1/10 seconds to hold the Left Mouse Button before opening the toolbox");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "open_right_mouse_delay", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "tb_rightmouse");
|
|
|
|
|
RNA_def_property_range(prop, 1, 40);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Hold RMB Open Toolbox Delay",
|
|
|
|
|
"Time in 1/10 seconds to hold the Right Mouse Button before opening the toolbox");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_column_layout", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_PLAINMENUS);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Toolbox Column Layout", "Use a column layout for toolbox");
|
2009-06-16 02:40:39 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_directional_menus", PROP_BOOLEAN, PROP_NONE);
|
2009-06-22 23:58:16 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "uiflag", USER_MENUFIXEDORDER);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Contents Follow Opening Direction",
|
2012-03-18 09:27:36 +00:00
|
|
|
"Otherwise menus, etc will always be top to bottom, left to right, "
|
|
|
|
|
"no matter opening direction");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_global_pivot", PROP_BOOLEAN, PROP_NONE);
|
2009-07-17 12:35:57 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_LOCKAROUND);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Global Pivot", "Lock the same rotation/scaling pivot in all 3D Views");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-08-10 10:34:24 +00:00
|
|
|
prop = RNA_def_property(srna, "use_mouse_depth_navigate", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_ZBUF_ORBIT);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Auto Depth",
|
|
|
|
|
"Use the depth under the mouse to improve view pan/rotate/zoom functionality");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-08-10 10:34:24 +00:00
|
|
|
prop = RNA_def_property(srna, "use_mouse_depth_cursor", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_ZBUF_CURSOR);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Cursor Depth",
|
|
|
|
|
"Use the depth under the mouse when placing the cursor");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_camera_lock_parent", PROP_BOOLEAN, PROP_NONE);
|
2011-05-23 02:53:30 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "uiflag", USER_CAM_LOCK_NO_PARENT);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Camera Parent Lock",
|
|
|
|
|
"When the camera is locked to the view and in fly mode, "
|
|
|
|
|
"transform the parent rather than the camera");
|
2011-05-23 02:53:30 +00:00
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
/* view zoom */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_zoom_to_mouse", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_ZOOM_TO_MOUSEPOS);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Zoom To Mouse Position",
|
2012-03-18 09:27:36 +00:00
|
|
|
"Zoom in towards the mouse pointer's position in the 3D view, "
|
|
|
|
|
"rather than the 2D window center");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
|
|
|
|
/* view rotation */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_auto_perspective", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_AUTOPERSP);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Auto Perspective",
|
|
|
|
|
"Automatically switch between orthographic and perspective when changing "
|
|
|
|
|
"from top/front/side views");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_rotate_around_active", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_ORBIT_SELECTION);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Rotate Around Selection", "Use selection as the pivot point");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2010-01-30 04:43:36 +00:00
|
|
|
/* mini axis */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_mini_axis", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_SHOW_ROTVIEWICON);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Show Mini Axes",
|
|
|
|
|
"Show a small rotating 3D axes in the bottom left corner of the 3D View");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "mini_axis_size", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "rvisize");
|
|
|
|
|
RNA_def_property_range(prop, 10, 64);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Mini Axes Size", "The axes icon's size");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "mini_axis_brightness", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "rvibright");
|
|
|
|
|
RNA_def_property_range(prop, 0, 10);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Mini Axes Brightness", "Brightness of the icon");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "smooth_view", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "smooth_viewtx");
|
2015-08-26 09:35:33 +10:00
|
|
|
RNA_def_property_range(prop, 0, 1000);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Smooth View", "Time to animate the view in milliseconds, zero to disable");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2015-06-11 18:12:26 +02:00
|
|
|
prop = RNA_def_property(srna, "rotation_angle", PROP_FLOAT, PROP_NONE);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "pad_rot_angle");
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_range(prop, 0, 90);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Rotation Angle", "Rotation step for numerical pad keys (2 4 6 8)");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
|
|
|
|
/* 3D transform widget */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_manipulator", PROP_BOOLEAN, PROP_NONE);
|
2010-11-01 02:22:20 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "tw_flag", V3D_USE_MANIPULATOR);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Manipulator", "Use 3D transform manipulator");
|
2010-11-01 02:22:20 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_show_manipulator_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2014-01-16 16:47:12 +11:00
|
|
|
prop = RNA_def_property(srna, "manipulator_size", PROP_INT, PROP_PIXEL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "tw_size");
|
2014-01-16 16:47:12 +11:00
|
|
|
RNA_def_property_range(prop, 10, 200);
|
|
|
|
|
RNA_def_property_int_default(prop, 75);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Manipulator Size", "Diameter of the manipulator");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2014-01-16 16:47:12 +11:00
|
|
|
prop = RNA_def_property(srna, "manipulator_handle_size", PROP_INT, PROP_PERCENTAGE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "tw_handlesize");
|
|
|
|
|
RNA_def_property_range(prop, 2, 40);
|
2011-06-24 03:30:50 +00:00
|
|
|
RNA_def_property_int_default(prop, 25);
|
2014-01-16 16:47:12 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Manipulator Handle Size", "Size of manipulator handles as percentage of the radius");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2013-12-13 17:03:44 +01:00
|
|
|
prop = RNA_def_property(srna, "manipulator_hotspot", PROP_INT, PROP_PIXEL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "tw_hotspot");
|
|
|
|
|
RNA_def_property_range(prop, 4, 40);
|
2011-06-24 03:30:50 +00:00
|
|
|
RNA_def_property_int_default(prop, 14);
|
2013-12-13 17:03:44 +01:00
|
|
|
RNA_def_property_ui_text(prop, "Manipulator Hotspot", "Distance around the handles to accept mouse clicks");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2013-12-13 04:39:15 +11:00
|
|
|
prop = RNA_def_property(srna, "object_origin_size", PROP_INT, PROP_PIXEL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "obcenter_dia");
|
|
|
|
|
RNA_def_property_range(prop, 4, 10);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Object Origin Size", "Diameter in Pixels for Object/Lamp origin display");
|
2.5
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-04 20:51:09 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2010-01-30 04:43:36 +00:00
|
|
|
|
|
|
|
|
/* View2D Grid Displays */
|
2013-12-13 17:03:44 +01:00
|
|
|
prop = RNA_def_property(srna, "view2d_grid_spacing_min", PROP_INT, PROP_PIXEL);
|
2010-01-30 04:43:36 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "v2d_min_gridsize");
|
2012-03-05 23:30:41 +00:00
|
|
|
RNA_def_property_range(prop, 1, 500); /* XXX: perhaps the lower range should only go down to 5? */
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "2D View Minimum Grid Spacing",
|
|
|
|
|
"Minimum number of pixels between each gridline in 2D Viewports");
|
2010-01-30 04:43:36 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-05-12 11:01:29 +00:00
|
|
|
/* TODO: add a setter for this, so that we can bump up the minimum size as necessary... */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "timecode_style", PROP_ENUM, PROP_NONE);
|
2010-01-30 04:43:36 +00:00
|
|
|
RNA_def_property_enum_items(prop, timecode_styles);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "timecode_style");
|
|
|
|
|
RNA_def_property_enum_funcs(prop, NULL, "rna_userdef_timecode_style_set", NULL);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "TimeCode Style",
|
|
|
|
|
"Format of Time Codes displayed when not displaying timing in terms of frames");
|
2010-01-30 04:43:36 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2015-05-13 20:30:53 +02:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "view_frame_type", PROP_ENUM, PROP_NONE);
|
|
|
|
|
RNA_def_property_enum_items(prop, zoom_frame_modes);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "view_frame_type");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Zoom To Frame Type", "How zooming to frame focuses around current frame");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "view_frame_keyframes", PROP_INT, PROP_NONE);
|
|
|
|
|
RNA_def_property_range(prop, 1, 500);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Zoom Keyframes",
|
|
|
|
|
"Keyframes around cursor that we zoom around");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "view_frame_seconds", PROP_FLOAT, PROP_TIME);
|
|
|
|
|
RNA_def_property_range(prop, 0.0, 10000.0);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Zoom Seconds",
|
|
|
|
|
"Seconds around cursor that we zoom around");
|
|
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2009-01-27 04:37:12 +00:00
|
|
|
static void rna_def_userdef_edit(BlenderRNA *brna)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
2009-01-27 04:37:12 +00:00
|
|
|
StructRNA *srna;
|
2009-01-07 21:05:51 +00:00
|
|
|
|
|
|
|
|
static EnumPropertyItem auto_key_modes[] = {
|
2009-07-24 14:30:40 +00:00
|
|
|
{AUTOKEY_MODE_NORMAL, "ADD_REPLACE_KEYS", 0, "Add/Replace", ""},
|
|
|
|
|
{AUTOKEY_MODE_EDITKEYS, "REPLACE_KEYS", 0, "Replace", ""},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
static const EnumPropertyItem material_link_items[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{0, "OBDATA", 0, "ObData", "Toggle whether the material is linked to object data or the object block"},
|
2012-03-18 09:27:36 +00:00
|
|
|
{USER_MAT_ON_OB, "OBJECT", 0, "Object",
|
|
|
|
|
"Toggle whether the material is linked to object data or the object block"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-09-13 21:36:24 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
static const EnumPropertyItem object_align_items[] = {
|
2011-09-28 14:08:56 +00:00
|
|
|
{0, "WORLD", 0, "World", "Align newly added objects to the world coordinate system"},
|
2011-09-15 13:20:18 +00:00
|
|
|
{USER_ADD_VIEWALIGNED, "VIEW", 0, "View", "Align newly added objects facing the active 3D View direction"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-09-13 21:36:24 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "UserPreferencesEdit", NULL);
|
2009-01-27 04:37:12 +00:00
|
|
|
RNA_def_struct_sdna(srna, "UserDef");
|
|
|
|
|
RNA_def_struct_nested(brna, srna, "UserPreferences");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Edit Methods", "Settings for interacting with Blender data");
|
2009-01-27 04:37:12 +00:00
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
/* Edit Methods */
|
2009-09-13 21:36:24 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "material_link", PROP_ENUM, PROP_NONE);
|
2009-09-13 21:36:24 +00:00
|
|
|
RNA_def_property_enum_bitflag_sdna(prop, NULL, "flag");
|
|
|
|
|
RNA_def_property_enum_items(prop, material_link_items);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Material Link To",
|
|
|
|
|
"Toggle whether the material is linked to object data or the object block");
|
2009-09-13 21:36:24 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "object_align", PROP_ENUM, PROP_NONE);
|
2009-09-13 21:36:24 +00:00
|
|
|
RNA_def_property_enum_bitflag_sdna(prop, NULL, "flag");
|
|
|
|
|
RNA_def_property_enum_items(prop, object_align_items);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Align Object To",
|
2012-03-18 09:27:36 +00:00
|
|
|
"When adding objects from a 3D View menu, either align them with that view or "
|
|
|
|
|
"with the world");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_enter_edit_mode", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_ADD_EDITMODE);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Enter Edit Mode", "Enter Edit Mode automatically after adding a new object");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_drag_immediately", PROP_BOOLEAN, PROP_NONE);
|
2010-04-03 17:38:43 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_RELEASECONFIRM);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Release confirms",
|
|
|
|
|
"Moving things with a mouse drag confirms when releasing the button");
|
2010-02-18 00:29:08 +00:00
|
|
|
|
|
|
|
|
/* Undo */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "undo_steps", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "undosteps");
|
2015-02-07 04:26:57 +11:00
|
|
|
RNA_def_property_range(prop, 0, 256);
|
2014-11-07 10:24:11 +01:00
|
|
|
RNA_def_property_int_funcs(prop, NULL, "rna_userdef_undo_steps_set", NULL);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Undo Steps", "Number of undo steps available (smaller values conserve memory)");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "undo_memory_limit", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "undomemory");
|
|
|
|
|
RNA_def_property_range(prop, 0, 32767);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Undo Memory Size", "Maximum memory usage in megabytes (0 means unlimited)");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_global_undo", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_GLOBALUNDO);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Global Undo",
|
2012-03-18 09:27:36 +00:00
|
|
|
"Global undo works by keeping a full copy of the file itself in memory, "
|
|
|
|
|
"so takes extra memory");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-18 09:27:36 +00:00
|
|
|
/* auto keyframing */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_auto_keying", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "autokey_mode", AUTOKEY_ON);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Auto Keying Enable",
|
2012-03-18 09:27:36 +00:00
|
|
|
"Automatic keyframe insertion for Objects and Bones "
|
|
|
|
|
"(default setting used for new Scenes)");
|
2010-05-03 03:33:20 +00:00
|
|
|
RNA_def_property_ui_icon(prop, ICON_REC, 0);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "auto_keying_mode", PROP_ENUM, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_enum_items(prop, auto_key_modes);
|
2009-05-28 23:23:47 +00:00
|
|
|
RNA_def_property_enum_funcs(prop, "rna_userdef_autokeymode_get", "rna_userdef_autokeymode_set", NULL);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Auto Keying Mode",
|
|
|
|
|
"Mode of automatic keyframe insertion for Objects and Bones "
|
|
|
|
|
"(default setting used for new Scenes)");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_keyframe_insert_available", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "autokey_flag", AUTOKEY_FLAG_INSERTAVAIL);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Auto Keyframe Insert Available",
|
|
|
|
|
"Automatic keyframe insertion in available F-Curves");
|
2012-10-15 23:17:24 +00:00
|
|
|
|
2012-10-09 00:59:40 +00:00
|
|
|
prop = RNA_def_property(srna, "use_auto_keying_warning", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "autokey_flag", AUTOKEY_FLAG_NOWARNING);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Show Auto Keying Warning",
|
2012-10-21 14:02:30 +00:00
|
|
|
"Show warning indicators when transforming objects and bones if auto keying is enabled");
|
2009-10-08 06:39:45 +00:00
|
|
|
|
2010-02-18 00:29:08 +00:00
|
|
|
/* keyframing settings */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_keyframe_insert_needed", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "autokey_flag", AUTOKEY_FLAG_INSERTNEEDED);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Keyframe Insert Needed", "Keyframe insertion only when keyframe needed");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_visual_keying", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "autokey_flag", AUTOKEY_FLAG_AUTOMATKEY);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Visual Keying", "Use Visual keying automatically for constrained objects");
|
2009-12-14 12:09:20 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_insertkey_xyz_to_rgb", PROP_BOOLEAN, PROP_NONE);
|
2009-12-14 12:09:20 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "autokey_flag", AUTOKEY_FLAG_XYZ2RGB);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "New F-Curve Colors - XYZ to RGB",
|
|
|
|
|
"Color for newly added transformation F-Curves (Location, Rotation, Scale) "
|
|
|
|
|
"and also Color is based on the transform axis");
|
2009-12-14 12:09:20 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "keyframe_new_interpolation_type", PROP_ENUM, PROP_NONE);
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_enum_items(prop, beztriple_interpolation_mode_items);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "ipo_new");
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "New Interpolation Type",
|
|
|
|
|
"Interpolation mode used for first keyframe on newly added F-Curves "
|
2012-07-04 15:04:38 +00:00
|
|
|
"(subsequent keyframes take interpolation from preceding keyframe)");
|
2015-05-13 20:30:53 +02:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "keyframe_new_handle_type", PROP_ENUM, PROP_NONE);
|
2011-08-04 14:13:05 +00:00
|
|
|
RNA_def_property_enum_items(prop, keyframe_handle_type_items);
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "keyhandles_new");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "New Handles Type", "Handle type for handles of new keyframes");
|
Keyframe Defaults and Cleanups:
This commit fixes reports #21638 and #21818, which were both also Durian feature requests.
Cbanges:
* Added new default setting for the type of handles created when creating keyframes. This can be found in the user-preferences, and is used whenever existing keyframes aren't being overwritten (instead of the value being always taken from the keyframes either side, #21638).
* When keyframing over existing keyframes, only the values will be changed. The handles will be offset by the same amount that the value of the keyframe changed, though how well this works in practice still needs to be tested more thoroughly (#21818, already fixed earlier, but this commit is the full fix).
* When 'free' handles are added by default, they are offset to be +/- 1 frame on either side of the keyframe so that it is obvious that they can be moved. However, they just take the same value of the keyframe since this is easiest.
* Properly initialising handle colour defaults for 3D-View and Graph Editor. Graph Editor's theme userprefs also show these settings now, though the layout is really quick hack-style.
2010-04-02 01:03:40 +00:00
|
|
|
|
2010-02-18 00:29:08 +00:00
|
|
|
/* frame numbers */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_negative_frames", PROP_BOOLEAN, PROP_NONE);
|
2010-02-18 00:29:08 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", USER_NONEGFRAMES);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Allow Negative Frames",
|
|
|
|
|
"Current frame number can be manually set to a negative value");
|
2012-10-15 23:17:24 +00:00
|
|
|
|
2012-03-22 12:19:31 +00:00
|
|
|
/* fcurve opacity */
|
|
|
|
|
prop = RNA_def_property(srna, "fcurve_unselected_alpha", PROP_FLOAT, PROP_FACTOR);
|
|
|
|
|
RNA_def_property_float_sdna(prop, NULL, "fcu_inactive_alpha");
|
|
|
|
|
RNA_def_property_range(prop, 0.001f, 1.0f);
|
2012-04-15 13:41:07 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Unselected F-Curve Visibility",
|
2012-03-22 12:19:31 +00:00
|
|
|
"Amount that unselected F-Curves stand out from the background (Graph Editor)");
|
2012-05-12 11:01:29 +00:00
|
|
|
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_GRAPH, NULL);
|
2010-02-18 00:29:08 +00:00
|
|
|
|
|
|
|
|
/* grease pencil */
|
2013-12-13 17:03:44 +01:00
|
|
|
prop = RNA_def_property(srna, "grease_pencil_manhattan_distance", PROP_INT, PROP_PIXEL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "gp_manhattendist");
|
|
|
|
|
RNA_def_property_range(prop, 0, 100);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil Manhattan Distance",
|
|
|
|
|
"Pixels moved by mouse per axis when drawing stroke");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2013-12-13 17:03:44 +01:00
|
|
|
prop = RNA_def_property(srna, "grease_pencil_euclidean_distance", PROP_INT, PROP_PIXEL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "gp_euclideandist");
|
|
|
|
|
RNA_def_property_range(prop, 0, 100);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil Euclidean Distance",
|
2013-12-13 17:03:44 +01:00
|
|
|
"Distance moved by mouse when drawing stroke to include");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_grease_pencil_smooth_stroke", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "gp_settings", GP_PAINT_DOSMOOTH);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil Smooth Stroke", "Smooth the final stroke");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_grease_pencil_simplify_stroke", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "gp_settings", GP_PAINT_DOSIMPLIFY);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil Simplify Stroke", "Simplify the final stroke");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2013-12-13 17:03:44 +01:00
|
|
|
prop = RNA_def_property(srna, "grease_pencil_eraser_radius", PROP_INT, PROP_PIXEL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "gp_eraser");
|
|
|
|
|
RNA_def_property_range(prop, 0, 100);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil Eraser Radius", "Radius of eraser 'brush'");
|
2013-11-06 10:59:05 +00:00
|
|
|
|
|
|
|
|
|
2015-04-20 21:20:39 +10:00
|
|
|
prop = RNA_def_property(srna, "grease_pencil_default_color", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2013-11-06 10:59:05 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "gpencil_new_layer_col");
|
|
|
|
|
RNA_def_property_array(prop, 4);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Grease Pencil Default Color", "Color of new Grease Pencil layers");
|
|
|
|
|
|
2010-07-14 14:11:03 +00:00
|
|
|
/* sculpt and paint */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "sculpt_paint_overlay_color", PROP_FLOAT, PROP_COLOR_GAMMA);
|
2010-07-14 14:11:03 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "sculpt_paint_overlay_col");
|
|
|
|
|
RNA_def_property_array(prop, 3);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Sculpt/Paint Overlay Color", "Color of texture overlay");
|
2010-07-14 14:11:03 +00:00
|
|
|
|
2010-02-18 00:29:08 +00:00
|
|
|
/* duplication linking */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_mesh", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_MESH);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Mesh", "Causes mesh data to be duplicated with the object");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_surface", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_SURF);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Surface", "Causes surface data to be duplicated with the object");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_curve", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_CURVE);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Curve", "Causes curve data to be duplicated with the object");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_text", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_FONT);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Text", "Causes text data to be duplicated with the object");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_metaball", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_MBALL);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Metaball", "Causes metaball data to be duplicated with the object");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_armature", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_ARM);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Armature", "Causes armature data to be duplicated with the object");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_lamp", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_LAMP);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Lamp", "Causes lamp data to be duplicated with the object");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_material", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_MAT);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Material", "Causes material data to be duplicated with the object");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_texture", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_TEX);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Texture", "Causes texture data to be duplicated with the object");
|
2010-02-18 00:29:08 +00:00
|
|
|
|
2012-05-12 11:01:29 +00:00
|
|
|
/* xxx */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_fcurve", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_IPO);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate F-Curve", "Causes F-curve data to be duplicated with the object");
|
2012-05-12 11:01:29 +00:00
|
|
|
/* xxx */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_action", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_ACT);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Action", "Causes actions to be duplicated with the object");
|
2009-08-29 23:41:09 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_duplicate_particle", PROP_BOOLEAN, PROP_NONE);
|
2009-08-29 23:41:09 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_PSYS);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Duplicate Particle", "Causes particle systems to be duplicated with the object");
|
2015-08-01 17:39:48 +02:00
|
|
|
|
|
|
|
|
/* currently only used for insert offset (aka auto-offset), maybe also be useful for later stuff though */
|
|
|
|
|
prop = RNA_def_property(srna, "node_margin", PROP_INT, PROP_NONE);
|
|
|
|
|
RNA_def_property_int_sdna(prop, NULL, "node_margin");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Auto-offset Margin", "Minimum distance between nodes for Auto-offsetting nodes");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2009-01-27 04:37:12 +00:00
|
|
|
static void rna_def_userdef_system(BlenderRNA *brna)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
2014-07-23 15:24:07 +02:00
|
|
|
FunctionRNA *func;
|
2009-01-07 21:05:51 +00:00
|
|
|
PropertyRNA *prop;
|
2014-07-23 15:24:07 +02:00
|
|
|
PropertyRNA *parm;
|
2009-01-27 04:37:12 +00:00
|
|
|
StructRNA *srna;
|
2009-01-07 21:05:51 +00:00
|
|
|
|
|
|
|
|
static EnumPropertyItem gl_texture_clamp_items[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{0, "CLAMP_OFF", 0, "Off", ""},
|
Key Configuration
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-10-08 18:40:03 +00:00
|
|
|
{8192, "CLAMP_8192", 0, "8192", ""},
|
|
|
|
|
{4096, "CLAMP_4096", 0, "4096", ""},
|
|
|
|
|
{2048, "CLAMP_2048", 0, "2048", ""},
|
|
|
|
|
{1024, "CLAMP_1024", 0, "1024", ""},
|
|
|
|
|
{512, "CLAMP_512", 0, "512", ""},
|
|
|
|
|
{256, "CLAMP_256", 0, "256", ""},
|
|
|
|
|
{128, "CLAMP_128", 0, "128", ""},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-05-20 19:49:27 +00:00
|
|
|
static EnumPropertyItem anisotropic_items[] = {
|
2011-06-24 03:30:50 +00:00
|
|
|
{1, "FILTER_0", 0, "Off", ""},
|
|
|
|
|
{2, "FILTER_2", 0, "2x", ""},
|
|
|
|
|
{4, "FILTER_4", 0, "4x", ""},
|
|
|
|
|
{8, "FILTER_8", 0, "8x", ""},
|
|
|
|
|
{16, "FILTER_16", 0, "16x", ""},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2011-06-24 03:30:50 +00:00
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
static EnumPropertyItem audio_mixing_samples_items[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{256, "SAMPLES_256", 0, "256", "Set audio mixing buffer size to 256 samples"},
|
|
|
|
|
{512, "SAMPLES_512", 0, "512", "Set audio mixing buffer size to 512 samples"},
|
|
|
|
|
{1024, "SAMPLES_1024", 0, "1024", "Set audio mixing buffer size to 1024 samples"},
|
|
|
|
|
{2048, "SAMPLES_2048", 0, "2048", "Set audio mixing buffer size to 2048 samples"},
|
|
|
|
|
{4096, "SAMPLES_4096", 0, "4096", "Set audio mixing buffer size to 4096 samples"},
|
|
|
|
|
{8192, "SAMPLES_8192", 0, "8192", "Set audio mixing buffer size to 8192 samples"},
|
|
|
|
|
{16384, "SAMPLES_16384", 0, "16384", "Set audio mixing buffer size to 16384 samples"},
|
|
|
|
|
{32768, "SAMPLES_32768", 0, "32768", "Set audio mixing buffer size to 32768 samples"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-08-09 21:16:39 +00:00
|
|
|
|
|
|
|
|
static EnumPropertyItem audio_rate_items[] = {
|
2012-03-05 23:30:41 +00:00
|
|
|
/* {8000, "RATE_8000", 0, "8 kHz", "Set audio sampling rate to 8000 samples per second"}, */
|
|
|
|
|
/* {11025, "RATE_11025", 0, "11.025 kHz", "Set audio sampling rate to 11025 samples per second"}, */
|
|
|
|
|
/* {16000, "RATE_16000", 0, "16 kHz", "Set audio sampling rate to 16000 samples per second"}, */
|
|
|
|
|
/* {22050, "RATE_22050", 0, "22.05 kHz", "Set audio sampling rate to 22050 samples per second"}, */
|
|
|
|
|
/* {32000, "RATE_32000", 0, "32 kHz", "Set audio sampling rate to 32000 samples per second"}, */
|
2011-09-15 13:20:18 +00:00
|
|
|
{44100, "RATE_44100", 0, "44.1 kHz", "Set audio sampling rate to 44100 samples per second"},
|
|
|
|
|
{48000, "RATE_48000", 0, "48 kHz", "Set audio sampling rate to 48000 samples per second"},
|
2012-03-05 23:30:41 +00:00
|
|
|
/* {88200, "RATE_88200", 0, "88.2 kHz", "Set audio sampling rate to 88200 samples per second"}, */
|
2011-09-15 13:20:18 +00:00
|
|
|
{96000, "RATE_96000", 0, "96 kHz", "Set audio sampling rate to 96000 samples per second"},
|
|
|
|
|
{192000, "RATE_192000", 0, "192 kHz", "Set audio sampling rate to 192000 samples per second"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-08-09 21:16:39 +00:00
|
|
|
|
|
|
|
|
static EnumPropertyItem audio_format_items[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{0x01, "U8", 0, "8-bit Unsigned", "Set audio sample format to 8 bit unsigned integer"},
|
|
|
|
|
{0x12, "S16", 0, "16-bit Signed", "Set audio sample format to 16 bit signed integer"},
|
|
|
|
|
{0x13, "S24", 0, "24-bit Signed", "Set audio sample format to 24 bit signed integer"},
|
|
|
|
|
{0x14, "S32", 0, "32-bit Signed", "Set audio sample format to 32 bit signed integer"},
|
|
|
|
|
{0x24, "FLOAT", 0, "32-bit Float", "Set audio sample format to 32 bit float"},
|
|
|
|
|
{0x28, "DOUBLE", 0, "64-bit Float", "Set audio sample format to 64 bit float"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-08-09 21:16:39 +00:00
|
|
|
|
|
|
|
|
static EnumPropertyItem audio_channel_items[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{1, "MONO", 0, "Mono", "Set audio channels to mono"},
|
|
|
|
|
{2, "STEREO", 0, "Stereo", "Set audio channels to stereo"},
|
|
|
|
|
{4, "SURROUND4", 0, "4 Channels", "Set audio channels to 4 channels"},
|
|
|
|
|
{6, "SURROUND51", 0, "5.1 Surround", "Set audio channels to 5.1 surround sound"},
|
|
|
|
|
{8, "SURROUND71", 0, "7.1 Surround", "Set audio channels to 7.1 surround sound"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2.5: WM Compositing
* Triple Buffer is now more complete:
- Proper handling of window resize, duplicate, etc.
- It now uses 3x3 textures (or less) if the power of two sizes
do not match well. That still has a worst case wast of 23.4%,
but better than 300%.
- It can also use the ARB/NV/EXT_texture_rectangle extension
now, which may be supported on hardware that does not support
ARB_texture_non_power_of_two.
- Gesture, menu and brushe redraws now require no redraws at all
from the area regions. So even on a high poly scene just moving
the paint cursor or opening a menu should be fast.
* Testing can be done by setting the "Window Draw Method" in the
User Preferences in the outliner. "Overlap" is still default,
since "Triple Buffer" has not been tested on computers other than
mine, would like to avoid crashing Blender on startup in case
there is a common bug, but it's ready for testing now.
- For reference "Full" draws the full window each time.
- "Triple Buffer" should work for both swap copy and swap exchange
systems, the latter still need the -E command line option for
"Overlap".
- Resizing and going fullscreen still gives flicker here but no
more than "Full" drawing.
* Partial Redraw was added. ED_region_tag_redraw_partial takes a
rect in window coordinates to define a subarea of the region.
On region draw it will then set glScissor to a smaller area, and
ar->drawrct will always be set to either the partial or full
window rect. The latter can then be used for clipping in the 3D
view or clipping interface drawing. Neither is implemented yet.
2009-01-23 03:52:52 +00:00
|
|
|
static EnumPropertyItem draw_method_items[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{USER_DRAW_AUTOMATIC, "AUTOMATIC", 0, "Automatic", "Automatically set based on graphics card and driver"},
|
2011-09-28 14:08:56 +00:00
|
|
|
{USER_DRAW_TRIPLE, "TRIPLE_BUFFER", 0, "Triple Buffer",
|
|
|
|
|
"Use a third buffer for minimal redraws at the cost of more memory"},
|
2012-03-18 09:27:36 +00:00
|
|
|
{USER_DRAW_OVERLAP, "OVERLAP", 0, "Overlap",
|
|
|
|
|
"Redraw all overlapping regions, minimal memory usage but more redraws"},
|
2011-09-28 14:08:56 +00:00
|
|
|
{USER_DRAW_OVERLAP_FLIP, "OVERLAP_FLIP", 0, "Overlap Flip",
|
|
|
|
|
"Redraw all overlapping regions, minimal memory usage but more redraws "
|
|
|
|
|
"(for graphics drivers that do flipping)"},
|
|
|
|
|
{USER_DRAW_FULL, "FULL", 0, "Full",
|
|
|
|
|
"Do a full redraw each time, slow, only use for reference or when everything else fails"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2010-01-09 06:44:54 +00:00
|
|
|
|
|
|
|
|
static EnumPropertyItem color_picker_types[] = {
|
2014-03-12 18:58:50 +02:00
|
|
|
{USER_CP_CIRCLE_HSV, "CIRCLE_HSV", 0, "Circle (HSV)", "A circular Hue/Saturation color wheel, with Value slider"},
|
|
|
|
|
{USER_CP_CIRCLE_HSL, "CIRCLE_HSL", 0, "Circle (HSL)", "A circular Hue/Saturation color wheel, with Lightness slider"},
|
2011-09-15 13:20:18 +00:00
|
|
|
{USER_CP_SQUARE_SV, "SQUARE_SV", 0, "Square (SV + H)", "A square showing Saturation/Value, with Hue slider"},
|
|
|
|
|
{USER_CP_SQUARE_HS, "SQUARE_HS", 0, "Square (HS + V)", "A square showing Hue/Saturation, with Value slider"},
|
|
|
|
|
{USER_CP_SQUARE_HV, "SQUARE_HV", 0, "Square (HV + S)", "A square showing Hue/Value, with Saturation slider"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2010-01-09 06:44:54 +00:00
|
|
|
|
2012-11-10 11:55:45 +00:00
|
|
|
static EnumPropertyItem multi_sample_levels[] = {
|
2012-11-11 10:55:32 +00:00
|
|
|
{USER_MULTISAMPLE_NONE, "NONE", 0, "No MultiSample", "Do not use OpenGL MultiSample"},
|
|
|
|
|
{USER_MULTISAMPLE_2, "2", 0, "MultiSample: 2", "Use 2x OpenGL MultiSample (requires restart)"},
|
|
|
|
|
{USER_MULTISAMPLE_4, "4", 0, "MultiSample: 4", "Use 4x OpenGL MultiSample (requires restart)"},
|
|
|
|
|
{USER_MULTISAMPLE_8, "8", 0, "MultiSample: 8", "Use 8x OpenGL MultiSample (requires restart)"},
|
|
|
|
|
{USER_MULTISAMPLE_16, "16", 0, "MultiSample: 16", "Use 16x OpenGL MultiSample (requires restart)"},
|
2012-11-10 11:55:45 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
|
|
|
|
|
2012-10-22 14:04:40 +00:00
|
|
|
static EnumPropertyItem language_items[] = {
|
2012-12-24 17:32:38 +00:00
|
|
|
{0, "DEFAULT", 0, "Default (Default)", ""},
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
2012-10-22 14:04:40 +00:00
|
|
|
};
|
2.5: WM Compositing
* Triple Buffer is now more complete:
- Proper handling of window resize, duplicate, etc.
- It now uses 3x3 textures (or less) if the power of two sizes
do not match well. That still has a worst case wast of 23.4%,
but better than 300%.
- It can also use the ARB/NV/EXT_texture_rectangle extension
now, which may be supported on hardware that does not support
ARB_texture_non_power_of_two.
- Gesture, menu and brushe redraws now require no redraws at all
from the area regions. So even on a high poly scene just moving
the paint cursor or opening a menu should be fast.
* Testing can be done by setting the "Window Draw Method" in the
User Preferences in the outliner. "Overlap" is still default,
since "Triple Buffer" has not been tested on computers other than
mine, would like to avoid crashing Blender on startup in case
there is a common bug, but it's ready for testing now.
- For reference "Full" draws the full window each time.
- "Triple Buffer" should work for both swap copy and swap exchange
systems, the latter still need the -E command line option for
"Overlap".
- Resizing and going fullscreen still gives flicker here but no
more than "Full" drawing.
* Partial Redraw was added. ED_region_tag_redraw_partial takes a
rect in window coordinates to define a subarea of the region.
On region draw it will then set glScissor to a smaller area, and
ar->drawrct will always be set to either the partial or full
window rect. The latter can then be used for clipping in the 3D
view or clipping interface drawing. Neither is implemented yet.
2009-01-23 03:52:52 +00:00
|
|
|
|
2012-01-09 16:58:01 +00:00
|
|
|
#ifdef WITH_CYCLES
|
|
|
|
|
static EnumPropertyItem compute_device_items[] = {
|
|
|
|
|
{0, "CPU", 0, "CPU", ""},
|
2012-05-12 11:01:29 +00:00
|
|
|
{ 0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2012-01-09 16:58:01 +00:00
|
|
|
#endif
|
|
|
|
|
|
2013-04-12 10:52:47 +00:00
|
|
|
static EnumPropertyItem image_draw_methods[] = {
|
|
|
|
|
{IMAGE_DRAW_METHOD_2DTEXTURE, "2DTEXTURE", 0, "2D Texture", "Use CPU for display transform and draw image with 2D texture"},
|
2013-04-29 15:50:12 +00:00
|
|
|
{IMAGE_DRAW_METHOD_GLSL, "GLSL", 0, "GLSL", "Use GLSL shaders for display transform and draw image with 2D texture"},
|
2013-04-12 10:52:47 +00:00
|
|
|
{IMAGE_DRAW_METHOD_DRAWPIXELS, "DRAWPIXELS", 0, "DrawPixels", "Use CPU for display transform and draw image using DrawPixels"},
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
|
|
|
|
|
2014-07-23 15:24:07 +02:00
|
|
|
static EnumPropertyItem gpu_select_method_items[] = {
|
|
|
|
|
{USER_SELECT_AUTO, "AUTO", 0, "Automatic", ""},
|
|
|
|
|
{USER_SELECT_USE_SELECT_RENDERMODE, "GL_SELECT", 0, "OpenGL Select", ""},
|
|
|
|
|
{USER_SELECT_USE_OCCLUSION_QUERY, "GL_QUERY", 0, "OpenGL Occlusion Queries", ""},
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
|
|
|
|
|
2014-09-30 18:29:32 +02:00
|
|
|
static EnumPropertyItem virtual_pixel_mode_items[] = {
|
|
|
|
|
{VIRTUAL_PIXEL_NATIVE, "NATIVE", 0, "Native", "Use native pixel size of the display"},
|
|
|
|
|
{VIRTUAL_PIXEL_DOUBLE, "DOUBLE", 0, "Double", "Use double the native pixel size of the display"},
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "UserPreferencesSystem", NULL);
|
2009-01-27 04:37:12 +00:00
|
|
|
RNA_def_struct_sdna(srna, "UserDef");
|
|
|
|
|
RNA_def_struct_nested(brna, srna, "UserPreferences");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "System & OpenGL", "Graphics driver and operating system settings");
|
2009-01-27 04:37:12 +00:00
|
|
|
|
2009-09-17 17:42:08 +00:00
|
|
|
/* Language */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_international_fonts", PROP_BOOLEAN, PROP_NONE);
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "transopts", USER_DOTRANSLATE);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "International Fonts", "Use international fonts");
|
2011-09-15 13:44:25 +00:00
|
|
|
RNA_def_property_update(prop, NC_WINDOW, "rna_userdef_language_update");
|
2009-09-17 17:42:08 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "dpi", PROP_INT, PROP_NONE);
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "dpi");
|
2013-01-25 15:44:22 +00:00
|
|
|
RNA_def_property_range(prop, 48, 144);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "DPI", "Font size and resolution for display");
|
Code holiday commit:
- fix: user pref, window title was reset to 'Blender' on tab usage
- Undo history menu back:
- name "Undo History"
- hotkey alt+ctrl+z (alt+apple+z for mac)
- works like 2.4x, only for global undo, editmode and particle edit.
- Menu scroll
- for small windows or screens, popup menus now allow to display
all items, using internal scrolling
- works with a timer, scrolling 10 items per second when mouse
is over the top or bottom arrow
- if menu is too big to display, it now draws to top or bottom,
based on largest available space.
- also works for hotkey driven pop up menus.
- User pref "DPI" follows widget/layout size
- widgets & headers now become bigger and smaller, to match
'dpi' font sizes. Works well to match UI to monitor size.
- note that icons can get fuzzy, we need better mipmaps for it
2011-06-04 17:03:46 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_dpi_update");
|
2014-06-14 02:23:32 +10:00
|
|
|
|
2014-09-30 18:29:32 +02:00
|
|
|
prop = RNA_def_property(srna, "virtual_pixel_mode", PROP_ENUM, PROP_NONE);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "virtual_pixel");
|
|
|
|
|
RNA_def_property_enum_items(prop, virtual_pixel_mode_items);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Virtual Pixel Mode", "Modify the pixel size for hi-res devices");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_virtual_pixel_update");
|
|
|
|
|
|
2015-02-02 04:56:16 +11:00
|
|
|
prop = RNA_def_property(srna, "pixel_size", PROP_FLOAT, PROP_NONE);
|
2015-02-02 05:01:48 +11:00
|
|
|
RNA_def_property_clear_flag(prop, PROP_EDITABLE);
|
2015-02-02 04:56:16 +11:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "pixelsize");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Pixel Size", "");
|
|
|
|
|
|
2014-06-14 02:23:32 +10:00
|
|
|
prop = RNA_def_property(srna, "font_path_ui", PROP_STRING, PROP_FILEPATH);
|
|
|
|
|
RNA_def_property_string_sdna(prop, NULL, "font_path_ui");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Interface Font", "Path to interface font");
|
|
|
|
|
RNA_def_property_update(prop, NC_WINDOW, "rna_userdef_language_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "scrollback", PROP_INT, PROP_UNSIGNED);
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "scrollback");
|
|
|
|
|
RNA_def_property_range(prop, 32, 32768);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Scrollback", "Maximum number of lines to store for the console buffer");
|
2009-09-17 17:42:08 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "author", PROP_STRING, PROP_NONE);
|
2010-08-26 07:19:24 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "author");
|
|
|
|
|
RNA_def_property_string_maxlength(prop, 80);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Author",
|
|
|
|
|
"Name that will be used in exported files when format supports such feature");
|
2010-08-26 07:19:24 +00:00
|
|
|
|
2009-09-17 17:42:08 +00:00
|
|
|
/* Language Selection */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "language", PROP_ENUM, PROP_NONE);
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_enum_items(prop, language_items);
|
2012-10-22 18:19:55 +00:00
|
|
|
#ifdef WITH_INTERNATIONAL
|
2012-10-22 14:04:40 +00:00
|
|
|
RNA_def_property_enum_funcs(prop, NULL, NULL, "rna_lang_enum_properties_itemf");
|
2012-10-22 18:19:55 +00:00
|
|
|
#endif
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Language", "Language used for translation");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_update(prop, NC_WINDOW, "rna_userdef_language_update");
|
2009-09-17 17:42:08 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_translate_tooltips", PROP_BOOLEAN, PROP_NONE);
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "transopts", USER_TR_TOOLTIPS);
|
2013-03-24 12:13:13 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Translate Tooltips", "Translate tooltips");
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_translate_interface", PROP_BOOLEAN, PROP_NONE);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "transopts", USER_TR_IFACE);
|
2013-03-24 12:13:13 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Translate Interface", "Translate interface");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "use_translate_new_dataname", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "transopts", USER_TR_NEWDATANAME);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Translate New Names", "Translate new data names (when adding/creating some)");
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_textured_fonts", PROP_BOOLEAN, PROP_NONE);
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "transopts", USER_USETEXTUREFONT);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Textured Fonts", "Use textures for drawing international fonts");
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2009-01-07 21:05:51 +00:00
|
|
|
/* System & OpenGL */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "solid_lights", PROP_COLLECTION, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_collection_sdna(prop, NULL, "light", "");
|
|
|
|
|
RNA_def_property_struct_type(prop, "UserSolidLight");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Solid Lights", "Lights user to display objects in solid draw mode");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_weight_color_range", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_CUSTOM_RANGE);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Use Weight Color Range",
|
|
|
|
|
"Enable color range used for weight visualization in weight painting mode");
|
2009-10-14 16:23:23 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_weight_color_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "weight_color_range", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "coba_weight");
|
|
|
|
|
RNA_def_property_struct_type(prop, "ColorRamp");
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Weight Color Range",
|
|
|
|
|
"Color range used for weight visualization in weight painting mode");
|
2009-10-14 16:23:23 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_weight_color_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "color_picker_type", PROP_ENUM, PROP_NONE);
|
2010-01-09 06:44:54 +00:00
|
|
|
RNA_def_property_enum_items(prop, color_picker_types);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "color_picker_type");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Color Picker Type", "Different styles of displaying the color picker widget");
|
2012-11-09 10:33:42 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2010-01-09 06:44:54 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_preview_images", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_ALLWINCODECS);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Enable All Codecs",
|
|
|
|
|
"Allow user to choose any codec (Windows only, might generate instability)");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_scripts_auto_execute", PROP_BOOLEAN, PROP_NONE);
|
2010-02-27 12:34:49 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", USER_SCRIPT_AUTOEXEC_DISABLE);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Auto Run Python Scripts",
|
|
|
|
|
"Allow any .blend file to run scripts automatically "
|
|
|
|
|
"(unsafe with blend files from an untrusted source)");
|
2010-02-27 12:34:49 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_script_autoexec_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_tabs_as_spaces", PROP_BOOLEAN, PROP_NONE);
|
2010-03-06 22:12:42 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", USER_TXT_TABSTOSPACES_DISABLE);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Tabs as Spaces",
|
2011-09-29 14:41:11 +00:00
|
|
|
"Automatically convert all new tabs into spaces for new and loaded text files");
|
2010-03-06 21:45:46 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "prefetch_frames", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "prefetchframes");
|
2013-03-24 12:13:13 +00:00
|
|
|
RNA_def_property_range(prop, 0, INT_MAX);
|
2013-04-08 18:55:08 +00:00
|
|
|
RNA_def_property_ui_range(prop, 0, 500, 1, -1);
|
2012-05-13 09:26:01 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Prefetch Frames", "Number of frames to render ahead during playback (sequencer only)");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "memory_cache_limit", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "memcachelimit");
|
2012-05-23 17:26:49 +00:00
|
|
|
RNA_def_property_range(prop, 0, (sizeof(void *) == 8) ? 1024 * 32 : 1024); /* 32 bit 2 GB, 64 bit 32 GB */
|
2012-05-13 09:26:01 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Memory Cache Limit", "Memory cache limit (in megabytes)");
|
2010-07-22 14:02:05 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_Userdef_memcache_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "frame_server_port", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "frameserverport");
|
|
|
|
|
RNA_def_property_range(prop, 0, 32727);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Frame Server Port", "Frameserver Port for Frameserver Rendering");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "gl_clip_alpha", PROP_FLOAT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_float_sdna(prop, NULL, "glalphaclip");
|
|
|
|
|
RNA_def_property_range(prop, 0.0f, 1.0f);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Clip Alpha", "Clip alpha below this threshold in the 3D textured view");
|
2010-02-11 15:45:19 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_mipmaps", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "gameflags", USER_DISABLE_MIPMAP);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Mipmaps",
|
2012-03-18 09:27:36 +00:00
|
|
|
"Scale textures for the 3D View (looks nicer but uses more memory and slows image "
|
|
|
|
|
"reloading)");
|
2010-02-11 15:45:19 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_mipmap_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_16bit_textures", PROP_BOOLEAN, PROP_NONE);
|
2012-01-17 16:31:13 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "use_16bit_textures", 1);
|
2012-01-17 18:01:16 +00:00
|
|
|
RNA_def_property_ui_text(prop, "16 Bit Float Textures", "Use 16 bit per component texture for float images");
|
2012-01-17 16:31:13 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_gl_use_16bit_textures");
|
|
|
|
|
|
2012-12-05 11:46:13 +00:00
|
|
|
prop = RNA_def_property(srna, "use_gpu_mipmap", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "use_gpu_mipmap", 1);
|
|
|
|
|
RNA_def_property_ui_text(prop, "GPU Mipmap Generation", "Generate Image Mipmaps on the GPU");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_gl_gpu_mipmaps");
|
|
|
|
|
|
2013-04-12 10:52:47 +00:00
|
|
|
prop = RNA_def_property(srna, "image_draw_method", PROP_ENUM, PROP_NONE);
|
|
|
|
|
RNA_def_property_enum_items(prop, image_draw_methods);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "image_draw_method");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Image Draw Method", "Method used for displaying images on the screen");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_vertex_buffer_objects", PROP_BOOLEAN, PROP_NONE);
|
2009-10-03 15:35:01 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "gameflags", USER_DISABLE_VBO);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "VBOs",
|
|
|
|
|
"Use Vertex Buffer Objects (or Vertex Arrays, if unsupported) for viewport rendering");
|
2012-05-12 11:01:29 +00:00
|
|
|
/* this isn't essential but nice to check if VBO draws any differently */
|
2014-11-28 15:15:19 +01:00
|
|
|
RNA_def_property_update(prop, NC_WINDOW, "rna_userdef_vbo_update");
|
2009-10-03 15:35:01 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "anisotropic_filter", PROP_ENUM, PROP_NONE);
|
2011-06-24 03:30:50 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "anisotropic_filter");
|
|
|
|
|
RNA_def_property_enum_items(prop, anisotropic_items);
|
|
|
|
|
RNA_def_property_enum_default(prop, 1);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Anisotropic Filter",
|
2012-03-18 09:27:36 +00:00
|
|
|
"Quality of the anisotropic filtering (values greater than 1.0 enable anisotropic "
|
|
|
|
|
"filtering)");
|
2011-06-24 03:30:50 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_anisotropic_update");
|
2010-01-07 10:32:48 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "gl_texture_limit", PROP_ENUM, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "glreslimit");
|
|
|
|
|
RNA_def_property_enum_items(prop, gl_texture_clamp_items);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "GL Texture Limit", "Limit the texture size to save graphics memory");
|
2011-04-16 10:19:34 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_gl_texture_limit_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "texture_time_out", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "textimeout");
|
|
|
|
|
RNA_def_property_range(prop, 0, 3600);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Texture Time Out",
|
|
|
|
|
"Time since last access of a GL texture in seconds after which it is freed "
|
|
|
|
|
"(set to 0 to keep textures allocated)");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "texture_collection_rate", PROP_INT, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "texcollectrate");
|
|
|
|
|
RNA_def_property_range(prop, 1, 3600);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Texture Collection Rate",
|
|
|
|
|
"Number of seconds between each run of the GL texture garbage collector");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "window_draw_method", PROP_ENUM, PROP_NONE);
|
2.5: WM Compositing
* Triple Buffer is now more complete:
- Proper handling of window resize, duplicate, etc.
- It now uses 3x3 textures (or less) if the power of two sizes
do not match well. That still has a worst case wast of 23.4%,
but better than 300%.
- It can also use the ARB/NV/EXT_texture_rectangle extension
now, which may be supported on hardware that does not support
ARB_texture_non_power_of_two.
- Gesture, menu and brushe redraws now require no redraws at all
from the area regions. So even on a high poly scene just moving
the paint cursor or opening a menu should be fast.
* Testing can be done by setting the "Window Draw Method" in the
User Preferences in the outliner. "Overlap" is still default,
since "Triple Buffer" has not been tested on computers other than
mine, would like to avoid crashing Blender on startup in case
there is a common bug, but it's ready for testing now.
- For reference "Full" draws the full window each time.
- "Triple Buffer" should work for both swap copy and swap exchange
systems, the latter still need the -E command line option for
"Overlap".
- Resizing and going fullscreen still gives flicker here but no
more than "Full" drawing.
* Partial Redraw was added. ED_region_tag_redraw_partial takes a
rect in window coordinates to define a subarea of the region.
On region draw it will then set glScissor to a smaller area, and
ar->drawrct will always be set to either the partial or full
window rect. The latter can then be used for clipping in the 3D
view or clipping interface drawing. Neither is implemented yet.
2009-01-23 03:52:52 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "wmdrawmethod");
|
|
|
|
|
RNA_def_property_enum_items(prop, draw_method_items);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Window Draw Method", "Drawing method used by the window manager");
|
Holiday coding log :)
Nice formatted version (pictures soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Usability
Short list of main changes:
- Transparent region option (over main region), added code to blend in/out such panels.
- Min size window now 640 x 480
- Fixed DPI for ui - lots of cleanup and changes everywhere. Icon image need correct size still, layer-in-use icon needs remake.
- Macbook retina support, use command line --no-native-pixels to disable it
- Timeline Marker label was drawing wrong
- Trackpad and magic mouse: supports zoom (hold ctrl)
- Fix for splash position: removed ghost function and made window size update after creation immediate
- Fast undo buffer save now adds UI as well. Could be checked for regular file save even...
Quit.blend and temp file saving use this now.
- Dixed filename in window on reading quit.blend or temp saves, and they now add a warning in window title: "(Recovered)"
- New Userpref option "Keep Session" - this always saves quit.blend, and loads on start.
This allows keeping UI and data without actual saves, until you actually save.
When you load startup.blend and quit, it recognises the quit.blend as a startup (no file name in header)
- Added 3D view copy/paste buffers (selected objects). Shortcuts ctrl-c, ctrl-v (OSX, cmd-c, cmd-v).
Coded partial file saving for it. Could be used for other purposes. Todo: use OS clipboards.
- User preferences (themes, keymaps, user settings) now can be saved as a separate file.
Old option is called "Save Startup File" the new one "Save User Settings".
To visualise this difference, the 'save startup file' button has been removed from user preferences window. That option is available as CTRL+U and in File menu still.
- OSX: fixed bug that stopped giving mouse events outside window.
This also fixes "Continuous Grab" for OSX. (error since 2009)
2012-12-12 18:58:11 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_dpi_update");
|
2.5: WM Compositing
* Triple Buffer is now more complete:
- Proper handling of window resize, duplicate, etc.
- It now uses 3x3 textures (or less) if the power of two sizes
do not match well. That still has a worst case wast of 23.4%,
but better than 300%.
- It can also use the ARB/NV/EXT_texture_rectangle extension
now, which may be supported on hardware that does not support
ARB_texture_non_power_of_two.
- Gesture, menu and brushe redraws now require no redraws at all
from the area regions. So even on a high poly scene just moving
the paint cursor or opening a menu should be fast.
* Testing can be done by setting the "Window Draw Method" in the
User Preferences in the outliner. "Overlap" is still default,
since "Triple Buffer" has not been tested on computers other than
mine, would like to avoid crashing Blender on startup in case
there is a common bug, but it's ready for testing now.
- For reference "Full" draws the full window each time.
- "Triple Buffer" should work for both swap copy and swap exchange
systems, the latter still need the -E command line option for
"Overlap".
- Resizing and going fullscreen still gives flicker here but no
more than "Full" drawing.
* Partial Redraw was added. ED_region_tag_redraw_partial takes a
rect in window coordinates to define a subarea of the region.
On region draw it will then set glScissor to a smaller area, and
ar->drawrct will always be set to either the partial or full
window rect. The latter can then be used for clipping in the 3D
view or clipping interface drawing. Neither is implemented yet.
2009-01-23 03:52:52 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "audio_mixing_buffer", PROP_ENUM, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "mixbufsize");
|
|
|
|
|
RNA_def_property_enum_items(prop, audio_mixing_samples_items);
|
2011-09-29 14:41:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Audio Mixing Buffer", "Number of samples used by the audio mixing buffer");
|
2009-08-09 21:16:39 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_audio_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "audio_device", PROP_ENUM, PROP_NONE);
|
2009-08-09 21:16:39 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "audiodevice");
|
|
|
|
|
RNA_def_property_enum_items(prop, audio_device_items);
|
2013-03-27 07:19:54 +00:00
|
|
|
RNA_def_property_enum_funcs(prop, NULL, NULL, "rna_userdef_audio_device_itemf");
|
2011-09-29 14:41:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Audio Device", "Audio output device");
|
2009-08-09 21:16:39 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_audio_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "audio_sample_rate", PROP_ENUM, PROP_NONE);
|
2009-08-09 21:16:39 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "audiorate");
|
|
|
|
|
RNA_def_property_enum_items(prop, audio_rate_items);
|
2011-09-29 14:41:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Audio Sample Rate", "Audio sample rate");
|
2009-08-09 21:16:39 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_audio_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "audio_sample_format", PROP_ENUM, PROP_NONE);
|
2009-08-09 21:16:39 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "audioformat");
|
|
|
|
|
RNA_def_property_enum_items(prop, audio_format_items);
|
2011-09-29 14:41:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Audio Sample Format", "Audio sample format");
|
2009-08-09 21:16:39 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_audio_update");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "audio_channels", PROP_ENUM, PROP_NONE);
|
2009-08-09 21:16:39 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "audiochannels");
|
|
|
|
|
RNA_def_property_enum_items(prop, audio_channel_items);
|
2011-09-29 14:41:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Audio Channels", "Audio channel count");
|
2009-08-09 21:16:39 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_UserDef_audio_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "screencast_fps", PROP_INT, PROP_NONE);
|
2010-01-21 10:28:19 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "scrcastfps");
|
2014-02-25 19:25:44 +01:00
|
|
|
RNA_def_property_range(prop, 10, 100);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "FPS", "Frame rate for the screencast to be played back");
|
2010-01-21 10:28:19 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "screencast_wait_time", PROP_INT, PROP_NONE);
|
2010-01-21 10:28:19 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "scrcastwait");
|
2014-02-25 19:25:44 +01:00
|
|
|
RNA_def_property_range(prop, 10, 1000);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Wait Timer (ms)",
|
|
|
|
|
"Time in milliseconds between each frame recorded for screencast");
|
2010-01-21 10:28:19 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_text_antialiasing", PROP_BOOLEAN, PROP_NONE);
|
2010-11-26 22:12:46 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "text_render", USER_TEXT_DISABLE_AA);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Text Anti-aliasing", "Draw user interface text anti-aliased");
|
2010-11-26 22:12:46 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_text_update");
|
2014-07-23 15:24:07 +02:00
|
|
|
|
|
|
|
|
func = RNA_def_function(srna, "is_occlusion_query_supported", "rna_Scene_GPU_selection_supported");
|
2014-07-23 20:59:13 +02:00
|
|
|
parm = RNA_def_boolean(func, "is_supported", 0, "Occlusion Query Support",
|
|
|
|
|
"Check if GPU supports Occlusion Queries");
|
2014-07-23 15:24:07 +02:00
|
|
|
RNA_def_function_return(func, parm);
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "select_method", PROP_ENUM, PROP_NONE);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "gpu_select_method");
|
|
|
|
|
RNA_def_property_enum_items(prop, gpu_select_method_items);
|
2014-07-23 20:59:13 +02:00
|
|
|
RNA_def_property_ui_text(prop, "Selection Method",
|
|
|
|
|
"Use OpenGL occlusion queries or selection render mode to accelerate selection");
|
2014-07-23 15:24:07 +02:00
|
|
|
|
2012-11-10 11:55:45 +00:00
|
|
|
/* Full scene anti-aliasing */
|
2012-11-11 10:55:32 +00:00
|
|
|
prop = RNA_def_property(srna, "multi_sample", PROP_ENUM, PROP_NONE);
|
2012-11-10 11:55:45 +00:00
|
|
|
RNA_def_property_enum_bitflag_sdna(prop, NULL, "ogl_multisamples");
|
|
|
|
|
RNA_def_property_enum_items(prop, multi_sample_levels);
|
2014-07-23 20:59:13 +02:00
|
|
|
RNA_def_property_ui_text(prop, "MultiSample",
|
|
|
|
|
"Enable OpenGL multi-sampling, only for systems that support it, requires restart");
|
2012-11-10 11:55:45 +00:00
|
|
|
|
Holiday coding log :)
Nice formatted version (pictures soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Usability
Short list of main changes:
- Transparent region option (over main region), added code to blend in/out such panels.
- Min size window now 640 x 480
- Fixed DPI for ui - lots of cleanup and changes everywhere. Icon image need correct size still, layer-in-use icon needs remake.
- Macbook retina support, use command line --no-native-pixels to disable it
- Timeline Marker label was drawing wrong
- Trackpad and magic mouse: supports zoom (hold ctrl)
- Fix for splash position: removed ghost function and made window size update after creation immediate
- Fast undo buffer save now adds UI as well. Could be checked for regular file save even...
Quit.blend and temp file saving use this now.
- Dixed filename in window on reading quit.blend or temp saves, and they now add a warning in window title: "(Recovered)"
- New Userpref option "Keep Session" - this always saves quit.blend, and loads on start.
This allows keeping UI and data without actual saves, until you actually save.
When you load startup.blend and quit, it recognises the quit.blend as a startup (no file name in header)
- Added 3D view copy/paste buffers (selected objects). Shortcuts ctrl-c, ctrl-v (OSX, cmd-c, cmd-v).
Coded partial file saving for it. Could be used for other purposes. Todo: use OS clipboards.
- User preferences (themes, keymaps, user settings) now can be saved as a separate file.
Old option is called "Save Startup File" the new one "Save User Settings".
To visualise this difference, the 'save startup file' button has been removed from user preferences window. That option is available as CTRL+U and in File menu still.
- OSX: fixed bug that stopped giving mouse events outside window.
This also fixes "Continuous Grab" for OSX. (error since 2009)
2012-12-12 18:58:11 +00:00
|
|
|
prop = RNA_def_property(srna, "use_region_overlap", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag2", USER_REGION_OVERLAP);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Region Overlap",
|
|
|
|
|
"Draw tool/property regions over the main region, when using Triple Buffer");
|
2015-04-06 10:40:12 -03:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_dpi_update");
|
|
|
|
|
|
2012-01-09 16:58:01 +00:00
|
|
|
#ifdef WITH_CYCLES
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "compute_device_type", PROP_ENUM, PROP_NONE);
|
2012-01-09 16:58:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_ENUM_NO_CONTEXT);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "compute_device_type");
|
|
|
|
|
RNA_def_property_enum_items(prop, compute_device_type_items);
|
|
|
|
|
RNA_def_property_enum_funcs(prop, NULL, NULL, "rna_userdef_compute_device_type_itemf");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Compute Device Type", "Device to use for computation (rendering with Cycles)");
|
2012-09-12 10:54:25 +00:00
|
|
|
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_PROPERTIES, NULL);
|
2012-01-09 16:58:01 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "compute_device", PROP_ENUM, PROP_NONE);
|
2012-01-09 16:58:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_ENUM_NO_CONTEXT);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "compute_device_id");
|
|
|
|
|
RNA_def_property_enum_items(prop, compute_device_items);
|
|
|
|
|
RNA_def_property_enum_funcs(prop, "rna_userdef_compute_device_get", NULL, "rna_userdef_compute_device_itemf");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Compute Device", "Device to use for computation");
|
2009-01-07 21:05:51 +00:00
|
|
|
#endif
|
2015-07-20 16:08:06 +02:00
|
|
|
|
|
|
|
|
#ifdef WITH_OPENSUBDIV
|
|
|
|
|
prop = RNA_def_property(srna, "opensubdiv_compute_type", PROP_ENUM, PROP_NONE);
|
|
|
|
|
RNA_def_property_flag(prop, PROP_ENUM_NO_CONTEXT);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "opensubdiv_compute_type");
|
|
|
|
|
RNA_def_property_enum_items(prop, opensubdiv_compute_type_items);
|
|
|
|
|
RNA_def_property_enum_funcs(prop, NULL, NULL, "rna_userdef_opensubdiv_compute_type_itemf");
|
2015-08-11 22:29:16 +02:00
|
|
|
RNA_def_property_ui_text(prop, "OpenSubdiv Compute Type", "Type of computer back-end used with OpenSubdiv");
|
2015-07-20 16:08:06 +02:00
|
|
|
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_PROPERTIES, "rna_userdef_opensubdiv_update");
|
|
|
|
|
#endif
|
2009-01-07 21:05:51 +00:00
|
|
|
}
|
|
|
|
|
|
2009-10-26 11:03:12 +00:00
|
|
|
static void rna_def_userdef_input(BlenderRNA *brna)
|
|
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
StructRNA *srna;
|
2009-10-26 12:30:28 +00:00
|
|
|
|
2009-10-26 11:03:12 +00:00
|
|
|
static EnumPropertyItem select_mouse_items[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{USER_LMOUSESELECT, "LEFT", 0, "Left", "Use left Mouse Button for selection"},
|
|
|
|
|
{0, "RIGHT", 0, "Right", "Use Right Mouse Button for selection"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2014-02-20 10:00:16 +11:00
|
|
|
|
2009-10-26 11:03:12 +00:00
|
|
|
static EnumPropertyItem view_rotation_items[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{0, "TURNTABLE", 0, "Turntable", "Use turntable style rotation in the viewport"},
|
|
|
|
|
{USER_TRACKBALL, "TRACKBALL", 0, "Trackball", "Use trackball style rotation in the viewport"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2012-09-28 12:37:14 +00:00
|
|
|
|
2014-02-20 10:00:16 +11:00
|
|
|
static EnumPropertyItem ndof_view_navigation_items[] = {
|
|
|
|
|
{0, "FREE", 0, "Free", "Use full 6 degrees of freedom by default"},
|
|
|
|
|
{NDOF_MODE_ORBIT, "ORBIT", 0, "Orbit", "Orbit about the view center by default"},
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
|
|
|
|
|
2012-09-28 12:37:14 +00:00
|
|
|
static EnumPropertyItem ndof_view_rotation_items[] = {
|
|
|
|
|
{NDOF_TURNTABLE, "TURNTABLE", 0, "Turntable", "Use turntable style rotation in the viewport"},
|
|
|
|
|
{0, "TRACKBALL", 0, "Trackball", "Use trackball style rotation in the viewport"},
|
|
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2014-02-20 10:00:16 +11:00
|
|
|
|
2009-10-26 11:03:12 +00:00
|
|
|
static EnumPropertyItem view_zoom_styles[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{USER_ZOOM_CONT, "CONTINUE", 0, "Continue", "Old style zoom, continues while moving mouse up or down"},
|
2011-09-29 14:41:11 +00:00
|
|
|
{USER_ZOOM_DOLLY, "DOLLY", 0, "Dolly", "Zoom in and out based on vertical mouse movement"},
|
2012-03-18 09:27:36 +00:00
|
|
|
{USER_ZOOM_SCALE, "SCALE", 0, "Scale",
|
|
|
|
|
"Zoom in and out like scaling the view, mouse movements relative to center"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-11-28 04:43:15 +00:00
|
|
|
|
|
|
|
|
static EnumPropertyItem view_zoom_axes[] = {
|
2011-09-29 14:41:11 +00:00
|
|
|
{0, "VERTICAL", 0, "Vertical", "Zoom in and out based on vertical mouse movement"},
|
|
|
|
|
{USER_ZOOM_HORIZ, "HORIZONTAL", 0, "Horizontal", "Zoom in and out based on horizontal mouse movement"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-10-26 12:30:28 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "UserPreferencesInput", NULL);
|
2009-10-26 12:30:28 +00:00
|
|
|
RNA_def_struct_sdna(srna, "UserDef");
|
|
|
|
|
RNA_def_struct_nested(brna, srna, "UserPreferences");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "Input", "Settings for input devices");
|
2009-10-26 11:03:12 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "select_mouse", PROP_ENUM, PROP_NONE);
|
2009-10-26 11:03:12 +00:00
|
|
|
RNA_def_property_enum_bitflag_sdna(prop, NULL, "flag");
|
|
|
|
|
RNA_def_property_enum_items(prop, select_mouse_items);
|
2010-04-01 02:28:08 +00:00
|
|
|
RNA_def_property_enum_funcs(prop, NULL, "rna_userdef_select_mouse_set", NULL);
|
2011-09-29 14:41:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Select Mouse", "Mouse button used for selection");
|
2009-10-26 11:03:12 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "view_zoom_method", PROP_ENUM, PROP_NONE);
|
2009-10-26 11:03:12 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "viewzoom");
|
|
|
|
|
RNA_def_property_enum_items(prop, view_zoom_styles);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Zoom Style", "Which style to use for viewport scaling");
|
2009-10-26 11:03:12 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "view_zoom_axis", PROP_ENUM, PROP_NONE);
|
2009-11-28 04:43:15 +00:00
|
|
|
RNA_def_property_enum_bitflag_sdna(prop, NULL, "uiflag");
|
|
|
|
|
RNA_def_property_enum_items(prop, view_zoom_axes);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Zoom Axis", "Axis of mouse movement to zoom in or out on");
|
2009-11-28 04:43:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "invert_mouse_zoom", PROP_BOOLEAN, PROP_NONE);
|
2009-11-28 04:43:15 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_ZOOM_INVERT);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Invert Zoom Direction", "Invert the axis of mouse movement for zooming");
|
2009-11-28 04:43:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "view_rotate_method", PROP_ENUM, PROP_NONE);
|
2009-10-26 11:03:12 +00:00
|
|
|
RNA_def_property_enum_bitflag_sdna(prop, NULL, "flag");
|
|
|
|
|
RNA_def_property_enum_items(prop, view_rotation_items);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "View Rotation", "Rotation style in the viewport");
|
2009-10-26 11:03:12 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_mouse_continuous", PROP_BOOLEAN, PROP_NONE);
|
2009-10-26 11:03:12 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_CONTINUOUS_MOUSE);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Continuous Grab",
|
2012-03-18 09:27:36 +00:00
|
|
|
"Allow moving the mouse outside the view on some manipulations "
|
|
|
|
|
"(transform, ui control drag)");
|
2013-12-03 03:14:09 -02:00
|
|
|
|
|
|
|
|
/* View Navigation */
|
|
|
|
|
prop = RNA_def_property(srna, "navigation_mode", PROP_ENUM, PROP_NONE);
|
|
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "navigation_mode");
|
|
|
|
|
RNA_def_property_enum_items(prop, navigation_mode_items);
|
|
|
|
|
RNA_def_property_ui_text(prop, "View Navigation", "Which method to use for viewport navigation");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "walk_navigation", PROP_POINTER, PROP_NONE);
|
|
|
|
|
RNA_def_property_pointer_sdna(prop, NULL, "walk_navigation");
|
|
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_struct_type(prop, "WalkNavigation");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Walk Navigation", "Settings for walk navigation mode");
|
|
|
|
|
|
2011-01-03 17:00:49 +00:00
|
|
|
/* tweak tablet & mouse preset */
|
2013-12-13 17:03:44 +01:00
|
|
|
prop = RNA_def_property(srna, "drag_threshold", PROP_INT, PROP_PIXEL);
|
2011-01-03 17:00:49 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "dragthreshold");
|
|
|
|
|
RNA_def_property_range(prop, 3, 40);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Drag Threshold",
|
|
|
|
|
"Amount of pixels you have to drag before dragging UI items happens");
|
2009-10-26 11:03:12 +00:00
|
|
|
|
2013-12-13 17:03:44 +01:00
|
|
|
prop = RNA_def_property(srna, "tweak_threshold", PROP_INT, PROP_PIXEL);
|
2011-12-07 09:55:37 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "tweak_threshold");
|
|
|
|
|
RNA_def_property_range(prop, 3, 1024);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Tweak Threshold",
|
|
|
|
|
"Number of pixels you have to drag before tweak event is triggered");
|
2011-12-07 09:55:37 +00:00
|
|
|
|
2011-09-25 12:31:21 +00:00
|
|
|
/* 3D mouse settings */
|
2011-08-06 23:13:36 +00:00
|
|
|
/* global options */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "ndof_sensitivity", PROP_FLOAT, PROP_NONE);
|
2014-04-29 16:26:42 +02:00
|
|
|
RNA_def_property_range(prop, 0.01f, 40.0f);
|
2012-08-19 13:52:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Sensitivity", "Overall sensitivity of the 3D Mouse for panning");
|
|
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "ndof_orbit_sensitivity", PROP_FLOAT, PROP_NONE);
|
2014-04-29 16:26:42 +02:00
|
|
|
RNA_def_property_range(prop, 0.01f, 40.0f);
|
2012-08-19 13:52:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Orbit Sensitivity", "Overall sensitivity of the 3D Mouse for orbiting");
|
2011-07-14 03:27:33 +00:00
|
|
|
|
2015-07-01 13:45:19 +10:00
|
|
|
prop = RNA_def_property(srna, "ndof_deadzone", PROP_FLOAT, PROP_FACTOR);
|
|
|
|
|
RNA_def_property_range(prop, 0.0f, 1.0f);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Deadzone", "Deadzone of the 3D Mouse");
|
|
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_ndof_deadzone_update");
|
|
|
|
|
|
2014-02-15 09:38:33 +11:00
|
|
|
prop = RNA_def_property(srna, "ndof_pan_yz_swap_axis", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_PAN_YZ_SWAP_AXIS);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Y/Z Swap Axis",
|
|
|
|
|
"Pan using up/down on the device (otherwise forward/backward)");
|
2011-08-06 23:13:36 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "ndof_zoom_invert", PROP_BOOLEAN, PROP_NONE);
|
2011-08-06 23:13:36 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_ZOOM_INVERT);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Invert Zoom", "Zoom using opposite direction");
|
2011-08-06 23:13:36 +00:00
|
|
|
|
|
|
|
|
/* 3D view */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "ndof_show_guide", PROP_BOOLEAN, PROP_NONE);
|
2011-07-14 03:27:33 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_SHOW_GUIDE);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Show Navigation Guide", "Display the center and axis during rotation");
|
2011-07-21 21:40:04 +00:00
|
|
|
/* TODO: update description when fly-mode visuals are in place ("projected position in fly mode")*/
|
2012-11-10 11:55:45 +00:00
|
|
|
|
2012-08-19 13:52:36 +00:00
|
|
|
/* 3D view */
|
2014-02-20 10:00:16 +11:00
|
|
|
prop = RNA_def_property(srna, "ndof_view_navigate_method", PROP_ENUM, PROP_NONE);
|
|
|
|
|
RNA_def_property_enum_bitflag_sdna(prop, NULL, "ndof_flag");
|
|
|
|
|
RNA_def_property_enum_items(prop, ndof_view_navigation_items);
|
|
|
|
|
RNA_def_property_ui_text(prop, "NDOF View Navigate", "Navigation style in the viewport");
|
|
|
|
|
|
2012-09-28 12:37:14 +00:00
|
|
|
prop = RNA_def_property(srna, "ndof_view_rotate_method", PROP_ENUM, PROP_NONE);
|
2012-11-07 16:18:20 +00:00
|
|
|
RNA_def_property_enum_bitflag_sdna(prop, NULL, "ndof_flag");
|
2012-09-28 12:37:14 +00:00
|
|
|
RNA_def_property_enum_items(prop, ndof_view_rotation_items);
|
|
|
|
|
RNA_def_property_ui_text(prop, "NDOF View Rotation", "Rotation style in the viewport");
|
2012-08-19 13:52:36 +00:00
|
|
|
|
2014-02-18 23:51:11 +11:00
|
|
|
/* 3D view: yaw */
|
|
|
|
|
prop = RNA_def_property(srna, "ndof_rotx_invert_axis", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_ROTX_INVERT_AXIS);
|
2014-02-20 13:31:47 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Invert Pitch (X) Axis", "");
|
2011-09-07 10:33:46 +00:00
|
|
|
|
2014-02-18 23:51:11 +11:00
|
|
|
/* 3D view: pitch */
|
|
|
|
|
prop = RNA_def_property(srna, "ndof_roty_invert_axis", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_ROTY_INVERT_AXIS);
|
2014-02-20 13:31:47 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Invert Yaw (Y) Axis", "");
|
2011-09-07 10:33:46 +00:00
|
|
|
|
2014-02-18 23:51:11 +11:00
|
|
|
/* 3D view: roll */
|
|
|
|
|
prop = RNA_def_property(srna, "ndof_rotz_invert_axis", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_ROTZ_INVERT_AXIS);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Invert Roll (Z) Axis", "");
|
2011-09-07 10:33:46 +00:00
|
|
|
|
|
|
|
|
/* 3D view: pan x */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "ndof_panx_invert_axis", PROP_BOOLEAN, PROP_NONE);
|
2011-09-07 10:33:46 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_PANX_INVERT_AXIS);
|
2014-02-18 23:51:11 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Invert X Axis", "");
|
2011-09-07 10:33:46 +00:00
|
|
|
|
|
|
|
|
/* 3D view: pan y */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "ndof_pany_invert_axis", PROP_BOOLEAN, PROP_NONE);
|
2011-09-07 10:33:46 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_PANY_INVERT_AXIS);
|
2014-02-18 23:51:11 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Invert Y Axis", "");
|
2011-09-07 10:33:46 +00:00
|
|
|
|
|
|
|
|
/* 3D view: pan z */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "ndof_panz_invert_axis", PROP_BOOLEAN, PROP_NONE);
|
2011-09-07 10:33:46 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_PANZ_INVERT_AXIS);
|
2014-02-18 23:51:11 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Invert Z Axis", "");
|
2011-09-07 10:33:46 +00:00
|
|
|
|
2011-08-06 23:13:36 +00:00
|
|
|
/* 3D view: fly */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "ndof_lock_horizon", PROP_BOOLEAN, PROP_NONE);
|
2011-07-14 03:27:33 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_LOCK_HORIZON);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Lock Horizon", "Keep horizon level while flying with 3D Mouse");
|
2011-07-14 03:27:33 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "ndof_fly_helicopter", PROP_BOOLEAN, PROP_NONE);
|
2011-07-14 03:27:33 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "ndof_flag", NDOF_FLY_HELICOPTER);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Helicopter Mode", "Device up/down directly controls your Z position");
|
2011-07-14 03:27:33 +00:00
|
|
|
|
2015-04-07 14:08:30 +02:00
|
|
|
|
|
|
|
|
prop = RNA_def_property(srna, "mouse_double_click_time", PROP_INT, PROP_NONE);
|
2009-12-10 17:41:03 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "dbl_click_time");
|
|
|
|
|
RNA_def_property_range(prop, 1, 1000);
|
2011-09-29 14:41:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Double Click Timeout", "Time/delay (in ms) for a double click");
|
2009-12-10 17:41:03 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_mouse_emulate_3_button", PROP_BOOLEAN, PROP_NONE);
|
2009-10-26 11:03:12 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_TWOBUTTONMOUSE);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Emulate 3 Button Mouse",
|
2011-09-29 14:41:11 +00:00
|
|
|
"Emulate Middle Mouse with Alt+Left Mouse (doesn't work with Left Mouse Select option)");
|
2009-11-22 16:33:47 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_emulate_numpad", PROP_BOOLEAN, PROP_NONE);
|
2009-11-22 16:33:47 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_NONUMPAD);
|
2011-09-29 14:41:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Emulate Numpad", "Main 1 to 0 keys act as the numpad ones (useful for laptops)");
|
* Interaction Presets
This adds a new presets menu in the splash screen and the Input section of
User Preferences to choose a preset interaction style, consisting of key configurations
and also other user preferences such as select mouse button, view rotation style, etc.
Currently, just 'Blender' and 'Maya' presets are included, hopefully we can have more
presets contributed (and maintained!) by the community.
It's best to keep these presets minimal to avoid too many key conflicts. In the Maya one
I changed the view manipulation key/mouse combos and also the transform
manipulator keys, not much more than that.
To save an interaction preset, open the user preferences Input section, and press the
[ + ] button next to the presets menu. It will save out a .py file containing any edited key
maps and navigation preferences to the presets/interaction folder in your scripts folder.
---
Part of this commit changes the way that key maps are exported/displayed in
preferences - now partial key configs are allowed. Previously it would export/import the
entire key configuration, regardless of whether individual key maps were edited or not
(which would make them more susceptible to conflicts in unexpected areas).
(note, in blender terminology, a key map is a category of key items, such as
'Object Mode' or 'View 2d'.)
Now, the export and the UI display work in a similar way to how key maps are
processed internally - Locally edited key maps (after pressing the 'Edit' button) are
processed first, falling back to other key maps in the current key config, and then falling
back to the default key config. So it's possible for a key config to only include a few
key maps, and the rest just gets pulled from the default key config. The preferences
UI display works like this too behind the scenes in deciding what to show users,
however using it is just like it was before, the complexity is hidden.
2010-04-14 06:27:50 +00:00
|
|
|
|
2010-07-20 12:37:42 +00:00
|
|
|
/* middle mouse button */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_mouse_mmb_paste", PROP_BOOLEAN, PROP_NONE);
|
2010-07-20 12:37:42 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_MMB_PASTE);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Middle Mouse Paste",
|
|
|
|
|
"In text window, paste with middle mouse button instead of panning");
|
2010-07-20 12:37:42 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "invert_zoom_wheel", PROP_BOOLEAN, PROP_NONE);
|
2010-07-20 12:37:42 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_WHEELZOOMDIR);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Wheel Invert Zoom", "Swap the Mouse Wheel zoom direction");
|
2010-07-20 12:37:42 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "wheel_scroll_lines", PROP_INT, PROP_NONE);
|
2010-07-20 12:37:42 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "wheellinescroll");
|
|
|
|
|
RNA_def_property_range(prop, 0, 32);
|
2011-09-29 14:41:11 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Wheel Scroll Lines", "Number of lines scrolled at a time with the mouse wheel");
|
2010-07-20 12:37:42 +00:00
|
|
|
|
2013-02-08 12:12:57 +00:00
|
|
|
prop = RNA_def_property(srna, "use_trackpad_natural", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag2", USER_TRACKPAD_NATURAL);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Trackpad Natural",
|
|
|
|
|
"If your system uses 'natural' scrolling, this option keeps consistent trackpad usage throughout the UI");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "active_keyconfig", PROP_STRING, PROP_DIRPATH);
|
2010-09-14 16:45:24 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "keyconfigstr");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Key Config", "The name of the active key configuration");
|
2009-10-26 11:03:12 +00:00
|
|
|
}
|
|
|
|
|
|
2009-01-27 04:37:12 +00:00
|
|
|
static void rna_def_userdef_filepaths(BlenderRNA *brna)
|
2009-01-07 21:05:51 +00:00
|
|
|
{
|
|
|
|
|
PropertyRNA *prop;
|
2009-01-27 04:37:12 +00:00
|
|
|
StructRNA *srna;
|
|
|
|
|
|
2009-12-11 08:05:05 +00:00
|
|
|
static EnumPropertyItem anim_player_presets[] = {
|
2012-08-07 13:22:40 +00:00
|
|
|
{0, "INTERNAL", 0, "Internal", "Built-in animation player"},
|
2011-09-15 13:20:18 +00:00
|
|
|
{2, "DJV", 0, "Djv", "Open source frame player: http://djv.sourceforge.net"},
|
|
|
|
|
{3, "FRAMECYCLER", 0, "FrameCycler", "Frame player from IRIDAS"},
|
|
|
|
|
{4, "RV", 0, "rv", "Frame player from Tweak Software"},
|
|
|
|
|
{5, "MPLAYER", 0, "MPlayer", "Media player for video & png/jpeg/sgi image sequences"},
|
|
|
|
|
{50, "CUSTOM", 0, "Custom", "Custom animation player executable path"},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-12-11 08:05:05 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "UserPreferencesFilePaths", NULL);
|
2009-01-27 04:37:12 +00:00
|
|
|
RNA_def_struct_sdna(srna, "UserDef");
|
|
|
|
|
RNA_def_struct_nested(brna, srna, "UserPreferences");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "File Paths", "Default paths for external files");
|
2009-09-17 17:42:08 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_hidden_files_datablocks", PROP_BOOLEAN, PROP_NONE);
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_HIDE_DOT);
|
2015-10-24 02:44:43 +11:00
|
|
|
RNA_def_property_ui_text(prop, "Hide Dot Files/Datablocks", "Hide files/data-blocks that start with a dot (.*)");
|
2009-09-17 17:42:08 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_filter_files", PROP_BOOLEAN, PROP_NONE);
|
2009-09-17 17:42:08 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_FILTERFILEEXTS);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Filter File Extensions",
|
|
|
|
|
"Display only files with extensions in the image select window");
|
2009-09-17 17:42:08 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "hide_recent_locations", PROP_BOOLEAN, PROP_NONE);
|
2010-11-06 18:54:15 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_HIDE_RECENT);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Hide Recent Locations", "Hide recent locations in the file selector");
|
2010-11-06 18:54:15 +00:00
|
|
|
|
2012-10-21 14:47:16 +00:00
|
|
|
prop = RNA_def_property(srna, "hide_system_bookmarks", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_HIDE_SYSTEM_BOOKMARKS);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Hide System Bookmarks", "Hide system bookmarks in the file selector");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "show_thumbnails", PROP_BOOLEAN, PROP_NONE);
|
2010-11-06 18:54:15 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag", USER_SHOW_THUMBNAILS);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Show Thumbnails", "Open in thumbnail view for images and movies");
|
2010-11-06 18:54:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_relative_paths", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_RELPATHS);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Relative Paths", "Default relative path option for the file selector");
|
2010-11-06 18:54:15 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_file_compression", PROP_BOOLEAN, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_FILECOMPRESS);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Compress File", "Enable file compression when saving .blend files");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_load_ui", PROP_BOOLEAN, PROP_NONE);
|
2009-08-21 14:33:53 +00:00
|
|
|
RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", USER_FILENOUI);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Load UI", "Load user interface setup when loading .blend files");
|
2013-06-10 10:55:57 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_load_ui_update");
|
2009-08-21 14:33:53 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "font_directory", PROP_STRING, PROP_DIRPATH);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "fontdir");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Fonts Directory", "The default directory to search for loading fonts");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "texture_directory", PROP_STRING, PROP_DIRPATH);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "textudir");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Textures Directory", "The default directory to search for textures");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "render_output_directory", PROP_STRING, PROP_DIRPATH);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "renderdir");
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Render Output Directory",
|
|
|
|
|
"The default directory for rendering output, for new scenes");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "script_directory", PROP_STRING, PROP_DIRPATH);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "pythondir");
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Python Scripts Directory",
|
|
|
|
|
"Alternate script path, matching the default layout with subdirs: "
|
|
|
|
|
"startup, addons & modules (requires restart)");
|
2011-04-04 05:47:04 +00:00
|
|
|
/* TODO, editing should reset sys.path! */
|
2009-01-07 21:05:51 +00:00
|
|
|
|
UI translation from inside Blender UI: first part.
This commit reshapes a bit runtime button info getter, by adding a new uiButGetStrInfo() which accepts a variable number of uiStringInfo parameters, and tries to fill them with the requested strings, for the given button (label, tip, context, RNA identifier, keymap, etc.). Currently used mostly by existing ui_tooltip_create(), and new UI_OT_edittranslation_init operator.
It also adds a few getters (to get RNA i18n context, and current language iso code).
Finally, it adds to C operators needed for the py ui_translation addon:
*UI_OT_edittranslation_init, which gathers requested data and launch the py operator.
*UI_OT_reloadtranslation, which forces a full reload of the whole UI translation (including rechecking the directory containing mo files).
For the first operator to work, it also adds a new user preferences path: i18n_branches_directory, to point to the /branch part of a bf-translation checkout.
2012-07-09 14:25:35 +00:00
|
|
|
prop = RNA_def_property(srna, "i18n_branches_directory", PROP_STRING, PROP_DIRPATH);
|
|
|
|
|
RNA_def_property_string_sdna(prop, NULL, "i18ndir");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Translation Branches Directory",
|
|
|
|
|
"The path to the '/branches' directory of your local svn-translation copy, "
|
|
|
|
|
"to allow translating from the UI");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "sound_directory", PROP_STRING, PROP_DIRPATH);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "sounddir");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Sounds Directory", "The default directory to search for sounds");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "temporary_directory", PROP_STRING, PROP_DIRPATH);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "tempdir");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Temporary Directory", "The directory for storing temporary save files");
|
2010-03-16 17:23:20 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_temp_update");
|
2010-03-07 09:23:57 +00:00
|
|
|
|
2014-06-28 19:13:54 +02:00
|
|
|
prop = RNA_def_property(srna, "render_cache_directory", PROP_STRING, PROP_DIRPATH);
|
|
|
|
|
RNA_def_property_string_sdna(prop, NULL, "render_cachedir");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Render Cache Path", "Where to cache raw render results");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "image_editor", PROP_STRING, PROP_FILEPATH);
|
2010-03-07 09:23:57 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "image_editor");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Image Editor", "Path to an image editor");
|
2009-12-11 08:05:05 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "animation_player", PROP_STRING, PROP_FILEPATH);
|
2009-12-11 08:05:05 +00:00
|
|
|
RNA_def_property_string_sdna(prop, NULL, "anim_player");
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Animation Player", "Path to a custom animation/frame sequence player");
|
2009-07-24 14:30:40 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "animation_player_preset", PROP_ENUM, PROP_NONE);
|
2009-12-11 08:05:05 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "anim_player_preset");
|
|
|
|
|
RNA_def_property_enum_items(prop, anim_player_presets);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Animation Player Preset", "Preset configs for external animation players");
|
2009-12-11 08:05:05 +00:00
|
|
|
|
2009-07-24 14:30:40 +00:00
|
|
|
/* Autosave */
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "save_version", PROP_INT, PROP_NONE);
|
2009-07-24 14:30:40 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "versions");
|
|
|
|
|
RNA_def_property_range(prop, 0, 32);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Save Versions",
|
|
|
|
|
"The number of old versions to maintain in the current directory, when manually saving");
|
2009-07-24 14:30:40 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_auto_save_temporary_files", PROP_BOOLEAN, PROP_NONE);
|
2009-07-24 14:30:40 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_AUTOSAVE);
|
2011-09-28 14:08:56 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Auto Save Temporary Files",
|
2014-10-10 11:48:48 +02:00
|
|
|
"Automatic saving of temporary files in temp directory, uses process ID (Sculpt or edit mode data won't be saved!')");
|
2009-10-20 13:58:53 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_autosave_update");
|
2009-07-24 14:30:40 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "auto_save_time", PROP_INT, PROP_NONE);
|
2009-07-24 14:30:40 +00:00
|
|
|
RNA_def_property_int_sdna(prop, NULL, "savetime");
|
|
|
|
|
RNA_def_property_range(prop, 1, 60);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Auto Save Time",
|
|
|
|
|
"The time (in minutes) to wait between automatic temporary saves");
|
2009-10-20 13:58:53 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_autosave_update");
|
2009-07-24 14:30:40 +00:00
|
|
|
|
Holiday coding log :)
Nice formatted version (pictures soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Usability
Short list of main changes:
- Transparent region option (over main region), added code to blend in/out such panels.
- Min size window now 640 x 480
- Fixed DPI for ui - lots of cleanup and changes everywhere. Icon image need correct size still, layer-in-use icon needs remake.
- Macbook retina support, use command line --no-native-pixels to disable it
- Timeline Marker label was drawing wrong
- Trackpad and magic mouse: supports zoom (hold ctrl)
- Fix for splash position: removed ghost function and made window size update after creation immediate
- Fast undo buffer save now adds UI as well. Could be checked for regular file save even...
Quit.blend and temp file saving use this now.
- Dixed filename in window on reading quit.blend or temp saves, and they now add a warning in window title: "(Recovered)"
- New Userpref option "Keep Session" - this always saves quit.blend, and loads on start.
This allows keeping UI and data without actual saves, until you actually save.
When you load startup.blend and quit, it recognises the quit.blend as a startup (no file name in header)
- Added 3D view copy/paste buffers (selected objects). Shortcuts ctrl-c, ctrl-v (OSX, cmd-c, cmd-v).
Coded partial file saving for it. Could be used for other purposes. Todo: use OS clipboards.
- User preferences (themes, keymaps, user settings) now can be saved as a separate file.
Old option is called "Save Startup File" the new one "Save User Settings".
To visualise this difference, the 'save startup file' button has been removed from user preferences window. That option is available as CTRL+U and in File menu still.
- OSX: fixed bug that stopped giving mouse events outside window.
This also fixes "Continuous Grab" for OSX. (error since 2009)
2012-12-12 18:58:11 +00:00
|
|
|
prop = RNA_def_property(srna, "use_keep_session", PROP_BOOLEAN, PROP_NONE);
|
|
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "uiflag2", USER_KEEP_SESSION);
|
|
|
|
|
RNA_def_property_ui_text(prop, "Keep Session",
|
|
|
|
|
"Always load session recovery and save it after quitting Blender");
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "recent_files", PROP_INT, PROP_NONE);
|
2009-07-24 14:30:40 +00:00
|
|
|
RNA_def_property_range(prop, 0, 30);
|
2011-09-15 13:20:18 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Recent Files", "Maximum number of recently opened files to remember");
|
2009-07-24 14:30:40 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "use_save_preview_images", PROP_BOOLEAN, PROP_NONE);
|
2009-07-24 14:30:40 +00:00
|
|
|
RNA_def_property_boolean_sdna(prop, NULL, "flag", USER_SAVE_PREVIEWS);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Save Preview Images",
|
|
|
|
|
"Enables automatic saving of preview images in the .blend file");
|
2009-01-02 13:47:33 +00:00
|
|
|
}
|
|
|
|
|
|
2012-09-23 18:50:56 +00:00
|
|
|
static void rna_def_userdef_addon_collection(BlenderRNA *brna, PropertyRNA *cprop)
|
2010-02-14 23:33:18 +00:00
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
FunctionRNA *func;
|
|
|
|
|
PropertyRNA *parm;
|
|
|
|
|
|
2010-02-26 14:28:29 +00:00
|
|
|
RNA_def_property_srna(cprop, "Addons");
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "Addons", NULL);
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2014-11-14 12:17:25 +01:00
|
|
|
RNA_def_struct_ui_text(srna, "User Add-ons", "Collection of add-ons");
|
2010-02-14 23:33:18 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
func = RNA_def_function(srna, "new", "rna_userdef_addon_new");
|
2010-02-14 23:33:18 +00:00
|
|
|
RNA_def_function_flag(func, FUNC_NO_SELF);
|
2014-11-14 12:17:25 +01:00
|
|
|
RNA_def_function_ui_description(func, "Add a new add-on");
|
2010-02-14 23:33:18 +00:00
|
|
|
/* return type */
|
2015-10-24 02:44:43 +11:00
|
|
|
parm = RNA_def_pointer(func, "addon", "Addon", "", "Add-on data");
|
2010-02-14 23:33:18 +00:00
|
|
|
RNA_def_function_return(func, parm);
|
|
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
func = RNA_def_function(srna, "remove", "rna_userdef_addon_remove");
|
2012-11-02 09:41:26 +00:00
|
|
|
RNA_def_function_flag(func, FUNC_NO_SELF | FUNC_USE_REPORTS);
|
2014-11-14 12:17:25 +01:00
|
|
|
RNA_def_function_ui_description(func, "Remove add-on");
|
2012-03-05 23:30:41 +00:00
|
|
|
parm = RNA_def_pointer(func, "addon", "Addon", "", "Addon to remove");
|
2012-11-02 09:41:26 +00:00
|
|
|
RNA_def_property_flag(parm, PROP_REQUIRED | PROP_NEVER_NULL | PROP_RNAPTR);
|
|
|
|
|
RNA_def_property_clear_flag(parm, PROP_THICK_WRAP);
|
2010-02-14 23:33:18 +00:00
|
|
|
}
|
2009-07-24 14:30:40 +00:00
|
|
|
|
2013-06-18 18:11:52 +00:00
|
|
|
static void rna_def_userdef_autoexec_path_collection(BlenderRNA *brna, PropertyRNA *cprop)
|
|
|
|
|
{
|
|
|
|
|
StructRNA *srna;
|
|
|
|
|
FunctionRNA *func;
|
|
|
|
|
PropertyRNA *parm;
|
|
|
|
|
|
|
|
|
|
RNA_def_property_srna(cprop, "PathCompareCollection");
|
|
|
|
|
srna = RNA_def_struct(brna, "PathCompareCollection", NULL);
|
|
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
|
|
|
|
RNA_def_struct_ui_text(srna, "Paths Compare", "Collection of paths");
|
|
|
|
|
|
|
|
|
|
func = RNA_def_function(srna, "new", "rna_userdef_pathcompare_new");
|
|
|
|
|
RNA_def_function_flag(func, FUNC_NO_SELF);
|
2013-11-02 10:48:34 +00:00
|
|
|
RNA_def_function_ui_description(func, "Add a new path");
|
2013-06-18 18:11:52 +00:00
|
|
|
/* return type */
|
|
|
|
|
parm = RNA_def_pointer(func, "pathcmp", "PathCompare", "", "");
|
|
|
|
|
RNA_def_function_return(func, parm);
|
|
|
|
|
|
|
|
|
|
func = RNA_def_function(srna, "remove", "rna_userdef_pathcompare_remove");
|
|
|
|
|
RNA_def_function_flag(func, FUNC_NO_SELF | FUNC_USE_REPORTS);
|
|
|
|
|
RNA_def_function_ui_description(func, "Remove path");
|
|
|
|
|
parm = RNA_def_pointer(func, "pathcmp", "PathCompare", "", "");
|
|
|
|
|
RNA_def_property_flag(parm, PROP_REQUIRED | PROP_NEVER_NULL | PROP_RNAPTR);
|
|
|
|
|
RNA_def_property_clear_flag(parm, PROP_THICK_WRAP);
|
|
|
|
|
}
|
|
|
|
|
|
2009-01-02 13:47:33 +00:00
|
|
|
void RNA_def_userdef(BlenderRNA *brna)
|
|
|
|
|
{
|
2009-01-07 21:05:51 +00:00
|
|
|
StructRNA *srna;
|
|
|
|
|
PropertyRNA *prop;
|
|
|
|
|
|
|
|
|
|
static EnumPropertyItem user_pref_sections[] = {
|
2011-09-15 13:20:18 +00:00
|
|
|
{USER_SECTION_INTERFACE, "INTERFACE", 0, "Interface", ""},
|
|
|
|
|
{USER_SECTION_EDIT, "EDITING", 0, "Editing", ""},
|
|
|
|
|
{USER_SECTION_INPUT, "INPUT", 0, "Input", ""},
|
2014-11-14 12:17:25 +01:00
|
|
|
{USER_SECTION_ADDONS, "ADDONS", 0, "Add-ons", ""},
|
2011-09-15 13:20:18 +00:00
|
|
|
{USER_SECTION_THEME, "THEMES", 0, "Themes", ""},
|
|
|
|
|
{USER_SECTION_FILE, "FILES", 0, "File", ""},
|
|
|
|
|
{USER_SECTION_SYSTEM, "SYSTEM", 0, "System", ""},
|
2012-05-12 11:01:29 +00:00
|
|
|
{0, NULL, 0, NULL, NULL}
|
|
|
|
|
};
|
2009-01-07 21:05:51 +00:00
|
|
|
|
|
|
|
|
rna_def_userdef_dothemes(brna);
|
|
|
|
|
rna_def_userdef_solidlight(brna);
|
2013-12-03 03:14:09 -02:00
|
|
|
rna_def_userdef_walk_navigation(brna);
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
srna = RNA_def_struct(brna, "UserPreferences", NULL);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_struct_sdna(srna, "UserDef");
|
2011-11-08 15:11:27 +00:00
|
|
|
RNA_def_struct_clear_flag(srna, STRUCT_UNDO);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_struct_ui_text(srna, "User Preferences", "Global user preferences");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "active_section", PROP_ENUM, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_enum_sdna(prop, NULL, "userpref");
|
|
|
|
|
RNA_def_property_enum_items(prop, user_pref_sections);
|
2012-03-18 09:27:36 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Active Section",
|
|
|
|
|
"Active section of the user preferences shown in the user interface");
|
Key Configuration
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-10-08 18:40:03 +00:00
|
|
|
RNA_def_property_update(prop, 0, "rna_userdef_update");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "themes", PROP_COLLECTION, PROP_NONE);
|
2009-01-07 21:05:51 +00:00
|
|
|
RNA_def_property_collection_sdna(prop, NULL, "themes", NULL);
|
|
|
|
|
RNA_def_property_struct_type(prop, "Theme");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Themes", "");
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "ui_styles", PROP_COLLECTION, PROP_NONE);
|
2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
shows the last operator, if appropriate.
Nkey properties moved to the other side.
A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;
- Buttons now all have a complete set of colors, based on button classifications
(See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types.
Currently colors are defined for Window, Header, List/Channels and
for Button/Tool views.
The screen manager handles this btw, so a TH_BACK will always pick the
right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
Only Panel font, widget font and widget-label work now. The 'group label'
will be for templates mostly.
Style settings will be expanded with spacing defaults, label conventions,
etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
Same goes for Panel title color.
Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
|
|
|
RNA_def_property_collection_sdna(prop, NULL, "uistyles", NULL);
|
|
|
|
|
RNA_def_property_struct_type(prop, "ThemeStyle");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Styles", "");
|
2009-01-07 21:05:51 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "addons", PROP_COLLECTION, PROP_NONE);
|
2010-02-26 14:28:29 +00:00
|
|
|
RNA_def_property_collection_sdna(prop, NULL, "addons", NULL);
|
|
|
|
|
RNA_def_property_struct_type(prop, "Addon");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Addon", "");
|
|
|
|
|
rna_def_userdef_addon_collection(brna, prop);
|
2010-02-14 23:33:18 +00:00
|
|
|
|
2013-06-18 18:11:52 +00:00
|
|
|
prop = RNA_def_property(srna, "autoexec_paths", PROP_COLLECTION, PROP_NONE);
|
|
|
|
|
RNA_def_property_collection_sdna(prop, NULL, "autoexec_paths", NULL);
|
|
|
|
|
RNA_def_property_struct_type(prop, "PathCompare");
|
|
|
|
|
RNA_def_property_ui_text(prop, "Autoexec Paths", "");
|
|
|
|
|
rna_def_userdef_autoexec_path_collection(brna, prop);
|
2010-02-14 23:33:18 +00:00
|
|
|
|
2009-01-27 04:37:12 +00:00
|
|
|
/* nested structs */
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "view", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-27 04:37:12 +00:00
|
|
|
RNA_def_property_struct_type(prop, "UserPreferencesView");
|
2010-08-03 05:14:59 +00:00
|
|
|
RNA_def_property_pointer_funcs(prop, "rna_UserDef_view_get", NULL, NULL, NULL);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_property_ui_text(prop, "View & Controls", "Preferences related to viewing data");
|
2009-01-27 04:37:12 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "edit", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-27 04:37:12 +00:00
|
|
|
RNA_def_property_struct_type(prop, "UserPreferencesEdit");
|
2010-08-03 05:14:59 +00:00
|
|
|
RNA_def_property_pointer_funcs(prop, "rna_UserDef_edit_get", NULL, NULL, NULL);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Edit Methods", "Settings for interacting with Blender data");
|
2009-01-27 04:37:12 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "inputs", PROP_POINTER, PROP_NONE);
|
2009-10-26 11:03:12 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
|
|
|
|
RNA_def_property_struct_type(prop, "UserPreferencesInput");
|
2010-08-03 05:14:59 +00:00
|
|
|
RNA_def_property_pointer_funcs(prop, "rna_UserDef_input_get", NULL, NULL, NULL);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_property_ui_text(prop, "Inputs", "Settings for input devices");
|
2009-10-26 11:03:12 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "filepaths", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-27 04:37:12 +00:00
|
|
|
RNA_def_property_struct_type(prop, "UserPreferencesFilePaths");
|
2010-08-03 05:14:59 +00:00
|
|
|
RNA_def_property_pointer_funcs(prop, "rna_UserDef_filepaths_get", NULL, NULL, NULL);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_property_ui_text(prop, "File Paths", "Default paths for external files");
|
2009-01-27 04:37:12 +00:00
|
|
|
|
2012-03-05 23:30:41 +00:00
|
|
|
prop = RNA_def_property(srna, "system", PROP_POINTER, PROP_NONE);
|
2009-09-16 18:04:01 +00:00
|
|
|
RNA_def_property_flag(prop, PROP_NEVER_NULL);
|
2009-01-27 04:37:12 +00:00
|
|
|
RNA_def_property_struct_type(prop, "UserPreferencesSystem");
|
2010-08-03 05:14:59 +00:00
|
|
|
RNA_def_property_pointer_funcs(prop, "rna_UserDef_system_get", NULL, NULL, NULL);
|
2010-02-10 21:15:44 +00:00
|
|
|
RNA_def_property_ui_text(prop, "System & OpenGL", "Graphics driver and operating system settings");
|
2009-01-27 04:37:12 +00:00
|
|
|
|
|
|
|
|
rna_def_userdef_view(brna);
|
|
|
|
|
rna_def_userdef_edit(brna);
|
2009-10-26 11:03:12 +00:00
|
|
|
rna_def_userdef_input(brna);
|
2009-01-27 04:37:12 +00:00
|
|
|
rna_def_userdef_filepaths(brna);
|
|
|
|
|
rna_def_userdef_system(brna);
|
2010-02-26 14:28:29 +00:00
|
|
|
rna_def_userdef_addon(brna);
|
2012-12-29 10:24:42 +00:00
|
|
|
rna_def_userdef_addon_pref(brna);
|
2013-06-18 18:11:52 +00:00
|
|
|
rna_def_userdef_pathcompare(brna);
|
2009-01-27 04:37:12 +00:00
|
|
|
|
2009-01-02 13:47:33 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif
|