[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18173] branches/blender2.5/blender/source : 2.5
Ton Roosendaal
ton at blender.org
Tue Dec 30 14:16:16 CET 2008
Revision: 18173
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18173
Author: ton
Date: 2008-12-30 14:16:14 +0100 (Tue, 30 Dec 2008)
Log Message:
-----------
2.5
Editmesh code cleaned and compiling/linking. A whopping
20k lines back! :)
Not that it does stuff... editmode in/out has to be done,
and loads of operators. Also linking/exporting editmesh
calls has to be reviewed.
Also: added a blender_test_break() mechanism in BKE.
Modified Paths:
--------------
branches/blender2.5/blender/source/Makefile
branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h
branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c
branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h
branches/blender2.5/blender/source/blender/editors/Makefile
branches/blender2.5/blender/source/blender/editors/include/ED_mesh.h
branches/blender2.5/blender/source/blender/editors/include/ED_object.h
branches/blender2.5/blender/source/blender/editors/mesh/Makefile
branches/blender2.5/blender/source/blender/editors/mesh/SConscript
branches/blender2.5/blender/source/blender/editors/object/object_edit.c
branches/blender2.5/blender/source/blender/editors/space_view3d/drawmesh.c
branches/blender2.5/blender/source/blender/editors/space_view3d/drawobject.c
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_select.c
branches/blender2.5/blender/source/blender/makesdna/DNA_scene_types.h
branches/blender2.5/blender/source/blender/windowmanager/WM_api.h
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_init_exit.c
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_subwindow.c
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c
branches/blender2.5/blender/source/blender/windowmanager/wm_window.h
Added Paths:
-----------
branches/blender2.5/blender/source/blender/editors/include/ED_multires.h
branches/blender2.5/blender/source/blender/editors/mesh/editface.c
branches/blender2.5/blender/source/blender/editors/mesh/editmesh.c
branches/blender2.5/blender/source/blender/editors/mesh/editmesh.h
branches/blender2.5/blender/source/blender/editors/mesh/editmesh_add.c
branches/blender2.5/blender/source/blender/editors/mesh/editmesh_lib.c
branches/blender2.5/blender/source/blender/editors/mesh/editmesh_loop.c
branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c
branches/blender2.5/blender/source/blender/editors/mesh/editmesh_tools.c
branches/blender2.5/blender/source/blender/editors/mesh/meshtools.c
Modified: branches/blender2.5/blender/source/Makefile
===================================================================
--- branches/blender2.5/blender/source/Makefile 2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/Makefile 2008-12-30 13:16:14 UTC (rev 18173)
@@ -161,7 +161,6 @@
COMLIB += $(NAN_BMFONT)/lib/$(DEBUG_DIR)libbmfont.a
COMLIB += $(NAN_PNG)/lib/libpng.a
COMLIB += $(OCGDIR)/blender/yafray/$(DEBUG_DIR)libyafrayexport.a
-COMLIB += $(OCGDIR)/blender/blenlib/$(DEBUG_DIR)libblenlib.a
ifeq ($(WITH_QUICKTIME), true)
COMLIB += $(OCGDIR)/blender/blenderqt/$(DEBUG_DIR)libblenderqt.a
@@ -252,6 +251,7 @@
PULIB += $(OCGDIR)/blender/ed_view3d/libed_view3d.a
PULIB += $(OCGDIR)/blender/ed_interface/libed_interface.a
PULIB += $(OCGDIR)/blender/ed_object/libed_object.a
+PULIB += $(OCGDIR)/blender/ed_mesh/libed_mesh.a
PULIB += $(OCGDIR)/blender/ed_animation/libed_animation.a
PULIB += $(OCGDIR)/blender/ed_transform/libed_transform.a
PULIB += $(OCGDIR)/blender/ed_util/libed_util.a
@@ -260,6 +260,8 @@
PULIB += $(OCGDIR)/blender/windowmanager/libwindowmanager.a
PULIB += $(OCGDIR)/blender/python/$(DEBUG_DIR)libpython.a
PULIB += $(OCGDIR)/blender/makesrna/$(DEBUG_DIR)librna.a
+# note, no idea but it suddenly doesn't compile :(
+PULIB += $(OCGDIR)/blender/blenlib/$(DEBUG_DIR)libblenlib.a
ifeq ($(NAN_NO_KETSJI),true)
PULIB += $(NAN_MOTO)/lib/libmoto.a
Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h 2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h 2008-12-30 13:16:14 UTC (rev 18173)
@@ -55,6 +55,10 @@
void free_blender(void);
void initglobals(void);
+/* set this callback when a UI is running */
+void set_blender_test_break_cb(void (*func)(void) );
+int blender_test_break(void);
+
void pushdata(void *data, int len);
void popfirst(void *data);
void poplast(void *data);
Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c 2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c 2008-12-30 13:16:14 UTC (rev 18173)
@@ -90,7 +90,6 @@
#include "BKE_utildefines.h" // O_BINARY FALSE
-
Global G;
UserDef U;
ListBase WMlist= {NULL, NULL};
@@ -475,7 +474,27 @@
return (bfd?1:0);
}
+/* ***************** testing for break ************* */
+static void (*blender_test_break_cb)(void)= NULL;
+
+void set_blender_test_break_cb(void (*func)(void) )
+{
+ blender_test_break_cb= func;
+}
+
+
+int blender_test_break(void)
+{
+ if (!G.background) {
+ if (blender_test_break_cb)
+ blender_test_break_cb();
+ }
+
+ return (G.afbreek==1);
+}
+
+
/* ***************** GLOBAL UNDO *************** */
#define UNDO_DISK 0
Modified: branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h 2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h 2008-12-30 13:16:14 UTC (rev 18173)
@@ -172,6 +172,9 @@
* never access this directly, use EM_set_actFace and EM_get_actFace */
EditFace *act_face;
+ /* copy from scene */
+ int selectmode;
+
struct DerivedMesh *derivedCage, *derivedFinal;
/* the custom data layer mask that was last used to calculate
* derivedCage and derivedFinal
Modified: branches/blender2.5/blender/source/blender/editors/Makefile
===================================================================
--- branches/blender2.5/blender/source/blender/editors/Makefile 2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/editors/Makefile 2008-12-30 13:16:14 UTC (rev 18173)
@@ -29,6 +29,6 @@
# Bounces make to subdirectories.
SOURCEDIR = source/blender/editors
-DIRS = animation object datafiles transform screen space_outliner space_time space_view3d interface util space_api space_ipo space_image space_node space_buttons space_info space_file space_sound space_action space_nla space_script space_text space_sequencer
+DIRS = mesh animation object datafiles transform screen space_outliner space_time space_view3d interface util space_api space_ipo space_image space_node space_buttons space_info space_file space_sound space_action space_nla space_script space_text space_sequencer
include nan_subdirs.mk
Modified: branches/blender2.5/blender/source/blender/editors/include/ED_mesh.h
===================================================================
--- branches/blender2.5/blender/source/blender/editors/include/ED_mesh.h 2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/editors/include/ED_mesh.h 2008-12-30 13:16:14 UTC (rev 18173)
@@ -28,6 +28,60 @@
#ifndef ED_MESH_H
#define ED_MESH_H
+struct View3D;
+// edge and face flag both
+#define EM_FGON 2
+// face flag
+#define EM_FGON_DRAW 1
+
+/* editbutflag */
+#define B_CLOCKWISE 1
+#define B_KEEPORIG 2
+#define B_BEAUTY 4
+#define B_SMOOTH 8
+#define B_BEAUTY_SHORT 16
+#define B_AUTOFGON 32
+#define B_KNIFE 0x80
+#define B_PERCENTSUBD 0x40
+#define B_MESH_X_MIRROR 0x100
+#define B_JOINTRIA_UV 0x200
+#define B_JOINTRIA_VCOL 0X400
+#define B_JOINTRIA_SHARP 0X800
+#define B_JOINTRIA_MAT 0X1000
+
+
+/* editmesh.c */
+
+void EM_init_index_arrays(EditMesh *em, int forVert, int forEdge, int forFace);
+void EM_free_index_arrays(void);
+EditVert *EM_get_vert_for_index(int index);
+EditEdge *EM_get_edge_for_index(int index);
+EditFace *EM_get_face_for_index(int index);
+int EM_texFaceCheck(EditMesh *em);
+int EM_vertColorCheck(EditMesh *em);
+
+
+/* editmesh_lib.c */
+
+EditFace *EM_get_actFace(EditMesh *em, int sloppy);
+
+void EM_select_edge(EditEdge *eed, int sel);
+void EM_select_face_fgon(EditMesh *em, EditFace *efa, int val);
+void EM_selectmode_flush(EditMesh *em);
+void EM_deselect_flush(EditMesh *em);
+
+
+
+/* editmesh_mods.c */
+extern unsigned int em_vertoffs, em_solidoffs, em_wireoffs;
+
+int EM_check_backbuf(unsigned int index);
+int EM_mask_init_backbuf_border(struct View3D *v3d, short mcords[][2], short tot, short xmin, short ymin, short xmax, short ymax);
+void EM_free_backbuf(void);
+int EM_init_backbuf_border(struct View3D *v3d, short xmin, short ymin, short xmax, short ymax);
+int EM_init_backbuf_circle(struct View3D *v3d, short xs, short ys, short rads);
+
+
#endif /* ED_MESH_H */
Copied: branches/blender2.5/blender/source/blender/editors/include/ED_multires.h (from rev 18150, trunk/blender/source/blender/include/multires.h)
===================================================================
--- branches/blender2.5/blender/source/blender/editors/include/ED_multires.h (rev 0)
+++ branches/blender2.5/blender/source/blender/editors/include/ED_multires.h 2008-12-30 13:16:14 UTC (rev 18173)
@@ -0,0 +1,59 @@
+/*
+ * $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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * The Original Code is Copyright (C) 2006 by Nicholas Bishop
+ * All rights reserved.
+ *
+ * The Original Code is: all of this file.
+ *
+ * Contributor(s): none yet.
+ *
+ * ***** END GPL LICENSE BLOCK *****
+ */
+
+#ifndef MULTIRES_H
+#define MULTIRES_H
+
+struct CustomData;
+struct EditMesh;
+struct Object;
+struct MDeformVert;
+struct Mesh;
+struct MultiresLevel;
+struct Multires;
+struct uiBlock;
+
+/* For canceling operations that don't work with multires on or on a non-base level */
+int multires_test();
+int multires_level1_test();
+
+void multires_draw_interface(struct uiBlock *block, unsigned short cx, unsigned short cy);
+
+void multires_make(void *ob, void *me);
+void multires_delete(void *ob, void *me);
+void multires_level_to_editmesh(struct Object *ob, struct Mesh *me, const int render);
+void multires_finish_mesh_update(struct Object *ob);
+void multires_subdivide(void *ob, void *me);
+void multires_del_lower(void *ob, void *me);
+void multires_del_higher(void *ob, void *me);
+void multires_set_level_cb(void *ob, void *me);
+void multires_edge_level_update_cb(void *ob, void *me);
+int multires_modifier_warning();
+
+#endif
Modified: branches/blender2.5/blender/source/blender/editors/include/ED_object.h
===================================================================
--- branches/blender2.5/blender/source/blender/editors/include/ED_object.h 2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/editors/include/ED_object.h 2008-12-30 13:16:14 UTC (rev 18173)
@@ -29,6 +29,7 @@
#define ED_OBJECT_H
struct wmWindowManager;
+struct Scene;
struct Object;
struct bContext;
struct Base;
@@ -41,6 +42,9 @@
/* includes notifier */
void ED_base_object_activate(struct bContext *C, struct Base *base);
+void ED_base_object_free_and_unlink(struct Scene *scene, struct Base *base);
+
+
/* cleanup */
int object_data_is_libdata(struct Object *ob);
int object_is_libdata(struct Object *ob);
Modified: branches/blender2.5/blender/source/blender/editors/mesh/Makefile
===================================================================
--- branches/blender2.5/blender/source/blender/editors/mesh/Makefile 2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/editors/mesh/Makefile 2008-12-30 13:16:14 UTC (rev 18173)
@@ -28,17 +28,19 @@
#
# Makes module object directory and bounces make to subdirectories.
-LIBNAME = ed_screen
+LIBNAME = ed_mesh
DIR = $(OCGDIR)/blender/$(LIBNAME)
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list