Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

visual upgrade #3

Closed
sirinsidiator opened this issue Feb 14, 2015 · 19 comments
Closed

visual upgrade #3

sirinsidiator opened this issue Feb 14, 2015 · 19 comments
Milestone

Comments

@sirinsidiator
Copy link
Owner

As mentioned in http://www.esoui.com/forums/showthread.php?t=4269 we could change the default style a bit to mark a new era.
This should involve simple things like replacing the borders around the addon list and the settings panel with a vertical separator or a background. Nothing too fancy.

@votan73
Copy link
Contributor

votan73 commented Feb 18, 2015

I wonder, if it makes sense to use my version at all? Merlight's version includes my style changes and a scroll-box is better than a bunch of buttons.

@merlight
Copy link
Contributor

Couldn't test yesterday as I was downloading the update. I've cut the search filter box out of the main layout patch, will push it today ;) But as I said it doesn't touch any option controls, they will need to be amended subsequently for the wider panel.

For example checkbox controls will need some thought - having a lot of empty space to the right doesn't look very good, but moving the ON/OFF further could make it difficult for users to visually connect to the label. Not sure how to best handle that.

@votan73
Copy link
Contributor

votan73 commented Feb 18, 2015

There is an optical issue with other languages like german, too.
The label text is getting too long very quickly. My idea is to allow labels to expand vertically for one more row, using SetDimensionContraints instead of fixed height.
The modification from Garkin allows that for half-width controls, too.

The position of the on/off is like in the build-in settings and should left as it is, because otherwise it will somehow be different again. And the idea is to keep the Look-and-Feel of ESO as good as possible.

Edit 1:
Of course adjusted to the new width, but not right-aligned. Same as color-picker.

@merlight
Copy link
Contributor

Just thinking...

Consider controls that would need to change their height dynamically -- currently header and description allow changing the text upon refresh, and I once did that with checkboxes (filling current guild names in).

Then perhaps instead of computing anchorOffset from the heights of the two half-width controls, we could wrap them in a row control and leave auto-resize handle that. Well I'm not sure whether the containing scroll window will then notice it should grow extents, but as long as LAM only allows changes to controls during panel refresh, it can trigger scroll update explicitly.

@votan73
Copy link
Contributor

votan73 commented Feb 18, 2015

Using a row control sounds good to me.
Simply as part of CreateOptionsControls or as a full LAM control?

@votan73
Copy link
Contributor

votan73 commented Feb 18, 2015

The new width is 645?
What about using (parent width-21) left 2/3 right 1/3 for full width
and
(parent width-21) left 3/5 right 2/5 for half width

@merlight
Copy link
Contributor

