Script routine - utils.msgbox

Posted by Nick Gammon on Mon 28 Nov 2005 04:33 AM — 1 posts, 9,097 views.

Australia Forum Administrator #0

Version 3.70 of MUSHclient has a new Lua script function: utils.msgbox

This lets you display a Windows message box (very similar to MsgBox in VBscript). The intention is to allow you to display (in a small dialog box), information of an urgent nature, or ask a yes/no type question.

The calling sequence is:


result = utils.msgbox ( msg, title, type, icon, default )

The only required argument is the message text itself, the others default to their first possible value. The first 4 arguments are string arguments, the last is a number.

  1. msg = message to display (max 1000 characters)
  2. title = title of box - if nil, defaults to "MUSHclient" (max 100 characters)
  3. type = type of box (must be in lower case and exactly as shown here):
    • "ok" - The message box contains one push button: OK. This is the default.
    • "abortretryignore" - The message box contains three push buttons: Abort, Retry, and Ignore.
    • "okcancel" - The message box contains two push buttons: OK and Cancel.
    • "retrycancel" - The message box contains two push buttons: Retry and Cancel.
    • "yesno" - The message box contains two push buttons: Yes and No.
    • "yesnocancel" - The message box contains three push buttons: Yes, No, and Cancel.
  4. icon = type of icon:
    • "!" - An exclamation-point icon appears in the message box. This is the default.
    • "?" - A question-mark icon appears in the message box.
    • "i" - An icon consisting of a lowercase letter i in a circle appears in the message box.
    • "." - A stop-sign icon appears in the message box.
  5. default = default button (1 - 3)

    This sets the default button (the one with the focus) to be either button 1, 2 or 3. The default is the first button.

Return value = (string) yes, no, ok, retry, ignore, cancel, abort

Example:


print (utils.msgbox ("You are being paged", "Warning!", "ok", "!", 1)) --> ok
print (utils.msgbox ("You are being paged")) --> ok
print (utils.msgbox ("Go ahead?", "Question", "yesno", "?")) --> yes / no

msgbox example - 2K