No announcement yet.

How do I replicate MUI_PAGE_DIRECTORY as a "MUI_PAGE_FILE"

  • Filter
  • Time
  • Show
Clear All
new posts

  • How do I replicate MUI_PAGE_DIRECTORY as a "MUI_PAGE_FILE"

    To expand, I can use MUI_PAGE_DIRECTORY to select directories, I would like to have a visually similar page that allows me to select files.

    I can't see anything that does it.

    I can't find anything about the source of MUI or MUI2 to scan for the values used, or any mention in the forum. (No doubt it is all over there ==> and I've just missed it completely! )

    I have eyeballed-up something that looks similar, but if the source, or even just the real size and location values and so forth used are around I'd like to know them!

    Here is my looks-a-bit-alike code:
    PHP Code:
    Function MagicFile
    !insertmacro MUI_HEADER_TEXT "Magic File" ""

    nsDialogs::Create 1018
        Pop $nsDlg

    ${NSD_CreateGroupBox070u 10034u "Magic File"
    Pop $0    ; And discard

    ${NSD_CreateFileRequest10u 85u 7012u $Magic.path
        Pop $Magic

    ${NSD_CreateBrowseButton7683u 2015u "Browse..."
    Pop $Magic.Button.control
    ${NSD_OnClick$Magic.Button.control BrowseMagic

    It works, but it isn't quite right.

  • #2
    I don't think there are any templates to use for appearance. Looks fine to me.

    You can use ${NSD_GetText} to get the text of the edit box, and ${NSD_SetText} to set it. You could even use ${NSD_OnChange} on the edit box to automatically get the text and store it whenever it changes.

    I've written a dialog in the past that fetches a file with an "open file" dialog.
    "Only a MouseHelmet will save you from a MouseTrap" -Jason Ross (Me)
    NSIS 3 POSIX Ninja
    Wiki Profile


    • #3
      Oh, I have the OnClick function, and all those bits, and it works fine, I just want to make
      my page look identical to the MUI_PAGE_DIRECTORY page.

      If the source code for MUI2 (or MUI) was around, I'd just blag it from from there, but I can't find the source.


      • #4
        IntOp $PostCount $PostCount + 1


        • #5
          Thank you!

          Now to resurrect my faded memories of .rc files.