[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