Skip to content

Commit

Permalink
Add Reset UI icon/feature.
Browse files Browse the repository at this point in the history
- Add a reset UI feature with icon next to the UI lock icon. Icon is
disabled when UI is set to Locked.
- Add new UI lock icons (both icons by Morbus).
- Show correct tooltip for Ping in statusbar (was showing FPS tooltips).
- Add German translations for UI lock/reset tooltips.
  • Loading branch information
skittles1 committed Jul 7, 2022
1 parent f36095c commit 4a3326c
Show file tree
Hide file tree
Showing 11 changed files with 169 additions and 28 deletions.
6 changes: 6 additions & 0 deletions Meridian59.Ogre.Client/Constants.h
Original file line number Diff line number Diff line change
Expand Up @@ -334,8 +334,13 @@
#define UI_IMAGE_BRANDING_OPENMERIDIAN ""
#define UI_IMAGE_LOCKBUTTON_UNLOCKED_NORMAL "TaharezLook/WindowLockButtonUnlockedNormal"
#define UI_IMAGE_LOCKBUTTON_UNLOCKED_HOVER "TaharezLook/WindowLockButtonUnlockedHover"
#define UI_IMAGE_LOCKBUTTON_UNLOCKED_PUSHED "TaharezLook/WindowLockButtonUnlockedPushed"
#define UI_IMAGE_LOCKBUTTON_LOCKED_NORMAL "TaharezLook/WindowLockButtonLockedNormal"
#define UI_IMAGE_LOCKBUTTON_LOCKED_HOVER "TaharezLook/WindowLockButtonLockedHover"
#define UI_IMAGE_LOCKBUTTON_LOCKED_PUSHED "TaharezLook/WindowLockButtonLockedPushed"
#define UI_IMAGE_RESETBUTTON_NORMAL "TaharezLook/WindowResetButtonNormal"
#define UI_IMAGE_RESETBUTTON_HOVER "TaharezLook/WindowResetButtonHover"
#define UI_IMAGE_RESETBUTTON_PUSHED "TaharezLook/WindowResetButtonPushed"

/* prefixe */
#define UI_NAMEPREFIX_STATICICON "CEGUI/StaticIcon/"
Expand Down Expand Up @@ -370,6 +375,7 @@
#define UI_NAME_STATUSBAR_MTIMEVAL "StatusBar.MTimeValue"
#define UI_NAME_STATUSBAR_ROOMDESC "StatusBar.RoomDescription"
#define UI_NAME_STATUSBAR_ROOMVAL "StatusBar.RoomValue"
#define UI_NAME_STATUSBAR_RESET "StatusBar.Reset"
#define UI_NAME_STATUSBAR_LOCK "StatusBar.Lock"
#define UI_NAME_ONLINEPLAYERS_WINDOW "OnlinePlayers"
#define UI_NAME_ONLINEPLAYERS_LIST "OnlinePlayers.List"
Expand Down
79 changes: 73 additions & 6 deletions Meridian59.Ogre.Client/ControllerUI.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -322,10 +322,11 @@ namespace Meridian59 { namespace Ogre
// switch lock image
StatusBar::Lock->setProperty(UI_PROPNAME_NORMALIMAGE, UI_IMAGE_LOCKBUTTON_LOCKED_NORMAL);
StatusBar::Lock->setProperty(UI_PROPNAME_HOVERIMAGE, UI_IMAGE_LOCKBUTTON_LOCKED_HOVER);
StatusBar::Lock->setProperty(UI_PROPNAME_PUSHEDIMAGE, UI_IMAGE_LOCKBUTTON_LOCKED_NORMAL);
StatusBar::Lock->setProperty(UI_PROPNAME_PUSHEDIMAGE, UI_IMAGE_LOCKBUTTON_LOCKED_PUSHED);

// update tooltip
StatusBar::Lock->setTooltipText("Interface is currently locked. \n You can't move or resize windows. \n Click to unlock.");
// update tooltips
StatusBar::Lock->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::UILOCKED_TOOLTIP));
StatusBar::Reset->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::UIRESETLOCKED_TOOLTIP));

