Thread Tools Display Modes
03/11/15, 05:03 PM   #1
Nolan Kotulan
 
Nolan Kotulan's Avatar
AddOn Author - Click to view addons
Join Date: Sep 2014
Posts: 17
Request: UI personnalization templates and others

Hi everybody,

I was wondering if it would be possible and/or if someone could think about making an or multiple addons with the fallowing features. I suppose (but maybe I'm wrong) most of these aren't very hard to do for someone who have some coding skills. I don't. I only have the "graphic" ones (I love to customize/replace UI elements).
  • An option to disable the "zoom on" when hovering inventory icons (could be part of Inventory Grid View?).
  • A folder with (blank) templates of the "new item" and "stolen item" ugly icons (particulary the red "stolen" one) so that we could customize/replace them. Something working like the Inventory Grid View Skin Template.
  • Same thing for the Bounty Meter. Would be great to have customizable templates in a folder to replace this ugly piece of cr#p...
If you can give the dimensions of each DDS file (as I don't know how to extract them myself), I could do the graphical part myself to include them in the addon(s). I would like to design them to perfectly fit the vanilla UI but in a less uglier way than these elements actualy are.

Anyone interested in doing a such thing?

Regards,
Nolan

PS.: Gonna upload soon my "Vanilla" Inventory Grid View skin here.

Last edited by Nolan Kotulan : 03/11/15 at 06:44 PM.
  Reply With Quote
03/11/15, 05:45 PM   #2
circonian
AddOn Author - Click to view addons
Join Date: May 2014
Posts: 613
Originally Posted by Nolan Kotulan View Post
An option to disable the "zoom on" when hovering inventory icons?).
This can be done by changing the m_downSize for the menuBar to match the m_normalSize. You'de just have to do it to every menu bar you want to stop the zoom effect on.
Lua Code:
  1. menuBar.m_object.m_downSize      = 40   -- size of icon when hoovered over --
  2. menuBar.m_object.m_normalSize  = 24 -- normal size of icon --

I created a quick addon that removes the zoom from all of the menu bars (that I could think of). They may still look like they get just a tiny bit larger, but its really just a highlight that outlines the icon when you mouse over it. The icons are the same size. Its in my dropbox and its called called: RemoveButtonZoom.zip

Originally Posted by Nolan Kotulan View Post
A folder with (blank) templates of the "new item" and "stolen item" ugly icons (particulary the red "stolen" one) so that we could customize/replace them. If you can give the dimensions of each DDS file (as I don't know how to extract them myself)
We can't extract the textures. You could take a screenshot & trace it thats what I did to create the shabby icons for FilterIt. I created a blank 64x64 pixels, and pasted the screenshot into it blowing it up to be just a little smaller than the 64x64 window. Traced it, then did whatever to fill it in.
  Reply With Quote
03/11/15, 06:07 PM   #3
Nolan Kotulan
 
Nolan Kotulan's Avatar
AddOn Author - Click to view addons
Join Date: Sep 2014
Posts: 17
Thanks for your answer.

About the "zoom" on UI elements, thanks for your explanations.
I tested it and yes, I confirm that it works, and it's great. I'll maybe* use it.

There's a weird thing however, there is one icon in the inventory on which it doesn't work: the "weapons" one.

*I said "maybe" because I realise just now that I misspoke by talking about "intentory icons".
This isn't what I was looking for in fact.

What I would like to is to disable the "zoom" on inventory items.

Originally Posted by circonian View Post
We can't extract the textures. You could take a screenshot & trace it thats what I did to create the shabby icons for FilterIt. I created a blank 64x64 pixels, and pasted the screenshot into it blowing it up to be just a little smaller than the 64x64 window. Traced it, then did whatever to fill it in.
About the textures, I don't want to extract them (though it would be easier to work on top of them than to design them from scratch), I just want to know what are their dimensions. I saw here that there could be a way to know them but I didn't really understand how to do it as it seems to be more of a coding thing.

Sure I could do like you said, or by trying and trying again until it fits perfectly (the problem with taking screenshots is that the displayed dimensions depend of the resolution). This is how I'll do if I have to but it would be easier and better if someone knows how to to be sure of the dimensions from the beginning. And I definitely need someone that could build the template folder and code to override these elements.

Last edited by Nolan Kotulan : 03/11/15 at 06:44 PM.
  Reply With Quote
03/11/15, 06:27 PM   #4
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 832
EDITED:

This zoom animation is done in function ZO_InventorySlot_OnMouseEnter(inventorySlot). However this function uses local table InventoryEnter, so it won't be easy to redefine it. You will need to copy function without animation part and whole InventoryEnter table.

I was thinking about changing endScale for each slot (buttonPart.animation:GetFirstAnimation():SetEndScale(1)), but animation will still be called at least for the first time.

Maybe redefining template, but is it possible without hooking ANIMATION_MANAGER? This seems to be too much "hacky":

XML part:
Lua Code:
  1. <GuiXml>
  2.     <Animations>
  3.         <AnimationTimeline name="New_IconSlotMouseOverAnimation">
  4.             <Animations>
  5.                 <ScaleAnimation duration="125" startScale="1" endScale="1"/>
  6.             </Animations>
  7.         </AnimationTimeline>
  8.     </Animations>
  9. </GuiXml>

Lua part:
Lua Code:
  1. local CreateTimelineFromVirtual_orig = ANIMATION_MANAGER.CreateTimelineFromVirtual
  2. ANIMATION_MANAGER.CreateTimelineFromVirtual = function(self, template, ...)
  3.     if template == "IconSlotMouseOverAnimation" then
  4.         template = "New_IconSlotMouseOverAnimation"
  5.     end
  6.     return CreateTimelineFromVirtual_orig(self, template, ...)
  7. end

Last edited by Garkin : 03/11/15 at 06:49 PM.
  Reply With Quote
03/11/15, 06:36 PM   #5
Nolan Kotulan
 
Nolan Kotulan's Avatar
AddOn Author - Click to view addons
Join Date: Sep 2014
Posts: 17
Originally Posted by Garkin View Post
...
OK, I'm gonna take a look on that tomorow as I'm really tired now.
I'm not too bad when it's about very (veryyyy) lightly editing some already existing code, so maybe... ;)

Thank you for your ansers guys,
I'll give you news about this.

Still looking for the templates thing though, if someone read this... ^^

Regards,
Nolan

Last edited by Nolan Kotulan : 03/11/15 at 06:43 PM.
  Reply With Quote
03/11/15, 07:01 PM   #6
Baertram
Super Moderator
 
Baertram's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 5,001
Did you try this addon here?
http://www.esoui.com/downloads/info4...ureViewer.html

Download, install, /realoadui, activate it in the settings -> Show window -> Press the refresh circle icon at the top left side of the addon window.

It displays the texture's width and height + filesize at the right.
You only have to search the path where the DDS textures are in manually.

The "new inventory" icon is in "/esoui/art/inventory/newitem_cion.dds" and is of 32 x 32 pixles size
I didn't search the other meter images so far, but maybe you will find them and it helps.

Originally Posted by Nolan Kotulan View Post
OK, I'm gonna take a look on that tomorow as I'm really tired now.
I'm not too bad when it's about very (veryyyy) lightly editing some already existing code, so maybe...

Thank you for your ansers guys,
I'll give you news about this.

Still looking for the templates thing though, if someone read this... ^^

Regards,
Nolan
  Reply With Quote
03/11/15, 07:03 PM   #7
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 832
Hm, another (untested) solution how to change zoom animation:

Lua Code:
  1. local function CreateSlotAnimation(inventorySlot)
  2.     if inventorySlot.slotControlType == "listSlot" then
  3.         local control = inventorySlot
  4.         local controlType = inventorySlot:GetType()
  5.  
  6.         if (controlType == CT_CONTROL and control.slotControlType == "listSlot") then
  7.             control = inventorySlot:GetNamedChild("MultiIcon") or inventorySlot:GetNamedChild("Button")
  8.         end
  9.  
  10.         if (control and not control.animation) then
  11.             control.animation = ANIMATION_MANAGER:CreateTimelineFromVirtual("IconSlotMouseOverAnimation", control)
  12.             control.animation:GetFirstAnimation():SetEndScale(1)
  13.         end
  14.     end
  15. end
  16. ZO_PreHook("ZO_InventorySlot_OnMouseEnter", CreateSlotAnimation)
  Reply With Quote

ESOUI » AddOns » AddOn Search/Requests » UI personnalization templates and others


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off