Revision: 24455
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=24455
Author:   kazanbas
Date:     2009-11-10 17:59:56 +0100 (Tue, 10 Nov 2009)

Log Message:
-----------
Merge from trunk -r 24409:24454.

Modified Paths:
--------------
    branches/physics25/config/darwin-config.py
    branches/physics25/extern/Makefile
    branches/physics25/intern/ghost/GHOST_C-api.h
    branches/physics25/intern/ghost/GHOST_ISystem.h
    branches/physics25/intern/ghost/GHOST_Types.h
    branches/physics25/intern/ghost/intern/GHOST_C-api.cpp
    branches/physics25/intern/ghost/intern/GHOST_System.cpp
    branches/physics25/intern/ghost/intern/GHOST_System.h
    branches/physics25/intern/ghost/intern/GHOST_SystemCocoa.h
    branches/physics25/intern/ghost/intern/GHOST_SystemCocoa.mm
    branches/physics25/intern/ghost/intern/GHOST_WindowCocoa.h
    branches/physics25/intern/ghost/intern/GHOST_WindowCocoa.mm
    branches/physics25/intern/smoke/intern/Makefile
    branches/physics25/release/datafiles/datatoc.py
    branches/physics25/release/scripts/modules/bpy_types.py
    branches/physics25/release/scripts/op/uvcalc_smart_project.py
    branches/physics25/release/scripts/ui/space_view3d.py
    branches/physics25/source/Makefile
    branches/physics25/source/blender/blenkernel/BKE_context.h
    branches/physics25/source/blender/blenkernel/BKE_node.h
    branches/physics25/source/blender/blenkernel/intern/action.c
    branches/physics25/source/blender/blenkernel/intern/armature.c
    branches/physics25/source/blender/blenkernel/intern/context.c
    branches/physics25/source/blender/blenkernel/intern/node.c
    branches/physics25/source/blender/blenkernel/intern/scene.c
    branches/physics25/source/blender/blenlib/intern/util.c
    branches/physics25/source/blender/blenloader/intern/readfile.c
    branches/physics25/source/blender/blenloader/intern/writefile.c
    branches/physics25/source/blender/collada/SConscript
    branches/physics25/source/blender/editors/armature/armature_intern.h
    branches/physics25/source/blender/editors/armature/editarmature.c
    branches/physics25/source/blender/editors/armature/editarmature_retarget.c
    branches/physics25/source/blender/editors/armature/poselib.c
    branches/physics25/source/blender/editors/armature/poseobject.c
    branches/physics25/source/blender/editors/gpencil/drawgpencil.c
    branches/physics25/source/blender/editors/gpencil/gpencil_edit.c
    branches/physics25/source/blender/editors/include/ED_armature.h
    branches/physics25/source/blender/editors/include/ED_gpencil.h
    branches/physics25/source/blender/editors/interface/interface_draw.c
    branches/physics25/source/blender/editors/interface/interface_icons.c
    branches/physics25/source/blender/editors/interface/interface_widgets.c
    branches/physics25/source/blender/editors/mesh/meshtools.c
    branches/physics25/source/blender/editors/physics/particle_edit.c
    branches/physics25/source/blender/editors/physics/physics_intern.h
    branches/physics25/source/blender/editors/physics/physics_ops.c
    branches/physics25/source/blender/editors/screen/screen_context.c
    branches/physics25/source/blender/editors/screen/screen_ops.c
    branches/physics25/source/blender/editors/sculpt_paint/paint_vertex.c
    branches/physics25/source/blender/editors/space_buttons/buttons_context.c
    branches/physics25/source/blender/editors/space_node/drawnode.c
    branches/physics25/source/blender/editors/space_node/node_draw.c
    branches/physics25/source/blender/editors/space_node/node_edit.c
    branches/physics25/source/blender/editors/space_outliner/outliner.c
    branches/physics25/source/blender/editors/space_view3d/drawarmature.c
    branches/physics25/source/blender/editors/space_view3d/space_view3d.c
    branches/physics25/source/blender/editors/space_view3d/view3d_buttons.c
    branches/physics25/source/blender/editors/space_view3d/view3d_draw.c
    branches/physics25/source/blender/editors/space_view3d/view3d_select.c
    branches/physics25/source/blender/editors/transform/transform_manipulator.c
    branches/physics25/source/blender/gpu/intern/gpu_shader_material.glsl
    branches/physics25/source/blender/gpu/intern/gpu_shader_material.glsl.c
    branches/physics25/source/blender/imbuf/intern/Makefile
    branches/physics25/source/blender/makesdna/DNA_armature_types.h
    branches/physics25/source/blender/makesdna/DNA_node_types.h
    branches/physics25/source/blender/makesdna/DNA_scene_types.h
    branches/physics25/source/blender/makesrna/intern/rna_armature.c
    branches/physics25/source/blender/makesrna/intern/rna_fcurve.c
    branches/physics25/source/blender/makesrna/intern/rna_material.c
    branches/physics25/source/blender/makesrna/intern/rna_nodetree.c
    branches/physics25/source/blender/makesrna/intern/rna_nodetree_types.h
    branches/physics25/source/blender/makesrna/intern/rna_scene.c
    branches/physics25/source/blender/makesrna/intern/rna_space.c
    branches/physics25/source/blender/nodes/intern/CMP_nodes/CMP_channelMatte.c
    branches/physics25/source/blender/nodes/intern/SHD_nodes/SHD_curves.c
    branches/physics25/source/blender/python/BPY_extern.h
    branches/physics25/source/blender/python/intern/bpy_rna.c
    branches/physics25/source/blender/python/intern/bpy_util.c
    branches/physics25/source/blender/quicktime/apple/quicktime_export.c
    branches/physics25/source/blender/quicktime/quicktime_export.h
    branches/physics25/source/blender/render/CMakeLists.txt
    branches/physics25/source/blender/render/SConscript
    branches/physics25/source/blender/render/intern/source/pipeline.c
    branches/physics25/source/blender/render/intern/source/texture.c
    branches/physics25/source/creator/creator.c
    branches/physics25/source/gameengine/Converter/BL_ArmatureChannel.cpp
    branches/physics25/source/gameengine/Converter/BL_BlenderDataConversion.cpp
    branches/physics25/source/gameengine/GameLogic/SCA_ExpressionController.cpp
    branches/physics25/source/nan_definitions.mk
    branches/physics25/source/nan_link.mk

