Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
# Conflicts: # .gitignoremaster
commit
a6693e9c9e
|
|
@ -106,9 +106,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>88b6b9ebc2eda992b721529921c82066</string>
|
||||
<string>80d157facdba399b3a59c400e29cb625</string>
|
||||
<key>url</key>
|
||||
<string>http://3p.firestormviewer.org/glib-2.56.0.220911433-linux64_bionic-220911433.tar.bz2</string>
|
||||
<string>http://3p.firestormviewer.org/glib-2.64.6.230870115-linux64-230870115.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>linux64</string>
|
||||
|
|
@ -552,9 +552,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>45acdda717f95ce9169de9f49199c066</string>
|
||||
<string>1c341bdbb5fd0c8a8930f76e6c1647d4</string>
|
||||
<key>url</key>
|
||||
<string>http://3p.firestormviewer.org/apr_suite-1.4.5.230351228-linux64-230351228.tar.bz2</string>
|
||||
<string>http://3p.firestormviewer.org/apr_suite-1.4.5.230921251-linux64-230921251.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>linux64</string>
|
||||
|
|
@ -736,9 +736,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>30b1a9b7637f7a1546d38430064ca582</string>
|
||||
<string>8b79711b4fa914c16f1284939d55dcc1</string>
|
||||
<key>url</key>
|
||||
<string>https://3p.firestormviewer.org/colladadom-2.3.222261253-linux64-222261253.tar.bz2</string>
|
||||
<string>https://3p.firestormviewer.org/colladadom-2.3.230940029-linux64-230940029.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>linux64</string>
|
||||
|
|
@ -1030,9 +1030,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>bbcfe77b920fb7f00c7f2a494ffc6c43</string>
|
||||
<string>39702f98867a319b090ee04f22d82762</string>
|
||||
<key>url</key>
|
||||
<string>http://3p.firestormviewer.org/expat-2.1.1.180841547-linux64-180841547.tar.bz2</string>
|
||||
<string>http://3p.firestormviewer.org/expat-2.5.0.230021327-linux64-230021327.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>linux64</string>
|
||||
|
|
@ -1964,9 +1964,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>c68bbfe6c9bd59d182c4d20d966492b4</string>
|
||||
<string>d72c6d8db827ce3d83c5703f519a2ac9</string>
|
||||
<key>url</key>
|
||||
<string>http://3p.firestormviewer.org/libxml2-2.9.4.222130358-linux64-222130358.tar.bz2</string>
|
||||
<string>http://3p.firestormviewer.org/libxml2-2.10.3.230940019-linux64-230940019.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>linux64</string>
|
||||
|
|
@ -3452,9 +3452,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>f810193590cae9b35a1c77b6c72bfb01</string>
|
||||
<string>71a9c7c03a2c26cdb21fa476de485d9c</string>
|
||||
<key>url</key>
|
||||
<string>http://3p.firestormviewer.org/xmlrpc_epi-0.54.1.180841935-linux64-180841935.tar.bz2</string>
|
||||
<string>http://3p.firestormviewer.org/xmlrpc_epi-0.54.2.230940042-linux64-230940042.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>linux64</string>
|
||||
|
|
|
|||
|
|
@ -1,13 +1,19 @@
|
|||
# -*- cmake -*-
|
||||
|
||||
include_guard()
|
||||
add_library(fs::discord INTERFACE IMPORTED)
|
||||
|
||||
include(Prebuilt)
|
||||
use_prebuilt_binary(discord-rpc)
|
||||
set(DISCORD_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/discord-rpc)
|
||||
|
||||
if (WINDOWS)
|
||||
set(DISCORD_LIBRARY discord-rpc)
|
||||
target_link_libraries(fs::discord INTERFACE discord-rpc)
|
||||
elseif (LINUX)
|
||||
set(DISCORD_LIBRARY discord-rpc)
|
||||
target_link_libraries(fs::discord INTERFACE discord-rpc)
|
||||
elseif (DARWIN)
|
||||
set(DISCORD_LIBRARY discord-rpc)
|
||||
target_link_libraries(fs::discord INTERFACE discord-rpc)
|
||||
endif (WINDOWS)
|
||||
|
||||
target_include_directories(fs::discord SYSTEM INTERFACE
|
||||
${AUTOBUILD_INSTALL_DIR}/include/discord-rpc
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,65 +0,0 @@
|
|||
# -*- cmake -*-
|
||||
|
||||
# - Find FMODSTUDIO
|
||||
# Find the FMODSTUDIO includes and library
|
||||
# This module defines
|
||||
# FMODSTUDIO_INCLUDE_DIR, where to find fmod.h and fmod_errors.h
|
||||
# FMODSTUDIO_LIBRARIES, the libraries needed to use FMODSTUDIO.
|
||||
# FMODSTUDIO, If false, do not try to use FMODSTUDIO.
|
||||
# also defined, but not for general use are
|
||||
# FMODSTUDIO_LIBRARY, where to find the FMODSTUDIO library.
|
||||
|
||||
FIND_PATH(FMODSTUDIO_INCLUDE_DIR fmod.h PATH_SUFFIXES fmod)
|
||||
|
||||
SET(FMODSTUDIO_NAMES ${FMODSTUDIO_NAMES} fmod fmod_vc)
|
||||
FIND_LIBRARY(FMODSTUDIO_LIBRARY
|
||||
NAMES ${FMODSTUDIO_NAMES}
|
||||
PATH_SUFFIXES fmod
|
||||
)
|
||||
|
||||
IF (FMODSTUDIO_SDK_DIR OR WINDOWS)
|
||||
if(WINDOWS)
|
||||
set(FMODSTUDIO_SDK_DIR "$ENV{PROGRAMFILES}/FMOD SoundSystem/FMOD Programmers API Windows" CACHE PATH "Path to FMODSTUDIO")
|
||||
STRING(REGEX REPLACE "\\\\" "/" FMODSTUDIO_SDK_DIR ${FMODSTUDIO_SDK_DIR})
|
||||
endif(WINDOWS)
|
||||
find_library(FMODSTUDIO_LIBRARY
|
||||
fmod_vc fmodL_vc
|
||||
PATHS
|
||||
${FMODSTUDIO_SDK_DIR}/api/lib
|
||||
${FMODSTUDIO_SDK_DIR}/api
|
||||
${FMODSTUDIO_SDK_DIR}
|
||||
)
|
||||
find_path(FMODSTUDIO_INCLUDE_DIR fmod.h
|
||||
${FMODSTUDIO_SDK_DIR}/api/inc
|
||||
${FMODSTUDIO_SDK_DIR}/api
|
||||
${FMODSTUDIO_SDK_DIR}
|
||||
)
|
||||
find_path(FMODSTUDIO_INCLUDE_DIR fmod.h
|
||||
${FMODSTUDIO_SDK_DIR}/api/inc
|
||||
${FMODSTUDIO_SDK_DIR}/api
|
||||
${FMODSTUDIO_SDK_DIR}
|
||||
)
|
||||
IF (FMODSTUDIO_LIBRARY AND FMODSTUDIO_INCLUDE_DIR)
|
||||
SET(FMODSTUDIO_LIBRARIES ${FMODSTUDIO_LIBRARY})
|
||||
SET(FMODSTUDIO_FOUND "YES")
|
||||
endif (FMODSTUDIO_LIBRARY AND FMODSTUDIO_INCLUDE_DIR)
|
||||
ENDIF (FMODSTUDIO_SDK_DIR OR WINDOWS)
|
||||
|
||||
IF (FMODSTUDIO_FOUND)
|
||||
IF (NOT FMODSTUDIO_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Found FMODSTUDIO: ${FMODSTUDIO_LIBRARIES}")
|
||||
ENDIF (NOT FMODSTUDIO_FIND_QUIETLY)
|
||||
ELSE (FMODSTUDIO_FOUND)
|
||||
IF (FMODSTUDIO_FIND_REQUIRED)
|
||||
MESSAGE(FATAL_ERROR "Could not find FMODSTUDIO library")
|
||||
ENDIF (FMODSTUDIO_FIND_REQUIRED)
|
||||
ENDIF (FMODSTUDIO_FOUND)
|
||||
|
||||
# Deprecated declarations.
|
||||
SET (NATIVE_FMODSTUDIO_INCLUDE_PATH ${FMODSTUDIO_INCLUDE_DIR} )
|
||||
GET_FILENAME_COMPONENT (NATIVE_FMODSTUDIO_LIB_PATH ${FMODSTUDIO_LIBRARY} PATH)
|
||||
|
||||
MARK_AS_ADVANCED(
|
||||
FMODSTUDIO_LIBRARY
|
||||
FMODSTUDIO_INCLUDE_DIR
|
||||
)
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
# -*- cmake -*-
|
||||
|
||||
# - Find GLOD
|
||||
# This module defines
|
||||
# GLOD_INCLUDE_DIR, where to find glod.h, etc.
|
||||
# GLOD_LIBRARIES, the library needed to use GLOD.
|
||||
# GLOD_FOUND, If false, do not try to use GLOD.
|
||||
|
||||
# LL coded the #include with a glod path in llfloatermodelpreview.cpp
|
||||
find_path(GLOD_INCLUDE_DIR glod/glod.h)
|
||||
|
||||
set(GLOD_NAMES ${GLOD_NAMES} glod)
|
||||
find_library(GLOD_LIBRARIES
|
||||
NAMES ${GLOD_NAMES}
|
||||
)
|
||||
|
||||
if (GLOD_LIBRARIES AND GLOD_INCLUDE_DIR)
|
||||
set(GLOD_FOUND "YES")
|
||||
else (GLOD_LIBRARIES AND GLOD_INCLUDE_DIR)
|
||||
set(GLOD_FOUND "NO")
|
||||
endif (GLOD_LIBRARIES AND GLOD_INCLUDE_DIR)
|
||||
|
||||
if (GLOD_FOUND)
|
||||
if (NOT GLOD_FIND_QUIETLY)
|
||||
message(STATUS "Found GLOD: Library in '${GLOD_LIBRARY}' and header in '${GLOD_INCLUDE_DIR}' ")
|
||||
endif (NOT GLOD_FIND_QUIETLY)
|
||||
else (GLOD_FOUND)
|
||||
if (GLOD_FIND_REQUIRED)
|
||||
message(FATAL_ERROR " * * * * *\nCould not find GLOD library!\n* * * * *")
|
||||
endif (GLOD_FIND_REQUIRED)
|
||||
endif (GLOD_FOUND)
|
||||
|
||||
mark_as_advanced(
|
||||
GLOD_LIBRARIES
|
||||
GLOD_INCLUDE_DIR
|
||||
)
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
# -*- cmake -*-
|
||||
|
||||
# - Find HUNSPELL
|
||||
# This module defines
|
||||
# HACD_INCLUDE_DIR, where to find hacdHACD.h, etc.
|
||||
# HACD_LIBRARY, the library needed to use HACD.
|
||||
# HACD_FOUND, If false, do not try to use HACD.
|
||||
|
||||
find_path(HACD_INCLUDE_DIR llconvexdecomposition.h
|
||||
PATH_SUFFIXES hacd
|
||||
)
|
||||
|
||||
set(HACD_NAMES ${HACD_NAMES} hacd)
|
||||
find_library(HACD_LIBRARY
|
||||
NAMES ${HACD_NAMES}
|
||||
)
|
||||
|
||||
find_library( LLCONVEXDECOMP_LIBRARY NAMES nd_hacdConvexDecomposition )
|
||||
|
||||
if (HACD_LIBRARY AND HACD_INCLUDE_DIR AND LLCONVEXDECOMP_LIBRARY)
|
||||
set(HACD_FOUND "YES")
|
||||
else (HACD_LIBRARY AND HACD_INCLUDE_DIR AND LLCONVEXDECOMP_LIBRARY)
|
||||
set(HACD_FOUND "NO")
|
||||
endif (HACD_LIBRARY AND HACD_INCLUDE_DIR AND LLCONVEXDECOMP_LIBRARY)
|
||||
|
||||
|
||||
if (HACD_FOUND)
|
||||
if (NOT HACD_FIND_QUIETLY)
|
||||
message(STATUS "Found HACD: Library in '${HACD_LIBRARY}' and header in '${HACD_INCLUDE_DIR}' ")
|
||||
endif (NOT HACD_FIND_QUIETLY)
|
||||
else (HACD_FOUND)
|
||||
if (HACD_FIND_REQUIRED)
|
||||
message(FATAL_ERROR " * * *\nCould not find HACD library! * * *")
|
||||
endif (HACD_FIND_REQUIRED)
|
||||
endif (HACD_FOUND)
|
||||
|
||||
mark_as_advanced(
|
||||
HACD_LIBRARY
|
||||
HACD_DECOMP_LIB
|
||||
HACD_INCLUDE_DIR
|
||||
)
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
# -*- cmake -*-
|
||||
|
||||
# - Find KDU
|
||||
# This module defines
|
||||
# KDU_INCLUDE_DIR, where to find kdu.h, etc.
|
||||
# KDU_LIBRARIES, the library needed to use KDU.
|
||||
# KDU_FOUND, If false, do not try to use KDU.
|
||||
|
||||
# LL coded the #include with a glod path in llfloatermodelpreview.cpp
|
||||
find_path(KDU_INCLUDE_DIR kdu_image.h
|
||||
PATH_SUFFIXES kdu
|
||||
)
|
||||
|
||||
set(KDU_NAMES ${KDU_NAMES} kdu)
|
||||
find_library(KDU_LIBRARIES
|
||||
NAMES ${KDU_NAMES}
|
||||
)
|
||||
|
||||
if (KDU_LIBRARIES AND KDU_INCLUDE_DIR)
|
||||
set(KDU_FOUND "YES")
|
||||
set(KDU_INCLUDE_DIRS ${KDU_INCLUDE_DIR})
|
||||
set(KDU_LIBRARY ${KDU_LIBRARIES})
|
||||
else (KDU_LIBRARIES AND KDU_INCLUDE_DIR)
|
||||
set(KDU_FOUND "NO")
|
||||
endif (KDU_LIBRARIES AND KDU_INCLUDE_DIR)
|
||||
|
||||
if (KDU_FOUND)
|
||||
if (NOT KDU_FIND_QUIETLY)
|
||||
message(STATUS "Found KDU: Library in '${KDU_LIBRARY}' and header in '${KDU_INCLUDE_DIR}' ")
|
||||
endif (NOT KDU_FIND_QUIETLY)
|
||||
else (KDU_FOUND)
|
||||
if (KDU_FIND_REQUIRED)
|
||||
message(FATAL_ERROR " * * * * *\nCould not find KDU library!\n* * * * *")
|
||||
endif (KDU_FIND_REQUIRED)
|
||||
endif (KDU_FOUND)
|
||||
|
||||
mark_as_advanced(
|
||||
KDU_LIBRARIES
|
||||
KDU_INCLUDE_DIR
|
||||
)
|
||||
|
|
@ -1,62 +0,0 @@
|
|||
# -*- cmake -*-
|
||||
|
||||
# - Find llqtwebkit
|
||||
# Find the llqtwebkit includes and library
|
||||
# This module defines
|
||||
# LLQTWEBKIT_INCLUDE_DIR, where to find llqtwebkit.h, etc.
|
||||
# LLQTWEBKIT_LIBRARY, the llqtwebkit library with full path.
|
||||
# LLQTWEBKIT_FOUND, If false, do not try to use llqtwebkit.
|
||||
# also defined, but not for general use are
|
||||
# LLQTWEBKIT_LIBRARIES, the libraries needed to use llqtwebkit.
|
||||
# LLQTWEBKIT_LIBRARY_DIRS, where to find the llqtwebkit library.
|
||||
# LLQTWEBKIT_DEFINITIONS - You should add_definitions(${LLQTWEBKIT_DEFINITIONS})
|
||||
# before compiling code that includes llqtwebkit library files.
|
||||
|
||||
# Try to use pkg-config first.
|
||||
# This allows to have two different libllqtwebkit packages installed:
|
||||
# one for viewer 2.x and one for viewer 1.x.
|
||||
include(FindPkgConfig)
|
||||
if (PKG_CONFIG_FOUND)
|
||||
if (LLQtWebkit_FIND_REQUIRED AND LLQtWebkit_FIND_VERSION)
|
||||
set(_PACKAGE_ARGS libllqtwebkit>=${LLQtWebkit_FIND_VERSION} REQUIRED)
|
||||
else (LLQtWebkit_FIND_REQUIRED AND LLQtWebkit_FIND_VERSION)
|
||||
set(_PACKAGE_ARGS libllqtwebkit)
|
||||
endif (LLQtWebkit_FIND_REQUIRED AND LLQtWebkit_FIND_VERSION)
|
||||
if (NOT "${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" VERSION_LESS "2.8.2")
|
||||
# As virtually nobody will have a pkg-config file for this, do this check always quiet.
|
||||
# Unfortunately cmake 2.8.2 or higher is required for pkg_check_modules to have a 'QUIET'.
|
||||
set(_PACKAGE_ARGS ${_PACKAGE_ARGS} QUIET)
|
||||
endif ()
|
||||
pkg_check_modules(LLQTWEBKIT ${_PACKAGE_ARGS})
|
||||
endif (PKG_CONFIG_FOUND)
|
||||
set(LLQTWEBKIT_DEFINITIONS ${LLQTWEBKIT_CFLAGS_OTHER})
|
||||
|
||||
find_path(LLQTWEBKIT_INCLUDE_DIR llqtwebkit.h NO_SYSTEM_ENVIRONMENT_PATH HINTS ${LLQTWEBKIT_INCLUDE_DIRS})
|
||||
|
||||
find_library(LLQTWEBKIT_LIBRARY NAMES llqtwebkit NO_SYSTEM_ENVIRONMENT_PATH HINTS ${LLQTWEBKIT_LIBRARY_DIRS})
|
||||
|
||||
if (NOT PKG_CONFIG_FOUND OR NOT LLQTWEBKIT_FOUND) # If pkg-config couldn't find it, pretend we don't have pkg-config.
|
||||
set(LLQTWEBKIT_LIBRARIES llqtwebkit)
|
||||
get_filename_component(LLQTWEBKIT_LIBRARY_DIRS ${LLQTWEBKIT_LIBRARY} PATH)
|
||||
endif (NOT PKG_CONFIG_FOUND OR NOT LLQTWEBKIT_FOUND)
|
||||
|
||||
# Handle the QUIETLY and REQUIRED arguments and set LLQTWEBKIT_FOUND
|
||||
# to TRUE if all listed variables are TRUE.
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(
|
||||
LLQTWEBKIT
|
||||
DEFAULT_MSG
|
||||
LLQTWEBKIT_LIBRARY
|
||||
LLQTWEBKIT_INCLUDE_DIR
|
||||
LLQTWEBKIT_LIBRARIES
|
||||
LLQTWEBKIT_LIBRARY_DIRS
|
||||
)
|
||||
|
||||
mark_as_advanced(
|
||||
LLQTWEBKIT_LIBRARY
|
||||
LLQTWEBKIT_INCLUDE_DIR
|
||||
LLQTWEBKIT_LIBRARIES
|
||||
LLQTWEBKIT_LIBRARY_DIRS
|
||||
LLQTWEBKIT_DEFINITIONS
|
||||
)
|
||||
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
# -*- cmake -*-
|
||||
|
||||
# - Find libnotify
|
||||
# Find the libnotify includes and library
|
||||
# This module defines
|
||||
# LIBNOTIFY_INCLUDE_DIR, where to find notify.h, etc.
|
||||
# LIBNOTIFY_LIBRARIES, the libraries needed to use libnotify.
|
||||
# LIBNOTIFY_FOUND, If false, do not try to use libnotify.
|
||||
# also defined, but not for general use are
|
||||
# LIBNOTIFY_LIBRARY, where to find the libnotify library.
|
||||
|
||||
FIND_PATH(LIBNOTIFY_INCLUDE_DIR notify.h
|
||||
PATH_SUFFIXES libnotify
|
||||
)
|
||||
|
||||
SET(LIBNOTIFY_NAMES ${LIBNOTIFY_NAMES} notify)
|
||||
FIND_LIBRARY(LIBNOTIFY_LIBRARY
|
||||
NAMES ${LIBNOTIFY_NAMES}
|
||||
)
|
||||
|
||||
IF (LIBNOTIFY_LIBRARY AND LIBNOTIFY_INCLUDE_DIR)
|
||||
SET(LIBNOTIFY_LIBRARIES ${LIBNOTIFY_LIBRARY})
|
||||
SET(LIBNOTIFY_FOUND "YES")
|
||||
ELSE (LIBNOTIFY_LIBRARY AND LIBNOTIFY_INCLUDE_DIR)
|
||||
SET(LIBNOTIFY_FOUND "NO")
|
||||
ENDIF (LIBNOTIFY_LIBRARY AND LIBNOTIFY_INCLUDE_DIR)
|
||||
|
||||
|
||||
IF (LIBNOTIFY_FOUND)
|
||||
IF (NOT LIBNOTIFY_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Found libnotify: '${LIBNOTIFY_LIBRARIES}' and header in '${LIBNOTIFY_INCLUDE_DIR}'")
|
||||
ENDIF (NOT LIBNOTIFY_FIND_QUIETLY)
|
||||
ELSE (LIBNOTIFY_FOUND)
|
||||
IF (LIBNOTIFY_FIND_REQUIRED)
|
||||
MESSAGE(FATAL_ERROR "Could not find libnotify library")
|
||||
ENDIF (LIBNOTIFY_FIND_REQUIRED)
|
||||
ENDIF (LIBNOTIFY_FOUND)
|
||||
|
||||
# Deprecated declarations.
|
||||
SET (NATIVE_LIBNOTIFY_INCLUDE_PATH ${LIBNOTIFY_INCLUDE_DIR} )
|
||||
GET_FILENAME_COMPONENT (NATIVE_LIBNOTIFY_LIB_PATH ${LIBNOTIFY_LIBRARY} PATH)
|
||||
|
||||
MARK_AS_ADVANCED(
|
||||
LIBNOTIFY_LIBRARY
|
||||
LIBNOTIFY_INCLUDE_DIR
|
||||
)
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
# -*- cmake -*-
|
||||
|
||||
# - Find NGHTTP2
|
||||
# This module defines
|
||||
# NGHTTP2_INCLUDE_DIR, where to find glod.h, etc.
|
||||
# NGHTTP2_LIBRARIES, the library needed to use NGHTTP2.
|
||||
# NGHTTP2_FOUND, If false, do not try to use NGHTTP2.
|
||||
|
||||
find_path(NGHTTP2_INCLUDE_DIR nghttp2/nghttp2.h)
|
||||
|
||||
set(NGHTTP2_NAMES ${NGHTTP2_NAMES} nghttp2)
|
||||
find_library(NGHTTP2_LIBRARIES
|
||||
NAMES ${NGHTTP2_NAMES}
|
||||
)
|
||||
|
||||
if (NGHTTP2_LIBRARIES AND NGHTTP2_INCLUDE_DIR)
|
||||
set(NGHTTP2_FOUND "YES")
|
||||
else (NGHTTP2_LIBRARIES AND NGHTTP2_INCLUDE_DIR)
|
||||
set(NGHTTP2_FOUND "NO")
|
||||
endif (NGHTTP2_LIBRARIES AND NGHTTP2_INCLUDE_DIR)
|
||||
|
||||
if (NGHTTP2_FOUND)
|
||||
if (NOT NGHTTP2_FIND_QUIETLY)
|
||||
message(STATUS "Found NGHTTP2: Library in '${NGHTTP2_LIBRARY}' and header in '${NGHTTP2_INCLUDE_DIR}' ")
|
||||
endif (NOT NGHTTP2_FIND_QUIETLY)
|
||||
else (NGHTTP2_FOUND)
|
||||
if (NGHTTP2_FIND_REQUIRED)
|
||||
message(FATAL_ERROR " * * * * *\nCould not find NGHTTP2 library!\n* * * * *")
|
||||
endif (NGHTTP2_FIND_REQUIRED)
|
||||
endif (NGHTTP2_FOUND)
|
||||
|
||||
mark_as_advanced(
|
||||
NGHTTP2_LIBRARIES
|
||||
NGHTTP2_INCLUDE_DIR
|
||||
)
|
||||
|
|
@ -12,12 +12,10 @@ use_prebuilt_binary(gntp-growl)
|
|||
if (WINDOWS)
|
||||
target_link_libraries( fs::growl INTERFACE growl.lib growl++.lib)
|
||||
elseif (DARWIN)
|
||||
target_link_libraries( fs:growl INTERFACE libgrowl.dylib libgrowl++.dylib)
|
||||
target_link_libraries( fs::growl INTERFACE libgrowl.dylib libgrowl++.dylib)
|
||||
endif (WINDOWS)
|
||||
|
||||
target_include_directories( fs::growl SYSTEM INTERFACE
|
||||
${AUTOBUILD_INSTALL_DIR}/include/Growl
|
||||
)
|
||||
endif (DARWIN OR WINDOWS) # <FS:Zi> no need to do these things on Linux
|
||||
|
||||
add_compile_definitions(HAS_GROWL)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,9 @@
|
|||
# -*- cmake -*-
|
||||
set(CMAKE_VERBOSE_MAKEFILE ON) # <FS:Zi> remove this once things work
|
||||
|
||||
# <FS:ND> Try to find pulse header, if we got them we can use the linux volume catcher
|
||||
if (LINUX)
|
||||
include(GLIB)
|
||||
|
||||
include_directories( ${GLIB_INCLUDE_DIRS} )
|
||||
|
||||
foreach( PULSE_FILE pulse/introspect.h pulse/context.h pulse/subscribe.h pulse/glib-mainloop.h )
|
||||
foreach( PULSE_FILE pulse/introspect.h pulse/context.h pulse/subscribe.h )
|
||||
find_path( PULSE_FILE_${PULSE_FILE}_FOUND ${PULSE_FILE} NO_CACHE)
|
||||
if( NOT PULSE_FILE_${PULSE_FILE}_FOUND )
|
||||
message( "Looking for ${PULSE_FILE} ... not found")
|
||||
|
|
|
|||
|
|
@ -7,7 +7,6 @@ add_library( ll::tracy INTERFACE IMPORTED )
|
|||
set(USE_TRACY OFF CACHE BOOL "Use Tracy profiler.")
|
||||
|
||||
if (USE_TRACY)
|
||||
use_system_binary(tracy)
|
||||
use_prebuilt_binary(tracy)
|
||||
|
||||
target_include_directories( ll::tracy SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/tracy)
|
||||
|
|
|
|||
|
|
@ -115,8 +115,12 @@ void LLDiskCache::purge()
|
|||
#endif
|
||||
if (boost::filesystem::is_directory(cache_path, ec) && !ec.failed())
|
||||
{
|
||||
boost::filesystem::directory_iterator iter(cache_path, ec);
|
||||
while (iter != boost::filesystem::directory_iterator() && !ec.failed())
|
||||
// <FS:Ansariel> Optimize asset simple disk cache
|
||||
//boost::filesystem::directory_iterator iter(cache_path, ec);
|
||||
//while (iter != boost::filesystem::directory_iterator() && !ec.failed())
|
||||
boost::filesystem::recursive_directory_iterator iter(cache_path, ec);
|
||||
while (iter != boost::filesystem::recursive_directory_iterator() && !ec.failed())
|
||||
// </FS:Ansariel>
|
||||
{
|
||||
if (boost::filesystem::is_regular_file(*iter, ec) && !ec.failed())
|
||||
{
|
||||
|
|
@ -470,8 +474,12 @@ void LLDiskCache::clearCache()
|
|||
#endif
|
||||
if (boost::filesystem::is_directory(cache_path, ec) && !ec.failed())
|
||||
{
|
||||
boost::filesystem::directory_iterator iter(cache_path, ec);
|
||||
while (iter != boost::filesystem::directory_iterator() && !ec.failed())
|
||||
// <FS:Ansariel> Optimize asset simple disk cache
|
||||
//boost::filesystem::directory_iterator iter(cache_path, ec);
|
||||
//while (iter != boost::filesystem::directory_iterator() && !ec.failed())
|
||||
boost::filesystem::recursive_directory_iterator iter(cache_path, ec);
|
||||
while (iter != boost::filesystem::recursive_directory_iterator() && !ec.failed())
|
||||
// </FS:Ansariel>
|
||||
{
|
||||
if (boost::filesystem::is_regular_file(*iter, ec) && !ec.failed())
|
||||
{
|
||||
|
|
@ -527,7 +535,7 @@ void LLDiskCache::removeOldVFSFiles()
|
|||
}
|
||||
}
|
||||
|
||||
uintmax_t LLDiskCache::dirFileSize(const std::string dir)
|
||||
uintmax_t LLDiskCache::dirFileSize(const std::string& dir)
|
||||
{
|
||||
uintmax_t total_file_size = 0;
|
||||
|
||||
|
|
@ -548,8 +556,12 @@ uintmax_t LLDiskCache::dirFileSize(const std::string dir)
|
|||
#endif
|
||||
if (boost::filesystem::is_directory(dir_path, ec) && !ec.failed())
|
||||
{
|
||||
boost::filesystem::directory_iterator iter(dir_path, ec);
|
||||
while (iter != boost::filesystem::directory_iterator() && !ec.failed())
|
||||
// <FS:Ansariel> Optimize asset simple disk cache
|
||||
//boost::filesystem::directory_iterator iter(dir_path, ec);
|
||||
//while (iter != boost::filesystem::directory_iterator() && !ec.failed())
|
||||
boost::filesystem::recursive_directory_iterator iter(dir_path, ec);
|
||||
while (iter != boost::filesystem::recursive_directory_iterator() && !ec.failed())
|
||||
// </FS:Ansariel>
|
||||
{
|
||||
if (boost::filesystem::is_regular_file(*iter, ec) && !ec.failed())
|
||||
{
|
||||
|
|
|
|||
|
|
@ -164,7 +164,7 @@ class LLDiskCache :
|
|||
* directory. Primarily used here to determine the directory size
|
||||
* before and after the cache purge
|
||||
*/
|
||||
uintmax_t dirFileSize(const std::string dir);
|
||||
uintmax_t dirFileSize(const std::string& dir);
|
||||
|
||||
/**
|
||||
* Utility function to convert an LLAssetType enum into a
|
||||
|
|
|
|||
|
|
@ -912,7 +912,7 @@ BOOL LLImageGL::setImage(const U8* data_in, BOOL data_hasmips /* = FALSE */, S32
|
|||
prev_mip_data = nullptr;
|
||||
cur_mip_data = nullptr;
|
||||
// </FS:Zi>
|
||||
//
|
||||
|
||||
mGLTextureCreated = false;
|
||||
return FALSE;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,8 +31,6 @@ set(media_plugin_cef_HEADER_FILES
|
|||
volume_catcher.h
|
||||
)
|
||||
|
||||
if (NOT DISABLE_VOLUME_CATCHER) # <FS:Zi> disable volume catcher in cef with -DDISABLE_VOLUME_CATCHER=TRUE
|
||||
|
||||
add_compile_definitions(LL_VOLUME_CATCHER)
|
||||
|
||||
# Select which VolumeCatcher implementation to use
|
||||
|
|
@ -54,8 +52,6 @@ elseif (WINDOWS)
|
|||
list(APPEND media_plugin_cef_SOURCE_FILES windows_volume_catcher.cpp)
|
||||
endif (LINUX)
|
||||
|
||||
endif (NOT DISABLE_VOLUME_CATCHER)
|
||||
|
||||
list(APPEND media_plugin_cef_SOURCE_FILES ${media_plugin_cef_HEADER_FILES})
|
||||
|
||||
add_library(media_plugin_cef
|
||||
|
|
|
|||
|
|
@ -41,13 +41,11 @@
|
|||
|
||||
|
||||
extern "C" {
|
||||
#include <glib.h>
|
||||
#include <glib-object.h>
|
||||
|
||||
#include <pulse/introspect.h>
|
||||
#include <pulse/context.h>
|
||||
#include <pulse/subscribe.h>
|
||||
#include <pulse/glib-mainloop.h> // There's no special reason why we want the *glib* PA mainloop, but the generic polling implementation seems broken.
|
||||
|
||||
#include <pulse/mainloop.h>
|
||||
|
||||
#include "apr_pools.h"
|
||||
#include "apr_dso.h"
|
||||
|
|
@ -62,7 +60,6 @@ extern "C" {
|
|||
|
||||
#define LL_PA_SYM(REQUIRED, PASYM, RTN, ...) RTN (*ll##PASYM)(__VA_ARGS__) = NULL
|
||||
#include "linux_volume_catcher_pa_syms.inc"
|
||||
#include "linux_volume_catcher_paglib_syms.inc"
|
||||
#undef LL_PA_SYM
|
||||
|
||||
static bool sSymsGrabbed = false;
|
||||
|
|
@ -94,7 +91,6 @@ bool grab_pa_syms(std::string pulse_dso_name)
|
|||
INFOMSG("Found DSO: %s", pulse_dso_name.c_str());
|
||||
|
||||
#include "linux_volume_catcher_pa_syms.inc"
|
||||
#include "linux_volume_catcher_paglib_syms.inc"
|
||||
|
||||
if ( sSymPADSOHandle )
|
||||
{
|
||||
|
|
@ -141,7 +137,6 @@ void ungrab_pa_syms()
|
|||
// NULL-out all of the symbols we'd grabbed
|
||||
#define LL_PA_SYM(REQUIRED, PASYM, RTN, ...) do{ll##PASYM = NULL;}while(0)
|
||||
#include "linux_volume_catcher_pa_syms.inc"
|
||||
#include "linux_volume_catcher_paglib_syms.inc"
|
||||
#undef LL_PA_SYM
|
||||
|
||||
sSymsGrabbed = false;
|
||||
|
|
@ -178,7 +173,7 @@ public:
|
|||
std::set<U32> mSinkInputIndices;
|
||||
std::map<U32,U32> mSinkInputNumChannels;
|
||||
F32 mDesiredVolume;
|
||||
pa_glib_mainloop *mMainloop;
|
||||
pa_mainloop *mMainloop;
|
||||
pa_context *mPAContext;
|
||||
bool mConnected;
|
||||
bool mGotSyms;
|
||||
|
|
@ -210,18 +205,14 @@ void VolumeCatcherImpl::init()
|
|||
// bit fragile and (for our purposes) we'd rather simply not function
|
||||
// than crash
|
||||
|
||||
// we cheat and rely upon libpulse-mainloop-glib.so.0 to pull-in
|
||||
// libpulse.so.0 - this isn't a great assumption, and the two DSOs should
|
||||
// probably be loaded separately. Our Linux DSO framework needs refactoring,
|
||||
// we do this sort of thing a lot with practically identical logic...
|
||||
mGotSyms = loadsyms("libpulse-mainloop-glib.so.0");
|
||||
mGotSyms = loadsyms("libpulse.so.0");
|
||||
if (!mGotSyms) return;
|
||||
|
||||
mMainloop = llpa_glib_mainloop_new(g_main_context_default());
|
||||
mMainloop = llpa_mainloop_new();
|
||||
|
||||
if (mMainloop)
|
||||
{
|
||||
pa_mainloop_api *api = llpa_glib_mainloop_get_api(mMainloop);
|
||||
pa_mainloop_api *api = llpa_mainloop_get_api(mMainloop);
|
||||
|
||||
if (api)
|
||||
{
|
||||
|
|
@ -274,7 +265,7 @@ void VolumeCatcherImpl::cleanup()
|
|||
|
||||
if (mGotSyms && mMainloop)
|
||||
{
|
||||
llpa_glib_mainloop_free(mMainloop);
|
||||
llpa_mainloop_free(mMainloop);
|
||||
}
|
||||
mMainloop = NULL;
|
||||
}
|
||||
|
|
@ -295,8 +286,7 @@ void VolumeCatcherImpl::setVolume(F32 volume)
|
|||
|
||||
void VolumeCatcherImpl::pump()
|
||||
{
|
||||
gboolean may_block = FALSE;
|
||||
g_main_context_iteration(g_main_context_default(), may_block);
|
||||
return;
|
||||
}
|
||||
|
||||
void VolumeCatcherImpl::connected_okay()
|
||||
|
|
|
|||
|
|
@ -18,4 +18,8 @@ LL_PA_SYM(true, pa_proplist_new, pa_proplist*, void);
|
|||
LL_PA_SYM(true, pa_proplist_sets, int, pa_proplist *p, const char *key, const char *value);
|
||||
LL_PA_SYM(true, pa_sw_volume_from_linear, pa_volume_t, double v);
|
||||
|
||||
LL_PA_SYM(true, pa_mainloop_free, void, pa_mainloop* m);
|
||||
LL_PA_SYM(true, pa_mainloop_get_api, pa_mainloop_api*, pa_mainloop* m);
|
||||
LL_PA_SYM(true, pa_mainloop_new, pa_mainloop*, void);
|
||||
|
||||
// optional symbols to grab
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
// <FS:Zi> No longer needed
|
||||
/*
|
||||
// required symbols to grab
|
||||
LL_PA_SYM(true, pa_glib_mainloop_free, void, pa_glib_mainloop* g);
|
||||
LL_PA_SYM(true, pa_glib_mainloop_get_api, pa_mainloop_api*, pa_glib_mainloop* g);
|
||||
LL_PA_SYM(true, pa_glib_mainloop_new, pa_glib_mainloop *, GMainContext *c);
|
||||
|
||||
// optional symbols to grab
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -20,10 +20,10 @@ LL_GST_SYM(true, gst_caps_from_string, GstCaps *, const gchar *string)
|
|||
LL_GST_SYM(true, gst_caps_get_structure, GstStructure *, const GstCaps *caps, guint index)
|
||||
LL_GST_SYM(true, gst_element_register, gboolean, GstPlugin *plugin, const gchar *name, guint rank, GType type)
|
||||
LL_GST_SYM(true, gst_structure_get_int, gboolean, const GstStructure *structure, const gchar *fieldname, gint *value)
|
||||
LL_GST_SYM(true, gst_structure_get_value, G_CONST_RETURN GValue *, const GstStructure *structure, const gchar *fieldname)
|
||||
LL_GST_SYM(true, gst_structure_get_value, const GValue *, const GstStructure *structure, const gchar *fieldname)
|
||||
LL_GST_SYM(true, gst_value_get_fraction_numerator, gint, const GValue *value)
|
||||
LL_GST_SYM(true, gst_value_get_fraction_denominator, gint, const GValue *value)
|
||||
LL_GST_SYM(true, gst_structure_get_name, G_CONST_RETURN gchar *, const GstStructure *structure)
|
||||
LL_GST_SYM(true, gst_structure_get_name, const gchar *, const GstStructure *structure)
|
||||
LL_GST_SYM(true, gst_element_seek, bool, GstElement *, gdouble, GstFormat, GstSeekFlags, GstSeekType, gint64, GstSeekType, gint64)
|
||||
|
||||
LL_GST_SYM(false, gst_registry_fork_set_enabled, void, gboolean enabled)
|
||||
|
|
|
|||
|
|
@ -2184,7 +2184,7 @@ if (WINDOWS)
|
|||
${CMAKE_CURRENT_SOURCE_DIR}/featuretable.txt
|
||||
${viewer_APPSETTINGS_FILES}
|
||||
${ARCH_PREBUILT_DIRS_RELEASE}/growl.dll
|
||||
${SHARED_LIB_STAGING_DIR}/Release/glod.dll # <FS:Beq> Restore GLOD build dependencies
|
||||
${SHARED_LIB_STAGING_DIR}/glod.dll # <FS:Beq> Restore GLOD build dependencies
|
||||
SLPlugin
|
||||
media_plugin_cef
|
||||
media_plugin_libvlc
|
||||
|
|
@ -2194,7 +2194,7 @@ if (WINDOWS)
|
|||
# <FS:Ansariel> Only copy OpenJPEG dll if needed
|
||||
if (NOT USE_KDU)
|
||||
list(APPEND COPY_INPUT_DEPENDENCIES
|
||||
${SHARED_LIB_STAGING_DIR}/Release/openjp2.dll
|
||||
${SHARED_LIB_STAGING_DIR}/openjp2.dll
|
||||
)
|
||||
endif (NOT USE_KDU)
|
||||
# </FS:Ansariel>
|
||||
|
|
@ -2396,27 +2396,24 @@ target_link_libraries(${VIEWER_BINARY_NAME}
|
|||
ll::bugsplat
|
||||
ll::tracy
|
||||
fs::glod # <FS:Beq/> restore GLOD dependencies
|
||||
# fs::growl # <FS:Ansariel> Growl support <FS:Zi> added further down for win/mac only
|
||||
fs::discord # <FS:Ansariel> Discord support
|
||||
)
|
||||
|
||||
if( TARGET ll::intel_memops )
|
||||
target_link_libraries(${VIEWER_BINARY_NAME} ll::intel_memops )
|
||||
endif()
|
||||
|
||||
target_link_libraries(${VIEWER_BINARY_NAME} ${DISCORD_LIBRARY} )
|
||||
|
||||
if (USE_BUGSPLAT)
|
||||
target_link_libraries(${VIEWER_BINARY_NAME}
|
||||
${BUGSPLAT_LIBRARIES}
|
||||
)
|
||||
endif (USE_BUGSPLAT)
|
||||
|
||||
if (WINDOWS)
|
||||
target_link_libraries(${VIEWER_BINARY_NAME}
|
||||
fs::growl # <FS:Ansariel> Growl support
|
||||
${GROWL_LIBRARY}
|
||||
)
|
||||
endif (WINDOWS)
|
||||
# <FS:Ansariel> Growl support
|
||||
if (WINDOWS OR DARWIN)
|
||||
target_link_libraries(${VIEWER_BINARY_NAME} fs::growl)
|
||||
endif (WINDOWS OR DARWIN)
|
||||
# </FS:Ansariel>
|
||||
|
||||
if( TARGET ll::nvapi )
|
||||
target_link_libraries(${VIEWER_BINARY_NAME} ll::nvapi )
|
||||
|
|
|
|||
|
|
@ -26264,5 +26264,16 @@ Change of this parameter will affect the layout of buttons in notification toast
|
|||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>FSAnimationPreviewExpanded</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Expand or collapse the advanced animation information in the animation preview floater by default</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
</map>
|
||||
</llsd>
|
||||
|
|
|
|||
|
|
@ -110,7 +110,6 @@ private:
|
|||
LLSD mResultsContent;
|
||||
LLUUID mQueryID;
|
||||
|
||||
FSFloaterSearch* mParent;
|
||||
LLSearchComboBox* mSearchComboBox;
|
||||
FSScrollListCtrl* mSearchResults;
|
||||
};
|
||||
|
|
@ -145,7 +144,6 @@ private:
|
|||
LLSD mResultsContent;
|
||||
LLUUID mQueryID;
|
||||
|
||||
FSFloaterSearch* mParent;
|
||||
LLSearchComboBox* mSearchComboBox;
|
||||
LLScrollListCtrl* mSearchResults;
|
||||
};
|
||||
|
|
@ -180,7 +178,6 @@ private:
|
|||
LLSD mResultsContent;
|
||||
LLUUID mQueryID;
|
||||
|
||||
FSFloaterSearch* mParent;
|
||||
LLSearchComboBox* mSearchComboBox;
|
||||
LLScrollListCtrl* mSearchResults;
|
||||
LLComboBox* mPlacesCategory;
|
||||
|
|
@ -214,7 +211,6 @@ private:
|
|||
LLSD mResultsContent;
|
||||
LLUUID mQueryID;
|
||||
|
||||
FSFloaterSearch* mParent;
|
||||
LLLineEditor* mPriceEditor;
|
||||
LLLineEditor* mAreaEditor;
|
||||
LLScrollListCtrl* mSearchResults;
|
||||
|
|
@ -250,7 +246,6 @@ private:
|
|||
LLSD mResultsContent;
|
||||
LLUUID mQueryID;
|
||||
|
||||
FSFloaterSearch* mParent;
|
||||
LLSearchComboBox* mSearchComboBox;
|
||||
LLScrollListCtrl* mSearchResults;
|
||||
LLComboBox* mClassifiedsCategory;
|
||||
|
|
@ -292,7 +287,6 @@ private:
|
|||
LLSD mResultsContent;
|
||||
LLUUID mQueryID;
|
||||
|
||||
FSFloaterSearch* mParent;
|
||||
LLSearchComboBox* mSearchComboBox;
|
||||
LLScrollListCtrl* mSearchResults;
|
||||
LLRadioGroup* mEventsMode;
|
||||
|
|
|
|||
|
|
@ -36,9 +36,7 @@
|
|||
#include "llviewerprecompiledheaders.h"
|
||||
#include "growlnotifierwin.h"
|
||||
|
||||
#ifdef HAS_GROWL
|
||||
#include "growl.h"
|
||||
#endif
|
||||
|
||||
#include "llviewercontrol.h"
|
||||
|
||||
|
|
@ -55,9 +53,7 @@ void __cdecl GrowlLogSink( char const *aMessage, int aLevel )
|
|||
GrowlNotifierWin::GrowlNotifierWin() :
|
||||
mApplicationName("")
|
||||
{
|
||||
#ifdef HAS_GROWL
|
||||
mGrowlImpl = NULL;
|
||||
#endif
|
||||
LL_INFOS("GrowlNotifierWin") << "Windows growl notifier initialized." << LL_ENDL;
|
||||
|
||||
#ifdef GROWL_HAS_LOG
|
||||
|
|
@ -69,20 +65,17 @@ GrowlNotifierWin::GrowlNotifierWin() :
|
|||
GrowlNotifierWin::~GrowlNotifierWin()
|
||||
{
|
||||
LL_INFOS("GrowlNotifierWin") << "Windows growl notifier destroyed." << LL_ENDL;
|
||||
#ifdef HAS_GROWL
|
||||
if (mGrowlImpl)
|
||||
{
|
||||
delete mGrowlImpl;
|
||||
mGrowlImpl = NULL;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void GrowlNotifierWin::registerApplication(const std::string& application, const std::set<std::string>& notificationTypes)
|
||||
{
|
||||
mApplicationName = application;
|
||||
|
||||
#ifdef HAS_GROWL
|
||||
char **arr = (char**)malloc(sizeof(*arr) * notificationTypes.size());
|
||||
S32 i = 0;
|
||||
for (std::set<std::string>::const_iterator it = notificationTypes.begin(); it != notificationTypes.end(); ++it, ++i)
|
||||
|
|
@ -99,25 +92,18 @@ void GrowlNotifierWin::registerApplication(const std::string& application, const
|
|||
free(arr[i]);
|
||||
}
|
||||
free(arr);
|
||||
#endif
|
||||
}
|
||||
|
||||
void GrowlNotifierWin::showNotification(const std::string& notification_title, const std::string& notification_message,
|
||||
const std::string& notification_type)
|
||||
{
|
||||
#ifdef HAS_GROWL
|
||||
if (mGrowlImpl)
|
||||
{
|
||||
mGrowlImpl->Notify(notification_type.c_str(), notification_title.c_str(), notification_message.c_str());
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
bool GrowlNotifierWin::isUsable()
|
||||
{
|
||||
#ifdef HAS_GROWL
|
||||
return (mGrowlImpl && mGrowlImpl->isConnected());
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,10 +36,7 @@
|
|||
#define GROWLNOTIFIERWIN_H
|
||||
|
||||
#include "growlnotifier.h"
|
||||
|
||||
#ifdef HAS_GROWL
|
||||
#include <growl++.hpp>
|
||||
#endif
|
||||
|
||||
class GrowlNotifierWin : public GrowlNotifier
|
||||
{
|
||||
|
|
@ -53,9 +50,7 @@ public:
|
|||
|
||||
private:
|
||||
std::string mApplicationName;
|
||||
#ifdef HAS_GROWL
|
||||
Growl* mGrowlImpl;
|
||||
#endif
|
||||
};
|
||||
|
||||
#endif // GROWLNOTIFIERWIN_H
|
||||
|
|
|
|||
|
|
@ -263,9 +263,7 @@ using namespace LL;
|
|||
#include "llcoproceduremanager.h"
|
||||
#include "llviewereventrecorder.h"
|
||||
|
||||
#if HAS_GROWL
|
||||
#include "growlmanager.h"
|
||||
#endif
|
||||
#include "fsavatarrenderpersistence.h"
|
||||
|
||||
// *FIX: These extern globals should be cleaned up.
|
||||
|
|
@ -1984,9 +1982,7 @@ bool LLAppViewer::cleanup()
|
|||
// workaround for DEV-35406 crash on shutdown
|
||||
LLEventPumps::instance().reset();
|
||||
|
||||
#if HAS_GROWL
|
||||
GrowlManager::destroyManager();
|
||||
#endif
|
||||
GrowlManager::destroyManager(); // <FS> Growl support
|
||||
|
||||
//dump scene loading monitor results
|
||||
if (LLSceneMonitor::instanceExists())
|
||||
|
|
|
|||
|
|
@ -81,7 +81,8 @@ static S32 bump_channel = -1;
|
|||
|
||||
// Enabled after changing LLViewerTexture::mNeedsCreateTexture to an
|
||||
// LLAtomicBool; this should work just fine, now. HB
|
||||
#define LL_BUMPLIST_MULTITHREADED 1
|
||||
// #define LL_BUMPLIST_MULTITHREADED 1 // <FS:Beq/> Enabling this causes issues on some machines
|
||||
#define LL_BUMPLIST_MULTITHREADED 0
|
||||
|
||||
|
||||
// static
|
||||
|
|
|
|||
|
|
@ -67,12 +67,14 @@
|
|||
|
||||
#include "llnotificationsutil.h" // <FS:Zi> detect and strip empty alpha layers from images on upload
|
||||
|
||||
const S32 PREVIEW_BORDER_WIDTH = 2;
|
||||
const S32 PREVIEW_RESIZE_HANDLE_SIZE = S32(RESIZE_HANDLE_WIDTH * OO_SQRT2) + PREVIEW_BORDER_WIDTH;
|
||||
const S32 PREVIEW_HPAD = PREVIEW_RESIZE_HANDLE_SIZE;
|
||||
const S32 PREVIEW_VPAD = -24 + 35; // yuk, hard coded
|
||||
const S32 PREF_BUTTON_HEIGHT = 16 + 7 + 16 + 35;
|
||||
const S32 PREVIEW_TEXTURE_HEIGHT = 320;
|
||||
// <FS:Zi> Make preview area position to be not hard-coded
|
||||
// const S32 PREVIEW_BORDER_WIDTH = 2;
|
||||
// const S32 PREVIEW_RESIZE_HANDLE_SIZE = S32(RESIZE_HANDLE_WIDTH * OO_SQRT2) + PREVIEW_BORDER_WIDTH;
|
||||
// const S32 PREVIEW_HPAD = PREVIEW_RESIZE_HANDLE_SIZE;
|
||||
// const S32 PREVIEW_VPAD = -24 + 35; // yuk, hard coded
|
||||
// const S32 PREF_BUTTON_HEIGHT = 16 + 7 + 16 + 35;
|
||||
// const S32 PREVIEW_TEXTURE_HEIGHT = 320;
|
||||
// </FS:Zi>
|
||||
|
||||
// <FS:Zi> detect and strip empty alpha layers from images on upload
|
||||
const U8 ALPHA_EMPTY_THRESHOLD = 253;
|
||||
|
|
@ -110,10 +112,13 @@ BOOL LLFloaterImagePreview::postBuild()
|
|||
}
|
||||
childSetCommitCallback("clothing_type_combo", onPreviewTypeCommit, this);
|
||||
|
||||
mPreviewRect.set(PREVIEW_HPAD,
|
||||
PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD,
|
||||
getRect().getWidth() - PREVIEW_HPAD,
|
||||
PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD);
|
||||
// <FS:Zi> Make preview area position to be not hard-coded
|
||||
// mPreviewRect.set(PREVIEW_HPAD,
|
||||
// PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD,
|
||||
// getRect().getWidth() - PREVIEW_HPAD,
|
||||
// PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD);
|
||||
mPreviewRect = getChildView("preview_area")->getRect();
|
||||
// </FS:Zi>
|
||||
mPreviewImageRect.set(0.f, 1.f, 1.f, 0.f);
|
||||
|
||||
getChildView("bad_image_text")->setVisible(FALSE);
|
||||
|
|
@ -178,9 +183,14 @@ BOOL LLFloaterImagePreview::postBuild()
|
|||
// getChild<LLUICtrl>("ok_btn")->setCommitCallback(boost::bind(&LLFloaterNameDesc::onBtnOK, this));
|
||||
getChild<LLUICtrl>("ok_btn")->setCommitCallback(boost::bind(&LLFloaterImagePreview::onBtnUpload, this));
|
||||
|
||||
getChild<LLUICtrl>("uploaded_size_text")->setTextArg("[X_RES]", llformat("%d", mRawImagep->getWidth()));
|
||||
getChild<LLUICtrl>("uploaded_size_text")->setTextArg("[Y_RES]", llformat("%d", mRawImagep->getHeight()));
|
||||
|
||||
if (mRawImagep->getComponents() != 4)
|
||||
{
|
||||
return TRUE;
|
||||
getChild<LLUICtrl>("image_alpha_warning")->setVisible(false);
|
||||
getChild<LLUICtrl>("uploaded_size_text")->setTextArg("[ALPHA]", getString("no_alpha"));
|
||||
return true;
|
||||
}
|
||||
|
||||
U32 imageBytes = mRawImagep->getWidth() * mRawImagep->getHeight() * 4;
|
||||
|
|
@ -209,6 +219,8 @@ BOOL LLFloaterImagePreview::postBuild()
|
|||
getChild<LLUICtrl>("image_alpha_warning")->setVisible(false);
|
||||
mEmptyAlphaCheck->setValue(false);
|
||||
}
|
||||
|
||||
getChild<LLUICtrl>("uploaded_size_text")->setTextArg("[ALPHA]", getString(mEmptyAlphaCheck->getValue() ? "no_alpha" : "with_alpha"));
|
||||
// </FS:Zi>
|
||||
return TRUE;
|
||||
}
|
||||
|
|
@ -216,7 +228,11 @@ BOOL LLFloaterImagePreview::postBuild()
|
|||
// <FS:Zi> detect and strip empty alpha layers from images on upload
|
||||
void LLFloaterImagePreview::emptyAlphaCheckboxCallback()
|
||||
{
|
||||
if (!mEmptyAlphaCheck->getValue())
|
||||
if (mEmptyAlphaCheck->getValue())
|
||||
{
|
||||
getChild<LLUICtrl>("uploaded_size_text")->setTextArg("[ALPHA]", getString("no_alpha"));
|
||||
}
|
||||
else
|
||||
{
|
||||
LLNotificationsUtil::add("ImageEmptyAlphaLayer", LLSD(), LLSD(), boost::bind(&LLFloaterImagePreview::imageEmptyAlphaCallback, this, _1, _2));
|
||||
}
|
||||
|
|
@ -232,6 +248,7 @@ bool LLFloaterImagePreview::imageEmptyAlphaCallback(const LLSD& notification, co
|
|||
mEmptyAlphaCheck->setValue(true);
|
||||
}
|
||||
|
||||
getChild<LLUICtrl>("uploaded_size_text")->setTextArg("[ALPHA]", getString(option == 0 ? "no_alpha" : "with_alpha"));
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -407,24 +424,27 @@ void LLFloaterImagePreview::draw()
|
|||
// gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD);
|
||||
//}
|
||||
//gGL.end();
|
||||
// </FS:Ansariel>
|
||||
|
||||
// <FS:Zi> Make preview area position to be not hard-coded
|
||||
gGL.begin( LLRender::TRIANGLES );
|
||||
{
|
||||
gGL.texCoord2f(mPreviewImageRect.mLeft, mPreviewImageRect.mTop);
|
||||
gGL.vertex2i(PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD);
|
||||
gGL.vertex2i(mPreviewRect.mLeft, mPreviewRect.mTop);
|
||||
gGL.texCoord2f(mPreviewImageRect.mLeft, mPreviewImageRect.mBottom);
|
||||
gGL.vertex2i(PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD);
|
||||
gGL.vertex2i(mPreviewRect.mLeft, mPreviewRect.mBottom);
|
||||
gGL.texCoord2f(mPreviewImageRect.mRight, mPreviewImageRect.mBottom);
|
||||
gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD);
|
||||
gGL.vertex2i(mPreviewRect.mRight, mPreviewRect.mBottom);
|
||||
|
||||
gGL.texCoord2f(mPreviewImageRect.mLeft, mPreviewImageRect.mTop);
|
||||
gGL.vertex2i(PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD);
|
||||
gGL.vertex2i(mPreviewRect.mLeft, mPreviewRect.mTop);
|
||||
gGL.texCoord2f(mPreviewImageRect.mRight, mPreviewImageRect.mBottom);
|
||||
gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD);
|
||||
gGL.vertex2i(mPreviewRect.mRight, mPreviewRect.mBottom);
|
||||
gGL.texCoord2f(mPreviewImageRect.mRight, mPreviewImageRect.mTop);
|
||||
gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD);
|
||||
gGL.vertex2i(mPreviewRect.mRight, mPreviewRect.mTop);
|
||||
}
|
||||
gGL.end();
|
||||
// </FS:Ansariel>
|
||||
// </FS:Zi>
|
||||
|
||||
gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE);
|
||||
|
||||
|
|
@ -458,24 +478,27 @@ void LLFloaterImagePreview::draw()
|
|||
// gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD);
|
||||
//}
|
||||
//gGL.end();
|
||||
// </FS:Ansariel>
|
||||
|
||||
// <FS:Zi> Make preview area position to be not hard-coded
|
||||
gGL.begin( LLRender::TRIANGLES );
|
||||
{
|
||||
gGL.texCoord2f(0.f, 1.f);
|
||||
gGL.vertex2i(PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD);
|
||||
gGL.vertex2i(mPreviewRect.mLeft, mPreviewRect.mTop);
|
||||
gGL.texCoord2f(0.f, 0.f);
|
||||
gGL.vertex2i(PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD);
|
||||
gGL.vertex2i(mPreviewRect.mLeft, mPreviewRect.mBottom);
|
||||
gGL.texCoord2f(1.f, 0.f);
|
||||
gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD);
|
||||
gGL.vertex2i(mPreviewRect.mRight, mPreviewRect.mBottom);
|
||||
|
||||
gGL.texCoord2f(1.f, 0.f);
|
||||
gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD);
|
||||
gGL.texCoord2f(0.f, 1.f);
|
||||
gGL.vertex2i(PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD);
|
||||
gGL.vertex2i(mPreviewRect.mLeft, mPreviewRect.mTop);
|
||||
gGL.texCoord2f(1.f, 0.f);
|
||||
gGL.vertex2i(mPreviewRect.mRight, mPreviewRect.mBottom);
|
||||
gGL.texCoord2f(1.f, 1.f);
|
||||
gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT + PREVIEW_VPAD);
|
||||
gGL.vertex2i(mPreviewRect.mRight, mPreviewRect.mTop);
|
||||
}
|
||||
gGL.end();
|
||||
// </FS:Ansariel>
|
||||
// </FS:Zi>
|
||||
|
||||
gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,6 +40,8 @@
|
|||
#include "lluictrlfactory.h"
|
||||
#include "lldatapacker.h"
|
||||
|
||||
#include "llviewercontrol.h" // <FS:Zi> Make advanced animation preview optional
|
||||
|
||||
extern LLAgent gAgent;
|
||||
//const S32 ADVANCED_VPAD = 3; // <FS:Ansariel> Improved animation preview
|
||||
|
||||
|
|
@ -47,6 +49,9 @@ LLPreviewAnim::LLPreviewAnim(const LLSD& key)
|
|||
: LLPreview( key )
|
||||
{
|
||||
mCommitCallbackRegistrar.add("PreviewAnim.Play", boost::bind(&LLPreviewAnim::play, this, _2));
|
||||
// <FS:Zi> Make advanced animation preview optional
|
||||
mCommitCallbackRegistrar.add("PreviewAnim.Expand", boost::bind(&LLPreviewAnim::expand, this, _2));
|
||||
// </FS:Zi>
|
||||
}
|
||||
|
||||
// virtual
|
||||
|
|
@ -64,6 +69,15 @@ BOOL LLPreviewAnim::postBuild()
|
|||
//reshape(rect.getWidth(), rect.getHeight() - pAdvancedStatsTextBox->getRect().getHeight() - ADVANCED_VPAD, FALSE);
|
||||
// </FS:Ansariel>
|
||||
|
||||
// <FS:Zi> Make advanced animation preview optional
|
||||
bool expanded = gSavedSettings.getBOOL("FSAnimationPreviewExpanded");
|
||||
|
||||
getChild<LLView>("advanced_info_panel")->setVisible(!expanded);
|
||||
getChild<LLButton>("btn_expand")->setToggleState(expanded);
|
||||
|
||||
expand(LLSD());
|
||||
// </FS:Zi>
|
||||
|
||||
return LLPreview::postBuild();
|
||||
}
|
||||
|
||||
|
|
@ -253,3 +267,37 @@ void LLPreviewAnim::onClose(bool app_quitting)
|
|||
// }
|
||||
//}
|
||||
// </FS:Ansariel>
|
||||
|
||||
// <FS:Zi> Make advanced animation preview optional
|
||||
void LLPreviewAnim::expand(const LLSD& param)
|
||||
{
|
||||
LLView* basic_info_panel = getChild<LLView>("basic_info_panel");
|
||||
LLView* advanced_info_panel = getChild<LLView>("advanced_info_panel");
|
||||
|
||||
// I don't get why we can't use getLocalRect().mTop or something similar to get the .top from the XML -Zi
|
||||
S32 height = getRect().getHeight() - basic_info_panel->getRect().mTop;
|
||||
S32 basic_info_height = basic_info_panel->getRect().getHeight();
|
||||
S32 advanced_info_height = advanced_info_panel->getRect().getHeight();
|
||||
|
||||
bool was_expanded = advanced_info_panel->getVisible();
|
||||
advanced_info_panel->setVisible(!was_expanded);
|
||||
|
||||
height += basic_info_height;
|
||||
if (!was_expanded)
|
||||
{
|
||||
height += advanced_info_height;
|
||||
}
|
||||
|
||||
LLRect rect = getRect();
|
||||
|
||||
rect.setLeftTopAndSize(rect.mLeft, rect.mTop, rect.getWidth(), height);
|
||||
reshape(rect.getWidth(), rect.getHeight(), false);
|
||||
|
||||
setRect(rect);
|
||||
|
||||
if(getHost())
|
||||
{
|
||||
getHost()->growToFit(rect.getWidth(), height);
|
||||
}
|
||||
}
|
||||
// </FS:Zi>
|
||||
|
|
|
|||
|
|
@ -50,6 +50,8 @@ public:
|
|||
|
||||
protected:
|
||||
|
||||
void expand(const LLSD& param); // <FS:Zi> Make advanced animation preview optional
|
||||
|
||||
LLUUID mItemID; // Not an item id, but a playing asset id
|
||||
bool mDidStart;
|
||||
// <FS:Ansariel> Improved animation preview
|
||||
|
|
|
|||
|
|
@ -226,9 +226,7 @@
|
|||
//#include "llfloaterimsession.h"
|
||||
#include "fsfloaterim.h"
|
||||
// </FS:Ansariel> [FS communication UI]
|
||||
#if HAS_GROWL
|
||||
#include "growlmanager.h"
|
||||
#endif
|
||||
|
||||
#include "fsassetblacklist.h"
|
||||
#include "fsavatarrenderpersistence.h"
|
||||
|
|
@ -665,10 +663,8 @@ bool idle_startup()
|
|||
//
|
||||
std::string lastGPU = gSavedSettings.getString("LastGPUString");
|
||||
std::string thisGPU = LLFeatureManager::getInstance()->getGPUString();
|
||||
|
||||
#if HAS_GROWL
|
||||
GrowlManager::initiateManager();
|
||||
#endif
|
||||
|
||||
GrowlManager::initiateManager(); // <FS> Growl support
|
||||
|
||||
// <FS:Ansariel> Store current font and skin for system info (FIRE-6806)
|
||||
gSavedSettings.setString("FSInternalFontSettingsFile", gSavedSettings.getString("FSFontSettingsFile"));
|
||||
|
|
|
|||
|
|
@ -3,9 +3,11 @@
|
|||
<floater.string name="Title">
|
||||
Animation: [NAME]
|
||||
</floater.string>
|
||||
<text name="desc txt">
|
||||
Beskrivelse:
|
||||
</text>
|
||||
<button label="Afspil i verden" label_selected="Stop" name="Anim play btn" tool_tip="Vis denne animation så andre kan se den"/>
|
||||
<button label="Afspil lokalt" label_selected="Stop" name="Anim audition btn" tool_tip="Vis denne animation så kun du kan se den"/>
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt">
|
||||
Beskrivelse:
|
||||
</text>
|
||||
<button label="Afspil i verden" label_selected="Stop" name="Anim play btn" tool_tip="Vis denne animation så andre kan se den"/>
|
||||
<button label="Afspil lokalt" label_selected="Stop" name="Anim audition btn" tool_tip="Vis denne animation så kun du kan se den"/>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<floater name="Image Preview" title="">
|
||||
<string name="with_alpha">
|
||||
mit Alpha
|
||||
</string>
|
||||
<string name="no_alpha">
|
||||
ohne Alpha
|
||||
</string>
|
||||
<text name="name_label">
|
||||
Name:
|
||||
</text>
|
||||
|
|
@ -29,8 +35,11 @@
|
|||
|
||||
Speichern Sie das Bild als 24 Bit Targa (.tga).
|
||||
</text>
|
||||
<text name="uploaded_size_text">
|
||||
Größe hochgeladen: [X_RES]x[Y_RES], [ALPHA]
|
||||
</text>
|
||||
<check_box label="Verlustfrei komprimieren" name="lossless_check" left_delta="-5"/>
|
||||
<check_box name="temp_check" label="Temporär (kostenlos)" tool_tip="Lädt das Bild temporär hoch, d.h. der Upload ist kostenlos. Im Gegenzug wird es nach einiger Zeit automatisch gelöscht." />
|
||||
<button label="Abbrechen" name="cancel_btn"/>
|
||||
<button label="Hochladen ([AMOUNT] L$)" name="ok_btn" width="146"/>
|
||||
<button label="Abbrechen" name="cancel_btn"/>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -3,20 +3,24 @@
|
|||
<floater.string name="Title">
|
||||
Animation: [NAME]
|
||||
</floater.string>
|
||||
<text name="desc txt" width="90">
|
||||
Beschreibung:
|
||||
</text>
|
||||
<line_editor name="desc"/>
|
||||
<button label="Inworld abspielen" label_selected="Stopp" name="Inworld" tool_tip="Diese Animation so wiedergeben, dass andere sie sehen können."/>
|
||||
<button label="Lokal wiedergeben" label_selected="Stopp" name="Locally" tool_tip="Diese Animation so wiedergeben, dass nur Sie sie sehen."/>
|
||||
<text name="AdvancedStatsLeft">
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt" width="90">
|
||||
Beschreibung:
|
||||
</text>
|
||||
<button label="Inworld abspielen" label_selected="Stopp" name="Inworld" tool_tip="Diese Animation so wiedergeben, dass andere sie sehen können."/>
|
||||
<button label="Lokal wiedergeben" label_selected="Stopp" name="Locally" tool_tip="Diese Animation so wiedergeben, dass nur Sie sie sehen."/>
|
||||
<button name="btn_expand" tool_tip="Aufklappen, um erweiterte Informationen über diese Animation zu erhalten."/>
|
||||
</panel>
|
||||
<panel name="advanced_info_panel">
|
||||
<text name="AdvancedStatsLeft">
|
||||
Priorität: [PRIORITY]
|
||||
Dauer: [DURATION]s
|
||||
Schleife: [IS_LOOP]
|
||||
</text>
|
||||
<text name="AdvancedStatsRight">
|
||||
</text>
|
||||
<text name="AdvancedStatsRight">
|
||||
Einblenden: [EASE_IN]s
|
||||
Ausblenden: [EASE_OUT]s
|
||||
Gelenke: [NUM_JOINTS]
|
||||
</text>
|
||||
</text>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -237,6 +237,7 @@
|
|||
<check_box label="Vom Inventar aus bearbeitete Skripte als Mono speichern" tool_tip="Speichert Skripte, die direkt vom Inventar aus bearbeitet werden, als Mono anstatt LSL." name="FSSaveInventoryScriptsAsMono_toggle"/>
|
||||
<check_box label="Texturen standardmäßig im PNG-Format anstelle von TGA speichern" tool_tip="Falls aktiviert, werden Texturen in der Vorschau standardmäßig im PNG-Format gespeichert" name="FSTextureDefaultSaveAsFormat"/>
|
||||
<check_box label="Vorschau von Animation beim Upload am eigenen Avatar" tool_tip="Falls aktiviert, werden Animationen in der Vorschau am eigenen Avatar abgespielt" name="FSUploadAnimationOnOwnAvatar"/>
|
||||
<check_box label="Immer erweiterte Informationen zu Animationen anzeigen" tool_tip="Erweiterte Informationen zu Animation im Eigentschaftsfenster anzeigen" name="FSAnimationPreviewExpanded"/>
|
||||
<check_box label="Erweiterte Skript-Informationen aktivieren" tool_tip="Falls aktiviert, werden die Skript-Informationen um weitergehende Details ergänzt." name="FSScriptInfoExtended"/>
|
||||
</panel>
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,17 @@
|
|||
name="Image Preview"
|
||||
help_topic="image_preview"
|
||||
width="300">
|
||||
|
||||
<string
|
||||
name="with_alpha"
|
||||
value="with alpha"
|
||||
/>
|
||||
|
||||
<string
|
||||
name="no_alpha"
|
||||
value="no alpha"
|
||||
/>
|
||||
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
|
|
@ -60,7 +71,7 @@
|
|||
height="18"
|
||||
label="Clothing Type"
|
||||
layout="topleft"
|
||||
left_delta="110"
|
||||
right="-10"
|
||||
name="clothing_type_combo"
|
||||
top_delta="-2"
|
||||
width="160">
|
||||
|
|
@ -106,23 +117,23 @@
|
|||
name="SculptedPrim" />
|
||||
</combo_box>
|
||||
|
||||
<panel
|
||||
<panel
|
||||
follows="left|right"
|
||||
height="32"
|
||||
height="24"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="image_alpha_warning"
|
||||
right="-10"
|
||||
top_pad="4"
|
||||
visible="false">
|
||||
visible="true">
|
||||
|
||||
<icon
|
||||
<icon
|
||||
height="24"
|
||||
image_name="Popup_Caution"
|
||||
left="0"
|
||||
top="0"
|
||||
width="24"
|
||||
/>
|
||||
/>
|
||||
|
||||
<check_box
|
||||
follows="top|left|right"
|
||||
|
|
@ -133,14 +144,28 @@
|
|||
name="strip_alpha_check"
|
||||
right="-1"
|
||||
top_delta="10"
|
||||
/>
|
||||
/>
|
||||
|
||||
</panel>
|
||||
|
||||
<panel
|
||||
background_opaque="true"
|
||||
background_visible="true"
|
||||
bg_opaque_color="0 0 0 0.333"
|
||||
follows="top|left"
|
||||
height="239"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="preview_area"
|
||||
right="-10"
|
||||
top_pad="4"
|
||||
/>
|
||||
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
bottom="250"
|
||||
halign="center"
|
||||
height="45"
|
||||
word_wrap="true"
|
||||
follows="top|left"
|
||||
|
|
@ -151,6 +176,22 @@
|
|||
|
||||
Try saving image as 24 bit Targa (.tga).
|
||||
</text>
|
||||
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
height="16"
|
||||
word_wrap="true"
|
||||
follows="top|left"
|
||||
halign="center"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="uploaded_size_text"
|
||||
right="-10"
|
||||
top_pad="142">
|
||||
Uploaded Size: [X_RES]x[Y_RES], [ALPHA]
|
||||
</text>
|
||||
|
||||
<check_box
|
||||
enabled="false"
|
||||
initial_value="false"
|
||||
|
|
@ -158,50 +199,53 @@ Try saving image as 24 bit Targa (.tga).
|
|||
height="16"
|
||||
label="Use lossless compression"
|
||||
layout="topleft"
|
||||
left_delta="2"
|
||||
left_delta="-3"
|
||||
name="lossless_check"
|
||||
top_pad="162"
|
||||
top_pad="7"
|
||||
width="280" />
|
||||
<check_box
|
||||
control_name="TemporaryUpload"
|
||||
visible="false"
|
||||
visible="true"
|
||||
follows="bottom|left"
|
||||
height="16"
|
||||
initial_value="false"
|
||||
left_delta="155"
|
||||
left_delta="168"
|
||||
name="temp_check"
|
||||
width="280"
|
||||
label="Temporary (Free)"
|
||||
tool_tip="Sets the asset to be temporary, meaning its free, but in return, only good for a short time before it ceases to exist." />
|
||||
<button
|
||||
follows="bottom|right"
|
||||
height="20"
|
||||
label="Cancel"
|
||||
layout="topleft"
|
||||
left="165"
|
||||
name="cancel_btn"
|
||||
top="430"
|
||||
width="125" />
|
||||
<button
|
||||
follows="bottom|left"
|
||||
height="20"
|
||||
label="Upload (L$[AMOUNT])"
|
||||
layout="topleft"
|
||||
left_delta="-150"
|
||||
left="10"
|
||||
name="ok_btn"
|
||||
top_pad="4"
|
||||
width="130" />
|
||||
<button
|
||||
follows="bottom|right"
|
||||
height="20"
|
||||
label="Cancel"
|
||||
layout="topleft"
|
||||
name="cancel_btn"
|
||||
right="-10"
|
||||
top_delta="0"
|
||||
width="125" />
|
||||
width="130" />
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
halign="center"
|
||||
height="35"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
mouse_opaque="false"
|
||||
right="-10"
|
||||
skip_link_underline="true"
|
||||
name="info_text"
|
||||
word_wrap="true"
|
||||
top_pad="10"
|
||||
width="270"/>
|
||||
top_pad="5"
|
||||
value="= upload fee information text goes here ="
|
||||
/>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,18 @@
|
|||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||
|
||||
<!-- <FS:Zi> This floater's height changes at runtime when display of advanced info changes:
|
||||
|
||||
collapsed:
|
||||
floater height = basic_info_panel.top + basic_info_panel.height 25 + 60
|
||||
|
||||
expanded:
|
||||
floater height = basic_info_panel.top + basic_info_panel.height + advanced_info_panel.height 25 + 60 + 56
|
||||
|
||||
-->
|
||||
|
||||
<floater
|
||||
legacy_header_height="18"
|
||||
height="121"
|
||||
height="141"
|
||||
layout="topleft"
|
||||
name="preview_anim"
|
||||
help_topic="fs_animation_inventory_preview"
|
||||
|
|
@ -12,6 +23,17 @@
|
|||
name="Title">
|
||||
Animation: [NAME]
|
||||
</floater.string>
|
||||
|
||||
<!-- <FS:Zi> panel that holds the basic animation info and gives size hints to the code -->
|
||||
<panel
|
||||
follows="left|top|right"
|
||||
height="60"
|
||||
layout="topleft"
|
||||
left="0"
|
||||
name="basic_info_panel"
|
||||
top="25"
|
||||
width="320">
|
||||
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
|
|
@ -21,7 +43,6 @@
|
|||
layout="topleft"
|
||||
left="10"
|
||||
name="desc txt"
|
||||
top="25"
|
||||
width="80">
|
||||
Description:
|
||||
</text>
|
||||
|
|
@ -38,6 +59,7 @@
|
|||
top_delta="-2"
|
||||
right="-10" />
|
||||
<button
|
||||
follows="left|top"
|
||||
height="20"
|
||||
label="Play Inworld"
|
||||
label_selected="Stop"
|
||||
|
|
@ -45,37 +67,63 @@
|
|||
left="8"
|
||||
name="Inworld"
|
||||
tool_tip="Play this animation so that others can see it"
|
||||
top="47"
|
||||
width="150">
|
||||
top_pad="8"
|
||||
width="132">
|
||||
<button.commit_callback
|
||||
function="PreviewAnim.Play"
|
||||
parameter="Inworld" />
|
||||
</button>
|
||||
<button
|
||||
follows="left|top"
|
||||
height="20"
|
||||
label="Play Locally"
|
||||
label_selected="Stop"
|
||||
layout="topleft"
|
||||
left_pad="5"
|
||||
left_pad="6"
|
||||
name="Locally"
|
||||
tool_tip="Play this animation so that only you can see it"
|
||||
top_delta="0"
|
||||
width="150">
|
||||
width="132">
|
||||
<button.commit_callback
|
||||
function="PreviewAnim.Play"
|
||||
parameter="Locally" />
|
||||
</button>
|
||||
|
||||
<button
|
||||
follows="left|top"
|
||||
height="20"
|
||||
image_overlay="DisclosureArrow_Opened_Off"
|
||||
layout="topleft"
|
||||
left_pad="5"
|
||||
name="btn_expand"
|
||||
toggle="true"
|
||||
tool_tip="Expand to see advanced information about this animation"
|
||||
top_delta="0"
|
||||
width="32">
|
||||
<button.commit_callback
|
||||
function="PreviewAnim.Expand" />
|
||||
</button>
|
||||
</panel>
|
||||
|
||||
<!-- <FS:Zi> panel that holds the (optional) advanced animation info and gives size hints to the code -->
|
||||
<panel
|
||||
follows="left|top|right"
|
||||
height="56"
|
||||
layout="topleft"
|
||||
name="advanced_info_panel"
|
||||
top_pad="0"
|
||||
visible="true">
|
||||
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
font="SansSerif"
|
||||
height="91"
|
||||
height="52"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="AdvancedStatsLeft"
|
||||
top_pad="3"
|
||||
top_pad="0"
|
||||
width="150">
|
||||
Priority: [PRIORITY]
|
||||
Duration: [DURATION]s
|
||||
|
|
@ -86,9 +134,9 @@ Loop: [IS_LOOP]
|
|||
length="1"
|
||||
follows="left|top"
|
||||
font="SansSerif"
|
||||
height="91"
|
||||
height="52"
|
||||
layout="topleft"
|
||||
left_pad="5"
|
||||
left_pad="10"
|
||||
name="AdvancedStatsRight"
|
||||
top_delta="0"
|
||||
width="150">
|
||||
|
|
@ -96,4 +144,5 @@ Ease In: [EASE_IN]s
|
|||
Ease Out: [EASE_OUT]s
|
||||
Joints: [NUM_JOINTS]
|
||||
</text>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -1629,6 +1629,14 @@
|
|||
tool_tip="If enabled, you can preview animations during the upload process on your own avatar"
|
||||
name="FSUploadAnimationOnOwnAvatar"
|
||||
control_name="FSUploadAnimationOnOwnAvatar"/>
|
||||
<check_box
|
||||
top_pad="8"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
label="Always expand animation preview advanced information"
|
||||
tool_tip="Expand the advanced animation information in the animation preview floater by default"
|
||||
name="FSAnimationPreviewExpanded"
|
||||
control_name="FSAnimationPreviewExpanded"/>
|
||||
<check_box
|
||||
top_pad="8"
|
||||
follows="left|top"
|
||||
|
|
|
|||
|
|
@ -122,7 +122,7 @@
|
|||
layout="topleft"
|
||||
left_delta="0"
|
||||
name="limit_payment"
|
||||
tool_tip="Residents must have payment information on file to access this estate. See the [SUPPORT_SITE] for more information."
|
||||
tool_tip="Residents must have payment information on file to access this estate. See the [SUPPORT_SITE] for more information."
|
||||
top_pad="2"
|
||||
width="278" />
|
||||
<check_box
|
||||
|
|
@ -132,7 +132,7 @@
|
|||
layout="topleft"
|
||||
left_delta="0"
|
||||
name="limit_bots"
|
||||
tool_tip="Residents must not be a scripted agents (bots) to access this estate. See the [SUPPORT_SITE] for more information."
|
||||
tool_tip="Residents must not be a scripted agents (bots) to access this estate. See the [SUPPORT_SITE] for more information."
|
||||
top_pad="2"
|
||||
width="278" />
|
||||
<check_box
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ https://www.firestormviewer.org/choose-your-platform/
|
|||
|
||||
For more information, see our FAQ below:
|
||||
http://secondlife.com/viewer-access-faq</string>
|
||||
<string name="LoginFailed">"Login process did not complete due to system issues. Try again in a few minutes.
|
||||
<string name="LoginFailed">Login process did not complete due to system issues. Try again in a few minutes.
|
||||
If you feel this is an error, please contact the grid support.</string>
|
||||
<string name="LoginIntermediateOptionalUpdateAvailable">Optional viewer update available: [VERSION]</string>
|
||||
<string name="LoginFailedRequiredUpdate">Required viewer update: [VERSION]</string>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,11 @@
|
|||
<floater.string name="Title">
|
||||
Animación: [NAME]
|
||||
</floater.string>
|
||||
<text name="desc txt">
|
||||
Descripción:
|
||||
</text>
|
||||
<button label="Ver en el mundo" label_selected="Detener" name="Inworld" tool_tip="Ejecutar esta animación de modo que puedan verla los demás" width="130"/>
|
||||
<button label="Ejecutarla para usted" label_selected="Detener" left="135" name="Locally" tool_tip="Ejecutar esta animación de modo que sólo la vea yo" width="130"/>
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt">
|
||||
Descripción:
|
||||
</text>
|
||||
<button label="Ver en el mundo" label_selected="Detener" name="Inworld" tool_tip="Ejecutar esta animación de modo que puedan verla los demás" width="130"/>
|
||||
<button label="Ejecutarla para usted" label_selected="Detener" left="135" name="Locally" tool_tip="Ejecutar esta animación de modo que sólo la vea yo" width="130"/>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
<text name="lockout_text">Vous ne pouvez changer votre nom avant le [TIME].</text>
|
||||
<text name="set_name_label">Nouveau nom :</text>
|
||||
<text name="name_confirm_label">Réécrivez le nom :</text>
|
||||
<button label="Réinitialiser" name="reset_btn" tool_tip="Utiliser le nom d'utilisateur comme nom d'affichage" />
|
||||
<button label="Enregistrer" name="save_btn" tool_tip="Enregistre votre nouveau nom"/>
|
||||
<button label="Supprimer" name="reset_btn" tool_tip="Supprime votre nom d'affichage"/>
|
||||
<button label="Annuler" name="cancel_btn"/>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
<floater name="Image Preview">
|
||||
<text name="name_label">Nom :</text>
|
||||
<text name="description_label">Description :</text>
|
||||
<text name="preview_label" width="115">Prévisualiser l'image en tant que :</text>
|
||||
<text name="preview_label" width="115">Prévisualiser :</text>
|
||||
<combo_box label="Type de vêtement" left_delta="115" name="clothing_type_combo">
|
||||
<item label="Image" name="Image"/>
|
||||
<item label="Cheveux" name="Hair"/>
|
||||
|
|
@ -23,8 +23,11 @@
|
|||
|
||||
Essayez d'enregistrer l'image au format Targa 24 bits (.tga).
|
||||
</text>
|
||||
<text name="uploaded_size_text">
|
||||
Taille transférée : [X_RES]x[Y_RES], [ALPHA]
|
||||
</text>
|
||||
<check_box label="Utiliser une compression sans pertes" name="lossless_check"/>
|
||||
<check_box name="temp_check" label="Temporaire (Gratuit)" tool_tip="Défini l'envoi comme étant temporaire, celui-ci étant gratuit, mais disponible uniquement pour un temps limité avant qu'il ne cesse d'exister définitivement."/>
|
||||
<button label="Transferer (L$[AMOUNT])" name="ok_btn"/>
|
||||
<button label="Annuler" name="cancel_btn"/>
|
||||
<button label="Uploader ([AMOUNT] L$)" width="130" name="ok_btn"/>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -1,8 +1,23 @@
|
|||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<floater name="preview_anim" width="350">
|
||||
<floater name="preview_anim" width="380">
|
||||
<floater.string name="Title">Animation : [NAME]</floater.string>
|
||||
<text name="desc txt">Description :</text>
|
||||
<line_editor name="desc" width="230" />
|
||||
<button label="Jouer devant tout le monde" width="160" label_selected="Arrêter" name="Inworld" tool_tip="Jouer cette animation de façon à ce que les autres la voient"/>
|
||||
<button label="Jouer localement" width="160" label_selected="Arrêter" name="Locally" tool_tip="Jouer cette animation de façon à ce que vous soyez la seule personne à la voir"/>
|
||||
<panel name="basic_info_panel" width="380">
|
||||
<text name="desc txt">Description :</text>
|
||||
<line_editor name="desc" width="230" />
|
||||
<button label="Jouer devant tout le monde" width="160" label_selected="Arrêter" name="Inworld" tool_tip="Jouer cette animation de façon à ce que les autres la voient"/>
|
||||
<button label="Jouer localement" width="160" label_selected="Arrêter" name="Locally" tool_tip="Jouer cette animation de façon à ce que vous soyez la seule personne à la voir"/>
|
||||
<button name="btn_expand" tool_tip="Développez pour voir des informations détaillées sur cette animation" />
|
||||
</panel>
|
||||
<panel name="advanced_info_panel">
|
||||
<text name="AdvancedStatsLeft">
|
||||
Priorité : [PRIORITY]
|
||||
Durée : [DURATION]s
|
||||
En boucle : [IS_LOOP]
|
||||
</text>
|
||||
<text name="AdvancedStatsRight">
|
||||
Entrée : [EASE_IN]s
|
||||
Sortie : [EASE_OUT]s
|
||||
Joints : [NUM_JOINTS]
|
||||
</text>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -8,6 +8,6 @@
|
|||
<menu_item_call label="Paramètres du chat" name="chat_preferences"/>
|
||||
<menu_item_call label="Paramètres de confidentialité" name="privacy_preferences"/>
|
||||
<menu_item_check label="Historique de conversations" name="Conversation"/>
|
||||
<menu_item_check name="Translate_chat" label="Traduire le chat local"/>
|
||||
<menu_item_check name="Translate_chat" label="Traduire le chat"/>
|
||||
<menu_item_check name="Translation_settings" label="Paramètres de traduction..."/>
|
||||
</toggleable_menu>
|
||||
|
|
|
|||
|
|
@ -152,17 +152,18 @@
|
|||
<check_box label="Sauvegarder les textures sur le disque dur au format PNG au lieu de TGA" tool_tip="Utilisé dans l'aperçu de texture et dans le menu contextuel de l'inventaire." name="FSTextureDefaultSaveAsFormat"/>
|
||||
<check_box label="Utiliser Ctrl+clic pour attraper et déplacer des objets" tool_tip="Quand coché, vous pourrez attraper et déplacer des objets en utilisant la souris et la touche Ctrl." name="FSEnableGrab"/>
|
||||
<check_box label="Déplacer les textures directement en maintenant Shift-Clic en mode construction" tool_tip="Activer cette option vous permettra de faire glisser la texture sur la face de l'objet en mode de construction" name="FSExperimentalDragTexture"/>
|
||||
<check_box label="Prévisualiser les animations sur son avatar pendant l'upload" tool_tip="Si activé, vous pouvez prévisualiser les animations sur votre propre avatar pendant le processus d'upload" name="FSUploadAnimationOnOwnAvatar"/>
|
||||
<check_box label="Prévisualiser les animations sur son avatar pendant le téléchargement sur le serveur" tool_tip="Si activé, vous pouvez prévisualiser les animations sur votre propre avatar pendant le téléchargement sur le serveur" name="FSUploadAnimationOnOwnAvatar"/>
|
||||
<check_box label="Toujours développer les informations détaillées de la prévisualisation de l'animation" tool_tip="Développer par défaut les informations détaillées sur l'animation dans le flotteur de l'aperçu de l'animation" name="FSAnimationPreviewExpanded"/>
|
||||
<check_box label="Active les informations détaillées pour les script" tool_tip="Activée, ajoute aux informations de base sur les scripts des détails utiles aux créateurs" name="FSScriptInfoExtended"/>
|
||||
</panel>
|
||||
<panel label="Chargements" name="UploadsTab">
|
||||
<text name="title">Dossiers de destination pour les chargements :</text>
|
||||
<text name="title_sounds">Sons</text>
|
||||
<text name="title_models">Modèles</text>
|
||||
<text name="upload_help">Pour changer le dossier de destinatio, cliquez droit dessus dans l'inventaire et sélectionnez
|
||||
<text name="title">Dossiers de destination pour les chargements :</text>
|
||||
<text name="title_sounds">Sons</text>
|
||||
<text name="title_models">Modèles</text>
|
||||
<text name="upload_help">Pour changer le dossier de destination, cliquez droit dessus dans l'inventaire et sélectionnez
|
||||
"Par défaut pour"
|
||||
</text>
|
||||
<button name="reset_default_folders" label="Réinitialiser les dossiers par défaut"/>
|
||||
</text>
|
||||
<button name="reset_default_folders" label="Réinitialiser les dossiers par défaut"/>
|
||||
</panel>
|
||||
</tab_container>
|
||||
</panel>
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ domaine.
|
|||
</radio_group>
|
||||
<check_box label="Doit avoir plus de 18 ans" name="limit_age_verified" tool_tip="Pour accéder à ce domaine, les résidents doivent avoir au moins 18 ans. Consultez le [SUPPORT_SITE] pour plus d'informations."/>
|
||||
<check_box label="Les infos de paiement doivent être enregistrées" name="limit_payment" tool_tip="Pour pouvoir accéder à ce domaine, les résidents doivent avoir enregistré des informations de paiement. Consultez le [SUPPORT_SITE] pour plus d'informations."/>
|
||||
<check_box label="Ne doit pas être un agent scripté" name="limit_bots" tool_tip="Les résidents ne doivent pas être des agents scriptés (bots) pour accéder à ce domaine. Consultez le [SUPPORT_SITE] pour plus d'informations."/>
|
||||
<check_box label="Les propriétaires de terrain peuvent imposer plus de restrictions" name="parcel_access_override"/>
|
||||
<check_box label="Autoriser les chats vocaux" name="voice_chat_check"/>
|
||||
<check_box label="Autoriser la téléportation directe" name="allow_direct_teleport"/>
|
||||
|
|
|
|||
|
|
@ -225,8 +225,8 @@ Pour plus d'informations, consultez la page FAQ ci-dessous :
|
|||
http://secondlife.com/viewer-access-faq
|
||||
</string>
|
||||
<string name="LoginFailed">
|
||||
Échec de la connexion d'urgence de la grille.
|
||||
Si vous pensez qu'il s'agit d'une erreur, veuillez contacter le support du réseau.
|
||||
Le processus de connexion n'a pas abouti en raison d'un problème du système. Réessayez dans quelques minutes.
|
||||
Si vous pensez qu'il s'agit d'une erreur, veuillez contacter le service d'assistance du réseau.
|
||||
</string>
|
||||
<string name="LoginIntermediateOptionalUpdateAvailable">
|
||||
Mise à jour facultative du client disponible : [VERSION]
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Descrizione:
|
||||
</text>
|
||||
<text name="preview_label">
|
||||
Anteprima dell'immagine come:
|
||||
Anteprima come:
|
||||
</text>
|
||||
<combo_box label="Tipo di capo" left="120" name="clothing_type_combo">
|
||||
<item label="Immagine" name="Image"/>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,11 @@
|
|||
<floater.string name="Title">
|
||||
Animazione: [NAME]
|
||||
</floater.string>
|
||||
<text name="desc txt">
|
||||
Descrizione:
|
||||
</text>
|
||||
<button label="Riproduci in mondo" label_selected="Ferma" name="Inworld" tool_tip="Riproduci questa animazione così che gli altri possano vederla"/>
|
||||
<button label="Riproduci in locale" label_selected="Ferma" name="Locally" tool_tip="Riproduci questa animazione così che solo tu possa vederla"/>
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt">
|
||||
Descrizione:
|
||||
</text>
|
||||
<button label="Riproduci in mondo" label_selected="Ferma" name="Inworld" tool_tip="Riproduci questa animazione così che gli altri possano vederla"/>
|
||||
<button label="Riproduci in locale" label_selected="Ferma" name="Locally" tool_tip="Riproduci questa animazione così che solo tu possa vederla"/>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,11 @@
|
|||
<floater.string name="Title">
|
||||
アニメーション: [NAME]
|
||||
</floater.string>
|
||||
<text name="desc txt">
|
||||
説明:
|
||||
</text>
|
||||
<button label="インワールドで再生" label_selected="停止" name="Inworld" tool_tip="他人に見えるように再生"/>
|
||||
<button label="ローカル再生" label_selected="停止" name="Locally" tool_tip="自分だけが見えるように再生"/>
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt">
|
||||
説明:
|
||||
</text>
|
||||
<button label="インワールドで再生" label_selected="停止" name="Inworld" tool_tip="他人に見えるように再生"/>
|
||||
<button label="ローカル再生" label_selected="停止" name="Locally" tool_tip="自分だけが見えるように再生"/>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
<text name="name_confirm_label">
|
||||
Wpisz Twoje nowe Imię aby potwierdzić:
|
||||
</text>
|
||||
<button label="Zapisz" name="save_btn" tool_tip="Zapisz swoje nowe Wyświetlane Imię"/>
|
||||
<button label="Resetuj" name="reset_btn" tool_tip="Uczyń Wyświetlane Imię takim samym, jak nazwa konta użytkownika"/>
|
||||
<button label="Zapisz" name="save_btn" tool_tip="Zapisz swoje nowe Wyświetlane Imię"/>
|
||||
<button label="Anuluj" name="cancel_btn"/>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<floater name="Image Preview">
|
||||
<string name="with_alpha" value="z alfą" />
|
||||
<string name="no_alpha" value="bez alfy" />
|
||||
<text name="name_label">
|
||||
Nazwa:
|
||||
</text>
|
||||
|
|
@ -7,7 +9,7 @@
|
|||
Opis:
|
||||
</text>
|
||||
<text name="preview_label">
|
||||
Wyświetl obraz jako:
|
||||
Wyświetl jako:
|
||||
</text>
|
||||
<combo_box label="Rodzaj Ubrania" name="clothing_type_combo">
|
||||
<item label="Obraz" name="Image" />
|
||||
|
|
@ -29,8 +31,12 @@
|
|||
|
||||
Spróbuj zapisać obraz jako 24 bitową Targa (.tga).
|
||||
</text>
|
||||
<text name="uploaded_size_text">
|
||||
Przesłano: [X_RES]x[Y_RES], [ALPHA]
|
||||
</text>
|
||||
<check_box label="Kompresja bezstratna" name="lossless_check"/>
|
||||
<check_box name="temp_check" label="Tymczas. (darmowy)" tool_tip="Ustawia obraz na serwerze jako tymczasowy, a zatem jako darmowy, ale będzie on istnieć tylko przez krótki okres - po czym zostanie skasowany." />
|
||||
<button label="Anuluj" name="cancel_btn"/>
|
||||
<check_box left_delta="158" name="temp_check" label="Tymczas. (darmowy)" tool_tip="Ustawia obraz na serwerze jako tymczasowy, a zatem jako darmowy, ale będzie on istnieć tylko przez krótki okres - po czym zostanie skasowany." />
|
||||
<button label="Prześlij ([AMOUNT]L$)" name="ok_btn"/>
|
||||
<button label="Anuluj" name="cancel_btn"/>
|
||||
<text name="info_text" value="= tu pojawią się informacje o koszcie przesyłania =" />
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -3,19 +3,24 @@
|
|||
<floater.string name="Title">
|
||||
Animacja: [NAME]
|
||||
</floater.string>
|
||||
<text name="desc txt">
|
||||
Opis:
|
||||
</text>
|
||||
<button label="Uruchom publicznie" label_selected="Zatrzymaj" name="Inworld" tool_tip="Uruchom animację tak, aby widzieli ją pozostali Rezydenci"/>
|
||||
<button label="Uruchom prywatnie" label_selected="Zatrzymaj" name="Locally" tool_tip="Uruchom animację tak, aby była ona widoczna tylko dla Ciebie"/>
|
||||
<text name="AdvancedStatsLeft">
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt">
|
||||
Opis:
|
||||
</text>
|
||||
<button label="Uruchom publicznie" label_selected="Zatrzymaj" name="Inworld" tool_tip="Uruchom animację tak, aby widzieli ją pozostali Rezydenci"/>
|
||||
<button label="Uruchom prywatnie" label_selected="Zatrzymaj" name="Locally" tool_tip="Uruchom animację tak, aby była ona widoczna tylko dla Ciebie"/>
|
||||
<button name="btn_expand" tool_tip="Rozwiń, aby zobaczyć zaawansowane informacje o tej animacji" />
|
||||
</panel>
|
||||
<panel name="advanced_info_panel">
|
||||
<text name="AdvancedStatsLeft">
|
||||
Priorytet: [PRIORITY]
|
||||
Długość: [DURATION]s
|
||||
Zapętlona: [IS_LOOP]
|
||||
</text>
|
||||
<text name="AdvancedStatsRight">
|
||||
</text>
|
||||
<text name="AdvancedStatsRight">
|
||||
Wygł. startu: [EASE_IN]s
|
||||
Wygł. końca: [EASE_OUT]s
|
||||
Stawy: [NUM_JOINTS]
|
||||
</text>
|
||||
</text>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -8,6 +8,6 @@
|
|||
<menu_item_call label="Ustawienia czatu..." name="chat_preferences" />
|
||||
<menu_item_call label="Ustawienia prywatności..." name="privacy_preferences" />
|
||||
<menu_item_check label="Dziennik rozmów..." name="Conversation" />
|
||||
<menu_item_check name="Translate_chat" label="Tłumacz czat w pobliżu" />
|
||||
<menu_item_check name="Translate_chat" label="Tłumacz czat" />
|
||||
<menu_item_check name="Translation_settings" label="Ustawienia tłumaczenia..." />
|
||||
</toggleable_menu>
|
||||
|
|
|
|||
|
|
@ -211,6 +211,7 @@
|
|||
<check_box label="Używaj CTRL+myszki, aby chwytać obiekty i manipulować nimi" tool_tip="Gdy zaznaczysz tą opcję, to będziesz w stanie chwytać i przesuwać obiekty za pomocą myszki oraz klawisza CTRL." name="FSEnableGrab" />
|
||||
<check_box label="Przesuwaj / skaluj tekstury budując, gdy trzymany jest przycisk myszy oraz klawisz caps-lock" tool_tip="Gdy zaznaczysz tą opcję, to będziesz mógł/mogła przesuwać lub skalować strony tekstur trzymając przycisk myszy (wraz z klawiszem caps-lock) w trybie budowania. Ta funkcja jest eksperymentalna i powinna być używana ostrożnie." name="FSExperimentalDragTexture" />
|
||||
<check_box label="Podgląd animacji na własnym awatarze podczas przesyłania ich na serwer" tool_tip="Gdy zaznaczysz tą opcję, to będziesz w stanie oglądać animacje na swoim własnym awatarze podczas przesyłania ich na serwer" name="FSUploadAnimationOnOwnAvatar" />
|
||||
<check_box label="Zawsze rozwijaj zaawansowane informacje o podglądzie animacji" tool_tip="Domyślnie rozwiń zaawansowane informacje o animacji w oknie podglądu animacji" name="FSAnimationPreviewExpanded" />
|
||||
<check_box label="Włącz rozszerzanie funkcjonalności informacji o skryptach" tool_tip="Gdy zaznaczysz tą opcję, to podstawowa funkcjonalność informacji o skryptach zostanie rozszerzona za pomocą różnych szczegółów przydatnych dla budowniczych" name="FSScriptInfoExtended" />
|
||||
</panel>
|
||||
<panel label="Nowe pliki" name="UploadsTab">
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@
|
|||
</radio_group>
|
||||
<check_box label="Osoba musi mieć 18+ lat" name="limit_age_verified" tool_tip="Zbanuj Rezydetów, którzy mają mniej niż 18 lat. Odwiedź [SUPPORT_SITE], aby uzyskać więcej informacji." />
|
||||
<check_box label="Musi mieć dane płatnicze w systemie LL" name="limit_payment" tool_tip="Zbanuj Rezydentów niezarejestrowanych w systemie płatniczym Linden Lab. Odwiedź [SUPPORT_SITE], aby uzyskać więcej informacji." />
|
||||
<check_box label="Nie może być agentem skryptowym" name="limit_bots" tool_tip="Rezydenci nie mogą być agentami skryptowymi (botami), aby uzyskać dostęp do tego majątku. Odwiedź [SUPPORT_SITE], aby uzyskać więcej informacji." />
|
||||
<check_box label="Właściciele działek mogą być bardziej restrykcyjni" name="parcel_access_override" />
|
||||
<check_box label="Rozmowy głosowe" name="voice_chat_check" />
|
||||
<check_box label="Teleportacja bezpośrednia" name="allow_direct_teleport" />
|
||||
|
|
@ -28,4 +29,3 @@
|
|||
<button label="Wyślij wiadomość do Majątku..." name="message_estate_btn" />
|
||||
<button label="Wyrzuć Rezydenta z Majątku..." name="kick_user_from_estate_btn" />
|
||||
</panel>
|
||||
|
||||
|
|
|
|||
|
|
@ -222,7 +222,7 @@ Więcej informacji w naszym FAQ:
|
|||
http://secondlife.com/viewer-access-faq
|
||||
</string>
|
||||
<string name="LoginFailed">
|
||||
Logowanie nieudane.
|
||||
Proces logowania nie został ukończony z powodu problemów systemu. Spróbuj ponownie za kilka minut.
|
||||
Jeśli uważasz, że to błąd, skontaktuj się z obsługą świata.
|
||||
</string>
|
||||
<string name="LoginIntermediateOptionalUpdateAvailable">
|
||||
|
|
|
|||
|
|
@ -7,8 +7,7 @@
|
|||
Descrição:
|
||||
</text>
|
||||
<text name="preview_label">
|
||||
Prévia da
|
||||
imagem como:
|
||||
Pré-visualizar:
|
||||
</text>
|
||||
<combo_box label="Tipo de Roupas" name="clothing_type_combo">
|
||||
<item label="Imagem" name="Image" value="Imagem"/>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,11 @@
|
|||
<floater.string name="Title">
|
||||
Animação: [NOME]
|
||||
</floater.string>
|
||||
<text name="desc txt">
|
||||
Descrição:
|
||||
</text>
|
||||
<button label="Tocar inworld" label_selected="Parar" name="Inworld" tool_tip="Executar essa animação de forma que outros possam ver"/>
|
||||
<button label="Tocar localmente" label_selected="Parar" name="Locally" tool_tip="Executar animação de forma que apenas você possa ver"/>
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt">
|
||||
Descrição:
|
||||
</text>
|
||||
<button label="Tocar inworld" label_selected="Parar" name="Inworld" tool_tip="Executar essa animação de forma que outros possam ver"/>
|
||||
<button label="Tocar localmente" label_selected="Parar" name="Locally" tool_tip="Executar animação de forma que apenas você possa ver"/>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<floater name="Image Preview">
|
||||
<string name="with_alpha" value="с альфой"/>
|
||||
<string name="no_alpha" value="нет альфы"/>
|
||||
<text name="name_label">
|
||||
Название:
|
||||
</text>
|
||||
|
|
@ -7,7 +9,7 @@
|
|||
Описание:
|
||||
</text>
|
||||
<text name="preview_label">
|
||||
Показать изображение как:
|
||||
Показать как:
|
||||
</text>
|
||||
<combo_box label="Тип одежды" name="clothing_type_combo">
|
||||
<item label="Изображение" name="Image" value="Изображение"/>
|
||||
|
|
@ -28,7 +30,12 @@
|
|||
Невозможно прочитать изображение.
|
||||
Попробуйте сохранить изображение как 24-битный TGA-файл (Targa).
|
||||
</text>
|
||||
<text name="uploaded_size_text">
|
||||
Загруженный размер: [X_RES]x[Y_RES], [ALPHA]
|
||||
</text>
|
||||
<check_box label="Использовать сжатие без потерь" name="lossless_check"/>
|
||||
<check_box name="temp_check" label="Временно (бесплатно)" tool_tip="Устанавливает актив как временный, что означает, что он бесплатный, но взамен годится только в течение короткого времени, прежде чем он перестанет существовать."/>
|
||||
<button label="Отмена" name="cancel_btn"/>
|
||||
<button label="Загрузить (L$[AMOUNT])" name="ok_btn"/>
|
||||
<text name="info_text" value="= здесь будет текст информации о плате за загрузку ="/>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -3,19 +3,23 @@
|
|||
<floater.string name="Title">
|
||||
Анимация: [NAME]
|
||||
</floater.string>
|
||||
<text name="desc txt">
|
||||
Описание:
|
||||
</text>
|
||||
<button label="Запустить публично" label_selected="Остановить" name="Inworld" tool_tip="Запустить анимацию аватара, чтоб ее видели все вокруг"/>
|
||||
<button label="Запустить для себя" label_selected="Остановить" name="Locally" tool_tip="Запустить анимацию аватара, чтоб ее видели только вы"/>
|
||||
<text name="AdvancedStatsLeft">
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt">
|
||||
Описание:
|
||||
</text>
|
||||
<button label="Запустить публично" label_selected="Остановить" name="Inworld" tool_tip="Запустить анимацию аватара, чтоб ее видели все вокруг"/>
|
||||
<button label="Запустить для себя" label_selected="Остановить" name="Locally" tool_tip="Запустить анимацию аватара, чтоб ее видели только вы"/>
|
||||
</panel>
|
||||
<panel name="advanced_info_panel">
|
||||
<text name="AdvancedStatsLeft">
|
||||
Приоритет: [PRIORITY]
|
||||
Длительн.: [DURATION]с
|
||||
Цикл: [IS_LOOP]
|
||||
</text>
|
||||
<text name="AdvancedStatsRight">
|
||||
</text>
|
||||
<text name="AdvancedStatsRight">
|
||||
Запуск: [EASE_IN]с
|
||||
Останов: [EASE_OUT]с
|
||||
Суставы: [NUM_JOINTS]
|
||||
</text>
|
||||
</text>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -248,7 +248,7 @@ https://www.firestormviewer.org/choose-your-platform/
|
|||
http://secondlife.com/viewer-access-faq
|
||||
</string>
|
||||
<string name="LoginFailed">
|
||||
Аварийный сбой входа в сеть.
|
||||
Процесс входа не завершен из-за системных проблем. Повторите попытку через несколько минут.
|
||||
Если вы считаете, что это ошибка, пожалуйста, свяжитесь со службой поддержки сети.
|
||||
</string>
|
||||
<string name="LoginIntermediateOptionalUpdateAvailable">
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Açıklama:
|
||||
</text>
|
||||
<text name="preview_label">
|
||||
Görüntüyü şu şekilde önizle:
|
||||
Olarak önizleyin:
|
||||
</text>
|
||||
<combo_box label="Giysi Türü" name="clothing_type_combo">
|
||||
<item label="Görüntü" name="Image" value="Görüntü"/>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,11 @@
|
|||
<floater.string name="Title">
|
||||
Animasyon: [NAME]
|
||||
</floater.string>
|
||||
<text name="desc txt">
|
||||
Açıklama:
|
||||
</text>
|
||||
<button label="SL Dünyasında Oynat" label_selected="Durdur" name="Inworld" tool_tip="Bu animasyonu başkaları görebilecek şekilde oynatın"/>
|
||||
<button label="Yerel Olarak Oynat" label_selected="Durdur" name="Locally" tool_tip="Bu animasyonu sadece kendinizin görebileceği şekilde oynatın"/>
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt">
|
||||
Açıklama:
|
||||
</text>
|
||||
<button label="SL Dünyasında Oynat" label_selected="Durdur" name="Inworld" tool_tip="Bu animasyonu başkaları görebilecek şekilde oynatın"/>
|
||||
<button label="Yerel Olarak Oynat" label_selected="Durdur" name="Locally" tool_tip="Bu animasyonu sadece kendinizin görebileceği şekilde oynatın"/>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,11 @@
|
|||
<floater.string name="Title">
|
||||
動作:[NAME]
|
||||
</floater.string>
|
||||
<text name="desc txt">
|
||||
描述:
|
||||
</text>
|
||||
<button label="在虛擬世界播放" label_selected="停止" name="Inworld" tool_tip="播放此動作讓他人看見"/>
|
||||
<button label="在本地播放" label_selected="停止" name="Locally" tool_tip="播放此動作,只給自己看"/>
|
||||
<panel name="basic_info_panel">
|
||||
<text name="desc txt">
|
||||
描述:
|
||||
</text>
|
||||
<button label="在虛擬世界播放" label_selected="停止" name="Inworld" tool_tip="播放此動作讓他人看見"/>
|
||||
<button label="在本地播放" label_selected="停止" name="Locally" tool_tip="播放此動作,只給自己看"/>
|
||||
</panel>
|
||||
</floater>
|
||||
|
|
|
|||
Loading…
Reference in New Issue