diff options
| author | callum <none@none> | 2009-11-18 21:15:44 -0800 | 
|---|---|---|
| committer | callum <none@none> | 2009-11-18 21:15:44 -0800 | 
| commit | 4419e367bcbe8c1b248e88eab8096f0b8ac4707c (patch) | |
| tree | 9539d6f09d1114c437086ae4977ffee260096cee /indra | |
| parent | 778005a350308d51f114ece74b4e7f3e7af3d37e (diff) | |
Add support for removing the Windows specific drag/drop code
from the codebase via a new CMake file (DragDrop.cmake).
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/cmake/DragDrop.cmake | 25 | ||||
| -rw-r--r-- | indra/llwindow/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | indra/llwindow/lldragdropwin32.cpp | 7 | ||||
| -rw-r--r-- | indra/llwindow/lldragdropwin32.h | 29 | ||||
| -rw-r--r-- | indra/newview/CMakeLists.txt | 1 | 
5 files changed, 59 insertions, 4 deletions
diff --git a/indra/cmake/DragDrop.cmake b/indra/cmake/DragDrop.cmake new file mode 100644 index 0000000000..a2d7df1312 --- /dev/null +++ b/indra/cmake/DragDrop.cmake @@ -0,0 +1,25 @@ +# -*- cmake -*-
 +
 +if (VIEWER)
 +
 +  OPTION (OS_DRAG_DROP
 +  "Build the viewer with OS level drag and drop turned on or off"
 +  OFF)
 +
 +  if (OS_DRAG_DROP)
 +
 +    if (WINDOWS)
 +      add_definitions(-DLL_OS_DRAGDROP_ENABLED=1)
 +    endif (WINDOWS)
 +
 +    if (DARWIN)
 +      add_definitions(-DLL_OS_DRAGDROP_ENABLED=0)
 +    endif (DARWIN)
 +
 +    if (LINUX)
 +      add_definitions(-DLL_OS_DRAGDROP_ENABLED=0)
 +    endif (LINUX)
 +
 +  endif (OS_DRAG_DROP)
 +
 +endif (VIEWER)
 diff --git a/indra/llwindow/CMakeLists.txt b/indra/llwindow/CMakeLists.txt index b4a3f74451..77c6fa57b6 100644 --- a/indra/llwindow/CMakeLists.txt +++ b/indra/llwindow/CMakeLists.txt @@ -12,6 +12,7 @@ project(llwindow)  include(00-Common)  include(DirectX) +include(DragDrop)  include(LLCommon)  include(LLImage)  include(LLMath) diff --git a/indra/llwindow/lldragdropwin32.cpp b/indra/llwindow/lldragdropwin32.cpp index aac68e71af..471c88675d 100644 --- a/indra/llwindow/lldragdropwin32.cpp +++ b/indra/llwindow/lldragdropwin32.cpp @@ -32,6 +32,8 @@  #if LL_WINDOWS
 +#if LL_OS_DRAGDROP_ENABLED
 +
  #include "linden_common.h"
  #include "llwindowwin32.h"
 @@ -272,4 +274,7 @@ void LLDragDropWin32::reset()  	OleUninitialize();
  }
 -#endif
 +#endif // LL_OS_DRAGDROP_ENABLED
 +
 +#endif // LL_WINDOWS
 +
 diff --git a/indra/llwindow/lldragdropwin32.h b/indra/llwindow/lldragdropwin32.h index 624f4ad24b..26c8e4aeff 100644 --- a/indra/llwindow/lldragdropwin32.h +++ b/indra/llwindow/lldragdropwin32.h @@ -30,11 +30,13 @@   * $/LicenseInfo$
   */
 +#if LL_WINDOWS
 +
 +#if LL_OS_DRAGDROP_ENABLED
 +
  #ifndef LL_LLDRAGDROP32_H
  #define LL_LLDRAGDROP32_H
 -#if LL_WINDOWS
 -
  #include <windows.h>
  #include <ole2.h>
 @@ -51,7 +53,28 @@ class LLDragDropWin32  		IDropTarget* mDropTarget;
  		HWND mDropWindowHandle;
  };
 +#endif // LL_LLDRAGDROP32_H
 -#endif // LL_WINDOWS
 +#else // LL_OS_DRAGDROP_ENABLED
 +#ifndef LL_LLDRAGDROP32_H
 +#define LL_LLDRAGDROP32_H
 +
 +#include <windows.h>
 +#include <ole2.h>
 +
 +// imposter class that does nothing 
 +class LLDragDropWin32
 +{
 +	public:
 +		LLDragDropWin32() {};
 +		~LLDragDropWin32() {};
 +
 +		bool init( HWND hWnd ) { return false; };
 +		void reset() { };
 +};
  #endif // LL_LLDRAGDROP32_H
 +
 +#endif // LL_OS_DRAGDROP_ENABLED
 +
 +#endif // LL_WINDOWS
 diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index b129bca1f3..352e9a9382 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -7,6 +7,7 @@ include(Boost)  include(BuildVersion)  include(DBusGlib)  include(DirectX) +include(DragDrop)  include(ELFIO)  include(FMOD)  include(OPENAL)  | 