Added Paths:
-----------
    branches/physics25/intern/ghost/intern/GHOST_EventDragnDrop.h
    branches/physics25/source/blender/blenlib/BLI_math.h
    branches/physics25/source/blender/blenlib/BLI_math_base.h
    branches/physics25/source/blender/blenlib/BLI_math_color.h
    branches/physics25/source/blender/blenlib/BLI_math_geom.h
    branches/physics25/source/blender/blenlib/BLI_math_matrix.h
    branches/physics25/source/blender/blenlib/BLI_math_rotation.h
    branches/physics25/source/blender/blenlib/BLI_math_vector.h
    branches/physics25/source/blender/blenlib/intern/math_base.c
    branches/physics25/source/blender/blenlib/intern/math_color.c
    branches/physics25/source/blender/blenlib/intern/math_geom.c
    branches/physics25/source/blender/blenlib/intern/math_matrix.c
    branches/physics25/source/blender/blenlib/intern/math_rotation.c
    branches/physics25/source/blender/blenlib/intern/math_vector.c

Modified: branches/physics25/config/darwin-config.py
===================================================================
--- branches/physics25/config/darwin-config.py  2009-11-10 16:44:00 UTC (rev 
24454)
+++ branches/physics25/config/darwin-config.py  2009-11-10 16:59:56 UTC (rev 
24455)
@@ -31,7 +31,7 @@
 elif cmd_res[0]=='10':
        MAC_CUR_VER='10.6'
 
