Merged changes in the trunk up to revision 31284.
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Thu, 12 Aug 2010 13:41:59 +0000 (13:41 +0000)
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Thu, 12 Aug 2010 13:41:59 +0000 (13:41 +0000)
1  2 
release/scripts/ui/properties_render.py
source/blender/blenkernel/intern/idcode.c
source/blender/blenloader/intern/readfile.c
source/blender/editors/interface/interface_templates.c
source/blender/python/doc/sphinx_doc_gen.py

index 0000000000000000000000000000000000000000,3e8f400967eeb6cfae8b626cde31dffd231cc032..bc5740b1638e222fa188302ac4594bd0ee312f93
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,128 +1,129 @@@
+ /**
+  * $Id$
+  *
+  * ***** 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,
+  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+  *
+  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
+  * All rights reserved.
+  *
+  * The Original Code is: all of this file.
+  *
+  * Contributor(s): none yet.
+  *
+  * ***** END GPL LICENSE BLOCK *****
+  * return info about ID types
+  */
+  
+ #include <stdlib.h>
+ #include <string.h>
+ #include "DNA_ID.h"
+ typedef struct {
+       unsigned short code;
+       char *name, *plural;
+       
+       int flags;
+ #define IDTYPE_FLAGS_ISLINKABLE       (1<<0)
+ } IDType;
+ /* plural need to match rna_main.c's MainCollectionDef */
+ static IDType idtypes[]= {
+       { ID_AC,                "Action",       "actions",              IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_AR,                "Armature", "armatures",        IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_BR,                "Brush",        "brushes",              IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_CA,                "Camera",       "cameras",              IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_CU,                "Curve",        "curves",               IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_GD,                "GPencil",      "gpencil",              IDTYPE_FLAGS_ISLINKABLE},  /* rename gpencil */
+       { ID_GR,                "Group",        "groups",               IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_ID,                "ID",           "ids",                  0}, /* plural is fake */
+       { ID_IM,                "Image",        "images",               IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_IP,                "Ipo",          "ipos",                 IDTYPE_FLAGS_ISLINKABLE},  /* deprecated */
+       { ID_KE,                "Key",          "keys",                 0}, 
+       { ID_LA,                "Lamp",         "lamps",                IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_LI,                "Library",      "libraries",    0}, 
++      { ID_LS,                "FreestyleLineStyle", "linestyles", 0}, 
+       { ID_LT,                "Lattice",      "lattices",             IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_MA,                "Material", "materials",        IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_MB,                "Metaball", "metaballs",        IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_ME,                "Mesh",         "meshes",               IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_NT,                "NodeTree",     "node_groups",  IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_OB,                "Object",       "objects",              IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_PA,                "ParticleSettings",     "particles", 0},
+       { ID_SCE,               "Scene",        "scenes",               IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_SCR,               "Screen",       "screens",              0}, 
+       { ID_SEQ,               "Sequence",     "sequences",    0}, /* not actually ID data */
+       { ID_SO,                "Sound",        "sounds",               IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_TE,                "Texture",      "textures",             IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_TXT,               "Text",         "texts",                IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_VF,                "VFont",        "fonts",                IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_WO,                "World",        "worlds",               IDTYPE_FLAGS_ISLINKABLE}, 
+       { ID_WM,                "WindowManager", "window_managers",     0}, 
+ };
+ static int nidtypes= sizeof(idtypes)/sizeof(idtypes[0]);
+ static IDType *idtype_from_name(const char *str) 
+ {
+       int i= nidtypes;
+       
+       while (i--)
+               if (strcmp(str, idtypes[i].name)==0)
+                       return &idtypes[i];
+       return NULL;
+ }
+ static IDType *idtype_from_code(int code) 
+ {
+       int i= nidtypes;
+       
+       while (i--)
+               if (code==idtypes[i].code)
+                       return &idtypes[i];
+       
+       return NULL;
+ }
+ int BKE_idcode_is_valid(int code) 
+ {
+       return idtype_from_code(code)?1:0;
+ }
+ int BKE_idcode_is_linkable(int code) {
+       IDType *idt= idtype_from_code(code);
+       return idt?(idt->flags&IDTYPE_FLAGS_ISLINKABLE):0;
+ }
+ const char *BKE_idcode_to_name(int code) 
+ {
+       IDType *idt= idtype_from_code(code);
+       
+       return idt?idt->name:NULL;
+ }
+ int BKE_idcode_from_name(const char *name) 
+ {
+       IDType *idt= idtype_from_name(name);
+       
+       return idt?idt->code:0;
+ }
+ const char *BKE_idcode_to_name_plural(int code) 
+ {
+       IDType *idt= idtype_from_code(code);
+       
+       return idt?idt->plural:NULL;
+ }
index a74f95a63c49c89691bbed3396533f4d55553dec,940b5fbcce9e0f131baa70303422df4efc414440..b9a14f59e2cd691575677641700cc48c4e08caa2
@@@ -45,9 -45,9 +45,10 @@@ import rna_inf
  reload(rna_info)
  
  # lame, python wont give some access
+ ClassMethodDescriptorType = type(dict.__dict__['fromkeys'])
  MethodDescriptorType = type(dict.get)
  GetSetDescriptorType = type(int.real)
 +StaticMethodType = type(staticmethod(lambda: None))
  
  EXAMPLE_SET = set()
  EXAMPLE_SET_USED = set()