Abacus/src/org/nwapw/abacus/Abacus.java

47 lines
1.2 KiB
Java
Raw Normal View History

2017-07-24 10:04:00 -07:00
package org.nwapw.abacus;
import org.nwapw.abacus.plugin.PluginManager;
2017-07-28 11:17:54 -07:00
//import org.nwapw.abacus.plugin.StandardPlugin;
2017-07-28 15:18:23 -07:00
import org.nwapw.abacus.plugin.StandardPlugin;
import org.nwapw.abacus.window.Window;
import org.nwapw.abacus.plugin.ClassFinder;
import javax.swing.*;
2017-07-28 11:17:54 -07:00
import java.io.IOException;
import java.util.ArrayList;
2017-07-24 10:04:00 -07:00
public class Abacus {
private Window mainUi;
private PluginManager manager;
public Abacus(){
init();
}
private void init() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException | UnsupportedLookAndFeelException | IllegalAccessException e) {
e.printStackTrace();
}
manager = new PluginManager();
2017-07-28 15:18:23 -07:00
manager.addInstantiated(new StandardPlugin(manager));
2017-07-28 11:17:54 -07:00
try {
2017-07-28 14:21:43 -07:00
ClassFinder.loadJars("plugins")
.forEach(plugin -> manager.addClass(plugin));
} catch (IOException | ClassNotFoundException e) {
2017-07-28 11:17:54 -07:00
e.printStackTrace();
}
mainUi = new Window(manager);
mainUi.setVisible(true);
manager.load();
2017-07-28 11:17:54 -07:00
}
2017-07-24 10:04:00 -07:00
public static void main(String[] args){
new Abacus();
2017-07-24 10:04:00 -07:00
}
}