-if MAC_PROC == 'powerpc':
+if MACOSX_ARCHITECTURE == 'ppc':
        LCGDIR = '#../lib/darwin-6.1-powerpc'
 else :
        LCGDIR = '#../lib/darwin-9.x.universal'
@@ -39,7 +39,7 @@
 
 BF_PYTHON_VERSION = '3.1'
 
-if MAC_PROC == 'powerpc' and BF_PYTHON_VERSION == '2.3':
+if MACOSX_ARCHITECTURE == 'ppc' and BF_PYTHON_VERSION == '2.3':
        MAC_MIN_VERS = '10.3'
        MACOSX_SDK='/Developer/SDKs/MacOSX10.3.9.sdk'
        CC = 'gcc'
@@ -247,7 +247,20 @@
 BF_OPENGL_LINKFLAGS = ['-framework', 'OpenGL']
 
 #OpenCollada flags
-WITH_BF_COLLADA = False
+WITH_BF_COLLADA = True
+BF_COLLADA = '#source/blender/collada'
+BF_COLLADA_INC = '${BF_COLLADA}'
+BF_COLLADA_LIB = 'bf_collada'
+BF_OPENCOLLADA = LIBDIR + '/opencollada'
+BF_OPENCOLLADA_INC = '${BF_OPENCOLLADA}/include'
+BF_OPENCOLLADA_LIB = 'OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework 
OpenCOLLADABaseUtils OpenCOLLADAStreamWriter MathMLSolver GeneratedSaxParser 
UTF xml2'
+BF_OPENCOLLADA_LIBPATH = LIBDIR + '/opencollada'
+BF_PCRE = LIBDIR + '/opencollada'
+BF_PCRE_LIB = 'pcre'
+BF_PCRE_LIBPATH = '${BF_PCRE}/lib'
+#BF_EXPAT = '/usr'
+#BF_EXPAT_LIB = 'expat'
+#BF_EXPAT_LIBPATH = '/usr/lib'
 
 #############################################################################
 ###################  various compile settings and flags    ##################

Modified: branches/physics25/extern/Makefile
===================================================================
--- branches/physics25/extern/Makefile  2009-11-10 16:44:00 UTC (rev 24454)
+++ branches/physics25/extern/Makefile  2009-11-10 16:59:56 UTC (rev 24455)
@@ -34,7 +34,7 @@
 
 # Cloth requires it
 ifeq ($(NAN_USE_BULLET), true)
-       DIRS += bullet2
+    DIRS += bullet2
 endif
 
 ifeq ($(WITH_BINRELOC), true)
@@ -42,7 +42,9 @@
 endif
 
 ifeq ($(WITH_OPENJPEG), true)
-    DIRS += libopenjpeg
+    ifndef BF_OPENJPEG
+        DIRS += libopenjpeg
+    endif
 endif
 
 ifeq ($(WITH_LZO), true)

Modified: branches/physics25/intern/ghost/GHOST_C-api.h
===================================================================
--- branches/physics25/intern/ghost/GHOST_C-api.h       2009-11-10 16:44:00 UTC 
(rev 24454)
+++ branches/physics25/intern/ghost/GHOST_C-api.h       2009-11-10 16:59:56 UTC 
(rev 24455)
@@ -406,7 +406,18 @@
                                                                                
   GHOST_TButtonMask mask,
                                                                                
   int* isDown);
 
