Suggestion from Julian that the Grid format should provide a way of allowing the user to set the size of the image and its containing box through course settings in the same way that Collapsed Topics does with it's settings.
I consider that this should be implemented in 2.5 as would not require a new database table and custom form.
NOTE: The requirements below are now 99% finished. If you have any comments to make then please do so by 10th October 2013 or sooner.
- Ability to set the width of the image container (icon) as a x in pixels and have the height calculated by a ratio. Widths of: 128, 192, 210, 256, 320, 384, 448, 512, 576, 640, 704 and 768. Ratios of: 3-2, 3-1, 3-3, 2-3, 1-3, 4-3 and 3-4.
- When uploading the maximum width size setting shall be applied to the image to avoid large file sizes in storage / downloading bandwidth.
- As a consequence of 1, up scaling the size of old courses will result in pixelation, therefore the user should re-upload an original copy of the image.
- Ability to change the border colour, radius (same as width and on / off setting) and width. Widths of: 1 - 10.
- Ability to change the image container (icon) background colour.
- Ability to change the current selected section colour with defaults.
- Ability to change the current selected image container (icon) colour with defaults.
- Width and ratio settings to be editable on the course settings form and stored in the config_plugin's table using existing 2.5+ core code.
- Default width, ratio, border colour, border radius on /off, border width, image container (icon) background colour settings to be made available to be set by the site administrator in 'Plugins -> Course formats'. Values to be transposed from current CSS style.
- Ability to reset to default the settings for the course in the 'Edit settings' of the course.
- Ability for the site administrator to reset to default the settings for all grid format courses.
- Ability for the site administrator to prevent setting changes through the implementation of custom capabilities in 'db/access.php' and checks in 'lib.php'. Two capabilities 'changeimagecontainersize' and 'changeimagecontainerstyle'.
Proposal video: http://www.youtube.com/watch?v=G1zHTEdfP9o