diff --git a/src/GitS-Core.package/GSChangesToCommit.class/README.md b/src/GitS-Core.package/GSChangesToCommit.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/actionLabel.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/actionLabel.st new file mode 100644 index 00000000..e46e320a --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/actionLabel.st @@ -0,0 +1,3 @@ +accessing +actionLabel + ^ self isMerge ifTrue: ['Merge'] ifFalse: ['Commit'] \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/actionLabelInIngForm.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/actionLabelInIngForm.st new file mode 100644 index 00000000..6c629ab3 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/actionLabelInIngForm.st @@ -0,0 +1,3 @@ +accessing +actionLabelInIngForm + ^ self isMerge ifTrue: ['merging'] ifFalse: ['committing'] \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/alwaysMaterialize.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/alwaysMaterialize.st new file mode 100644 index 00000000..398898ce --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/alwaysMaterialize.st @@ -0,0 +1,3 @@ +accessing +alwaysMaterialize + self shouldAlwaysMaterialize: true. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/basicCommit.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/basicCommit.st new file mode 100644 index 00000000..740d0b70 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/basicCommit.st @@ -0,0 +1,6 @@ +actions-private +basicCommit + self workingCopy + commitChangeSets: self changeSets + message: self message + parents: self parents. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/basicRunNow.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/basicRunNow.st new file mode 100644 index 00000000..ba8b6054 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/basicRunNow.st @@ -0,0 +1,5 @@ +actions-private +basicRunNow + self + basicCommit; + materializeIfNecessary. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/beforeDialogOpen.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/beforeDialogOpen.st new file mode 100644 index 00000000..20a885e3 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/beforeDialogOpen.st @@ -0,0 +1,4 @@ +actions-private +beforeDialogOpen + super beforeDialogOpen. + self dialog message: self initialMessage. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/checkIsAtOriginalHeadCommit.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/checkIsAtOriginalHeadCommit.st new file mode 100644 index 00000000..262a4cfe --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/checkIsAtOriginalHeadCommit.st @@ -0,0 +1,5 @@ +checking +checkIsAtOriginalHeadCommit + self isAtOriginalHeadCommit ifTrue: [^ true]. + self inform: 'These changes are outdated. Aborting.'. + ^ false \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/checkIsMessageEmpty.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/checkIsMessageEmpty.st new file mode 100644 index 00000000..b1850bf0 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/checkIsMessageEmpty.st @@ -0,0 +1,5 @@ +checking +checkIsMessageEmpty + self isMessageEmpty ifFalse: [^ false]. + self inform: 'Empty message, aborting.'. + ^ true \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/commit.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/commit.st new file mode 100644 index 00000000..a76f6f64 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/commit.st @@ -0,0 +1,3 @@ +actions +commit + ^ self runAs: GSChangesToCommit \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/currentHeadCommit.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/currentHeadCommit.st new file mode 100644 index 00000000..629c769f --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/currentHeadCommit.st @@ -0,0 +1,3 @@ +accessing +currentHeadCommit + ^ self workingCopy headCommit \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/dialogAction.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/dialogAction.st new file mode 100644 index 00000000..7a8fdc19 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/dialogAction.st @@ -0,0 +1,6 @@ +actions-private +dialogAction + self checkIsAtOriginalHeadCommit ifFalse: [^ self]. + self checkHasConflicts ifTrue: [^ self]. + self checkIsMessageEmpty ifTrue: [^ self]. + self runNow. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/dialogClass.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/dialogClass.st new file mode 100644 index 00000000..84f405e8 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/dialogClass.st @@ -0,0 +1,3 @@ +accessing +dialogClass + ^ GSChangesDialogWithMessage \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/doAmend.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/doAmend.st new file mode 100644 index 00000000..7ea2ca4f --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/doAmend.st @@ -0,0 +1,3 @@ +configuring +doAmend + self parents: self originalHeadCommit parents. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/doMerge..st b/src/GitS-Core.package/GSChangesToCommit.class/instance/doMerge..st new file mode 100644 index 00000000..d6fb76be --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/doMerge..st @@ -0,0 +1,5 @@ +configuring +doMerge: aCommit + self + parents: {self originalHeadCommit. aCommit}; + alwaysMaterialize. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/doRegularCommit.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/doRegularCommit.st new file mode 100644 index 00000000..1d5403a6 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/doRegularCommit.st @@ -0,0 +1,3 @@ +configuring +doRegularCommit + self parents: {self originalHeadCommit}. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/initialMessage..st b/src/GitS-Core.package/GSChangesToCommit.class/instance/initialMessage..st new file mode 100644 index 00000000..e9d4ac1f --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/initialMessage..st @@ -0,0 +1,3 @@ +accessing +initialMessage: aString + initialMessage := aString \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/initialMessage.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/initialMessage.st new file mode 100644 index 00000000..00b6c37c --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/initialMessage.st @@ -0,0 +1,3 @@ +accessing +initialMessage + ^ initialMessage \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/initialize.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/initialize.st new file mode 100644 index 00000000..82c42661 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/initialize.st @@ -0,0 +1,4 @@ +initialize-release +initialize + super initialize. + self shouldAlwaysMaterialize: false. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/isAtOriginalHeadCommit.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/isAtOriginalHeadCommit.st new file mode 100644 index 00000000..09339f9e --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/isAtOriginalHeadCommit.st @@ -0,0 +1,3 @@ +testing +isAtOriginalHeadCommit + ^ self currentHeadCommit = self originalHeadCommit \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/isEmpty.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/isEmpty.st new file mode 100644 index 00000000..d02de06e --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/isEmpty.st @@ -0,0 +1,3 @@ +testing +isEmpty + ^ self isMerge not and: [super isEmpty] \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/isMerge.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/isMerge.st new file mode 100644 index 00000000..da5a6ae1 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/isMerge.st @@ -0,0 +1,3 @@ +testing +isMerge + ^ self parents size > 1 \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/isMessageEmpty.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/isMessageEmpty.st new file mode 100644 index 00000000..25ef53ca --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/isMessageEmpty.st @@ -0,0 +1,3 @@ +testing +isMessageEmpty + ^ self message isEmpty \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/materializeIfNecessary.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/materializeIfNecessary.st new file mode 100644 index 00000000..42fac0d8 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/materializeIfNecessary.st @@ -0,0 +1,3 @@ +actions-private +materializeIfNecessary + self shouldMaterialize ifTrue: [self basicMaterialize]. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/message.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/message.st new file mode 100644 index 00000000..43ffab1d --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/message.st @@ -0,0 +1,3 @@ +accessing +message + ^ self dialog ifNotNil: #message ifNil: [self initialMessage] \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/nothingToDoMessage.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/nothingToDoMessage.st new file mode 100644 index 00000000..0a7db904 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/nothingToDoMessage.st @@ -0,0 +1,3 @@ +accessing +nothingToDoMessage + ^ 'No changes to {1}.' format: {self actionLabel withFirstCharacterDownshifted} \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/originalHeadCommit..st b/src/GitS-Core.package/GSChangesToCommit.class/instance/originalHeadCommit..st new file mode 100644 index 00000000..2f7269ad --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/originalHeadCommit..st @@ -0,0 +1,3 @@ +accessing +originalHeadCommit: aCommit + originalHeadCommit := aCommit \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/originalHeadCommit.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/originalHeadCommit.st new file mode 100644 index 00000000..16121459 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/originalHeadCommit.st @@ -0,0 +1,3 @@ +accessing +originalHeadCommit + ^ originalHeadCommit \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/parents..st b/src/GitS-Core.package/GSChangesToCommit.class/instance/parents..st new file mode 100644 index 00000000..a44e18f5 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/parents..st @@ -0,0 +1,3 @@ +accessing +parents: aCollection + parents := aCollection \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/parents.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/parents.st new file mode 100644 index 00000000..048a0f6e --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/parents.st @@ -0,0 +1,3 @@ +accessing +parents + ^ parents \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/shouldAlwaysMaterialize..st b/src/GitS-Core.package/GSChangesToCommit.class/instance/shouldAlwaysMaterialize..st new file mode 100644 index 00000000..fe57b1f4 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/shouldAlwaysMaterialize..st @@ -0,0 +1,3 @@ +accessing +shouldAlwaysMaterialize: aBoolean + shouldAlwaysMaterialize := aBoolean \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/shouldAlwaysMaterialize.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/shouldAlwaysMaterialize.st new file mode 100644 index 00000000..f19ed933 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/shouldAlwaysMaterialize.st @@ -0,0 +1,3 @@ +accessing +shouldAlwaysMaterialize + ^ shouldAlwaysMaterialize \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/shouldMaterialize.st b/src/GitS-Core.package/GSChangesToCommit.class/instance/shouldMaterialize.st new file mode 100644 index 00000000..e409416e --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/shouldMaterialize.st @@ -0,0 +1,6 @@ +testing +shouldMaterialize + self shouldAlwaysMaterialize ifTrue: [^ true]. + self dialog ifNil: [^ false]. + self dialog wasEdited ifFalse: [^ false]. + ^ self confirm: 'You edited some changes. Do you wish to load them into the image?' \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/instance/workingCopy..st b/src/GitS-Core.package/GSChangesToCommit.class/instance/workingCopy..st new file mode 100644 index 00000000..ba1df7d7 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/instance/workingCopy..st @@ -0,0 +1,6 @@ +accessing +workingCopy: aWorkingCopy + super workingCopy: aWorkingCopy. + self + originalHeadCommit: self currentHeadCommit; + doRegularCommit. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToCommit.class/methodProperties.json b/src/GitS-Core.package/GSChangesToCommit.class/methodProperties.json new file mode 100644 index 00000000..1fb71ca4 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/methodProperties.json @@ -0,0 +1,37 @@ +{ + "class" : { + }, + "instance" : { + "actionLabel" : "mad 10/8/2024 21:21", + "actionLabelInIngForm" : "mad 10/8/2024 21:21", + "alwaysMaterialize" : "mad 10/8/2024 21:22", + "basicCommit" : "mad 10/8/2024 21:14", + "basicRunNow" : "mad 10/8/2024 21:14", + "beforeDialogOpen" : "mad 10/8/2024 21:28", + "checkIsAtOriginalHeadCommit" : "mad 10/8/2024 21:20", + "checkIsMessageEmpty" : "mad 10/8/2024 21:20", + "commit" : "mad 10/8/2024 21:22", + "currentHeadCommit" : "mad 10/8/2024 21:32", + "dialogAction" : "mad 10/8/2024 21:24", + "dialogClass" : "mad 10/9/2024 14:51", + "doAmend" : "mad 10/8/2024 21:31", + "doMerge:" : "mad 10/8/2024 21:31", + "doRegularCommit" : "mad 10/8/2024 21:31", + "initialMessage" : "mad 10/8/2024 21:15", + "initialMessage:" : "mad 10/8/2024 21:22", + "initialize" : "mad 10/8/2024 21:31", + "isAtOriginalHeadCommit" : "mad 10/8/2024 21:30", + "isEmpty" : "mad 10/8/2024 21:12", + "isMerge" : "mad 10/8/2024 21:13", + "isMessageEmpty" : "mad 10/9/2024 14:52", + "materializeIfNecessary" : "mad 10/8/2024 21:14", + "message" : "mad 10/8/2024 21:26", + "nothingToDoMessage" : "mad 10/8/2024 21:13", + "originalHeadCommit" : "mad 10/8/2024 21:16", + "originalHeadCommit:" : "mad 10/8/2024 21:22", + "parents" : "mad 10/8/2024 21:15", + "parents:" : "mad 10/8/2024 21:22", + "shouldAlwaysMaterialize" : "mad 10/8/2024 21:15", + "shouldAlwaysMaterialize:" : "mad 10/8/2024 21:22", + "shouldMaterialize" : "mad 10/8/2024 21:14", + "workingCopy:" : "mad 10/8/2024 21:17" } } diff --git a/src/GitS-Core.package/GSChangesToCommit.class/properties.json b/src/GitS-Core.package/GSChangesToCommit.class/properties.json new file mode 100644 index 00000000..33f50aba --- /dev/null +++ b/src/GitS-Core.package/GSChangesToCommit.class/properties.json @@ -0,0 +1,17 @@ +{ + "category" : "GitS-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + "initialMessage", + "parents", + "originalHeadCommit", + "shouldAlwaysMaterialize" ], + "name" : "GSChangesToCommit", + "pools" : [ + ], + "super" : "GSChangesToMaterialize", + "type" : "normal" } diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/README.md b/src/GitS-Core.package/GSChangesToMaterialize.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/actionLabel.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/actionLabel.st new file mode 100644 index 00000000..3e37f15e --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/actionLabel.st @@ -0,0 +1,3 @@ +accessing +actionLabel + ^ 'Load changes' \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/actionLabelInIngForm.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/actionLabelInIngForm.st new file mode 100644 index 00000000..5d9fe99f --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/actionLabelInIngForm.st @@ -0,0 +1,3 @@ +accessing +actionLabelInIngForm + ^ 'loading changes' \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/alwaysOpenDialog.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/alwaysOpenDialog.st new file mode 100644 index 00000000..6b3e7266 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/alwaysOpenDialog.st @@ -0,0 +1,3 @@ +accessing +alwaysOpenDialog + self shouldAlwaysOpenDialog: true. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/basicMaterialize.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/basicMaterialize.st new file mode 100644 index 00000000..a5c74696 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/basicMaterialize.st @@ -0,0 +1,3 @@ +actions-private +basicMaterialize + self workingCopy materializeChangeSets: self changeSets. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/basicRunNow.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/basicRunNow.st new file mode 100644 index 00000000..a37af548 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/basicRunNow.st @@ -0,0 +1,3 @@ +actions-private +basicRunNow + self basicMaterialize. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/beforeDialogOpen.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/beforeDialogOpen.st new file mode 100644 index 00000000..8ee67c50 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/beforeDialogOpen.st @@ -0,0 +1,4 @@ +actions-private +beforeDialogOpen + super beforeDialogOpen. + self dialog addButton: self actionLabel action: [self dialogAction]. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/checkHasConflicts.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/checkHasConflicts.st new file mode 100644 index 00000000..595366ab --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/checkHasConflicts.st @@ -0,0 +1,6 @@ +checking +checkHasConflicts + self hasConflicts ifFalse: [^ false]. + self inform: ('There are conflicts. Please resolve them before {1}. Aborting.' + format: {self actionLabelInIngForm}). + ^ true \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/closeButtonName.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/closeButtonName.st new file mode 100644 index 00000000..d276f71f --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/closeButtonName.st @@ -0,0 +1,3 @@ +accessing +closeButtonName + ^ 'Cancel' \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/dialogAction.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/dialogAction.st new file mode 100644 index 00000000..fd3153ef --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/dialogAction.st @@ -0,0 +1,4 @@ +actions-private +dialogAction + self checkHasConflicts ifTrue: [^ self]. + self runNow. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/hasConflicts.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/hasConflicts.st new file mode 100644 index 00000000..74263279 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/hasConflicts.st @@ -0,0 +1,3 @@ +testing +hasConflicts + ^ self changeSets anySatisfy: #hasConflicts \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/initialize.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/initialize.st new file mode 100644 index 00000000..03bafc16 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/initialize.st @@ -0,0 +1,4 @@ +initialize-release +initialize + super initialize. + self shouldAlwaysOpenDialog: false. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/materialize.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/materialize.st new file mode 100644 index 00000000..0f7ab879 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/materialize.st @@ -0,0 +1,3 @@ +actions +materialize + ^ self runAs: GSChangesToMaterialize \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/materializeNow.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/materializeNow.st new file mode 100644 index 00000000..eaa3651c --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/materializeNow.st @@ -0,0 +1,6 @@ +actions-private +materializeNow + self assert: self hasConflicts not. + ^ self + basicMaterialize; + done \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/nothingToDoMessage.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/nothingToDoMessage.st new file mode 100644 index 00000000..2006f7c7 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/nothingToDoMessage.st @@ -0,0 +1,3 @@ +accessing +nothingToDoMessage + ^ 'No changes to load.' \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/openDialogToMaterialize.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/openDialogToMaterialize.st new file mode 100644 index 00000000..21da3b6a --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/openDialogToMaterialize.st @@ -0,0 +1,3 @@ +actions-private +openDialogToMaterialize + ^ self openDialogWithAction: [self postDialogMaterialize] doing: [] \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/openDialogWithAction.doing..st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/openDialogWithAction.doing..st new file mode 100644 index 00000000..d215cbcc --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/openDialogWithAction.doing..st @@ -0,0 +1,3 @@ +actions-private +openDialogWithAction: aBlock doing: anotherBlock + ^ self openDialogDoing: [self dialog addButton: self actionLabel action: aBlock. anotherBlock value] \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/runIfNotEmpty.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/runIfNotEmpty.st new file mode 100644 index 00000000..be94d638 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/runIfNotEmpty.st @@ -0,0 +1,4 @@ +actions-private +runIfNotEmpty + self shouldOpenDialog ifTrue: [^ self openDialog]. + ^ self runNow \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/runNow.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/runNow.st new file mode 100644 index 00000000..80c7e54c --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/runNow.st @@ -0,0 +1,6 @@ +actions-private +runNow + ^ self + assert: self hasConflicts not; + basicRunNow; + done \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/shouldAlwaysOpenDialog..st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/shouldAlwaysOpenDialog..st new file mode 100644 index 00000000..8b60fa0c --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/shouldAlwaysOpenDialog..st @@ -0,0 +1,3 @@ +accessing +shouldAlwaysOpenDialog: aBoolean + shouldAlwaysOpenDialog := aBoolean \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/shouldAlwaysOpenDialog.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/shouldAlwaysOpenDialog.st new file mode 100644 index 00000000..fe8322e2 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/shouldAlwaysOpenDialog.st @@ -0,0 +1,3 @@ +accessing +shouldAlwaysOpenDialog + ^ shouldAlwaysOpenDialog \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/shouldOpenDialog.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/shouldOpenDialog.st new file mode 100644 index 00000000..b834f24b --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/shouldOpenDialog.st @@ -0,0 +1,4 @@ +testing +shouldOpenDialog + self shouldAlwaysOpenDialog ifTrue: [^ true]. + ^ GSChangeSet anyIncludesConflicts: self changeSets \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/windowTitle.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/windowTitle.st new file mode 100644 index 00000000..582382e5 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/windowTitle.st @@ -0,0 +1,5 @@ +accessing +windowTitle + ^ self shouldAlwaysOpenDialog + ifTrue: [self basicWindowTitle] + ifFalse: ['Resolve conflicts to ', self basicWindowTitle withFirstCharacterDownshifted] \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/workingCopy..st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/workingCopy..st new file mode 100644 index 00000000..facb3a85 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/workingCopy..st @@ -0,0 +1,3 @@ +accessing +workingCopy: aWorkingCopy + workingCopy := aWorkingCopy \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/instance/workingCopy.st b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/workingCopy.st new file mode 100644 index 00000000..685b5524 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/instance/workingCopy.st @@ -0,0 +1,3 @@ +accessing +workingCopy + ^ workingCopy \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/methodProperties.json b/src/GitS-Core.package/GSChangesToMaterialize.class/methodProperties.json new file mode 100644 index 00000000..545df374 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/methodProperties.json @@ -0,0 +1,28 @@ +{ + "class" : { + }, + "instance" : { + "actionLabel" : "mad 10/8/2024 20:50", + "actionLabelInIngForm" : "mad 10/8/2024 21:21", + "alwaysOpenDialog" : "mad 10/8/2024 20:23", + "basicMaterialize" : "mad 10/8/2024 20:23", + "basicRunNow" : "mad 10/8/2024 21:11", + "beforeDialogOpen" : "mad 10/8/2024 20:57", + "checkHasConflicts" : "mad 10/8/2024 21:30", + "closeButtonName" : "mad 10/8/2024 20:49", + "dialogAction" : "mad 10/8/2024 21:23", + "hasConflicts" : "mad 10/8/2024 20:24", + "initialize" : "mad 10/8/2024 20:24", + "materialize" : "mad 10/8/2024 21:04", + "materializeNow" : "mad 10/8/2024 20:25", + "nothingToDoMessage" : "mad 10/8/2024 21:00", + "openDialogToMaterialize" : "mad 10/8/2024 20:53", + "openDialogWithAction:doing:" : "mad 10/8/2024 20:53", + "runIfNotEmpty" : "mad 10/8/2024 21:10", + "runNow" : "mad 10/9/2024 14:52", + "shouldAlwaysOpenDialog" : "mad 10/8/2024 20:26", + "shouldAlwaysOpenDialog:" : "mad 10/8/2024 20:26", + "shouldOpenDialog" : "mad 10/8/2024 20:26", + "windowTitle" : "mad 10/9/2024 14:51", + "workingCopy" : "mad 10/8/2024 20:27", + "workingCopy:" : "mad 10/8/2024 21:17" } } diff --git a/src/GitS-Core.package/GSChangesToMaterialize.class/properties.json b/src/GitS-Core.package/GSChangesToMaterialize.class/properties.json new file mode 100644 index 00000000..fefb9394 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToMaterialize.class/properties.json @@ -0,0 +1,14 @@ +{ + "category": "GitS-Core", + "classinstvars": [], + "classvars": [], + "commentStamp": "", + "instvars": [ + "workingCopy", + "shouldAlwaysOpenDialog" + ], + "name": "GSChangesToMaterialize", + "pools": [], + "super": "GSChangesToShow", + "type": "normal" +} \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/README.md b/src/GitS-Core.package/GSChangesToShow.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/basicWindowTitle.st b/src/GitS-Core.package/GSChangesToShow.class/instance/basicWindowTitle.st new file mode 100644 index 00000000..999c2b86 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/basicWindowTitle.st @@ -0,0 +1,3 @@ +accessing +basicWindowTitle + ^ windowTitle \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/beforeDialogOpen.st b/src/GitS-Core.package/GSChangesToShow.class/instance/beforeDialogOpen.st new file mode 100644 index 00000000..fd37cc9b --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/beforeDialogOpen.st @@ -0,0 +1,3 @@ +actions-private +beforeDialogOpen + "do nothing" \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/changeSets..st b/src/GitS-Core.package/GSChangesToShow.class/instance/changeSets..st new file mode 100644 index 00000000..6fcfedd1 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/changeSets..st @@ -0,0 +1,3 @@ +accessing +changeSets: aCollection + changeSets := aCollection \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/changeSets.st b/src/GitS-Core.package/GSChangesToShow.class/instance/changeSets.st new file mode 100644 index 00000000..967e1f5c --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/changeSets.st @@ -0,0 +1,3 @@ +accessing +changeSets + ^ changeSets \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/closeButtonName.st b/src/GitS-Core.package/GSChangesToShow.class/instance/closeButtonName.st new file mode 100644 index 00000000..b8f4bfad --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/closeButtonName.st @@ -0,0 +1,3 @@ +accessing +closeButtonName + ^ 'Close' \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/dialog..st b/src/GitS-Core.package/GSChangesToShow.class/instance/dialog..st new file mode 100644 index 00000000..f1cee2c4 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/dialog..st @@ -0,0 +1,3 @@ +accessing +dialog: aChangesDialog + dialog := aChangesDialog \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/dialog.st b/src/GitS-Core.package/GSChangesToShow.class/instance/dialog.st new file mode 100644 index 00000000..78facdf5 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/dialog.st @@ -0,0 +1,3 @@ +accessing +dialog + ^ dialog \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/dialogClass.st b/src/GitS-Core.package/GSChangesToShow.class/instance/dialogClass.st new file mode 100644 index 00000000..7f757a56 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/dialogClass.st @@ -0,0 +1,3 @@ +accessing +dialogClass + ^ GSChangesDialog \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/done.st b/src/GitS-Core.package/GSChangesToShow.class/instance/done.st new file mode 100644 index 00000000..0ab2db9a --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/done.st @@ -0,0 +1,5 @@ +actions-private +done + self dialog ifNotNil: #close. + self promise resolveWith: nil. + ^ self promise \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/ensureOfClass.ifConverted..st b/src/GitS-Core.package/GSChangesToShow.class/instance/ensureOfClass.ifConverted..st new file mode 100644 index 00000000..bda0f37c --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/ensureOfClass.ifConverted..st @@ -0,0 +1,4 @@ +converting +ensureOfClass: aClass ifConverted: aBlock + self class = aClass ifTrue: [^ self]. + aBlock value: (self as: aClass). \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/isEmpty.st b/src/GitS-Core.package/GSChangesToShow.class/instance/isEmpty.st new file mode 100644 index 00000000..821e2c5c --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/isEmpty.st @@ -0,0 +1,3 @@ +testing +isEmpty + ^ GSChangeSet allEmpty: self changeSets \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/nothingToDo.st b/src/GitS-Core.package/GSChangesToShow.class/instance/nothingToDo.st new file mode 100644 index 00000000..fe0aa5c1 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/nothingToDo.st @@ -0,0 +1,4 @@ +actions-private +nothingToDo + self inform: self nothingToDoMessage. + ^ self done \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/nothingToDoMessage.st b/src/GitS-Core.package/GSChangesToShow.class/instance/nothingToDoMessage.st new file mode 100644 index 00000000..adb7dba4 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/nothingToDoMessage.st @@ -0,0 +1,3 @@ +accessing +nothingToDoMessage + ^ 'No changes to show.' \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/openDialog.st b/src/GitS-Core.package/GSChangesToShow.class/instance/openDialog.st new file mode 100644 index 00000000..fcd1ed4a --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/openDialog.st @@ -0,0 +1,9 @@ +actions-private +openDialog + self dialog: (self dialogClass onChangeSets: self changeSets). + self dialog + windowTitle: self windowTitle; + addCloseButton: self closeButtonName. + self beforeDialogOpen. + self dialog open. + ^ self promise \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/openDialogDoing..st b/src/GitS-Core.package/GSChangesToShow.class/instance/openDialogDoing..st new file mode 100644 index 00000000..f9de5cb5 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/openDialogDoing..st @@ -0,0 +1,9 @@ +actions-private +openDialogDoing: aBlock + self dialog: (self dialogClass onChangeSets: self changeSets). + self dialog + windowTitle: self windowTitle; + addCloseButton: self closeButtonName. + aBlock value. + self dialog open. + ^ self promise \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/prefixWindowTitle..st b/src/GitS-Core.package/GSChangesToShow.class/instance/prefixWindowTitle..st new file mode 100644 index 00000000..72f60f43 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/prefixWindowTitle..st @@ -0,0 +1,3 @@ +accessing +prefixWindowTitle: aString + self windowTitle: aString, self basicWindowTitle. \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/promise.st b/src/GitS-Core.package/GSChangesToShow.class/instance/promise.st new file mode 100644 index 00000000..7e7accea --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/promise.st @@ -0,0 +1,3 @@ +accessing +promise + ^ promise ifNil: [promise := Promise new] \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/run.st b/src/GitS-Core.package/GSChangesToShow.class/instance/run.st new file mode 100644 index 00000000..90c7dbee --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/run.st @@ -0,0 +1,4 @@ +actions +run + self isEmpty ifTrue: [^ self nothingToDo]. + ^ self runIfNotEmpty \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/runAs..st b/src/GitS-Core.package/GSChangesToShow.class/instance/runAs..st new file mode 100644 index 00000000..c2b68e12 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/runAs..st @@ -0,0 +1,3 @@ +actions-private +runAs: aClass + ^ (self class = aClass ifTrue: [self] ifFalse: [self as: aClass]) run \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/runIfNotEmpty.st b/src/GitS-Core.package/GSChangesToShow.class/instance/runIfNotEmpty.st new file mode 100644 index 00000000..5f9319db --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/runIfNotEmpty.st @@ -0,0 +1,4 @@ +actions-private +runIfNotEmpty + ^ self openDialog + \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/show.st b/src/GitS-Core.package/GSChangesToShow.class/instance/show.st new file mode 100644 index 00000000..f703dca7 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/show.st @@ -0,0 +1,3 @@ +actions +show + ^ self runAs: GSChangesToShow \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/windowTitle..st b/src/GitS-Core.package/GSChangesToShow.class/instance/windowTitle..st new file mode 100644 index 00000000..a7ab31b8 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/windowTitle..st @@ -0,0 +1,3 @@ +accessing +windowTitle: aString + windowTitle := aString \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/instance/windowTitle.st b/src/GitS-Core.package/GSChangesToShow.class/instance/windowTitle.st new file mode 100644 index 00000000..0d93d023 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/instance/windowTitle.st @@ -0,0 +1,3 @@ +accessing +windowTitle + ^ self basicWindowTitle \ No newline at end of file diff --git a/src/GitS-Core.package/GSChangesToShow.class/methodProperties.json b/src/GitS-Core.package/GSChangesToShow.class/methodProperties.json new file mode 100644 index 00000000..b3443e68 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/methodProperties.json @@ -0,0 +1,27 @@ +{ + "class" : { + }, + "instance" : { + "basicWindowTitle" : "mad 10/8/2024 20:28", + "beforeDialogOpen" : "mad 10/8/2024 20:55", + "changeSets" : "mad 10/8/2024 20:28", + "changeSets:" : "mad 10/8/2024 20:28", + "closeButtonName" : "mad 10/8/2024 20:49", + "dialog" : "mad 10/8/2024 20:28", + "dialog:" : "mad 10/8/2024 20:28", + "dialogClass" : "mad 10/8/2024 20:48", + "done" : "mad 10/8/2024 20:28", + "ensureOfClass:ifConverted:" : "mad 10/8/2024 20:46", + "isEmpty" : "mad 10/8/2024 20:31", + "nothingToDo" : "mad 10/8/2024 20:59", + "nothingToDoMessage" : "mad 10/8/2024 20:59", + "openDialog" : "mad 10/8/2024 20:55", + "openDialogDoing:" : "mad 10/8/2024 20:52", + "prefixWindowTitle:" : "mad 10/8/2024 20:28", + "promise" : "mad 10/8/2024 20:28", + "run" : "mad 10/8/2024 21:10", + "runAs:" : "mad 10/8/2024 21:04", + "runIfNotEmpty" : "mad 10/8/2024 21:10", + "show" : "mad 10/8/2024 21:04", + "windowTitle" : "mad 10/8/2024 20:29", + "windowTitle:" : "mad 10/8/2024 20:29" } } diff --git a/src/GitS-Core.package/GSChangesToShow.class/properties.json b/src/GitS-Core.package/GSChangesToShow.class/properties.json new file mode 100644 index 00000000..80964b85 --- /dev/null +++ b/src/GitS-Core.package/GSChangesToShow.class/properties.json @@ -0,0 +1,16 @@ +{ + "category": "GitS-Core", + "classinstvars": [], + "classvars": [], + "commentStamp": "", + "instvars": [ + "changeSets", + "windowTitle", + "dialog", + "promise" + ], + "name": "GSChangesToShow", + "pools": [], + "super": "Object", + "type": "normal" +} \ No newline at end of file