mirror of
https://port.numenaute.org/aleajactaest/khanat-opennel-code.git
synced 2024-11-25 16:46:17 +00:00
Merge branch 'feature/merge-ryzomcore-to-develop+CI' into 'develop'
Feature/merge ryzomcore to develop+ci See merge request !22
This commit is contained in:
commit
7e1800a9fe
234 changed files with 42490 additions and 1959 deletions
|
@ -61,7 +61,7 @@ SET(NL_VERSION_MAJOR 0)
|
|||
SET(NL_VERSION_MINOR 12)
|
||||
SET(NL_VERSION_PATCH 0)
|
||||
SET(YEAR "2004-${CURRENT_YEAR}")
|
||||
SET(AUTHOR "Winchgate and The Ryzom Core Community")
|
||||
SET(AUTHOR "Winch Gate and The Ryzom Core Community")
|
||||
|
||||
SET(RYZOM_VERSION_MAJOR 2)
|
||||
SET(RYZOM_VERSION_MINOR 9)
|
||||
|
|
|
@ -22,13 +22,8 @@ IF(NOT TARGET_CPU)
|
|||
SET(TARGET_CPU "armv7")
|
||||
ENDIF()
|
||||
|
||||
SET(ARMV7_HARD_FLOAT OFF)
|
||||
|
||||
IF(TARGET_CPU STREQUAL "armv7")
|
||||
SET(LIBRARY_ARCHITECTURE "armeabi-v7a")
|
||||
IF(ARMV7_HARD_FLOAT)
|
||||
SET(LIBRARY_ARCHITECTURE "${LIBRARY_ARCHITECTURE}-hard")
|
||||
ENDIF()
|
||||
SET(CMAKE_SYSTEM_PROCESSOR "armv7")
|
||||
SET(TOOLCHAIN_ARCH "arm")
|
||||
SET(GCC_TOOLCHAIN_PREFIX "arm-linux-androideabi")
|
||||
|
@ -123,6 +118,12 @@ MACRO(SEARCH_TOOLCHAIN _COMPILER)
|
|||
ENDFOREACH()
|
||||
ENDIF()
|
||||
|
||||
# try prefixes without version
|
||||
SET(_TOOLCHAIN_WITHOUT_VERSION "${NDK_ROOT}/toolchains/${${_COMPILER}_TOOLCHAIN_PREFIX}")
|
||||
IF(EXISTS ${_TOOLCHAIN_WITHOUT_VERSION})
|
||||
LIST(APPEND ${_COMPILER}_TOOLCHAIN_VERSIONS "default")
|
||||
ENDIF()
|
||||
|
||||
IF(NOT ${_COMPILER}_TOOLCHAIN_VERSIONS)
|
||||
MESSAGE(FATAL_ERROR "No Android ${_COMPILER} toolchain found in default search path ${NDK_ROOT}/toolchains")
|
||||
ENDIF()
|
||||
|
@ -136,7 +137,15 @@ MACRO(SEARCH_TOOLCHAIN _COMPILER)
|
|||
LIST(GET ${_COMPILER}_TOOLCHAIN_VERSIONS 0 ${_COMPILER}_TOOLCHAIN_VERSION)
|
||||
ENDIF()
|
||||
|
||||
SET(${_COMPILER}_TOOLCHAIN_ROOT "${NDK_ROOT}/toolchains/${${_COMPILER}_TOOLCHAIN_PREFIX}-${${_COMPILER}_TOOLCHAIN_VERSION}/prebuilt/${TOOLCHAIN_HOST}")
|
||||
MESSAGE(STATUS "TOOLCHAIN_PREFIX = ${${_COMPILER}_TOOLCHAIN_VERSION}")
|
||||
|
||||
IF("${${_COMPILER}_TOOLCHAIN_VERSION}" STREQUAL "default")
|
||||
MESSAGE(STATUS "default")
|
||||
SET(${_COMPILER}_TOOLCHAIN_ROOT "${NDK_ROOT}/toolchains/${${_COMPILER}_TOOLCHAIN_PREFIX}/prebuilt/${TOOLCHAIN_HOST}")
|
||||
ELSE()
|
||||
MESSAGE(STATUS "not default")
|
||||
SET(${_COMPILER}_TOOLCHAIN_ROOT "${NDK_ROOT}/toolchains/${${_COMPILER}_TOOLCHAIN_PREFIX}-${${_COMPILER}_TOOLCHAIN_VERSION}/prebuilt/${TOOLCHAIN_HOST}")
|
||||
ENDIF()
|
||||
|
||||
IF(NOT EXISTS "${${_COMPILER}_TOOLCHAIN_ROOT}")
|
||||
FILE(GLOB _TOOLCHAIN_PREFIXES "${${_COMPILER}_TOOLCHAIN_ROOT}*")
|
||||
|
@ -192,7 +201,7 @@ SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
|||
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
|
||||
MACRO(SET_TOOLCHAIN_BINARY_LLVM _NAME _BINARY)
|
||||
SET(${_NAME} ${CLANG_TOOLCHAIN_ROOT}/bin/${_BINARY}${TOOLCHAIN_BIN_SUFFIX} CACHE PATH "" FORCE )
|
||||
SET(${_NAME} ${CLANG_TOOLCHAIN_ROOT}/bin/${_BINARY}${TOOLCHAIN_BIN_SUFFIX} CACHE PATH "" FORCE)
|
||||
ENDMACRO()
|
||||
|
||||
MACRO(SET_TOOLCHAIN_BINARY_GCC _NAME _BINARY)
|
||||
|
@ -214,6 +223,14 @@ IF(CLANG)
|
|||
SET_TOOLCHAIN_BINARY_LLVM(CMAKE_ASM_COMPILER llvm-as)
|
||||
SET_TOOLCHAIN_BINARY_LLVM(CMAKE_AR llvm-ar)
|
||||
SET_TOOLCHAIN_BINARY_LLVM(CMAKE_LINKER clang++)
|
||||
|
||||
IF(NOT EXISTS "${CMAKE_ASM_COMPILER}")
|
||||
SET_TOOLCHAIN_BINARY_GCC(CMAKE_ASM_COMPILER as)
|
||||
ENDIF()
|
||||
|
||||
IF(NOT EXISTS "${CMAKE_AR}")
|
||||
SET_TOOLCHAIN_BINARY_GCC(CMAKE_AR ar)
|
||||
ENDIF()
|
||||
ELSE()
|
||||
MESSAGE(STATUS "Using GCC compiler")
|
||||
|
||||
|
|
|
@ -124,7 +124,7 @@ IF(WITH_LUA51)
|
|||
IF(WITH_STLPORT)
|
||||
LIST(APPEND LIBRARY_NAME_RELEASE luabind_stlport_lua51)
|
||||
LIST(APPEND LIBRARY_NAME_DEBUG luabind_stlport_lua51d)
|
||||
ENDIF(WITH_STLPORT)
|
||||
ENDIF()
|
||||
|
||||
LIST(APPEND LIBRARY_NAME_RELEASE luabind_lua51)
|
||||
LIST(APPEND LIBRARY_NAME_DEBUG luabind_lua51d)
|
||||
|
@ -134,7 +134,7 @@ IF(WITH_LUA50)
|
|||
IF(WITH_STLPORT)
|
||||
LIST(APPEND LIBRARY_NAME_RELEASE luabind_stlport_lua50)
|
||||
LIST(APPEND LIBRARY_NAME_DEBUG luabind_stlport_lua50d)
|
||||
ENDIF(WITH_STLPORT)
|
||||
ENDIF()
|
||||
|
||||
LIST(APPEND LIBRARY_NAME_RELEASE luabind_lua50)
|
||||
LIST(APPEND LIBRARY_NAME_DEBUG luabind_lua50d)
|
||||
|
@ -195,7 +195,7 @@ IF(LUABIND_INCLUDE_DIR AND Boost_INCLUDE_DIR)
|
|||
SET(LUABIND_FOUND TRUE)
|
||||
SET(LUABIND_LIBRARIES ${LUABIND_LIBRARY_DEBUG})
|
||||
ENDIF(LUABIND_LIBRARY_RELEASE AND LUABIND_LIBRARY_DEBUG)
|
||||
ENDIF(LUABIND_INCLUDE_DIR AND Boost_INCLUDE_DIR)
|
||||
ENDIF()
|
||||
|
||||
IF(LUABIND_FOUND)
|
||||
SET(LUABIND_INCLUDE_DIR ${LUABIND_INCLUDE_DIR} ${Boost_INCLUDE_DIR})
|
||||
|
@ -203,17 +203,17 @@ IF(LUABIND_FOUND)
|
|||
FIND_FILE(LUABIND_VERSION_FILE luabind/version.hpp PATHS ${LUABIND_INCLUDE_DIR})
|
||||
IF(LUABIND_VERSION_FILE)
|
||||
SET(LUABIND_DEFINITIONS "-DHAVE_LUABIND_VERSION")
|
||||
ENDIF(LUABIND_VERSION_FILE)
|
||||
ENDIF()
|
||||
|
||||
FIND_CORRECT_LUA_VERSION()
|
||||
|
||||
IF(NOT Luabind_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Found Luabind: ${LUABIND_LIBRARIES}")
|
||||
ENDIF(NOT Luabind_FIND_QUIETLY)
|
||||
ELSE(LUABIND_FOUND)
|
||||
ELSE()
|
||||
IF(NOT Luabind_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Warning: Unable to find Luabind!")
|
||||
ENDIF(NOT Luabind_FIND_QUIETLY)
|
||||
ENDIF()
|
||||
ENDIF(LUABIND_FOUND)
|
||||
|
||||
MARK_AS_ADVANCED(LUABIND_LIBRARY_RELEASE LUABIND_LIBRARY_DEBUG Boost_LIB_DIAGNOSTIC_DEFINITIONS)
|
||||
|
|
|
@ -366,19 +366,34 @@ FIND_PATH(WINSDK_LIBRARY_DIR ComCtl32.lib
|
|||
)
|
||||
|
||||
IF(WINSDK_UCRT_DIR)
|
||||
# directory where UCRT headers are found
|
||||
FIND_PATH(WINSDK_UCRT_INCLUDE_DIR corecrt.h
|
||||
HINTS
|
||||
${WINSDK_UCRT_DIR}/Include/10.0.10056.0/ucrt
|
||||
${WINSDK_UCRT_DIR}/Include/10.0.10150.0/ucrt
|
||||
)
|
||||
# determine exact UCRT version
|
||||
SET(WINSDK_UCRT_INCLUDE_ROOT_DIR ${WINSDK_UCRT_DIR}/Include)
|
||||
SET(WINSDK_UCRT_LIB_ROOT_DIR ${WINSDK_UCRT_DIR}/Lib)
|
||||
|
||||
# directory where UCRT libraries are found
|
||||
FIND_PATH(WINSDK_UCRT_LIBRARY_DIR ucrt.lib
|
||||
HINTS
|
||||
${WINSDK_UCRT_DIR}/Lib/10.0.10056.0/ucrt/${WINSDK8_SUFFIX}
|
||||
${WINSDK_UCRT_DIR}/Lib/10.0.10150.0/ucrt/${WINSDK8_SUFFIX}
|
||||
)
|
||||
FILE(GLOB UCRT_SUBDIRS RELATIVE ${WINSDK_UCRT_INCLUDE_ROOT_DIR} ${WINSDK_UCRT_INCLUDE_ROOT_DIR}/*)
|
||||
SET(UCRT_VERSION)
|
||||
|
||||
FOREACH(UCRT_SUBDIR ${UCRT_SUBDIRS})
|
||||
IF(NOT UCRT_VERSION OR UCRT_SUBDIR VERSION_GREATER UCRT_VERSION)
|
||||
SET(UCRT_VERSION ${UCRT_SUBDIR})
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
|
||||
IF(UCRT_VERSION)
|
||||
MESSAGE(STATUS "Using Windows UCRT ${UCRT_VERSION}")
|
||||
|
||||
# directory where UCRT headers are found
|
||||
FIND_PATH(WINSDK_UCRT_INCLUDE_DIR corecrt.h
|
||||
HINTS
|
||||
${WINSDK_UCRT_INCLUDE_ROOT_DIR}/${UCRT_VERSION}/ucrt
|
||||
)
|
||||
|
||||
# directory where UCRT libraries are found
|
||||
FIND_PATH(WINSDK_UCRT_LIBRARY_DIR ucrt.lib
|
||||
HINTS
|
||||
${WINSDK_UCRT_LIB_ROOT_DIR}/${UCRT_VERSION}/ucrt/${WINSDK8_SUFFIX}
|
||||
)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
# signtool is used to sign executables
|
||||
|
|
|
@ -177,26 +177,26 @@ ENDIF()
|
|||
# set the architecture for iOS - using ARCHS_STANDARD_32_BIT sets armv7,armv7s and appears to be XCode's standard.
|
||||
# The other value that works is ARCHS_UNIVERSAL_IPHONE_OS but that sets armv7 only
|
||||
IF(ARCHS)
|
||||
SET(CMAKE_OSX_ARCHITECTURES ${ARCHS} CACHE string "Build architecture for iOS")
|
||||
SET(CMAKE_OSX_ARCHITECTURES ${ARCHS} CACHE STRING "Build architecture for iOS")
|
||||
ENDIF()
|
||||
|
||||
# Set the find root to the iOS developer roots and to user defined paths
|
||||
set (CMAKE_FIND_ROOT_PATH ${CMAKE_IOS_DEVELOPER_ROOT} ${CMAKE_IOS_SDK_ROOT} ${CMAKE_PREFIX_PATH} ${CMAKE_INSTALL_PREFIX} $ENV{EXTERNAL_IOS_PATH} CACHE string "iOS find search path root")
|
||||
SET(CMAKE_FIND_ROOT_PATH ${CMAKE_IOS_DEVELOPER_ROOT} ${CMAKE_IOS_SDK_ROOT} ${CMAKE_PREFIX_PATH} ${CMAKE_INSTALL_PREFIX} ${CMAKE_SOURCE_DIR}/external $ENV{EXTERNAL_IOS_PATH} CACHE STRING "iOS find search path root")
|
||||
|
||||
# default to searching for frameworks first
|
||||
set (CMAKE_FIND_FRAMEWORK FIRST)
|
||||
SET(CMAKE_FIND_FRAMEWORK FIRST)
|
||||
|
||||
# set up the default search directories for frameworks
|
||||
set (CMAKE_SYSTEM_FRAMEWORK_PATH
|
||||
SET(CMAKE_SYSTEM_FRAMEWORK_PATH
|
||||
${CMAKE_IOS_SDK_ROOT}/System/Library/Frameworks
|
||||
${CMAKE_IOS_SDK_ROOT}/System/Library/PrivateFrameworks
|
||||
${CMAKE_IOS_SDK_ROOT}/Developer/Library/Frameworks
|
||||
)
|
||||
|
||||
# only search the iOS sdks, not the remainder of the host filesystem
|
||||
set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM BOTH)
|
||||
set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM BOTH)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
|
||||
# determinate location for bin utils based on CMAKE_FIND_ROOT_PATH
|
||||
include(CMakeFindBinUtils)
|
||||
|
|
|
@ -246,11 +246,12 @@ MACRO(NL_SETUP_DEFAULT_OPTIONS)
|
|||
###
|
||||
OPTION(WITH_SYMBOLS "Keep debug symbols in binaries" OFF)
|
||||
|
||||
IF(WIN32)
|
||||
# only enable STLport for VC++ 2010 and less
|
||||
IF(WIN32 AND MSVC_VERSION LESS 1600)
|
||||
OPTION(WITH_STLPORT "With STLport support." ON )
|
||||
ELSE(WIN32)
|
||||
ELSE()
|
||||
OPTION(WITH_STLPORT "With STLport support." OFF)
|
||||
ENDIF(WIN32)
|
||||
ENDIF()
|
||||
|
||||
OPTION(BUILD_DASHBOARD "Build to the CDash dashboard" OFF)
|
||||
|
||||
|
@ -321,7 +322,7 @@ MACRO(NL_SETUP_RYZOM_DEFAULT_OPTIONS)
|
|||
OPTION(WITH_RYZOM_CLIENT "Build Ryzom Core Client" ON )
|
||||
OPTION(WITH_RYZOM_TOOLS "Build Ryzom Core Tools" ON )
|
||||
OPTION(WITH_RYZOM_SERVER "Build Ryzom Core Services" ON )
|
||||
OPTION(WITH_RYZOM_SOUND "Enable Ryzom Core Sound" ON )
|
||||
OPTION(WITH_RYZOM_INSTALLER "Build Ryzom Installer" OFF)
|
||||
|
||||
###
|
||||
# Optional support
|
||||
|
@ -534,31 +535,31 @@ MACRO(NL_SETUP_BUILD)
|
|||
# without inlining it's unusable, use custom optimizations again
|
||||
SET(DEBUG_CFLAGS "/Od /Ob1 /GF- ${DEBUG_CFLAGS}")
|
||||
ELSEIF(MSVC12)
|
||||
ADD_PLATFORM_FLAGS("/Gy- /MP")
|
||||
ADD_PLATFORM_FLAGS("/Gy- /MP /Zm1000")
|
||||
# /Ox is working with VC++ 2013, but custom optimizations don't exist
|
||||
SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}")
|
||||
# without inlining it's unusable, use custom optimizations again
|
||||
SET(DEBUG_CFLAGS "/Od /Ob1 /GF- ${DEBUG_CFLAGS}")
|
||||
ELSEIF(MSVC11)
|
||||
ADD_PLATFORM_FLAGS("/Gy- /MP")
|
||||
ADD_PLATFORM_FLAGS("/Gy- /MP /Zm1000")
|
||||
# /Ox is working with VC++ 2012, but custom optimizations don't exist
|
||||
SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}")
|
||||
# without inlining it's unusable, use custom optimizations again
|
||||
SET(DEBUG_CFLAGS "/Od /Ob1 /GF- ${DEBUG_CFLAGS}")
|
||||
ELSEIF(MSVC10)
|
||||
ADD_PLATFORM_FLAGS("/Gy- /MP")
|
||||
ADD_PLATFORM_FLAGS("/Gy- /MP /Zm1000")
|
||||
# /Ox is working with VC++ 2010, but custom optimizations don't exist
|
||||
SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}")
|
||||
# without inlining it's unusable, use custom optimizations again
|
||||
SET(DEBUG_CFLAGS "/Od /Ob1 /GF- ${DEBUG_CFLAGS}")
|
||||
ELSEIF(MSVC90)
|
||||
ADD_PLATFORM_FLAGS("/Gy- /MP")
|
||||
ADD_PLATFORM_FLAGS("/Gy- /MP /Zm1000")
|
||||
# don't use a /O[012x] flag if you want custom optimizations
|
||||
SET(RELEASE_CFLAGS "/Ob2 /Oi /Ot /Oy /GT /GF /GS- ${RELEASE_CFLAGS}")
|
||||
# without inlining it's unusable, use custom optimizations again
|
||||
SET(DEBUG_CFLAGS "/Ob1 /GF- ${DEBUG_CFLAGS}")
|
||||
ELSEIF(MSVC80)
|
||||
ADD_PLATFORM_FLAGS("/Gy- /Wp64")
|
||||
ADD_PLATFORM_FLAGS("/Gy- /Wp64 /Zm1000")
|
||||
# don't use a /O[012x] flag if you want custom optimizations
|
||||
SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}")
|
||||
# without inlining it's unusable, use custom optimizations again
|
||||
|
@ -567,7 +568,7 @@ MACRO(NL_SETUP_BUILD)
|
|||
MESSAGE(FATAL_ERROR "Can't determine compiler version ${MSVC_VERSION}")
|
||||
ENDIF(MSVC14)
|
||||
|
||||
ADD_PLATFORM_FLAGS("/D_CRT_SECURE_NO_DEPRECATE /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /Zm1000 /wd4250")
|
||||
ADD_PLATFORM_FLAGS("/D_CRT_SECURE_NO_DEPRECATE /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /wd4250")
|
||||
|
||||
IF(TARGET_X64)
|
||||
# Fix a bug with Intellisense
|
||||
|
|
|
@ -163,7 +163,7 @@ public:
|
|||
/** There is (OrderS/2+1) * (OrderT/2+1) tiles light influence.
|
||||
* It indicates which static pointLight influence each corner of a TessBlock (block of 2*2 tiles).
|
||||
*
|
||||
* If size()==0, suppose no light influence. but CZone::retrieve() always return a
|
||||
* If empty(), suppose no light influence. but CZone::retrieve() always return a
|
||||
* size() == (OrderS/2+1) * (OrderT/2+1).
|
||||
*
|
||||
* They are stored in line first order, from S=0 to 1, and T=0 to 1.
|
||||
|
|
|
@ -39,7 +39,6 @@ namespace NLGUI
|
|||
class CGroupParagraph;
|
||||
|
||||
extern std::string CurrentCookie;
|
||||
extern std::string HTTPCurrentDomain;
|
||||
|
||||
// HTML group
|
||||
/**
|
||||
|
@ -78,7 +77,7 @@ namespace NLGUI
|
|||
class CStyleParams
|
||||
{
|
||||
public:
|
||||
CStyleParams () : TextColor(255,255,255,255)
|
||||
CStyleParams () : FontFamily(""), TextColor(255,255,255,255)
|
||||
{
|
||||
FontSize=10;
|
||||
FontWeight=400;
|
||||
|
@ -93,6 +92,7 @@ namespace NLGUI
|
|||
uint FontSize;
|
||||
uint FontWeight;
|
||||
bool FontOblique;
|
||||
std::string FontFamily;
|
||||
NLMISC::CRGBA TextColor;
|
||||
bool Underlined;
|
||||
bool StrikeThrough;
|
||||
|
@ -282,9 +282,6 @@ namespace NLGUI
|
|||
// A new text block has been parsed
|
||||
virtual void addText (const char * buf, int len);
|
||||
|
||||
// A link has been parsed
|
||||
virtual void addLink (uint element_number, const std::vector<bool> &present, const std::vector<const char *> &value);
|
||||
|
||||
// A new begin HTML element has been parsed (<IMG> for exemple)
|
||||
virtual void beginElement (uint element_number, const std::vector<bool> &present, const std::vector<const char *> &value);
|
||||
|
||||
|
@ -376,6 +373,7 @@ namespace NLGUI
|
|||
std::string _URL;
|
||||
// Current URL
|
||||
std::string _DocumentUrl;
|
||||
std::string _DocumentDomain;
|
||||
// Valid base href was found
|
||||
bool _IgnoreBaseUrlTag;
|
||||
// Fragment from loading url
|
||||
|
@ -511,6 +509,15 @@ namespace NLGUI
|
|||
return _GlobalColor.back();
|
||||
}
|
||||
|
||||
// Current font name
|
||||
std::vector<std::string> _FontFamily;
|
||||
inline const char* getFontFamily() const
|
||||
{
|
||||
if (_FontFamily.empty())
|
||||
return "";
|
||||
return _FontFamily.back().c_str();
|
||||
}
|
||||
|
||||
// Current font size
|
||||
std::vector<uint> _FontSize;
|
||||
inline uint getFontSize() const
|
||||
|
|
|
@ -51,7 +51,8 @@ namespace NLGUI
|
|||
|
||||
public:
|
||||
std::string scheme;
|
||||
std::string domain;
|
||||
std::string authority;
|
||||
std::string host;
|
||||
std::string path;
|
||||
std::string query;
|
||||
std::string hash;
|
||||
|
|
|
@ -586,8 +586,12 @@ namespace NLGUI
|
|||
static NL3D::UDriver *driver;
|
||||
static NL3D::UTextContext *textcontext;
|
||||
|
||||
typedef CHashMap< std::string, NL3D::UTextContext* > TFontsList;
|
||||
static TFontsList fonts;
|
||||
|
||||
public:
|
||||
static NL3D::UTextContext* getTextContext(){ return textcontext; }
|
||||
static NL3D::UTextContext* getTextContext(const std::string &name="");
|
||||
static bool registerFont(const std::string &name, const std::string &font);
|
||||
|
||||
/// Set of hw cursor images
|
||||
static std::set< std::string > *hwCursors;
|
||||
|
|
|
@ -80,6 +80,7 @@ namespace NLGUI
|
|||
/// Set
|
||||
|
||||
void setText (const ucstring &text);
|
||||
void setFontName (const std::string &name);
|
||||
void setFontSize (sint nFontSize);
|
||||
void setEmbolden (bool nEmbolden);
|
||||
void setOblique (bool nOblique);
|
||||
|
@ -94,6 +95,7 @@ namespace NLGUI
|
|||
void setMultiLineClipEndSpace (bool state); // use it for multiline edit box for instance
|
||||
void setFirstLineX (uint firstLineX);
|
||||
void setMultiMaxLine(uint l) { _MultiMaxLine = l; }
|
||||
void setMultiMinLine(uint l) { _MultiMinLine = l; }
|
||||
|
||||
// Force only a subset of letter to be displayed. Default is 0/0xFFFFFFFF
|
||||
void enableStringSelection(uint start, uint end);
|
||||
|
@ -103,6 +105,7 @@ namespace NLGUI
|
|||
|
||||
ucstring getText() const { return _Text; }
|
||||
sint getFontSize() const;
|
||||
std::string getFontName() const { return _FontName; }
|
||||
bool getEmbolden() { return _Embolden; }
|
||||
bool getOblique() { return _Oblique; }
|
||||
NLMISC::CRGBA getColor() { return _Color; }
|
||||
|
@ -114,6 +117,8 @@ namespace NLGUI
|
|||
sint getMultiLineSpace() const { return _MultiLineSpace; }
|
||||
bool getMultiLineMaxWOnly() const { return _MultiLineMaxWOnly; }
|
||||
uint32 getMultiMaxLine() const { return _MultiMaxLine; }
|
||||
uint32 getMultiMinLine() const { return _MultiMinLine; }
|
||||
uint32 getMultiMinOffsetY() const;
|
||||
|
||||
// get current Hint font width, in pixels
|
||||
uint getFontWidth() const;
|
||||
|
@ -224,6 +229,8 @@ namespace NLGUI
|
|||
uint _Index;
|
||||
/// info on the computed String associated to this text control
|
||||
NL3D::UTextContext::CStringInfo _Info;
|
||||
/// Font name to get TextContext
|
||||
std::string _FontName;
|
||||
/// the font size
|
||||
sint _FontSize;
|
||||
bool _Embolden;
|
||||
|
@ -259,6 +266,7 @@ namespace NLGUI
|
|||
sint _MultiLineSpace;
|
||||
sint _LastMultiLineMaxW;
|
||||
uint32 _MultiMaxLine;
|
||||
uint32 _MultiMinLine;
|
||||
|
||||
|
||||
/// FormatTag handling
|
||||
|
@ -316,7 +324,7 @@ namespace NLGUI
|
|||
CFormatInfo Format;
|
||||
public:
|
||||
// build from a string, using the current text context
|
||||
void build(const ucstring &text, uint numSpaces= 0);
|
||||
void build(const ucstring &text, NL3D::UTextContext &textContext, uint numSpaces= 0);
|
||||
};
|
||||
typedef std::vector<CWord> TWordVect;
|
||||
|
||||
|
@ -327,9 +335,9 @@ namespace NLGUI
|
|||
// ctor
|
||||
CLine();
|
||||
// Clear the line & remove text contexts
|
||||
void clear();
|
||||
void clear(NL3D::UTextContext &textContext);
|
||||
// Add a new word (and its context) in the line + a number of spaces to append at the end of the line
|
||||
void addWord(const ucstring &word, uint numSpaces, const CFormatInfo &wordFormat, uint fontWidth);
|
||||
void addWord(const ucstring &word, uint numSpaces, const CFormatInfo &wordFormat, uint fontWidth, NL3D::UTextContext &textContext);
|
||||
void addWord(const CWord &word, uint fontWidth);
|
||||
uint getNumWords() const { return (uint)_Words.size(); }
|
||||
CWord &getWord(uint index) { return _Words[index]; }
|
||||
|
|
|
@ -442,6 +442,7 @@ namespace NLGUI
|
|||
OptionTimeoutMessages,
|
||||
OptionTimeoutContext,
|
||||
OptionTimeoutContextHtml,
|
||||
OptionMonospaceFont,
|
||||
NumSystemOptions
|
||||
};
|
||||
|
||||
|
|
|
@ -120,9 +120,9 @@ public:
|
|||
*/
|
||||
std::string toString() const
|
||||
{
|
||||
if (_Ids.size()==0) return std::string("");
|
||||
if (_Ids.empty()) return std::string("");
|
||||
std::string str=_Ids[0];
|
||||
for (unsigned i=1; i<_Ids.size(); i++)
|
||||
for (uint i=1; i<_Ids.size(); i++)
|
||||
str +=std::string(":")+ _Ids[i];
|
||||
return str;
|
||||
}
|
||||
|
|
|
@ -50,14 +50,14 @@ IDriver::~IDriver()
|
|||
{
|
||||
CSynchronized<TTexDrvInfoPtrMap>::CAccessor access(&_SyncTexDrvInfos);
|
||||
TTexDrvInfoPtrMap &rTexDrvInfos = access.value();
|
||||
nlassert( rTexDrvInfos.size() == 0 );
|
||||
nlassert(rTexDrvInfos.empty());
|
||||
}
|
||||
|
||||
nlassert(_TexDrvShares.size()==0);
|
||||
nlassert(_MatDrvInfos.size()==0);
|
||||
nlassert(_VBDrvInfos.size()==0);
|
||||
nlassert(_IBDrvInfos.size()==0);
|
||||
nlassert(_GPUPrgDrvInfos.size()==0);
|
||||
nlassert(_TexDrvShares.empty());
|
||||
nlassert(_MatDrvInfos.empty());
|
||||
nlassert(_VBDrvInfos.empty());
|
||||
nlassert(_IBDrvInfos.empty());
|
||||
nlassert(_GPUPrgDrvInfos.empty());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ NL_TARGET_DRIVER(nel_drv_direct3d_win ${SRC})
|
|||
|
||||
INCLUDE_DIRECTORIES(BEFORE ${DXSDK_INCLUDE_DIR})
|
||||
|
||||
TARGET_LINK_LIBRARIES(nel_drv_direct3d_win nel3d nelmisc ${DXSDK_D3DX9_LIBRARY} ${DXSDK_D3D9_LIBRARY} ${DXSDK_DINPUT_LIBRARY} ${DXSDK_GUID_LIBRARY})
|
||||
TARGET_LINK_LIBRARIES(nel_drv_direct3d_win nel3d nelmisc ${DXSDK_D3DX9_LIBRARY} ${DXSDK_D3D9_LIBRARY})
|
||||
|
||||
NL_DEFAULT_PROPS(nel_drv_direct3d_win "NeL, Driver, Video: Direct3D")
|
||||
NL_ADD_RUNTIME_FLAGS(nel_drv_direct3d_win)
|
||||
|
|
|
@ -125,7 +125,7 @@ uint8 *CVBDrvInfosD3D::lock (uint begin, uint end, bool readOnly)
|
|||
}
|
||||
else
|
||||
{
|
||||
nlinfo("Buffer %s at %x is Locked", (*it)->VertexBufferPtr->getName().c_str(), (int) *it);
|
||||
nlinfo("Buffer %s at %p is Locked", (*it)->VertexBufferPtr->getName().c_str(), *it);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,7 +6,7 @@ extern "C" {
|
|||
#endif
|
||||
|
||||
/*
|
||||
** Copyright (c) 2013-2015 The Khronos Group Inc.
|
||||
** Copyright (c) 2013-2016 The Khronos Group Inc.
|
||||
**
|
||||
** Permission is hereby granted, free of charge, to any person obtaining a
|
||||
** copy of this software and/or associated documentation files (the
|
||||
|
@ -33,7 +33,7 @@ extern "C" {
|
|||
** used to make the header, and the header can be found at
|
||||
** http://www.opengl.org/registry/
|
||||
**
|
||||
** Khronos $Revision: 32155 $ on $Date: 2015-10-22 23:25:39 -0400 (Thu, 22 Oct 2015) $
|
||||
** Khronos $Revision: 32957 $ on $Date: 2016-06-09 17:03:08 -0400 (Thu, 09 Jun 2016) $
|
||||
*/
|
||||
|
||||
#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
|
||||
|
@ -53,7 +53,7 @@ extern "C" {
|
|||
#define GLAPI extern
|
||||
#endif
|
||||
|
||||
#define GL_GLEXT_VERSION 20151022
|
||||
#define GL_GLEXT_VERSION 20160609
|
||||
|
||||
/* Generated C header for:
|
||||
* API: gl
|
||||
|
@ -5596,6 +5596,10 @@ GLAPI void APIENTRY glSetMultisamplefvAMD (GLenum pname, GLuint index, const GLf
|
|||
#define GL_AMD_shader_atomic_counter_ops 1
|
||||
#endif /* GL_AMD_shader_atomic_counter_ops */
|
||||
|
||||
#ifndef GL_AMD_shader_explicit_vertex_parameter
|
||||
#define GL_AMD_shader_explicit_vertex_parameter 1
|
||||
#endif /* GL_AMD_shader_explicit_vertex_parameter */
|
||||
|
||||
#ifndef GL_AMD_shader_stencil_export
|
||||
#define GL_AMD_shader_stencil_export 1
|
||||
#endif /* GL_AMD_shader_stencil_export */
|
||||
|
@ -8636,6 +8640,20 @@ GLAPI void APIENTRY glVertexWeightPointerEXT (GLint size, GLenum type, GLsizei s
|
|||
#endif
|
||||
#endif /* GL_EXT_vertex_weighting */
|
||||
|
||||
#ifndef GL_EXT_window_rectangles
|
||||
#define GL_EXT_window_rectangles 1
|
||||
#define GL_INCLUSIVE_EXT 0x8F10
|
||||
#define GL_EXCLUSIVE_EXT 0x8F11
|
||||
#define GL_WINDOW_RECTANGLE_EXT 0x8F12
|
||||
#define GL_WINDOW_RECTANGLE_MODE_EXT 0x8F13
|
||||
#define GL_MAX_WINDOW_RECTANGLES_EXT 0x8F14
|
||||
#define GL_NUM_WINDOW_RECTANGLES_EXT 0x8F15
|
||||
typedef void (APIENTRYP PFNGLWINDOWRECTANGLESEXTPROC) (GLenum mode, GLsizei count, const GLint *box);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glWindowRectanglesEXT (GLenum mode, GLsizei count, const GLint *box);
|
||||
#endif
|
||||
#endif /* GL_EXT_window_rectangles */
|
||||
|
||||
#ifndef GL_EXT_x11_sync_object
|
||||
#define GL_EXT_x11_sync_object 1
|
||||
#define GL_SYNC_X11_FENCE_EXT 0x90E1
|
||||
|
@ -9129,6 +9147,17 @@ GLAPI void APIENTRY glBlendBarrierNV (void);
|
|||
#define GL_NV_blend_square 1
|
||||
#endif /* GL_NV_blend_square */
|
||||
|
||||
#ifndef GL_NV_clip_space_w_scaling
|
||||
#define GL_NV_clip_space_w_scaling 1
|
||||
#define GL_VIEWPORT_POSITION_W_SCALE_NV 0x937C
|
||||
#define GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV 0x937D
|
||||
#define GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV 0x937E
|
||||
typedef void (APIENTRYP PFNGLVIEWPORTPOSITIONWSCALENVPROC) (GLuint index, GLfloat xcoeff, GLfloat ycoeff);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glViewportPositionWScaleNV (GLuint index, GLfloat xcoeff, GLfloat ycoeff);
|
||||
#endif
|
||||
#endif /* GL_NV_clip_space_w_scaling */
|
||||
|
||||
#ifndef GL_NV_command_list
|
||||
#define GL_NV_command_list 1
|
||||
#define GL_TERMINATE_SEQUENCE_COMMAND_NV 0x0000
|
||||
|
@ -9231,6 +9260,17 @@ GLAPI void APIENTRY glConservativeRasterParameterfNV (GLenum pname, GLfloat valu
|
|||
#endif
|
||||
#endif /* GL_NV_conservative_raster_dilate */
|
||||
|
||||
#ifndef GL_NV_conservative_raster_pre_snap_triangles
|
||||
#define GL_NV_conservative_raster_pre_snap_triangles 1
|
||||
#define GL_CONSERVATIVE_RASTER_MODE_NV 0x954D
|
||||
#define GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV 0x954E
|
||||
#define GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV 0x954F
|
||||
typedef void (APIENTRYP PFNGLCONSERVATIVERASTERPARAMETERINVPROC) (GLenum pname, GLint param);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glConservativeRasterParameteriNV (GLenum pname, GLint param);
|
||||
#endif
|
||||
#endif /* GL_NV_conservative_raster_pre_snap_triangles */
|
||||
|
||||
#ifndef GL_NV_copy_depth_to_color
|
||||
#define GL_NV_copy_depth_to_color 1
|
||||
#define GL_DEPTH_STENCIL_TO_RGBA_NV 0x886E
|
||||
|
@ -10223,6 +10263,11 @@ GLAPI void APIENTRY glGetCombinerStageParameterfvNV (GLenum stage, GLenum pname,
|
|||
#endif
|
||||
#endif /* GL_NV_register_combiners2 */
|
||||
|
||||
#ifndef GL_NV_robustness_video_memory_purge
|
||||
#define GL_NV_robustness_video_memory_purge 1
|
||||
#define GL_PURGED_CONTEXT_RESET_NV 0x92BB
|
||||
#endif /* GL_NV_robustness_video_memory_purge */
|
||||
|
||||
#ifndef GL_NV_sample_locations
|
||||
#define GL_NV_sample_locations 1
|
||||
#define GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV 0x933D
|
||||
|
@ -10255,6 +10300,10 @@ GLAPI void APIENTRY glResolveDepthValuesNV (void);
|
|||
#define GL_NV_shader_atomic_float 1
|
||||
#endif /* GL_NV_shader_atomic_float */
|
||||
|
||||
#ifndef GL_NV_shader_atomic_float64
|
||||
#define GL_NV_shader_atomic_float64 1
|
||||
#endif /* GL_NV_shader_atomic_float64 */
|
||||
|
||||
#ifndef GL_NV_shader_atomic_fp16_vector
|
||||
#define GL_NV_shader_atomic_fp16_vector 1
|
||||
#endif /* GL_NV_shader_atomic_fp16_vector */
|
||||
|
@ -10318,6 +10367,10 @@ GLAPI void APIENTRY glProgramUniformui64vNV (GLuint program, GLint location, GLs
|
|||
#define GL_NV_shader_thread_shuffle 1
|
||||
#endif /* GL_NV_shader_thread_shuffle */
|
||||
|
||||
#ifndef GL_NV_stereo_view_rendering
|
||||
#define GL_NV_stereo_view_rendering 1
|
||||
#endif /* GL_NV_stereo_view_rendering */
|
||||
|
||||
#ifndef GL_NV_tessellation_program5
|
||||
#define GL_NV_tessellation_program5 1
|
||||
#define GL_MAX_PROGRAM_PATCH_ATTRIBS_NV 0x86D8
|
||||
|
@ -11088,6 +11141,26 @@ GLAPI void APIENTRY glVideoCaptureStreamParameterdvNV (GLuint video_capture_slot
|
|||
#define GL_NV_viewport_array2 1
|
||||
#endif /* GL_NV_viewport_array2 */
|
||||
|
||||
#ifndef GL_NV_viewport_swizzle
|
||||
#define GL_NV_viewport_swizzle 1
|
||||
#define GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV 0x9350
|
||||
#define GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV 0x9351
|
||||
#define GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV 0x9352
|
||||
#define GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV 0x9353
|
||||
#define GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV 0x9354
|
||||
#define GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV 0x9355
|
||||
#define GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV 0x9356
|
||||
#define GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV 0x9357
|
||||
#define GL_VIEWPORT_SWIZZLE_X_NV 0x9358
|
||||
#define GL_VIEWPORT_SWIZZLE_Y_NV 0x9359
|
||||
#define GL_VIEWPORT_SWIZZLE_Z_NV 0x935A
|
||||
#define GL_VIEWPORT_SWIZZLE_W_NV 0x935B
|
||||
typedef void (APIENTRYP PFNGLVIEWPORTSWIZZLENVPROC) (GLuint index, GLenum swizzlex, GLenum swizzley, GLenum swizzlez, GLenum swizzlew);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glViewportSwizzleNV (GLuint index, GLenum swizzlex, GLenum swizzley, GLenum swizzlez, GLenum swizzlew);
|
||||
#endif
|
||||
#endif /* GL_NV_viewport_swizzle */
|
||||
|
||||
#ifndef GL_OML_interlace
|
||||
#define GL_OML_interlace 1
|
||||
#define GL_INTERLACE_OML 0x8980
|
||||
|
|
|
@ -6,7 +6,7 @@ extern "C" {
|
|||
#endif
|
||||
|
||||
/*
|
||||
** Copyright (c) 2013-2015 The Khronos Group Inc.
|
||||
** Copyright (c) 2013-2016 The Khronos Group Inc.
|
||||
**
|
||||
** Permission is hereby granted, free of charge, to any person obtaining a
|
||||
** copy of this software and/or associated documentation files (the
|
||||
|
@ -33,10 +33,10 @@ extern "C" {
|
|||
** used to make the header, and the header can be found at
|
||||
** http://www.opengl.org/registry/
|
||||
**
|
||||
** Khronos $Revision: 31597 $ on $Date: 2015-06-25 16:32:35 -0400 (Thu, 25 Jun 2015) $
|
||||
** Khronos $Revision: 32889 $ on $Date: 2016-05-31 07:09:51 -0400 (Tue, 31 May 2016) $
|
||||
*/
|
||||
|
||||
#define GLX_GLXEXT_VERSION 20150623
|
||||
#define GLX_GLXEXT_VERSION 20160531
|
||||
|
||||
/* Generated C header for:
|
||||
* API: glx
|
||||
|
@ -317,6 +317,11 @@ void glXFreeContextEXT (Display *dpy, GLXContext context);
|
|||
#endif
|
||||
#endif /* GLX_EXT_import_context */
|
||||
|
||||
#ifndef GLX_EXT_libglvnd
|
||||
#define GLX_EXT_libglvnd 1
|
||||
#define GLX_VENDOR_NAMES_EXT 0x20F6
|
||||
#endif /* GLX_EXT_libglvnd */
|
||||
|
||||
#ifndef GLX_EXT_stereo_tree
|
||||
#define GLX_EXT_stereo_tree 1
|
||||
typedef struct {
|
||||
|
@ -543,6 +548,11 @@ int glXBindVideoDeviceNV (Display *dpy, unsigned int video_slot, unsigned int vi
|
|||
#endif
|
||||
#endif /* GLX_NV_present_video */
|
||||
|
||||
#ifndef GLX_NV_robustness_video_memory_purge
|
||||
#define GLX_NV_robustness_video_memory_purge 1
|
||||
#define GLX_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV 0x20F7
|
||||
#endif /* GLX_NV_robustness_video_memory_purge */
|
||||
|
||||
#ifndef GLX_NV_swap_group
|
||||
#define GLX_NV_swap_group 1
|
||||
typedef Bool ( *PFNGLXJOINSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint group);
|
||||
|
|
|
@ -6,7 +6,7 @@ extern "C" {
|
|||
#endif
|
||||
|
||||
/*
|
||||
** Copyright (c) 2013-2015 The Khronos Group Inc.
|
||||
** Copyright (c) 2013-2016 The Khronos Group Inc.
|
||||
**
|
||||
** Permission is hereby granted, free of charge, to any person obtaining a
|
||||
** copy of this software and/or associated documentation files (the
|
||||
|
@ -33,7 +33,7 @@ extern "C" {
|
|||
** used to make the header, and the header can be found at
|
||||
** http://www.opengl.org/registry/
|
||||
**
|
||||
** Khronos $Revision: 31597 $ on $Date: 2015-06-25 16:32:35 -0400 (Thu, 25 Jun 2015) $
|
||||
** Khronos $Revision: 32686 $ on $Date: 2016-04-19 21:08:44 -0400 (Tue, 19 Apr 2016) $
|
||||
*/
|
||||
|
||||
#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
|
||||
|
@ -41,7 +41,7 @@ extern "C" {
|
|||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#define WGL_WGLEXT_VERSION 20150623
|
||||
#define WGL_WGLEXT_VERSION 20160419
|
||||
|
||||
/* Generated C header for:
|
||||
* API: wgl
|
||||
|
|
|
@ -676,8 +676,8 @@ bool CDriverGL::setupDisplay()
|
|||
}
|
||||
#endif
|
||||
|
||||
// Reset the vbl interval
|
||||
setSwapVBLInterval(_Interval);
|
||||
// Get initial VBL interval
|
||||
_Interval = getSwapVBLInterval();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -2288,16 +2288,22 @@ void CDriverGL::setSwapVBLInterval(uint interval)
|
|||
H_AUTO_OGL(CDriverGL_setSwapVBLInterval);
|
||||
|
||||
if (!_Initialized)
|
||||
{
|
||||
nlwarning("OpenGL driver not initialized when calling setSwapVBLInterval");
|
||||
return;
|
||||
}
|
||||
|
||||
bool res = true;
|
||||
|
||||
// don't try to change VBL if interval didn't change
|
||||
if (_Interval == interval) return;
|
||||
|
||||
#ifdef USE_OPENGLES
|
||||
res = eglSwapInterval(_EglDisplay, _Interval) == EGL_TRUE;
|
||||
res = eglSwapInterval(_EglDisplay, interval) == EGL_TRUE;
|
||||
#elif defined(NL_OS_WINDOWS)
|
||||
if(_Extensions.WGLEXTSwapControl)
|
||||
{
|
||||
res = nwglSwapIntervalEXT(_Interval) == TRUE;
|
||||
res = nwglSwapIntervalEXT(interval) == TRUE;
|
||||
}
|
||||
#elif defined(NL_OS_MAC)
|
||||
[_ctx setValues:(GLint*)&interval forParameter:NSOpenGLCPSwapInterval];
|
||||
|
|
|
@ -1991,24 +1991,32 @@ bool registerWGlExtensions(CGlExtensions &ext, HDC hDC)
|
|||
|
||||
if (ext.WGLNVGPUAffinity)
|
||||
{
|
||||
uint i = 0;
|
||||
uint gpuIndex = 0;
|
||||
|
||||
HGPUNV hGPU;
|
||||
|
||||
while(nwglEnumGpusNV(i, &hGPU))
|
||||
// list all GPUs
|
||||
while (nwglEnumGpusNV(gpuIndex, &hGPU))
|
||||
{
|
||||
uint j = 0;
|
||||
|
||||
PGPU_DEVICE lpGpuDevice = NULL;
|
||||
_GPU_DEVICE gpuDevice;
|
||||
gpuDevice.cb = sizeof(gpuDevice);
|
||||
|
||||
while(nwglEnumGpuDevicesNV(hGPU, j, lpGpuDevice))
|
||||
// list all devices connected to GPU
|
||||
while(nwglEnumGpuDevicesNV(hGPU, j, &gpuDevice))
|
||||
{
|
||||
nlinfo("Device: %s - %s - flags: %u", lpGpuDevice->DeviceName, lpGpuDevice->DeviceString, lpGpuDevice->Flags);
|
||||
nlinfo("Device: %s / %s / flags: %u", gpuDevice.DeviceName, gpuDevice.DeviceString, (uint)gpuDevice.Flags);
|
||||
|
||||
if (gpuDevice.Flags & DISPLAY_DEVICE_ATTACHED_TO_DESKTOP)
|
||||
{
|
||||
nlinfo("Virtual screen: (%d,%d)-(%d,%d)", (sint)gpuDevice.rcVirtualScreen.left, (sint)gpuDevice.rcVirtualScreen.top, (sint)gpuDevice.rcVirtualScreen.right, (sint)gpuDevice.rcVirtualScreen.bottom);
|
||||
}
|
||||
|
||||
++j;
|
||||
}
|
||||
|
||||
++i;
|
||||
++gpuIndex;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -528,7 +528,7 @@ void CDRU::drawTrianglesUnlit(const NLMISC::CTriangleUV *trilist, sint ntris,
|
|||
// ***************************************************************************
|
||||
void CDRU::drawTrianglesUnlit(const std::vector<NLMISC::CTriangleUV> &trilist, CMaterial &mat, IDriver& driver)
|
||||
{
|
||||
if(trilist.size()==0)
|
||||
if(trilist.empty())
|
||||
return;
|
||||
|
||||
CDRU::drawTrianglesUnlit( &(*trilist.begin()), (uint)trilist.size(), mat, driver);
|
||||
|
@ -570,7 +570,7 @@ void CDRU::drawLinesUnlit(const NLMISC::CLine *linelist, sint nlines, CMateria
|
|||
// ***************************************************************************
|
||||
void CDRU::drawLinesUnlit(const std::vector<NLMISC::CLine> &linelist, CMaterial &mat, IDriver& driver)
|
||||
{
|
||||
if(linelist.size()==0)
|
||||
if(linelist.empty())
|
||||
return;
|
||||
CDRU::drawLinesUnlit( &(*linelist.begin()), (sint)linelist.size(), mat, driver);
|
||||
}
|
||||
|
|
|
@ -2859,7 +2859,7 @@ void CLandscape::setupAutomaticLightDir(const CVector &lightDir)
|
|||
// ***************************************************************************
|
||||
CVector CLandscape::getHeightFieldDeltaZ(float x, float y) const
|
||||
{
|
||||
if(_HeightField.ZPatchs.size()==0)
|
||||
if(_HeightField.ZPatchs.empty())
|
||||
return CVector::Null;
|
||||
|
||||
// map to _HeightField coordinates.
|
||||
|
|
|
@ -134,7 +134,7 @@ void CLandscapeVBAllocator::resetReallocation()
|
|||
uint CLandscapeVBAllocator::allocateVertex()
|
||||
{
|
||||
// if no more free, allocate.
|
||||
if( _VertexFreeMemory.size()==0 )
|
||||
if( _VertexFreeMemory.empty() )
|
||||
{
|
||||
// enlarge capacity.
|
||||
uint newResize;
|
||||
|
|
|
@ -52,7 +52,7 @@ namespace NL3D
|
|||
static NLMISC::CAABBoxExt makeBBox(const std::vector<CVector> &Vertices)
|
||||
{
|
||||
NLMISC::CAABBox ret;
|
||||
nlassert(Vertices.size());
|
||||
nlassert(!Vertices.empty());
|
||||
ret.setCenter(Vertices[0]);
|
||||
for(sint i=0;i<(sint)Vertices.size();i++)
|
||||
{
|
||||
|
@ -167,7 +167,7 @@ void CMeshGeom::build (CMesh::CMeshBuild &m, uint numMaxMaterial)
|
|||
sint i;
|
||||
|
||||
// Empty geometry?
|
||||
if(m.Vertices.size()==0 || m.Faces.size()==0)
|
||||
if(m.Vertices.empty() || m.Faces.empty())
|
||||
{
|
||||
_VBuffer.setNumVertices(0);
|
||||
_VBuffer.setName("CMeshGeom");
|
||||
|
@ -436,7 +436,7 @@ void CMeshGeom::build (CMesh::CMeshBuild &m, uint numMaxMaterial)
|
|||
}
|
||||
|
||||
// Set the vertex buffer preferred memory
|
||||
bool avoidVBHard= _Skinned || ( _MeshMorpher && _MeshMorpher->BlendShapes.size()>0 );
|
||||
bool avoidVBHard= _Skinned || ( _MeshMorpher && !_MeshMorpher->BlendShapes.empty() );
|
||||
_VBuffer.setPreferredMemory (avoidVBHard?CVertexBuffer::RAMPreferred:CVertexBuffer::StaticPreferred, false);
|
||||
|
||||
// End!!
|
||||
|
@ -638,7 +638,7 @@ void CMeshGeom::render(IDriver *drv, CTransformShape *trans, float polygonCount,
|
|||
for(uint mb=0;mb<_MatrixBlocks.size();mb++)
|
||||
{
|
||||
CMatrixBlock &mBlock= _MatrixBlocks[mb];
|
||||
if(mBlock.RdrPass.size()==0)
|
||||
if(mBlock.RdrPass.empty())
|
||||
continue;
|
||||
|
||||
// Global alpha ?
|
||||
|
@ -790,7 +790,7 @@ void CMeshGeom::renderSkin(CTransformShape *trans, float alphaMRM)
|
|||
for(uint mb=0;mb<_MatrixBlocks.size();mb++)
|
||||
{
|
||||
CMatrixBlock &mBlock= _MatrixBlocks[mb];
|
||||
if(mBlock.RdrPass.size()==0)
|
||||
if(mBlock.RdrPass.empty())
|
||||
continue;
|
||||
|
||||
// Render all pass.
|
||||
|
@ -840,7 +840,7 @@ void CMeshGeom::renderSimpleWithMaterial(IDriver *drv, const CMatrix &worldMatri
|
|||
for(uint mb=0;mb<_MatrixBlocks.size();mb++)
|
||||
{
|
||||
CMatrixBlock &mBlock= _MatrixBlocks[mb];
|
||||
if(mBlock.RdrPass.size()==0)
|
||||
if(mBlock.RdrPass.empty())
|
||||
continue;
|
||||
|
||||
// Render all pass.
|
||||
|
@ -998,10 +998,10 @@ void CMeshGeom::compileRunTime()
|
|||
_PreciseClipping= _BBox.getRadius() >= NL3D_MESH_PRECISE_CLIP_THRESHOLD;
|
||||
|
||||
// Support MeshBlockRendering only if not skinned/meshMorphed.
|
||||
bool supportMeshBlockRendering= !_Skinned && _MeshMorpher->BlendShapes.size()==0;
|
||||
bool supportMeshBlockRendering= !_Skinned && _MeshMorpher->BlendShapes.empty();
|
||||
|
||||
// true only if one matrix block, and at least one rdrPass.
|
||||
supportMeshBlockRendering= supportMeshBlockRendering && _MatrixBlocks.size()==1 && _MatrixBlocks[0].RdrPass.size()>0;
|
||||
supportMeshBlockRendering= supportMeshBlockRendering && _MatrixBlocks.size()==1 && !_MatrixBlocks[0].RdrPass.empty();
|
||||
if (supportMeshBlockRendering && _MeshVertexProgram)
|
||||
{
|
||||
supportMeshBlockRendering = supportMeshBlockRendering && _MeshVertexProgram->supportMeshBlockRendering();
|
||||
|
@ -1021,7 +1021,7 @@ void CMeshGeom::compileRunTime()
|
|||
if(supportMBRPerMaterial)
|
||||
_SupportMBRFlags|= MBRSortPerMaterial;
|
||||
|
||||
bool avoidVBHard= _Skinned || ( _MeshMorpher && _MeshMorpher->BlendShapes.size()>0 );
|
||||
bool avoidVBHard= _Skinned || ( _MeshMorpher && !_MeshMorpher->BlendShapes.empty() );
|
||||
_VBuffer.setPreferredMemory (avoidVBHard?CVertexBuffer::RAMPreferred:CVertexBuffer::StaticPreferred, false);
|
||||
}
|
||||
|
||||
|
|
|
@ -407,9 +407,10 @@ void CMeshMorpher::updateRawSkin (CVertexBuffer *vbOri,
|
|||
rFactor*= 0.01f;
|
||||
uint32 numVertices= (uint32)rBS.VertRefs.size();
|
||||
// don't know why, but cases happen where deltaNorm not empty while deltaPos is
|
||||
bool hasPos= rBS.deltaPos.size()>0;
|
||||
bool hasNorm= rBS.deltaNorm.size()>0;
|
||||
bool hasUV= rBS.deltaUV.size()>0;
|
||||
bool hasPos = !rBS.deltaPos.empty();
|
||||
bool hasNorm = !rBS.deltaNorm.empty();
|
||||
bool hasUV = !rBS.deltaUV.empty();
|
||||
|
||||
for (j = 0; j < numVertices; ++j)
|
||||
{
|
||||
// Get the vertex Index in the VBufferFinal
|
||||
|
|
|
@ -180,7 +180,7 @@ void CMeshMRMGeom::CLod::optimizeTriangleOrder()
|
|||
static NLMISC::CAABBoxExt makeBBox(const std::vector<CVector> &Vertices)
|
||||
{
|
||||
NLMISC::CAABBox ret;
|
||||
nlassert(Vertices.size());
|
||||
nlassert(!Vertices.empty());
|
||||
ret.setCenter(Vertices[0]);
|
||||
for(sint i=0;i<(sint)Vertices.size();i++)
|
||||
{
|
||||
|
@ -236,7 +236,7 @@ void CMeshMRMGeom::build(CMesh::CMeshBuild &m, std::vector<CMesh::CMeshBuild*>
|
|||
uint numMaxMaterial, const CMRMParameters ¶ms)
|
||||
{
|
||||
// Empty geometry?
|
||||
if(m.Vertices.size()==0 || m.Faces.size()==0)
|
||||
if(m.Vertices.empty() || m.Faces.empty())
|
||||
{
|
||||
_VBufferFinal.setNumVertices(0);
|
||||
_VBufferFinal.reserve(0);
|
||||
|
@ -308,7 +308,7 @@ void CMeshMRMGeom::build(CMesh::CMeshBuild &m, std::vector<CMesh::CMeshBuild*>
|
|||
_LevelDetail.MaxFaceUsed= 0;
|
||||
_LevelDetail.MinFaceUsed= 0;
|
||||
// Count of primitive block
|
||||
if(_Lods.size()>0)
|
||||
if (!_Lods.empty())
|
||||
{
|
||||
uint pb;
|
||||
// Compute MinFaces.
|
||||
|
@ -469,7 +469,7 @@ void CMeshMRMGeom::applyGeomorph(std::vector<CMRMWedgeGeom> &geoms, float alpha
|
|||
void CMeshMRMGeom::applyGeomorphWithVBHardPtr(std::vector<CMRMWedgeGeom> &geoms, float alphaLod, uint8 *vertexDestPtr)
|
||||
{
|
||||
// no geomorphs? quit.
|
||||
if(geoms.size()==0)
|
||||
if(geoms.empty())
|
||||
return;
|
||||
|
||||
clamp(alphaLod, 0.f, 1.f);
|
||||
|
@ -900,7 +900,7 @@ inline sint CMeshMRMGeom::chooseLod(float alphaMRM, float &alphaLod)
|
|||
void CMeshMRMGeom::render(IDriver *drv, CTransformShape *trans, float polygonCount, uint32 rdrFlags, float globalAlpha)
|
||||
{
|
||||
nlassert(drv);
|
||||
if(_Lods.size()==0)
|
||||
if(_Lods.empty())
|
||||
return;
|
||||
|
||||
|
||||
|
@ -922,7 +922,7 @@ void CMeshMRMGeom::render(IDriver *drv, CTransformShape *trans, float polygonCou
|
|||
|
||||
// Render the choosen Lod.
|
||||
CLod &lod= _Lods[numLod];
|
||||
if(lod.RdrPass.size()==0)
|
||||
if(lod.RdrPass.empty())
|
||||
return;
|
||||
|
||||
|
||||
|
@ -1104,7 +1104,7 @@ void CMeshMRMGeom::renderSkin(CTransformShape *trans, float alphaMRM)
|
|||
{
|
||||
H_AUTO( NL3D_MeshMRMGeom_renderSkin );
|
||||
|
||||
if(_Lods.size()==0)
|
||||
if(_Lods.empty())
|
||||
return;
|
||||
|
||||
|
||||
|
@ -1126,7 +1126,7 @@ void CMeshMRMGeom::renderSkin(CTransformShape *trans, float alphaMRM)
|
|||
|
||||
// Render the choosen Lod.
|
||||
CLod &lod= _Lods[numLod];
|
||||
if(lod.RdrPass.size()==0)
|
||||
if(lod.RdrPass.empty())
|
||||
return;
|
||||
|
||||
|
||||
|
@ -1295,7 +1295,7 @@ sint CMeshMRMGeom::renderSkinGroupGeom(CMeshMRMInstance *mi, float alphaMRM, uin
|
|||
|
||||
// Render the choosen Lod.
|
||||
CLod &lod= _Lods[numLod];
|
||||
if(lod.RdrPass.size()==0)
|
||||
if(lod.RdrPass.empty())
|
||||
// return no vertices added
|
||||
return 0;
|
||||
|
||||
|
@ -1942,7 +1942,7 @@ void CMeshMRMGeom::loadFirstLod(NLMISC::IStream &f)
|
|||
|
||||
|
||||
// If empty MRM, quit.
|
||||
if(_LodInfos.size()==0)
|
||||
if(_LodInfos.empty())
|
||||
return;
|
||||
|
||||
/* If the version is <4, then SkinWeights are serialised per Lod.
|
||||
|
@ -2431,7 +2431,7 @@ void CMeshMRMGeom::compileRunTime()
|
|||
_PreciseClipping= _BBox.getRadius() >= NL3D_MESH_PRECISE_CLIP_THRESHOLD;
|
||||
|
||||
// Compute if can support SkinGrouping rendering
|
||||
if(_Lods.size()==0 || !_Skinned)
|
||||
if(_Lods.empty() || !_Skinned)
|
||||
{
|
||||
_SupportSkinGrouping= false;
|
||||
_SupportShadowSkinGrouping= false;
|
||||
|
@ -2451,7 +2451,7 @@ void CMeshMRMGeom::compileRunTime()
|
|||
}
|
||||
|
||||
// Support MeshBlockRendering only if not skinned/meshMorphed.
|
||||
_SupportMeshBlockRendering= !_Skinned && _MeshMorpher.BlendShapes.size()==0;
|
||||
_SupportMeshBlockRendering= !_Skinned && _MeshMorpher.BlendShapes.empty();
|
||||
|
||||
// \todo yoyo: support later MeshVertexProgram
|
||||
_SupportMeshBlockRendering= _SupportMeshBlockRendering && _MeshVertexProgram==NULL;
|
||||
|
@ -3367,7 +3367,7 @@ void CMeshMRMGeom::updateRawSkinNormal(bool enabled, CMeshMRMInstance *mi, sint
|
|||
|
||||
// Case of MeshMorpher
|
||||
//========
|
||||
if(_MeshMorpher.BlendShapes.size()>0)
|
||||
if(!_MeshMorpher.BlendShapes.empty())
|
||||
{
|
||||
skinLod.VertexRemap.resize((uint32)vertexFinalRemap.size());
|
||||
|
||||
|
|
|
@ -55,7 +55,7 @@ namespace NL3D
|
|||
void CMeshMRMGeom::applySkin(CLod &lod, const CSkeletonModel *skeleton)
|
||||
{
|
||||
nlassert(_Skinned);
|
||||
if(_SkinWeights.size()==0)
|
||||
if(_SkinWeights.empty())
|
||||
return;
|
||||
|
||||
// get vertexPtr.
|
||||
|
|
|
@ -380,7 +380,7 @@ static void applyArraySkinTangentSpaceT(uint numMatrixes, uint32 *infPtr, CMesh:
|
|||
void CMeshMRMGeom::applySkinWithNormal(CLod &lod, const CSkeletonModel *skeleton)
|
||||
{
|
||||
nlassert(_Skinned);
|
||||
if(_SkinWeights.size()==0)
|
||||
if(_SkinWeights.empty())
|
||||
return;
|
||||
|
||||
// get vertexPtr / normalOff.
|
||||
|
@ -446,7 +446,7 @@ void CMeshMRMGeom::applySkinWithTangentSpace(CLod &lod, const CSkeletonModel *sk
|
|||
uint tangentSpaceTexCoord)
|
||||
{
|
||||
nlassert(_Skinned);
|
||||
if(_SkinWeights.size()==0)
|
||||
if(_SkinWeights.empty())
|
||||
return;
|
||||
|
||||
// get vertexPtr / normalOff / tangent space offset.
|
||||
|
@ -1468,7 +1468,7 @@ void CMeshMRMGeom::applyArrayRawSkinNormal4(CRawVertexNormalSkin4 *src, uint8 *
|
|||
void CMeshMRMGeom::applyRawSkinWithNormal(CLod &lod, CRawSkinNormalCache &rawSkinLod, const CSkeletonModel *skeleton, uint8 *vbHard, float alphaLod)
|
||||
{
|
||||
nlassert(_Skinned);
|
||||
if(_SkinWeights.size()==0)
|
||||
if(_SkinWeights.empty())
|
||||
return;
|
||||
|
||||
// Some assert
|
||||
|
|
|
@ -160,7 +160,7 @@ void CMeshMRMSkinnedGeom::CLod::buildPrimitiveBlock(uint renderPass, const CInde
|
|||
static NLMISC::CAABBoxExt makeBBox(const std::vector<CVector> &Vertices)
|
||||
{
|
||||
NLMISC::CAABBox ret;
|
||||
nlassert(Vertices.size());
|
||||
nlassert(!Vertices.empty());
|
||||
ret.setCenter(Vertices[0]);
|
||||
for(sint i=0;i<(sint)Vertices.size();i++)
|
||||
{
|
||||
|
@ -211,7 +211,7 @@ void CMeshMRMSkinnedGeom::build(CMesh::CMeshBuild &m,
|
|||
uint numMaxMaterial, const CMRMParameters ¶ms)
|
||||
{
|
||||
// Empty geometry?
|
||||
if(m.Vertices.size()==0 || m.Faces.size()==0)
|
||||
if(m.Vertices.empty() || m.Faces.empty())
|
||||
{
|
||||
_VBufferFinal.clear();
|
||||
_Lods.clear();
|
||||
|
@ -261,7 +261,7 @@ void CMeshMRMSkinnedGeom::build(CMesh::CMeshBuild &m,
|
|||
_LevelDetail.MaxFaceUsed= 0;
|
||||
_LevelDetail.MinFaceUsed= 0;
|
||||
// Count of primitive block
|
||||
if(_Lods.size()>0)
|
||||
if(!_Lods.empty())
|
||||
{
|
||||
uint pb;
|
||||
// Compute MinFaces.
|
||||
|
@ -421,7 +421,7 @@ void CMeshMRMSkinnedGeom::applyGeomorph(std::vector<CMRMWedgeGeom> &geoms, floa
|
|||
void CMeshMRMSkinnedGeom::applyGeomorphWithVBHardPtr(std::vector<CMRMWedgeGeom> &geoms, float alphaLod)
|
||||
{
|
||||
// no geomorphs? quit.
|
||||
if(geoms.size()==0)
|
||||
if(geoms.empty())
|
||||
return;
|
||||
|
||||
clamp(alphaLod, 0.f, 1.f);
|
||||
|
@ -579,7 +579,7 @@ inline sint CMeshMRMSkinnedGeom::chooseLod(float alphaMRM, float &alphaLod)
|
|||
void CMeshMRMSkinnedGeom::render(IDriver *drv, CTransformShape *trans, float polygonCount, uint32 rdrFlags, float globalAlpha)
|
||||
{
|
||||
nlassert(drv);
|
||||
if(_Lods.size()==0)
|
||||
if(_Lods.empty())
|
||||
return;
|
||||
|
||||
|
||||
|
@ -597,7 +597,7 @@ void CMeshMRMSkinnedGeom::render(IDriver *drv, CTransformShape *trans, float pol
|
|||
|
||||
// Render the choosen Lod.
|
||||
CLod &lod= _Lods[numLod];
|
||||
if(lod.RdrPass.size()==0)
|
||||
if(lod.RdrPass.empty())
|
||||
return;
|
||||
|
||||
|
||||
|
@ -757,7 +757,7 @@ sint CMeshMRMSkinnedGeom::renderSkinGroupGeom(CMeshMRMSkinnedInstance *mi, float
|
|||
|
||||
// Render the choosen Lod.
|
||||
CLod &lod= _Lods[numLod];
|
||||
if(lod.RdrPass.size()==0)
|
||||
if(lod.RdrPass.empty())
|
||||
// return no vertices added
|
||||
return 0;
|
||||
|
||||
|
|
|
@ -3119,7 +3119,7 @@ bool CMRMBuilder::buildMRMSewingMeshes(const CMesh::CMeshBuild &mbuild, uint nWa
|
|||
{
|
||||
nlassert(nWantedLods>=1);
|
||||
nlassert(divisor>=1);
|
||||
if(mbuild.Interfaces.size()==0)
|
||||
if(mbuild.Interfaces.empty())
|
||||
return false;
|
||||
// must have same size
|
||||
if(mbuild.InterfaceLinks.size()!=mbuild.Vertices.size())
|
||||
|
|
|
@ -604,7 +604,8 @@ void CPatch::addRefTessBlocks()
|
|||
uint i;
|
||||
|
||||
TessBlockRefCount++;
|
||||
if(TessBlocks.size()==0)
|
||||
|
||||
if (TessBlocks.empty())
|
||||
{
|
||||
// Allocate the tessblocks.
|
||||
//==========
|
||||
|
@ -1629,7 +1630,7 @@ void CPatch::serial(NLMISC::IStream &f)
|
|||
|
||||
// then just copy to TileColors.
|
||||
TileColors.resize(tmpArray.size());
|
||||
if(TileColors.size()>0)
|
||||
if(!TileColors.empty())
|
||||
{
|
||||
memcpy(&TileColors[0], &tmpArray[0], TileColors.size()*sizeof(CTileColor));
|
||||
}
|
||||
|
|
|
@ -1452,7 +1452,7 @@ void CPatch::computeSoftwareGeomorphAndAlpha()
|
|||
// Need only to fill CTessVertex, so do it only for FarVertices
|
||||
// Hence Geomorph is done twice on edges of patches!!.
|
||||
// If not too near for precise, fast compute of geomorph.
|
||||
if( TessBlocks.size()==0 )
|
||||
if( TessBlocks.empty() )
|
||||
{
|
||||
// Just update all vertices of master block.
|
||||
computeGeomorphVertexList(MasterBlock.FarVertexList);
|
||||
|
|
|
@ -540,7 +540,7 @@ bool CPatchDLMContext::generate(CPatch *patch, CTextureDLM *textureDLM, CPatch
|
|||
#ifndef NL_DLM_TILE_RES
|
||||
|
||||
// retrieve patch tileColor pointer.
|
||||
nlassert(_Patch->TileColors.size()>0);
|
||||
nlassert(!_Patch->TileColors.empty());
|
||||
CTileColor *tileColor= &_Patch->TileColors[0];
|
||||
|
||||
// skip 1 tiles colors per column and per row
|
||||
|
@ -898,7 +898,7 @@ void CPatchDLMContext::compileLighting(TCompileType compType, CRGBA modulateCt
|
|||
if(! (_IsSrcTextureFullBlack && _IsDstTextureFullBlack) )
|
||||
{
|
||||
// if lightMap allocated
|
||||
if(_LightMap.size()>0 && _DLMTexture)
|
||||
if(!_LightMap.empty() && _DLMTexture)
|
||||
{
|
||||
// If the srcTexture is full black (ie no pointLight influence touch it),
|
||||
if(_IsSrcTextureFullBlack)
|
||||
|
|
|
@ -226,7 +226,7 @@ void CPSFace::step(TPSProcessPass pass)
|
|||
else if (pass == PSMotion)
|
||||
{
|
||||
|
||||
if (_PrecompBasis.size()) // do we use precomputed basis ?
|
||||
if (!_PrecompBasis.empty()) // do we use precomputed basis ?
|
||||
{
|
||||
// rotate all precomputed basis
|
||||
for (CPSVector< CPlaneBasisPair >::V::iterator it = _PrecompBasis.begin(); it != _PrecompBasis.end(); ++it)
|
||||
|
@ -394,7 +394,7 @@ void CPSFace::deleteElement(uint32 index)
|
|||
NL_PS_FUNC(CPSFace_deleteElement)
|
||||
CPSQuad::deleteElement(index);
|
||||
deletePlaneBasisElement(index);
|
||||
if (_PrecompBasis.size()) // do we use precomputed basis ?
|
||||
if (!_PrecompBasis.empty()) // do we use precomputed basis ?
|
||||
{
|
||||
// replace ourself by the last element...
|
||||
_IndexInPrecompBasis[index] = _IndexInPrecompBasis[_Owner->getSize() - 1];
|
||||
|
@ -407,7 +407,7 @@ void CPSFace::resize(uint32 size)
|
|||
NL_PS_FUNC(CPSFace_resize)
|
||||
nlassert(size < (1 << 16));
|
||||
resizePlaneBasis(size);
|
||||
if (_PrecompBasis.size()) // do we use precomputed basis ?
|
||||
if (!_PrecompBasis.empty()) // do we use precomputed basis ?
|
||||
{
|
||||
_IndexInPrecompBasis.resize(size);
|
||||
}
|
||||
|
|
|
@ -1994,7 +1994,7 @@ void CPSConstraintMesh::deleteElement(uint32 index)
|
|||
deleteSizeElement(index);
|
||||
deletePlaneBasisElement(index);
|
||||
// TODO : avoid code cuplication with CPSFace ...
|
||||
if (_PrecompBasis.size()) // do we use precomputed basis ?
|
||||
if (!_PrecompBasis.empty()) // do we use precomputed basis ?
|
||||
{
|
||||
// replace ourself by the last element...
|
||||
_IndexInPrecompBasis[index] = _IndexInPrecompBasis[_Owner->getSize() - 1];
|
||||
|
@ -2011,7 +2011,7 @@ void CPSConstraintMesh::resize(uint32 size)
|
|||
resizeSize(size);
|
||||
resizePlaneBasis(size);
|
||||
// TODO : avoid code cuplication with CPSFace ...
|
||||
if (_PrecompBasis.size()) // do we use precomputed basis ?
|
||||
if (!_PrecompBasis.empty()) // do we use precomputed basis ?
|
||||
{
|
||||
_IndexInPrecompBasis.resize(size);
|
||||
}
|
||||
|
|
|
@ -229,7 +229,7 @@ void CQuadEffect::processPoly(const TPoint2DVect &poly
|
|||
static TRasters rDest;
|
||||
float currY;
|
||||
makeRasters(poly, quadWidth, quadHeight, rDest, currY);
|
||||
if (dest.size())
|
||||
if (!dest.empty())
|
||||
{
|
||||
TRasters::const_iterator it, endIt = rDest.end();
|
||||
for (it = rDest.begin(); it != endIt; ++it)
|
||||
|
|
|
@ -705,7 +705,7 @@ void CShadowMapManager::renderProject(CScene *scene)
|
|||
}
|
||||
driver->activeVertexBuffer (CopyQuads);
|
||||
|
||||
if (_ShadowCasters.size()>0)
|
||||
if (!_ShadowCasters.empty())
|
||||
{
|
||||
// get the transform to compute shadow map.
|
||||
CTransform *sc= _ShadowCasters[0];
|
||||
|
|
|
@ -119,7 +119,7 @@ bool CTextureDLM::canCreateLightMap(uint w, uint h)
|
|||
return true;
|
||||
|
||||
// If empty, test if there is an empty block.
|
||||
return _EmptyBlocks.size()>0;
|
||||
return !_EmptyBlocks.empty();
|
||||
}
|
||||
|
||||
|
||||
|
@ -166,7 +166,7 @@ bool CTextureDLM::createLightMap(uint w, uint h, uint &x, uint &y)
|
|||
if(_FreeBlocks[lMapType]==NULL)
|
||||
{
|
||||
// list is empty => allocate a block from _EmptyBlocks.
|
||||
nlassert(_EmptyBlocks.size()>0);
|
||||
nlassert(!_EmptyBlocks.empty());
|
||||
|
||||
// pop a block from empty list
|
||||
CBlock *block= &_Blocks[_EmptyBlocks.back()];
|
||||
|
|
|
@ -108,7 +108,7 @@ void CTileBank::serial(NLMISC::IStream &f) throw(NLMISC::EStream)
|
|||
if (f.isReading())
|
||||
{
|
||||
// Checks
|
||||
nlassert (_DisplacementMap.size()>0);
|
||||
nlassert (!_DisplacementMap.empty());
|
||||
|
||||
// Set first empty
|
||||
_DisplacementMap[0].setEmpty ();
|
||||
|
@ -543,7 +543,7 @@ CTileNoiseMap *CTileBank::getTileNoiseMap (uint tileNumber, uint tileSubNoise)
|
|||
}
|
||||
}
|
||||
|
||||
if (_DisplacementMap.size()==0 || _DisplacementMap[0]._TileNoiseMap)
|
||||
if (_DisplacementMap.empty() || _DisplacementMap[0]._TileNoiseMap)
|
||||
return NULL;
|
||||
|
||||
// Checks
|
||||
|
|
|
@ -71,7 +71,7 @@ void CVegetableBlendLayerModel::render(IDriver *driver)
|
|||
|
||||
nlassert(VegetableManager);
|
||||
|
||||
if(SortBlocks.size()==0)
|
||||
if(SortBlocks.empty())
|
||||
return;
|
||||
|
||||
// Setup VegetableManager renderState (like pre-setuped material)
|
||||
|
|
|
@ -1019,12 +1019,12 @@ void CVegetableManager::reserveIgCompile(CVegetableInstanceGroup *ig, const CV
|
|||
{
|
||||
CVegetableInstanceGroup::CVegetableRdrPass &vegetRdrPass= ig->_RdrPass[rdrPass];
|
||||
nlassert(vegetRdrPass.TriangleIndices.getNumIndexes()==0);
|
||||
nlassert(vegetRdrPass.TriangleLocalIndices.size()==0);
|
||||
nlassert(vegetRdrPass.Vertices.size()==0);
|
||||
nlassert(vegetRdrPass.LightedInstances.size()==0);
|
||||
nlassert(vegetRdrPass.TriangleLocalIndices.empty());
|
||||
nlassert(vegetRdrPass.Vertices.empty());
|
||||
nlassert(vegetRdrPass.LightedInstances.empty());
|
||||
}
|
||||
// Do the same for all quadrants of the zsort rdrPass.
|
||||
nlassert(ig->_TriangleQuadrantOrderArray.size()==0);
|
||||
nlassert(ig->_TriangleQuadrantOrderArray.empty());
|
||||
nlassert(ig->_TriangleQuadrantOrderNumTriangles==0);
|
||||
|
||||
|
||||
|
@ -2553,7 +2553,7 @@ bool CVegetableManager::updateLightingIGPart()
|
|||
}
|
||||
CVegetableInstanceGroup::CVegetableRdrPass &vegetRdrPass= _ULRootIg->_RdrPass[_ULCurrentIgRdrPass];
|
||||
|
||||
// if all instances are processed for this pass (especially if size()==0 !!)
|
||||
// if all instances are processed for this pass (especially if empty() !!)
|
||||
if(_ULCurrentIgInstance>= vegetRdrPass.LightedInstances.size())
|
||||
{
|
||||
// skip to the next rdrPass.
|
||||
|
|
|
@ -186,7 +186,7 @@ bool CVegetableVBAllocator::exceedMaxVertexInBufferHard(uint numAddVerts) cons
|
|||
uint CVegetableVBAllocator::allocateVertex()
|
||||
{
|
||||
// if no more free, allocate.
|
||||
if( _VertexFreeMemory.size()==0 )
|
||||
if( _VertexFreeMemory.empty() )
|
||||
{
|
||||
// enlarge capacity.
|
||||
uint newResize;
|
||||
|
|
|
@ -500,7 +500,7 @@ void CWaterModel::traverseRender()
|
|||
sint startY;
|
||||
projPoly.computeBorders(rasters, startY);
|
||||
|
||||
if (rasters.size())
|
||||
if (!rasters.empty())
|
||||
{
|
||||
//===========================//
|
||||
// perform Water animation //
|
||||
|
|
|
@ -1126,7 +1126,7 @@ void CZone::refineAll()
|
|||
{
|
||||
nlassert(Compiled);
|
||||
|
||||
if(Patchs.size()==0)
|
||||
if(Patchs.empty())
|
||||
return;
|
||||
|
||||
// DO NOT do a forceNoRenderClip(), to avoid big allocation of Near/Far VB vertices in driver.
|
||||
|
@ -1150,7 +1150,7 @@ void CZone::averageTesselationVertices()
|
|||
{
|
||||
nlassert(Compiled);
|
||||
|
||||
if(Patchs.size()==0)
|
||||
if(Patchs.empty())
|
||||
return;
|
||||
|
||||
// averageTesselationVertices of ALL patchs.
|
||||
|
@ -1250,8 +1250,10 @@ void CZone::resetRenderFarAndDeleteVBFV()
|
|||
void CZone::forceMergeAtTileLevel()
|
||||
{
|
||||
CPatch *pPatch=0;
|
||||
if(Patchs.size()>0)
|
||||
|
||||
if (!Patchs.empty())
|
||||
pPatch= &(*Patchs.begin());
|
||||
|
||||
for(sint n=(sint)Patchs.size();n>0;n--, pPatch++)
|
||||
{
|
||||
pPatch->forceMergeAtTileLevel();
|
||||
|
@ -1446,7 +1448,7 @@ void CZone::applyHeightField(const CLandscape &landScape)
|
|||
vector<CBezierPatch> patchs;
|
||||
|
||||
// no patch, do nothing.
|
||||
if(Patchs.size()==0)
|
||||
if(Patchs.empty())
|
||||
return;
|
||||
|
||||
// 0. Unpack patchs to Bezier Patchs.
|
||||
|
|
|
@ -3113,7 +3113,7 @@ void CZoneLighter::addWaterShape(CWaterShape *shape, const NLMISC::CMatrix &MT)
|
|||
// ***********************************************************
|
||||
void CZoneLighter::makeQuadGridFromWaterShapes(NLMISC::CAABBox zoneBBox)
|
||||
{
|
||||
if (!_WaterShapes.size()) return;
|
||||
if (_WaterShapes.empty()) return;
|
||||
|
||||
NLMISC::CAABBox tmpBox;
|
||||
|
||||
|
|
|
@ -43,8 +43,8 @@ namespace NLGUI
|
|||
_BmpLeftW= _BmpMiddleW= _BmpRightW= _BmpH= 0;
|
||||
_WMargin= 0;
|
||||
_WMin= 0;
|
||||
_TextX= -2;
|
||||
_TextY= -2;
|
||||
_TextX= 0;
|
||||
_TextY= 0;
|
||||
_Setuped= false;
|
||||
_ViewText= NULL;
|
||||
_IsViewTextId= false;
|
||||
|
@ -602,7 +602,7 @@ namespace NLGUI
|
|||
_WMin= max(_WMin, _BmpLeftW + _BmpMiddleW + _BmpRightW);
|
||||
|
||||
// TextY
|
||||
_TextY= -2;
|
||||
_TextY= 0;
|
||||
prop = (char*) xmlGetProp( cur, (xmlChar*)"text_y" );
|
||||
if (prop)
|
||||
{
|
||||
|
|
|
@ -159,7 +159,7 @@ namespace NLGUI
|
|||
}
|
||||
|
||||
// resize H
|
||||
if(entries.size()>0)
|
||||
if (!entries.empty())
|
||||
{
|
||||
CInterfaceGroup *colEnclosing = entries[0]->getTargetColumn();
|
||||
if (colEnclosing && !colEnclosing->getGroups().empty())
|
||||
|
|
|
@ -50,11 +50,12 @@ using namespace std;
|
|||
using namespace NLMISC;
|
||||
|
||||
|
||||
// Default timeout to connect a server
|
||||
#define DEFAULT_RYZOM_CONNECTION_TIMEOUT (30.0)
|
||||
// Default maximum time the request is allowed to take
|
||||
#define DEFAULT_RYZOM_CONNECTION_TIMEOUT (300.0)
|
||||
// Allow up to 10 redirects, then give up
|
||||
#define DEFAULT_RYZOM_REDIRECT_LIMIT (10)
|
||||
//
|
||||
#define FONT_WEIGHT_NORMAL 400
|
||||
#define FONT_WEIGHT_BOLD 700
|
||||
|
||||
namespace NLGUI
|
||||
|
@ -316,6 +317,11 @@ namespace NLGUI
|
|||
curl_easy_setopt(curl, CURLOPT_NOPROGRESS, true);
|
||||
curl_easy_setopt(curl, CURLOPT_URL, finalUrl.c_str());
|
||||
|
||||
std::string userAgent = options.appName + "/" + options.appVersion;
|
||||
curl_easy_setopt(curl, CURLOPT_USERAGENT, userAgent.c_str());
|
||||
|
||||
sendCookies(curl, _DocumentDomain, _TrustedDomain);
|
||||
|
||||
curl_easy_setopt(curl, CURLOPT_WRITEDATA, fp);
|
||||
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, fwrite);
|
||||
|
||||
|
@ -338,14 +344,7 @@ namespace NLGUI
|
|||
#ifdef LOG_DL
|
||||
nlwarning("Init Image Download");
|
||||
#endif
|
||||
/*
|
||||
// Get current flag
|
||||
int tmpFlag = _CrtSetDbgFlag( _CRTDBG_REPORT_FLAG );
|
||||
// Turn on leak-checking bit
|
||||
tmpFlag |= _CRTDBG_CHECK_ALWAYS_DF;
|
||||
// Set flag to the new value
|
||||
_CrtSetDbgFlag( tmpFlag );
|
||||
*/
|
||||
|
||||
string pathName = "cache";
|
||||
if ( ! CFile::isExists( pathName ) )
|
||||
CFile::createDirectory( pathName );
|
||||
|
@ -506,7 +505,7 @@ namespace NLGUI
|
|||
}
|
||||
else
|
||||
{
|
||||
receiveCookies(_CurlWWW->Request, HTTPCurrentDomain, _TrustedDomain);
|
||||
receiveCookies(_CurlWWW->Request, _DocumentDomain, _TrustedDomain);
|
||||
|
||||
// redirect, get the location and try browse again
|
||||
// we cant use curl redirection because 'addHTTPGetParams()' must be called on new destination
|
||||
|
@ -533,7 +532,7 @@ namespace NLGUI
|
|||
}
|
||||
else
|
||||
{
|
||||
receiveCookies(_CurlWWW->Request, HTTPCurrentDomain, _TrustedDomain);
|
||||
receiveCookies(_CurlWWW->Request, _DocumentDomain, _TrustedDomain);
|
||||
|
||||
_RedirectsRemaining = DEFAULT_RYZOM_REDIRECT_LIMIT;
|
||||
|
||||
|
@ -628,32 +627,6 @@ namespace NLGUI
|
|||
curl_multi_cleanup(MultiCurl);
|
||||
}
|
||||
|
||||
/*
|
||||
void dolibcurltest()
|
||||
{
|
||||
nlwarning("start libcurl test");
|
||||
|
||||
initImageDownload();
|
||||
|
||||
addImageDownload("http://www.ryzom.com/en/");
|
||||
addImageDownload("http://www.ryzom.com/fr/");
|
||||
addImageDownload("http://www.ryzom.com/de/");
|
||||
|
||||
do
|
||||
{
|
||||
checkImageDownload();
|
||||
nlwarning("continue to sleep");
|
||||
nlSleep(300);
|
||||
}
|
||||
while(RunningCurls);
|
||||
|
||||
releaseImageDownload();
|
||||
|
||||
nlwarning("end libcurl test");
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
class CGroupListAdaptor : public CInterfaceGroup
|
||||
{
|
||||
public:
|
||||
|
@ -726,10 +699,6 @@ namespace NLGUI
|
|||
|
||||
// Build a UTF8 string
|
||||
string inputString(buf, buf+len);
|
||||
// inputString.resize (len);
|
||||
// uint i;
|
||||
// for (i=0; i<(uint)len; i++)
|
||||
// inputString[i] = buf[i];
|
||||
|
||||
if (_ParsingLua && _TrustedDomain)
|
||||
{
|
||||
|
@ -747,7 +716,6 @@ namespace NLGUI
|
|||
ucstring tmp;
|
||||
tmp.reserve(len);
|
||||
uint ucLen = (uint)inputUCString.size();
|
||||
//uint ucLenWithoutSpace = 0;
|
||||
for (uint i=0; i<ucLen; i++)
|
||||
{
|
||||
ucchar output;
|
||||
|
@ -768,22 +736,7 @@ namespace NLGUI
|
|||
if (keep)
|
||||
{
|
||||
tmp.push_back(output);
|
||||
/*
|
||||
// Break if the string is more than 50 chars long without space
|
||||
if (output != ucchar(' '))
|
||||
{
|
||||
ucLenWithoutSpace++;
|
||||
if (ucLenWithoutSpace == 50)
|
||||
{
|
||||
tmp.push_back(ucchar(' '));
|
||||
ucLenWithoutSpace = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ucLenWithoutSpace = 0;
|
||||
}
|
||||
*/ }
|
||||
}
|
||||
}
|
||||
|
||||
if (!tmp.empty())
|
||||
|
@ -801,69 +754,6 @@ namespace NLGUI
|
|||
|
||||
// ***************************************************************************
|
||||
|
||||
void CGroupHTML::addLink (uint element_number, const std::vector<bool> &present, const std::vector<const char *> &value)
|
||||
{
|
||||
if (_Browsing)
|
||||
{
|
||||
if (element_number == HTML_A)
|
||||
{
|
||||
registerAnchorName(MY_HTML_A);
|
||||
|
||||
// #fragment works with both ID and NAME so register both
|
||||
if (present[MY_HTML_A_NAME] && value[MY_HTML_A_NAME])
|
||||
_AnchorName.push_back(value[MY_HTML_A_NAME]);
|
||||
|
||||
if (present[MY_HTML_A_HREF] && value[MY_HTML_A_HREF])
|
||||
{
|
||||
string suri = value[MY_HTML_A_HREF];
|
||||
if(suri.find("ah:") == 0)
|
||||
{
|
||||
if (_TrustedDomain)
|
||||
_Link.push_back (suri);
|
||||
else
|
||||
_Link.push_back ("");
|
||||
}
|
||||
else if (_TrustedDomain && suri[0] == '#' && _LuaHrefHack)
|
||||
{
|
||||
// Direct url (hack for lua beginElement)
|
||||
_Link.push_back (suri.substr(1));
|
||||
}
|
||||
else
|
||||
{
|
||||
// convert href from "?key=val" into "http://domain.com/?key=val"
|
||||
_Link.push_back(getAbsoluteUrl(suri));
|
||||
}
|
||||
|
||||
for(uint8 i = MY_HTML_A_ACCESSKEY; i < MY_HTML_A_Z_ACTION_SHORTCUT; i++)
|
||||
{
|
||||
if (present[i] && value[i])
|
||||
{
|
||||
string title = value[i];
|
||||
// nlinfo("key %d = %s", i, title.c_str());
|
||||
}
|
||||
}
|
||||
//nlinfo("key of TITLE is : %d", MY_HTML_A_Z_ACTION_PARAMS);
|
||||
if (present[MY_HTML_A_Z_ACTION_PARAMS] && value[MY_HTML_A_Z_ACTION_PARAMS])
|
||||
{
|
||||
string title = value[MY_HTML_A_Z_ACTION_PARAMS];
|
||||
_LinkTitle.push_back(title);
|
||||
}
|
||||
else
|
||||
_LinkTitle.push_back("");
|
||||
}
|
||||
else
|
||||
{
|
||||
_Link.push_back("");
|
||||
_LinkTitle.push_back("");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ***************************************************************************
|
||||
|
||||
#define getCellsParameters(prefix,inherit) \
|
||||
{\
|
||||
CGroupHTML::CCellParams cellParams; \
|
||||
|
@ -872,7 +762,7 @@ namespace NLGUI
|
|||
cellParams = _CellParams.back(); \
|
||||
} \
|
||||
if (present[prefix##_BGCOLOR] && value[prefix##_BGCOLOR]) \
|
||||
cellParams.BgColor = getColor (value[prefix##_BGCOLOR]); \
|
||||
scanHTMLColor(value[prefix##_BGCOLOR], cellParams.BgColor); \
|
||||
if (present[prefix##_L_MARGIN] && value[prefix##_L_MARGIN]) \
|
||||
fromString(value[prefix##_L_MARGIN], cellParams.LeftMargin); \
|
||||
if (present[prefix##_NOWRAP]) \
|
||||
|
@ -923,6 +813,30 @@ namespace NLGUI
|
|||
return src;
|
||||
}
|
||||
|
||||
static float hueToRgb(float m1, float m2, float h)
|
||||
{
|
||||
if (h < 0) h += 1.0f;
|
||||
if (h > 1) h -= 1.0f;
|
||||
if (h*6 < 1.0f) return m1 + (m2 - m1)*h*6;
|
||||
if (h*2 < 1.0f) return m2;
|
||||
if (h*3 < 2.0f) return m1 + (m2 - m1) * (2.0f/3.0f - h)*6;
|
||||
return m1;
|
||||
}
|
||||
|
||||
static void hslToRgb(float h, float s, float l, CRGBA &result)
|
||||
{
|
||||
float m1, m2;
|
||||
if (l <= 0.5f)
|
||||
m2 = l * (s + 1.0f);
|
||||
else
|
||||
m2 = l + s - l * s;
|
||||
m1 = l*2 - m2;
|
||||
|
||||
result.R = 255 * hueToRgb(m1, m2, h + 1.0f/3.0f);
|
||||
result.G = 255 * hueToRgb(m1, m2, h);
|
||||
result.B = 255 * hueToRgb(m1, m2, h - 1.0f/3.0f);
|
||||
}
|
||||
|
||||
class CNameToCol
|
||||
{
|
||||
public:
|
||||
|
@ -1085,6 +999,37 @@ namespace NLGUI
|
|||
if (*src == '#')
|
||||
{
|
||||
++src;
|
||||
if (strlen(src) == 3 || strlen(src) == 4)
|
||||
{
|
||||
bool hasAlpha = (strlen(src) == 4);
|
||||
// check RGB for valid hex
|
||||
if (isHexa(src[0]) && isHexa(src[1]) && isHexa(src[2]))
|
||||
{
|
||||
// check optional A for valid hex
|
||||
if (hasAlpha && !isHexa(src[3])) return false;
|
||||
|
||||
dest.R = convertHexa(src[0]);
|
||||
dest.G = convertHexa(src[1]);
|
||||
dest.B = convertHexa(src[2]);
|
||||
|
||||
dest.R = dest.R << 4 | dest.R;
|
||||
dest.G = dest.G << 4 | dest.G;
|
||||
dest.B = dest.B << 4 | dest.B;
|
||||
|
||||
if (hasAlpha)
|
||||
{
|
||||
dest.A = convertHexa(src[3]);
|
||||
dest.A = dest.A << 4 | dest.A;
|
||||
}
|
||||
else
|
||||
dest.A = 255;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
CRGBA result;
|
||||
src = scanColorComponent(src, result.R); if (!src) return false;
|
||||
src = scanColorComponent(src, result.G); if (!src) return false;
|
||||
|
@ -1098,7 +1043,101 @@ namespace NLGUI
|
|||
dest = result;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
|
||||
if (strnicmp(src, "rgb(", 4) == 0 || strnicmp(src, "rgba(", 5) == 0)
|
||||
{
|
||||
src += 4;
|
||||
if (*src == '(') src++;
|
||||
|
||||
vector<string> parts;
|
||||
NLMISC::splitString(src, ",", parts);
|
||||
if (parts.size() >= 3)
|
||||
{
|
||||
CRGBA result;
|
||||
sint tmpv;
|
||||
float tmpf;
|
||||
|
||||
// R
|
||||
if (getPercentage(tmpv, tmpf, parts[0].c_str())) tmpv = 255 * tmpf;
|
||||
clamp(tmpv, 0, 255);
|
||||
result.R = tmpv;
|
||||
|
||||
// G
|
||||
if (getPercentage(tmpv, tmpf, parts[1].c_str())) tmpv = 255 * tmpf;
|
||||
clamp(tmpv, 0, 255);
|
||||
result.G = tmpv;
|
||||
|
||||
// B
|
||||
if (getPercentage(tmpv, tmpf, parts[2].c_str())) tmpv = 255 * tmpf;
|
||||
clamp(tmpv, 0, 255);
|
||||
result.B = tmpv;
|
||||
|
||||
// A
|
||||
if (parts.size() == 4)
|
||||
{
|
||||
if (!fromString(parts[3], tmpf)) return false;
|
||||
if (parts[3].find_first_of("%") != std::string::npos)
|
||||
tmpf /= 100;
|
||||
|
||||
tmpv = 255 * tmpf;
|
||||
clamp(tmpv, 0, 255);
|
||||
result.A = tmpv;
|
||||
}
|
||||
else
|
||||
result.A = 255;
|
||||
|
||||
dest = result;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
if (strnicmp(src, "hsl(", 4) == 0 || strnicmp(src, "hsla(", 5) == 0)
|
||||
{
|
||||
src += 4;
|
||||
if (*src == '(') src++;
|
||||
|
||||
vector<string> parts;
|
||||
NLMISC::splitString(src, ",", parts);
|
||||
if (parts.size() >= 3)
|
||||
{
|
||||
sint tmpv;
|
||||
float h, s, l;
|
||||
// hue
|
||||
if (!fromString(parts[0], tmpv)) return false;
|
||||
tmpv = ((tmpv % 360) + 360) % 360;
|
||||
h = (float) tmpv / 360.0f;
|
||||
|
||||
// saturation
|
||||
if (!getPercentage(tmpv, s, parts[1].c_str())) return false;
|
||||
clamp(s, 0.0f, 1.0f);
|
||||
|
||||
// lightness
|
||||
if (!getPercentage(tmpv, l, parts[2].c_str())) return false;
|
||||
clamp(l, 0.0f, 1.0f);
|
||||
|
||||
CRGBA result;
|
||||
hslToRgb(h, s, l, result);
|
||||
|
||||
// A
|
||||
if (parts.size() == 4)
|
||||
{
|
||||
float tmpf;
|
||||
if (!fromString(parts[3], tmpf)) return false;
|
||||
if (parts[3].find_first_of("%") != std::string::npos)
|
||||
tmpf /= 100;
|
||||
clamp(tmpf, 0.0f, 1.0f);
|
||||
result.A = 255 * tmpf;
|
||||
}
|
||||
|
||||
dest = result;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
{
|
||||
// slow but should suffice for now
|
||||
for(uint k = 0; k < sizeofarray(htmlColorNameToRGBA); ++k)
|
||||
|
@ -1166,7 +1205,7 @@ namespace NLGUI
|
|||
|
||||
pos = toLower(content).find("url=");
|
||||
if (pos != string::npos)
|
||||
_RefreshUrl = content.substr(pos + 4);
|
||||
_RefreshUrl = getAbsoluteUrl(content.substr(pos + 4));
|
||||
}
|
||||
|
||||
_NextRefreshTime += timeSec;
|
||||
|
@ -1176,7 +1215,10 @@ namespace NLGUI
|
|||
break;
|
||||
case HTML_A:
|
||||
{
|
||||
registerAnchorName(MY_HTML_A);
|
||||
|
||||
CStyleParams style;
|
||||
style.FontFamily = getFontFamily();
|
||||
style.FontSize = getFontSize();
|
||||
style.TextColor = LinkColor;
|
||||
style.Underlined = true;
|
||||
|
@ -1185,21 +1227,45 @@ namespace NLGUI
|
|||
if (present[HTML_A_STYLE] && value[HTML_A_STYLE])
|
||||
getStyleParams(value[HTML_A_STYLE], style);
|
||||
|
||||
_FontFamily.push_back(style.FontFamily);
|
||||
_FontSize.push_back(style.FontSize);
|
||||
_TextColor.push_back(style.TextColor);
|
||||
_FontUnderlined.push_back(style.Underlined);
|
||||
_FontStrikeThrough.push_back(style.StrikeThrough);
|
||||
_GlobalColor.push_back(LinkColorGlobalColor);
|
||||
_A.push_back(true);
|
||||
_Link.push_back ("");
|
||||
_LinkTitle.push_back("");
|
||||
_LinkClass.push_back("");
|
||||
|
||||
// #fragment works with both ID and NAME so register both
|
||||
if (present[MY_HTML_A_NAME] && value[MY_HTML_A_NAME])
|
||||
_AnchorName.push_back(value[MY_HTML_A_NAME]);
|
||||
if (present[MY_HTML_A_TITLE] && value[MY_HTML_A_TITLE])
|
||||
_LinkTitle.push_back(value[MY_HTML_A_TITLE]);
|
||||
_LinkTitle.back() = value[MY_HTML_A_TITLE];
|
||||
if (present[MY_HTML_A_CLASS] && value[MY_HTML_A_CLASS])
|
||||
_LinkClass.push_back(value[MY_HTML_A_CLASS]);
|
||||
|
||||
_LinkClass.back() = value[MY_HTML_A_CLASS];
|
||||
if (present[MY_HTML_A_HREF] && value[MY_HTML_A_HREF])
|
||||
{
|
||||
string suri = value[MY_HTML_A_HREF];
|
||||
if(suri.find("ah:") == 0)
|
||||
{
|
||||
if (_TrustedDomain)
|
||||
_Link.back() = suri;
|
||||
}
|
||||
else if (_TrustedDomain && suri[0] == '#' && _LuaHrefHack)
|
||||
{
|
||||
// Direct url (hack for lua beginElement)
|
||||
_Link.back() = suri.substr(1);
|
||||
}
|
||||
else
|
||||
{
|
||||
// convert href from "?key=val" into "http://domain.com/?key=val"
|
||||
_Link.back() = getAbsoluteUrl(suri);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case HTML_DIV:
|
||||
{
|
||||
_BlockLevelElement.push_back(true);
|
||||
|
@ -1286,7 +1352,6 @@ namespace NLGUI
|
|||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case HTML_FONT:
|
||||
{
|
||||
bool found = false;
|
||||
|
@ -1323,8 +1388,9 @@ namespace NLGUI
|
|||
{
|
||||
if (present[HTML_BODY_BGCOLOR] && value[HTML_BODY_BGCOLOR])
|
||||
{
|
||||
CRGBA bgColor = getColor (value[HTML_BODY_BGCOLOR]);
|
||||
setBackgroundColor (bgColor);
|
||||
CRGBA bgColor;
|
||||
if (scanHTMLColor(value[HTML_BODY_BGCOLOR], bgColor))
|
||||
setBackgroundColor (bgColor);
|
||||
}
|
||||
|
||||
string style;
|
||||
|
@ -1504,14 +1570,25 @@ namespace NLGUI
|
|||
if (present[MY_HTML_INPUT_ALT] && value[MY_HTML_INPUT_ALT])
|
||||
tooltip = value[MY_HTML_INPUT_ALT];
|
||||
|
||||
// by default not inherited, font family defaults to system font
|
||||
CStyleParams style;
|
||||
style.TextColor = TextColor;
|
||||
style.FontSize = TextFontSize;
|
||||
style.FontWeight = FONT_WEIGHT_NORMAL;
|
||||
style.FontOblique = false;
|
||||
|
||||
if (present[MY_HTML_INPUT_STYLE] && value[MY_HTML_INPUT_STYLE])
|
||||
getStyleParams(value[MY_HTML_INPUT_STYLE], style);
|
||||
|
||||
_TextColor.push_back(style.TextColor);
|
||||
_FontFamily.push_back(style.FontFamily);
|
||||
_FontSize.push_back(style.FontSize);
|
||||
_FontWeight.push_back(style.FontWeight);
|
||||
_FontOblique.push_back(style.FontOblique);
|
||||
|
||||
string type = toLower(value[MY_HTML_INPUT_TYPE]);
|
||||
if (type == "image")
|
||||
{
|
||||
CStyleParams style;
|
||||
// width, height from inline css
|
||||
if (present[MY_HTML_INPUT_STYLE] && value[MY_HTML_INPUT_STYLE])
|
||||
getStyleParams(value[MY_HTML_INPUT_STYLE], style);
|
||||
|
||||
// The submit button
|
||||
string name;
|
||||
string normal;
|
||||
|
@ -1602,9 +1679,6 @@ namespace NLGUI
|
|||
getParagraph()->addChild (buttonGroup);
|
||||
paragraphChange ();
|
||||
}
|
||||
|
||||
// addButton (CCtrlTextButton::PushButton, name, normal, pushed.empty()?normal:pushed, over,
|
||||
// globalColor, "html_submit_form", param.c_str(), tooltip);
|
||||
}
|
||||
else if (type == "text")
|
||||
{
|
||||
|
@ -1722,6 +1796,12 @@ namespace NLGUI
|
|||
_Forms.back().Entries.push_back (entry);
|
||||
}
|
||||
}
|
||||
|
||||
popIfNotEmpty(_FontFamily);
|
||||
popIfNotEmpty(_FontSize);
|
||||
popIfNotEmpty(_TextColor);
|
||||
popIfNotEmpty(_FontWeight);
|
||||
popIfNotEmpty(_FontOblique);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -1834,7 +1914,29 @@ namespace NLGUI
|
|||
newParagraph(PBeginSpace);
|
||||
break;
|
||||
case HTML_PRE:
|
||||
_PRE.push_back(true);
|
||||
{
|
||||
CStyleParams style;
|
||||
style.TextColor = getTextColor();
|
||||
style.FontFamily = "monospace";
|
||||
style.FontSize = getFontSize();
|
||||
style.FontWeight = getFontWeight();
|
||||
style.FontOblique = getFontOblique();
|
||||
style.Underlined = getFontUnderlined();
|
||||
style.StrikeThrough = getFontStrikeThrough();
|
||||
|
||||
if (present[HTML_PRE_STYLE] && value[HTML_PRE_STYLE])
|
||||
getStyleParams(value[HTML_PRE_STYLE], style);
|
||||
|
||||
_TextColor.push_back(style.TextColor);
|
||||
_FontFamily.push_back(style.FontFamily);
|
||||
_FontSize.push_back(style.FontSize);
|
||||
_FontWeight.push_back(style.FontWeight);
|
||||
_FontOblique.push_back(style.FontOblique);
|
||||
_FontUnderlined.push_back(style.Underlined);
|
||||
_FontStrikeThrough.push_back(style.StrikeThrough);
|
||||
|
||||
_PRE.push_back(true);
|
||||
}
|
||||
break;
|
||||
case HTML_TABLE:
|
||||
{
|
||||
|
@ -1851,7 +1953,7 @@ namespace NLGUI
|
|||
if (present[MY_HTML_TABLE_BORDER] && value[MY_HTML_TABLE_BORDER])
|
||||
fromString(value[MY_HTML_TABLE_BORDER], table->Border);
|
||||
if (present[MY_HTML_TABLE_BORDERCOLOR] && value[MY_HTML_TABLE_BORDERCOLOR])
|
||||
table->BorderColor = getColor (value[MY_HTML_TABLE_BORDERCOLOR]);
|
||||
scanHTMLColor(value[MY_HTML_TABLE_BORDERCOLOR], table->BorderColor);
|
||||
if (present[MY_HTML_TABLE_CELLSPACING] && value[MY_HTML_TABLE_CELLSPACING])
|
||||
fromString(value[MY_HTML_TABLE_CELLSPACING], table->CellSpacing);
|
||||
if (present[MY_HTML_TABLE_CELLPADDING] && value[MY_HTML_TABLE_CELLPADDING])
|
||||
|
@ -1958,9 +2060,27 @@ namespace NLGUI
|
|||
}
|
||||
break;
|
||||
case HTML_TEXTAREA:
|
||||
_PRE.push_back(true);
|
||||
|
||||
// Got one form ?
|
||||
if (!(_Forms.empty()))
|
||||
{
|
||||
// not inherited by default, font family defaults to system font
|
||||
CStyleParams style;
|
||||
style.TextColor = TextColor;
|
||||
style.FontWeight = FONT_WEIGHT_NORMAL;
|
||||
style.FontOblique = false;
|
||||
style.FontSize = TextFontSize;
|
||||
|
||||
if (present[MY_HTML_TEXTAREA_STYLE] && value[MY_HTML_TEXTAREA_STYLE])
|
||||
getStyleParams(value[MY_HTML_TEXTAREA_STYLE], style);
|
||||
|
||||
_TextColor.push_back(style.TextColor);
|
||||
_FontFamily.push_back(style.FontFamily);
|
||||
_FontSize.push_back(style.FontSize);
|
||||
_FontWeight.push_back(style.FontWeight);
|
||||
_FontOblique.push_back(style.FontOblique);
|
||||
|
||||
// read general property
|
||||
string templateName;
|
||||
|
||||
|
@ -2043,6 +2163,7 @@ namespace NLGUI
|
|||
{
|
||||
CStyleParams style;
|
||||
style.TextColor = getTextColor();
|
||||
style.FontFamily = getFontFamily();
|
||||
style.FontSize = getFontSize();
|
||||
style.FontWeight = getFontWeight();
|
||||
style.FontOblique = getFontOblique();
|
||||
|
@ -2053,6 +2174,7 @@ namespace NLGUI
|
|||
getStyleParams(value[MY_HTML_SPAN_STYLE], style);
|
||||
|
||||
_TextColor.push_back(style.TextColor);
|
||||
_FontFamily.push_back(style.FontFamily);
|
||||
_FontSize.push_back(style.FontSize);
|
||||
_FontWeight.push_back(style.FontWeight);
|
||||
_FontOblique.push_back(style.FontOblique);
|
||||
|
@ -2207,6 +2329,7 @@ namespace NLGUI
|
|||
popIfNotEmpty (_FontSize);
|
||||
break;
|
||||
case HTML_A:
|
||||
popIfNotEmpty (_FontFamily);
|
||||
popIfNotEmpty (_FontSize);
|
||||
popIfNotEmpty (_TextColor);
|
||||
popIfNotEmpty (_FontUnderlined);
|
||||
|
@ -2232,6 +2355,13 @@ namespace NLGUI
|
|||
endParagraph();
|
||||
break;
|
||||
case HTML_PRE:
|
||||
popIfNotEmpty (_FontFamily);
|
||||
popIfNotEmpty (_FontSize);
|
||||
popIfNotEmpty (_FontWeight);
|
||||
popIfNotEmpty (_FontOblique);
|
||||
popIfNotEmpty (_TextColor);
|
||||
popIfNotEmpty (_FontUnderlined);
|
||||
popIfNotEmpty (_FontStrikeThrough);
|
||||
popIfNotEmpty (_PRE);
|
||||
break;
|
||||
case HTML_DIV:
|
||||
|
@ -2277,7 +2407,15 @@ namespace NLGUI
|
|||
entry.TextArea = textArea;
|
||||
_Forms.back().Entries.push_back (entry);
|
||||
}
|
||||
|
||||
popIfNotEmpty (_FontFamily);
|
||||
popIfNotEmpty (_FontSize);
|
||||
popIfNotEmpty (_FontWeight);
|
||||
popIfNotEmpty (_FontOblique);
|
||||
popIfNotEmpty (_TextColor);
|
||||
}
|
||||
|
||||
popIfNotEmpty (_PRE);
|
||||
}
|
||||
break;
|
||||
case HTML_TITLE:
|
||||
|
@ -2437,6 +2575,7 @@ namespace NLGUI
|
|||
}
|
||||
break;
|
||||
case HTML_SPAN:
|
||||
popIfNotEmpty (_FontFamily);
|
||||
popIfNotEmpty (_FontSize);
|
||||
popIfNotEmpty (_FontWeight);
|
||||
popIfNotEmpty (_FontOblique);
|
||||
|
@ -2548,6 +2687,7 @@ namespace NLGUI
|
|||
_SelectOption = false;
|
||||
_GroupListAdaptor = NULL;
|
||||
_DocumentUrl = "";
|
||||
_DocumentDomain = "";
|
||||
_UrlFragment.clear();
|
||||
_RefreshUrl.clear();
|
||||
_NextRefreshTime = 0.0;
|
||||
|
@ -3907,6 +4047,7 @@ namespace NLGUI
|
|||
// Compatible with current parameters ?
|
||||
if (!skipLine &&
|
||||
(getTextColor() == _CurrentViewLink->getColor()) &&
|
||||
(getFontFamily() == _CurrentViewLink->getFontName()) &&
|
||||
(getFontSize() == (uint)_CurrentViewLink->getFontSize()) &&
|
||||
(getFontUnderlined() == _CurrentViewLink->getUnderlined()) &&
|
||||
(getFontStrikeThrough() == _CurrentViewLink->getStrikeThrough()) &&
|
||||
|
@ -3971,6 +4112,7 @@ namespace NLGUI
|
|||
}
|
||||
newLink->setText(tmpStr);
|
||||
newLink->setColor(getTextColor());
|
||||
newLink->setFontName(getFontFamily());
|
||||
newLink->setFontSize(getFontSize());
|
||||
newLink->setEmbolden(embolden);
|
||||
newLink->setOblique(getFontOblique());
|
||||
|
@ -4062,7 +4204,7 @@ namespace NLGUI
|
|||
|
||||
// ***************************************************************************
|
||||
|
||||
CInterfaceGroup *CGroupHTML::addTextArea(const std::string &templateName, const char *name, uint /* rows */, uint cols, bool multiLine, const ucstring &content, uint maxlength)
|
||||
CInterfaceGroup *CGroupHTML::addTextArea(const std::string &templateName, const char *name, uint rows, uint cols, bool multiLine, const ucstring &content, uint maxlength)
|
||||
{
|
||||
// In a paragraph ?
|
||||
if (!_Paragraph)
|
||||
|
@ -4077,11 +4219,18 @@ namespace NLGUI
|
|||
{
|
||||
// Not added ?
|
||||
std::vector<std::pair<std::string,std::string> > templateParams;
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("w", toString (cols*12)));
|
||||
//templateParams.push_back (std::pair<std::string,std::string> ("h", toString (rows*12)));
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("w", toString (cols*getFontSize())));
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("id", name));
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("prompt", ""));
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("multiline", multiLine?"true":"false"));
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("fontsize", toString (getFontSize())));
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("color", getTextColor().toString()));
|
||||
if (getFontWeight() >= FONT_WEIGHT_BOLD)
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("fontweight", "bold"));
|
||||
if (getFontOblique())
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("fontstyle", "oblique"));
|
||||
if (multiLine)
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("multi_min_line", toString(rows)));
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("want_return", multiLine?"true":"false"));
|
||||
templateParams.push_back (std::pair<std::string,std::string> ("enter_recover_focus", "false"));
|
||||
if (maxlength > 0)
|
||||
|
@ -4279,7 +4428,6 @@ namespace NLGUI
|
|||
ctrlButton->setToolTipParent(TTMouse);
|
||||
ctrlButton->setToolTipParentPosRef(Hotspot_TTAuto);
|
||||
ctrlButton->setToolTipPosRef(Hotspot_TTAuto);
|
||||
ctrlButton->setActionOnLeftClickParams(tooltip);
|
||||
}
|
||||
|
||||
getParagraph()->addChild (ctrlButton);
|
||||
|
@ -4657,9 +4805,12 @@ namespace NLGUI
|
|||
string finalUrl;
|
||||
bool isLocal = lookupLocalFile (finalUrl, _URL.c_str(), true);
|
||||
|
||||
// Save new url
|
||||
_URL = finalUrl;
|
||||
|
||||
CUrlParser uri (_URL);
|
||||
_TrustedDomain = isTrustedDomain(uri.host);
|
||||
_DocumentDomain = uri.host;
|
||||
|
||||
// file is probably from bnp (ingame help)
|
||||
if (isLocal)
|
||||
{
|
||||
|
@ -4667,8 +4818,6 @@ namespace NLGUI
|
|||
}
|
||||
else
|
||||
{
|
||||
_TrustedDomain = isTrustedDomain(setCurrentDomain(finalUrl));
|
||||
|
||||
SFormFields formfields;
|
||||
if (_PostNextTime)
|
||||
{
|
||||
|
@ -4704,9 +4853,11 @@ namespace NLGUI
|
|||
// Ref the form
|
||||
CForm &form = _Forms[_PostFormId];
|
||||
|
||||
// Save new url
|
||||
_URL = form.Action;
|
||||
_TrustedDomain = isTrustedDomain(setCurrentDomain(_URL));
|
||||
|
||||
CUrlParser uri(_URL);
|
||||
_TrustedDomain = isTrustedDomain(uri.host);
|
||||
_DocumentDomain = uri.host;
|
||||
|
||||
for (i=0; i<form.Entries.size(); i++)
|
||||
{
|
||||
|
@ -4814,6 +4965,7 @@ namespace NLGUI
|
|||
#endif
|
||||
|
||||
_TrustedDomain = true;
|
||||
_DocumentDomain = "localhost";
|
||||
|
||||
// Stop previous browse, remove content
|
||||
stopBrowse ();
|
||||
|
@ -4899,7 +5051,7 @@ namespace NLGUI
|
|||
curl_easy_setopt(curl, CURLOPT_USERAGENT, userAgent.c_str());
|
||||
|
||||
// Cookies
|
||||
sendCookies(curl, HTTPCurrentDomain, _TrustedDomain);
|
||||
sendCookies(curl, _DocumentDomain, _TrustedDomain);
|
||||
|
||||
// Referer
|
||||
if (!referer.empty())
|
||||
|
@ -4983,9 +5135,6 @@ namespace NLGUI
|
|||
nlwarning("(%s) HTML download finished, content length %d, type '%s', code %d", _Id.c_str(), content.size(), type.c_str(), code);
|
||||
#endif
|
||||
|
||||
// set trusted domain for parsing
|
||||
_TrustedDomain = isTrustedDomain(setCurrentDomain(_URL));
|
||||
|
||||
// create <html> markup for image downloads
|
||||
if (type.find("image/") == 0 && content.size() > 0)
|
||||
{
|
||||
|
@ -5468,15 +5617,11 @@ namespace NLGUI
|
|||
value.insert(value.begin() + (uint)it.nextKey().toInteger(), buffer);
|
||||
}
|
||||
|
||||
// ingame lua scripts from browser are using <a href="#http://..."> url scheme
|
||||
// reason unknown
|
||||
_LuaHrefHack = true;
|
||||
beginElement(element_number, present, value);
|
||||
if (element_number == HTML_A)
|
||||
{
|
||||
// ingame lua scripts from browser are using <a href="#http://..."> url scheme
|
||||
// reason unknown
|
||||
_LuaHrefHack = true;
|
||||
addLink(element_number, present, value);
|
||||
_LuaHrefHack = false;
|
||||
}
|
||||
_LuaHrefHack = false;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -5637,23 +5782,45 @@ namespace NLGUI
|
|||
{
|
||||
if (it->first == "font-size")
|
||||
{
|
||||
float tmp;
|
||||
sint size = 0;
|
||||
getPercentage (size, tmp, it->second.c_str());
|
||||
if (size > 0)
|
||||
style.FontSize = size;
|
||||
if (it->second == "inherit")
|
||||
style.FontSize = getFontSize();
|
||||
else
|
||||
{
|
||||
float tmp;
|
||||
sint size = 0;
|
||||
getPercentage (size, tmp, it->second.c_str());
|
||||
if (size > 0)
|
||||
style.FontSize = size;
|
||||
}
|
||||
}
|
||||
else
|
||||
if (it->first == "font-style")
|
||||
{
|
||||
if (it->second == "inherit")
|
||||
style.FontOblique = getFontOblique();
|
||||
else
|
||||
if (it->second == "italic" || it->second == "oblique")
|
||||
style.FontOblique = true;
|
||||
}
|
||||
else
|
||||
if (it->first == "font-family")
|
||||
{
|
||||
if (it->second == "inherit")
|
||||
style.FontFamily = getFontFamily();
|
||||
else
|
||||
if (it->second == "monospace")
|
||||
style.FontFamily = "monospace";
|
||||
else
|
||||
style.FontFamily = "";
|
||||
}
|
||||
else
|
||||
if (it->first == "font-weight")
|
||||
{
|
||||
// https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight
|
||||
uint weight = 400;
|
||||
if (it->second == "inherit")
|
||||
weight = getFontWeight();
|
||||
else
|
||||
if (it->second == "normal")
|
||||
weight = 400;
|
||||
else
|
||||
|
@ -5686,7 +5853,10 @@ namespace NLGUI
|
|||
}
|
||||
else
|
||||
if (it->first == "color")
|
||||
scanHTMLColor(it->second.c_str(), style.TextColor);
|
||||
if (it->second == "inherit")
|
||||
style.TextColor = getTextColor();
|
||||
else
|
||||
scanHTMLColor(it->second.c_str(), style.TextColor);
|
||||
else
|
||||
if (it->first == "text-decoration" || it->first == "text-decoration-line")
|
||||
{
|
||||
|
@ -5827,7 +5997,6 @@ namespace NLGUI
|
|||
{
|
||||
std::string ret;
|
||||
sint32 number = Value;
|
||||
bool upper = false;
|
||||
|
||||
if (Type == "disc")
|
||||
{
|
||||
|
|
|
@ -61,11 +61,6 @@ namespace NLGUI
|
|||
}
|
||||
}
|
||||
|
||||
if (element_number == HTML_A)
|
||||
{
|
||||
addLink(element_number, present, value);
|
||||
}
|
||||
|
||||
beginElement(element_number, present, value);
|
||||
}
|
||||
else
|
||||
|
|
|
@ -262,7 +262,7 @@ namespace NLGUI
|
|||
{
|
||||
tabB->setId(string("tab") + NLMISC::toString(_Buttons.size()));
|
||||
|
||||
if(_Buttons.size()==0)
|
||||
if(_Buttons.empty())
|
||||
{
|
||||
tabB->setParentPos(NULL);
|
||||
tabB->setParentPosRef(Hotspot_TL);
|
||||
|
@ -453,7 +453,7 @@ namespace NLGUI
|
|||
// ***************************************************************************
|
||||
void CGroupTab::updateFirstTabButton()
|
||||
{
|
||||
if(!_HideOutTabs || (_Selection<0) || (_Buttons.size()==0) || (_Parent->getWReal()<0)
|
||||
if(!_HideOutTabs || (_Selection<0) || _Buttons.empty() || (_Parent->getWReal()<0)
|
||||
|| _FirstTabIndex>=(sint)_Buttons.size())
|
||||
return;
|
||||
|
||||
|
|
|
@ -193,7 +193,7 @@ namespace NLGUI
|
|||
xmlKeepBlanksDefault(0);
|
||||
//parse all interface files and build a single xml document
|
||||
xmlNodePtr globalEnclosing;
|
||||
nlassert (strings.size());
|
||||
nlassert (!strings.empty());
|
||||
CIXml read;
|
||||
string nextFileName;
|
||||
static const char *SCRIPT_AS_STRING = "<script as string>";
|
||||
|
|
|
@ -31,7 +31,6 @@ namespace NLGUI
|
|||
|
||||
/// store all cookies we receive and resent them depending of the domain
|
||||
static std::map<std::string, std::map<std::string, std::string> > HTTPCookies;
|
||||
std::string HTTPCurrentDomain; // The current domain that will be used to get which cookies to send
|
||||
|
||||
// ***************************************************************************
|
||||
|
||||
|
@ -332,24 +331,6 @@ namespace NLGUI
|
|||
return dst;
|
||||
}
|
||||
|
||||
// set current HTTPCurrentDomain for cookie selection, return new domain
|
||||
const std::string &setCurrentDomain(const std::string &uri)
|
||||
{
|
||||
if (uri.find("http://") == 0)
|
||||
HTTPCurrentDomain = uri.substr(7, uri.find("/", 7) - 7);
|
||||
else
|
||||
if (uri.find("https://") == 0)
|
||||
HTTPCurrentDomain = uri.substr(8, uri.find("/", 8) - 8);
|
||||
else
|
||||
if (uri.find("//") == 0)
|
||||
HTTPCurrentDomain = uri.substr(2, uri.find("/", 2) - 2);
|
||||
else
|
||||
if (uri.find("/") != std::string::npos)
|
||||
HTTPCurrentDomain = uri.substr(0, uri.find("/") - 1);
|
||||
|
||||
return HTTPCurrentDomain;
|
||||
}
|
||||
|
||||
// update HTTPCookies list
|
||||
static void receiveCookie(const char *nsformat, const std::string &domain, bool trusted)
|
||||
{
|
||||
|
@ -371,6 +352,9 @@ namespace NLGUI
|
|||
chunks[0] = chunks[0].substr(10);
|
||||
}
|
||||
|
||||
// make sure domain is lowercase
|
||||
chunks[0] = toLower(chunks[0]);
|
||||
|
||||
if (chunks[0] != domain && chunks[0] != std::string("." + domain))
|
||||
{
|
||||
// cookie is for different domain
|
||||
|
|
|
@ -14,8 +14,7 @@
|
|||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include <string>
|
||||
#include "nel/misc/types_nl.h"
|
||||
#include "nel/misc/common.h"
|
||||
#include "nel/gui/url_parser.h"
|
||||
|
||||
using namespace std;
|
||||
|
@ -63,22 +62,40 @@ namespace NLGUI
|
|||
}
|
||||
}
|
||||
|
||||
// scan for domain
|
||||
// scan for authority
|
||||
if (uri.substr(0, 2) == "//")
|
||||
{
|
||||
pos = uri.find("/", 3);
|
||||
domain = uri.substr(0, pos);
|
||||
pos = uri.find_first_of("/?", 2);
|
||||
authority = uri.substr(0, pos);
|
||||
if (pos != npos)
|
||||
uri = uri.substr(pos);
|
||||
else
|
||||
uri.clear();
|
||||
|
||||
// strip empty port from authority
|
||||
if (authority.find_last_of(":") == authority.length() - 1)
|
||||
authority = authority.substr(0, authority.length() - 1);
|
||||
|
||||
// extract host from user:pass@host:port
|
||||
pos = authority.find("@");
|
||||
if (pos != npos)
|
||||
host = authority.substr(pos + 1);
|
||||
else
|
||||
host = authority.substr(2);
|
||||
|
||||
// case-insensitive
|
||||
host = NLMISC::toLower(host);
|
||||
|
||||
pos = host.find(":");
|
||||
if (pos != npos)
|
||||
host = host.substr(0, pos);
|
||||
}
|
||||
|
||||
// scan for query
|
||||
pos = uri.find("?");
|
||||
if (pos != npos)
|
||||
{
|
||||
query = uri.substr(pos + 1);
|
||||
query = uri.substr(pos);
|
||||
uri = uri.substr(0, pos);
|
||||
}
|
||||
|
||||
|
@ -99,11 +116,11 @@ namespace NLGUI
|
|||
|
||||
scheme = base.scheme;
|
||||
|
||||
// if we already have domain, then ignore base path
|
||||
if (!domain.empty())
|
||||
// if we already have authority, then ignore base path
|
||||
if (!authority.empty())
|
||||
return;
|
||||
|
||||
domain = base.domain;
|
||||
authority = base.authority;
|
||||
if (path.empty())
|
||||
{
|
||||
path = base.path;
|
||||
|
@ -190,7 +207,7 @@ namespace NLGUI
|
|||
|
||||
bool CUrlParser::isAbsolute() const
|
||||
{
|
||||
return !scheme.empty() && !domain.empty();
|
||||
return !scheme.empty() && !authority.empty();
|
||||
}
|
||||
|
||||
// serialize URL back to string
|
||||
|
@ -200,9 +217,9 @@ namespace NLGUI
|
|||
if (!scheme.empty())
|
||||
result += scheme + ":";
|
||||
|
||||
if (!domain.empty())
|
||||
if (!authority.empty())
|
||||
{
|
||||
result += domain;
|
||||
result += authority;
|
||||
}
|
||||
|
||||
// path already has leading slash
|
||||
|
@ -210,7 +227,9 @@ namespace NLGUI
|
|||
result += path;
|
||||
|
||||
if (!query.empty())
|
||||
result += "?" + query;
|
||||
if (query.find_first_of("?") != 0)
|
||||
result += "?";
|
||||
result += query;
|
||||
|
||||
if (!hash.empty())
|
||||
result += "#" + hash;
|
||||
|
|
|
@ -34,6 +34,7 @@ namespace NLGUI
|
|||
NL3D::UTextContext* CViewRenderer::textcontext = NULL;
|
||||
std::set< std::string >* CViewRenderer::hwCursors = NULL;
|
||||
float CViewRenderer::hwCursorScale = 1.0f;
|
||||
CViewRenderer::TFontsList CViewRenderer::fonts;
|
||||
|
||||
CViewRenderer::CViewRenderer()
|
||||
{
|
||||
|
@ -214,17 +215,65 @@ namespace NLGUI
|
|||
ite++;
|
||||
}
|
||||
|
||||
TFontsList::iterator iteFonts = fonts.begin();
|
||||
while (iteFonts != fonts.end())
|
||||
{
|
||||
driver->deleteTextContext(iteFonts->second);
|
||||
++iteFonts;
|
||||
}
|
||||
|
||||
_GlobalTextures.clear();
|
||||
_SImages.clear();
|
||||
_SImageIterators.clear();
|
||||
_TextureMap.clear();
|
||||
_IndexesToTextureIds.clear();
|
||||
fonts.clear();
|
||||
}
|
||||
|
||||
NL3D::UDriver* CViewRenderer::getDriver(){
|
||||
return driver;
|
||||
}
|
||||
|
||||
// ***************************************************************************
|
||||
NL3D::UTextContext* CViewRenderer::getTextContext(const std::string &name)
|
||||
{
|
||||
if (name.size() > 0 && fonts.count(name) > 0)
|
||||
return fonts[name];
|
||||
|
||||
return textcontext;
|
||||
}
|
||||
|
||||
// ***************************************************************************
|
||||
bool CViewRenderer::registerFont(const std::string &name, const std::string &font)
|
||||
{
|
||||
nlassert(driver != NULL);
|
||||
|
||||
// free existing font
|
||||
if (fonts.count(name) > 0)
|
||||
driver->deleteTextContext(fonts[name]);
|
||||
|
||||
std::string fontFile = CPath::lookup(font, false);
|
||||
if (fontFile.size() == 0)
|
||||
{
|
||||
nlwarning("Font file '%s' not found", font.c_str());
|
||||
return false;
|
||||
}
|
||||
|
||||
NL3D::UTextContext *context;
|
||||
context = driver->createTextContext(fontFile);
|
||||
if (context == NULL)
|
||||
{
|
||||
nlwarning("Cannot create a TextContext with font '%s'.", font.c_str());
|
||||
return false;
|
||||
}
|
||||
|
||||
context->setKeep800x600Ratio(false);
|
||||
|
||||
fonts[name] = context;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void CViewRenderer::setTextContext(NL3D::UTextContext *textcontext)
|
||||
{
|
||||
CViewRenderer::textcontext = textcontext;
|
||||
|
|
|
@ -61,6 +61,7 @@ namespace NLGUI
|
|||
|
||||
_FontSize = 12 +
|
||||
CWidgetManager::getInstance()->getSystemOption( CWidgetManager::OptionAddCoefFont ).getValSInt32();
|
||||
_FontName.clear();
|
||||
_Embolden = false;
|
||||
_Oblique = false;
|
||||
_Color = CRGBA(255,255,255,255);
|
||||
|
@ -75,6 +76,7 @@ namespace NLGUI
|
|||
_MultiLineMaxWOnly = false;
|
||||
_MultiLineClipEndSpace = false;
|
||||
_LastMultiLineMaxW = 0;
|
||||
_MultiMinLine = 0;
|
||||
_MultiMaxLine = 0;
|
||||
_Index = 0xFFFFFFFF;
|
||||
|
||||
|
@ -133,7 +135,7 @@ namespace NLGUI
|
|||
CViewText::~CViewText()
|
||||
{
|
||||
if (_Index != 0xFFFFFFFF)
|
||||
CViewRenderer::getTextContext()->erase (_Index);
|
||||
CViewRenderer::getTextContext(_FontName)->erase (_Index);
|
||||
clearLines();
|
||||
|
||||
if (!_Setuped)
|
||||
|
@ -147,7 +149,7 @@ namespace NLGUI
|
|||
CViewText &CViewText::operator=(const CViewText &vt)
|
||||
{
|
||||
if (_Index != 0xFFFFFFFF)
|
||||
CViewRenderer::getTextContext()->erase (_Index);
|
||||
CViewRenderer::getTextContext(_FontName)->erase (_Index);
|
||||
|
||||
// Create database entries
|
||||
_Active = vt._Active;
|
||||
|
@ -305,6 +307,11 @@ namespace NLGUI
|
|||
return toString( _MultiMaxLine );
|
||||
}
|
||||
else
|
||||
if( name == "multi_min_line" )
|
||||
{
|
||||
return toString( _MultiMinLine );
|
||||
}
|
||||
else
|
||||
if( name == "underlined" )
|
||||
{
|
||||
return toString( _Underlined );
|
||||
|
@ -479,6 +486,14 @@ namespace NLGUI
|
|||
return true;
|
||||
}
|
||||
else
|
||||
if( name == "multi_min_line" )
|
||||
{
|
||||
uint32 i;
|
||||
if( fromString( value, i ) )
|
||||
_MultiMinLine = i;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
if( name == "underlined" )
|
||||
{
|
||||
bool b;
|
||||
|
@ -621,6 +636,7 @@ namespace NLGUI
|
|||
xmlSetProp( node, BAD_CAST "multi_line_space", BAD_CAST toString( _MultiLineSpace ).c_str() );
|
||||
xmlSetProp( node, BAD_CAST "multi_line_maxw_only", BAD_CAST toString( _MultiLineMaxWOnly ).c_str() );
|
||||
xmlSetProp( node, BAD_CAST "multi_max_line", BAD_CAST toString( _MultiMaxLine ).c_str() );
|
||||
xmlSetProp( node, BAD_CAST "multi_min_line", BAD_CAST toString( _MultiMinLine ).c_str() );
|
||||
xmlSetProp( node, BAD_CAST "underlined", BAD_CAST toString( _Underlined ).c_str() );
|
||||
xmlSetProp( node, BAD_CAST "strikethrough", BAD_CAST toString( _StrikeThrough ).c_str() );
|
||||
xmlSetProp( node, BAD_CAST "case_mode", BAD_CAST toString( uint32( _CaseMode ) ).c_str() );
|
||||
|
@ -741,6 +757,11 @@ namespace NLGUI
|
|||
if (prop)
|
||||
fromString((const char*)prop, _MultiMaxLine);
|
||||
|
||||
prop = (char*) xmlGetProp( cur, (xmlChar*)"multi_min_line" );
|
||||
_MultiMinLine = 0;
|
||||
if (prop)
|
||||
fromString((const char*)prop, _MultiMinLine);
|
||||
|
||||
prop = (char*) xmlGetProp( cur, (xmlChar*)"underlined" );
|
||||
_Underlined = false;
|
||||
if (prop)
|
||||
|
@ -938,7 +959,7 @@ namespace NLGUI
|
|||
return;
|
||||
rVR.getScreenOOSize (oow, ooh);
|
||||
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
|
||||
|
||||
// *** get current color
|
||||
|
@ -963,8 +984,6 @@ namespace NLGUI
|
|||
{
|
||||
if (_Lines.size() == 0) return;
|
||||
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
|
||||
TextContext->setHotSpot (UTextContext::BottomLeft);
|
||||
TextContext->setShaded (_Shadow);
|
||||
TextContext->setShadeOutline (_ShadowOutline);
|
||||
|
@ -981,6 +1000,13 @@ namespace NLGUI
|
|||
|
||||
sint y_line = _YReal+_FontLegHeight-2;
|
||||
|
||||
if (_MultiMinLine > _Lines.size())
|
||||
{
|
||||
uint dy = getMultiMinOffsetY();
|
||||
y += dy * ooh;
|
||||
y_line += dy;
|
||||
}
|
||||
|
||||
// special selection code
|
||||
if(_TextSelection)
|
||||
{
|
||||
|
@ -1233,6 +1259,24 @@ namespace NLGUI
|
|||
_FormatTags.clear();
|
||||
}
|
||||
|
||||
// ***************************************************************************
|
||||
void CViewText::setFontName(const std::string &name)
|
||||
{
|
||||
if (_FontName == name)
|
||||
return;
|
||||
|
||||
if (_FontName.length() > 0)
|
||||
{
|
||||
if (_Index != 0xFFFFFFFF)
|
||||
CViewRenderer::getTextContext(_FontName)->erase (_Index);
|
||||
clearLines();
|
||||
}
|
||||
|
||||
_FontName = name;
|
||||
computeFontSize ();
|
||||
invalidateContent();
|
||||
}
|
||||
|
||||
// ***************************************************************************
|
||||
void CViewText::setFontSize (sint nFontSize)
|
||||
{
|
||||
|
@ -1360,9 +1404,23 @@ namespace NLGUI
|
|||
return _FontLegHeight;
|
||||
}
|
||||
|
||||
// ***************************************************************************
|
||||
uint CViewText::getMultiMinOffsetY() const
|
||||
{
|
||||
uint dy = 0;
|
||||
if (_MultiMinLine > _Lines.size())
|
||||
{
|
||||
// first line is always present even if _Lines is empty
|
||||
uint nbLines = _MultiMinLine - std::max((sint)1, (sint)_Lines.size());
|
||||
dy = nbLines * _FontHeight + (nbLines - 1) * _MultiLineSpace;
|
||||
}
|
||||
return dy;
|
||||
}
|
||||
|
||||
// ***************************************************************************
|
||||
void CViewText::flushWordInLine(ucstring &ucCurrentWord, bool &linePushed, const CFormatInfo &wordFormat)
|
||||
{
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
// create a new line?
|
||||
if(!linePushed)
|
||||
{
|
||||
|
@ -1370,7 +1428,7 @@ namespace NLGUI
|
|||
linePushed= true;
|
||||
}
|
||||
// Append to the last line
|
||||
_Lines.back()->addWord(ucCurrentWord, 0, wordFormat, _FontWidth);
|
||||
_Lines.back()->addWord(ucCurrentWord, 0, wordFormat, _FontWidth, *TextContext);
|
||||
// reset the word
|
||||
ucCurrentWord = ucstring("");
|
||||
}
|
||||
|
@ -1406,7 +1464,7 @@ namespace NLGUI
|
|||
rWidthCurrentLine= max(rWidthCurrentLine, (float)wordFormat.TabX*_FontWidth);
|
||||
}
|
||||
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
|
||||
// Parse the letter
|
||||
{
|
||||
|
@ -1452,6 +1510,7 @@ namespace NLGUI
|
|||
// ***************************************************************************
|
||||
void CViewText::addDontClipWordLine(std::vector<CWord> &currLine)
|
||||
{
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
// create a new line
|
||||
_Lines.push_back(TLineSPtr(new CLine));
|
||||
|
||||
|
@ -1466,7 +1525,7 @@ namespace NLGUI
|
|||
if(currLine[i].Format!=lineWordFormat)
|
||||
{
|
||||
// add the current lineWord to the line.
|
||||
_Lines.back()->addWord(lineWord, 0, lineWordFormat, _FontWidth);
|
||||
_Lines.back()->addWord(lineWord, 0, lineWordFormat, _FontWidth, *TextContext);
|
||||
// get new lineWordFormat
|
||||
lineWordFormat= currLine[i].Format;
|
||||
// and clear
|
||||
|
@ -1481,7 +1540,7 @@ namespace NLGUI
|
|||
}
|
||||
|
||||
if(!lineWord.empty())
|
||||
_Lines.back()->addWord(lineWord, 0, lineWordFormat, _FontWidth);
|
||||
_Lines.back()->addWord(lineWord, 0, lineWordFormat, _FontWidth, *TextContext);
|
||||
|
||||
// clear
|
||||
currLine.clear();
|
||||
|
@ -1491,6 +1550,7 @@ namespace NLGUI
|
|||
// ***************************************************************************
|
||||
void CViewText::updateTextContextMultiLineJustified(uint nMaxWidth, bool expandSpaces)
|
||||
{
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
UTextContext::CStringInfo si;
|
||||
//
|
||||
TCharPos currPos = 0;
|
||||
|
@ -1584,7 +1644,7 @@ namespace NLGUI
|
|||
// Get the word value.
|
||||
wordValue = _Text.substr(spaceEnd, wordEnd - spaceEnd);
|
||||
// compute width of word
|
||||
si = CViewRenderer::getTextContext()->getStringInfo(wordValue);
|
||||
si = TextContext->getStringInfo(wordValue);
|
||||
|
||||
// compute size of spaces/Tab + word
|
||||
newLineWidth = lineWidth + numSpaces * _SpaceWidth;
|
||||
|
@ -1641,7 +1701,7 @@ namespace NLGUI
|
|||
{
|
||||
uint maxNumSpaces = std::max(1U, (uint) (nMaxWidth / _SpaceWidth));
|
||||
CWord spaceWord; // a word with only spaces in it
|
||||
spaceWord.build (ucstring (""), maxNumSpaces);
|
||||
spaceWord.build (ucstring (""), *TextContext, maxNumSpaces);
|
||||
spaceWord.Format= wordFormat;
|
||||
_Lines.push_back(TLineSPtr(new CLine));
|
||||
_Lines.back()->addWord(spaceWord, _FontWidth);
|
||||
|
@ -1663,14 +1723,14 @@ namespace NLGUI
|
|||
for(currChar = 0; currChar < wordValue.length(); ++currChar)
|
||||
{
|
||||
oneChar = wordValue[currChar];
|
||||
si = CViewRenderer::getTextContext()->getStringInfo(oneChar);
|
||||
si = TextContext->getStringInfo(oneChar);
|
||||
if ((uint) (px + si.StringWidth) > nMaxWidth) break;
|
||||
px += si.StringWidth;
|
||||
}
|
||||
currChar = std::max((uint) 1, currChar); // must fit at least one character otherwise there's an infinite loop
|
||||
wordValue = _Text.substr(spaceEnd, currChar);
|
||||
CWord word;
|
||||
word.build(wordValue, numSpaces);
|
||||
word.build(wordValue, *TextContext, numSpaces);
|
||||
word.Format= wordFormat;
|
||||
_Lines.push_back(TLineSPtr(new CLine));
|
||||
float roomForSpaces = (float) nMaxWidth - word.Info.StringWidth;
|
||||
|
@ -1705,7 +1765,7 @@ namespace NLGUI
|
|||
if (!wordValue.empty() || numSpaces != 0)
|
||||
{
|
||||
CWord word;
|
||||
word.build(wordValue, numSpaces);
|
||||
word.build(wordValue, *TextContext, numSpaces);
|
||||
word.Format= wordFormat;
|
||||
// update line width
|
||||
_Lines.back()->addWord(word, _FontWidth);
|
||||
|
@ -1782,7 +1842,7 @@ namespace NLGUI
|
|||
// ***************************************************************************
|
||||
void CViewText::updateTextContext ()
|
||||
{
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
|
||||
TextContext->setHotSpot (UTextContext::BottomLeft);
|
||||
TextContext->setShaded (_Shadow);
|
||||
|
@ -1816,13 +1876,13 @@ namespace NLGUI
|
|||
{
|
||||
while (_Lines.size() > _MultiMaxLine)
|
||||
{
|
||||
_Lines.back()->clear();
|
||||
_Lines.back()->clear(*TextContext);
|
||||
_Lines.pop_back();
|
||||
}
|
||||
_Lines.pop_back();
|
||||
CViewText::CLine *endLine = new CViewText::CLine;
|
||||
CViewText::CWord w;
|
||||
w.build(string("..."));
|
||||
w.build(string("..."), *TextContext);
|
||||
endLine->addWord(w, _FontWidth);
|
||||
_Lines.push_back(TLineSPtr(endLine));
|
||||
}
|
||||
|
@ -1836,6 +1896,10 @@ namespace NLGUI
|
|||
_W = (sint)rTotalW;
|
||||
_H = std::max(_FontHeight, uint(_FontHeight * _Lines.size() + std::max(0, sint(_Lines.size()) - 1) * _MultiLineSpace));
|
||||
|
||||
// See if we should pretend to have at least X lines
|
||||
if (_MultiMinLine > 1)
|
||||
_H = std::max(_H, sint(_FontHeight * _MultiMinLine + (_MultiMinLine - 1) * _MultiLineSpace));
|
||||
|
||||
// Compute tooltips size
|
||||
if (_Tooltips.size() > 0)
|
||||
for (uint i=0 ; i<_Lines.size() ; ++i)
|
||||
|
@ -2106,7 +2170,7 @@ namespace NLGUI
|
|||
void CViewText::getCharacterPositionFromIndex(sint index, bool cursorAtPreviousLineEnd, sint &x, sint &y, sint &height) const
|
||||
{
|
||||
NLMISC::clamp(index, 0, (sint) _Text.length());
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
TextContext->setHotSpot (UTextContext::BottomLeft);
|
||||
TextContext->setShaded (_Shadow);
|
||||
TextContext->setShadeOutline (_ShadowOutline);
|
||||
|
@ -2118,11 +2182,13 @@ namespace NLGUI
|
|||
//
|
||||
if (_MultiLine)
|
||||
{
|
||||
uint dy = getMultiMinOffsetY();
|
||||
|
||||
uint charIndex = 0;
|
||||
// special case for end of text
|
||||
if (index == (sint) _Text.length())
|
||||
{
|
||||
y = 0;
|
||||
y = dy;
|
||||
if (_Lines.empty())
|
||||
{
|
||||
x = 0;
|
||||
|
@ -2142,7 +2208,7 @@ namespace NLGUI
|
|||
{
|
||||
// should display the character at the end of previous line
|
||||
CLine &currLine = *_Lines[i - 1];
|
||||
y = (sint) ((_FontHeight + _MultiLineSpace) * (_Lines.size() - i));
|
||||
y = (sint) ((_FontHeight + _MultiLineSpace) * (_Lines.size() - i) + dy);
|
||||
x = (sint) (currLine.getWidth() + currLine.getEndSpaces() * currLine.getSpaceWidth());
|
||||
sint nMaxWidth = getCurrentMultiLineMaxW();
|
||||
x = std::min(x, nMaxWidth);
|
||||
|
@ -2153,7 +2219,7 @@ namespace NLGUI
|
|||
if ((sint) newCharIndex > index)
|
||||
{
|
||||
// ok, this line contains the character, now, see which word contains it.
|
||||
y = (sint) ((_FontHeight + _MultiLineSpace) * (_Lines.size() - 1 - i));
|
||||
y = (sint) ((_FontHeight + _MultiLineSpace) * (_Lines.size() - 1 - i) + dy);
|
||||
// see if the index is in the spaces at the end of line
|
||||
if (index - charIndex >= currLine.getNumChars())
|
||||
{
|
||||
|
@ -2211,7 +2277,7 @@ namespace NLGUI
|
|||
|
||||
// ***************************************************************************
|
||||
// Tool fct : From a word and a x coordinate, give the matching character index
|
||||
static uint getCharacterIndex(const ucstring &textValue, float x)
|
||||
static uint getCharacterIndex(const ucstring &textValue, float x, NL3D::UTextContext &textContext)
|
||||
{
|
||||
float px = 0.f;
|
||||
UTextContext::CStringInfo si;
|
||||
|
@ -2221,7 +2287,7 @@ namespace NLGUI
|
|||
{
|
||||
// get character width
|
||||
singleChar[0] = textValue[i];
|
||||
si = CViewRenderer::getTextContext()->getStringInfo(singleChar);
|
||||
si = textContext.getStringInfo(singleChar);
|
||||
px += si.StringWidth;
|
||||
// the character is at the i - 1 position
|
||||
if (px > x)
|
||||
|
@ -2238,7 +2304,7 @@ namespace NLGUI
|
|||
// ***************************************************************************
|
||||
void CViewText::getCharacterIndexFromPosition(sint x, sint y, uint &index, bool &cursorAtPreviousLineEnd) const
|
||||
{
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
|
||||
// setup the text context
|
||||
TextContext->setHotSpot (UTextContext::BottomLeft);
|
||||
|
@ -2252,6 +2318,7 @@ namespace NLGUI
|
|||
uint charPos = 0;
|
||||
if (_MultiLine)
|
||||
{
|
||||
y -= getMultiMinOffsetY();
|
||||
// seek the line
|
||||
float py = 0.f;
|
||||
if (py > y)
|
||||
|
@ -2318,7 +2385,7 @@ namespace NLGUI
|
|||
else
|
||||
{
|
||||
// the coord is in the word itself
|
||||
index = charPos + currWord.NumSpaces + getCharacterIndex(currWord.Text, (float) x - (px + spacesWidth));
|
||||
index = charPos + currWord.NumSpaces + getCharacterIndex(currWord.Text, (float) x - (px + spacesWidth), *TextContext);
|
||||
cursorAtPreviousLineEnd = false;
|
||||
return;
|
||||
}
|
||||
|
@ -2343,7 +2410,7 @@ namespace NLGUI
|
|||
index = 0;
|
||||
return;
|
||||
}
|
||||
index = getCharacterIndex(_Text, (float) x);
|
||||
index = getCharacterIndex(_Text, (float) x, *TextContext);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -2381,15 +2448,16 @@ namespace NLGUI
|
|||
quadSize--;
|
||||
}
|
||||
// select what quad to skip
|
||||
CViewRenderer::getTextContext()->setStringSelection(stringId, quadStart, quadSize);
|
||||
CViewRenderer::getTextContext(_FontName)->setStringSelection(stringId, quadStart, quadSize);
|
||||
}
|
||||
|
||||
// ***************************************************************************
|
||||
void CViewText::clearLines()
|
||||
{
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
for(uint k = 0; k < _Lines.size(); ++k)
|
||||
{
|
||||
_Lines[k]->clear();
|
||||
_Lines[k]->clear(*TextContext);
|
||||
}
|
||||
_Lines.clear();
|
||||
}
|
||||
|
@ -2443,10 +2511,10 @@ namespace NLGUI
|
|||
}
|
||||
|
||||
// ***************************************************************************
|
||||
void CViewText::CLine::addWord(const ucstring &text, uint numSpaces, const CFormatInfo &wordFormat, uint fontWidth)
|
||||
void CViewText::CLine::addWord(const ucstring &text, uint numSpaces, const CFormatInfo &wordFormat, uint fontWidth, NL3D::UTextContext &textContext)
|
||||
{
|
||||
CWord word;
|
||||
word.build(text, numSpaces);
|
||||
word.build(text, textContext, numSpaces);
|
||||
word.Format= wordFormat;
|
||||
addWord(word, fontWidth);
|
||||
}
|
||||
|
@ -2468,12 +2536,12 @@ namespace NLGUI
|
|||
}
|
||||
|
||||
// ***************************************************************************
|
||||
void CViewText::CLine::clear()
|
||||
void CViewText::CLine::clear(NL3D::UTextContext &textContext)
|
||||
{
|
||||
for(uint k = 0; k < _Words.size(); ++k)
|
||||
{
|
||||
if (_Words[k].Index != 0xffffffff)
|
||||
CViewRenderer::getTextContext()->erase(_Words[k].Index);
|
||||
textContext.erase(_Words[k].Index);
|
||||
}
|
||||
_Words.clear();
|
||||
_NumChars = 0;
|
||||
|
@ -2490,13 +2558,12 @@ namespace NLGUI
|
|||
}
|
||||
|
||||
// ***************************************************************************
|
||||
void CViewText::CWord::build(const ucstring &text, uint numSpaces/*=0*/)
|
||||
void CViewText::CWord::build(const ucstring &text, NL3D::UTextContext &textContext, uint numSpaces)
|
||||
{
|
||||
Text = text;
|
||||
NumSpaces = numSpaces;
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
Index = TextContext->textPush(text);
|
||||
Info = TextContext->getStringInfo(Index);
|
||||
Index = textContext.textPush(text);
|
||||
Info = textContext.getStringInfo(Index);
|
||||
}
|
||||
|
||||
// ***************************************************************************
|
||||
|
@ -2517,7 +2584,7 @@ namespace NLGUI
|
|||
static const ucstring lineFeedStr("\n");
|
||||
float maxWidth = 0;
|
||||
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
TextContext->setHotSpot (UTextContext::BottomLeft);
|
||||
TextContext->setShaded (_Shadow);
|
||||
TextContext->setShadeOutline (_ShadowOutline);
|
||||
|
@ -2604,7 +2671,7 @@ namespace NLGUI
|
|||
// If we can't clip the words, return the size of the largest word
|
||||
else if ((_TextMode == DontClipWord) || (_TextMode == Justified))
|
||||
{
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
TextContext->setHotSpot (UTextContext::BottomLeft);
|
||||
TextContext->setShaded (_Shadow);
|
||||
TextContext->setShadeOutline (_ShadowOutline);
|
||||
|
@ -2662,7 +2729,7 @@ namespace NLGUI
|
|||
// ***************************************************************************
|
||||
void CViewText::computeFontSize ()
|
||||
{
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
TextContext->setHotSpot (UTextContext::BottomLeft);
|
||||
TextContext->setShaded (_Shadow);
|
||||
TextContext->setShadeOutline (_ShadowOutline);
|
||||
|
@ -2671,9 +2738,25 @@ namespace NLGUI
|
|||
TextContext->setOblique (_Oblique);
|
||||
|
||||
// Letter size
|
||||
UTextContext::CStringInfo si = TextContext->getStringInfo(ucstring("|")); // for now we can't now that directly from UTextContext
|
||||
_FontHeight = (uint) si.StringHeight; // + (_Shadow?(_ShadowOutline?2:1):0);
|
||||
_FontLegHeight = (uint) si.StringLine; // + (_Shadow?(_ShadowOutline?2:1):0);
|
||||
ucstring chars;
|
||||
// instead of using the height of "|" that depends on font,
|
||||
// we're using 2 characters:
|
||||
// - "_" that should be the character with the lowest part
|
||||
// - A with an accent for the highest part
|
||||
chars.fromUtf8("_\xc3\x84");
|
||||
|
||||
// for now we can't know that directly from UTextContext
|
||||
UTextContext::CStringInfo si = TextContext->getStringInfo(chars);
|
||||
|
||||
// font generator changes unknown glyphs to dot '.'. use fallback if it looks odd
|
||||
if (_FontSize > (si.StringHeight + si.StringLine))
|
||||
{
|
||||
chars.fromUtf8("|");
|
||||
si = TextContext->getStringInfo(chars);
|
||||
}
|
||||
// add a padding of 1 pixel else the top will be truncated
|
||||
_FontHeight = (uint) si.StringHeight+1;
|
||||
_FontLegHeight = (uint) si.StringLine;
|
||||
|
||||
// Space width
|
||||
si = TextContext->getStringInfo(ucstring(" "));
|
||||
|
@ -3025,7 +3108,7 @@ namespace NLGUI
|
|||
}
|
||||
|
||||
// convert in ULetterColors
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext();
|
||||
NL3D::UTextContext *TextContext = CViewRenderer::getTextContext(_FontName);
|
||||
ULetterColors * letterColors = TextContext->createLetterColors();
|
||||
for(uint i=0; i<tempLetterColors.size(); i++)
|
||||
{
|
||||
|
|
|
@ -3170,6 +3170,7 @@ namespace NLGUI
|
|||
_SystemOptions[OptionTimeoutMessages]= opt->getValue("messages_timeout");
|
||||
_SystemOptions[OptionTimeoutContext]= opt->getValue("context_timeout");
|
||||
_SystemOptions[OptionTimeoutContextHtml]= opt->getValue("context_html_timeout");
|
||||
_SystemOptions[OptionMonospaceFont]= opt->getValue("monospace_font");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1218,7 +1218,7 @@ const IPrimitive *IPrimitive::getPrimitive (const std::string &absoluteOrRelativ
|
|||
path.erase(0,2);
|
||||
}
|
||||
|
||||
while (path.size()>0)
|
||||
while (!path.empty())
|
||||
{
|
||||
if (path.find("/")==0)
|
||||
{
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
#include "stdlogic.h"
|
||||
#include "nel/logic/logic_state.h"
|
||||
#include "nel/logic/logic_state_machine.h"
|
||||
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
#include "nel/misc/app_context.h"
|
||||
#include "nel/misc/dynloadlib.h"
|
||||
#include "nel/misc/command.h"
|
||||
#include "nel/misc/system_utils.h"
|
||||
|
||||
#include <locale.h>
|
||||
|
||||
|
@ -71,6 +72,9 @@ INelContext::~INelContext()
|
|||
|
||||
CInstanceCounterLocalManager::releaseInstance();
|
||||
|
||||
// uninit some systems stuff
|
||||
CSystemUtils::uninit();
|
||||
|
||||
_NelContext = NULL;
|
||||
*(_getInstance()) = NULL;
|
||||
}
|
||||
|
@ -90,6 +94,9 @@ void INelContext::contextReady()
|
|||
// set numeric locale to C to avoid the use of decimal separators different of a dot
|
||||
char *locale = setlocale(LC_NUMERIC, "C");
|
||||
|
||||
// init some systems stuff
|
||||
CSystemUtils::init();
|
||||
|
||||
// register any pending thinks
|
||||
|
||||
// register local instance counter in the global instance counter manager
|
||||
|
|
|
@ -278,7 +278,7 @@ ICDBNode * CCDBNodeBranch::getNode (const CTextId& id, bool bCreate)
|
|||
{
|
||||
// Yoyo: must not be SERVER or LOCAL, cause definied through xml.
|
||||
// This may cause some important crash error
|
||||
//nlassert(id.size()>0);
|
||||
//nlassert(!id.empty());
|
||||
//nlassert(id.getElement(0)!="SERVER");
|
||||
//nlassert(id.getElement(0)!="LOCAL");
|
||||
ICDBNode *newNode;
|
||||
|
|
|
@ -1784,7 +1784,9 @@ std::string CPath::getApplicationDirectory(const std::string &appName, bool loca
|
|||
std::string CFileContainer::getApplicationDirectory(const std::string &appName, bool local)
|
||||
{
|
||||
static std::string appPaths[2];
|
||||
|
||||
std::string &appPath = appPaths[local ? 1 : 0];
|
||||
|
||||
if (appPath.empty())
|
||||
{
|
||||
#ifdef NL_OS_WINDOWS
|
||||
|
@ -1800,26 +1802,21 @@ std::string CFileContainer::getApplicationDirectory(const std::string &appName,
|
|||
SHGetSpecialFolderPathW(NULL, buffer, CSIDL_APPDATA, TRUE);
|
||||
}
|
||||
appPath = CPath::standardizePath(wideToUtf8(buffer));
|
||||
#elif defined(NL_OS_MAC)
|
||||
appPath = CPath::standardizePath(getenv("HOME"));
|
||||
appPath += "/Library/Application Support/";
|
||||
#else
|
||||
appPath = CPath::standardizePath(getenv("HOME"));
|
||||
// get user home directory from HOME environment variable
|
||||
const char* homePath = getenv("HOME");
|
||||
appPath = CPath::standardizePath(homePath ? homePath : ".");
|
||||
|
||||
#if defined(NL_OS_MAC)
|
||||
appPath += "Library/Application Support/";
|
||||
#else
|
||||
// recommended for applications data that are owned by user
|
||||
appPath += ".local/share/";
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
std::string path = appPath;
|
||||
#ifdef NL_OS_WINDOWS
|
||||
if (!appName.empty())
|
||||
path = CPath::standardizePath(path + appName);
|
||||
#elif defined(NL_OS_MAC)
|
||||
path = CPath::standardizePath(path + appName);
|
||||
#else
|
||||
if (!appName.empty())
|
||||
path = CPath::standardizePath(path + "." + toLower(appName));
|
||||
#endif
|
||||
|
||||
return path;
|
||||
return CPath::standardizePath(appPath + appName);
|
||||
}
|
||||
|
||||
std::string CPath::getTemporaryDirectory()
|
||||
|
@ -2374,11 +2371,33 @@ static bool CopyMoveFile(const std::string &dest, const std::string &src, bool c
|
|||
#else
|
||||
if (rename (ssrc.c_str(), sdest.c_str()) == -1)
|
||||
{
|
||||
nlwarning ("PATH: CopyMoveFile error: can't rename '%s' into '%s', error %u",
|
||||
ssrc.c_str(),
|
||||
sdest.c_str(),
|
||||
errno);
|
||||
return false;
|
||||
// unable to move because file systems are different
|
||||
if (errno == EXDEV)
|
||||
{
|
||||
// different file system, we need to copy and delete file manually
|
||||
if (!CopyMoveFile(dest, src, true, failIfExists, progress)) return false;
|
||||
|
||||
// get modification time
|
||||
uint32 modificationTime = CFile::getFileModificationDate(src);
|
||||
|
||||
// delete original file
|
||||
if (!CFile::deleteFile(src)) return false;
|
||||
|
||||
// set same modification time
|
||||
if (!CFile::setFileModificationDate(dest, modificationTime))
|
||||
{
|
||||
nlwarning("Unable to set modification time %s (%u) for %s", timestampToHumanReadable(modificationTime).c_str(), modificationTime, dest.c_str());
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
nlwarning("PATH: CopyMoveFile error: can't rename '%s' into '%s', error %u",
|
||||
ssrc.c_str(),
|
||||
sdest.c_str(),
|
||||
errno);
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -105,7 +105,7 @@ void CPolygon::clip(const CPlane *planes, uint nPlanes)
|
|||
// ***************************************************************************
|
||||
void CPolygon::clip(const std::vector<CPlane> &planes)
|
||||
{
|
||||
if(planes.size()==0)
|
||||
if(planes.empty())
|
||||
return;
|
||||
clip(&(*planes.begin()), (uint)planes.size());
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -107,7 +107,7 @@ bool CSystemUtils::updateProgressBar(uint value, uint total)
|
|||
#ifdef TASKBAR_PROGRESS
|
||||
if (s_window == NULL)
|
||||
{
|
||||
nlwarning("No window has be set with CSystemUtils::setWindow(), progress bar can't be displayed");
|
||||
nldebug("No window has be set with CSystemUtils::setWindow(), progress bar can't be displayed");
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -139,7 +139,7 @@ bool CSystemUtils::updateProgressBar(uint value, uint total)
|
|||
|
||||
bool CSystemUtils::copyTextToClipboard(const ucstring &text)
|
||||
{
|
||||
if (!text.size()) return false;
|
||||
if (text.empty()) return false;
|
||||
|
||||
bool res = false;
|
||||
|
||||
|
|
|
@ -430,7 +430,7 @@ void serviceGetView (uint32 rid, const string &rawvarpath, TAdminViewResult &ans
|
|||
else
|
||||
{
|
||||
|
||||
if (strs.size()>0)
|
||||
if (!strs.empty())
|
||||
{
|
||||
str = strs[0].substr(0,strs[0].size()-1);
|
||||
// replace all spaces into udnerscore because space is a reserved char
|
||||
|
@ -717,7 +717,7 @@ void updateAdmin()
|
|||
ICommand::execute(Alarms[i].Name, logDisplayVars, true, false);
|
||||
const std::deque<std::string> &strs = mdDisplayVars.lockStrings();
|
||||
|
||||
if (strs.size()>0)
|
||||
if (!strs.empty())
|
||||
{
|
||||
str = strs[0].substr(0,strs[0].size()-1);
|
||||
}
|
||||
|
|
|
@ -155,7 +155,7 @@ bool CBufSock::flush( uint *nbBytesRemaining )
|
|||
{
|
||||
SendFifo.front( tmpbuffer, size );
|
||||
}
|
||||
while ( ! SendFifo.empty() && ( (_ReadyToSendBuffer.size()==0) || (_ReadyToSendBuffer.size() +size < MaxTCPPacketSize) ) )
|
||||
while ( ! SendFifo.empty() && ( _ReadyToSendBuffer.empty() || (_ReadyToSendBuffer.size() +size < MaxTCPPacketSize) ) )
|
||||
{
|
||||
// Compute the size and add it into the beginning of the buffer
|
||||
netlen = htonl( (TBlockSize)size );
|
||||
|
@ -252,7 +252,7 @@ bool CBufSock::flush( uint *nbBytesRemaining )
|
|||
}
|
||||
|
||||
}
|
||||
while ( !SendFifo.empty() && _ReadyToSendBuffer.size()==0 );
|
||||
while ( !SendFifo.empty() && _ReadyToSendBuffer.empty() );
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -288,7 +288,7 @@ string CLoginClient::confirmConnection(sint32 shardId)
|
|||
// S05: create and send the "CS" message with the shardid choice to the LS
|
||||
//
|
||||
|
||||
if (!ShardList.size())
|
||||
if (ShardList.empty())
|
||||
{
|
||||
_LSCallbackClient->disconnect();
|
||||
return "No shard available";
|
||||
|
@ -358,7 +358,7 @@ string CLoginClient::selectShardBegin(sint32 shardId)
|
|||
ShardChooseShardReason = "";
|
||||
ShardChooseShard = false;
|
||||
|
||||
if (!ShardList.size())
|
||||
if (ShardList.empty())
|
||||
{
|
||||
_LSCallbackClient->disconnect();
|
||||
delete _LSCallbackClient;
|
||||
|
|
|
@ -420,7 +420,7 @@ bool CNamingClient::lookup (const std::string &name, CInetAddress &addr)
|
|||
vector<CInetAddress> addrs;
|
||||
find (name, addrs);
|
||||
|
||||
if (addrs.size()==0)
|
||||
if (addrs.empty())
|
||||
return false;
|
||||
|
||||
nlassert (addrs.size()==1);
|
||||
|
@ -436,7 +436,7 @@ bool CNamingClient::lookup (TServiceId sid, CInetAddress &addr)
|
|||
vector<CInetAddress> addrs;
|
||||
find (sid, addrs);
|
||||
|
||||
if (addrs.size()==0)
|
||||
if (addrs.empty())
|
||||
return false;
|
||||
|
||||
nlassert (addrs.size()==1);
|
||||
|
@ -465,7 +465,7 @@ bool CNamingClient::lookupAlternate (const std::string &name, CInetAddress &addr
|
|||
vector<CInetAddress> addrs;
|
||||
find (name, addrs);
|
||||
|
||||
if (addrs.size()==0)
|
||||
if (addrs.empty())
|
||||
return false;
|
||||
|
||||
nlassert (addrs.size()==1);
|
||||
|
|
|
@ -1460,7 +1460,7 @@ sint IService::main (const char *serviceShortName, const char *serviceLongName,
|
|||
mdDisplayVars.clear ();
|
||||
ICommand::execute(varName, logDisplayVars, true);
|
||||
const std::deque<std::string> &strs = mdDisplayVars.lockStrings();
|
||||
if (strs.size()>0)
|
||||
if (!strs.empty())
|
||||
{
|
||||
str += strs[0].substr(0,strs[0].size()-1);
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@ FILE(GLOB SRC *.cpp *.h *.def *.rc)
|
|||
NL_TARGET_DRIVER(nel_drv_dsound_win ${SRC})
|
||||
|
||||
INCLUDE_DIRECTORIES(BEFORE ${DXSDK_INCLUDE_DIR})
|
||||
TARGET_LINK_LIBRARIES(nel_drv_dsound_win nelmisc nelsnd_lowlevel ${DXSDK_DSOUND_LIBRARY} ${DXSDK_GUID_LIBRARY})
|
||||
TARGET_LINK_LIBRARIES(nel_drv_dsound_win nelmisc nelsnd_lowlevel ${DXSDK_DSOUND_LIBRARY})
|
||||
|
||||
NL_DEFAULT_PROPS(nel_drv_dsound_win "NeL, Driver, Sound: DirectSound")
|
||||
NL_ADD_RUNTIME_FLAGS(nel_drv_dsound_win)
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
# include <eax.h>
|
||||
#endif
|
||||
|
||||
#include <initguid.h>
|
||||
#include <dsound.h>
|
||||
|
||||
#include <iostream>
|
||||
|
|
|
@ -197,7 +197,7 @@ CSoundDriverAL::~CSoundDriverAL()
|
|||
|
||||
// Remove the allocated (but not exported) source and buffer names-
|
||||
// Release internal resources of all remaining ISource instances
|
||||
if (_Sources.size())
|
||||
if (!_Sources.empty())
|
||||
{
|
||||
nlwarning("AL: _Sources.size(): '%u'", (uint32)_Sources.size());
|
||||
set<CSourceAL *>::iterator it(_Sources.begin()), end(_Sources.end());
|
||||
|
@ -206,7 +206,7 @@ CSoundDriverAL::~CSoundDriverAL()
|
|||
}
|
||||
if (!_Buffers.empty()) alDeleteBuffers(compactAliveNames(_Buffers, alIsBuffer), &*_Buffers.begin());
|
||||
// Release internal resources of all remaining IEffect instances
|
||||
if (_Effects.size())
|
||||
if (!_Effects.empty())
|
||||
{
|
||||
nlwarning("AL: _Effects.size(): '%u'", (uint32)_Effects.size());
|
||||
set<CEffectAL *>::iterator it(_Effects.begin()), end(_Effects.end());
|
||||
|
|
|
@ -254,7 +254,7 @@ bool CSourceAL::play()
|
|||
if (!_IsPlaying) // set start time if not playing yet
|
||||
_StartTime = CTime::getLocalTime();
|
||||
_IsPlaying = true; // this play always virtually succeed but may not actually be playing
|
||||
if (_QueuedBuffers.size()) // ensure buffers have actually queued
|
||||
if (!_QueuedBuffers.empty()) // ensure buffers have actually queued
|
||||
{
|
||||
alSourcePlay(_Source);
|
||||
if (alGetError() != AL_NO_ERROR)
|
||||
|
@ -306,7 +306,7 @@ void CSourceAL::stop()
|
|||
alSourceStop(_Source);
|
||||
alTestError();
|
||||
// unqueue buffers
|
||||
while (_QueuedBuffers.size())
|
||||
while (!_QueuedBuffers.empty())
|
||||
{
|
||||
ALuint bufferName = _QueuedBuffers.front()->bufferName();
|
||||
alSourceUnqueueBuffers(_Source, 1, &bufferName);
|
||||
|
|
|
@ -30,7 +30,7 @@ NL_TARGET_DRIVER(nel_drv_xaudio2_win ${SRC})
|
|||
|
||||
INCLUDE_DIRECTORIES(BEFORE ${DXSDK_INCLUDE_DIR})
|
||||
|
||||
TARGET_LINK_LIBRARIES(nel_drv_xaudio2_win nelmisc nelsnd_lowlevel ${DXSDK_XAUDIO_LIBRARY} ${DXSDK_GUID_LIBRARY})
|
||||
TARGET_LINK_LIBRARIES(nel_drv_xaudio2_win nelmisc nelsnd_lowlevel ${DXSDK_XAUDIO_LIBRARY})
|
||||
|
||||
NL_DEFAULT_PROPS(nel_drv_xaudio2_win "NeL, Driver, Sound: XAudio2")
|
||||
NL_ADD_RUNTIME_FLAGS(nel_drv_xaudio2_win)
|
||||
|
|
|
@ -215,7 +215,7 @@ void CSoundDriverXAudio2::release()
|
|||
// the created instances must still be released by the user!
|
||||
|
||||
// Release internal resources of all remaining ISource instances
|
||||
if (_Sources.size())
|
||||
if (!_Sources.empty())
|
||||
{
|
||||
nlwarning(NLSOUND_XAUDIO2_PREFIX "_Sources.size(): '%u'", (uint32)_Sources.size());
|
||||
set<CSourceXAudio2 *>::iterator it(_Sources.begin()), end(_Sources.end());
|
||||
|
@ -223,7 +223,7 @@ void CSoundDriverXAudio2::release()
|
|||
_Sources.clear();
|
||||
}
|
||||
// Release internal resources of all remaining IBuffer instances
|
||||
if (_Buffers.size())
|
||||
if (!_Buffers.empty())
|
||||
{
|
||||
nlwarning(NLSOUND_XAUDIO2_PREFIX "_Buffers.size(): '%u'", (uint32)_Buffers.size());
|
||||
set<CBufferXAudio2 *>::iterator it(_Buffers.begin()), end(_Buffers.end());
|
||||
|
@ -231,7 +231,7 @@ void CSoundDriverXAudio2::release()
|
|||
_Buffers.clear();
|
||||
}
|
||||
// Release internal resources of all remaining IEffect instances
|
||||
if (_Effects.size())
|
||||
if (!_Effects.empty())
|
||||
{
|
||||
nlwarning(NLSOUND_XAUDIO2_PREFIX "_Effects.size(): '%u'", (uint32)_Effects.size());
|
||||
set<CEffectXAudio2 *>::iterator it(_Effects.begin()), end(_Effects.end());
|
||||
|
|
|
@ -363,7 +363,7 @@ CSound* CSoundBank::getSound(const NLMISC::CSheetId &sheetId)
|
|||
if (sheetId.getShortId() >= _Sounds.size())
|
||||
{
|
||||
std::string sheetName = sheetId.toString();
|
||||
nlwarning("NLSOUND: Sound sheet id '%s' exceeds loaded sound sheets", sheetName.c_str());
|
||||
nldebug("NLSOUND: Sound sheet id '%s' exceeds loaded sound sheets", sheetName.c_str());
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
|
|
@ -74,7 +74,7 @@ CMainWindow::CMainWindow(const QMap<QString, QSize> &customSizeHints, QWidget *p
|
|||
createStatusBar();
|
||||
|
||||
m_PanoplyPreview = new CPanoplyPreview(this);
|
||||
setCentralWidget(m_PanoplyPreview);
|
||||
setCentralWidget(m_PanoplyPreview);
|
||||
|
||||
createDockWindows();
|
||||
}
|
||||
|
|
|
@ -190,6 +190,7 @@ void CCrashReportWidget::onLoad()
|
|||
}
|
||||
|
||||
QTextStream ss( &f );
|
||||
ss.setCodec("UTF-8");
|
||||
m_ui.reportEdit->setPlainText( ss.readAll() );
|
||||
f.close();
|
||||
}
|
||||
|
|
|
@ -8,17 +8,7 @@ SET(RZ_SERVER_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/server/src)
|
|||
|
||||
ADD_SUBDIRECTORY(common)
|
||||
ADD_SUBDIRECTORY(tools)
|
||||
|
||||
IF(WITH_RYZOM_CLIENT)
|
||||
IF(NOT WITH_GUI)
|
||||
MESSAGE( FATAL_ERROR "The client cannot be built without the NeL GUI Library (WITH_GUI)")
|
||||
ENDIF()
|
||||
|
||||
ADD_SUBDIRECTORY(client)
|
||||
ELSEIF(WITH_RYZOM_TOOLS)
|
||||
# Need clientsheets lib for sheets packer tool
|
||||
ADD_SUBDIRECTORY(client)
|
||||
ENDIF()
|
||||
ADD_SUBDIRECTORY(client)
|
||||
|
||||
IF(WITH_RYZOM_SERVER OR WITH_RYZOM_TOOLS)
|
||||
# Need servershare for build packed collision tool
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# Need clientsheets lib for sheets packer tool
|
||||
# Need seven_zip for patch_gen and ryzom_installer
|
||||
ADD_SUBDIRECTORY(src)
|
||||
|
||||
IF(WITH_RYZOM_CLIENT)
|
||||
|
|
File diff suppressed because it is too large
Load diff
BIN
code/ryzom/client/data/fonts/ryzom.ttf
Normal file
BIN
code/ryzom/client/data/fonts/ryzom.ttf
Normal file
Binary file not shown.
BIN
code/ryzom/client/data/fonts/ryzom_monospace.ttf
Normal file
BIN
code/ryzom/client/data/fonts/ryzom_monospace.ttf
Normal file
Binary file not shown.
|
@ -212,7 +212,6 @@
|
|||
background_bitmap_view=""
|
||||
home=""
|
||||
browse_next_time="false"
|
||||
timeout="5"
|
||||
form_text_area_group="edit_box_widget_multiline">
|
||||
<group id="black"
|
||||
posref="BR BR"
|
||||
|
|
|
@ -645,7 +645,7 @@
|
|||
id="dist"
|
||||
posref="BM BM"
|
||||
x="0"
|
||||
y="0"
|
||||
y="2"
|
||||
hardtext="uiRadarZoom0"
|
||||
shadow="true"
|
||||
color="255 255 255 255"
|
||||
|
@ -694,7 +694,7 @@
|
|||
id="range"
|
||||
posref="BM MM"
|
||||
x="0"
|
||||
y="16"
|
||||
y="20"
|
||||
hardtext="uiRadarZoom0"
|
||||
shadow="true"
|
||||
color="255 255 255 255"
|
||||
|
@ -748,8 +748,8 @@
|
|||
posref="BM BM"
|
||||
x="0"
|
||||
y="26"
|
||||
w="44"
|
||||
h="18" />
|
||||
w="46"
|
||||
h="25" />
|
||||
</group>
|
||||
<tree node="compass" />
|
||||
<link expr="switch(@UI:SAVE:RADARZOOM, 'uiRadarZoom0', 'uiRadarZoom1', 'uiRadarZoom2', 'uiRadarZoom3')"
|
||||
|
@ -811,7 +811,7 @@
|
|||
id="upload"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
y="-20"
|
||||
y="-18"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="10"
|
||||
|
@ -823,7 +823,7 @@
|
|||
posref="BL TL"
|
||||
posparent="upload"
|
||||
x="0"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="10"
|
||||
|
@ -835,7 +835,7 @@
|
|||
posref="BL TL"
|
||||
posparent="download"
|
||||
x="0"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="10"
|
||||
|
@ -847,7 +847,7 @@
|
|||
posref="BL TL"
|
||||
posparent="ping"
|
||||
x="0"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="10"
|
||||
|
@ -870,7 +870,7 @@
|
|||
id="up_title"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
y="-4"
|
||||
y="-2"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -879,7 +879,7 @@
|
|||
id="down_title"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
y="-20"
|
||||
y="-18"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -888,7 +888,7 @@
|
|||
id="ping_title"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
y="-36"
|
||||
y="-34"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -897,7 +897,7 @@
|
|||
id="packet_title"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
y="-52"
|
||||
y="-50"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -906,7 +906,7 @@
|
|||
id="server_title"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -915,7 +915,7 @@
|
|||
id="upload"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-4"
|
||||
y="-2"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="11"
|
||||
|
@ -926,7 +926,7 @@
|
|||
id="download"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-20"
|
||||
y="-18"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="11"
|
||||
|
@ -937,7 +937,7 @@
|
|||
id="ping"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-36"
|
||||
y="-34"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="11"
|
||||
|
@ -948,7 +948,7 @@
|
|||
id="packet"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-52"
|
||||
y="-50"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="11"
|
||||
|
@ -959,7 +959,7 @@
|
|||
id="server0"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -969,7 +969,7 @@
|
|||
id="server1"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -979,7 +979,7 @@
|
|||
id="server2"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -989,7 +989,7 @@
|
|||
id="server3"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -999,7 +999,7 @@
|
|||
id="server4"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -1009,7 +1009,7 @@
|
|||
id="server5"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -1019,7 +1019,7 @@
|
|||
id="server6"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -1029,7 +1029,7 @@
|
|||
id="server7"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -1039,7 +1039,7 @@
|
|||
id="server8"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
@ -1049,7 +1049,7 @@
|
|||
id="server9"
|
||||
posref="TR TR"
|
||||
x="0"
|
||||
y="-68"
|
||||
y="-66"
|
||||
color="255 255 255 255"
|
||||
fontsize="11"
|
||||
shadow="true"
|
||||
|
|
|
@ -583,11 +583,11 @@
|
|||
<param name="title_offset_x"
|
||||
value="8" />
|
||||
<param name="title_offset_y"
|
||||
value="-10" />
|
||||
value="-7" />
|
||||
<param name="title_offset_openable_x"
|
||||
value="20" />
|
||||
<param name="title_offset_openable_y"
|
||||
value="-10" />
|
||||
value="-7" />
|
||||
<param name="scrollbar_offset_x"
|
||||
value="6" />
|
||||
<param name="scrollbar_size_w"
|
||||
|
@ -732,11 +732,11 @@
|
|||
<param name="title_offset_x"
|
||||
value="56" />
|
||||
<param name="title_offset_y"
|
||||
value="-26" />
|
||||
value="-23" />
|
||||
<param name="title_offset_openable_x"
|
||||
value="20" />
|
||||
<param name="title_offset_openable_y"
|
||||
value="-10" />
|
||||
value="-7" />
|
||||
<param name="scrollbar_offset_x"
|
||||
value="6" />
|
||||
<param name="scrollbar_size_w"
|
||||
|
@ -873,11 +873,11 @@
|
|||
<param name="title_offset_x"
|
||||
value="28" />
|
||||
<param name="title_offset_y"
|
||||
value="-10" />
|
||||
value="-7" />
|
||||
<param name="title_offset_openable_x"
|
||||
value="20" />
|
||||
<param name="title_offset_openable_y"
|
||||
value="-10" />
|
||||
value="-7" />
|
||||
<param name="scrollbar_offset_x"
|
||||
value="6" />
|
||||
<param name="scrollbar_size_w"
|
||||
|
@ -1014,11 +1014,11 @@
|
|||
<param name="title_offset_x"
|
||||
value="8" />
|
||||
<param name="title_offset_y"
|
||||
value="-6" />
|
||||
value="-4" />
|
||||
<param name="title_offset_openable_x"
|
||||
value="18" />
|
||||
<param name="title_offset_openable_y"
|
||||
value="-6" />
|
||||
value="-4" />
|
||||
<param name="header_h"
|
||||
value="14" />
|
||||
<param name="open_state_tx_opened"
|
||||
|
@ -1109,11 +1109,11 @@
|
|||
<param name="title_offset_x"
|
||||
value="8" />
|
||||
<param name="title_offset_y"
|
||||
value="-5" />
|
||||
value="-3" />
|
||||
<param name="title_offset_openable_x"
|
||||
value="20" />
|
||||
<param name="title_offset_openable_y"
|
||||
value="-5" />
|
||||
value="-3" />
|
||||
<param name="header_h"
|
||||
value="12" />
|
||||
<param name="open_state_tx_opened"
|
||||
|
@ -1202,11 +1202,11 @@
|
|||
<param name="title_offset_x"
|
||||
value="8" />
|
||||
<param name="title_offset_y"
|
||||
value="-5" />
|
||||
value="-3" />
|
||||
<param name="title_offset_openable_x"
|
||||
value="22" />
|
||||
<param name="title_offset_openable_y"
|
||||
value="-5" />
|
||||
value="-3" />
|
||||
<param name="header_h"
|
||||
value="10" />
|
||||
<param name="open_state_tx_opened"
|
||||
|
@ -1295,11 +1295,11 @@
|
|||
<param name="title_offset_x"
|
||||
value="18" />
|
||||
<param name="title_offset_y"
|
||||
value="-5" />
|
||||
value="-3" />
|
||||
<param name="title_offset_openable_x"
|
||||
value="24" />
|
||||
<param name="title_offset_openable_y"
|
||||
value="-5" />
|
||||
value="-3" />
|
||||
<param name="header_h"
|
||||
value="10" />
|
||||
<param name="open_state_tx_opened"
|
||||
|
@ -1599,11 +1599,11 @@
|
|||
<param name="title_offset_x"
|
||||
value="8" />
|
||||
<param name="title_offset_y"
|
||||
value="-6" />
|
||||
value="-4" />
|
||||
<param name="title_offset_openable_x"
|
||||
value="18" />
|
||||
<param name="title_offset_openable_y"
|
||||
value="-6" />
|
||||
value="-4" />
|
||||
<param name="header_h"
|
||||
value="14" />
|
||||
<!-- View state opened/closed (defined TL TL) -->
|
||||
|
@ -1698,11 +1698,11 @@
|
|||
<param name="title_offset_x"
|
||||
value="8" />
|
||||
<param name="title_offset_y"
|
||||
value="-2" />
|
||||
value="0" />
|
||||
<param name="title_offset_openable_x"
|
||||
value="40" />
|
||||
<param name="title_offset_openable_y"
|
||||
value="-2" />
|
||||
value="0" />
|
||||
<param name="header_h"
|
||||
value="12" />
|
||||
<!-- View state opened/closed (defined TL TL) -->
|
||||
|
@ -1916,6 +1916,8 @@ This MUST follow the Enum MISSION_DESC::TIconId
|
|||
value="basic.ttf" /> -->
|
||||
<param name="font"
|
||||
value="ryzom.ttf" />
|
||||
<param name="monospace_font"
|
||||
value="ryzom_monospace.ttf" />
|
||||
<param name="add_coef_font"
|
||||
value="1" />
|
||||
<param name="mul_coef_anim"
|
||||
|
|
|
@ -138,7 +138,7 @@
|
|||
x="0"
|
||||
y="6"
|
||||
posref="BM BM"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
onclick_l="proc"
|
||||
params_l="welcome_close"
|
||||
hardtext="uittOK" />
|
||||
|
@ -199,7 +199,7 @@
|
|||
x="-15"
|
||||
y="10"
|
||||
posref="BM BM"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
onclick_l="proc"
|
||||
params_l="active_hardware_cursor"
|
||||
hardtext="uiYes" />
|
||||
|
@ -208,7 +208,7 @@
|
|||
y="0"
|
||||
posparent="active_ok"
|
||||
posref="BR BL"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
onclick_l="proc"
|
||||
params_l="close_hardware_cursor"
|
||||
hardtext="uiNo" />
|
||||
|
@ -316,7 +316,7 @@
|
|||
x="0"
|
||||
y="6"
|
||||
posref="BM BM"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
onclick_l="proc"
|
||||
params_l="universe_chanel_warning_close"
|
||||
hardtext="uittOK" />
|
||||
|
@ -356,9 +356,9 @@
|
|||
</proc>
|
||||
<group type="container"
|
||||
id="death_warning"
|
||||
w="400"
|
||||
pop_min_w="400"
|
||||
pop_max_w="400"
|
||||
w="500"
|
||||
pop_min_w="500"
|
||||
pop_max_w="500"
|
||||
h="250"
|
||||
pop_min_h="250"
|
||||
pop_max_h="250"
|
||||
|
@ -401,7 +401,7 @@
|
|||
id="death_warning_text"
|
||||
posref="TM TM"
|
||||
x="0"
|
||||
y="-20"
|
||||
y="-10"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -416,6 +416,7 @@
|
|||
y="30"
|
||||
w="0"
|
||||
h="16"
|
||||
y_text="-5"
|
||||
fontsize="10"
|
||||
hardtext="uiDeathWarningAvoid"
|
||||
dblink="UI:VARIABLES:TEMP_DEATH_WARNING_AVOID"
|
||||
|
@ -424,7 +425,7 @@
|
|||
x="0"
|
||||
y="6"
|
||||
posref="BM BM"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
onclick_l="proc"
|
||||
params_l="death_warning_close"
|
||||
hardtext="uittOK" />
|
||||
|
@ -463,9 +464,9 @@
|
|||
</proc>
|
||||
<group type="container"
|
||||
id="night_warning"
|
||||
w="400"
|
||||
pop_min_w="400"
|
||||
pop_max_w="400"
|
||||
w="500"
|
||||
pop_min_w="500"
|
||||
pop_max_w="500"
|
||||
h="250"
|
||||
pop_min_h="250"
|
||||
pop_max_h="250"
|
||||
|
@ -508,7 +509,7 @@
|
|||
id="night_warning_text"
|
||||
posref="TM TM"
|
||||
x="0"
|
||||
y="-20"
|
||||
y="-10"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -531,7 +532,7 @@
|
|||
x="0"
|
||||
y="6"
|
||||
posref="BM BM"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
onclick_l="proc"
|
||||
params_l="night_warning_close"
|
||||
hardtext="uittOK" />
|
||||
|
@ -2828,7 +2829,7 @@
|
|||
global_color_normal="true"
|
||||
global_color_over="true"
|
||||
global_color_pushed="true"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
fontsize="10"
|
||||
shadow="true"
|
||||
case_mode="%case_upper"
|
||||
|
@ -2887,21 +2888,21 @@
|
|||
x="4"
|
||||
y="0"
|
||||
posref="TL TL"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
onclick_l="proc"
|
||||
params_l="proc_stat_report_yes"
|
||||
hardtext="uiYes" />
|
||||
<ctrl style="button_cancel"
|
||||
x="4"
|
||||
posparent="ok"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
posref="TR TL"
|
||||
onclick_l="leave_modal"
|
||||
hardtext="uiNo" />
|
||||
<ctrl style="button_always"
|
||||
x="4"
|
||||
posparent="cancel"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
posref="TR TL"
|
||||
onclick_l="proc"
|
||||
params_l="proc_stat_report_always"
|
||||
|
|
|
@ -57,7 +57,7 @@
|
|||
<view type="text"
|
||||
id="t"
|
||||
posref="TL TL"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -66,7 +66,7 @@
|
|||
id="max"
|
||||
posref="MR MR"
|
||||
x="-4"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -76,7 +76,7 @@
|
|||
id="sep"
|
||||
posparent="max"
|
||||
posref="TL TR"
|
||||
x="-1"
|
||||
x="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -128,7 +128,7 @@
|
|||
<view type="text"
|
||||
id="t"
|
||||
posref="TL TL"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -137,7 +137,7 @@
|
|||
id="val"
|
||||
posref="MR MR"
|
||||
x="-4"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -176,7 +176,7 @@
|
|||
<view type="text"
|
||||
id="t"
|
||||
posref="TL TL"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -185,7 +185,7 @@
|
|||
id="val"
|
||||
posref="MR MR"
|
||||
x="-4"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -223,7 +223,7 @@
|
|||
<view type="text"
|
||||
id="t"
|
||||
posref="TL TL"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -232,7 +232,7 @@
|
|||
id="val"
|
||||
posref="MR MR"
|
||||
x="-4"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -271,7 +271,7 @@
|
|||
<view type="text"
|
||||
id="t"
|
||||
posref="TL TL"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -280,7 +280,7 @@
|
|||
id="val"
|
||||
posref="MR MR"
|
||||
x="-4"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -317,7 +317,7 @@
|
|||
<view type="text"
|
||||
id="t"
|
||||
posref="TL TL"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -326,7 +326,7 @@
|
|||
id="val"
|
||||
posref="MR MR"
|
||||
x="-4"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -362,7 +362,7 @@
|
|||
<view type="text"
|
||||
id="t"
|
||||
posref="TL TL"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -371,7 +371,7 @@
|
|||
id="max"
|
||||
posref="MR MR"
|
||||
x="-4"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -380,7 +380,7 @@
|
|||
id="sep"
|
||||
posref="MR MR"
|
||||
x="-20"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -389,7 +389,7 @@
|
|||
id="val"
|
||||
posref="MR MR"
|
||||
x="-37"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -432,7 +432,7 @@
|
|||
id="val"
|
||||
posref="MR MR"
|
||||
x="-4"
|
||||
y="-2"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
shadow="true"
|
||||
fontsize="12"
|
||||
|
@ -480,7 +480,7 @@
|
|||
id="t"
|
||||
posref="TL TL"
|
||||
x="16"
|
||||
y="-3"
|
||||
y="2"
|
||||
color="255 255 255 255"
|
||||
global_color="false"
|
||||
fontsize="10"
|
||||
|
@ -519,7 +519,7 @@
|
|||
<view type="text"
|
||||
id="t"
|
||||
posref="TL TL"
|
||||
y="-1"
|
||||
y="0"
|
||||
color="255 255 255 255"
|
||||
fontsize="12"
|
||||
shadow="true"
|
||||
|
@ -569,12 +569,12 @@
|
|||
value="-1" />
|
||||
<group type="container"
|
||||
id="info_player_skills"
|
||||
w="500"
|
||||
w="540"
|
||||
title="uiSkillsTitle"
|
||||
global_color="false"
|
||||
header_color="UI:SAVE:WIN:COLORS:PLA"
|
||||
min_w="330"
|
||||
max_w="500"
|
||||
min_w="350"
|
||||
max_w="540"
|
||||
min_h="550"
|
||||
max_h="1600"
|
||||
pop_max_h="800"
|
||||
|
@ -681,7 +681,7 @@
|
|||
posparent="basics_skills"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
y="-24"
|
||||
y="-10"
|
||||
hardtext="uiRaceBold"
|
||||
shadow="true"
|
||||
color="255 255 255 255"
|
||||
|
@ -701,7 +701,7 @@
|
|||
posref="TL TL"
|
||||
sizeref="w"
|
||||
h="14"
|
||||
y="-48">
|
||||
y="-30">
|
||||
<view type="text"
|
||||
id="guild_title"
|
||||
posref="TL TL"
|
||||
|
@ -719,7 +719,7 @@
|
|||
shadow="true"
|
||||
color="255 200 55 255"
|
||||
global_color="false"
|
||||
x="2"
|
||||
x="2"
|
||||
fontsize="12"
|
||||
textid="SERVER:GUILD:NAME"
|
||||
dynamic_string="false" />
|
||||
|
@ -729,7 +729,7 @@
|
|||
sizeref="w5"
|
||||
w="-1"
|
||||
h="188"
|
||||
y="-72">
|
||||
y="-52">
|
||||
<view type="text"
|
||||
id="Skill_t"
|
||||
posref="TL TL"
|
||||
|
@ -744,7 +744,7 @@
|
|||
posref="TL TL"
|
||||
x="0"
|
||||
sizeref="w"
|
||||
y="-14"
|
||||
y="-16"
|
||||
w="0"
|
||||
h="172"
|
||||
inherit_gc_alpha="true">
|
||||
|
@ -855,7 +855,7 @@
|
|||
w="-1"
|
||||
x="1"
|
||||
h="188"
|
||||
y="-72">
|
||||
y="-52">
|
||||
<view type="text"
|
||||
id="Skill_t"
|
||||
posref="TL TL"
|
||||
|
@ -870,7 +870,7 @@
|
|||
posref="TL TL"
|
||||
x="0"
|
||||
sizeref="w"
|
||||
y="-14"
|
||||
y="-16"
|
||||
w="0"
|
||||
h="172"
|
||||
inherit_gc_alpha="true">
|
||||
|
@ -950,7 +950,7 @@
|
|||
sizeref="w5"
|
||||
w="-1"
|
||||
h="83"
|
||||
y="-264">
|
||||
y="-248">
|
||||
<view type="text"
|
||||
id="sp"
|
||||
posref="TL TL"
|
||||
|
@ -965,7 +965,7 @@
|
|||
posref="TL TL"
|
||||
x="0"
|
||||
sizeref="w"
|
||||
y="-14"
|
||||
y="-16"
|
||||
w="0"
|
||||
h="67"
|
||||
inherit_gc_alpha="true">
|
||||
|
@ -1024,7 +1024,7 @@
|
|||
w="-1"
|
||||
x="1"
|
||||
h="83"
|
||||
y="-264">
|
||||
y="-248">
|
||||
<view type="text"
|
||||
id="cm"
|
||||
posref="TL TL"
|
||||
|
@ -1039,7 +1039,7 @@
|
|||
posref="TL TL"
|
||||
x="0"
|
||||
sizeref="w"
|
||||
y="-14"
|
||||
y="-16"
|
||||
w="0"
|
||||
h="67"
|
||||
inherit_gc_alpha="true">
|
||||
|
@ -1110,8 +1110,8 @@
|
|||
posref="TL TL"
|
||||
sizeref="w5"
|
||||
w="-1"
|
||||
h="155"
|
||||
y="-347">
|
||||
h="157"
|
||||
y="-338">
|
||||
<view type="text"
|
||||
id="resists_t"
|
||||
posref="TL TL"
|
||||
|
@ -1129,15 +1129,15 @@
|
|||
posref="TL TL"
|
||||
x="0"
|
||||
sizeref="w"
|
||||
y="-14"
|
||||
y="-16"
|
||||
w="0"
|
||||
h="141"
|
||||
h="140"
|
||||
inherit_gc_alpha="true">
|
||||
<instance template="tipc_magic_resist"
|
||||
id="Desert"
|
||||
posref="TL TL"
|
||||
x="8"
|
||||
y="-10"
|
||||
y="-8"
|
||||
w="-8"
|
||||
val="%player_resist_desert" />
|
||||
<instance template="tipc_magic_resist"
|
||||
|
@ -1173,8 +1173,8 @@
|
|||
posref="TM TL"
|
||||
sizeref="w5"
|
||||
w="-1"
|
||||
h="155"
|
||||
y="-347">
|
||||
h="158"
|
||||
y="-337">
|
||||
<view type="text"
|
||||
id="protections_t"
|
||||
posref="TL TL"
|
||||
|
@ -1192,15 +1192,15 @@
|
|||
posref="TL TL"
|
||||
x="0"
|
||||
sizeref="w"
|
||||
y="-14"
|
||||
y="-16"
|
||||
w="0"
|
||||
h="141"
|
||||
h="140"
|
||||
inherit_gc_alpha="true">
|
||||
<instance template="tipc_magic_protect"
|
||||
id="Acid"
|
||||
posref="TL TL"
|
||||
x="8"
|
||||
y="-10"
|
||||
y="-8"
|
||||
w="-8"
|
||||
val="%player_protect_acid" />
|
||||
<instance template="tipc_magic_protect"
|
||||
|
@ -1256,8 +1256,8 @@
|
|||
posref="TL TL"
|
||||
sizeref="w5"
|
||||
w="-1"
|
||||
h="40"
|
||||
y="-510">
|
||||
h="42"
|
||||
y="-500">
|
||||
<view type="text"
|
||||
id="defense_t"
|
||||
posref="TL TL"
|
||||
|
@ -1272,15 +1272,15 @@
|
|||
posref="TL TL"
|
||||
x="0"
|
||||
sizeref="w"
|
||||
y="-14"
|
||||
y="-16"
|
||||
w="0"
|
||||
h="26"
|
||||
h="24"
|
||||
inherit_gc_alpha="true">
|
||||
<instance template="tipc_scoreEP"
|
||||
id="dodge"
|
||||
posref="TL TL"
|
||||
x="8"
|
||||
y="-7"
|
||||
y="-5"
|
||||
w="-8"
|
||||
text="uiDodge"
|
||||
val="%player_dodge_current"
|
||||
|
@ -1298,21 +1298,21 @@
|
|||
posref="TM TL"
|
||||
sizeref="w5"
|
||||
w="-1"
|
||||
h="40"
|
||||
y="-510">
|
||||
h="42"
|
||||
y="-500">
|
||||
<group id="black"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
sizeref="w"
|
||||
y="-14"
|
||||
y="-16"
|
||||
w="0"
|
||||
h="26"
|
||||
h="24"
|
||||
inherit_gc_alpha="true">
|
||||
<instance template="tipc_scoreEP"
|
||||
id="parry"
|
||||
posref="TL TL"
|
||||
x="8"
|
||||
y="-7"
|
||||
y="-5"
|
||||
w="-8"
|
||||
text="uiParry"
|
||||
val="%player_parry_current"
|
||||
|
@ -1403,7 +1403,7 @@
|
|||
x="0"
|
||||
y="-10" />
|
||||
<group id="pvp_points"
|
||||
posparent="fp"
|
||||
posparent="fp"
|
||||
posref="BL TL"
|
||||
sizeref="wh"
|
||||
w="-1"
|
||||
|
@ -1423,7 +1423,7 @@
|
|||
posref="TL TL"
|
||||
x="0"
|
||||
sizeref="w"
|
||||
y="-14"
|
||||
y="-16"
|
||||
w="0"
|
||||
h="26"
|
||||
inherit_gc_alpha="true">
|
||||
|
@ -1453,8 +1453,8 @@
|
|||
inherit_gc_alpha="true" />
|
||||
</group>
|
||||
</group>
|
||||
<group h="0" id="rpjobs" posref="TL TL" sizeref="wh" w="0" y="0">
|
||||
<ctrl style="text_button_header"
|
||||
<group h="0" id="rpjobs" posref="TL TL" sizeref="wh" w="0" y="0">
|
||||
<ctrl style="text_button_header"
|
||||
button_type="push_button"
|
||||
id="browse_home"
|
||||
posref="TR TR"
|
||||
|
@ -1464,8 +1464,7 @@
|
|||
tooltip="uittBrowseRefresh"
|
||||
onclick_l="browse_home"
|
||||
params_l="name=ui:interface:info_player_skills:content:rpjobs:html" />
|
||||
|
||||
<group type="webig_html"
|
||||
<group type="webig_html"
|
||||
id="html"
|
||||
posref="TL TL"
|
||||
url="http://app.ryzom.com/app_rpjobs/index.php"
|
||||
|
@ -1583,24 +1582,23 @@
|
|||
posref="TR TR"
|
||||
active="true"
|
||||
y="-9"
|
||||
wmargin="8"
|
||||
hardtext="uiInfo"
|
||||
tooltip="uittIdentityInfo"
|
||||
onclick_l="open_title_help"
|
||||
params_l="from=user" />
|
||||
<ctrl style="text_button_header"
|
||||
wmargin="8"
|
||||
hardtext="uiInfo"
|
||||
tooltip="uittIdentityInfo"
|
||||
onclick_l="open_title_help"
|
||||
params_l="from=user" />
|
||||
<ctrl style="text_button_header"
|
||||
button_type="push_button"
|
||||
id="browse_home"
|
||||
posref="BR TR"
|
||||
posparent="title"
|
||||
posparent="title"
|
||||
x="0"
|
||||
y="-2"
|
||||
hardtext="uiBrowseRefresh"
|
||||
tooltip="uittBrowseRefresh"
|
||||
onclick_l="browse_home"
|
||||
params_l="name=ui:interface:info_player_skills:content:webinfos:html" />
|
||||
|
||||
<group type="webig_html"
|
||||
<group type="webig_html"
|
||||
id="html"
|
||||
posref="TL TL"
|
||||
posparent="parent"
|
||||
|
@ -3776,7 +3774,7 @@
|
|||
y="0"
|
||||
posref="ML MR"
|
||||
posparent="browse_undo"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
onclick_l="lua"
|
||||
params_l="game.RingAccessPointFilter:open()"
|
||||
hardtext="uiRingAccessPointFilter"
|
||||
|
@ -3788,7 +3786,7 @@
|
|||
y="0"
|
||||
posref="ML MR"
|
||||
posparent="browse_filter"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
onclick_l="lua"
|
||||
params_l="game.RingAccessPointFilter:validate()"
|
||||
hardtext="uiBotChatRefresh"
|
||||
|
|
|
@ -27,6 +27,15 @@
|
|||
<!-- Yoyo: prefer show an empty list when clicking -->
|
||||
<!-- <action handler="leave_modal" cond="eq(getprop('ui:interface:bag_choose:list:nbelt'),0)" /> -->
|
||||
</proc>
|
||||
<proc id="select_special_items">
|
||||
<action handler="set" params="target_property=ui:interface:inventory:content:bag:iil:active|value=0" />
|
||||
<action handler="set" params="target_property=ui:interface:inventory:content:bag:webitems:active|value=1" />
|
||||
<action handler="browse_home" params="name=ui:interface:inventory:content:bag:webitems:html" />
|
||||
</proc>
|
||||
<proc id="select_bag_items">
|
||||
<action handler="set" params="target_property=ui:interface:inventory:content:bag:iil:active|value=1" />
|
||||
<action handler="set" params="target_property=ui:interface:inventory:content:bag:webitems:active|value=0" />
|
||||
</proc>
|
||||
<!-- ************* -->
|
||||
<!-- * EQUIPMENT * -->
|
||||
<!-- ************* -->
|
||||
|
@ -44,6 +53,83 @@
|
|||
onclick_l="proc"
|
||||
params_l="inv_left_click_on_slot"
|
||||
auto_grayed="false" />
|
||||
|
||||
<template name="img_button"
|
||||
id="image_button"
|
||||
ok_text="uittOK"
|
||||
tx_over="blank.tga"
|
||||
cancel_text="uittCancel"
|
||||
posparent="parent"
|
||||
posref="BM TM"
|
||||
onclick_ok=""
|
||||
onclick_ok_param=""
|
||||
x="0"
|
||||
y="0"
|
||||
keep="true"
|
||||
tooltip_ok=""
|
||||
avoid_resize_parent="false">
|
||||
<group id="#id"
|
||||
posparent="#posparent"
|
||||
posref="#posref"
|
||||
child_resize_w="true"
|
||||
child_resize_h="true"
|
||||
x="#x"
|
||||
y="#y"
|
||||
avoid_resize_parent="#avoid_resize_parent">
|
||||
<ctrl style="button_ok"
|
||||
id="bb"
|
||||
x="0"
|
||||
y="0"
|
||||
posref="TL TL"
|
||||
text_y="-2"
|
||||
onclick_l="#onclick_ok"
|
||||
params_l="#onclick_ok_param"
|
||||
hardtext="#ok_text"
|
||||
tooltip="#tooltip_ok" />
|
||||
<ctrl type="button"
|
||||
id="button"
|
||||
button_type="push_button"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
y="0"
|
||||
scale="false"
|
||||
tx_over="#tx_over"
|
||||
color="255 255 255 255"
|
||||
col_pushed="255 255 255 255"
|
||||
col_over="255 255 255 0"
|
||||
onclick_l="#onclick_ok"
|
||||
params_l="#onclick_ok_param" />
|
||||
</group>
|
||||
</template>
|
||||
|
||||
<template name="image_button"
|
||||
tx_over="blank.tga"
|
||||
onclick_l=""
|
||||
params_l="" >
|
||||
<group id="#id"
|
||||
posref="TL TL"
|
||||
x="0"
|
||||
y="0"
|
||||
sizeref="wh"
|
||||
w="0"
|
||||
h="0">
|
||||
<ctrl type="button"
|
||||
id=""
|
||||
button_type="push_button"
|
||||
posref=""
|
||||
posparent=""
|
||||
x=""
|
||||
y=""
|
||||
scale="false"
|
||||
tx_over="#tx_over"
|
||||
color="255 255 255 255"
|
||||
col_pushed="255 255 255 255"
|
||||
col_over="255 255 255 0"
|
||||
onclick_l="#onclick_l"
|
||||
params_l="#params_l" />
|
||||
</group>
|
||||
</template>
|
||||
|
||||
<!-- For the moment we use a template because we have to make the fake container -->
|
||||
<template name="tinv_equip">
|
||||
<group id="equip"
|
||||
|
@ -159,6 +245,7 @@
|
|||
posparent="jewelry"
|
||||
hardtext="uiJewelryTitle"
|
||||
fontsize="10"
|
||||
y="2"
|
||||
shadow="true" />
|
||||
<!-- Armor -->
|
||||
<group id="armors"
|
||||
|
@ -234,6 +321,7 @@
|
|||
posparent="armors"
|
||||
hardtext="uiArmorTitle"
|
||||
fontsize="10"
|
||||
y="2"
|
||||
shadow="true" />
|
||||
<!--
|
||||
<group id="hands" posparent="armors" x="8" y="0" w="86" h="42" posref="TR TL" >
|
||||
|
@ -334,6 +422,7 @@
|
|||
<instance template="tinv_nbslots_bulk_weight"
|
||||
id="ibw"
|
||||
x="-16"
|
||||
y="2"
|
||||
inv_branch="%bag"
|
||||
inv_bulk_max="%bag_bulk_max" />
|
||||
</group>
|
||||
|
@ -481,6 +570,7 @@
|
|||
posref="TL TL"
|
||||
group_onclick_r="active_menu"
|
||||
group_params_r="menu=ui:interface:base_menu_with_color">
|
||||
|
||||
<group type="tab"
|
||||
id="inv_select"
|
||||
child_resize_w="true"
|
||||
|
@ -624,6 +714,99 @@
|
|||
sizeref="wh"
|
||||
w="0"
|
||||
h="0">
|
||||
<!-- Special Items -->
|
||||
<ctrl style="text_button_16"
|
||||
id="bag_items"
|
||||
posref="TL TL"
|
||||
y="-2"
|
||||
x="10"
|
||||
wmargin="8"
|
||||
hardtext="uitabInvBag"
|
||||
tooltip="uitabInvBag"
|
||||
onclick_l="proc"
|
||||
params_l="select_bag_items" />
|
||||
<ctrl style="text_button_16"
|
||||
id="special_items"
|
||||
posref="TR TL"
|
||||
posparent="bag_items"
|
||||
y="0"
|
||||
x="2"
|
||||
wmargin="8"
|
||||
hardtext="uiSpecialLabo"
|
||||
tooltip="uiSpecialLabo"
|
||||
onclick_l="proc"
|
||||
params_l="select_special_items" />
|
||||
<!-- Keys
|
||||
<ctrl style="text_button_16"
|
||||
id="keys"
|
||||
posref="TR TL"
|
||||
posparent="special_items"
|
||||
y="0"
|
||||
x="2"
|
||||
wmargin="8"
|
||||
hardtext="Keys"
|
||||
tooltip="uiSpecialLabo"
|
||||
onclick_l="open_title_help"
|
||||
params_l="from=user" />-->
|
||||
|
||||
<group id="webitems" posref="TL TL" sizeref="wh" h="-45" w="0" x="-10" y="-25" active="0">
|
||||
<group type="webig_html"
|
||||
id="html"
|
||||
url="http://app.ryzom.com/app_arcc/index.php?action=mItem_DisplayUserItems"
|
||||
title_prefix=""
|
||||
sizeref="wh"
|
||||
x="10"
|
||||
y="0"
|
||||
w="0"
|
||||
h="0"
|
||||
background_color="0 0 0 255"
|
||||
error_color="255 240 48 255"
|
||||
link_color="240 155 100 255"
|
||||
text_color="210 210 210 255"
|
||||
h1_color="255 255 255 255"
|
||||
h2_color="255 255 255 255"
|
||||
h3_color="255 255 255 255"
|
||||
h4_color="255 255 255 255"
|
||||
h5_color="255 255 255 255"
|
||||
h6_color="100 255 100 255"
|
||||
text_font_size="10"
|
||||
h1_font_size="20"
|
||||
h2_font_size="18"
|
||||
h3_font_size="16"
|
||||
h4_font_size="14"
|
||||
h5_font_size="12"
|
||||
h6_font_size="10"
|
||||
paragraph_begin_space="1"
|
||||
multi_line_space_factor="0.25"
|
||||
td_begin_space="16"
|
||||
li_begin_space="4"
|
||||
ul_begin_space="12"
|
||||
li_indent="0"
|
||||
ul_indent="30"
|
||||
checkbox_bitmap_normal="w_slot_on.tga"
|
||||
checkbox_bitmap_pushed="w_opacity_on.tga"
|
||||
checkbox_bitmap_over=""
|
||||
background_bitmap_view="black2"
|
||||
home="http://app.ryzom.com/app_arcc/index.php?action=mItem_DisplayUserItems"
|
||||
browse_next_time="true"
|
||||
form_text_area_group="edit_box_widget_multiline">
|
||||
<group type="list"
|
||||
id="text_list"
|
||||
fontsize="9"
|
||||
posref="TL TL"
|
||||
posparent="black"
|
||||
x="9"
|
||||
y="-2"
|
||||
space="0"
|
||||
sizeref="hw"
|
||||
w="-4"
|
||||
h="-4"
|
||||
maxelements="2000" />
|
||||
<ctrl style="skin_scroll"
|
||||
id="scroll_bar" />
|
||||
</group>
|
||||
</group>
|
||||
|
||||
<instance template="tinv_nbslots_bulk_weight"
|
||||
id="ibw"
|
||||
x="0"
|
||||
|
@ -632,7 +815,7 @@
|
|||
<instance template="tinv_item_list"
|
||||
id="iil"
|
||||
inv_branch_nb="%max_bag_invslot"
|
||||
y="-16"
|
||||
y="-18"
|
||||
sizeref="wh"
|
||||
h="-16"
|
||||
inv_branch="%bag"
|
||||
|
@ -841,7 +1024,7 @@
|
|||
xitem="2"
|
||||
yitem="-2"
|
||||
xtext="46"
|
||||
ytext="-2"
|
||||
ytext="0"
|
||||
hspace="2"
|
||||
array="false"
|
||||
maxitem="%max_temp_invslot"
|
||||
|
|
|
@ -838,6 +838,8 @@ This MUST follow the Enum MISSION_DESC::TIconId
|
|||
value="basic.ttf" /> -->
|
||||
<param name="font"
|
||||
value="ryzom.ttf" />
|
||||
<param name="monospace_font"
|
||||
value="ryzom_monospace.ttf" />
|
||||
<param name="add_coef_font"
|
||||
value="3" />
|
||||
<param name="mul_coef_anim"
|
||||
|
|
|
@ -41,14 +41,14 @@
|
|||
<view type="text" id="txt_log" x="0" posref="TM TM" posparent="window" hardtext="uiLogin" fontsize="10" y="-200" color="255 255 255 255" />
|
||||
<view type="text" id="txt_pas" posparent="txt_log" posref="TM TM" hardtext="uiPassword" fontsize="10" y="-48" color="255 255 255 255" />
|
||||
|
||||
<instance template="edit_box_log" id="eb_login" posparent="txt_log" posref="BM TM" w="240" h="24" fontsize="12" x="0" y="-4"
|
||||
text_ref="BM BM" text_y="-2"
|
||||
<instance template="edit_box_log" id="eb_login" posparent="txt_log" posref="BM TM" w="240" h="26" fontsize="12" x="0" y="-4"
|
||||
text_ref="BM BM" text_y="0"
|
||||
reset_focus_on_hide="false" max_historic="0"
|
||||
onenter="set_keyboard_focus" params="target=ui:login:checkpass:content:submit_gr:eb_password:eb|select_all=false"
|
||||
prompt="" enter_loose_focus="true" multi_line="false" max_num_chars="12" color="135 243 28 255" />
|
||||
|
||||
<instance template="edit_box_log" id="eb_password" posparent="txt_pas" posref="BM TM" w="240" h="24" fontsize="14" x="0" y="-4"
|
||||
text_ref="BM BM" text_y="-2"
|
||||
<instance template="edit_box_log" id="eb_password" posparent="txt_pas" posref="BM TM" w="240" h="26" fontsize="12" x="0" y="-4"
|
||||
text_ref="BM BM" text_y="0"
|
||||
reset_focus_on_hide="false" max_historic="0" entry_type="password"
|
||||
onenter="on_login" params=""
|
||||
prompt="" enter_loose_focus="true" multi_line="false" max_num_chars="20" color="135 243 28 255" />
|
||||
|
@ -113,11 +113,11 @@
|
|||
<!-- EXIT BUTTON -->
|
||||
<ctrl style="log_button" id="but_exit" posparent="windows" posref="BR BR" y="6" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
<!-- Textes -->
|
||||
<view type="text" id="title_res" posparent="res_win" posref="TL BL" y="0" color="255 255 255 255" fontsize="10" shadow="true" hardtext="uiLOGResolution" />
|
||||
<view type="text" id="title_lod" posparent="lod_win" posref="TL BL" y="0" color="255 255 255 255" fontsize="10" shadow="true" hardtext="uiLOGLod" />
|
||||
<view type="text" id="title_res" posparent="res_win" posref="TL BL" y="2" color="255 255 255 255" fontsize="10" shadow="true" hardtext="uiLOGResolution" />
|
||||
<view type="text" id="title_lod" posparent="lod_win" posref="TL BL" y="2" color="255 255 255 255" fontsize="10" shadow="true" hardtext="uiLOGLod" />
|
||||
|
||||
<view type="text" id="res_value" posparent="res_win" posref="MM MM" y="-2" color="135 243 28 255" fontsize="10" shadow="true" hardtext="uiResValue" />
|
||||
<view type="text" id="lod_value" posparent="lod_win" posref="MM MM" y="-2" color="135 243 28 255" fontsize="10" shadow="true" hardtext="uiLodValue" />
|
||||
<view type="text" id="res_value" posparent="res_win" posref="MM MM" y="0" color="135 243 28 255" fontsize="10" shadow="true" hardtext="uiResValue" />
|
||||
<view type="text" id="lod_value" posparent="lod_win" posref="MM MM" y="0" color="135 243 28 255" fontsize="10" shadow="true" hardtext="uiLodValue" />
|
||||
|
||||
|
||||
<!-- Boutons Res -->
|
||||
|
@ -187,7 +187,7 @@
|
|||
<view type="bitmap" id="kami" posparent="window" posref="TR TR" x="-50" y="-24" texture="log_kami.tga" global_color="false" render_layer="-1" />
|
||||
|
||||
<!-- EXIT BUTTON -->
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-20" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-18" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
|
||||
<!-- SERVER SELECTION -->
|
||||
<instance template="server_box" id="server_win" posparent="window" posref="ML ML" w="612" h="338" x="8" y="0" />
|
||||
|
@ -291,13 +291,13 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<instance template="log_box" id="window" y="-8" posref="MM MM" w="800" h="440" />
|
||||
|
||||
<!-- EXIT BUTTON -->
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-20" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-18" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
|
||||
|
||||
<!-- Window -->
|
||||
<instance template="server_box" id="check_win" posparent="window" posref="MM MM" w="600" h="128" x="0" y="0" />
|
||||
|
||||
<!-- Textes -->
|
||||
<!-- Texts -->
|
||||
|
||||
<view type="text" id="title" posparent="check_win" posref="TM BM" y="8" color="255 255 255 255"
|
||||
fontsize="12" shadow="true" hardtext="uiOnChecking" />
|
||||
|
@ -346,7 +346,7 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<instance template="log_box" id="window" y="-8" posref="MM MM" w="800" h="440" />
|
||||
|
||||
<!-- EXIT BUTTON -->
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-20" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-18" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
|
||||
<!-- Window -->
|
||||
<instance template="server_box" id="global_win" posparent="bl" posref="TM TM" w="400" h="22" x="-14" y="-240" />
|
||||
|
@ -354,19 +354,19 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<instance template="server_box" id="opt_win" posparent="nonopt_win" posref="BM TM" w="400" h="206" y="-30" />
|
||||
|
||||
<!-- Textes -->
|
||||
<view type="text" id="title" posparent="global_win" posref="TM BM" y="24" color="255 255 255 255"
|
||||
<view type="text" id="title" posparent="global_win" posref="TM BM" y="2" color="255 255 255 255"
|
||||
fontsize="12" shadow="true" hardtext="uiOnPatchDetail" />
|
||||
|
||||
<view type="text" id="opt_txt" posparent="opt_win" posref="TL BL" y="1" color="255 255 255 255"
|
||||
fontsize="10" shadow="true" hardtext="uiOnPatchOpt" />
|
||||
|
||||
<group id="global_patch" w="382" h="22" posparent="global_win" posref="MM MM" >
|
||||
<view type="text" id="name" posref="BL BL" fontsize="12" x="2" y="0" color="135 243 28 255" shadow="true" hardtext="uiTotalPatch" />
|
||||
<view type="text" id="size" posref="BR BR" fontsize="12" x="-8" y="0" color="135 243 28 255" shadow="true" hardtext="...Kbs" />
|
||||
<view type="text" id="name" posref="ML ML" fontsize="12" x="2" y="0" color="135 243 28 255" shadow="true" hardtext="uiTotalPatch" />
|
||||
<view type="text" id="size" posref="MR MR" fontsize="12" x="-8" y="0" color="135 243 28 255" shadow="true" hardtext="...Kbs" />
|
||||
</group>
|
||||
<group id="nonopt_patch" w="382" h="22" posparent="nonopt_win" posref="MM MM" >
|
||||
<view type="text" id="name" posref="BL BL" fontsize="12" x="2" y="0" color="135 243 28 255" shadow="true" hardtext="uiRequiredFiles" />
|
||||
<view type="text" id="size" posref="BR BR" fontsize="12" x="-8" y="0" color="135 243 28 255" shadow="true" hardtext="...Kbs" />
|
||||
<view type="text" id="name" posref="ML ML" fontsize="12" x="2" y="0" color="135 243 28 255" shadow="true" hardtext="uiRequiredFiles" />
|
||||
<view type="text" id="size" posref="MR MR" fontsize="12" x="-8" y="0" color="135 243 28 255" shadow="true" hardtext="...Kbs" />
|
||||
</group>
|
||||
|
||||
<!-- Categories -->
|
||||
|
@ -403,7 +403,7 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<instance template="log_box" id="window" y="-8" posref="MM MM" w="800" h="440" />
|
||||
|
||||
<!-- EXIT BUTTON -->
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-20" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-18" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
|
||||
|
||||
<!-- patch -->
|
||||
|
@ -412,12 +412,12 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<link expr="eq(@UI:VARIABLES:SCREEN,4)" target="global_win:active,patch_win:active"/>
|
||||
|
||||
<group id="global_patch" w="582" h="22" posparent="global_win" posref="MM MM" >
|
||||
<view type="text" id="name" posref="BL BL" fontsize="12" x="2" y="0" color="135 243 28 255" shadow="true" hardtext="TOTAL PATCH" />
|
||||
<view type="text" id="size" posref="BR BR" fontsize="12" x="-8" y="0" color="135 243 28 255" shadow="true" hardtext=".../...Kbs" />
|
||||
<view type="text" id="name" posref="ML ML" fontsize="12" x="2" y="0" color="135 243 28 255" shadow="true" hardtext="uiTotalPatch" />
|
||||
<view type="text" id="size" posref="MR MR" fontsize="12" x="-8" y="0" color="135 243 28 255" shadow="true" hardtext=".../...Kbs" />
|
||||
</group>
|
||||
<link expr="eq(@UI:VARIABLES:SCREEN,4)" target="global_patch:active"/>
|
||||
|
||||
<view type="text" id="progress" posref="TL TL" posparent="patch_win" fontsize="12" x="8" y="-8" color="135 243 28 255" shadow="true"/>
|
||||
<view type="text" id="progress" posref="TL TL" posparent="patch_win" fontsize="12" x="8" y="-4" color="135 243 28 255" shadow="true"/>
|
||||
<view type="text" id="state" posparent="progress" posref="TR TL" w="520" x="4" y="0" line_maxw="520" color="135 243 28 255"
|
||||
fontsize="12" shadow="true" multi_line="true" multi_line_space="0" case_mode="%case_normal"/>
|
||||
<link expr="eq(@UI:VARIABLES:SCREEN,4)" target="progress:active,state:active"/>
|
||||
|
@ -434,9 +434,9 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
|
||||
|
||||
<!-- Release Note -->
|
||||
<instance template="server_box" id="release_win" posparent="bl" posref="TM TM" w="600" h="324" x="-14" y="-282" />
|
||||
<instance template="server_box" id="release_win" posparent="bl" posref="TM TM" w="600" h="324" x="-14" y="-282" />
|
||||
|
||||
<view type="text" id="release_title" posref="TM BM" posparent="release_win" fontsize="10" y="-2" color="255 255 255 255"
|
||||
<view type="text" id="release_title" posref="TM BM" posparent="release_win" fontsize="10" y="0" color="255 255 255 255"
|
||||
hardtext="uiOnRelease" shadow="true"/>
|
||||
|
||||
<!--
|
||||
|
@ -511,7 +511,7 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<instance template="log_box" id="window" y="-8" posref="MM MM" w="800" h="440" />
|
||||
|
||||
<!-- EXIT BUTTON -->
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-20" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-18" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
|
||||
<!-- WINDOW -->
|
||||
<instance template="server_box" id="eula_win" posparent="window" posref="MM MM" w="612" h="338" x="-24" y="0" />
|
||||
|
@ -556,7 +556,7 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<instance template="log_box" id="window" y="-8" posref="MM MM" w="800" h="440" />
|
||||
|
||||
<!-- EXIT BUTTON -->
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-20" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
<ctrl style="log_button" id="but_exit" posparent="window" posref="TR TR" y="-18" onclick_l="login_quit" hardtext="uiExitLogin" />
|
||||
|
||||
|
||||
<!-- Window -->
|
||||
|
@ -626,7 +626,7 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
</group>
|
||||
</template>
|
||||
|
||||
<!-- Page that show the result of data scanning -->
|
||||
<!-- Page that allows to create an account -->
|
||||
<group id="create_account" posref="MM MM" w="1024" h="768" active="false" >
|
||||
|
||||
<group id="content" x="0" y="0" w="1024" h="768" posref="TL TL" >
|
||||
|
@ -647,8 +647,8 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<!-- login -->
|
||||
<view type="text" id="txt_log" posref="TL TL" hardtext="uiUsername" fontsize="12" x="0" y="-60" color="255 255 255 255" />
|
||||
|
||||
<instance template="edit_box_log" id="eb_login" posparent="txt_log" posref="BL BL" w="260" h="24" fontsize="12" x="190" y="0"
|
||||
text_ref="BM BM" text_y="-2"
|
||||
<instance template="edit_box_log" id="eb_login" posparent="txt_log" posref="BL BL" w="250" h="26" fontsize="12" x="200" y="0"
|
||||
text_ref="BM BM" text_y="0"
|
||||
on_focus="create_account_rules" on_focus_params="rules_login" reset_focus_on_hide="false" max_historic="0"
|
||||
onenter="set_keyboard_focus" params="target=ui:login:create_account:content:submit_gr:eb_password:eb|select_all=false"
|
||||
prompt="" enter_loose_focus="true" multi_line="false" max_num_chars="12" color="135 243 28 255" />
|
||||
|
@ -656,7 +656,7 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<!-- password -->
|
||||
<view type="text" id="txt_pas" posparent="txt_log" posref="BL TL" hardtext="uiPassword" fontsize="12" x="0" y="-30" color="255 255 255 255" />
|
||||
|
||||
<instance template="edit_box_log" id="eb_password" posparent="txt_pas" posref="BL BL" w="260" h="24" fontsize="16" x="190" y="0"
|
||||
<instance template="edit_box_log" id="eb_password" posparent="txt_pas" posref="BL BL" w="250" h="26" fontsize="12" x="200" y="0"
|
||||
text_ref="BM BM" text_y="-2"
|
||||
on_focus="create_account_rules" on_focus_params="rules_password" reset_focus_on_hide="false" max_historic="0" entry_type="password"
|
||||
onenter="set_keyboard_focus" params="target=ui:login:create_account:content:submit_gr:eb_confirm_password:eb|select_all=false"
|
||||
|
@ -665,7 +665,7 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<!-- confirm password -->
|
||||
<view type="text" id="txt_confirm_pas" posparent="txt_pas" posref="BL TL" hardtext="uiConfirmPassword" fontsize="12" x="0" y="-30" color="255 255 255 255" />
|
||||
|
||||
<instance template="edit_box_log" id="eb_confirm_password" posparent="txt_confirm_pas" posref="BL BL" w="260" h="24" fontsize="16" x="190" y="0"
|
||||
<instance template="edit_box_log" id="eb_confirm_password" posparent="txt_confirm_pas" posref="BL BL" w="250" h="26" fontsize="12" x="200" y="0"
|
||||
text_ref="BM BM" text_y="-2"
|
||||
on_focus="create_account_rules" on_focus_params="rules_password_conf" reset_focus_on_hide="false" max_historic="0" entry_type="password"
|
||||
onenter="set_keyboard_focus" params="target=ui:login:create_account:content:submit_gr:eb_email:eb|select_all=false"
|
||||
|
@ -674,8 +674,8 @@ on_enter="leave_modal" options="no_bordure" mouse_pos="false" exit_key_pushed="t
|
|||
<!-- email -->
|
||||
<view type="text" id="txt_email" posparent="txt_confirm_pas" posref="BL TL" hardtext="uiEmail" fontsize="12" x="0" y="-30" color="255 255 255 255" />
|
||||
|
||||
<instance template="edit_box_log" id="eb_email" posparent="txt_email" posref="BL BL" w="260" h="24" fontsize="12" x="190" y="0"
|
||||
text_ref="BM BM" text_y="-2"
|
||||
<instance template="edit_box_log" id="eb_email" posparent="txt_email" posref="BL BL" w="250" h="26" fontsize="12" x="200" y="0"
|
||||
text_ref="BM BM" text_y="0"
|
||||
on_focus="create_account_rules" on_focus_params="rules_email" reset_focus_on_hide="false" max_historic="0"
|
||||
onenter="" params=""
|
||||
prompt="" enter_loose_focus="true" multi_line="false" max_num_chars="254" color="135 243 28 255" />
|
||||
|
|
|
@ -63,7 +63,7 @@
|
|||
</template>
|
||||
|
||||
|
||||
<template name="edit_box_log" posref="TL TL" text_x="0" text_y="-1" text_ref="BL BL" multi_line="false" x="0" y="0" w="0" h="0"
|
||||
<template name="edit_box_log" posref="TL TL" text_x="0" text_y="0" text_ref="BL BL" multi_line="false" x="0" y="0" w="0" h="0"
|
||||
id="eb" posparent="parent" onenter="chat_box_entry" params="" reset_focus_on_hide="true" on_focus="" on_focus_params=""
|
||||
enter_loose_focus="true" prompt=">"
|
||||
enter_recover_focus="true"
|
||||
|
@ -100,7 +100,7 @@
|
|||
</template>
|
||||
|
||||
|
||||
<template name="edit_box_widget_multiline" posref="TL TL" text_x="0" text_y="-1" text_ref="BL BL" child_resize_h="true" multi_line="true" x="0" y="0" w="0" h="0"
|
||||
<template name="edit_box_widget_multiline" posref="TL TL" text_x="0" text_y="0" text_ref="BL BL" child_resize_h="true" multi_line="true" x="0" y="0" w="0" h="0"
|
||||
sizeref="" id="eb" posparent="parent" onenter="chat_box_entry" params="" reset_focus_on_hide="true"
|
||||
enter_loose_focus="true" prompt=">"
|
||||
enter_recover_focus="true"
|
||||
|
@ -111,17 +111,20 @@
|
|||
entry_type="text"
|
||||
keep="true"
|
||||
max_historic="40"
|
||||
fontsize="10"
|
||||
fontsize="10"
|
||||
fontweight=""
|
||||
fontstyle=""
|
||||
backup_father_container_pos="false"
|
||||
want_return="false"
|
||||
color="255 255 255 255"
|
||||
sizeref_eb="w"
|
||||
render_layer="0"
|
||||
multi_min_line="0"
|
||||
>
|
||||
<group id="#id" posref="#posref" x="#x" y="#y" posparent="#posparent" child_resize_h="#child_resize_h" sizeref="#sizeref" w="#w" h="#h" render_layer="#render_layer">
|
||||
<group type="edit_box" sizeref="#sizeref_eb" w="-16" id="eb" posref="TL TL" x="8" y="-8" child_resize_h="#child_resize_h" onenter="#onenter" params="#params" onchange="#onchange" onchange_params="#onchange_params" max_num_chars="#max_num_chars" prompt="#prompt" enter_loose_focus="#enter_loose_focus" enter_recover_focus="#enter_recover_focus" entry_type="#entry_type" reset_focus_on_hide="#reset_focus_on_hide" menu_r="#menu_r" max_historic="#max_historic" want_return="#want_return" backup_father_container_pos="#backup_father_container_pos" render_layer="#render_layer">
|
||||
<view type="bitmap" id="bg" scale="true" sizeref="hw" h="0" w="0" texture="log_eb_m.tga" inherit_gc_alpha="false" render_layer="#render_layer"/>
|
||||
<view id="edit_text" type="text" x="#text_x" y="#text_y" posref="#text_ref" multi_line="#multi_line" multi_line_space="0" fontsize="#fontsize" color="#color" shadow="true" hardtext="" global_color="false" render_layer="#render_layer"/>
|
||||
<view id="edit_text" type="text" x="#text_x" y="#text_y" posref="#text_ref" multi_line="#multi_line" multi_line_space="0" multi_min_line="#multi_min_line" fontsize="#fontsize" color="#color" fontweight="#fontweight" fontstyle="#fontstyle" shadow="true" hardtext="" global_color="false" render_layer="#render_layer"/>
|
||||
</group>
|
||||
|
||||
<!-- border around the list -->
|
||||
|
@ -138,7 +141,7 @@
|
|||
|
||||
|
||||
<!-- Alternate look for multi line input -->
|
||||
<template name="edit_box_widget_multiline_2" posref="TL TL" text_x="0" text_y="-1" text_ref="BL BL" child_resize_h="true" multi_line="true" x="0" y="0" w="0" h="0"
|
||||
<template name="edit_box_widget_multiline_2" posref="TL TL" text_x="0" text_y="0" text_ref="BL BL" child_resize_h="true" multi_line="true" x="0" y="0" w="0" h="0"
|
||||
sizeref="" id="eb" posparent="parent" onenter="chat_box_entry" params="" reset_focus_on_hide="true"
|
||||
enter_loose_focus="true" prompt=">"
|
||||
enter_recover_focus="true"
|
||||
|
@ -179,7 +182,7 @@
|
|||
<style style="log_button" type="text_button" button_type="push_button"
|
||||
tx_normal="log_but" tx_pushed="log_but_over" tx_over="log_but_over" wmargin="48"
|
||||
color="255 255 255 255" col_over="255 255 255 255" col_pushed="255 255 255 255"
|
||||
text_y="-3" fontsize="10" shadow="true"
|
||||
text_y="0" fontsize="10" shadow="true"
|
||||
text_color_normal="255 255 255 160"
|
||||
text_color_pushed="255 255 255 255"
|
||||
text_color_over="255 255 255 255"
|
||||
|
@ -192,7 +195,7 @@
|
|||
<style style="log_std_but" type="text_button" button_type="push_button"
|
||||
tx_normal="but" tx_pushed="but" tx_over="but_over" wmargin="16"
|
||||
color="255 255 255 160" col_over="255 255 255 255" col_pushed="255 255 255 255"
|
||||
text_y="-3" fontsize="10" shadow="true"
|
||||
text_y="-1" fontsize="10" shadow="true"
|
||||
text_color_normal="135 243 28 160"
|
||||
text_color_pushed="135 243 28 255"
|
||||
text_color_over="135 243 28 255"
|
||||
|
@ -229,7 +232,7 @@
|
|||
<style style="text_button_16" type="text_button" button_type="push_button"
|
||||
tx_normal="w_text_button_normal" tx_pushed="w_text_button_pushed" tx_over="w_text_button_over"
|
||||
global_color_normal="true" global_color_over="true" global_color_pushed="true"
|
||||
text_y="-2" fontsize="10" shadow="true" case_mode="%case_upper" wmargin="8"
|
||||
text_y="0" fontsize="10" shadow="true" case_mode="%case_upper" wmargin="8"
|
||||
text_color_normal="255 255 255 128" text_color_pushed="255 255 255 255" text_color_over="255 255 255 255" />
|
||||
|
||||
|
||||
|
@ -382,7 +385,7 @@
|
|||
<!-- * EDIT BOX WIDGET * -->
|
||||
<!-- ********************* -->
|
||||
|
||||
<template name="edit_box_widget" posref="TL TL" text_x="0" text_y="-1" text_ref="BL BL" child_resize_h="true" multi_line="false" x="0" y="0" w="0" h="0"
|
||||
<template name="edit_box_widget" posref="TL TL" text_x="0" text_y="0" text_ref="BL BL" child_resize_h="true" multi_line="false" x="0" y="0" w="0" h="0"
|
||||
sizeref="" id="eb" posparent="parent" onenter="chat_box_entry" params="" reset_focus_on_hide="true"
|
||||
enter_loose_focus="true" prompt=">"
|
||||
enter_recover_focus="true"
|
||||
|
@ -420,7 +423,7 @@
|
|||
</template>
|
||||
|
||||
<!-- alternate look for edit box -->
|
||||
<template name="edit_box_widget_2" posref="TL TL" text_x="0" text_y="-1" text_ref="BL BL" child_resize_h="true" multi_line="false" x="0" y="0" w="0" h="0"
|
||||
<template name="edit_box_widget_2" posref="TL TL" text_x="0" text_y="0" text_ref="BL BL" child_resize_h="true" multi_line="false" x="0" y="0" w="0" h="0"
|
||||
sizeref="" id="eb" posparent="parent" onenter="chat_box_entry" params="" reset_focus_on_hide="true"
|
||||
enter_loose_focus="true" prompt=">"
|
||||
enter_recover_focus="true"
|
||||
|
@ -595,8 +598,8 @@
|
|||
<template name="button_ok_cancel" id="ok_cancel" ok_text="uittOK" cancel_text="uittCancel" posparent="parent" posref="BM TM"
|
||||
onclick_ok="" onclick_ok_param="" onclick_cancel="" onclick_cancel_param="" x="0" y="0" keep="true" >
|
||||
<group id="#id" posparent="#posparent" posref="#posref" child_resize_w="true" child_resize_h="true" x="#x" y="#y">
|
||||
<ctrl style="button_ok" x="0" y="0" posref="TL TL" text_y="-2" onclick_l="#onclick_ok" params_l="#onclick_ok_param" hardtext="#ok_text" />
|
||||
<ctrl style="button_cancel" x="4" posparent="ok" text_y="-2" posref ="TR TL" onclick_l="#onclick_cancel" params_l="#onclick_cancel_param" hardtext="#cancel_text" />
|
||||
<ctrl style="button_ok" x="0" y="0" posref="TL TL" text_y="0" onclick_l="#onclick_ok" params_l="#onclick_ok_param" hardtext="#ok_text" />
|
||||
<ctrl style="button_cancel" x="4" posparent="ok" text_y="0" posref ="TR TL" onclick_l="#onclick_cancel" params_l="#onclick_cancel_param" hardtext="#cancel_text" />
|
||||
</group>
|
||||
</template>
|
||||
|
||||
|
@ -611,7 +614,7 @@
|
|||
<template name="html_text_button" id="" text="" posparent="parent" posref="TL TL"
|
||||
onclick="" onclick_param="" x="0" y="0" keep="true" active="true" wmin="0">
|
||||
<group type="html_input_offset" y_offset="-8" id="#id" posparent="#posparent" posref="#posref" child_resize_w="true" child_resize_h="true" x="#x" y="#y" active="#active">
|
||||
<ctrl style="log_spe_but" id="button" wmin="#wmin" x="0" y="0" posref="TL TL" text_y="-2" onclick_l="#onclick" params_l="#onclick_param" hardtext="#text" color="255 255 255 200"/>
|
||||
<ctrl style="log_spe_but" id="button" wmin="#wmin" x="0" y="0" posref="TL TL" text_y="0" onclick_l="#onclick" params_l="#onclick_param" hardtext="#text" color="255 255 255 200"/>
|
||||
</group>
|
||||
</template>
|
||||
|
||||
|
@ -620,7 +623,7 @@
|
|||
<template name="html_text_button_look2" id="" text="" posparent="parent" posref="TL TL"
|
||||
onclick="" onclick_param="" x="0" y="0" keep="true" >
|
||||
<group type="html_input_offset" y_offset="-8" id="#id" posparent="#posparent" posref="#posref" child_resize_w="true" child_resize_h="true" x="#x" y="#y">
|
||||
<ctrl style="log_button" id="button" wmin="0" x="0" y="0" posref="TL TL" text_y="-2" onclick_l="#onclick" params_l="#onclick_param" hardtext="#text" color="255 255 255 200"/>
|
||||
<ctrl style="log_button" id="button" wmin="0" x="0" y="0" posref="TL TL" text_y="0" onclick_l="#onclick" params_l="#onclick_param" hardtext="#text" color="255 255 255 200"/>
|
||||
</group>
|
||||
</template>
|
||||
|
||||
|
@ -629,7 +632,7 @@
|
|||
<template name="html_text_button_look3" id="" text="" posparent="parent" posref="TL TL"
|
||||
onclick="" onclick_param="" x="0" y="0" keep="true" >
|
||||
<group type="html_input_offset" y_offset="-8" id="#id" posparent="#posparent" posref="#posref" child_resize_w="true" child_resize_h="true" x="#x" y="#y">
|
||||
<ctrl style="server_note" id="button" wmin="0" x="0" y="0" posref="TL TL" text_y="-2" onclick_l="#onclick" params_l="#onclick_param" hardtext="#text" color="255 255 255 200"/>
|
||||
<ctrl style="server_note" id="button" wmin="0" x="0" y="0" posref="TL TL" text_y="0" onclick_l="#onclick" params_l="#onclick_param" hardtext="#text" color="255 255 255 200"/>
|
||||
</group>
|
||||
</template>
|
||||
|
||||
|
|
|
@ -403,12 +403,12 @@
|
|||
onclick_l="new_macro_new_cmd" />
|
||||
|
||||
|
||||
<group id="cmds" type="list" posref="BR TR" posparent="sep" x="0" y="-22" over="true" >
|
||||
<!--
|
||||
<instance template="macro_command" id="cmd1" posref="TL TL" />
|
||||
<instance template="macro_command" id="cmd2" posparent="cmd1" posref="BL TL" />
|
||||
-->
|
||||
<group id="cmds" x="0" y="-22" over="true" sizeref="w" posref="TL TL" posparent="sep" child_resize_h="true" child_resize_hmargin="4">
|
||||
<group id="macros" x="10" y="-4" sizeref="w" posref="TL TL" child_resize_h="true" max_h="300" >
|
||||
<group id="list" type="list" x="0" y="0" posref="TL TL" />
|
||||
</group>
|
||||
<ctrl style="skin_scroll" id="sv" posref="TL TL" y="-4" target="macros" />
|
||||
</group>
|
||||
|
||||
<instance template="button_ok_cancel" posparent="cmds" posref="BR TR" x="0" y="-4"
|
||||
onclick_ok="new_macro_ok"
|
||||
|
@ -659,4 +659,4 @@
|
|||
<tree node="keys_r2ed"/>
|
||||
</tree>
|
||||
|
||||
</interface_config>
|
||||
</interface_config>
|
||||
|
|
|
@ -192,8 +192,8 @@
|
|||
<ctrl type="button" id="center" button_type="push_button" posparent="zoom_out" posref="TR TL" y="0" x="4" tx_normal="w_center_map.tga" tx_pushed="W_button_16_over.tga" tx_over="W_button_16_over.tga"
|
||||
onclick_l="map_center" params_l="map=ui:interface:map:content:map_content:actual_map" tooltip="uittCenter" />
|
||||
|
||||
<view type="text" id="time" x="12" y="-1" posparent="center" posref="MR ML" color="255 255 255 255" fontsize="12" shadow="true" hardtext="" />
|
||||
<view type="text" id="weather" x="8" y="-18" posref="TL TL" color="255 255 255 255" fontsize="12" shadow="true" hardtext="" />
|
||||
<view type="text" id="time" x="12" y="0" posparent="center" posref="MR ML" color="255 255 255 255" fontsize="12" shadow="true" hardtext="" />
|
||||
<view type="text" id="weather" x="8" y="-16" posref="TL TL" color="255 255 255 255" fontsize="12" shadow="true" hardtext="" />
|
||||
|
||||
<instance template="box_widget" id="back" posref="TL TL" sizeref="wh" w="-2" h="-32" x="1" y="-32" render_layer="0" />
|
||||
|
||||
|
@ -383,7 +383,7 @@
|
|||
|
||||
<ctrl style="button_ok" id="respawn" posparent="center" x="16" posref="TR TL" onclick_l="respawn_map_valid" params_l="map=ui:interface:respawn_map:content:map_content:actual_map" hardtext="uiRespawn"/>
|
||||
|
||||
<group id="timer" posparent="respawn" posref="TR TL" x="8" y="-5" child_resize_h="true" child_resize_w="true">
|
||||
<group id="timer" posparent="respawn" posref="TR TL" x="8" y="-2" child_resize_h="true" child_resize_w="true">
|
||||
<view type="bar" id="b" ultra_mini="true" posref="TL TL" value="%player_hp_percent" range="%player_percent_max" color="255 255 255 255" color_negative="255 255 255 255" />
|
||||
<view type="text" id="t" posparent="b" posref="TR TL" x="4" color="255 255 255 255" fontsize="8" shadow="true" hardtext="" />
|
||||
</group>
|
||||
|
|
|
@ -1294,7 +1294,7 @@
|
|||
max_chars_size="252" menu_r="" max_historic="" entry_type="alpha">
|
||||
|
||||
<instance template="job_border" id="bord" posref="MM MM" />
|
||||
<view type="text" id="edit_text" x="0" y="-2" posref="MM MM" multi_line="false" render_layer="4"
|
||||
<view type="text" id="edit_text" x="0" y="0" posref="MM MM" multi_line="false" render_layer="4"
|
||||
fontsize="20" shadow="true" global_color="false" case="%case_first_string_letter_up" />
|
||||
</group>
|
||||
|
||||
|
@ -1740,7 +1740,7 @@
|
|||
</proc>
|
||||
|
||||
|
||||
<group type="modal" id="appear_infos1" x="0" y="0" w="824" h="768" posref="TR TR" render_layer="1"
|
||||
<group type="modal" id="appear_infos1" x="74" y="0" w="824" h="768" posref="MM MM" render_layer="1"
|
||||
mouse_pos="false" escapable="false" exit_click_out="true" savable="false"
|
||||
display="false"
|
||||
>
|
||||
|
@ -1765,7 +1765,7 @@
|
|||
onclick_l="proc" params_l="proc_charsel_infos"/>
|
||||
</group>
|
||||
|
||||
<group type="modal" id="appear_infos2" x="-74" y="-68" w="698" h="652" posref="TR TR" render_layer="1"
|
||||
<group type="modal" id="appear_infos2" x="-74" y="-68" w="698" h="652" posref="MM MM" render_layer="1"
|
||||
mouse_pos="false" escapable="false" exit_click_out="true"
|
||||
display="false"
|
||||
>
|
||||
|
@ -1778,7 +1778,7 @@
|
|||
onclick_l="proc" params_l="proc_charsel_infos"/>
|
||||
</group>
|
||||
|
||||
<group type="modal" id="appear_infos3" x="-74" y="-68" w="698" h="652" posref="TR TR" render_layer="1"
|
||||
<group type="modal" id="appear_infos3" x="-74" y="-68" w="698" h="652" posref="MM MM" render_layer="1"
|
||||
mouse_pos="false" escapable="false" exit_click_out="true"
|
||||
display="false"
|
||||
>
|
||||
|
@ -1791,7 +1791,7 @@
|
|||
onclick_l="proc" params_l="proc_charsel_infos"/>
|
||||
</group>
|
||||
|
||||
<group type="modal" id="appear_infos4" x="-74" y="-68" w="698" h="652" posref="TR TR" render_layer="1"
|
||||
<group type="modal" id="appear_infos4" x="-74" y="-68" w="698" h="652" posref="MM MM" render_layer="1"
|
||||
mouse_pos="false" escapable="false" exit_click_out="true"
|
||||
display="false"
|
||||
>
|
||||
|
@ -1804,7 +1804,7 @@
|
|||
onclick_l="proc" params_l="proc_charsel_infos"/>
|
||||
</group>
|
||||
|
||||
<group type="modal" id="appear_infos5" x="-74" y="-68" w="698" h="652" posref="TR TR" render_layer="1"
|
||||
<group type="modal" id="appear_infos5" x="-74" y="-68" w="698" h="652" posref="MM MM" render_layer="1"
|
||||
mouse_pos="false" escapable="false" exit_click_out="true"
|
||||
display="false"
|
||||
>
|
||||
|
@ -2049,19 +2049,19 @@
|
|||
<instance template="outgame_black_back" id="back" />
|
||||
</group>
|
||||
|
||||
<ctrl style="opt_button" id="fyros_but" posref="TL TL" x="60" y="-88" hardtext="uiCP_Specie_Fyros"
|
||||
<ctrl style="opt_button" id="fyros_but" posref="TL TL" x="60" y="-88" text_y="15" hardtext="uiCP_Specie_Fyros"
|
||||
onover="play_sound" params_over="name=specie_but_over"
|
||||
onclick_l="proc" params_l="proc_select_specie|0"/>
|
||||
|
||||
<ctrl style="opt_button" id="matis_but" posparent="fyros_but" posref="BL TL" hardtext="uiCP_Specie_Matis"
|
||||
<ctrl style="opt_button" id="matis_but" posparent="fyros_but" posref="BL TL" text_y="15" hardtext="uiCP_Specie_Matis"
|
||||
onover="play_sound" params_over="name=specie_but_over"
|
||||
onclick_l="proc" params_l="proc_select_specie|1"/>
|
||||
|
||||
<ctrl style="opt_button" id="tryker_but" posparent="matis_but" posref="BL TL" hardtext="uiCP_Specie_Tryker"
|
||||
<ctrl style="opt_button" id="tryker_but" posparent="matis_but" posref="BL TL" text_y="15" hardtext="uiCP_Specie_Tryker"
|
||||
onover="play_sound" params_over="name=specie_but_over"
|
||||
onclick_l="proc" params_l="proc_select_specie|2"/>
|
||||
|
||||
<ctrl style="opt_button" id="zorai_but" posparent="tryker_but" posref="BL TL" hardtext="uiCP_Specie_Zorai"
|
||||
<ctrl style="opt_button" id="zorai_but" posparent="tryker_but" posref="BL TL" text_y="15" hardtext="uiCP_Specie_Zorai"
|
||||
onover="play_sound" params_over="name=specie_but_over"
|
||||
onclick_l="proc" params_l="proc_select_specie|3"/>
|
||||
|
||||
|
@ -2091,11 +2091,11 @@
|
|||
<instance template="outgame_black_back" id="back" />
|
||||
</group>
|
||||
|
||||
<ctrl style="opt_button" id="male_but" posref="TL TL" x="20" y="-88" hardtext="uiCP_Sex_Male"
|
||||
<ctrl style="opt_button" id="male_but" posref="TL TL" x="20" y="-88" text_y="15" hardtext="uiCP_Sex_Male"
|
||||
onover="play_sound" params_over="name=specie_but_over"
|
||||
onclick_l="proc" params_l="proc_select_sex|0"/>
|
||||
|
||||
<ctrl style="opt_button" id="female_but" posparent="male_but" posref="BL TL" hardtext="uiCP_Sex_Female"
|
||||
<ctrl style="opt_button" id="female_but" posparent="male_but" posref="BL TL" text_y="15" hardtext="uiCP_Sex_Female"
|
||||
onover="play_sound" params_over="name=specie_but_over"
|
||||
onclick_l="proc" params_l="proc_select_sex|1"/>
|
||||
|
||||
|
@ -2117,7 +2117,7 @@
|
|||
|
||||
<!-- Height -->
|
||||
<instance template="slider" id="bk1" posref="TL TL" x="20" y="-88" w="180" h="48" />
|
||||
<view type="text" id="title1" posparent="bk1" posref="TL TL" x="16" y="2" hardtext="uiHeight" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="title1" posparent="bk1" posref="TL TL" x="16" y="4" hardtext="uiHeight" color="255 255 255 255" fontsize="10"/>
|
||||
<ctrl type="scroll" id="scroll1" posparent="bk1" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="14" value="UI:TEMP:CHAR3D:VPC:CHARACTERHEIGHT" tracksize="40"
|
||||
onscrollend="proc" params="CP_Camera_Face"
|
||||
|
@ -2125,7 +2125,7 @@
|
|||
|
||||
<!-- Torso -->
|
||||
<instance template="slider" id="bk2" posparent="bk1" posref="BL TL" w="180" h="48" />
|
||||
<view type="text" id="title2" posparent="bk2" posref="TL TL" x="16" y="2" hardtext="uiTorso" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="title2" posparent="bk2" posref="TL TL" x="16" y="4" hardtext="uiTorso" color="255 255 255 255" fontsize="10"/>
|
||||
<ctrl type="scroll" id="scroll2" posparent="bk2" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="14" value="UI:TEMP:CHAR3D:VPC:TORSOWIDTH" tracksize="40"
|
||||
onscroll="" params=""
|
||||
|
@ -2133,7 +2133,7 @@
|
|||
|
||||
<!-- Arms -->
|
||||
<instance template="slider" id="bk3" posparent="bk2" posref="BL TL" w="180" h="48" />
|
||||
<view type="text" id="title3" posparent="bk3" posref="TL TL" x="16" y="2" hardtext="uiArms" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="title3" posparent="bk3" posref="TL TL" x="16" y="4" hardtext="uiArms" color="255 255 255 255" fontsize="10"/>
|
||||
<ctrl type="scroll" id="scroll3" posparent="bk3" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="14" value="UI:TEMP:CHAR3D:VPC:ARMSWIDTH" tracksize="40"
|
||||
onscroll="" params=""
|
||||
|
@ -2141,7 +2141,7 @@
|
|||
|
||||
<!-- Legs -->
|
||||
<instance template="slider" id="bk4" posparent="bk3" posref="BL TL" w="180" h="48" />
|
||||
<view type="text" id="title4" posparent="bk4" posref="TL TL" x="16" y="2" hardtext="uiLegs" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="title4" posparent="bk4" posref="TL TL" x="16" y="4" hardtext="uiLegs" color="255 255 255 255" fontsize="10"/>
|
||||
<ctrl type="scroll" id="scroll4" posparent="bk4" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="14" value="UI:TEMP:CHAR3D:VPC:LEGSWIDTH" tracksize="40"
|
||||
onscroll="" params=""
|
||||
|
@ -2150,7 +2150,7 @@
|
|||
|
||||
<!-- Breast -->
|
||||
<instance template="slider" id="bk5" posparent="bk4" posref="BL TL" w="180" h="48" active="false" />
|
||||
<view type="text" id="title5" posparent="bk5" posref="TL TL" x="16" y="2" hardtext="uiBreasts" color="255 255 255 255" fontsize="10" active="false" />
|
||||
<view type="text" id="title5" posparent="bk5" posref="TL TL" x="16" y="4" hardtext="uiBreasts" color="255 255 255 255" fontsize="10" active="false" />
|
||||
<ctrl type="scroll" id="scroll5" posparent="bk5" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="14" value="UI:TEMP:CHAR3D:VPC:BREASTSIZE" tracksize="40"
|
||||
onscroll="" params=""
|
||||
|
@ -2216,14 +2216,14 @@
|
|||
|
||||
|
||||
<!-- TITLES Des SLIDERS -->
|
||||
<view type="text" id="face1" posparent="pos1" posref="TL TL" x="16" y="2" hardtext="uiFace1Fy" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="face2" posparent="pos2" posref="TL TL" x="16" y="2" hardtext="uiFace2Fy" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="face3" posparent="pos3" posref="TL TL" x="16" y="2" hardtext="uiFace3Fy" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="face4" posparent="pos4" posref="TL TL" x="16" y="2" hardtext="uiFace4Fy" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="face5" posparent="pos5" posref="TL TL" x="16" y="2" hardtext="uiFace5Fy" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="face6" posparent="pos6" posref="TL TL" x="16" y="2" hardtext="uiFace6Fy" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="face7" posparent="pos7" posref="TL TL" x="16" y="2" hardtext="uiFace7Fy" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="face8" posparent="pos8" posref="TL TL" x="16" y="2" hardtext="uiFace8Fy" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="face1" posparent="pos1" posref="TL TL" x="2" y="4" hardtext="uiFace1Fy" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="face2" posparent="pos2" posref="TL TL" x="2" y="4" hardtext="uiFace2Fy" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="face3" posparent="pos3" posref="TL TL" x="2" y="4" hardtext="uiFace3Fy" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="face4" posparent="pos4" posref="TL TL" x="2" y="4" hardtext="uiFace4Fy" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="face5" posparent="pos5" posref="TL TL" x="2" y="4" hardtext="uiFace5Fy" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="face6" posparent="pos6" posref="TL TL" x="2" y="4" hardtext="uiFace6Fy" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="face7" posparent="pos7" posref="TL TL" x="2" y="4" hardtext="uiFace7Fy" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="face8" posparent="pos8" posref="TL TL" x="2" y="4" hardtext="uiFace8Fy" color="255 255 255 255" fontsize="10"/>
|
||||
|
||||
<!--
|
||||
<view type="bitmap" id="branch" posref="BL BL" texture="branch.tga" color="255 255 255 255" global_color="false" />
|
||||
|
@ -2237,28 +2237,28 @@
|
|||
|
||||
<!-- HAIRCUT -->
|
||||
<instance template="but_slider" id="haircut" posparent="pos1" posref="TL TL" x="-516" y="0" w="180" h="48" value="UI:TEMP:HAIRCUT" max="6" />
|
||||
<view type="text" id="hair1" posparent="haircut" posref="TL TL" x="16" y="2" hardtext="uiHaircut" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="hair1" posparent="haircut" posref="TL TL" x="16" y="4" hardtext="uiHaircut" color="255 255 255 255" fontsize="10"/>
|
||||
<ctrl type="scroll" id="hair2" posparent="haircut" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="6" value="UI:TEMP:HAIRCUT" tracksize="40"
|
||||
tx_topright="" tx_middle="slider_m.tga" tx_bottomleft=""/>
|
||||
|
||||
<!-- HAIR COLOR -->
|
||||
<instance template="but_slider" id="haircolor" posparent="pos2" posref="TL TL" x="-516" y="0" w="180" h="48" value="UI:TEMP:CHAR3D:VPA:HATCOLOR" max="5" />
|
||||
<view type="text" id="haircol1" posparent="haircolor" posref="TL TL" x="16" y="2" hardtext="uiHairColor" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="haircol1" posparent="haircolor" posref="TL TL" x="16" y="4" hardtext="uiHairColor" color="255 255 255 255" fontsize="10"/>
|
||||
<ctrl type="scroll" id="haircol2" posparent="haircolor" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="5" value="UI:TEMP:CHAR3D:VPA:HATCOLOR" tracksize="40"
|
||||
tx_topright="" tx_middle="slider_m.tga" tx_bottomleft=""/>
|
||||
|
||||
<!-- TATOOS -->
|
||||
<instance template="but_slider" id="tatoos" posparent="pos3" posref="TL TL" x="-516" y="0" w="180" h="48" value="UI:TEMP:CHAR3D:VPC:TATTOO" max="31" />
|
||||
<view type="text" id="tatoo1" posparent="tatoos" posref="TL TL" x="16" y="2" hardtext="uiTatoos" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="tatoo1" posparent="tatoos" posref="TL TL" x="16" y="4" hardtext="uiTatoos" color="255 255 255 255" fontsize="10"/>
|
||||
<ctrl type="scroll" id="tatoo2" posparent="tatoos" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="31" value="UI:TEMP:CHAR3D:VPC:TATTOO" tracksize="40"
|
||||
tx_topright="" tx_middle="slider_m.tga" tx_bottomleft=""/>
|
||||
|
||||
<!-- EYES -->
|
||||
<instance template="but_slider" id="eyes" posparent="pos4" posref="TL TL" x="-516" y="0" w="180" h="48" value="UI:TEMP:CHAR3D:VPC:EYESCOLOR" max="7" />
|
||||
<view type="text" id="eyes1" posparent="eyes" posref="TL TL" x="16" y="2" hardtext="uiEyes" color="255 255 255 255" fontsize="11"/>
|
||||
<view type="text" id="eyes1" posparent="eyes" posref="TL TL" x="16" y="4" hardtext="uiEyes" color="255 255 255 255" fontsize="10"/>
|
||||
<ctrl type="scroll" id="eyes2" posparent="eyes" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="7" value="UI:TEMP:CHAR3D:VPC:EYESCOLOR" tracksize="40"
|
||||
tx_topright="" tx_middle="slider_m.tga" tx_bottomleft=""/>
|
||||
|
@ -2306,9 +2306,9 @@
|
|||
</group>
|
||||
|
||||
<!-- Bonus 1 -->
|
||||
<instance template="slider" id="bp1" posref="TL TL" x="20" y="-96" w="180" h="48" />
|
||||
<view type="text" id="title1" posparent="bp1" posref="TL TL" x="16" y="2" hardtext="uiCP_BP1" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="info1" posparent="title1" posref="MR ML" x="0" y="1" hardtext="uiCP_JOB1" color="255 255 255 255" fontsize="11"/>
|
||||
<instance template="slider" id="bp1" posref="TL TL" x="15" y="-90" w="180" h="48" />
|
||||
<view type="text" id="title1" posparent="bp1" posref="TL TL" x="0" y="2" hardtext="uiCP_BP1" color="255 255 255 255" fontsize="10"/>
|
||||
<view type="text" id="info1" posparent="title1" posref="MR ML" x="5" y="1" hardtext="uiCP_JOB1" color="255 255 255 255" fontsize="11"/>
|
||||
<ctrl type="scroll" id="scroll1" posparent="bp1" posref="MM MM" x="0" y="0" w="140" h="32"
|
||||
vertical="false" align="L" min="0" max="3" value="UI:TEMP:JOB_POINT1" tracksize="40"
|
||||
tx_topright="" tx_middle="slider_m.tga" tx_bottomleft=""/>
|
||||
|
@ -2335,13 +2335,13 @@
|
|||
<view type="text" id="desc_title" posparent="icons_back" posref="TL BL" hardtext="uiCP_BP_Des" color="140 162 107 255" fontsize="13" x="0" y="4" />
|
||||
|
||||
<!-- Pack description -->
|
||||
<view type="text" id="pack_F" posref="TR TL" hardtext="uiCP_Job_F1" fontsize="10" x="12" y="-10" posparent="icons_back"
|
||||
<view type="text" id="pack_F" posref="TR TL" hardtext="uiCP_Job_F1" fontsize="10" x="12" y="-5" posparent="icons_back"
|
||||
line_maxw="450" multi_line="true" multi_line_space="0"/>
|
||||
<view type="text" id="pack_M" posref="TR TL" hardtext="uiCP_Job_M1" fontsize="10" x="12" y="-66" posparent="icons_back"
|
||||
<view type="text" id="pack_M" posref="TR TL" hardtext="uiCP_Job_M1" fontsize="10" x="12" y="-61" posparent="icons_back"
|
||||
line_maxw="450" multi_line="true" multi_line_space="0"/>
|
||||
<view type="text" id="pack_G" posref="TR TL" hardtext="uiCP_Job_G1" fontsize="10" x="12" y="-122" posparent="icons_back"
|
||||
<view type="text" id="pack_G" posref="TR TL" hardtext="uiCP_Job_G1" fontsize="10" x="12" y="-117" posparent="icons_back"
|
||||
line_maxw="450" multi_line="true" multi_line_space="0"/>
|
||||
<view type="text" id="pack_C" posref="TR TL" hardtext="uiCP_Job_C1" fontsize="10" x="12" y="-178" posparent="icons_back"
|
||||
<view type="text" id="pack_C" posref="TR TL" hardtext="uiCP_Job_C1" fontsize="10" x="12" y="-173" posparent="icons_back"
|
||||
line_maxw="450" multi_line="true" multi_line_space="0"/>
|
||||
|
||||
|
||||
|
@ -2397,8 +2397,8 @@
|
|||
|
||||
<group id="result" posparent="desc" posref="TL TL" y="0" sizeref="w" h="96" >
|
||||
|
||||
<view type="text" id="title1" posref="TL TL" hardtext="uiCP_Title" color="140 162 107 255" fontsize="13" x="16" y="-12"/>
|
||||
<view type="text" id="title2" posref="BR BL" hardtext="uiCP_Refugee" color="255 255 255 255" fontsize="15" x="0" posparent="title1" />
|
||||
<view type="text" id="title1" posref="TL TL" hardtext="uiCP_Title" color="140 162 107 255" fontsize="13" x="16" y="-10"/>
|
||||
<view type="text" id="title2" posref="BR BL" hardtext="uiCP_Refugee" color="255 255 255 255" fontsize="15" y="-2" x="0" posparent="title1" />
|
||||
|
||||
<view type="text" id="title3" posparent="title1" posref="BL TL" hardtext="uiCP_Pack" fontsize="13" color="140 162 107 255" y="-8"/>
|
||||
<view type="text" id="res" posparent="title3" posref="TR TL" hardtext="uiCP_Res_F" fontsize="13" color="255 255 255 255" x="8" multi_line="true" multi_line_space="0" />
|
||||
|
@ -2467,7 +2467,7 @@
|
|||
<!-- TITLE -->
|
||||
|
||||
<group id="title" w="292" h="46" y="-6" x="-272" posref="TR TR">
|
||||
<view type="text" id="title1" posref="TM TM" global_color="false" render_layer="2" fontsize="20" shadow="true" y="-4" hardtext="uiCP_title1"/>
|
||||
<view type="text" id="title1" posref="TM TM" global_color="false" render_layer="2" fontsize="20" shadow="true" y="0" hardtext="uiCP_title1"/>
|
||||
<view type="text" id="title2" posref="BM BM" global_color="false" render_layer="2" fontsize="20" shadow="true" y="0" hardtext="uiCP_creation"/>
|
||||
</group>
|
||||
|
||||
|
|
|
@ -25,6 +25,8 @@
|
|||
value="basic.ttf" /> -->
|
||||
<param name="font"
|
||||
value="ryzom.ttf" />
|
||||
<param name="monospace_font"
|
||||
value="ryzom_monospace.ttf" />
|
||||
<param name="add_coef_font"
|
||||
value="0" />
|
||||
<param name="mul_coef_anim"
|
||||
|
|
|
@ -628,7 +628,7 @@
|
|||
<!-- TITLE -->
|
||||
|
||||
<group id="title" w="292" h="46" y="-6" x="-272" posref="TR TR">
|
||||
<view type="text" id="title1" posref="TM TM" global_color="false" render_layer="2" fontsize="20" shadow="true" y="-4" hardtext="uiCP_title1"/>
|
||||
<view type="text" id="title1" posref="TM TM" global_color="false" render_layer="2" fontsize="20" shadow="true" y="0" hardtext="uiCP_title1"/>
|
||||
<view type="text" id="title2" posref="BM BM" global_color="false" render_layer="2" fontsize="20" shadow="true" y="0" hardtext="uiCP_selection"/>
|
||||
</group>
|
||||
|
||||
|
@ -723,7 +723,7 @@
|
|||
|
||||
<group id="black" posref="BR BR" sizeref="hw" w="-16" h="-12" inherit_gc_alpha="true"/>
|
||||
<view type="bitmap" id="black2" posparent="black" posref="MM MM" sizeref="wh" w="-2" h="-2" inherit_gc_alpha="true" scale="true" texture="blank.tga" global_color="false"/>
|
||||
<group type="list" id="text_list" fontsize="9" posref="TL TL" posparent="black" x="2" y="-2" space="0" sizeref="hw" w="-4" h="-4" maxelements="2000"/>
|
||||
<group type="list" id="text_list" fontsize="9" posref="TL TL" posparent="black" x="2" y="0" space="0" sizeref="hw" w="-4" h="-4" maxelements="2000"/>
|
||||
<ctrl style="skin_scroll" id="scroll_bar" />
|
||||
</group>
|
||||
</group>
|
||||
|
@ -778,7 +778,7 @@
|
|||
|
||||
<group type="menu" id="r2ed_editor_menu"
|
||||
options="menu_back"
|
||||
text_y="-2"
|
||||
text_y="0"
|
||||
color="255 255 255 255"
|
||||
fontsize="16"
|
||||
shadow="true"
|
||||
|
|
|
@ -83,7 +83,7 @@
|
|||
tx_normal="qh_off" tx_pushed="qh_on" tx_over="qh_off" wmin="80" wmargin="40"
|
||||
global_color_normal="false" global_color_over="false" global_color_pushed="false"
|
||||
color="255 255 255 255" col_over="255 255 255 0" col_pushed="255 255 255 255"
|
||||
text_y="-1" fontsize="13" shadow="true"
|
||||
text_y="1" fontsize="13" shadow="true"
|
||||
text_color_normal="222 201 182 255"
|
||||
text_color_pushed="222 201 182 255"
|
||||
text_color_over="255 255 255 255"
|
||||
|
|
|
@ -25,6 +25,8 @@
|
|||
value="outgame.ttf" /> -->
|
||||
<param name="font"
|
||||
value="ryzom.ttf" />
|
||||
<param name="monospace_font"
|
||||
value="ryzom_monospace.ttf" />
|
||||
<param name="add_coef_font"
|
||||
value="3" />
|
||||
<param name="mul_coef_anim"
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue