Archive: Help !: Setting the MUI/UMUI Components page Drop List Box Size


Help !: Setting the MUI/UMUI Components page Drop List Box Size
Hi,

I would like to enquire on the following issue.

Currently with !insertmacro MUI_PAGE_COMPONENTS,

I am using the NSIS MUI Components page to enable users to select either a Full or Custom based Installation Types from the Components page Droplist box. Below the page Droplist box, there's a list box to display the components within each Installation Type.

The problem I am having is that the size of the DropList.

Using the InstType command, I have inserted three Installation Types.....'Full Application Installation Mode', 'Standard Application Installation Mode' and 'Minimum Application Installation Mode'

Since the Installation Type Texts above are long, a portion of each text is blocked by the fixed size of the Droplist box in the NSIS MUI Components Page

Is there a way/example that I could define/set the size of Installation Type Droplist box, to make it longer so that all of the Installation Type texts are clearly visible?

I tried looking into any guided from the NSIS forum or the NSIS documentation but to no avail. The closest I got was to the 'MUI_COMPONENTSPAGE_SMALLDESC' from one of the forum threads (http://forums.winamp.com/showthread....nent+page+size).
However, I am not sure if this is the solution nor I do not know how to use it.

If any further information regarding my problem is required, feel free to let me know.

Thank you for any available help or advice.


!define MUI_COMPONENTSPAGE_SMALLDESC
!insertmacro MUI_PAGE_COMPONENTS

It's in the Modern UI readme like all other MUI instructions!

-Stu


Hi,

Thanks Afrow for the info.

Actually, based on your example and that of the forum thread (http://forums.winamp.com/showthread....nent+page+size),
I have used the '!define MUI_COMPONENTSPAGE_SMALLDESC' command before the '!insertmacro MUI_PAGE_COMPONENTS' and it still does not work.

I have provided a sample code (taken from NSIS\Examples\Modern UI\HeaderBitmap.nsi example, modified to support 'InstType') of what I did below with a resultant attached screen shot as your reference,


!include "MUI.nsh"


;--------------------------------
; INSTALL TYPES (Where I placed the Installation Types)
;--------------------------------

InstType "Full Installation Mode"
InstType "Partial Application Installation Only Mode"
InstType "Mimimal Application Installation Only Mode"
InstType /NOCUSTOM

;Pages

!insertmacro MUI_PAGE_LICENSE "${NSISDIR}\Docs\Modern UI\License.txt"


!define MUI_COMPONENTSPAGE_SMALLDESC
!insertmacro MUI_PAGE_COMPONENTS


!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES

!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES


As seen from the codes above, I have specified three Installation Types which are the 'Full Installation Mode','Partial Application Installation Only Mode' and 'Mimimal Application Installation Only Mode'.

Below is a sample screen shot of the resultant InsType command;

[IMG]C:\sampleNSIS.JPG[/IMG]

From the sample screen shot as seen, the 'Full Installation Mode' Install Type is visible but the other Install Types are partially blocked (Missing 'Only Mode' text) due to the fixed size of the DropList box of the MUI Components page.

Is there a way on making the size of the DropList box of the components page wider so that all of the Install Type texts are clearly visible?

Thanks very much for any help on this issue.


Hi,

Apparently, I had some trouble pasting the screen shot.

Hence, I have attached the screen shot with this post as a reference to my query from the above posting.

Hope the attached screen shot helps in solving this issue.

Thanks


Try defining it before you insert any pages. Don't know why, that's just the way it is.


Hi,

It Works!. Fantastic!

You are right. The code '!define MUI_COMPONENTSPAGE_SMALLDESC' should be placed before the loading of all '!insertmacro' commands. Once I did that, I could see the full length of the Install Type texts, hence solving the problem.

It even works in an UMUI environment. (With the exception of the description box being positioned below the components box due to the size expansion of the droplist box)

That's great!

Thanks again very much for all the help and resources.

PS: I am not so sure on the reason why the defining should be done before inserting any pages. Any idea on this would be helpful (knowledge wise).


I guess it's because it's an Interface Setting as opposed to a Page Setting under the manual.

-Stu