diff --git a/libpit/build.xml b/libpit/build.xml index e800404..916c7a6 100644 --- a/libpit/build.xml +++ b/libpit/build.xml @@ -1,4 +1,4 @@ - + diff --git a/libpit/project.properties b/libpit/project.properties index ed0e81b..7d449b9 100644 --- a/libpit/project.properties +++ b/libpit/project.properties @@ -1,11 +1,10 @@ -#Tue, 20 Apr 2010 13:49:35 -0500 -#Fri Feb 26 23:58:36 CST 2010 +#Sat Apr 24 17:08:00 CDT 2010 build.dir=build src.dir=src lib.shared.dir=../shared-libs test.dir=test -build.number=2 -expected.application.version=2.2.0 +build.number=8 +expected.application.version=2.3.0 lib.dir=lib release.dir=release release.jar=pit-${application.version}.jar diff --git a/libpit/release/pit-2.2.0.jar b/libpit/release/pit-2.2.0.jar deleted file mode 100644 index 86f8dae..0000000 Binary files a/libpit/release/pit-2.2.0.jar and /dev/null differ diff --git a/libpit/release/pit-2.3.0.jar b/libpit/release/pit-2.3.0.jar new file mode 100644 index 0000000..ba56089 Binary files /dev/null and b/libpit/release/pit-2.3.0.jar differ diff --git a/libpit/session.vim b/libpit/session.vim index b85c558..c9499bd 100644 --- a/libpit/session.vim +++ b/libpit/session.vim @@ -1,10 +1,11 @@ let SessionLoad = 1 if &cp | set nocp | endif +let s:cpo_save=&cpo +set cpo&vim +inoremap  nmap v :call Screen_Vars() nmap  vip vmap  "ry :call Send_to_Screen(@r) -let s:cpo_save=&cpo -set cpo&vim nmap gx NetrwBrowseX nnoremap NetrwBrowseX :call netrw#NetrwBrowseX(expand(""),0) let &cpo=s:cpo_save @@ -47,7 +48,8 @@ badd +1 test/com/jdbernard/pit/FileIssueTest.groovy badd +1 src/com/jdbernard/pit/FileProject.groovy badd +1 test/com/jdbernard/pit/FileProjectTest.groovy badd +1 src/com/jdbernard/pit/Status.groovy -badd +0 test/com/jdbernard/pit/StatusTest.groovy +badd +1 test/com/jdbernard/pit/StatusTest.groovy +badd +5 src/com/jdbernard/pit/FlatProjectView.groovy args build.xml edit build.xml set splitbelow splitright @@ -157,7 +159,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -261,7 +263,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -378,7 +380,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -482,7 +484,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -599,12 +601,12 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 37 - ((36 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt -37 -normal! 065l +1 +normal! 0 wincmd w argglobal edit test/com/jdbernard/pit/StatusTest.groovy @@ -703,7 +705,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -820,7 +822,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -924,7 +926,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -1041,7 +1043,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -1145,7 +1147,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -1262,7 +1264,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 9 - ((6 * winheight(0) + 28) / 57) +let s:l = 9 - ((8 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -1366,7 +1368,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -1483,7 +1485,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -1587,7 +1589,7 @@ setlocal nowinfixwidth setlocal wrap setlocal wrapmargin=0 silent! normal! zE -let s:l = 1 - ((0 * winheight(0) + 28) / 57) +let s:l = 1 - ((0 * winheight(0) + 39) / 79) if s:l < 1 | let s:l = 1 | endif exe s:l normal! zt @@ -1596,7 +1598,228 @@ normal! 0 wincmd w exe 'vert 1resize ' . ((&columns * 91 + 91) / 182) exe 'vert 2resize ' . ((&columns * 90 + 91) / 182) -tabnext 3 +tabedit src/com/jdbernard/pit/FlatProjectView.groovy +set splitbelow splitright +wincmd _ | wincmd | +vsplit +1wincmd h +wincmd w +set nosplitbelow +set nosplitright +wincmd t +set winheight=1 winwidth=1 +exe 'vert 1resize ' . ((&columns * 91 + 91) / 182) +exe 'vert 2resize ' . ((&columns * 90 + 91) / 182) +argglobal +setlocal keymap= +setlocal noarabic +setlocal autoindent +setlocal balloonexpr= +setlocal nobinary +setlocal bufhidden= +setlocal buflisted +setlocal buftype= +setlocal nocindent +setlocal cinkeys=0{,0},0),:,0#,!^F,o,O,e +setlocal cinoptions= +setlocal cinwords=if,else,while,do,for,switch +setlocal comments=s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:- +setlocal commentstring=/*%s*/ +setlocal complete=.,w,b,u,t,i +setlocal completefunc= +setlocal nocopyindent +setlocal nocursorcolumn +setlocal nocursorline +setlocal define= +setlocal dictionary= +setlocal nodiff +setlocal equalprg= +setlocal errorformat= +setlocal expandtab +if &filetype != 'groovy' +setlocal filetype=groovy +endif +setlocal foldcolumn=0 +setlocal foldenable +setlocal foldexpr=0 +setlocal foldignore=# +setlocal foldlevel=0 +setlocal foldmarker={{{,}}} +setlocal foldmethod=manual +setlocal foldminlines=1 +setlocal foldnestmax=20 +setlocal foldtext=foldtext() +setlocal formatexpr= +setlocal formatoptions=tcq +setlocal formatlistpat=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s* +setlocal grepprg= +setlocal iminsert=2 +setlocal imsearch=2 +setlocal include= +setlocal includeexpr= +setlocal indentexpr= +setlocal indentkeys=0{,0},:,0#,!^F,o,O,e +setlocal noinfercase +setlocal iskeyword=@,48-57,_,192-255 +setlocal keywordprg= +setlocal nolinebreak +setlocal nolisp +setlocal nolist +setlocal makeprg= +setlocal matchpairs=(:),{:},[:] +setlocal nomodeline +setlocal modifiable +setlocal nrformats=octal,hex +set number +setlocal number +setlocal numberwidth=4 +setlocal omnifunc= +setlocal path= +setlocal nopreserveindent +setlocal nopreviewwindow +setlocal quoteescape=\\ +setlocal noreadonly +setlocal norightleft +setlocal rightleftcmd=search +setlocal noscrollbind +setlocal shiftwidth=4 +setlocal noshortname +setlocal nosmartindent +setlocal softtabstop=0 +setlocal nospell +setlocal spellcapcheck=[.?!]\\_[\\])'\"\ \ ]\\+ +setlocal spellfile= +setlocal spelllang=en +setlocal statusline= +setlocal suffixesadd= +setlocal swapfile +setlocal synmaxcol=3000 +if &syntax != 'groovy' +setlocal syntax=groovy +endif +setlocal tabstop=4 +setlocal tags= +setlocal textwidth=0 +setlocal thesaurus= +setlocal nowinfixheight +setlocal nowinfixwidth +setlocal wrap +setlocal wrapmargin=0 +silent! normal! zE +let s:l = 26 - ((25 * winheight(0) + 39) / 79) +if s:l < 1 | let s:l = 1 | endif +exe s:l +normal! zt +26 +normal! 061l +wincmd w +argglobal +edit src/com/jdbernard/pit/Project.groovy +setlocal keymap= +setlocal noarabic +setlocal autoindent +setlocal balloonexpr= +setlocal nobinary +setlocal bufhidden= +setlocal buflisted +setlocal buftype= +setlocal nocindent +setlocal cinkeys=0{,0},0),:,0#,!^F,o,O,e +setlocal cinoptions= +setlocal cinwords=if,else,while,do,for,switch +setlocal comments=s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:- +setlocal commentstring=/*%s*/ +setlocal complete=.,w,b,u,t,i +setlocal completefunc= +setlocal nocopyindent +setlocal nocursorcolumn +setlocal nocursorline +setlocal define= +setlocal dictionary= +setlocal nodiff +setlocal equalprg= +setlocal errorformat= +setlocal expandtab +if &filetype != 'groovy' +setlocal filetype=groovy +endif +setlocal foldcolumn=0 +setlocal foldenable +setlocal foldexpr=0 +setlocal foldignore=# +setlocal foldlevel=0 +setlocal foldmarker={{{,}}} +setlocal foldmethod=manual +setlocal foldminlines=1 +setlocal foldnestmax=20 +setlocal foldtext=foldtext() +setlocal formatexpr= +setlocal formatoptions=tcq +setlocal formatlistpat=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s* +setlocal grepprg= +setlocal iminsert=2 +setlocal imsearch=2 +setlocal include= +setlocal includeexpr= +setlocal indentexpr= +setlocal indentkeys=0{,0},:,0#,!^F,o,O,e +setlocal noinfercase +setlocal iskeyword=@,48-57,_,192-255 +setlocal keywordprg= +setlocal nolinebreak +setlocal nolisp +setlocal nolist +setlocal makeprg= +setlocal matchpairs=(:),{:},[:] +setlocal nomodeline +setlocal modifiable +setlocal nrformats=octal,hex +set number +setlocal number +setlocal numberwidth=4 +setlocal omnifunc= +setlocal path= +setlocal nopreserveindent +setlocal nopreviewwindow +setlocal quoteescape=\\ +setlocal noreadonly +setlocal norightleft +setlocal rightleftcmd=search +setlocal noscrollbind +setlocal shiftwidth=4 +setlocal noshortname +setlocal nosmartindent +setlocal softtabstop=0 +setlocal nospell +setlocal spellcapcheck=[.?!]\\_[\\])'\"\ \ ]\\+ +setlocal spellfile= +setlocal spelllang=en +setlocal statusline= +setlocal suffixesadd= +setlocal swapfile +setlocal synmaxcol=3000 +if &syntax != 'groovy' +setlocal syntax=groovy +endif +setlocal tabstop=4 +setlocal tags= +setlocal textwidth=0 +setlocal thesaurus= +setlocal nowinfixheight +setlocal nowinfixwidth +setlocal wrap +setlocal wrapmargin=0 +silent! normal! zE +let s:l = 6 - ((5 * winheight(0) + 39) / 79) +if s:l < 1 | let s:l = 1 | endif +exe s:l +normal! zt +6 +normal! 04l +wincmd w +exe 'vert 1resize ' . ((&columns * 91 + 91) / 182) +exe 'vert 2resize ' . ((&columns * 90 + 91) / 182) +tabnext 8 if exists('s:wipebuf') silent exe 'bwipe ' . s:wipebuf endif diff --git a/libpit/src/com/jdbernard/pit/FlatProjectView.groovy b/libpit/src/com/jdbernard/pit/FlatProjectView.groovy new file mode 100644 index 0000000..b9ba09d --- /dev/null +++ b/libpit/src/com/jdbernard/pit/FlatProjectView.groovy @@ -0,0 +1,34 @@ +package com.jdbernard.pit; + +public class FlatProjectView extends Project { + + public FlatProjectView(String name) { super(name); } + + public Issue createNewIssue(Map options) { + throw new UnsupportedOperationException("The FlatProjectView is " + + "read-only.") + } + + public Project createNewProject(String name) { + throw new UnsupportedOperationException("The FlatProjectView is " + + "read-only.") + } + + public boolean delete() { return true }; + + public void eachIssue(Filter filter = null, Closure closure) { + def sorter = filter?.issueSorter ?: Filter.defaultIssueSorter + def gatherIssues + def gatheredIssues = [] + + gatherIssues = { project, f -> + project.eachIssue(f) { gatheredIssues << it }; + project.eachProject(f) { gatherIssues(it, f) } + } + for (p in projects.values()) + if (!filter || filter.accept(p)) + gatherIssues(p, filter) + + gatheredIssues.sort(sorter).each(closure) + } +} diff --git a/pit-swing/application.properties b/pit-swing/application.properties index f711479..0ad6a1e 100644 --- a/pit-swing/application.properties +++ b/pit-swing/application.properties @@ -1,8 +1,6 @@ #Do not edit app.griffon.* properties, they may change automatically. DO NOT put application configuration in here, it is not the right place! -#Tue, 20 Apr 2010 11:38:07 -0500 -#utf-8 -#Wed Mar 10 12:10:54 CST 2010 +#Sat Apr 24 11:16:28 CDT 2010 app.version=2.2.0 plugins.fest=0.3 -app.griffon.version=0.3 +app.griffon.version=0.2.1 app.name=pit-swing diff --git a/pit-swing/griffon-app/controllers/com/jdbernard/pit/swing/ProjectPanelController.groovy b/pit-swing/griffon-app/controllers/com/jdbernard/pit/swing/ProjectPanelController.groovy index f30d7ad..999cab4 100644 --- a/pit-swing/griffon-app/controllers/com/jdbernard/pit/swing/ProjectPanelController.groovy +++ b/pit-swing/griffon-app/controllers/com/jdbernard/pit/swing/ProjectPanelController.groovy @@ -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 -> diff --git a/pit-swing/griffon-app/views/com/jdbernard/pit/swing/ProjectPanelView.groovy b/pit-swing/griffon-app/views/com/jdbernard/pit/swing/ProjectPanelView.groovy index 1111509..e1e1893 100644 --- a/pit-swing/griffon-app/views/com/jdbernard/pit/swing/ProjectPanelView.groovy +++ b/pit-swing/griffon-app/views/com/jdbernard/pit/swing/ProjectPanelView.groovy @@ -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 diff --git a/pit-swing/lib/pit-2.1.0.jar b/pit-swing/lib/pit-2.1.0.jar deleted file mode 100644 index efc09d1..0000000 Binary files a/pit-swing/lib/pit-2.1.0.jar and /dev/null differ diff --git a/pit-swing/lib/pit-2.3.0.jar b/pit-swing/lib/pit-2.3.0.jar new file mode 100644 index 0000000..ba56089 Binary files /dev/null and b/pit-swing/lib/pit-2.3.0.jar differ diff --git a/pit-swing/pit-swing.iml b/pit-swing/pit-swing.iml index fcef4e2..1d1dd7e 100644 --- a/pit-swing/pit-swing.iml +++ b/pit-swing/pit-swing.iml @@ -28,7 +28,7 @@ - + diff --git a/pit-swing/pit-swing.ipr b/pit-swing/pit-swing.ipr index b51b7b8..4d14d8d 100644 --- a/pit-swing/pit-swing.ipr +++ b/pit-swing/pit-swing.ipr @@ -10,47 +10,53 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + diff --git a/release/lib/pit-2.2.0.jar b/release/lib/pit-2.2.0.jar deleted file mode 100644 index 86f8dae..0000000 Binary files a/release/lib/pit-2.2.0.jar and /dev/null differ diff --git a/release/lib/pit-2.3.0.jar b/release/lib/pit-2.3.0.jar new file mode 100644 index 0000000..ba56089 Binary files /dev/null and b/release/lib/pit-2.3.0.jar differ diff --git a/release/pit-swing-2.2.0.jar b/release/pit-swing-2.3.0.jar similarity index 59% rename from release/pit-swing-2.2.0.jar rename to release/pit-swing-2.3.0.jar index 8c5eb6f..ba32e1c 100644 Binary files a/release/pit-swing-2.2.0.jar and b/release/pit-swing-2.3.0.jar differ diff --git a/version.properties b/version.properties index 657369e..f54e06c 100644 --- a/version.properties +++ b/version.properties @@ -1 +1 @@ -application.version=2.2.0 +application.version=2.3.0