diff options
| author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2024-10-10 23:42:05 +0300 | 
|---|---|---|
| committer | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2025-09-10 22:48:16 +0300 | 
| commit | 003092955486dfb0882d49d6b40586431df6368b (patch) | |
| tree | 96e3430aa6f3c4f0db8d7c5b69961c9b9f9bbc97 | |
| parent | 92c3cbbb04968b85ccb090258a2a6e8ba96628c6 (diff) | |
viewer#2172 AM/PM selector
25 files changed, 201 insertions, 50 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index d64f82d303..aa6a28f137 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -13036,9 +13036,9 @@      <key>Use24HourClock</key>      <map>          <key>Comment</key> -        <string>12 vs 24. At the moment only for region restart schedule floater</string> +        <string>12 vs 24. At the moment coverage is partial</string>          <key>Persist</key> -        <integer>0</integer> +        <integer>1</integer>          <key>Type</key>          <string>Boolean</string>          <key>Value</key> diff --git a/indra/newview/llchathistory.cpp b/indra/newview/llchathistory.cpp index 1988e2072b..2facc43811 100644 --- a/indra/newview/llchathistory.cpp +++ b/indra/newview/llchathistory.cpp @@ -441,6 +441,7 @@ public:                  time_t current_time = time_corrected();                  time_t message_time = (time_t)(current_time - LLFrameTimer::getElapsedSeconds() + mTime); +                // Report abuse shouldn't use AM/PM, use 24-hour time                  time_string = "[" + LLTrans::getString("TimeMonth") + "]/["                      + LLTrans::getString("TimeDay") + "]/["                      + LLTrans::getString("TimeYear") + "] [" diff --git a/indra/newview/llconversationlog.cpp b/indra/newview/llconversationlog.cpp index cea68c1779..65a068e08d 100644 --- a/indra/newview/llconversationlog.cpp +++ b/indra/newview/llconversationlog.cpp @@ -118,11 +118,21 @@ const std::string LLConversation::createTimestamp(const U64Seconds& utc_time)      LLSD substitution;      substitution["datetime"] = (S32)utc_time.value(); -    timeStr = "["+LLTrans::getString ("TimeMonth")+"]/[" -                 +LLTrans::getString ("TimeDay")+"]/[" -                 +LLTrans::getString ("TimeYear")+"] [" -                 +LLTrans::getString ("TimeHour")+"]:[" -                 +LLTrans::getString ("TimeMin")+"]"; +    static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +    timeStr = "[" + LLTrans::getString("TimeMonth") + "]/[" +        + LLTrans::getString("TimeDay") + "]/[" +        + LLTrans::getString("TimeYear") + "] ["; +    if (use_24h) +    { +        timeStr += LLTrans::getString("TimeHour") + "]:[" +            + LLTrans::getString("TimeMin") + "]"; +    } +    else +    { +        timeStr += LLTrans::getString("TimeHour12") + "]:[" +            + LLTrans::getString("TimeMin") + "] [" +            + LLTrans::getString("TimeAMPM") + "]"; +    }      LLStringUtil::format (timeStr, substitution); diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index e03422780a..65c13797ac 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -618,8 +618,19 @@ void LLFloaterIMSessionTab::deleteAllChildren()  std::string LLFloaterIMSessionTab::appendTime()  { -    std::string timeStr = "[" + LLTrans::getString("TimeHour") + "]:" -                          "[" + LLTrans::getString("TimeMin") + "]"; +    std::string timeStr; +    static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +    if (use_24h) +    { +        timeStr = "[" + LLTrans::getString("TimeHour") + "]:" +            "[" + LLTrans::getString("TimeMin") + "]"; +    } +    else +    { +        timeStr = "[" + LLTrans::getString("TimeHour12") + "]:" +            "[" + LLTrans::getString("TimeMin") + "] [" +            + LLTrans::getString("TimeAMPM") + "]"; +    }      LLSD substitution;      substitution["datetime"] = (S32)time_corrected(); diff --git a/indra/newview/llfloaterinspect.cpp b/indra/newview/llfloaterinspect.cpp index 4f993ca0e1..c0fe7ad896 100644 --- a/indra/newview/llfloaterinspect.cpp +++ b/indra/newview/llfloaterinspect.cpp @@ -220,7 +220,8 @@ void LLFloaterInspect::refresh()          }          time_t timestamp = (time_t) (obj->mCreationDate/1000000); -        std::string timeStr = getString("timeStamp"); +        static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +        std::string timeStr = use_24h ? getString("timeStamp") : getString("timeStampAMPM");          LLSD substitution;          substitution["datetime"] = (S32) timestamp;          LLStringUtil::format (timeStr, substitution); diff --git a/indra/newview/llfloaterland.cpp b/indra/newview/llfloaterland.cpp index 52a3e78d04..5c5219bcdd 100644 --- a/indra/newview/llfloaterland.cpp +++ b/indra/newview/llfloaterland.cpp @@ -733,7 +733,8 @@ void LLPanelLandGeneral::refresh()              // Display claim date              time_t claim_date = parcel->getClaimDate(); -            std::string claim_date_str = getString("time_stamp_template"); +            static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +            std::string claim_date_str = use_24h ? getString("time_stamp_template") : getString("time_stamp_template_ampm");              LLSD substitution;              substitution["datetime"] = (S32) claim_date;              LLStringUtil::format (claim_date_str, substitution); diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 291f22d78f..734cc73331 100644 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -475,6 +475,8 @@ bool LLFloaterPreference::postBuild()      getChild<LLUICtrl>("log_path_string")->setEnabled(false); // make it read-only but selectable      getChild<LLComboBox>("language_combobox")->setCommitCallback(boost::bind(&LLFloaterPreference::onLanguageChange, this)); +    mTimeFormatCombobox = getChild<LLComboBox>("time_format_combobox"); +    mTimeFormatCombobox->setCommitCallback(boost::bind(&LLFloaterPreference::onTimeFormatChange, this));      getChild<LLComboBox>("FriendIMOptions")->setCommitCallback(boost::bind(&LLFloaterPreference::onNotificationsChange, this,"FriendIMOptions"));      getChild<LLComboBox>("NonFriendIMOptions")->setCommitCallback(boost::bind(&LLFloaterPreference::onNotificationsChange, this,"NonFriendIMOptions")); @@ -1103,6 +1105,13 @@ void LLFloaterPreference::onLanguageChange()      }  } +void LLFloaterPreference::onTimeFormatChange() +{ +    std::string val = mTimeFormatCombobox->getValue(); +    gSavedSettings.setBOOL("Use24HourClock", val == "1"); +    onLanguageChange(); +} +  void LLFloaterPreference::onNotificationsChange(const std::string& OptionName)  {      mNotificationOptions[OptionName] = getChild<LLComboBox>(OptionName)->getSelectedItemLabel(); @@ -1318,6 +1327,8 @@ void LLFloaterPreference::refresh()          advanced->refresh();      }      updateClickActionViews(); + +    mTimeFormatCombobox->selectByValue(gSavedSettings.getBOOL("Use24HourClock") ? "1" : "0");  }  void LLFloaterPreference::onCommitWindowedMode() diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h index 61ac0a4d77..3150054798 100644 --- a/indra/newview/llfloaterpreference.h +++ b/indra/newview/llfloaterpreference.h @@ -117,6 +117,7 @@ protected:      void        onClickClearCache();            // Clear viewer texture cache, file cache on next startup      void        onClickBrowserClearCache();     // Clear web history and caches as well as viewer caches above      void        onLanguageChange(); +    void        onTimeFormatChange();      void        onNotificationsChange(const std::string& OptionName);      void        onNameTagOpacityChange(const LLSD& newvalue); @@ -235,6 +236,7 @@ private:      LLButton*       mDeleteTranscriptsBtn = nullptr;      LLButton*       mEnablePopupBtn = nullptr;      LLButton*       mDisablePopupBtn = nullptr; +    LLComboBox*     mTimeFormatCombobox = nullptr;      std::unique_ptr< ll::prefs::SearchData > mSearchData;      bool mSearchDataDirty; diff --git a/indra/newview/lllogchat.cpp b/indra/newview/lllogchat.cpp index fa1f650113..30ea255e24 100644 --- a/indra/newview/lllogchat.cpp +++ b/indra/newview/lllogchat.cpp @@ -80,8 +80,8 @@ const static std::string MULTI_LINE_PREFIX(" ");   *   * Note: "You" was used as an avatar names in viewers of previous versions   */ -const static boost::regex TIMESTAMP_AND_STUFF("^(\\[\\d{4}/\\d{1,2}/\\d{1,2}\\s+\\d{1,2}:\\d{2}\\]\\s+|\\[\\d{1,2}:\\d{2}\\]\\s+)?(.*)$"); -const static boost::regex TIMESTAMP("^(\\[\\d{4}/\\d{1,2}/\\d{1,2}\\s+\\d{1,2}:\\d{2}\\]|\\[\\d{1,2}:\\d{2}\\]).*"); +const static boost::regex TIMESTAMP_AND_STUFF("^(\\[\\d{4}/\\d{1,2}/\\d{1,2}\\s+\\d{1,2}:\\d{2}\\s[AaPp][Mm]\\]\\s+|\\[\\d{4}/\\d{1,2}/\\d{1,2}\\s+\\d{1,2}:\\d{2}\\]\\s+|\\[\\d{1,2}:\\d{2}\\s[AaPp][Mm]\\]\\s+|\\[\\d{1,2}:\\d{2}\\]\\s+)?(.*)$"); +const static boost::regex TIMESTAMP("^(\\[\\d{4}/\\d{1,2}/\\d{1,2}\\s+\\d{1,2}:\\d{2}(\\s[AaPp][Mm])?\\]|\\[\\d{1,2}:\\d{2}(\\s[AaPp][Mm])?\\]).*");  /**   *  Regular expression suitable to match names like @@ -152,6 +152,10 @@ public:      void checkAndCutOffDate(std::string& time_str)      { +        if (time_str.size() < 10) // not enough space for a date +        { +            return; +        }          // Cuts off the "%Y/%m/%d" from string for todays timestamps.          // Assume that passed string has at least "%H:%M" time format.          date log_date(not_a_date_time); @@ -168,20 +172,12 @@ public:          if ( days_alive == zero_days )          { -            // Yep, today's so strip "%Y/%m/%d" info -            ptime stripped_time(not_a_date_time); - -            mTimeStream.str(LLStringUtil::null); -            mTimeStream << time_str; -            mTimeStream >> stripped_time; -            mTimeStream.clear(); - -            time_str.clear(); - -            mTimeStream.str(LLStringUtil::null); -            mTimeStream << stripped_time; -            mTimeStream >> time_str; -            mTimeStream.clear(); +            size_t pos = time_str.find_first_of(' '); +            if (pos != std::string::npos) +            { +                time_str.erase(0, pos + 1); +                LLStringUtil::trim(time_str); +            }          }          LL_DEBUGS("LLChatLogParser") @@ -310,16 +306,22 @@ std::string LLLogChat::timestamp2LogString(U32 timestamp, bool withdate)      std::string timeStr;      if (withdate)      { -        timeStr = "[" + LLTrans::getString ("TimeYear") + "]/[" -                  + LLTrans::getString ("TimeMonth") + "]/[" -                  + LLTrans::getString ("TimeDay") + "] [" -                  + LLTrans::getString ("TimeHour") + "]:[" -                  + LLTrans::getString ("TimeMin") + "]"; +        timeStr = "[" + LLTrans::getString("TimeYear") + "]/[" +            + LLTrans::getString("TimeMonth") + "]/[" +            + LLTrans::getString("TimeDay") + "] "; +    } + +    static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +    if (use_24h) +    { +        timeStr += "[" + LLTrans::getString("TimeHour") + "]:[" +            + LLTrans::getString("TimeMin") + "]";      }      else      { -        timeStr = "[" + LLTrans::getString("TimeHour") + "]:[" -                  + LLTrans::getString ("TimeMin")+"]"; +        timeStr += "[" + LLTrans::getString("TimeHour12") + "]:[" +            + LLTrans::getString("TimeMin") + "] [" +            + LLTrans::getString("TimeAMPM") + "]";      }      LLSD substitution; diff --git a/indra/newview/llnotificationlistitem.cpp b/indra/newview/llnotificationlistitem.cpp index 5b8b28ebe6..9a33bcb1b9 100644 --- a/indra/newview/llnotificationlistitem.cpp +++ b/indra/newview/llnotificationlistitem.cpp @@ -38,6 +38,7 @@  #include "lluicolortable.h"  #include "message.h"  #include "llnotificationsutil.h" +#include "llviewercontrol.h"  #include <boost/regex.hpp>  LLNotificationListItem::LLNotificationListItem(const Params& p) : LLPanel(p), @@ -133,10 +134,22 @@ std::string LLNotificationListItem::buildNotificationDate(const LLDate& time_sta          default:              timeStr = "[" + LLTrans::getString("TimeMonth") + "]/["                  +LLTrans::getString("TimeDay")+"]/[" -                +LLTrans::getString("TimeYear")+"] [" -                +LLTrans::getString("TimeHour")+"]:[" -                +LLTrans::getString("TimeMin")+"] [" -                +LLTrans::getString("TimeTimezone")+"]"; +                +LLTrans::getString("TimeYear")+"] ["; + +            static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +            if (use_24h) +            { +                timeStr += LLTrans::getString("TimeHour") + "]:[" +                    + LLTrans::getString("TimeMin") + "] [" +                    + LLTrans::getString("TimeTimezone") + "]"; +            } +            else +            { +                timeStr += LLTrans::getString("TimeHour12") + "]:[" +                    + LLTrans::getString("TimeMin") + "] [" +                    + LLTrans::getString("TimeAMPM") + "] [" +                    + LLTrans::getString("TimeTimezone") + "]"; +            }              break;      }      LLSD substitution; diff --git a/indra/newview/llpanellandmarkinfo.cpp b/indra/newview/llpanellandmarkinfo.cpp index 41373cd7f5..7596c0eba8 100644 --- a/indra/newview/llpanellandmarkinfo.cpp +++ b/indra/newview/llpanellandmarkinfo.cpp @@ -41,6 +41,7 @@  #include "lllandmarkactions.h"  #include "llparcel.h"  #include "llslurl.h" +#include "llviewercontrol.h"  #include "llviewerinventory.h"  #include "llviewerparcelmgr.h"  #include "llviewerregion.h" @@ -326,7 +327,8 @@ void LLPanelLandmarkInfo::displayItemInfo(const LLInventoryItem* pItem)      }      else      { -        std::string timeStr = getString("acquired_date"); +        static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +        std::string timeStr = use_24h ? getString("acquired_date") : getString("acquired_date_ampm");          LLSD substitution;          substitution["datetime"] = (S32) time_utc;          LLStringUtil::format (timeStr, substitution); diff --git a/indra/newview/llpanelteleporthistory.cpp b/indra/newview/llpanelteleporthistory.cpp index 902412d359..bfdfa68e01 100644 --- a/indra/newview/llpanelteleporthistory.cpp +++ b/indra/newview/llpanelteleporthistory.cpp @@ -42,6 +42,7 @@  #include "llnotificationsutil.h"  #include "lltextbox.h"  #include "lltoggleablemenu.h" +#include "llviewercontrol.h"  #include "llviewermenu.h"  #include "lllandmarkactions.h"  #include "llclipboard.h" @@ -215,8 +216,18 @@ std::string LLTeleportHistoryFlatItem::getTimestamp()      // Only show timestamp for today and yesterday      if(time_diff < seconds_today + seconds_in_day)      { -        timestamp = "[" + LLTrans::getString("TimeHour12")+"]:[" -                        + LLTrans::getString("TimeMin")+"] ["+ LLTrans::getString("TimeAMPM")+"]"; +        static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +        if (use_24h) +        { +            timestamp = "[" + LLTrans::getString("TimeHour") + "]:[" +                + LLTrans::getString("TimeMin") + "]"; +        } +        else +        { +            timestamp = "[" + LLTrans::getString("TimeHour12") + "]:[" +                + LLTrans::getString("TimeMin") + "] [" + LLTrans::getString("TimeAMPM") + "]"; +        } +          LLSD substitution;          substitution["datetime"] = (S32) date.secondsSinceEpoch();          LLStringUtil::format(timestamp, substitution); diff --git a/indra/newview/llsidepaneliteminfo.cpp b/indra/newview/llsidepaneliteminfo.cpp index 3d4b4fb9c1..6d50f216f5 100644 --- a/indra/newview/llsidepaneliteminfo.cpp +++ b/indra/newview/llsidepaneliteminfo.cpp @@ -487,7 +487,8 @@ void LLSidepanelItemInfo::refreshFromItem(LLViewerInventoryItem* item)      }      else      { -        std::string timeStr = getString("acquiredDate"); +        static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +        std::string timeStr = use_24h ? getString("acquiredDate") : getString("acquiredDateAMPM");          LLSD substitution;          substitution["datetime"] = (S32) time_utc;          LLStringUtil::format (timeStr, substitution); diff --git a/indra/newview/lltoastgroupnotifypanel.cpp b/indra/newview/lltoastgroupnotifypanel.cpp index 3c3440d41a..95653dc19b 100644 --- a/indra/newview/lltoastgroupnotifypanel.cpp +++ b/indra/newview/lltoastgroupnotifypanel.cpp @@ -87,10 +87,21 @@ LLToastGroupNotifyPanel::LLToastGroupNotifyPanel(const LLNotificationPtr& notifi      std::string timeStr = "[" + LLTrans::getString("TimeWeek") + "], ["                                + LLTrans::getString("TimeMonth") + "]/["                                + LLTrans::getString("TimeDay") + "]/[" -                              + LLTrans::getString("TimeYear") + "] [" -                              + LLTrans::getString("TimeHour") + "]:[" -                              + LLTrans::getString("TimeMin") + "] [" -                              + LLTrans::getString("TimeTimezone") + "]"; +                              + LLTrans::getString("TimeYear") + "] ["; +    static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +    if (use_24h) +    { +        timeStr += LLTrans::getString("TimeHour") + "]:[" +            + LLTrans::getString("TimeMin") + "] [" +            + LLTrans::getString("TimeTimezone") + "]"; +    } +    else +    { +        timeStr += LLTrans::getString("TimeHour12") + "]:[" +            + LLTrans::getString("TimeMin") + "] [" +            + LLTrans::getString("TimeAMPM") + "] [" +            + LLTrans::getString("TimeTimezone") + "]"; +    }      const LLDate timeStamp = notification->getDate();      LLDate notice_date = timeStamp.notNull() ? timeStamp : payload["received_time"].asDate(); diff --git a/indra/newview/llworldmap.cpp b/indra/newview/llworldmap.cpp index 7962c28e6d..153bee3aef 100644 --- a/indra/newview/llworldmap.cpp +++ b/indra/newview/llworldmap.cpp @@ -32,6 +32,7 @@  #include "message.h"  #include "lltracker.h"  #include "lluistring.h" +#include "llviewercontrol.h"  #include "llviewertexturelist.h"  #include "lltrans.h"  #include "llgltexture.h" @@ -492,9 +493,20 @@ bool LLWorldMap::insertItem(U32 x_world, U32 y_world, std::string& name, LLUUID&          case MAP_ITEM_MATURE_EVENT:          case MAP_ITEM_ADULT_EVENT:          { -            std::string timeStr = "["+ LLTrans::getString ("TimeHour")+"]:[" -                                       +LLTrans::getString ("TimeMin")+"] [" -                                       +LLTrans::getString ("TimeAMPM")+"]"; +            std::string timeStr; + +            static bool use_24h = gSavedSettings.getBOOL("Use24HourClock"); +            if (use_24h) +            { +                timeStr = "[" + LLTrans::getString("TimeHour") + "]:[" +                    + LLTrans::getString("TimeMin") + "]"; +            } +            else +            { +                timeStr = "[" + LLTrans::getString("TimeHour12") + "]:[" +                    + LLTrans::getString("TimeMin") + "] [" +                    + LLTrans::getString("TimeAMPM") + "]"; +            }              LLSD substitution;              substitution["datetime"] = (S32) extra;              LLStringUtil::format (timeStr, substitution); diff --git a/indra/newview/skins/default/xui/da/sidepanel_item_info.xml b/indra/newview/skins/default/xui/da/sidepanel_item_info.xml index d52845160b..e5ad86b315 100644 --- a/indra/newview/skins/default/xui/da/sidepanel_item_info.xml +++ b/indra/newview/skins/default/xui/da/sidepanel_item_info.xml @@ -15,6 +15,9 @@  	<panel.string name="acquiredDate">  		[wkday,datetime,local] [mth,datetime,local] [day,datetime,local] [hour,datetime,local]:[min,datetime,local]:[second,datetime,local] [year,datetime,local]  	</panel.string> +  <panel.string name="acquiredDateAMPM"> +    [wkday,datetime,local] [mth,datetime,local] [day,datetime,local] [hour12,datetime,local]:[min,datetime,local]:[second,datetime,local] [ampm,datetime,local] [year,datetime,local] +  </panel.string>  	<panel.string name="origin_inventory">  		(Beholdning)  	</panel.string> diff --git a/indra/newview/skins/default/xui/de/sidepanel_item_info.xml b/indra/newview/skins/default/xui/de/sidepanel_item_info.xml index 168bb14248..3570ccacd2 100644 --- a/indra/newview/skins/default/xui/de/sidepanel_item_info.xml +++ b/indra/newview/skins/default/xui/de/sidepanel_item_info.xml @@ -21,6 +21,9 @@  	<panel.string name="acquiredDate">  		[wkday,datetime,local] [mth,datetime,local] [day,datetime,local] [hour,datetime,local]:[min,datetime,local]:[second,datetime,local] [year,datetime,local]  	</panel.string> +  <panel.string name="acquiredDateAMPM"> +    [wkday,datetime,local] [mth,datetime,local] [day,datetime,local] [hour12,datetime,local]:[min,datetime,local]:[second,datetime,local] [ampm,datetime,local] [year,datetime,local] +  </panel.string>  	<panel.string name="origin_inventory">  		(Inventar)  	</panel.string> diff --git a/indra/newview/skins/default/xui/en/floater_about_land.xml b/indra/newview/skins/default/xui/en/floater_about_land.xml index 508aba6ae1..c5b42b6dae 100644 --- a/indra/newview/skins/default/xui/en/floater_about_land.xml +++ b/indra/newview/skins/default/xui/en/floater_about_land.xml @@ -125,6 +125,9 @@               name="no_selection_text">                  No parcel selected.              </panel.string> +            <panel.string name="time_stamp_template_ampm"> +              [wkday,datetime,slt] [mth,datetime,slt] [day,datetime,slt] [hour12,datetime,slt]:[min,datetime,slt]:[second,datetime,slt] [ampm,datetime,slt] [year,datetime,slt] +            </panel.string>              <panel.string name="time_stamp_template">                [wkday,datetime,slt] [mth,datetime,slt] [day,datetime,slt] [hour,datetime,slt]:[min,datetime,slt]:[second,datetime,slt] [year,datetime,slt]              </panel.string> diff --git a/indra/newview/skins/default/xui/en/floater_inspect.xml b/indra/newview/skins/default/xui/en/floater_inspect.xml index 9403d58441..a083683c23 100644 --- a/indra/newview/skins/default/xui/en/floater_inspect.xml +++ b/indra/newview/skins/default/xui/en/floater_inspect.xml @@ -12,6 +12,10 @@   title="INSPECT OBJECTS"   width="400">      <floater.string +     name="timeStampAMPM"> +      [wkday,datetime,slt] [mth,datetime,slt] [day,datetime,slt] [hour12,datetime,slt]:[min,datetime,slt]:[second,datetime,slt] [ampm,datetime,slt] [year,datetime,slt] +    </floater.string> +    <floater.string       name="timeStamp">          [wkday,datetime,slt] [mth,datetime,slt] [day,datetime,slt] [hour,datetime,slt]:[min,datetime,slt]:[second,datetime,slt] [year,datetime,slt]      </floater.string> diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml index 7fc96af55d..fa3fd86d59 100644 --- a/indra/newview/skins/default/xui/en/notifications.xml +++ b/indra/newview/skins/default/xui/en/notifications.xml @@ -1670,7 +1670,7 @@ The new skin will appear after you restart [APP_NAME].     icon="alertmodal.tga"     name="ChangeLanguage"     type="alertmodal"> -Changing language will take effect after you restart [APP_NAME]. +Changing language or time format will take effect after you restart [APP_NAME].    </notification>    <notification diff --git a/indra/newview/skins/default/xui/en/panel_landmark_info.xml b/indra/newview/skins/default/xui/en/panel_landmark_info.xml index af68bd7fee..19599efdc2 100644 --- a/indra/newview/skins/default/xui/en/panel_landmark_info.xml +++ b/indra/newview/skins/default/xui/en/panel_landmark_info.xml @@ -40,6 +40,10 @@          Information about this location is unavailable due to access restrictions.  Please check your permissions with the parcel owner.      </string>      <string +     name="acquired_date_ampm"> +        [wkday,datetime,slt] [mth,datetime,slt] [day,datetime,slt] [hour12,datetime,slt]:[min,datetime,slt]:[second,datetime,slt] [ampm,datetime,slt] [year,datetime,slt] +    </string> +    <string       name="acquired_date">          [wkday,datetime,slt] [mth,datetime,slt] [day,datetime,slt] [hour,datetime,slt]:[min,datetime,slt]:[second,datetime,slt] [year,datetime,slt]      </string> diff --git a/indra/newview/skins/default/xui/en/panel_place_profile.xml b/indra/newview/skins/default/xui/en/panel_place_profile.xml index 8f5292c531..bb877080b1 100644 --- a/indra/newview/skins/default/xui/en/panel_place_profile.xml +++ b/indra/newview/skins/default/xui/en/panel_place_profile.xml @@ -89,6 +89,10 @@          Information about this location is unavailable due to access restrictions.  Please check your permissions with the parcel owner.      </string>      <string +     name="acquired_date_ampm"> +        [wkday,datetime,local] [mth,datetime,local] [day,datetime,local] [hour12,datetime,local]:[min,datetime,local]:[second,datetime,local] [ampm,datetime,local] [year,datetime,local] +    </string> +    <string       name="acquired_date">          [wkday,datetime,local] [mth,datetime,local] [day,datetime,local] [hour,datetime,local]:[min,datetime,local]:[second,datetime,local] [year,datetime,local]      </string> diff --git a/indra/newview/skins/default/xui/en/panel_preferences_general.xml b/indra/newview/skins/default/xui/en/panel_preferences_general.xml index 101c506309..ddddb4855f 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_general.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_general.xml @@ -91,6 +91,37 @@           name="Traditional Chinese"           value="zh" />      </combo_box> +   <text +     type="string" +     length="1" +     follows="left|top" +     height="15" +     layout="topleft" +     left="255" +     name="time_format_textbox" +     top="10" +     width="200"> +        Time Format: +    </text> +    <combo_box +     follows="left|top" +     height="23" +     layout="topleft" +     left="255" +     max_chars="135" +     name="time_format_combobox" +     width="70"> +        <combo_box.item +         enabled="true" +         label="1:00 AM" +         name="12H" +         value="0" /> +        <combo_box.item +         enabled="true" +         label="13:00" +         name="24H" +         value="1" /> +    </combo_box>      <text   font="SansSerifSmall"       type="string" diff --git a/indra/newview/skins/default/xui/en/sidepanel_item_info.xml b/indra/newview/skins/default/xui/en/sidepanel_item_info.xml index 1cb3eca2eb..40a88d4121 100644 --- a/indra/newview/skins/default/xui/en/sidepanel_item_info.xml +++ b/indra/newview/skins/default/xui/en/sidepanel_item_info.xml @@ -32,6 +32,10 @@      Owner can:    </panel.string>    <panel.string +    name="acquiredDateAMPM"> +    [wkday,datetime,slt] [mth,datetime,slt] [day,datetime,slt] [hour12,datetime,slt]:[min,datetime,slt]:[second,datetime,slt] [ampm,datetime,slt] [year,datetime,slt] +  </panel.string> +  <panel.string      name="acquiredDate">      [wkday,datetime,slt] [mth,datetime,slt] [day,datetime,slt] [hour,datetime,slt]:[min,datetime,slt]:[second,datetime,slt] [year,datetime,slt]    </panel.string> diff --git a/indra/newview/tests/llworldmap_test.cpp b/indra/newview/tests/llworldmap_test.cpp index d5bf189d82..60172b3960 100644 --- a/indra/newview/tests/llworldmap_test.cpp +++ b/indra/newview/tests/llworldmap_test.cpp @@ -32,6 +32,7 @@  #include "lltrans.h"  #include "lluistring.h"  #include "../llviewertexture.h" +#include "../llviewercontrol.h"  #include "../llworldmapmessage.h"  // Class to test  #include "../llworldmap.h" @@ -71,6 +72,11 @@ void LLUIString::updateResult() const { }  void LLUIString::setArg(const std::string& , const std::string& ) { }  void LLUIString::assign(const std::string& ) { } +LLControlGroup::LLControlGroup(const std::string& name) : LLInstanceTracker<LLControlGroup, std::string>(name) {} +LLControlGroup::~LLControlGroup() {} +bool LLControlGroup::getBOOL(std::string_view) { return true; } +LLControlGroup gSavedSettings("test_settings"); +  // End Stubbing  // -------------------------------------------------------------------------------------------  | 
