Archive: MUI_DESCRIPTION_TEXT awesome ... usable with non-modern scripts?


MUI_DESCRIPTION_TEXT awesome ... usable with non-modern scripts?
I am very impressed by the MUI_DESCRIPTION_TEXT capability of the Modern-UI. Nice job! :up:

<alert comment="mui newbie">
Still, I find myself having residual preferences for using non-modern scripts. I find there to be a lot of magic behind the macros, and I really don't understand them (no doubt need to get a stronger prescription for smart pills :igor: )

Is it possible to accomplish this capability with non-modern nsis scripts? I tried to look over the documentation, but don't know where to begin (haven't looked at MUI code ... which probably is where the answer would be). Is there such an example, or could it be put together?

Overall, the MUI rocks but this older newbie user of the mui finds it hard to use for semi-advanced features because of all the magical macros. (don't mean that as a criticism ... more a statement of my limitations)
</alert>


You're looking for the .onMouseOverSection callback.


I was aware of .onMouseOverSection (which I neglected to mention in the original post ... sorry), but I don't see how to use it such that the end-user can see the information.

My impression is that some window needs to be defined such that the LangString can be seen. That seems to be done more or less magically as part of the
!insertmacro MUI_DESCRIPTION_TEXT ${SectionId} $(DESC_SectionId)

Is there an example of how to use .onMouseOverSection in a non-mui script? That would be a very helpful and productive alternative to digging into the MUI code (or am I being too lazy).


I don't recall any non MUI example.

MUI_DESCRIPTION_TEXT just sets the text to a label in the dialog. There's no LangString magic as LangString is just like any other string. MUI_FUNCTION_DESCRIPTION_BEGIN starts .onMouseOverSection, MUI_DESCRIPTION_TEXT sets the text and MUI_FUNCTION_DESCRIPTION_END closes .onMouseOverSection. Read those three in Contrib\Modern UI\System.nsh.