[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [13810] trunk/blender/source/blender/src/ header_info.c: * Let 'Add' scripts appear in the Add header menu, not just the scripts window
Matt Ebb
matt at mke3.net
Fri Feb 22 02:28:48 CET 2008
Revision: 13810
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=13810
Author: broken
Date: 2008-02-22 02:28:48 +0100 (Fri, 22 Feb 2008)
Log Message:
-----------
* Let 'Add' scripts appear in the Add header menu, not just the scripts window
Modified Paths:
--------------
trunk/blender/source/blender/src/header_info.c
Modified: trunk/blender/source/blender/src/header_info.c
===================================================================
--- trunk/blender/source/blender/src/header_info.c 2008-02-22 00:40:32 UTC (rev 13809)
+++ trunk/blender/source/blender/src/header_info.c 2008-02-22 01:28:48 UTC (rev 13810)
@@ -1453,44 +1453,48 @@
void do_info_addmenu(void *arg, int event)
{
- switch(event) {
- case 0:
- /* Mesh */
- break;
- case 1:
- /* Curve */
- break;
- case 2:
- /* Surface */
- break;
- case 3:
- /* Metaball */
- break;
- case 4:
- /* Text (argument is discarded) */
- add_primitiveFont(event);
- break;
- case 5:
- /* Empty */
- add_object_draw(OB_EMPTY);
- break;
- case 6:
- /* Camera */
- add_object_draw(OB_CAMERA);
- break;
- case 8:
- /* Armature */
- add_primitiveArmature(OB_ARMATURE);
- break;
- case 9:
- /* Lattice */
- add_object_draw(OB_LATTICE);
- break;
- case 10:
- /* group instance not yet */
- break;
- default:
- break;
+ if (event>=20) {
+ BPY_menu_do_python(PYMENU_ADD, event - 20);
+ } else {
+ switch(event) {
+ case 0:
+ /* Mesh */
+ break;
+ case 1:
+ /* Curve */
+ break;
+ case 2:
+ /* Surface */
+ break;
+ case 3:
+ /* Metaball */
+ break;
+ case 4:
+ /* Text (argument is discarded) */
+ add_primitiveFont(event);
+ break;
+ case 5:
+ /* Empty */
+ add_object_draw(OB_EMPTY);
+ break;
+ case 6:
+ /* Camera */
+ add_object_draw(OB_CAMERA);
+ break;
+ case 8:
+ /* Armature */
+ add_primitiveArmature(OB_ARMATURE);
+ break;
+ case 9:
+ /* Lattice */
+ add_object_draw(OB_LATTICE);
+ break;
+ case 10:
+ /* group instance not yet */
+ break;
+ default:
+ break;
+ }
}
allqueue(REDRAWINFO, 0);
}
@@ -1500,6 +1504,8 @@
{
/* static short tog=0; */
uiBlock *block;
+ BPyMenu *pym;
+ int i=0;
short yco= 0;
block= uiNewBlock(&curarea->uiblocks, "addmenu", UI_EMBOSSP, UI_HELV, curarea->headwin);
@@ -1526,6 +1532,15 @@
uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Armature", 0, yco-=20, 120, 19, NULL, 0.0, 0.0, 1, 8, "");
uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Lattice", 0, yco-=20, 120, 19, NULL, 0.0, 0.0, 1, 9, "");
+ pym = BPyMenuTable[PYMENU_ADD];
+ if (pym) {
+ uiDefIconTextBut(block, SEPR, 0, ICON_BLANK1, "", 0, yco-=6, 1620, 6, NULL, 0.0, 0.0, 0, 0, "");
+
+ for (; pym; pym = pym->next, i++) {
+ uiDefIconTextBut(block, BUTM, 1, ICON_PYTHON, pym->name, 0, yco-=20, 120, 19, NULL, 0.0, 0.0, 1, i+20, pym->tooltip?pym->tooltip:pym->filename);
+ }
+ }
+
uiBlockSetDirection(block, UI_DOWN);
uiTextBoundsBlock(block, 80);
More information about the Bf-blender-cvs
mailing list