About skin.ini in v7.0 Beta

Since we no longer maintain the wiki for version 7, but are working on new documentation (surprise, will follow soon), we want to familiarize you with a few new features of the skin.ini so that you can work with them.

We can also discuss specific skin questions about the v7.0 beta at this point, because we have moved some functions from the configuration to the skin.ini.

Basically: There is only one skin.ini.

So how do I do that with the settings for the light and the dark mode? :thinking:
Solution: I can store different profiles within the skin.ini.

Example: You can store completely different profiles under [Playlist.Light] or [Playlist.Dark] (and similarly for other parts like Player or Browser).

This allows you to create different colors for both Dark Mode and Light Mode, which take effect immediately when you switch between these modes.

One of the most exciting new features is that the skin can now be edited “live” through the built-in editor found in the mAirList/About menu:

Bildschirmfoto von Parallels Desktop (10-02-22, 13-53-22)

Hint: Keyboard shortcut for “Save” is Ctrl+S.

As soon as you save, most components apply the changes instantly, most notably the playlist, players and cartwall. (There are only a few things that still require a restart.)

Playlist

Let’s start with the skinning options of the new playlist GUI.

Sections

As usual, the code goes into the [Playlist] section (will be applied to all playlists, if you have more than one), or into [Playlist0] etc. to target a specific one (the first one has index 0).

As Uli pointed out above, all sections now also support a .Light or .Dark suffix, and then they will only be applied in Light or Dark Mode, respectively. For example, the settings from [Playlist0.Dark] will only be applied to the first playlist, and only in Dark Mode.

Debug Mode

The playlist has a special “debug mode” which, when enabled, displays frames and labels that will help you to deal with the new column grid. To enable the debug mode, just set Debug=on:

[Playlist]
Debug=on

This is how it looks like:

If you think that the debug text is to small, you can easily adjust its font size:

DebugFontSize=12

Columns

The playlist GUI uses a grid system with a number of columns to display the properties of the playlist item, like artist, duration etc.

Column IDs

Each column has an identifier which is used to adjust its properties. The available IDs are:

Player
Peakmeter
Timing
Time
Expand
Icon
Title
Attribute1
Attribute2
Attribute3
Attribute4
Attribute5
Attribute6
Attribute7
Attribute8
Ramp
Duration
EndType
Link

Please note that there is no separate column for “Artist”, but artist and title are both merged into the Title column. This is determined by the TitleDisplayMode setting, which determines whether only the title should be displayed, or artist and title, and if so, in which way:

Title
JoinTitleArtist
JoinArtistTitle
HSplitTitleArtist
HSplitArtistTitle
VSplitTitleArtist
VSplitArtistTitle

Title wil only display the title.

The Join values mean that title and artist (or the other way around) will be written next to each other with a separator (default: a centered dot) which can be customized through the following setting:

TitleSeparator=-

The HSplit values create two virtual columns of 50% width of the title column each.

The VSplit values will display title and artist above each other, similar to the Extended Display Mode in mAirList 6.x and below. You will also want to increase the RowHeight when you use this setting (see below).

Note that the TitleDisplayMode supports row selectors (see below), so it is e.g. possible to use a particular mode only for playling items:

PlayingTitleDisplayMode=VSplitTitleArtist

Attribute Columns

You can display up to 8 attributes (e.g. Album, Year) by using one of the attribute columns Attribute1 through Attribute8. You can assign an attribute to them like this:

Attribute1=Album
Attribute2=Year

Attribute columns which don’t have an attribute assigned will be hidden automatically.

Column Order and Visibility

You can select which columns should be used/displayed, and in which order, by using the Columns setting:

Columns=Player,Title,Duration

Columns not included in the list will be hidden.

If you want to go with the default column layout, but only hide individual columns, you can use the ColumnHidden setting along with their ID:

PeakmeterColumnVisible=off

Column Dimensions

The width of the columns can be adjusted with <ID>ColumnWidth:

PlayerColumnWidth=100

One column is always the “auto size column” which takes up all space not used by the other columns, and adjusts itself when you resize the window. By default, this is the Title column, but you could also choose to use a fixed width for the title and use another column for auto size:

TitleColumnWidth=300
AutoSizeColumn=Time

Columns are drawn with some extra space (padding) to the right and left, which can also be adjusted for each individual column:

TitleColumnPadding=20

Finally, you can choose whether the text should be aligned to the left, to the right, or centered in the column;

DurationColumnAlignment=Right

Note: This does not work for the Title column currently.

(to be continued)

Thanks guys it’s beginning to make sense with the new commands etc.
Yes, the new Skin.ini feature is great. :grinning:

1 Like

WOW. This is awesome! It makes editing the layout so much easier now…
Great job Torben!

2 Likes

@Torben
Is there also a possibily to comment out a line?

1 Like

@Torben it is only possible to use Debug and online changes after ctrl S with [playlist]?
Toolbar changes are only activ after restart mAirList!

Is it possible to add “Year” to the playlist Column? and what is the code for the column heights?

If you just scroll a little bit up Torben wrote " Attribute Columns

You can display up to 8 attributes (e.g. Album, Year) by using one of the attribute columns Attribute1 through Attribute8. You can assign an attribute to them like this:

Attribute1=Album
Attribute2=Year

Attribute columns which don’t have an attribute assigned will be hidden automatically. "

1 Like

Hello to all for 1st time. I need help about skin.ini in v.7
Is it possible to make changes to player fonts and color? So, I wanna change font type and most important - font color from black to white.

Can you tell me please is it possible to change the players A, B, C and D background color to be something like on the picture?