+
+/***************************************************************************************
+ ** Drag'n'drop operations
+ 
***************************************************************************************/
+
 /**
+ * Tells if the ongoing drag'n'drop object can be accepted upon mouse drop
+ */
+extern void GHOST_setAcceptDragOperation(GHOST_SystemHandle systemhandle, 
GHOST_TInt8 canAccept);
+       
+       
+/**
  * Returns the event type.
  * @param eventhandle The handle to the event
  * @return The event type.

Modified: branches/physics25/intern/ghost/GHOST_ISystem.h
===================================================================
--- branches/physics25/intern/ghost/GHOST_ISystem.h     2009-11-10 16:44:00 UTC 
(rev 24454)
+++ branches/physics25/intern/ghost/GHOST_ISystem.h     2009-11-10 16:59:56 UTC 
(rev 24455)
@@ -351,6 +351,11 @@
         */
        virtual GHOST_TSuccess getButtonState(GHOST_TButtonMask mask, bool& 
isDown) const = 0;
 
+       
+       
/***************************************************************************************
+        ** Access to clipboard.
+        
***************************************************************************************/
+       
        /**
         * Returns the selection buffer
         * @return Returns "unsinged char" from X11 XA_CUT_BUFFER0 buffer
@@ -363,6 +368,22 @@
         */
        virtual void putClipboard(GHOST_TInt8 *buffer, bool selection) const = 
0;
 
+       
+       
/***************************************************************************************
+        ** Drag'n'drop operations
+        
***************************************************************************************/
+       
+       /**
+        * Tells if the ongoing drag'n'drop object can be accepted upon mouse 
drop
+        */
+       virtual void setAcceptDragOperation(bool canAccept) = 0;
+       
+       /**
+        * Returns acceptance of the dropped object
+        * Usually called by the "object dropped" event handling function
+        */
+       virtual bool canAcceptDragOperation() const = 0;
+       
 protected:
        /**
         * Initialize the system.

Modified: branches/physics25/intern/ghost/GHOST_Types.h
===================================================================
--- branches/physics25/intern/ghost/GHOST_Types.h       2009-11-10 16:44:00 UTC 
(rev 24454)
+++ branches/physics25/intern/ghost/GHOST_Types.h       2009-11-10 16:59:56 UTC 
(rev 24455)
@@ -167,6 +167,12 @@
        GHOST_kEventWindowUpdate,
        GHOST_kEventWindowSize,
        GHOST_kEventWindowMove,
+       
+       GHOST_kEventDraggingEntered,
+       GHOST_kEventDraggingUpdated,
+       GHOST_kEventDraggingExited,
+       GHOST_kEventDraggingDropDone,
+       GHOST_kEventDraggingDropOnIcon,
 
        GHOST_kEventTimer,
 
@@ -368,6 +374,30 @@
 } GHOST_TEventWheelData;
 
 
+typedef enum {
+       GHOST_kDragnDropTypeUnknown =0,
+       GHOST_kDragnDropTypeFilenames, /*Array of strings representing file 
names (full path) */
+       GHOST_kDragnDropTypeString, /* Unformatted text UTF-8 string */
+       GHOST_kDragnDropTypeBitmap /*Bitmap image data */
+} GHOST_TDragnDropTypes;
+
+typedef struct {
+       /** The x-coordinate of the cursor position. */
+       GHOST_TInt32 x;
+       /** The y-coordinate of the cursor position. */
+       GHOST_TInt32 y;
+       /** The dropped item type */
+       GHOST_TDragnDropTypes dataType;
+       /** The "dropped content" */
+       GHOST_TEventDataPtr data;
+} GHOST_TEventDragnDropData;
+
+typedef struct {
+       int count;
+       GHOST_TUns8 **strings;
+} GHOST_TStringArray;
+
+
 /* original patch used floats, but the driver return ints and uns. We will 
calibrate in view, no sense on doing conversions twice */
 /* as all USB device controls are likely to use ints, this is also more future 
proof */
 //typedef struct {

Modified: branches/physics25/intern/ghost/intern/GHOST_C-api.cpp
===================================================================
--- branches/physics25/intern/ghost/intern/GHOST_C-api.cpp      2009-11-10 
16:44:00 UTC (rev 24454)
+++ branches/physics25/intern/ghost/intern/GHOST_C-api.cpp      2009-11-10 
16:59:56 UTC (rev 24455)
@@ -404,7 +404,14 @@
 }
 
 
