pjs/grendel/Main.java

74 строки
2.2 KiB
Java

/* -*- Mode: java; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Mozilla Public License
* Version 1.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS"
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
* the License for the specific language governing rights and limitations
* under the License.
*
* The Original Code is the Grendel mail/news client.
*
* The Initial Developer of the Original Code is Netscape Communications
* Corporation. Portions created by Netscape are Copyright (C) 1997
* Netscape Communications Corporation. All Rights Reserved.
*
* Contributors: Jeff Galyan <talisman@anamorphic.com>
* Joel York <yorkjoe@charlie.acc.iit.edu>
* Edwin Woudt <edwin@woudt.nl>
*/
package grendel;
import javax.swing.LookAndFeel;
import javax.swing.UIManager;
import grendel.prefs.base.UIPrefs;
import grendel.ui.MessageDisplayManager;
import grendel.ui.MultiMessageDisplayManager;
import grendel.ui.UnifiedMessageDisplayManager;
import grendel.ui.Splash;
/**
* This launches the Grendel GUI.
*/
public class Main {
static MessageDisplayManager fManager;
public static void main(String argv[]) {
Splash splash = new Splash();
UIPrefs prefs = UIPrefs.GetMaster();
UIManager.LookAndFeelInfo[] info = UIManager.getInstalledLookAndFeels();
LookAndFeel laf;
for (int i = 0; i < info.length; i++) {
try {
String name = info[i].getClassName();
Class c = Class.forName(name);
laf = (LookAndFeel)c.newInstance();
if (laf.getDescription().equals(prefs.getLookAndFeel())) {
UIManager.setLookAndFeel(laf);
}
} catch (Exception e){
}
}
if (prefs.getDisplayManager().equals("multi")) {
fManager = new MultiMessageDisplayManager();
} else {
fManager = new UnifiedMessageDisplayManager();
}
MessageDisplayManager.SetDefaultManager(fManager);
fManager.displayMaster();
splash.dispose();
}
}