Is there a need for a skin editor? (1 Viewer)

NoBugS

Portal Pro
August 22, 2009
91
54
Hoover, AL
Home Country
United States of America United States of America
sorry maybe I was not clear enough. properties.xml is in since Alpha 2. From my point of view the content is skin-specific. So I look for it in the Skin-folder (so for Blue3 it must be under Blue3).
If you guys think another place would be better I'm happy to change that.
 

NoBugS

Portal Pro
August 22, 2009
91
54
Hoover, AL
Home Country
United States of America United States of America
  • If you add a control and save the file, no <type> is stored -> will be treated as dummycontrol on the reload
is fixed.. Thanks

  • Don't use background.png as standard image becaus its quite large
I don't use any defaults in my SW. All settings come from the screen or from references.xml.
In the case where you add a new control all values come from references.xml. Thats where you have the image control defined with background.png as value. So just change references.xml to whatever you like and I will use that.

I wil take care of the rest (as good as I can *g*).

:D for the feedback
 

naich

MP Donator
  • Premium Supporter
  • August 6, 2007
    529
    25
    Home Country
    Germany Germany
    Hey NoBugs!

    It's the first time I've tested your editor ...

    awesome work ...

    Thx and keep up that great work


    cu
     

    NoBugS

    Portal Pro
    August 22, 2009
    91
    54
    Hoover, AL
    Home Country
    United States of America United States of America
    • Control Types - these are currently greyed out, so you cannot change the control type of an element. However, what I would like is to select the box for a control type and have a drop down box/list of all the control types that are supported for that control in that window, if possible. At least, I would like a list of all types.

    Mh, not sure why that would be needed!? What you suggest would allow you to change a button to an image or even a group for example. Don't see why that makes sense. These controls have nothing in common and all available properties are different. So my idea was: if you have a button but need an image, just delete the button and drag a new image to the screen (form the list of controls on the right side of a screen). Maybe that feature was not obvious to you?!
    That list also gives you all supported controls.

    Just let me know if I understood what you wanted and if I could solve it. :D
     

    Bleazle

    Portal Pro
    July 14, 2007
    1,122
    257
    Pukekohe
    Home Country
    New Zealand New Zealand
    @ NoBugS: Any ideas on how to solve these points? Dadeo did a great job of explaining what I meant in more detail :)

    ....
    How do you access 'layered' controls/elements? For example:
    1. Hidden/sliding Menus - which only display when the user presses a key as defined by a navigation control on the facade (e.g. onleft>2)
    2. Several layouts defined in one xml - e.g. Artist/Album/Genre Views (mymusicgenres.xml ), Main/Details View (movingpictures.xml) or Series/Season/Episode Views (TVSeries.xml)
    3. Different facades (i.e. List, Small Icons, Large Icons, Big Icons List, Filmstrip) - often controls vary based on the visibility conditions defined for each facade. For example a textscrollup type control for Plot may be defined differently for each facade within the same xml.
    Lftearme already raised this issue (re conditional visibility) in a previous post. My preferred solution would be like Bleazle suggested - to enable layers with a checkbox to overlay whichever layer you wish to view. For example, if I check/select Filmstrip Layer, I would see all the controls with 'facadeview.filmstrip' in a visibility control. Or in TV Series, if I select Episode Layer, I would see all the controls with Control.IsVisible(1239). If I check all visibility boxes I can compare elements in the different views and even copy and paste them between layers!

    As it is currently, how do I select elements that are 'behind' other elements? You can see what I mean in the attached screenshot, which is mymusicgenres.xml from the default Blue3 Skin. I am unable to even select many of those elements.......

    + I made some changes to BleazleWide BasicHome and clicked "Save" but nothing was saved and when I check out the XML view I only see "ERROR null". Seems like this is the only screen where this happens though.
     

    Dadeo

    Docs Group Manager
  • Premium Supporter
  • November 26, 2006
    5,340
    3,321
    Himalayas, India
    Home Country
    Canada Canada
    Mh, not sure why that would be needed!? What you suggest would allow you to change a button to an image or even a group for example. Don't see why that makes sense. These controls have nothing in common and all available properties are different. So my idea was: if you have a button but need an image, just delete the button and drag a new image to the screen (form the list of controls on the right side of a screen). Maybe that feature was not obvious to you?!

    Your example makes sense, but consider text - often I wish to change between a label, fadelabel, textbox, or textboxscrollup while preserving position, font, text color and other properties. As you say, I can just remove the control and input a new one. Perhaps when I get used to using the Skin Editor this will be easy to do.

    the list of controls on the right side of a screen... That list also gives you all supported controls.
    Not all xmls support all properties (though imo they should!), so that list of controls on the left, showing GUIproperties will not always be accurate for the window you are working in.

    My suggestion was twofold:
    1. That the list of Controls (GUiProperties) changes in each xml to show only the properties supported in that xml.
    2. When you select a control type (which you cannot do at present), a drop down box lists the control types available/supported for that control. Obviously this applies mostly to text controls. For example, in some cases, MP/Plugin only supports a label type on a text control, in other cases it only supports a fadelabel. Some images can be centered/zoomed, etc, some can not.

    You can add a control to the xml as much as you like, but if it is not supported, no data will display, or it will result in an error when you try to open the GUI window. However, this may be beyond the scope of a skin editor. Afaik there is no documentation anywhere about what properties are supported/unsupported in a window/xml. So I don't know how you would implement this. At present, most skinners just use trial and error, which is very time consuming, unless they have the ability to access and understand the MP code. I was just mentioning it, and asking if it was possible, because it is one of the huge problems in skinning.

    When using Text controls, I would also love a drop down box under Control Text - Text that shows me available properties in that xml.

    Another possible feature - when you select a Guiproperty from the list of controls - highlight all existing controls using that property. Not essential, but nice!

    Don't mind all my suggestions. I don't know what is easy/possible for you to do or not, so I am just giving you feedback hoping it might be relevant. Since I am just getting to know the editor some of my points may not be relevant.

    BTW there is a typo - "alignement' should be "alignment" in the Control Text Properties box and elsewhere.
     

    NoBugS

    Portal Pro
    August 22, 2009
    91
    54
    Hoover, AL
    Home Country
    United States of America United States of America
    just a quick comment to what is supported and what not.... I implemented a feature that uses .NET reflection to look inside the dlls and query for supported controls, etc. Its just not completely done. I want to use it as a guideline for the developer, not as a limitation. So I don't plan on limiting the controls but want to offer kind of a validation.

    For changing the control-type.... Don't think its possible since each control-type is implemented in a separate class so I would have to convert one class into an other (not possible like that). Maybe I can implement a feature that copies most of the properties from one control to another. That would ease the work but is too much for now.
     

    Dadeo

    Docs Group Manager
  • Premium Supporter
  • November 26, 2006
    5,340
    3,321
    Himalayas, India
    Home Country
    Canada Canada
    just a quick comment to what is supported and what not.... I implemented a feature that uses .NET reflection to look inside the dlls and query for supported controls, etc. Its just not completely done. I want to use it as a guideline for the developer, not as a limitation. So I don't plan on limiting the controls but want to offer kind of a validation.
    That would be perfect!

    For changing the control-type.... Don't think its possible since each control-type is implemented in a separate class so I would have to convert one class into an other (not possible like that). Maybe I can implement a feature that copies most of the properties from one control to another. That would ease the work but is too much for now.
    Copying the properties would certainly be adequate I think. No rush! I don't expect everything at once :)

    To be honest, I don't think this problem lies with the skin editor. IMO, it is more a problem of developers not always implementing the necessary classes/control types. I have posted elsewhere that I think there should be some guidelines or a 'kit' for developers to understand and implement at least the basic GuiProperties and controls required. For example #itemcount is not implemented in many windows, and I think it should be in all windows that have a facade (e.g. listcontrol), with all text types supported. When I ask developers about implementing it, sometimes they have never heard of it!
     

    kabiki

    Portal Member
    April 19, 2007
    10
    0
    Home Country
    Sweden Sweden
    Just took a testdrive with your new editor today and it really looks awesome and promising! I have a little feature request; Im using a Macbook Pro and it does not have a delete-button so my request is to be able to delete an object with either the backspace button on the keyboard or with the rightclick mousebutton and a submenu-alternative.

    Keep up the good job!

    // Kabiki
     

    Users who are viewing this thread

    Top Bottom