Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2008-11-21 22:14:38 +0300
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2008-11-21 22:14:38 +0300
commitc6da2a59d88a75d00890de5ae1d79408e7f9f906 (patch)
tree13491555b978c1ec3e6b99caeceaebb7bbbe28ed /source/blender/makesdna/DNA_windowmanager_types.h
parent129585285c47a016cf93fb183117eb86ce544461 (diff)
RNA
* Added RNA for operators. This still uses ID properties internally, but through the RNA API now. The OP_get/set_* API that was used is replaced by the RNA API. Currently RNA properties for operators are defined at runtime since it means operator registration can be done in a single function. * Changed the existing operators to use this system, I haven't defined user interface names yet though. I also think there need to be some conventions on which properties to expose to make these operators usable in macros, for example if mouse coordinates should be stored or not. * When using ID properties through defined RNA properties, it now checks that the ID property actually matches the RNA property and removes/overwrites it otherwise. This ensures that you can safely get/set arrays for example without having to worry that some external thing may have changed the length. * Documentation now has some information on RNA + ID properties. http://wiki.blender.org/index.php/BlenderDev/Blender2.5/RNA
Diffstat (limited to 'source/blender/makesdna/DNA_windowmanager_types.h')
-rw-r--r--source/blender/makesdna/DNA_windowmanager_types.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/source/blender/makesdna/DNA_windowmanager_types.h b/source/blender/makesdna/DNA_windowmanager_types.h
index aa2b0938775..d18329c60d5 100644
--- a/source/blender/makesdna/DNA_windowmanager_types.h
+++ b/source/blender/makesdna/DNA_windowmanager_types.h
@@ -47,6 +47,8 @@ struct wmLocal;
struct bScreen;
struct uiBlock;
struct wmSubWindow;
+struct StructRNA;
+struct PointerRNA;
/* windowmanager is saved, tag WMAN */
typedef struct wmWindowManager {
@@ -132,8 +134,8 @@ typedef struct wmOperatorType {
/* panel for redo and repeat */
void *(*uiBlock)(struct wmOperator *);
- char *customname; /* dna name */
- void *customdata; /* defaults */
+ /* rna for properties */
+ struct StructRNA *rna;
short flag;
@@ -170,6 +172,7 @@ typedef struct wmOperator {
IDProperty *properties;
/* runtime */
+ struct PointerRNA *rna;
ListBase *modallist;
} wmOperator;