// disable dragging of actionbuttons
for (size_t i = 0; i < ACTIONBUTTONS; i++)
Expand Down Expand Up @@ -359,10 +360,11 @@ namespace Meridian59 { namespace Ogre
// switch lock image
StatusBar::Lock->setProperty(UI_PROPNAME_NORMALIMAGE, UI_IMAGE_LOCKBUTTON_UNLOCKED_NORMAL);
StatusBar::Lock->setProperty(UI_PROPNAME_HOVERIMAGE, UI_IMAGE_LOCKBUTTON_UNLOCKED_HOVER);
StatusBar::Lock->setProperty(UI_PROPNAME_PUSHEDIMAGE, UI_IMAGE_LOCKBUTTON_UNLOCKED_NORMAL);
StatusBar::Lock->setProperty(UI_PROPNAME_PUSHEDIMAGE, UI_IMAGE_LOCKBUTTON_UNLOCKED_PUSHED);

// update tooltip
StatusBar::Lock->setTooltipText("Interface is currently unlocked. \n You can move or resize windows. \n Click to lock.");
// update tooltips
StatusBar::Lock->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::UIUNLOCKED_TOOLTIP));
StatusBar::Reset->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::UIRESET_TOOLTIP));

// enable dragging of actionbuttons
for (size_t i = 0; i < ACTIONBUTTONS; i++)
Expand Down Expand Up @@ -636,6 +638,71 @@ namespace Meridian59 { namespace Ogre
}
};

void ControllerUI::ResetLayout()
{
OgreClient::Singleton->Config->ResetUIElements();

// avatar
Avatar::Window->setPosition(OgreClient::Singleton->Config->UILayoutAvatar->getPosition());
Avatar::Window->setSize(OgreClient::Singleton->Config->UILayoutAvatar->getSize());

// target
Target::Window->setPosition(OgreClient::Singleton->Config->UILayoutTarget->getPosition());
Target::Window->setSize(OgreClient::Singleton->Config->UILayoutTarget->getSize());

// minimap
MiniMap::Window->setPosition(OgreClient::Singleton->Config->UILayoutMinimap->getPosition());
MiniMap::Window->setSize(OgreClient::Singleton->Config->UILayoutMinimap->getSize());

// roomenchantments
RoomEnchantments::Window->setPosition(OgreClient::Singleton->Config->UILayoutRoomEnchantments->getPosition());
RoomEnchantments::Window->setSize(OgreClient::Singleton->Config->UILayoutRoomEnchantments->getSize());

// chat
Chat::Window->setPosition(OgreClient::Singleton->Config->UILayoutChat->getPosition());
Chat::Window->setSize(OgreClient::Singleton->Config->UILayoutChat->getSize());

// inventory
Inventory::Window->setPosition(OgreClient::Singleton->Config->UILayoutInventory->getPosition());
Inventory::Window->setSize(OgreClient::Singleton->Config->UILayoutInventory->getSize());

// spells
Spells::Window->setPosition(OgreClient::Singleton->Config->UILayoutSpells->getPosition());
Spells::Window->setSize(OgreClient::Singleton->Config->UILayoutSpells->getSize());

// skills
Skills::Window->setPosition(OgreClient::Singleton->Config->UILayoutSkills->getPosition());
Skills::Window->setSize(OgreClient::Singleton->Config->UILayoutSkills->getSize());

// actions
Actions::Window->setPosition(OgreClient::Singleton->Config->UILayoutActions->getPosition());
Actions::Window->setSize(OgreClient::Singleton->Config->UILayoutActions->getSize());

// attributes
Attributes::Window->setPosition(OgreClient::Singleton->Config->UILayoutAttributes->getPosition());
Attributes::Window->setSize(OgreClient::Singleton->Config->UILayoutAttributes->getSize());

// mainbuttonsleft
MainButtonsLeft::Window->setPosition(OgreClient::Singleton->Config->UILayoutMainButtonsLeft->getPosition());
MainButtonsLeft::Window->setSize(OgreClient::Singleton->Config->UILayoutMainButtonsLeft->getSize());

// mainbuttonsright
MainButtonsRight::Window->setPosition(OgreClient::Singleton->Config->UILayoutMainButtonsRight->getPosition());
MainButtonsRight::Window->setSize(OgreClient::Singleton->Config->UILayoutMainButtonsRight->getSize());

// actionbuttons
ActionButtons::Window->setPosition(OgreClient::Singleton->Config->UILayoutActionButtons->getPosition());
ActionButtons::Window->setSize(OgreClient::Singleton->Config->UILayoutActionButtons->getSize());

// onlineplayers
OnlinePlayers::Window->setPosition(OgreClient::Singleton->Config->UILayoutOnlinePlayers->getPosition());
OnlinePlayers::Window->setSize(OgreClient::Singleton->Config->UILayoutOnlinePlayers->getSize());

// roomobjects
RoomObjects::Window->setPosition(OgreClient::Singleton->Config->UILayoutRoomObjects->getPosition());
RoomObjects::Window->setSize(OgreClient::Singleton->Config->UILayoutRoomObjects->getSize());
};