Well I arrived at that somewhat arbitrarily :) I think at the beginning I had it 650 for testing, then I increased it so that the right scrollbar is near the edge of the background, but still on it (unlike the the builtin game options, I don't like how far to the right they have it). After some moving it was 660, and finally I took 15 away and gave it to the list. Don't ask me why I made them multiples of 15, I have no idea :D

I don't think the list needs to be any wider...

As for the row control for half-widths, I hacked it on top of my recursive CreateOptionsControls, see

merlight@af75641

I only tested submenus (which would be the type of control affected if the recursion was screwed) with Wykkyd's Toolbar, was the only addon I found using them.

@votan73
Copy link
Contributor

votan73 commented Feb 19, 2015

More addons with submenus:
FilterIt (http://www.esoui.com/downloads/info871-CirconiansFilterIt.html)
No, Thank You (http://www.esoui.com/downloads/info865-Nothankyou.html)
WaypointIt (http://www.esoui.com/portal.php?&id=139&pageid=31)

I was just wondering, if I read the source correct. So the width is 645. ok. :)
The formulars above are for the controls. Instead of using fixed values like 250 and 510:
(parent:GetWidth()-39) was that 510
and
(parent:GetWidth()-39)/2-5 was that 250
Using this formulars the controls will adjust to the width of nested submenus and to any new base width may coming.

This formulars may get part of LAMCreateControl ?
Something like LAMCreateControl:GetWidth(parent, isHalf) ?

@merlight
Copy link
Contributor

Yes, I think flexible controls will be great. Yesterday I even started coding fractional width support, so in addition to "full" or "half", you specify for example 0.4 and it would span 40% of the width available (which is parent_width - (widgets_on_row-1) * horizontal_spacing). It was a funny excersise but put that aside for now.

As for LAMCreateControl, I was also thinking we could put common functionality in there. In particular I had the "controlCounter" idiom in mind. We could do it similarly to ZO_Stats, they have a counter per templateName (or had, I'm not sure as my addon that uses it is kinda broken on pts).

Eventually I came to the conclusion that LAMCreateControl is not the right namespace for this stuff. I have a few ideas, will post them in another issue as they're not really related to "visual upgrade".

@sirinsidiator
Copy link
Owner Author

A few things that I noticed in #7.

  • Moving the author and version label below the addon title is not compatible with all addons. Maybe we can increase compatibility by adding some margin below it?
  • The right side of the addon settings panel has some empty space that is never used as far as I can see and also makes it look different from the ingame menus which do not have this.
  • The new filter box should be located on the top of the addon list for two reasons.
    1. When a user is looking for an addon the list shrinks towards the top and he then only needs to move the mouse for a few pixels to get there.
    2. The reset to defaults button - for addons that use it - looks like it is there to reset the filter box
  • While we are at it, we should also change the reset button to look and behave like the one used in the game menus.

Here are two images to illustrate the points mentioned:
screenshot_20150219_162657
screenshot_20150219_163600

@merlight
Copy link
Contributor

I've seen the problem with Srendarr, but then suddenly it started creating its own menu entry, and all other addons I installed appeared correctly below the label&info. Guess I'll need to check versions.

Ad search box: you're right it's too wide. And moving it up totally makes sense... but makes me sad because it's so ugly and up there will be impossible to ignore :D Clear button - sure we could add that, but no other edits in game have that. Esc works btw (a bit stupid I know, if you you have cursor in box, it clears, otherwise it closes menu).

@sirinsidiator
Copy link
Owner Author

I noticed that the ingame boxes don't offer a clear button and I hate it every time when I want to empty a filter. We are here to improve things though, so that should not stop us :D

You could make the search box toggle-able and hide it by default as long as there are less than 7 addons in the list ;)

@votan73
Copy link
Contributor

votan73 commented Feb 19, 2015

Maybe the search box could be modified as I did in Votan's Search Box?
Or does nobody like it?

The space on the right side is coming from the out-standing update of the controls using the new panel width.
The gap should be 645-549=96 units

@sirinsidiator sirinsidiator added this to the r18 milestone Feb 21, 2015
@merlight
Copy link
Contributor

searchbox v2, what do you think?
searchbox v2

@sirinsidiator
Copy link
Owner Author

This looks good. Very subtle. 👍
Not sure about the blue text though. White might fit better simply because the icon is also white.

@merlight
Copy link
Contributor

With the box shown, white text actually looks better. Once I hide the box, it looks out of place... which I should admit doesn't change much with blue text... "I know I'm out of place, but look, I'm also different color than anyone around!" Maybe keep the box while there's text, I don't know...

@votan73
Copy link
Contributor

votan73 commented Feb 23, 2015

Yes, keeping the box, if there is text, is a visual differences, indicating an active filter. I would try this.

@merlight
Copy link
Contributor

Do you think using the search input as a pattern is useful? Like fo+b[oa]*r matching "foooboar"? It works in the first version I posted, but there's an issue while typing ... b[o is not a valid pattern, it throws errors until you close the bracket. So we have two options:

  • literal string search - simple code, and because it matches each word you enter individually, mat lev would still match "Crafting Material Level Display"
  • search pattern - would have to check patterns with pcall and try to find the longest prefix that is a valid pattern; not impossible, but maybe overly complicated for this

@sirinsidiator
Copy link
Owner Author

I think a simple search with ZO_StringSearch is more than enough.
Most users won't use more than 50 addons and even addon addicts only have around 150.
Implementing search patterns sounds a bit over engineered for such a small list, especially when you consider that they will be only looking for one specific entry most of the time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants