SdDisplayTopics Example

InstallShield 2015 » InstallScript Language Reference

Project: This information applies to the following project types:

InstallScript
InstallScript MSI

/*--------------------------------------------------------------*\

*

* InstallShield Example Script

*

* Demonstrates the SdDisplayTopics function.

*

* This example script creates two lists: one for topic titles,

* one for topic descriptions.  It then calls SdDisplayTopics to

* display the topics and descriptions.

*

\*--------------------------------------------------------------*/

 

#define TITLE_TEXT "SdDisplayTopics Example"

#define MSG_TEXT "Custom setup options let you choose which parts of YourApp to install."

 

#define TOPIC1 "YourApp Program:"

#define TOPIC2 "YourApp Help:"

#define TOPIC3 "YourApp Examples:"

 

#define DESC1  "Includes all the files to run and write YourApp."

#define DESC2  "A computer-based tutorial demonstrating how to create programs using YourApp."

#define DESC3  "Several examples applications created using YourApp."

 

#include "Ifx.h"

 

function OnBegin()

    LIST listDescriptions, listTopics;

begin

 

    // Create a list for topics.

    listTopics = ListCreate (STRINGLIST);

 

    // Create a list for topic descriptions.

    listDescriptions = ListCreate (STRINGLIST);

 

    if (listTopics = LIST_NULL) || (listDescriptions = LIST_NULL) then

        // Report the error; then terminate.

        MessageBox("Unable to create lists.", INFORMATION);

        abort;

    endif;

 

    // Build the list of topics.

    ListAddString (listTopics, TOPIC1, AFTER);

    ListAddString (listTopics, TOPIC2, AFTER);

    ListAddString (listTopics, TOPIC3, AFTER);

 

    // Build the list of topic descriptions.

    ListAddString (listDescriptions, DESC1, AFTER);

    ListAddString (listDescriptions, DESC2, AFTER);

    ListAddString (listDescriptions, DESC3, AFTER);

 

    // Display the topics and descriptions.

    SdDisplayTopics (TITLE_TEXT, MSG_TEXT, listTopics, listDescriptions, 0);

 

    // Remove the lists from memory.

    ListDestroy (listTopics);

    ListDestroy (listDescriptions);

 

end;