001         package com.croftsoft.apps.collection;
002    
003         import java.awt.Dimension;
004    
005         import com.croftsoft.core.CroftSoftConstants;
006         import com.croftsoft.core.gui.multi.MultiApplet;
007         import com.croftsoft.core.lang.Pair;
008    
009         /*********************************************************************
010         * A collection of CroftSoft programs.
011         *
012         * @version
013         *   $Date: 2006/05/27 05:25:52 $
014         * @since
015         *   2002-02-25
016         * @author
017         *   <a href="https://www.croftsoft.com/">David Wallace Croft</a>
018         *********************************************************************/
019    
020         public final class  CroftSoftCollection
021           extends MultiApplet
022         //////////////////////////////////////////////////////////////////////
023         //////////////////////////////////////////////////////////////////////
024         {
025    
026         private static final String  VERSION = "$Date: 2006/05/27 05:25:52 $";
027    
028         private static final String  TITLE = "CroftSoft Collection";
029    
030         private static final String  APPLET_INFO
031           = "\n" + TITLE
032           + "\n" + "Version " + VERSION
033           + "\n" + CroftSoftConstants.COPYRIGHT
034           + "\n" + CroftSoftConstants.DEFAULT_LICENSE
035           + "\n" + CroftSoftConstants.HOME_PAGE
036           + "\n";
037    
038         private static final Pair [ ]  APPLET_PAIRS = {
039           new Pair (
040             "BackpropXOR",
041             "com.croftsoft.apps.backpropxor.BackpropXor" ),
042           new Pair (
043             "Basics",
044             "com.croftsoft.apps.ajgp.basics.BasicsExample" ),
045           new Pair (
046             "Clock",
047             "com.croftsoft.apps.clock.DigitalClock" ),
048           new Pair (
049             "Color",
050             "com.croftsoft.apps.color.ColorTest" ),
051           new Pair (
052             "Dice",
053             "com.croftsoft.apps.dice.Dice" ),
054           new Pair (
055             "Dodger",
056             "com.croftsoft.apps.dodger.Dodger" ),
057           new Pair (
058             "Evolve",
059             "com.croftsoft.apps.evolve.Evolve" ),
060           new Pair (
061             "Fraction",
062             "com.croftsoft.apps.fraction.Fraction" ),
063           new Pair (
064             "Insight",
065             "com.croftsoft.apps.insight.Insight" ),
066           new Pair (
067             "Mars",
068             "com.croftsoft.apps.mars.Main" ),
069           new Pair (
070             "MIDI",
071             "com.croftsoft.apps.midi.Main" ),
072           new Pair (
073             "Rainbow",
074             "com.croftsoft.apps.rainbow.Rainbow" ),
075           new Pair (
076             "Roadrunner",
077             "com.croftsoft.apps.road.Main" ),
078           new Pair (
079             "Scribble",
080             "com.croftsoft.apps.scribble.Scribble" ),
081           new Pair (
082             "Shooter",
083             "com.croftsoft.apps.shooter.Shooter" ),
084           new Pair (
085             "Sprite",
086             "com.croftsoft.apps.sprite.SpriteDemo" ),
087           new Pair (
088             "Tile",
089             "com.croftsoft.apps.tile.Tile" ),
090           new Pair (
091             "Zombie",
092             "com.croftsoft.apps.zombie.Zombie" ) };
093    
094         //////////////////////////////////////////////////////////////////////
095         // News panel constants
096         //////////////////////////////////////////////////////////////////////
097    
098         private static final String  NEWS_NAME
099           = MultiApplet.DEFAULT_NEWS_NAME;
100    
101         private static final String  NEWS_HTML
102           = "<html><body><pre>" + APPLET_INFO + "</pre></body></html>";
103    
104         private static final String  NEWS_PAGE
105           = "https://www.croftsoft.com/library/software/collection/news/";
106    
107         //////////////////////////////////////////////////////////////////////
108         // Frame constants
109         //////////////////////////////////////////////////////////////////////
110    
111         private static final String  FRAME_TITLE = TITLE;
112    
113         private static final String  FRAME_ICON_FILENAME
114           = CroftSoftConstants.FRAME_ICON_FILENAME;
115    
116         private static final Dimension  FRAME_SIZE = null;
117    
118         private static final String  SHUTDOWN_CONFIRMATION_PROMPT
119           = "Close " + TITLE + "?";
120    
121         //////////////////////////////////////////////////////////////////////
122         //////////////////////////////////////////////////////////////////////
123    
124         public static void  main ( String [ ]  args )
125         //////////////////////////////////////////////////////////////////////
126         {
127           System.out.println ( APPLET_INFO );
128    
129           MultiApplet.launch (
130             APPLET_INFO,
131             APPLET_PAIRS,
132             NEWS_NAME,
133             NEWS_HTML,
134             NEWS_PAGE,
135             FRAME_TITLE,
136             FRAME_ICON_FILENAME,
137             CroftSoftCollection.class.getClassLoader ( ),
138             FRAME_SIZE,
139             SHUTDOWN_CONFIRMATION_PROMPT );
140         }
141    
142         //////////////////////////////////////////////////////////////////////
143         //////////////////////////////////////////////////////////////////////
144    
145         public  CroftSoftCollection ( )
146         //////////////////////////////////////////////////////////////////////
147         {
148           super ( 
149             APPLET_INFO,
150             APPLET_PAIRS,
151             NEWS_NAME,
152             NEWS_HTML,
153             NEWS_PAGE );
154         }
155    
156         //////////////////////////////////////////////////////////////////////
157         //////////////////////////////////////////////////////////////////////
158         }