Tried your install instructions but give me an error[1] about being unable to resolve IconFactory , tries to look inside my package-cache of my image (pharo 4 - 40591 -MACOSX 10).Interesting tool, out of coincidence I am also working with icons but in my cases its SVG icons using Bloc .
[1]
MetacelloFetchingMCSpecLoader(MetacelloCommonMCSpecLoader)>>retryingResolvePackageSpecReferences:gofer:
linearLoadPackageSpec: packageSpec gofer: gofer
������ MetacelloPlatform current
������ ���� ��do: [
������ ���� ������ ��| references nearestReference cachedReference externalReference mcVersion loadedVersionInfos |
������ ���� ������ ��"check to see if mcz file is already in cacheRepository"
������ ���� ������ ��cachedReference := self resolvePackageSpec: packageSpec cachedGofer: self loaderPolicy cacheGofer.
������ ���� ������ ��(cachedReference ~~ nil and: [ packageSpec getFile ~~ nil ])
������ ���� ������ ������ ��ifTrue: [
������ ���� ������ ������ ������ ��cachedReference name = packageSpec file
������ ���� ������ ������ ������ ������ ��ifTrue: [
������ ���� ������ ������ ������ ������ ������ ��"exact match between packageSpec file and cache"
������ ���� ������ ������ ������ ������ ������ ��^ self scheduleFetchFor: packageSpec cachedReference: cachedReference ] ].���� ��"look up mcz file"
������ ���� ������ ��references := self retryingResolvePackageSpecReferences: packageSpec gofer: gofer.
������ ���� ������ ��nearestReference := references last asMetacelloCachingResolvedReference.���� ��"If the mcz is already in the cacheRepository, no need to copy"
������ ���� ������ ��(cachedReference ~~ nil and: [ cachedReference name = nearestReference name ])
������ ���� ������ ������ ��ifTrue: [
������ ���� ������ ������ ������ ��"latest reference in repository matches cachedReference ... "
������ ���� ������ ������ ������ ��^ self scheduleFetchFor: packageSpec nearestReference: nearestReference ].���� ��"If the mcz is already loaded into the image, no need to copy"
������ ���� ������ ��(self ignoreImage not and: [ (loadedVersionInfos := self ancestorsFor: packageSpec) ~~ nil ])
������ ���� ������ ������ ��ifTrue: [
������ ���� ������ ������ ������ ��loadedVersionInfos
������ ���� ������ ������ ������ ������ ��do: [ :info |
������ ���� ������ ������ ������ ������ ������ ��info name = nearestReference name
������ ���� ������ ������ ������ ������ ������ ������ ��ifTrue: [ ^ self ] ] ].
������ ���� ������ ��externalReference := (references select: [ :ref | ref name = nearestReference name ]) first
������ ���� ������ ������ ��asMetacelloCachingResolvedReference.
������ ���� ������ ��self repositoryMap at: externalReference name put: externalReference repository.
������ ���� ������ ��(self
������ ���� ������ ������ ��resolveDependencies: externalReference
������ ���� ������ ������ ��nearest: nearestReference
������ ���� ������ ������ ��into: (OrderedCollection with: nearestReference))
������ ���� ������ ������ ��do: [ :reference |
������ ���� ������ ������ ������ ��| pSpec l |
������ ���� ������ ������ ������ ��mcVersion := reference version.
������ ���� ������ ������ ������ ��(l := (GoferVersionReference name: reference name) resolveAllWith: self loaderPolicy cacheGofer) isEmpty
������ ���� ������ ������ ������ ������ ��ifTrue: [
������ ���� ������ ������ ������ ������ ������ ��self cacheRepository storeVersion: mcVersion.
������ ���� ������ ������ ������ ������ ������ ��reference == nearestReference
������ ���� ������ ������ ������ ������ ������ ������ ��ifTrue: [ pSpec := packageSpec ]
������ ���� ������ ������ ������ ������ ������ ������ ��ifFalse: [
������ ���� ������ ������ ������ ������ ������ ������ ������ ��pSpec := packageSpec project packageSpec.
������ ���� ������ ������ ������ ������ ������ ������ ������ ��pSpec name: mcVersion package name ].
������ ���� ������ ������ ������ ������ ������ ��self loadData
������ ���� ������ ������ ������ ������ ������ ������ ��addVersion: mcVersion
������ ���� ������ ������ ������ ������ ������ ������ ��versionInfo: mcVersion info
������ ���� ������ ������ ������ ������ ������ ������ ��resolvedReference: reference
������ ���� ������ ������ ������ ������ ������ ������ ��packageSpec: pSpec ] ].
������ ���� ������ ��self scheduleFetchFor: packageSpec externalReference: externalReference ]
������ ���� ��displaying: 'Fetching ' , packageSpec file in MetacelloFetchingMCSpecLoader>>linearLoadPackageSpec:gofer: in Block: linearLoadPackageSpec: packageSpec gofer: gofer...
MetacelloPharo30Platform(MetacelloPlatform)>>do:displaying:
MetacelloFetchingMCSpecLoader>>linearLoadPackageSpec:gofer:
MetacelloPackageSpec>>loadUsing:gofer:
[ :pkg | pkg loadUsing: self gofer: gofer ] in MetacelloFetchingMCSpecLoader(MetacelloCommonMCSpecLoader)>>linearLoadPackageSpecs:repositories: in Block: [ :pkg | pkg loadUsing: self gofer: gofer ]
OrderedCollection>>do:
MetacelloFetchingMCSpecLoader(MetacelloCommonMCSpecLoader)>>linearLoadPackageSpecs:repositories:
[ super linearLoadPackageSpecs: packageSpecs repositories: repositories ] in MetacelloFetchingMCSpecLoader>>linearLoadPackageSpecs:repositories: in Block: [ super linearLoadPackageSpecs: packageSpecs repos...etc...
BlockClosure>>ensure:
MetacelloLoaderPolicy>>pushLoadDirective:during:
MetacelloLoaderPolicy>>pushLinearLoadDirectivesDuring:for:
MetacelloFetchingMCSpecLoader>>linearLoadPackageSpecs:repositories:
MetacelloFetchingMCSpecLoader(MetacelloCommonMCSpecLoader)>>load
MetacelloMCVersionSpecLoader>>load
MetacelloMCVersion>>executeLoadFromArray:
[ :dict | ^ self executeLoadFromArray: anArray ] in [
self versionSpec loader: newLoader.
MetacelloPlatform current
������ useStackCacheDuring: [ :dict | ^ self executeLoadFromArray: anArray ]
������ defaultDictionary: Dictionary new ] in [
[
self versionSpec loader: newLoader.
MetacelloPlatform current
������ useStackCacheDuring: [ :dict | ^ self executeLoadFromArray: anArray ]
������ defaultDictionary: Dictionary new ]
������ ensure: [ self versionSpec loader: originalLoader ] ] in MetacelloMCVersion>>fetchRequiredFromArray: in Block: [ :dict | ^ self executeLoadFromArray: anArray ]
[ ^ aBlock value: dict ] in MetacelloPharo30Platform(MetacelloPlatform)>>useStackCacheDuring:defaultDictionary: in Block: [ ^ aBlock value: dict ]
BlockClosure>>on:do:
MetacelloPharo30Platform(MetacelloPlatform)>>useStackCacheDuring:defaultDictionary:
[
self versionSpec loader: newLoader.
MetacelloPlatform current
������ useStackCacheDuring: [ :dict | ^ self executeLoadFromArray: anArray ]
������ defaultDictionary: Dictionary new ] in [
[
self versionSpec loader: newLoader.
MetacelloPlatform current
������ useStackCacheDuring: [ :dict | ^ self executeLoadFromArray: anArray ]
������ defaultDictionary: Dictionary new ]
������ ensure: [ self versionSpec loader: originalLoader ] ] in MetacelloMCVersion>>fetchRequiredFromArray: in Block: [ ...
BlockClosure>>ensure:
[
[
self versionSpec loader: newLoader.
MetacelloPlatform current
������ useStackCacheDuring: [ :dict | ^ self executeLoadFromArray: anArray ]
������ defaultDictionary: Dictionary new ]
������ ensure: [ self versionSpec loader: originalLoader ] ] in MetacelloMCVersion>>fetchRequiredFromArray: in Block: [ ...
MetacelloPharo30Platform(MetacelloPlatform)>>do:displaying:
MetacelloMCVersion>>fetchRequiredFromArray:
[
| fetchLoader |
fetchLoader := self fetchRequiredFromArray: (self defaultPackageNamesToLoad: anArray).
MetacelloPlatform current do: [ fetchLoader doLoad ] displaying: 'Loading ' , displayString.
Transcript
������ cr;
������ show: '...finished ' , self versionNumber printString.
^ fetchLoader ] in MetacelloMCVersion>>doLoadRequiredFromArray: in Block: [ ...
BlockClosure>>ensure:
MetacelloMCVersion>>doLoadRequiredFromArray:
MetacelloMCVersion>>load
GoferMetacelloLoad>>loadConfiguration
��On Sat, Apr 4, 2015 at 2:50 PM, Peter Uhn��k <i.uhnak@gmail.com> wrote:Hi,since I've been making new icons lately for my project I was frustrated with constantly copying code and methods around... so I've made a small utility for it
���on top of creating the icons it can add extra stuff like GTInspector support.Any feedback appreciated.Peter