Tim Felgentreff uploaded a new version of EToys to project The Trunk: http://source.squeak.org/trunk/EToys-tfel.268.mcz ==================== Summary ==================== Name: EToys-tfel.268 Author: tfel Time: 24 October 2016, 11:33:16.574614 am UUID: ea95b449-4d49-994b-a6b1-0b9d17104ab0 Ancestors: EToys-eem.267 - refactor addInstVarNames: to go through Player class>>addInstVarName: - small cleanups =============== Diff against EToys-eem.267 =============== Item was changed: ----- Method: Class>>addInstVarNames: (in category '*Etoys-Squeakland-instance variables') ----- addInstVarNames: aCollection | newInstVarString | newInstVarString := self instanceVariablesString. aCollection do: [:varName | (self instVarNames includes: varName) ifFalse: [newInstVarString := newInstVarString , ' ' , varName]]. + ^ self addInstVarName: newInstVarString - ^(ClassBuilder new) - name: self name - inEnvironment: self environment - subclassOf: superclass - type: self typeOfClass - instanceVariableNames: newInstVarString - classVariableNames: self classVariablesString - poolDictionaries: self sharedPoolsString - category: self category ! Item was added: + ----- Method: Player class>>addInstVarName: (in category 'organization') ----- + addInstVarName: aString + + ^(ClassBuilder new) + name: self name + inEnvironment: (self environment import: Smalltalk globals) + subclassOf: self superclass + type: self typeOfClass + instanceVariableNames: self instanceVariablesString, ' ', aString + classVariableNames: self classVariablesString + poolDictionaries: self sharedPoolsString + category: self category + ! Item was changed: ----- Method: Player class>>environment (in category 'organization') ----- environment ^ self isUniClass ifTrue: [(Environment withName: 'EtoysUserDefinedTempEnvironment') + at: self name asSymbol put: self; + importSelf; - at: self name put: self; yourself] ifFalse: [super environment]! Item was changed: ----- Method: Preferences class>>cambridge (in category '*Etoys-Squeakland-themes') ----- cambridge "A theme for Squeakland and OLPC project" "Preferences cambridge" "This method has three parts. Don't forget to look at the stuff at the bottom." self setPreferencesFrom: #( (allowCelesteTell false) (alternativeScrollbarLook true) (alternativeWindowLook true) (annotationPanes true) (automaticKeyGeneration true) (biggerHandles true) (blinkParen false) (browseWithDragNDrop true) (canRecordWhilePlaying true) (classicNavigatorEnabled false) (compactViewerFlaps true) (enableLocalSave false) (escapeKeyProducesMenu false) (eToyFriendly true) (eToyLoginEnabled true) (extraDebuggerButtons false) (gradientMenu false) (haloTransitions false) (honorDesktopCmdKeys true) (includeSoundControlInNavigator true) (magicHalos false) (menuAppearance3d false) (menuKeyboardControl false) (modalColorPickers true) (mouseOverHalos false) (mvcProjectsAllowed false) (preserveTrash true) (projectViewsInWindows false) (promptForUpdateServer false) (propertySheetFromHalo false) (roundedMenuCorners false) (roundedWindowCorners false) (securityChecksEnabled true) + (standaloneSecurityChecksEnabled true) + (duplicateControlAndAltKeys true) (showDirectionHandles false) (showDirectionForSketches true) (showProjectNavigator false) (showSecurityStatus false) (soundQuickStart true) "see setPlatformPreferences" (soundReverb false) (soundStopWhenDone true) "see setPlatformPreferences" (startInUntrustedDirectory true) (sugarAutoSave false) (swapControlAndAltKeys false) "see setPlatformPreferences" (uniqueNamesInHalos true) (unlimitedPaintArea false) (useArtificialSweetenerBar true) (useBiggerPaintingBox true) (useFormsInPaintBox false) (useLocale true) (usePangoRenderer false) (usePlatformFonts false) (usePopUpArrows true) (warnAboutInsecureContent false) "The following is to make sure the default is set properly." (abbreviatedBrowserButtons false) (allowEtoyUserCustomEvents false) (alphabeticalProjectMenu false) (alternativeBrowseIt false) (alternativeButtonsInScrollBars false) (alternativeWindowBoxesLook true) (alwaysHideHScrollbar false) (alwaysShowConnectionVocabulary false) (alwaysShowHScrollbar false) (alwaysShowVScrollbar true) (ansiAssignmentOperatorWhenPrettyPrinting true) (areaFillsAreTolerant false) (areaFillsAreVeryTolerant false) (autoAccessors false) (automaticFlapLayout true) (automaticPlatformSettings true) "enables setPlatformPreferences" (automaticViewerPlacement true) (balloonHelpEnabled true) (balloonHelpInMessageLists false) (batchPenTrails false) (biggerCursors true) (browserNagIfNoClassComment true) (browserShowsPackagePane false) (browseWithPrettyPrint false) (capitalizedReferences true) (caseSensitiveFinds false) (cautionBeforeClosing false) (celesteHasStatusPane false) (celesteShowsAttachmentsFlag false) (changeSetVersionNumbers true) (checkForSlips true) (checkForUnsavedProjects true) (classicNewMorphMenu false) (clickOnLabelToEdit false) (cmdDotEnabled true) (collapseWindowsInPlace false) (colorWhenPrettyPrinting false) (compressFlashImages false) (confirmFirstUseOfStyle true) (conversionMethodsAtFileOut false) (cpuWatcherEnabled false) (debugHaloHandle false) (debugPrintSpaceLog false) (debugShowDamage false) (decorateBrowserButtons true) (defaultFileOutFormatMacRoman false) (diffsInChangeList true) (diffsWithPrettyPrint false) (dismissAllOnOptionClose false) (dismissEventTheatreUponPublish true) (dragNDropWithAnimation false) (dropProducesWatcher true) (duplicateControlAndAltKeys false) (easySelection false) (enableInternetConfig false) (enablePortraitMode false) (enableVirtualOLPCDisplay false) (expandedPublishing true) (extractFlashInHighestQuality false) (extractFlashInHighQuality true) (fastDragWindowForMorphic true) (fenceEnabled true) (fenceSoundEnabled false) (fullScreenLeavesDeskMargins true) (gradientScrollBars true) (haloEnclosesFullBounds false) (higherPerformance false) (ignoreStyleIfOnlyBold true) (implicitSelfInTiles false) (inboardScrollbars true) (infiniteUndo false) (keepTickingWhilePainting false) (logDebuggerStackToFile true) (menuButtonInToolPane false) (menuColorFromWorld false) (menuWithIcons true) (morphicProgressStyle true) (mouseOverForKeyboardFocus false) (navigatorOnLeftEdge true) (noviceMode false) (okToReinitializeFlaps true) (oliveHandleForScriptedObjects false) (optionalButtons true) (passwordsOnPublish false) (personalizedWorldMenu true) (postscriptStoredAsEPS false) (printAlternateSyntax false) (projectsSentToDisk false) (projectZoom true) (readDocumentAtStartup true) (restartAlsoProceeds false) (reverseWindowStagger true) (rotationAndScaleHandlesInPaintBox false) (scrollBarsNarrow false) (scrollBarsOnRight true) (scrollBarsWithoutMenuButton false) (selectionsMayShrink true) (selectiveHalos true) (showAdvancedNavigatorButtons false) (showBoundsInHalo false) (showDeprecationWarnings false) (showFlapsWhenPublishing false) (showLinesInHierarchyViews true) (showSharedFlaps true) (signProjectFiles true) (simpleMenus false) (slideDismissalsToTrash true) (smartUpdating true) (soundsEnabled true) (swapMouseButtons false) (systemWindowEmbedOK false) (tabAmongFields true) (testRunnerShowAbstractClasses false) (thoroughSenders true) (tileTranslucentDrag true) (timeStampsInMenuTitles true) (translationWithBabel false) (turnOffPowerManager false) (twentyFourHourFileStamps true) (twoSidedPoohTextures true) (typeCheckingInTileScripting true) (unifyNestedProgressBars true) (uniTilesClassic true) (universalTiles false) (updateFromServerAtStartup false) (updateSavesFile false) (useButtonPropertiesToFire false) (useFileList2 true) (useSmartLabels false) (useUndo true) (useVectorVocabulary false) (viewersInFlaps true) (warnIfNoChangesFile false) (warnIfNoSourcesFile false) (warningForMacOSFileNameLength false) (wordStyleCursorMovement true) ). Preferences setPreference: #haloTheme toValue: #iconicHaloSpecifications. ! Item was changed: ----- Method: Project class>>cleanUpEtoysGarbage (in category '*Etoys-Squeakland-utilities') ----- cleanUpEtoysGarbage "Project cleanUpEtoysGarbage" "All these should eventuall go away and be fixed, but for now we have this here." Smalltalk garbageCollect. "Clear weak message sends to remove modal windows from worlds that are closing." (WeakMessageSend allInstances select: [:wm | (wm receiver isKindOf: PasteUpMorph) and: [wm selector = #removeModalWindow]]) do: [:wm | wm receiver: nil]. "Clear the weak dictionary on the class side that keeps node state around in the rewriter" KedamaEvaluatorNodeState initialize. "Clear the KedamaEvaluator that holds on to the last Kedama world" ScriptEditorMorph setDefaultEvaluator. "Clear the hard references to player classes, " (Smalltalk organization listAtCategoryNamed: 'UserObjects') do: [:name | Smalltalk forgetClass: (Smalltalk classNamed: name) logged: false]. Player withAllSubclasses select: [:c | c isSystemDefined not] + thenDo: [:c | + c theNonMetaClass superclass removeSubclass: c theNonMetaClass. + c theMetaClass superclass removeSubclass: c theMetaClass]. - thenDo: [:c | c superclass removeSubclass: c]. "Clear the paste buffer" HandMorph initialize. "Clear the reference to the project tree in SkObject" + (Smalltalk classNamed: 'SkObject') ifNotNil: [:c | c initialize]. - Smalltalk at: #SkObject ifPresent: [:cls| cls initialize]. PasteUpMorph allInstancesDo: [:m | m presenter ifNotNil: [:p | p flushPlayerListCache]]. Smalltalk garbageCollect! Item was added: + ----- Method: ReleaseBuilderSqueakland class>>intermediatePrepareForUsers (in category 'scripts') ----- + intermediatePrepareForUsers + "self intermediatePrepareForUsers" + Project cleanUpEtoysGarbage. + Smalltalk zapAllOtherProjects. + Project cleanUpEtoysGarbage. + ReleaseBuilder clearCaches. + ObjectScanner new. "clear ObjectScanner's class pool" + ExternalSettings registerClient: ServerDirectory. + Project cleanUpEtoysGarbage. + ReleaseBuilderSqueakland configureDesktop. + ReleaseBuilderSqueakland setPreferences. + Model useColorfulWindows: true.!