NxSMSILoaderDlg plug-in: Difference between revisions

From NSIS Wiki
Jump to navigationJump to search
m (SF: Joelito -> Joel.)
m (Updated author links.)
Line 1: Line 1:
{|align=right
|<small>Author: [[{{ns:2}}:saivert|saivert]] ([[{{ns:3}}:saivert|talk]], [[{{ns:-1}}:Contributions/saivert|contrib]])</small>
|}
<br style="clear:both;">
== Download ==
== Download ==
http://inthegray.com/saivert/nsisdev/
http://inthegray.com/saivert/nsisdev/
Line 85: Line 89:
Based on Banner (written by [[user:brainsucker|brainsucker]] and [[user:kichik|kichik]]) and
Based on Banner (written by [[user:brainsucker|brainsucker]] and [[user:kichik|kichik]]) and
MSIBanner (written by [[User:Joel|Joel]]) plugin projects.
MSIBanner (written by [[User:Joel|Joel]]) plugin projects.
Page author: [[User:saivert|saivert]]

Revision as of 03:01, 30 April 2005

Author: saivert (talk, contrib)


Download

http://inthegray.com/saivert/nsisdev/

Overview

This plugin is my version of the Banner plugin. I decided to write it after I saw the horrible MSIBanner plugin which was supposed to look like the dialog displayed when Windows Installer packages are opened (.MSI extension). Ofcourse it didn't. That's why this plugin was born.

Hmm... that's enough crap. Here's the details:

Usage

The following fragment of script code uses all of the options/parameters that
NxS MSI LoaderDlg supports.
    NxSMSILoaderDlg::show /NOUNLOAD "Title of dialog" \
      /top "Top text" \
      /sub "Sub text (more info)" \
      /h 1 \
      /pos 43 \
      /max 100 \
	  /can
TIP: Copy & paste into your script and modify the parameters.
The parameters explained:
/top This sets the top text (to the right of the icon).
/sub Sets the subtext (above the progress bar control)
/h Shows/hides dialog from taskbar.
Requires a number: 1 means hide. 0 means show.
/pos Sets the progress bar position.
/max Sets the number of steps the progress bar control
has. Default value is 100.
/can Enables/disables Cancel button on dialog.
Requires a number: 1 = enable, 0 = disable.
Default is disabled.
NOTES:
Values for the /pos parameter range from 0 (zero) to 100 or the value
specified for the /max parameter.
Any other text passed on the stack (not one of the parameters) are used as
the title of the dialog. If you pass multiple strings not recognized as a
parameter the last one of these strings are used for the title. The rest
is ignored.
To update the dialog use e.g:
    NxSMSILoaderDlg::update /NOUNLOAD /top "Checking something..." /sub "78% complete" /pos 78
To get handle of the dialog (HWND) use:
    NxSMSILoaderDlg::getWindow /NOUNLOAD
	Pop $0 ; $0 now contains the handle to the dialog
TIP: You don't need to use getWindow in order to modify the text. Just use the
NxSMSILoaderDlg::Update function using the same syntax as NxSMSILoaderDlg::show.
To check if the Cancel button has been pressed use:
    NxSMSILoaderDlg::HasUserAborted /NOUNLOAD
	Pop $R0 ; $R0 now contains "1" if user clicked Cancel or "0" (zero) otherwise.
To destroy the dialog and free resources use:
    NxSMSILoaderDlg::destroy
See Example.nsi for an example.

Modern UI

This plugin doesn't behave differently when the installes uses the Modern UI add-on by Joost Verburg.

Custom UI

This plugin can not be modified except if you recompile it. The source code is should be included.

Some More Tricks

This plugin does not have any "tricks" like the Banner plugin has.

Credits

Based on Banner (written by brainsucker and kichik) and MSIBanner (written by Joel) plugin projects.