void ControllerUI::SaveLayoutToConfig()
{
if (!IsInitialized)
Expand Down
3 changes: 3 additions & 0 deletions Meridian59.Ogre.Client/ControllerUI.h
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ namespace Meridian59 { namespace Ogre
static void PasteFromClipboard(::CEGUI::Window* EditBox);
static void CopyToClipboard(::CEGUI::Window* EditBox, bool Cut);
static void SaveLayoutToConfig();
static void ResetLayout();
static void OnDataPropertyChanged(Object^ sender, PropertyChangedEventArgs^ e);
static void InjectMousePosition(float x, float y);
static void InjectMouseWheelChange(float z);
Expand Down Expand Up @@ -273,6 +274,7 @@ namespace Meridian59 { namespace Ogre
static ::CEGUI::Window* MTimeValue = nullptr;
static ::CEGUI::Window* RoomDescription = nullptr;
static ::CEGUI::Window* RoomValue = nullptr;
static ::CEGUI::PushButton* Reset = nullptr;
static ::CEGUI::PushButton* Lock = nullptr;

static void Initialize();
Expand Down Expand Up @@ -1645,6 +1647,7 @@ namespace Meridian59 { namespace Ogre
static bool OnMoodAngryClicked(const CEGUI::EventArgs& e);
static bool OnSafetyClicked(const CEGUI::EventArgs& e);
static bool OnPlayersClicked(const CEGUI::EventArgs& e);
static bool OnResetClicked(const CEGUI::EventArgs& e);
static bool OnLockClicked(const CEGUI::EventArgs& e);
static bool OnFPSClicked(const CEGUI::EventArgs& e);
};
Expand Down
27 changes: 19 additions & 8 deletions Meridian59.Ogre.Client/Language.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -51,13 +51,17 @@ const char* EN_TOOLTIPS_ONLINEPLAYER[] =

const char* EN_TOOLTIPS_STATUSBAR[] =
{
"Frames per second - Higher is better (more fluid Gameplay).", // 0
"Your Connectionspeed to the Server. Lower value means faster connection.", // 1
"The number of players online. Click me to show the list of online Players.", // 2
"Shows the actual mood of your character.", // 3
"If you change your safety to Off you can attack inocent players.", // 4
"Here you can see the actual Meridian 59 time.", // 5
"This shows you the actual room / area name, in which you actually are." // 6
"Frames per second - Higher is better (more fluid Gameplay).", // 0
"Your Connectionspeed to the Server. Lower value means faster connection.", // 1
"The number of players online. Click me to show the list of online Players.", // 2
"Shows the actual mood of your character.", // 3
"If you change your safety to Off you can attack inocent players.", // 4
"Here you can see the actual Meridian 59 time.", // 5
"This shows you the actual room / area name, in which you actually are.", // 6
"Interface is currently locked. \n You can't move or resize windows. \n Click to unlock.", // 7
"Interface is currently unlocked. \n You can move or resize windows. \n Click to lock.", // 8
"Click to restore the UI layout to its default.", // 9
"Unable to restore the UI layout to its default position while UI is locked." // 10
};

const char* EN_DESCRIPTIONS_STATUSBAR[] =
Expand Down Expand Up @@ -200,7 +204,14 @@ const char* DE_TOOLTIPS_STATUSBAR[] =
"Zeigt die aktuelle Stimmung Deines Characters an.", // 3
"Wenn Du Deine Sicherheit auf Aus stellst, kannst Du unschuldige Spieler angreifen", // 4
"Hier siehst Du die aktuelle Meridian 59 Zeit.", // 5
"Zeigt Dir den aktuellen Raum / Bereich an, indem Du Dich befindest." // 6
"Zeigt Dir den aktuellen Raum / Bereich an, indem Du Dich befindest.", // 6
"Das Layout der Benutzeroberfläche ist momentan geschützt. \n Elemente können nicht " \
"verschoben oder angepasst werden. \n Klicken, um das Layout freizugeben.", // 7
"Das Layout der Benutzeroberfläche ist momentan nicht geschützt. \n Elemente können " \
"verschoben und angepasst werden. \n Klicken, um das Layout zu schützen.", // 8
"Klicken, um das ursprüngliche Layout der Benutzeroberfläche wiederherzustellen.", // 9
"Das Layout der Benutzeroberfläche kann nicht zurückgesetzt werden, solange es " \
"geschützt ist." // 10
};

const char* DE_DESCRIPTIONS_STATUSBAR[] =
Expand Down
18 changes: 11 additions & 7 deletions Meridian59.Ogre.Client/Language.h
Original file line number Diff line number Diff line change
Expand Up @@ -75,13 +75,17 @@ namespace LANGSTR_TOOLTIP_STATUSBAR
{
enum Enum
{
FPS_TOOLTIP = 0,
PING_TOOLTIP = 1,
PLAYERCOUNT_TOOLTIP = 2,
MOOD_TOOLTIP = 3,
SAFETY_TOOLTIP = 4,
TIME_TOOLTIP = 5,
ROOM_TOOLTIP = 6
FPS_TOOLTIP = 0,
PING_TOOLTIP = 1,
PLAYERCOUNT_TOOLTIP = 2,
MOOD_TOOLTIP = 3,
SAFETY_TOOLTIP = 4,
TIME_TOOLTIP = 5,
ROOM_TOOLTIP = 6,
UILOCKED_TOOLTIP = 7,
UIUNLOCKED_TOOLTIP = 8,
UIRESET_TOOLTIP = 9,
UIRESETLOCKED_TOOLTIP = 10
};
}

Expand Down
5 changes: 5 additions & 0 deletions Meridian59.Ogre.Client/OgreClientConfig.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,11 @@
namespace Meridian59 { namespace Ogre
{
OgreClientConfig::OgreClientConfig() : Config()
{
ResetUIElements();
};

void OgreClientConfig::ResetUIElements()
{
UILayoutAvatar = new ::CEGUI::URect(
::CEGUI::Vector2<::CEGUI::UDim>(::CEGUI::UDim(0.0f, 2.0f), ::CEGUI::UDim(0.0f, 25.0f)),
Expand Down
1 change: 1 addition & 0 deletions Meridian59.Ogre.Client/OgreClientConfig.h
Original file line number Diff line number Diff line change
Expand Up @@ -302,5 +302,6 @@ namespace Meridian59 { namespace Ogre

ActionButtonList^ GetActionButtonSetByName(CLRString^ Name);
void AddOrUpdateActionButtonSet(ActionButtonList^ Buttons);
void ResetUIElements();
};
};};
32 changes: 30 additions & 2 deletions Meridian59.Ogre.Client/UIStatusBar.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ namespace Meridian59 { namespace Ogre
MTimeValue = static_cast<CEGUI::Window*>(Window->getChild(UI_NAME_STATUSBAR_MTIMEVAL));
RoomDescription = static_cast<CEGUI::Window*>(Window->getChild(UI_NAME_STATUSBAR_ROOMDESC));
RoomValue = static_cast<CEGUI::Window*>(Window->getChild(UI_NAME_STATUSBAR_ROOMVAL));
Reset = static_cast<CEGUI::PushButton*>(Window->getChild(UI_NAME_STATUSBAR_RESET));
Lock = static_cast<CEGUI::PushButton*>(Window->getChild(UI_NAME_STATUSBAR_LOCK));

// attach listener to Data
Expand Down Expand Up @@ -53,6 +54,9 @@ namespace Meridian59 { namespace Ogre
// subscribe players click
PlayersValue->subscribeEvent(CEGUI::PushButton::EventClicked, CEGUI::Event::Subscriber(UICallbacks::StatusBar::OnPlayersClicked));

// subscribe ui reset click
Reset->subscribeEvent(CEGUI::PushButton::EventClicked, CEGUI::Event::Subscriber(UICallbacks::StatusBar::OnResetClicked));

// subscribe ui lock click
Lock->subscribeEvent(CEGUI::PushButton::EventClicked, CEGUI::Event::Subscriber(UICallbacks::StatusBar::OnLockClicked));

Expand Down Expand Up @@ -81,11 +85,13 @@ namespace Meridian59 { namespace Ogre

void ControllerUI::StatusBar::ApplyLanguage()
{
const bool LOCKED = OgreClient::Singleton->Config->UILocked;

// Set Tooltips for selected language
FPSDescription->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::FPS_TOOLTIP));
FPSValue->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::FPS_TOOLTIP));
RTTDescription->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::FPS_TOOLTIP));
RTTValue->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::FPS_TOOLTIP));
RTTDescription->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::PING_TOOLTIP));
RTTValue->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::PING_TOOLTIP));
PlayersDescription->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::PLAYERCOUNT_TOOLTIP));
PlayersValue->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::PLAYERCOUNT_TOOLTIP));
MoodDescription->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::MOOD_TOOLTIP));
Expand All @@ -100,6 +106,19 @@ namespace Meridian59 { namespace Ogre
RoomDescription->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::ROOM_TOOLTIP));
RoomValue->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::ROOM_TOOLTIP));

