[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [12992] branches/blender2.5/blender/source /blender/blenkernel: Blenkernel for 2.5 project, changes mainly are because of disabling

Ton Roosendaal ton at blender.org
Mon Dec 24 19:38:04 CET 2007


Revision: 12992
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=12992
Author:   ton
Date:     2007-12-24 19:38:03 +0100 (Mon, 24 Dec 2007)

Log Message:
-----------
Blenkernel for 2.5 project, changes mainly are because of disabling
bad level calls. (which is not finished at all)

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/blenkernel/BKE_bad_level_calls.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_library.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_main.h
    branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/displist.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/effect.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/font.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/idprop.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/image.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/library.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/mball.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/particle.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/sca.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/screen.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/texture.c

Removed Paths:
-------------
    branches/blender2.5/blender/source/blender/blenkernel/bad_level_call_stubs/

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_bad_level_calls.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_bad_level_calls.h	2007-12-24 18:27:28 UTC (rev 12991)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_bad_level_calls.h	2007-12-24 18:38:03 UTC (rev 12992)
@@ -37,57 +37,26 @@
 #ifndef BKE_BAD_LEVEL_CALLS_H
 #define BKE_BAD_LEVEL_CALLS_H
 
-/* blender.c */
-void freeAllRad(void);
-void free_editText(void);
-void free_vertexpaint(void);
+extern ListBase editNurb;
 
-/* readfile.c */
-struct SpaceButs;
-void set_rects_butspace(struct SpaceButs *buts);
-struct SpaceImaSel;
-void check_imasel_copy(struct SpaceImaSel *simasel);
-struct ScrArea;
-struct bScreen;
-void unlink_screen(struct bScreen *sc);
-void setscreen(struct bScreen *sc);
-void force_draw_all(int);
-  /* otherwise the WHILE_SEQ doesn't work */
-struct Sequence;
-struct ListBase;
-void build_seqar(struct ListBase *seqbase, struct Sequence  ***seqar, int *totseq);
+#include "radio.h"
+#include "BIF_editmesh.h"
+#include "BIF_editmesh.h"
+#include "BIF_editfont.h"
+#include "BIF_editarmature.h"
+#include "BIF_toolbox.h"
+#include "BIF_interface.h"
+#include "BIF_screen.h"
 
-/* BPython API */
-struct ID;
-struct Script;
-struct Text;
-struct IpoDriver; /* DNA_curve_types.h */
-struct Object;
-struct bPythonConstraint;
-struct bConstraintOb;
-struct bConstraintTarget;
-void BPY_do_pyscript (struct ID *id, short int event);
-void BPY_clear_script (struct Script *script);
-void BPY_free_compiled_text (struct Text *text);
-/* pydrivers */
-struct Object **BPY_pydriver_get_objects(struct IpoDriver *driver);
-float BPY_pydriver_eval(struct IpoDriver *driver);
-void BPY_pydriver_update(void);
-/* button python evaluation */
-int BPY_button_eval(char *expr, double *value);
-/* pyconstraints */
-void BPY_pyconstraint_eval(struct bPythonConstraint *con, struct bConstraintOb *cob, struct ListBase *targets);
-void BPY_pyconstraint_targets(struct bPythonConstraint *con, struct bConstraintTarget *ct);
+#include "BDR_editcurve.h"
+#include "BDR_vpaint.h"
 
+#include "BSE_sequence.h"
 
-/* writefile.c */
-struct Oops;
-void free_oops(struct Oops *oops);
-void error(char *str, ...);
 
-/* anim.c */
-extern struct ListBase editNurb;
 
+<<<<<<< .mine
+=======
 void mainqenter (unsigned short event, short val);
 void waitcursor(int);
 void allqueue(unsigned short event, short val);
@@ -241,5 +210,6 @@
 void PE_get_colors(char sel[4], char nosel[4]);
 void PE_recalc_world_cos(struct Object *ob, struct ParticleSystem *psys);
 
+>>>>>>> .r12991
 #endif
 

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h	2007-12-24 18:27:28 UTC (rev 12991)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h	2007-12-24 18:38:03 UTC (rev 12992)
@@ -42,16 +42,22 @@
 
 struct ListBase;
 struct MemFile;
+struct bContext;
 
+<<<<<<< .mine
+#define BLENDER_VERSION			250
+#define BLENDER_SUBVERSION		0
+=======
 #define BLENDER_VERSION			245
 #define BLENDER_SUBVERSION		12
+>>>>>>> .r12991
 
-#define BLENDER_MINVERSION		240
+#define BLENDER_MINVERSION		250
 #define BLENDER_MINSUBVERSION	0
 
-int	BKE_read_file(char *dir, void *type_r);
-int BKE_read_file_from_memory(char* filebuf, int filelength, void *type_r);
-int BKE_read_file_from_memfile(struct MemFile *memfile);
+int	BKE_read_file(struct bContext *C, char *dir, void *type_r);
+int BKE_read_file_from_memory(struct bContext *C, char* filebuf, int filelength, void *type_r);
+int BKE_read_file_from_memfile(struct bContext *C, struct MemFile *memfile);
 
 void duplicatelist(struct ListBase *list1, struct ListBase *list2);
 void free_blender(void);
@@ -64,11 +70,11 @@
 void pushpop_test(void);
 
 /* global undo */
-extern void BKE_write_undo(char *name);
-extern void BKE_undo_step(int step);
+extern void BKE_write_undo(struct bContext *C, char *name);
+extern void BKE_undo_step(struct bContext *C, int step);
 extern void BKE_reset_undo(void);
 extern char *BKE_undo_menu_string(void);
-extern void BKE_undo_number(int nr);
+extern void BKE_undo_number(struct bContext *C, int nr);
 extern void BKE_undo_save_quit(void);
 
 #ifdef __cplusplus

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h	2007-12-24 18:27:28 UTC (rev 12991)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h	2007-12-24 18:38:03 UTC (rev 12992)
@@ -40,6 +40,7 @@
 struct Object;
 struct Curve;
 struct objfnt;
+struct TmpFont;
 
 struct chartrans {
 	float xof, yof;
@@ -57,7 +58,9 @@
 void BKE_font_register_builtin(void *mem, int size);
 
 void free_vfont(struct VFont *sc); 
+void free_ttfont(void);
 struct VFont *load_vfont(char *name);
+struct TmpFont *vfont_find_tmpfont(struct VFont *vfont);
 
 struct chartrans *text_to_curve(struct Object *ob, int mode);
 int style_to_sel(int style, int toggle);

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h	2007-12-24 18:27:28 UTC (rev 12991)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h	2007-12-24 18:38:03 UTC (rev 12992)
@@ -58,11 +58,46 @@
 struct Main;
 struct Scene;
 struct bScreen;
+struct ScrArea;
+struct ARegion;
 struct Object;
 struct bSoundListener;
 struct BMF_Font;
 struct EditMesh;
 
+/* former global stuff. context is derived, not storage! */
+typedef struct bContext {
+	
+	/* windowmanager tree context */
+	struct wmWindowManager *wm;
+	struct wmWindow *window;
+	struct bScreen *screen;
+	struct ScrArea *curarea;
+	struct ARegion *region;
+	
+	/* fast spacedata lookups */
+	struct View3D *vd;
+	struct View2D *v2d;
+	struct SpaceIpo *sipo;
+	struct SpaceButs *buts;
+	struct SpaceImage *sima;
+	struct SpaceOops *soops;
+	struct SpaceSound *ssound;
+	struct SpaceAction *saction;
+	struct SpaceNla *snla;
+	
+	/* data context */
+	struct Scene *scene;
+	struct Object *obact;
+	struct Object *obedit;
+	
+	/* edit data context */
+	struct EditMesh *editMesh;
+	struct	ListBase edbo;			/* Armature Editmode bones */
+	
+} bContext;
+
+
 typedef struct Global {
 
 	/* active pointers */
@@ -120,7 +155,7 @@
 	/* Reevan's __NLA variables */
 	struct	ListBase edbo;			/* Armature Editmode bones */
  
-	/* Rob's variables */
+	/* Rob's variables (keep here for WM recode) */
 	int have_quicktime;
 	int ui_international;
 	int charstart;

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_library.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_library.h	2007-12-24 18:27:28 UTC (rev 12991)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_library.h	2007-12-24 18:38:03 UTC (rev 12992)
@@ -40,6 +40,8 @@
 struct ID;
 struct Main;
 struct Library;
+struct wmWindowManager;
+struct bContext;
 
 void *alloc_libblock(struct ListBase *lb, short type, const char *name);
 void *copy_libblock(void *rt);
@@ -73,5 +75,7 @@
 void flag_listbase_ids(ListBase *lb, short flag, short value);
 void flag_all_listbases_ids(short flag, short value);
 
+void set_free_windowmanager_cb(void (*func)(struct bContext *, struct wmWindowManager *) );
+
 #endif
 

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_main.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_main.h	2007-12-24 18:27:28 UTC (rev 12991)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_main.h	2007-12-24 18:38:03 UTC (rev 12992)
@@ -79,6 +79,7 @@
 	ListBase nodetree;
 	ListBase brush;
 	ListBase particle;
+	ListBase wm;
 } Main;
 
 

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c	2007-12-24 18:27:28 UTC (rev 12991)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c	2007-12-24 18:38:03 UTC (rev 12992)
@@ -47,12 +47,16 @@
 
 #include "MEM_guardedalloc.h"
 
+#include "DNA_curve_types.h"
 #include "DNA_listBase.h"
 #include "DNA_sdna_types.h"
 #include "DNA_userdef_types.h"
 #include "DNA_object_types.h"
-#include "DNA_curve_types.h"
+#include "DNA_mesh_types.h"
 #include "DNA_scene_types.h"
+#include "DNA_screen_types.h"
+#include "DNA_sound_types.h"
+#include "DNA_sequence_types.h"
 
 #include "BLI_blenlib.h"
 #include "BLI_dynstr.h"
@@ -60,9 +64,6 @@
 #include "IMB_imbuf_types.h"
 #include "IMB_imbuf.h"
 
-#include "DNA_mesh_types.h"
-#include "DNA_screen_types.h"
-
 #include "BKE_blender.h"
 #include "BKE_curve.h"
 #include "BKE_depsgraph.h"
@@ -89,8 +90,10 @@
 #include "nla.h"
 #include "blendef.h"
 
+
 Global G;
 UserDef U;
+ListBase WMlist= {NULL, NULL};
 
 char versionstr[48]= "";
 
@@ -313,7 +316,10 @@
 	}
 }
 
