Added FlatProjectView. Used it to create an 'All Issues' project in pit-swing.
Solves issue #11: pit-swing: Add a default, "all-projects" view.
This commit is contained in:
@ -2,6 +2,7 @@ package com.jdbernard.pit.swing
|
||||
|
||||
import com.jdbernard.pit.Category
|
||||
import com.jdbernard.pit.FileProject
|
||||
import com.jdbernard.pit.FlatProjectView
|
||||
import com.jdbernard.pit.Issue
|
||||
import com.jdbernard.pit.Project
|
||||
import com.jdbernard.pit.Status
|
||||
@ -62,11 +63,13 @@ class ProjectPanelController {
|
||||
|
||||
void refreshProject() {
|
||||
if (model.rootProject) {
|
||||
view.projectTree.rootVisible = model.rootProject.issues.size()
|
||||
view.projectTree.model = new DefaultTreeModel(
|
||||
makeNodes(model.rootProject))
|
||||
def rootNode = new DefaultMutableTreeNode()
|
||||
def flatview = new FlatProjectView('All Issues')
|
||||
flatview.projects[(model.rootProject.name)] = model.rootProject
|
||||
rootNode.add(new DefaultMutableTreeNode(flatview))
|
||||
rootNode.add(makeNodes(model.rootProject))
|
||||
view.projectTree.model = new DefaultTreeModel(rootNode)
|
||||
} else {
|
||||
projectTree.rootVisible = false
|
||||
view.projectTree.model = new DefaultTreeModel(
|
||||
new DefaultMutableTreeNode())
|
||||
}
|
||||
@ -96,8 +99,7 @@ class ProjectPanelController {
|
||||
def newProject = project.createNewProject(name)
|
||||
|
||||
project.projects[(newProject.name)] = newProject
|
||||
view.projectTree.model = new DefaultTreeModel(
|
||||
makeNodes(model.rootProject))
|
||||
refreshProject()
|
||||
}
|
||||
|
||||
def deleteProject = { evt ->
|
||||
|
@ -3,6 +3,7 @@ package com.jdbernard.pit.swing
|
||||
import com.jdbernard.pit.Category
|
||||
import com.jdbernard.pit.Status
|
||||
import com.jdbernard.pit.Project
|
||||
import com.jdbernard.pit.FlatProjectView
|
||||
import java.awt.Font
|
||||
import java.awt.GridBagConstraints as GBC
|
||||
import java.awt.Point
|
||||
@ -138,12 +139,15 @@ panel = splitPane(orientation: JSplitPane.HORIZONTAL_SPLIT,
|
||||
model: bind(source: model, sourceProperty: 'rootProject',
|
||||
sourceValue: {
|
||||
if (model.rootProject) {
|
||||
projectTree.rootVisible =
|
||||
model.rootProject.issues.size()
|
||||
new DefaultTreeModel(controller.makeNodes(
|
||||
model.rootProject))
|
||||
def rootNode = new DefaultMutableTreeNode()
|
||||
def flatview = new FlatProjectView('All Issues')
|
||||
flatviews.projects[(model.rootProject.name)] =
|
||||
model.rootProject
|
||||
rootNode.add(new DefaultMutableTreeNode(flatview))
|
||||
rootNode.add(controller.makeNodes(model.rootProject))
|
||||
new DefaultTreeModel(rootNode)
|
||||
return rootNode
|
||||
} else {
|
||||
projectTree.rootVisible = false
|
||||
new DefaultTreeModel(new DefaultMutableTreeNode())
|
||||
}
|
||||
}),
|
||||
@ -160,6 +164,7 @@ panel = splitPane(orientation: JSplitPane.HORIZONTAL_SPLIT,
|
||||
evt.x, evt.y)
|
||||
}
|
||||
})
|
||||
projectTree.rootVisible = false
|
||||
|
||||
projectTree.selectionModel.selectionMode =
|
||||
TreeSelectionModel.SINGLE_TREE_SELECTION
|
||||
|
Reference in New Issue
Block a user