--- a/Tools__NewSystemBrowser.st Sun Jun 23 13:43:05 2019 +0200
+++ b/Tools__NewSystemBrowser.st Sun Jun 23 16:51:39 2019 +0200
@@ -34955,7 +34955,7 @@
|classes anyClassMoved anyMethodMoved classesNotYetInRepository classesAlreadyInRepository
sourceInfoPerClassOfClassesAlreadyInRepository oldPackagePerClass newProjectDefinition
- thereWasASourceCodeManagerError managerClasses manager repos|
+ thereWasASourceCodeManagerError managerClasses manager repos confirm|
(newProject = PackageId noProjectID) ifTrue:[
(Dialog confirm:(resources
@@ -34972,7 +34972,7 @@
Dialog information:(resources stringWithCRs:'%1 class(es) already in the "%2"-package.' with:classesArg size with:newProject allBold).
^ self
].
-
+
classesNotYetInRepository := OrderedCollection new.
classesAlreadyInRepository := OrderedCollection new.
@@ -34981,14 +34981,14 @@
thereWasASourceCodeManagerError := false.
managerClasses := Set new.
-
+
classes do:[:eachClass |
|oldProject theClass mgr vsn|
theClass := eachClass theNonMetaclass.
mgr := theClass sourceCodeManager.
managerClasses add:mgr.
-
+
mgr notNil ifTrue:[
SourceCodeManagerError handle:[:ex |
thereWasASourceCodeManagerError := true
@@ -35053,13 +35053,13 @@
environment changed:#projectOrganization.
].
(newProject = PackageId noProjectID) ifTrue:[^ self].
-
+
self rememberLastProjectMoveTo:newProject.
thereWasASourceCodeManagerError ifTrue:[
Dialog warn:(resources stringWithCRs:'There was a problem accessing the source code repository.\\Please check your settings and/or network connection').
^ self
].
-
+
managerClasses size == 1 ifTrue:[
(manager := managerClasses first) notNil ifTrue:[
repos := '("',(manager repositoryNameForPackage:newProject),'") '.
@@ -35089,8 +35089,18 @@
withInfo:'Classes moved to other package'.
"remove other containers"
- sourceInfoPerClassOfClassesAlreadyInRepository keysAndValuesDo:[:class :info |
- SourceCodeManagerUtilities default removeSourceContainerForClass:class usingSourceInfo:info confirm:true warn:true
+ confirm := true.
+ SourceCodeManagerUtilities yesToAllNotification handle:[:ex |
+ confirm := false.
+ ex proceed.
+ ] do:[
+ sourceInfoPerClassOfClassesAlreadyInRepository keysAndValuesDo:[:class :info |
+ SourceCodeManagerUtilities default
+ removeSourceContainerForClass:class
+ usingSourceInfo:info
+ confirm:confirm
+ warn:true
+ ].
].
(Dialog confirm:(resources string:'Update project definitions now (recommended)?')) ifFalse:[ ^ self ].
@@ -35116,6 +35126,7 @@
newProjectDefinition includeClasses:(classesAlreadyInRepository , classesNotYetInRepository) usingCompiler:nil.
"Modified: / 05-12-2017 / 17:59:58 / cg"
+ "Modified: / 23-06-2019 / 16:14:56 / Claus Gittinger"
!
moveSelectedClassesToCategory:newCategory