+void GHOST_setAcceptDragOperation(GHOST_SystemHandle systemhandle, GHOST_TInt8 
canAccept)
+{
+       GHOST_ISystem* system = (GHOST_ISystem*) systemhandle;
 
+       system->setAcceptDragOperation(canAccept);
+}
+
+
 GHOST_TEventType GHOST_GetEventType(GHOST_EventHandle eventhandle)
 {
        GHOST_IEvent* event = (GHOST_IEvent*) eventhandle;

Copied: branches/physics25/intern/ghost/intern/GHOST_EventDragnDrop.h (from rev 
24454, trunk/blender/intern/ghost/intern/GHOST_EventDragnDrop.h)
===================================================================
--- branches/physics25/intern/ghost/intern/GHOST_EventDragnDrop.h               
                (rev 0)
+++ branches/physics25/intern/ghost/intern/GHOST_EventDragnDrop.h       
2009-11-10 16:59:56 UTC (rev 24455)
@@ -0,0 +1,91 @@
+/**
+ * $Id: GHOST_EventDragnDrop.h 13161 2008-01-07 19:13:47Z hos $
+ * ***** 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) 2001-2002 by NaN Holding BV.
+ * All rights reserved.
+ *
+ * The Original Code is: all of this file.
+ *
+ * Contributor(s): Damien Plisson 11/2009
+ *
+ * ***** END GPL LICENSE BLOCK *****
+ */
+
+#ifndef _GHOST_EVENT_DRAGNDROP_H_
+#define _GHOST_EVENT_DRAGNDROP_H_
+
+#include "GHOST_Event.h"
+
+/**
+ * Drag & drop event
+ * 
+ * The dragging sequence is performed in four phases:
+ * 
+ * <li> Start sequence (GHOST_kEventDraggingEntered) that tells a drag'n'drop 
operation has started. Already gives the object data type,
+ * and the entering mouse location
+ *
+ * <li> Update mouse position (GHOST_kEventDraggingUpdated) sent upon each 
mouse move until the drag'n'drop operation stops, to give the updated mouse 
position.
+ * Useful to highlight a potential destination, and update the status (through 
GHOST_setAcceptDragOperation) telling if the object can be dropped at
+ * the current cursor position.
+ *
+ * <li> Abort drag'n'drop sequence (GHOST_kEventDraggingExited) sent when the 
user moved the mouse outside the window.
+ *
+ * <li> Send the dropped data (GHOST_kEventDraggingDropDone)
+ *
+ * <li> Outside of the normal sequence, dropped data can be sent 
(GHOST_kEventDraggingDropOnIcon). This can happen when the user drops an object
+ * on the application icon. (Also used in OSX to pass the filename of the 
document the user doubled-clicked in the finder)
+ *
+ * <br><br>Note that the event handler is responsible for freeing the received 
data.
+ * <br>And the mouse positions are given in Blender coordinates (y=0 at bottom)
+ *
+ * <br>Currently supported object types :
+ * <li>UTF-8 string
+ * <li>array of strings representing filenames (GHOST_TStringArray)
+ * <li>bitmap image
+ */
+class GHOST_EventDragnDrop : public GHOST_Event
+{
+public:
+       /**
+        * Constructor.
+        * @param time          The time this event was generated.
+        * @param type          The type of this event.
+        * @param dataType      The type of the drop candidate object
+        * @param window        The window where the event occured
+        * @param x                     The x-coordinate of the location the 
cursor was at at the time of the event.
+        * @param y                     The y-coordinate of the location the 
cursor was at at the time of the event.
+        * @param data          The "content" dropped in the window
+        */
+       GHOST_EventDragnDrop(GHOST_TUns64 time, GHOST_TEventType type, 
GHOST_TDragnDropTypes dataType, GHOST_IWindow* window,

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to