if (LOCKED)
{
Lock->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::UILOCKED_TOOLTIP));
Reset->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::UIRESETLOCKED_TOOLTIP));
}
else
{
Lock->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::UIUNLOCKED_TOOLTIP));
Reset->setTooltipText(GetLangTooltipStatusBar(LANGSTR_TOOLTIP_STATUSBAR::UIRESET_TOOLTIP));
}

ControllerUI::StatusBar::Reset->setDisabled(LOCKED);
ControllerUI::ApplyLock();
// Set Descriptions for selected language
/*FPSDescription->setText(GetLangDescriptionStatusBar(LANGSTR_DESCRIPTION_STATUSBAR::FPS_DESCRIPTION));
RTTDescription->setText(GetLangDescriptionStatusBar(LANGSTR_DESCRIPTION_STATUSBAR::PING_DESCRIPTION));
Expand Down Expand Up @@ -242,12 +261,21 @@ namespace Meridian59 { namespace Ogre
return true;
};

bool UICallbacks::StatusBar::OnResetClicked(const CEGUI::EventArgs& e)
{
ControllerUI::ResetLayout();

return true;
};

bool UICallbacks::StatusBar::OnLockClicked(const CEGUI::EventArgs& e)
{
// flip lock in config
OgreClient::Singleton->Config->UILocked =
!OgreClient::Singleton->Config->UILocked;

ControllerUI::StatusBar::Reset->setDisabled(OgreClient::Singleton->Config->UILocked);

// update ui locking
ControllerUI::ApplyLock();

Expand Down
13 changes: 9 additions & 4 deletions Resources/ui/imagesets/TaharezLook.imageset
Original file line number Diff line number Diff line change
Expand Up @@ -185,10 +185,15 @@
<Image height="14" name="NewCloseButtonNormal" width="14" xPos="91" yPos="145" />
<Image height="14" name="NewCloseButtonHover" width="14" xPos="91" yPos="160" />
<Image height="14" name="NewCloseButtonPressed" width="14" xPos="91" yPos="160" />
<Image height="16" name="WindowLockButtonLockedNormal" width="16" xPos="58" yPos="144" />
<Image height="16" name="WindowLockButtonLockedHover" width="16" xPos="75" yPos="144" />
<Image height="16" name="WindowLockButtonUnlockedNormal" width="16" xPos="58" yPos="161" />
<Image height="16" name="WindowLockButtonUnlockedHover" width="16" xPos="75" yPos="161" />
<Image height="16" name="WindowLockButtonLockedNormal" width="16" xPos="41" yPos="144" />
<Image height="16" name="WindowLockButtonLockedHover" width="16" xPos="58" yPos="144" />
<Image height="16" name="WindowLockButtonLockedPushed" width="16" xPos="75" yPos="144" />
<Image height="16" name="WindowLockButtonUnlockedNormal" width="16" xPos="41" yPos="161" />
<Image height="16" name="WindowLockButtonUnlockedHover" width="16" xPos="58" yPos="161" />
<Image height="16" name="WindowLockButtonUnlockedPushed" width="16" xPos="75" yPos="161" />
<Image height="16" name="WindowResetButtonNormal" width="16" xPos="41" yPos="178" />
<Image height="16" name="WindowResetButtonHover" width="16" xPos="58" yPos="178" />
<Image height="16" name="WindowResetButtonPushed" width="16" xPos="75" yPos="178" />
<Image height="6" name="MultiLineEditboxTopLeft" width="6" xPos="41" yPos="78" />
<Image height="6" name="MultiLineEditboxTop" width="6" xPos="50" yPos="78" />
<Image height="6" name="MultiLineEditboxTopRight" width="6" xPos="59" yPos="78" />
Expand Down
Binary file modified Resources/ui/imagesets/TaharezLook.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
13 changes: 12 additions & 1 deletion Resources/ui/layouts/Meridian59.layout
Original file line number Diff line number Diff line change
Expand Up @@ -657,12 +657,23 @@
<Property name="Font" value="Berenika-8-Bold" />
</Window>

<!-- UI Layout Reset -->
<Window type="TaharezLook/ImageButton" name="StatusBar.Reset" >
<Property name="Area" value="{{1,-38},{1,-19},{1,-22},{1,-3}}" />
<Property name="NormalImage" value="TaharezLook/WindowResetButtonNormal" />
<Property name="HoverImage" value="TaharezLook/WindowResetButtonHover" />
<Property name="PushedImage" value="TaharezLook/WindowResetButtonPushed" />
<Property name="DisabledImage" value="TaharezLook/WindowResetButtonNormal" />
<Property name="TooltipText" value="Reset UI" />
<Property name="MouseCursorImage" value="TaharezLook/MouseHand" />
</Window>

<!-- UI Lock -->
<Window type="TaharezLook/ImageButton" name="StatusBar.Lock" >
<Property name="Area" value="{{1,-19},{1,-19},{1,-3},{1,-3}}" />
<Property name="NormalImage" value="TaharezLook/WindowLockButtonUnlockedNormal" />
<Property name="HoverImage" value="TaharezLook/WindowLockButtonUnlockedHover" />
<Property name="PushedImage" value="TaharezLook/WindowLockButtonUnlockedNormal" />
<Property name="PushedImage" value="TaharezLook/WindowLockButtonUnlockedPushed" />
<Property name="DisabledImage" value="TaharezLook/WindowLockButtonUnlockedNormal" />
<Property name="TooltipText" value="Lock UI" />
<Property name="MouseCursorImage" value="TaharezLook/MouseHand" />
Expand Down

0 comments on commit 4a3326c

Please sign in to comment.