On Friday 19 June 2009 03:44:07 am Yoshiki Ohshima wrote:
for each project blah in a defaultDirectory.
ProjectLoading loadFromDir: ....... In this project. run commands storeOnServerWithNoInteraction delete project.
I think you got the basics right. I think that QuickGuideMorph class>>convertProjectsWithBooksToSISSIn:to: does somewhat similar. ChangeSet>>clear clears it up, and instead of saving to something else, it have to be saved as a project. The last part may be a bit tricky.
Thanks Yoshiki. I did look into your armLengthCommand and QuickGuideMorph methods. Very neat. QCG only reads project files. I got so far: | dir p | dir := FileDirectory default dir fileNamesMatching: '*.pr' do: [ :f | p = ProjectLoading loadName: f stream: (dir readOnlyFileNamed: f) fromDirectory: dir withProjectView: nil. "In project p, do" create new changeset and make it current. ReleaseBuilder new cleanUpChanges. p okToChangeSilently; storeOnServerWithNoInteraction. p delete.
The part I am stuck is in "in project p, do". How can I send messages in a project context without entering it? I need the reverse of armsLengthCommand. Instead of running commands post exit, I need to run commands on entry.
Subbu