⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 projectmanager.java

📁 java 调用windows的api
💻 JAVA
字号:
package org.jawin.browser.project;

import org.jawin.browser.util.FileUtilities;
import java.io.*;
import org.jawin.browser.log.Log;

/**
 * Manages a loaded project file and exposes it to the gui
 *
 * <p>Title: Jawin Code Generation GUI</p>
 * <p>Description: GUI for exploring type libraries and generating Java code</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Company: Open Source Incentive</p>
 *
 * @author Josh Passenger
 * @version 1.0
 */

public class ProjectManager
{
	private static ProjectManager instance = null;
	private ProjectParser parser = new ProjectParser();
	private Project currentProject = null;

	private ProjectManager()
	{
	}

	public static synchronized void initialize()
	{
		instance = new ProjectManager();
	}

	public static ProjectManager getInstance()
	{
		if (instance == null)
		{
			throw new IllegalStateException("ProjectManager.getInstance() ProjectManager was not initialized");
		}

		return instance;
	}

	public void setProject(Project newProject)
	{
		currentProject = newProject;
	}

	public void loadProject(String projectFile)
	{
		currentProject = parser.parseProjectFile(projectFile);
		currentProject.setProjectFile(projectFile);
	}

	public Project getCurrentProject()
	{
		return currentProject;
	}

	public void saveCurrentProject()
	{
		StringBuffer buffer = new StringBuffer();
		currentProject.toXML(buffer);

		try
		{
			FileUtilities.writeBytes(buffer.toString().getBytes(), currentProject.getProjectFile());
		}
		catch (IOException io)
		{
			Log.getInstance().exception("ProjectManager.saveCurrentProject() failed to save project file to: " + currentProject.getProjectFile(), io);
		}
	}

	public void saveCurrentProjectAs(String newLocation) throws IOException
	{
		currentProject.setProjectFile(newLocation);
		saveCurrentProject();
	}

	public void createProject(File newProjectFile)
	{
		Project project = new Project(newProjectFile.getAbsolutePath());
		setProject(project);
		saveCurrentProject();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -