[Orxonox-commit 5605] r10267 - in code/trunk: cmake/tools contrib src src/libraries/core

muemart at orxonox.net muemart at orxonox.net
Thu Feb 12 18:05:25 CET 2015


Author: muemart
Date: 2015-02-12 18:05:25 +0100 (Thu, 12 Feb 2015)
New Revision: 10267

Added:
   code/trunk/contrib/orxonox.ico
   code/trunk/contrib/winresource.rc
Modified:
   code/trunk/cmake/tools/SourceFileUtilities.cmake
   code/trunk/cmake/tools/TargetUtilities.cmake
   code/trunk/src/CMakeLists.txt
   code/trunk/src/libraries/core/CMakeLists.txt
   code/trunk/src/libraries/core/GraphicsManager.cc
Log:
Add program icon for Windows builds (MSVC only for now)

Modified: code/trunk/cmake/tools/SourceFileUtilities.cmake
===================================================================
--- code/trunk/cmake/tools/SourceFileUtilities.cmake	2015-02-12 13:51:41 UTC (rev 10266)
+++ code/trunk/cmake/tools/SourceFileUtilities.cmake	2015-02-12 17:05:25 UTC (rev 10267)
@@ -80,6 +80,8 @@
       GET_FILENAME_COMPONENT(_relative_path ${_relative_path} PATH)
       STRING(REPLACE "/" "\\\\" _group_path "${_relative_path}")
       SOURCE_GROUP("Source\\${_group_path}" FILES ${_file})
+    ELSEIF(_relative_path MATCHES ".*\\.rc") #Resource files
+      SOURCE_GROUP("Resource Files" FILES ${_file})
     ELSE()
       # File is being generated in the binary directory
       SOURCE_GROUP("Generated" FILES ${_file})

Modified: code/trunk/cmake/tools/TargetUtilities.cmake
===================================================================
--- code/trunk/cmake/tools/TargetUtilities.cmake	2015-02-12 13:51:41 UTC (rev 10266)
+++ code/trunk/cmake/tools/TargetUtilities.cmake	2015-02-12 17:05:25 UTC (rev 10267)
@@ -286,7 +286,7 @@
 
   # Don't compile header files
   FOREACH(_file ${_${_target_name}_files})
-    IF(NOT _file MATCHES "\\.(c|cc|cpp|cxx|mm)$")
+    IF(NOT _file MATCHES "\\.(c|cc|cpp|cxx|mm|rc)$")
       SET_SOURCE_FILES_PROPERTIES(${_file} PROPERTIES HEADER_FILE_ONLY TRUE)
     ENDIF()
   ENDFOREACH(_file)

Added: code/trunk/contrib/orxonox.ico
===================================================================
(Binary files differ)


Property changes on: code/trunk/contrib/orxonox.ico
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: code/trunk/contrib/winresource.rc
===================================================================
--- code/trunk/contrib/winresource.rc	                        (rev 0)
+++ code/trunk/contrib/winresource.rc	2015-02-12 17:05:25 UTC (rev 10267)
@@ -0,0 +1 @@
+101 ICON orxonox.ico
\ No newline at end of file


Property changes on: code/trunk/contrib/winresource.rc
___________________________________________________________________
Added: svn:eol-style
   + native

Modified: code/trunk/src/CMakeLists.txt
===================================================================
--- code/trunk/src/CMakeLists.txt	2015-02-12 13:51:41 UTC (rev 10266)
+++ code/trunk/src/CMakeLists.txt	2015-02-12 17:05:25 UTC (rev 10267)
@@ -57,6 +57,10 @@
 # Add special source file for OS X
 IF(APPLE)
   LIST(APPEND ORXONOX_MAIN_FILES OrxonoxMac.mm)
+# Add the icon for win32 builds
+# TODO: does this work for mingw too?
+ELSEIF(WIN32 AND MSVC)
+  LIST(APPEND ORXONOX_MAIN_FILES ${CMAKE_SOURCE_DIR}/contrib/winresource.rc)
 ENDIF()
 
 ORXONOX_ADD_EXECUTABLE(orxonox-main

Modified: code/trunk/src/libraries/core/CMakeLists.txt
===================================================================
--- code/trunk/src/libraries/core/CMakeLists.txt	2015-02-12 13:51:41 UTC (rev 10266)
+++ code/trunk/src/libraries/core/CMakeLists.txt	2015-02-12 17:05:25 UTC (rev 10267)
@@ -67,6 +67,11 @@
 ADD_SUBDIRECTORY(input)
 ADD_SUBDIRECTORY(object)
 
+#Add the icon (for the renderwindow)
+IF(WIN32 AND MSVC)
+  List(APPEND CORE_SRC_FILES ${CMAKE_SOURCE_DIR}/contrib/winresource.rc)
+ENDIF()
+
 ORXONOX_ADD_LIBRARY(core
   FIND_HEADER_FILES
   TOLUA_FILES

Modified: code/trunk/src/libraries/core/GraphicsManager.cc
===================================================================
--- code/trunk/src/libraries/core/GraphicsManager.cc	2015-02-12 13:51:41 UTC (rev 10266)
+++ code/trunk/src/libraries/core/GraphicsManager.cc	2015-02-12 17:05:25 UTC (rev 10267)
@@ -316,6 +316,15 @@
 
         Ogre::TextureManager::getSingleton().setDefaultNumMipmaps(Ogre::MIP_UNLIMITED);
 
+        //Add program icon
+#if defined(ORXONOX_PLATFORM_WINDOWS) && defined(_MSC_VER)
+        HWND hwnd;
+        this->renderWindow_->getCustomAttribute("WINDOW", (void*)&hwnd);
+        LONG iconID = (LONG)LoadIcon(GetModuleHandle(0), MAKEINTRESOURCE(101));
+        SetClassLong(hwnd, GCL_HICON, iconID);
+#endif
+
+
         // add console commands
         ModifyConsoleCommand(__CC_printScreen_name).setFunction(&GraphicsManager::printScreen, this);
         ModifyConsoleCommand(__CC_GraphicsManager_group, __CC_setScreenResolution_name).setFunction(&GraphicsManager::setScreenResolution, this);




More information about the Orxonox-commit mailing list