void setActiveProject(Project project) {
		// clear state from previous project
		clearAll();

		// if no active project, provide default workspace panel
		if (project == null) {
			showInactiveWorkspace();
			activeProject = null;
			return;
		}

		// set the workspace up to know about changes made to it in the framework
		// first remove ourselves from the previous project's tool manager's listeners
		if (activeProject != null) {
			ToolManager tm = activeProject.getToolManager();
			tm.removeWorkspaceChangeListener(this);
		}

		// now add ourselves to the new active project's tool manager's listeners
		ToolManager toolManager = project.getToolManager();
		toolManager.addWorkspaceChangeListener(this);

		PluginTool[] tools = toolManager.getRunningTools();
		for (PluginTool tool : tools) {
			tool.addPropertyChangeListener(this);
		}

		setPanelEnabled(true);
		this.activeProject = project;

		// because of timing of state being restored on projects
		// being opened and created by the ProjectManager, we initialize
		// our workspace state manually whenever a project is opened
		initProjectState(activeProject);
	}
called whenever the active project changes or is being set for
the first time
@param project the project
Ghidra/Framework/Project/src/main/java/ghidra/framework/main/WorkspacePanel.java