How To Create the Manager Pic Mod
These instructions are only really needed if you want to know the code used to create the mod or are using a custom skin that has a modified version of this panel, if you just want to use the mod the you'll want this page.
To create the mod for Football Manager 2019 you will need to extract the add manager profile panel xml file from the panels\human folder found inside the panels fmf file. If the skin you are using already has a copy of this file then it is best to use that one instead.
If you have extracted the add manager profile panel file you will need to copy it into the panels\human folder for the skin you are using. (If you are using the default skins you can just place it in the panels\human folder directly in your User Data Location instead of inside a skin) and if the folders don't exist just create them.
Now there are a few changes we need to make to that file, so open the file and locate the following section of text (Line #25):
<layout class="grid_layout_attachment" row_layout="20,30,24,20,30,24,20,30,24,1,22,30,160" mode="auto" vertical_gap="5" vertical_offset_start="35" vertical_offset_end="0">
That line tells the game how many rows to to display on the Add Manager Screen, so what we need to do is add a couple of extra rows for the Manager Picture items to fit in.
It doesn't really matter where you add the extra rows it will just affect where you have to add the later code and where the picture box will appear in game.
For example we are going to add the Manager Picture just above the Social Media boxes and in the above code the 1 value denotes a spacer, the 22 and 30 are for the Social Media rows and 160 is for the Experience box at the bottom.
And as the Social Media buttons are a good size we'll just copy their row sizes so the code now looks like this:
<layout class="grid_layout_attachment" row_layout="20,30,24,20,30,24,20,30,24,1,22,30,22,30,160" mode="auto" vertical_gap="5" vertical_offset_start="35" vertical_offset_end="0">
If you want different row heights then you can just input different numbers.
Now if you scroll down a bit you'll notice a load of code that looks like this:
<record>
<string id="column_layout" value="-1" />
<integer id="horizontal_offset" value="10" />
<integer id="horizontal_gap" value="0" />
</record>
<record>
<string id="column_layout" value="-1,-1" />
<integer id="horizontal_offset" value="10" />
<integer id="horizontal_gap" value="5" />
</record>
<record>
<string id="column_layout" value="-1" />
<integer id="horizontal_offset" value="10" />
<integer id="horizontal_gap" value="0" />
</record>
</list>
</layout>
This code tells the game how to layout the columns in each row, so again we need to add some code to position the Manager Picture code and again where you add the code will depend on where you want the Manager Picture option to appear, in this example we placed the code above the Social Media boxes so we need to add the new code above that.
When you scroll through the code each record corresponds to each row so just count them off to you get to the right place, in this case we want to enter the new code above the last three entries (shown above) which correspond to the Social Media buttons, header text and the Experience box and we need to add in two rows one for the header and another for the picture box and as the Social Media records already contain the code we need we can just copy them so that section should now look something like:
<record>
<string id="column_layout" value="-1" />
<integer id="horizontal_offset" value="10" />
<integer id="horizontal_gap" value="0" />
</record>
<record>
<string id="column_layout" value="-1,-1" />
<integer id="horizontal_offset" value="10" />
<integer id="horizontal_gap" value="5" />
</record>
<record>
<string id="column_layout" value="-1" />
<integer id="horizontal_offset" value="10" />
<integer id="horizontal_gap" value="0" />
</record>
<record>
<string id="column_layout" value="-1,-1" />
<integer id="horizontal_offset" value="10" />
<integer id="horizontal_gap" value="5" />
</record>
<record>
<string id="column_layout" value="-1" />
<integer id="horizontal_offset" value="10" />
<integer id="horizontal_gap" value="0" />
</record>
</list>
</layout>
On the above lines the string line tells the game how many columns you want on the row - you'll notice the top record only has one as we only have the header text, whilst the second record has two because we have two items to add to that row. The integer lines control the layout of the items but for the most part you shouldn't need to adjust them.
Now we have set up the table next we need to add the actual code to call the Manager Picture, if you scroll down you'll see the code that is used to display the various items and we now need to insert our Manager Picture code in here and where you put it depends on where you added the above code, in this case we are adding it above the Social Media stuff so scroll down until you need this section of code:
<widget class="spacer" />
<!-- encapsulate social media widgets to aid code driven removal whilst keeping layout intact -->
The widget is just the space (the 1 row) and the comment is the start of the Social Media code, so we want to add our code inbetween this two bits of code.
So just paste the following code into the gap between the above lines:
<!-- Manager Picture -->
<container> <!-- Title -->
<layout class="stick_to_sides_attachment" alignment="all" apply_to_children="true" inset="0" />
<widget class="label" alignment="left, centre_y" style="semi_bold">
<translation id="text" translation_id="292605" type="use" value="Manager Picture[COMMENT: add_manager_panel; select manager picture]" />
</widget>
</container>
<container> <!-- Button -->
<layout class="stick_to_sides_attachment" alignment="all" apply_to_children="true" inset="0" />
<widget class="icon_button" id="slpc" alignment="left, centre_y" icon="icons/actions/select picture" fixed="true" auto_size="vertical">
<translation id="text" translation_id="361086" type="use" value="Choose Picture[COMMENT: Minor wording change, meaing the same, us etop 10 matches; Add Manager Wizard - Button that lets the manager select a picture of himself for his ingame manager profile]" />
<event id="click_event" event_id="sepi" event_target="sepi" />
</widget>
</container>
<container> <!-- Text -->
<layout class="stick_to_sides_attachment" alignment="all" apply_to_children="true" inset="0" />
<widget class="text" alignment="left,centre_y" size="7" multiline="true">
<translation id="text" translation_id="292607" type="use" value="Select a picture to be used on your profile[COMMENT: add manager panel, option asking the user to select a picture for their profile]" />
</widget>
</container>
<!-- End Manager Picture -->
In that code the first container just contains the header text, the second is the important bit with the actual button, whilst the last one is just some explanation text. If you want you can play around with the alignments and font settings to suit your needs.
Redistribution Terms
You are free to post this content to your website provided:
1. It is not sold or behind a paywall.
2. You don't advertise it as being exclusive to your website.
3. My username and blog address are included: http://michaeltmurrayuk.blogspot.co.uk/
If you have any questions then the best place to ask them is in the Skinning Forums at the Official SIGames Forums where I can be found most days.