Age | Commit message (Collapse) | Author |
|
Add ll_convert<TO, FROM> template, used as (e.g.):
ll_convert<std::string>(value_of_some_other_string_type);
There is no generic template implementation -- the template exists solely to
provide generic aliases for a bewildering family of llstring.h string-
conversion functions with highly-specific names. There's a generic
implementation, though, for the degenerate case where FROM and TO are
identical.
Add ll_convert<> specialization aliases for most of the string-conversion
functions declared in llstring.h, including the Windows-specific ones
involving llutf16string and std::wstring.
Add a mini-lecture in llstring.h about appropriate use of string types on
Windows.
Add LL_WCHAR_T_NATIVE llpreprocessor.h macro so we can detect whether to
provide separate conversions for llutf16string and std::wstring, or whether
those would collide because the types are identical.
Add inline ll_convert_wide_to_string(const std::wstring&) overloads so caller
isn't required to call arg.c_str(), which naturally permits an ll_convert
alias.
Add ll_convert_wide_to_wstring(), ll_convert_wstring_to_wide() as placeholders
for converting between Windows std::wstring and Linden LLWString, with
corresponding ll_convert aliases. We don't yet have library code to perform
such conversions officially; for now, just copy characters.
Add LLStringUtil::getenv(key) and getoptenv(key) functions. The latter returns
boost::optional<string_type> in case the caller needs to detect absence of a
given environment variable rather than simply accepting a default value.
Naturally getenv(), which accepts a default, is implemented using getoptenv().
getoptenv(), in turn, is implemented using an underlying llstring_getoptenv().
On Windows, llstring_getoptenv() returns boost::optional<std::wstring> (based
on GetEnvironmentVariableW()), whereas elsewhere, llstring_getoptenv() returns
boost::optional<std::string> (based on classic Posix getenv()).
The beauty of generic ll_convert is that the portable LLStringUtilBase<T>::
getoptenv() template can call the platform-specific llstring_getoptenv() and
transparently perform whatever conversion is necessary to return the desired
string_type.
Add windows_message<T>(error) template, with an overload that implicitly calls
GetLastError(). We provide a single concrete windows_message<std::wstring>()
implementation because that's what we get from Windows FormatMessageW() --
everything else is a generic conversion to the desired target string type.
This obviates llprocess.cpp's previous WindowsErrorString() implementation --
reimplement using windows_message<std::string>().
|
|
|
|
|
|
|
|
partial groups of settings. Blend these settings into the current environment.
|
|
button is engaged.
|
|
|
|
Instead of returning a wchar_t* and requiring the caller to delete it later,
return a std::basic_string<wchar_t> that's self-cleaning. If the caller wants
a wchar_t*, s/he can call c_str() on the returned string.
Default the code_page parameter to CP_UTF8, since we try to be really
consistent about using UTF-8 encoding for all our internal std::strings.
|
|
|
|
|
|
|
|
to the last set Offset value
|
|
the reflections will better match what they're reflecting
when ALM is enabled.
|
|
The previous build declared a static std::ofstream; but the code that
determines the pathname for the log file is called so early that static
objects have not yet been constructed. Declare a pointer instead, and
instantiate it on demand.
|
|
|
|
|
|
SL-10091 and SL-1894
Approved-by: Maxim Nikolenko <maximnproductengine@lindenlab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This logic is essentially copy-and-edited from the same suspenders-and-belt
concerning APPDATA and CSIDL_APPDATA for SL-10153.
|
|
De-duplicate ambient occlusion shader code and move to new aoUtil.glsl
Split shared shadow tap funcs into shadowUtil.glsl
|
|
SL-10165 Load Frame button on Day Cycle editor is not working when a frame is selected
|
|
SL-10091 EEP Filter out dupplicate refreshes and callbacks
|
|
is selected
|
|
In that case, also update $APPDATA for child processes.
|
|
|
|
|
|
SL-9924 [EEP] Environment Settings permissions can be dropped by Save As button
|
|
|
|
The whole remaining difference between llifstream and std::ifstream is that
the former handles UTF-8 coded pathnames. Microsoft's implementation of the
latter does not.
|
|
|
|
|
|
|
|
Viewer (repository: axon)
|
|
Modify handling of directional light to prefer sun when it is up but use moon dir/color when it is alone in the sky.
Modify handling of shader in shaders to get some shadowing of ambient and nighttime shadowing.
|
|
|
|
environment to a parcel or region
|
|
each other in edit mode
|
|
|
|
|
|
|
|
|
|
SL-10099
|
|
Remove user clip plane from culling pass and from attachment vis update.
There will be more slop and render submits, but the results will be more
stable and involve less culling mystery bugs like 9708.
|
|
|