}
}
+ /**
+ * @param project
+ */
+ void projectInsertStarted(Project project) {
+ int projectIndex = getProjectIndex(project);
+ if (projectIndex == -1) {
+ return;
+ }
+ projectPane.setTitleAt(projectIndex, I18n.get("projectPanel.title.starting", project.getName()));
+ }
+
+ /**
+ * @param project
+ * @param totalBlocks
+ * @param requiredBlocks
+ * @param successfulBlocks
+ * @param failedBlocks
+ * @param fatallyFailedBlocks
+ * @param finalizedTotal
+ */
+ void projectInsertProgressed(Project project, int totalBlocks, int requiredBlocks, int successfulBlocks, int failedBlocks, int fatallyFailedBlocks, boolean finalizedTotal) {
+ int projectIndex = getProjectIndex(project);
+ if (projectIndex == -1) {
+ return;
+ }
+ projectPane.setTitleAt(projectIndex, I18n.get("projectPanel.title.progress", project.getName(), requiredBlocks / (double) successfulBlocks));
+ }
+
+ /**
+ * @param project
+ */
+ void projectInsertGeneratedURI(Project project) {
+ /* TODO - update panel. */
+ }
+
+ /**
+ * @param project
+ * @param success
+ */
+ void projectInsertFinished(Project project, boolean success) {
+ int projectIndex = getProjectIndex(project);
+ if (projectIndex == -1) {
+ return;
+ }
+ projectPane.setTitleAt(projectIndex, project.getName());
+ }
+
//
// PRIVATE METHODS
//
/**
+ * Returns the index of the project panel that contains the given project.
+ *
+ * @param project
+ * The wanted project
+ * @return The index of {@link #projectPane}’s tab that contains the given
+ * project, or <code>-1</code> if the project can not be found
+ */
+ private int getProjectIndex(Project project) {
+ int tabCount = projectPane.getTabCount();
+ for (int tabIndex = 1; tabIndex < tabCount; tabIndex++) {
+ Component tabComponent = projectPane.getComponentAt(tabIndex);
+ if (tabComponent instanceof ProjectPanel) {
+ if (((ProjectPanel) tabComponent).getProject() == project) {
+ return tabIndex;
+ }
+ }
+ }
+ return -1;
+ }
+
+ /**
* Initializes the window by creating all its components.
*/
private void initWindow() {