package com.aesthete.swingobjects;
import javax.swing.ToolTipManager;
import javax.swing.UIManager;
import org.apache.log4j.PropertyConfigurator;
import com.aesthete.swingobjects.fw.common.ErrorSeverity;
import com.aesthete.swingobjects.fw.common.SwingObjectsException;
import com.aesthete.swingobjects.fw.common.config.FormLayoutConfig;
import com.aesthete.swingobjects.fw.common.config.FrameFactory;
import com.aesthete.swingobjects.fw.common.config.Properties;
import com.aesthete.swingobjects.fw.common.config.SwingActionFactory;
import com.aesthete.swingobjects.fw.common.util.CommonUtilities;
import com.aesthete.swingobjects.ui.main.WaitDialog;
public class SwingObjectsInit {
public static void initSwingObjects(SwingObjectProperties props) throws SwingObjectsException {
try {
Properties.init(props.getErrorPropsFile(), props.getDefaultPropsFile(), props.getAppPropsFile(), props.getUserDefaultPropsFile());
FrameFactory.init(props.getFramesXmlFile());
SwingActionFactory.init(props.getSwingActionXmlFile());
if(CommonUtilities.isStringHasValue(props.getlAndFClass())) {
UIManager.setLookAndFeel(props.getlAndFClass());
}
if(props.getTooltipDismissDelay()!=-1) {
ToolTipManager.sharedInstance().setDismissDelay(props.getTooltipDismissDelay());
}
if(props.getTooltipInitialDelay()!=-1) {
ToolTipManager.sharedInstance().setDismissDelay(props.getTooltipInitialDelay());
}
PropertyConfigurator.configure(props.getLog4jFile());
FormLayoutConfig.init();
if(CommonUtilities.isStringHasValue(props.getWaitDialogGif())){
WaitDialog.setWaitDialogGif(props.getWaitDialogGif());
}
} catch (SwingObjectsException e) {
throw e;
} catch (Exception e) {
throw new SwingObjectsException("error.severe.SF001", ErrorSeverity.SEVERE, null, e, SwingObjectsInit.class);
}
}
}