[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