-static void setup_app_data(BlendFileData *bfd, char *filename) 
+/* context matching */
+/* handle no-ui case */
+
+static void setup_app_data(bContext *C, BlendFileData *bfd, char *filename) 
 {
 	Object *ob;
 	bScreen *curscreen= NULL;
@@ -327,6 +333,8 @@
 	
 	clean_paths(bfd->main);
 	
+	/* XXX here the complex windowmanager matching */
+	
 	/* no load screens? */
 	if(mode) {
 		/* comes from readfile.c */
@@ -335,7 +343,7 @@
 		SWAP(ListBase, G.main->screen, bfd->main->screen);
 		
 		/* we re-use current screen */
-		curscreen= G.curscreen;
+		curscreen= C->screen;
 		/* but use new Scene pointer */
 		curscene= bfd->curscene;
 		if(curscene==NULL) curscene= bfd->main->scene.first;
@@ -346,11 +354,13 @@
 		lib_link_screen_restore(bfd->main, curscene);
 	}
 	
-	clear_global();	/* free Main database */
+	/* free G.main Main database */
+	clear_global();	
 	
 	if(mode!='u') G.save_over = 1;
 	
 	G.main= bfd->main;
+	
 	if (bfd->user) {
 		
 		/* only here free userdef themes... */
@@ -358,7 +368,6 @@
 
 		U= *bfd->user;
 		MEM_freeN(bfd->user);
-		
 	}
 	
 	/* samples is a global list... */
@@ -366,20 +375,20 @@
 	
 	/* case G_FILE_NO_UI or no screens in file */
 	if(mode) {
-		G.curscreen= curscreen;
-		G.scene= curscene;
+		C->screen= curscreen;
+		C->scene= curscene;
 	}
 	else {

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list