Icons update

This commit is contained in:
Offray Vladimir Luna Cárdenas 2015-09-21 08:41:51 +00:00
parent c1ff31e4d2
commit 35c11531c3
5 changed files with 745 additions and 54 deletions

View File

@ -0,0 +1,139 @@
"
Please comment me using the following template inspired by Class Responsibility Collaborator (CRC) design:
I'm FontAwesomeIcons, a custom selection of some icons in this font family used for the GUI of grafoscopio.
For the Responsibility part: Three sentences about my main responsibility, what I'm doing, what services do I offer.
For the Collaborators Part: State my main collaborators and one line about how I interact with them.
Public API and Key Messages
- message one
- message two
- what is the way to create instances is a plus.
One simple example is simply gorgeous.
Internal Representation and Key Implementation Points.
Instance Variables
icons: <Object>
Implementation Points
"
Class {
#name : #FontAwesomeIcons,
#superclass : #Object,
#instVars : [
'icons'
],
#classVars : [
'Current'
],
#category : #'Grafoscopio-UI'
}
{ #category : #'accessing - icons' }
FontAwesomeIcons >> copyIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self copyIconContents readStream)
]
{ #category : #'private - contents' }
FontAwesomeIcons >> copyIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/FontAwesome/Png/copy.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA2UlEQVR4nJXQIU6DQRAF4K+F
4DAYVFHlBEgctQgScL0DCbp3wKNJOAIXQDcEC5iqQoNsA4KkiO6GJX92/p+XvGxm983bN8Mv
+rjFOnFYMNchbvCNSWooUTXopfMalxhjipfiLRucYg9bxf0zXCXBJP1yUkmwxhyviTN8wVsh
yHwsms/wiSUuivu8m3BBR1hglH5tGGxXGmGAO5zjIdBVE9xrjnb8nwQjHBb1ymaJfxAZ7NjM
HSIbHLQJIzxpzpoZYdim6WTQ7xayjmiJ7x1SLHrB4y72Www+fgBc9T/67LlhnQAAAABJRU5E
rkJggg=='
]
{ #category : #'accessing - icons' }
FontAwesomeIcons >> cutIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self cutIconContents readStream)
]
{ #category : #'private - contents' }
FontAwesomeIcons >> cutIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/FontAwesome/Png/cut.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABOUlEQVR4nNXSzyvlYRTH8Rcu
N5dmIt2FX4VpJktRUpKssB//wGSDUsrCahYzuykaGyk/YiFlb2VhYWVhYaUkKxsbTSYSYfE9
V3e+EQub+dRTz4/zvM85n+fhHXSNhxhX+IHSV+50IVNYbKAKn7EeoO8vXOyNmHFsolFMirWD
89TeFyxhEuXoxjI+ZPAVFZjHX+SRQz3uMINbTOMCoxEzinsYwlGRDw/4iX2s4VNUkcUvDD/X
Wwna0Y8WLGI7snSgGatx9o8KTn4MQB6VqA1ITuL4IP5E76dpyBQuUy0shGmHElPLI3YSs+HZ
k+4kb98QlewGMIsyfMMKOiO+B1toKgDmimC5yHqSqjIb2efRhrqAtGbQhxHJs41JXB9JAW7w
G9WYkHygY5zBQfR9jz0MpE16i2ok7v+HegQfqT9MAMiDKwAAAABJRU5ErkJggg=='
]
{ #category : #'accessing - icons' }
FontAwesomeIcons >> html5Icon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self html5IconContents readStream)
]
{ #category : #'private - contents' }
FontAwesomeIcons >> html5IconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/FontAwesome/Png/html5.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA+UlEQVR4nK3Tv0oDQRDH8c9J
BMFKJGIXBBtFwc7SUlDfwpewEewsbQQL8QHsA2lSiK2NCFr4Av4hjYigVSxuV/bWjRhxYJhl
9uY7v9m9rdR2ikm/tx7OoRUSO5gfA3AfFxMhPo9RDE85ICZ2Uf3gNzkgjhAVzIV4hJlC58Vc
cQ5oh7iJpb+MEBUsF+Snh/wNkI9QsqjuFe+jABu4xgDDxFcS+Ff30ggDrOEs6/6YKGgA8kOc
DfEQV+jgMoDb2bcNm0rkHqv/zOmwt4o93IX9kxIAXjTn/sBDlhviYBRgH7eFguhv6GI9LaoK
oA62sYUF9NWv70Jyff9mnwBsQJo0owsMAAAAAElFTkSuQmCC'
]
{ #category : #'accessing - icons' }
FontAwesomeIcons >> pasteIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self pasteIconContents readStream)
]
{ #category : #'private - contents' }
FontAwesomeIcons >> pasteIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/FontAwesome/Png/paste.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqUlEQVR4nK3TTQrBQRzG8c/I
yk6SsrAilk5hYWfjWA6hXICycwtLByDJ2upvgZrG6+BbU7+3nnnmVxNQuDDC2j09LK5xB5u4
WY7iUpLH9ZcUGaedrZ4wznWQzh0wQfjWwRB9TF33lStwwABHzFG5WfvkCfsH/Vl4MBgToriC
ZpS3sMxxkNJGkbuDO/4isPtFoIwu6km9hdUvwg2cvP8bu/BMAVXU3ly0PQOGrUCXHk1emQAA
AABJRU5ErkJggg=='
]
{ #category : #'accessing - icons' }
FontAwesomeIcons >> tagIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self tagIconContents readStream)
]
{ #category : #'private - contents' }
FontAwesomeIcons >> tagIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/FontAwesome/Png/tag.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAmUlEQVR4nKXPMQ4BQRSA4U9D
oeIgKsdwAUfARSSiUTmExgUcYU8gGoVGpZFIGM0WG5mxM0zyMpni/zKPP0+nvleYNN4BZyxx
yIGedfQ5L8xygIA7RhjjUYoEXNFDH7fIT+ZtQMARpy/rJJFLIorNIgasC4Ao0sW+EJn+i2xi
q+QiFQYxIAepMEzFbUhWnEKK4iayxe6XOOu8ARtNbaMQ63x5AAAAAElFTkSuQmCC'
]
{ #category : #'accessing - icons' }
FontAwesomeIcons >> tagsIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self tagsIconContents readStream)
]
{ #category : #'private - contents' }
FontAwesomeIcons >> tagsIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/FontAwesome/Png/tags.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAABAAAAANCAYAAACgu+4kAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAAXRJREFUKJGN0j1Mk1EYxfH/edRFSKijH4kTJBgTJ0cGTdxE
TKyUGAfFSQcKUl3taIjIh3EUTJzaAoORwUGdmUlMXB1ktSaQGNp7HOyrgG8jZ733+d1zc69G
y9NvsC6RRbZhIxQLtkdtX5DjSW1x5hM5CdBtxGnjLUQf6IzQDSfXWu30EvTF4fdjE49GugCA
Wa8vPLuIufO3CSePRnxspzQr+3UKGnlIdGoPlMqV84ihfasdpJX8XLCch0RnZz/SJlD+p2OG
tNNcHhLA57y7dUOwl/YiKk48vCLFuuDYfyGz1Urp8pHQJNK4SUXZZqz8+GqS1w6DGL/j29fr
OnX2O6b1+9XhsIixbyX0M8Sa8Ys/AEBpqjJsa7ULYtt3JTexGoZX5070PtgHANycnL4mYuUA
YsO4TTNwHWlpsNBzv1qtpjh4TGN+9q1JRcPuntr3Av8IXAeWs2HIfn5OSlOVYayntmeON3tr
O4XtD4KNwUJPJRsG+AVxqr+5c/rf8wAAAABJRU5ErkJggg=='
]

View File

@ -255,21 +255,27 @@ GrafoscopioBrowser class >> startDockingBar [
{ #category : #'as yet unclassified' } { #category : #'as yet unclassified' }
GrafoscopioBrowser class >> updateDocumentation [ GrafoscopioBrowser class >> updateDocumentation [
"Updates documentation/manual from official repository"
"Updates documentation/manual from official repository" | update fileLocation filePath client |
update := (UIManager default
| fileLocation filePath client | question: '¿Desea actualizar la documentación?'
fileLocation := './Docs/Es/Manual/'. title: '¿Actualizar documentación?').
fileLocation asFileReference ensureCreateDirectory. update ifNotNil: [
filePath := fileLocation,'manual-grafoscopio.ston'. update
client := ZnClient new. ifTrue: [
client get: 'http://mutabit.com/deltas/repos.fossil/grafoscopio/doc/tip/Docs/Es/Manual/manual-grafoscopio.ston'. fileLocation := './Docs/Es/Manual/'.
client isSuccess fileLocation asFileReference ensureCreateDirectory.
ifTrue: [ filePath asFileReference filePath := fileLocation,'manual-grafoscopio.ston'.
writeStreamDo: [ :stream | client := ZnClient new.
stream write: client contents asString]. client get: 'http://mutabit.com/deltas/repos.fossil/grafoscopio/doc/tip/Docs/Es/Manual/manual-grafoscopio.ston'.
self inform: 'La actualización de la documentación ha terminado'. ] client isSuccess
ifFalse: [ self inform: 'Algo salió mal. Verifique su conexión a Internet.' ] ifTrue: [ filePath asFileReference
writeStreamDo: [ :stream |
stream write: client contents asString].
self inform: 'Actualización de la documentación terminada'. ]
ifFalse: [ self inform: 'Algo salió mal. Verifique su conexión a Internet.' ] ]
ifFalse: [self inform: 'Actualización de la documentación cancelada'. ]]
] ]
{ #category : #'as yet unclassified' } { #category : #'as yet unclassified' }
@ -300,20 +306,51 @@ localRepository exists
GrafoscopioBrowser class >> updateGrafoscopio [ GrafoscopioBrowser class >> updateGrafoscopio [
"Updates Grafoscopio with new versions of itself take from the source code repository and "Updates Grafoscopio with new versions of itself take from the source code repository and
the User Interface" the User Interface"
| update |
update := (UIManager default
question: '¿Desea actualizar grafoscopio?'
title: 'Actualizar grafoscopio').
update ifNotNil: [
update
ifTrue: [
self updateGrafoscopioScript.
self inform: 'Actualización de grafoscopio terminada']
ifFalse: [self inform: 'Actualización de grafoscopio no realizada']]
]
{ #category : #'as yet unclassified' }
GrafoscopioBrowser class >> updateGrafoscopioScript [
"Updates Grafoscopio with new versions of itself take from the source code repository and
the User Interface"
Gofer new Gofer new
smalltalkhubUser: 'Offray' project: 'Grafoscopio'; smalltalkhubUser: 'Offray' project: 'Grafoscopio';
package: 'Grafoscopio'; package: 'Grafoscopio';
load. load.
self updateUI.
self updateUI.
self inform: 'La actualización de grafoscopio ha terminado'
] ]
{ #category : #'as yet unclassified' } { #category : #'as yet unclassified' }
GrafoscopioBrowser class >> updatePrerrequisites [ GrafoscopioBrowser class >> updatePrerrequisites [
"Updates the system prerequisites with new versions of itself take from the source code repository" "Updates the system prerequisites with new versions of itself take from the source code repository"
| update |
update := (UIManager default
question: '¿Desea actualizar los prerrequisitos de grafoscopio?'
title: 'Actualizar prerrequisitos de grafoscopio').
update ifNotNil: [
update
ifTrue: [
self updatePrerrequisitesScript.
self inform: 'Actualización de prerrequisitos terminada'
]
ifFalse: [ self inform: 'Actualización de prerrequisitos NO realizada' ]
]
]
{ #category : #'as yet unclassified' }
GrafoscopioBrowser class >> updatePrerrequisitesScript [
"Updates the system prerequisites with new versions of itself take from the source code repository"
"Visualization library (which also makes main menu loadable)" "Visualization library (which also makes main menu loadable)"
Gofer it Gofer it
@ -341,21 +378,21 @@ GrafoscopioBrowser class >> updatePrerrequisites [
"Integration with external tools" "Integration with external tools"
Gofer new Gofer new
smalltalkhubUser: 'Offray' project: 'Grafoscopio'; smalltalkhubUser: 'Offray' project: 'Grafoscopio';
package: 'Grafoscopio-ExternalTools'; package: 'Grafoscopio-ExternalTools';
load. load.
"HTML scrapping" "HTML scrapping"
Gofer new Gofer new
smalltalkhubUser: 'PharoExtras' project: 'Soup'; smalltalkhubUser: 'PharoExtras' project: 'Soup';
configurationOf: 'Soup'; configurationOf: 'Soup';
loadStable. loadStable.
"Data visualization" "Data visualization helpers"
Gofer new Gofer new
smalltalkhubUser: 'Offray' project: 'Dataviz'; smalltalkhubUser: 'Offray' project: 'Dataviz';
package: 'Dataviz'; package: 'Dataviz';
load. load.
"Support for Operative System integration" "Support for Operative System integration"
Gofer new Gofer new
@ -369,36 +406,31 @@ GrafoscopioBrowser class >> updatePrerrequisites [
load. load.
"Bibliographic support" "Bibliographic support"
Gofer new squeaksource: 'Citezen'; Gofer new
package: 'ConfigurationOfCitezen'; squeaksource: 'Citezen';
load. package: 'ConfigurationOfCitezen';
load.
self inform: 'La actualización de los prerrequisitos ha terminado'
] ]
{ #category : #'as yet unclassified' } { #category : #'as yet unclassified' }
GrafoscopioBrowser class >> updateSystem [ GrafoscopioBrowser class >> updateSystem [
"Updates the system with new versions of itself take from the source code repository" "Updates the system with new versions of itself take from the source code repository"
Gofer it | update |
smalltalkhubUser: 'ObjectProfile' project: 'Roassal2';
configurationOf: 'Roassal2';
loadStable.
Gofer new update := (UIManager default
smalltalkhubUser: 'SvenVanCaekenberghe' project: 'STON'; question: '¿Desea actualizar grafoscopio?'
package: 'STON-Core'; title: 'Actualizar grafoscopio').
load. update ifNotNil: [
update
ifTrue: [
self updatePrerrequisitesScript.
self updateGrafoscopioScript.
self inform: 'Actualización de todo el sistema terminada.']
ifFalse: [
self inform: 'Actualización de todo el sistema NO realizada.' ]
]
Gofer new squeaksource: 'Citezen';
package: 'ConfigurationOfCitezen';
load.
(ConfigurationOfCitezen project latestVersion: #development) load.
Gofer new
smalltalkhubUser: 'Offray' project: 'Grafoscopio';
package: 'Grafoscopio';
load.
] ]

View File

@ -0,0 +1,259 @@
"
Please comment me using the following template inspired by Class Responsibility Collaborator (CRC) design:
I'm the graphical user interface for grafoscopio. I'm using Spec.
My main responsability is to provide grafoscopio with graphical widgets and other elements to manipulate grafoscopio trees, helping with common task of storing, opening and manipulating trees.
"
Class {
#name : #GrafoscopioGUI,
#superclass : #ComposableModel,
#instVars : [
'windowMainMenu',
'tree',
'nodeDetails'
],
#category : #'Grafoscopio-UI'
}
{ #category : #'as yet unclassified' }
GrafoscopioGUI class >> defaultSpec [
<spec: #default>
^ SpecLayout composed
newColumn: [ :mainWindow |
mainWindow
newRow: [:menu |
menu add: #windowMainMenu
] height: 35;
newRow: [:outlineView |
outlineView
newColumn: [ :treePart |
treePart add: #tree];
addSplitter;
newColumn: [ :nodePart |
nodePart add: #nodeDetails].
].
];
yourself
]
{ #category : #'as yet unclassified' }
GrafoscopioGUI >> documentSubMenu [
^ MenuModel new
addGroup: [ :group |
group addItem: [ :item |
item
name: 'Guardar';
icon: Smalltalk ui icons smallSaveIcon;
shortcut: $s command;
action: [ self inform: 'Guardar | Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Guardar como...';
icon: Smalltalk ui icons smallSaveAsIcon;
action: [ self inform: 'Guardar | Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Exportar como html';
icon: Smalltalk ui icons smallWindowIcon;
action: [ self inform: 'Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Exportar como pdf';
icon: Smalltalk ui icons smallPrintIcon;
action: [ self inform: 'Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Ver html';
icon: Smalltalk ui icons smallInspectItIcon;
action: [ self inform: 'Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Ver pdf';
icon: Smalltalk ui icons smallInspectItIcon;
action: [ self inform: 'Por implementar ...' ] ] ]
]
{ #category : #'as yet unclassified' }
GrafoscopioGUI >> initializeWidgets [
"Buils graphical interface elements"
windowMainMenu := MenuModel new
addGroup: [ :group |
group addItem: [ :item |
item
name: 'Documento';
icon: Smalltalk ui icons smallObjectsIcon;
subMenu: self documentSubMenu ].
group addItem: [ :item |
item
name: 'Proyecto';
icon: Smalltalk ui icons catalogIcon;
subMenu: self proyectSubMenu ] ];
addGroup: [ :group |
group addItem: [ :item |
item
name: nil;
description: 'Guardar documento';
icon: Smalltalk ui icons smallSaveIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Deshacer';
icon: Smalltalk ui icons smallUndoIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Rehacer';
icon: Smalltalk ui icons smallRedoIcon;
action: [ self inform: 'Por implementar...' ] ]];
addGroup: [ :group |
group addItem: [ :item |
item
name: nil;
description: 'Agregar nodo';
icon: MendaIcons new plusIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Eliminar nodo';
icon: MendaIcons new minusIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Subir nodo';
icon: MendaIcons new arrowUpIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Bajar nodo';
icon: MendaIcons new arrowDownIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Mover nodo a la izquierda';
icon: MendaIcons new arrowLeftIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Mover nodo a la derecha';
icon: MendaIcons new arrowRightIcon;
action: [ self inform: 'Por implementar...' ] ]];
addGroup: [ :group |
group addItem: [ :item |
item
name: nil;
description: 'Intercambiar: código <--> texto';
icon: MendaIcons new smalltalkCodeIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Etiquetar como...';
icon: MendaIcons new tagAddIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Desetiquetar ....';
icon: MendaIcons new tagMinusIcon;
action: [ self inform: 'Por implementar...' ] ].
group addItem: [ :item |
item
name: nil;
description: 'Editar etiquetas...';
icon: FontAwesomeIcons new tagsIcon;
action: [ self inform: 'Por implementar...' ] ]. ].
tree := self newTree.
nodeDetails := self newText.
windowMainMenu applyTo: self.
self focusOrder
add: windowMainMenu;
add: tree;
add: nodeDetails.
]
{ #category : #accessing }
GrafoscopioGUI >> nodeDetails [
^ nodeDetails
]
{ #category : #accessing }
GrafoscopioGUI >> nodeDetails: anObject [
nodeDetails := anObject
]
{ #category : #'as yet unclassified' }
GrafoscopioGUI >> proyectSubMenu [
^ MenuModel new
addGroup: [ :group |
group addItem: [ :item |
item
name: 'Activar repositorio remoto...';
icon: Smalltalk ui icons smallPushpinIcon;
action: [ self inform: 'Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Activar repositorio local...';
icon: Smalltalk ui icons homeIcon;
action: [ self inform: 'Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Agregar archivo...';
icon: Smalltalk ui icons newerPackagesAvailableIcon;
action: [ self inform: 'Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Eliminar archivo...';
icon: Smalltalk ui icons packageDeleteIcon;
action: [ self inform: 'Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Enviar al histórico';
icon: Smalltalk ui icons smallScreenshotIcon;
action: [ self inform: 'Por implementar ...' ] ].
group addItem: [ :item |
item
name: 'Acreditarse';
icon: Smalltalk ui icons userIcon;
action: [ self inform: 'Por implementar ...' ] ] ]
]
{ #category : #'as yet unclassified' }
GrafoscopioGUI >> title [
^ ' | Grafoscopio'
]
{ #category : #accessing }
GrafoscopioGUI >> tree [
^ tree
]
{ #category : #accessing }
GrafoscopioGUI >> tree: anObject [
tree := anObject
]
{ #category : #accessing }
GrafoscopioGUI >> windowMainMenu [
^ windowMainMenu
]
{ #category : #accessing }
GrafoscopioGUI >> windowMainMenu: anObject [
windowMainMenu := anObject
]

View File

@ -0,0 +1,41 @@
"
Please comment me using the following template inspired by Class Responsibility Collaborator (CRC) design:
I'm GrafoscopioTreeUI the Spec model wich reders grafoscopio trees.
For the Responsibility part: Three sentences about my main responsibility, what I'm doing, what services do I offer.
For the Collaborators Part: State my main collaborators and one line about how I interact with them.
Public API and Key Messages
- message one
- message two
- what is the way to create instances is a plus.
One simple example is simply gorgeous.
Internal Representation and Key Implementation Points.
Instance Variables
tree: <Object>
Implementation Points
"
Class {
#name : #GrafoscopioTreeUI,
#superclass : #ComposableModel,
#instVars : [
'tree'
],
#category : #'Grafoscopio-UI'
}
{ #category : #'as yet unclassified' }
GrafoscopioTreeUI >> initializeWidgets [
tree := self newTree
]

View File

@ -0,0 +1,220 @@
"
Please comment me using the following template inspired by Class Responsibility Collaborator (CRC) design:
I'm MendaIcons the provider of this icons on this environment.
My main responsibility is to support some menda icons insideCallback pharo environment, for that I convert and package png images to the pharo image.
For the Collaborators Part: State my main collaborators and one line about how I interact with them.
Public API and Key Messages
- message one
- message two
- what is the way to create instances is a plus.
One simple example is simply gorgeous.
Internal Representation and Key Implementation Points.
Implementation Points
"
Class {
#name : #MendaIcons,
#superclass : #Object,
#instVars : [
'icons'
],
#classVars : [
'Current'
],
#category : #'Grafoscopio-UI'
}
{ #category : #'instance creation' }
MendaIcons class >> current [
^ Current ifNil: [ Current := self new ]
]
{ #category : #'accessing - icons' }
MendaIcons >> arrowDownIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self arrowDownIconContents readStream)
]
{ #category : #'private - contents' }
MendaIcons >> arrowDownIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/Menda/Png/arrowDown.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAICAYAAADJEc7MAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAALJJREFUGJV9zjEKwkAUBND5i3ZaeJBAcgavIIjX2GwK8QbZ
/bmGjSDYaq5gE/Aa9hIyNkZkXf0w1fCGD5IIIexUNSOJf6nrOvfeb0lCXuBK8m6MWVprOyTO
e5+LSAtgDiA31tqO5EZEFsMwtE3TZDFS1WJEJNfOuZsBAOfc4RdW1YLkZURVVR0BQEi+l0MI
KxHZj2/3fT81xpxj9AVjLCITkrMYJWGEmUI/4Qd+lGV5SvVPkLiZ0qKAa5MAAAAASUVORK5C
YII='
]
{ #category : #'accessing - icons' }
MendaIcons >> arrowLeftIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self arrowLeftIconContents readStream)
]
{ #category : #'private - contents' }
MendaIcons >> arrowLeftIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/Menda/Png/arrowLeft.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAAAgAAAAOCAYAAAASVl2WAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAAK1JREFUGJV9kcFpAmEQhb835rpo2giYHsSLBQhiH3NLCf/+
20XIRexAy7CLkAKEfZ42xNXswJy+j4H3Bts821rr0jayzXhqrTvbn8DHgzBASd+2VzEFM/MS
UxAgpiDArGmafyFA2L5KMjCz/TJOFJl5tL0H5hFxLqW83wkAmXkYJEmnv9JvikGStJB06rpu
CTw22bbtVtKX7Z+IWN8VNbr02vf95umjbFNKebPNDbaypHslWRyiAAAAAElFTkSuQmCC'
]
{ #category : #'accessing - icons' }
MendaIcons >> arrowRightIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self arrowRightIconContents readStream)
]
{ #category : #'private - contents' }
MendaIcons >> arrowRightIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/Menda/Png/arrowRight.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAAAgAAAAOCAYAAAASVl2WAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAAMVJREFUGJV9kTFqw0AQRf/M2pWsQK4RMDit2lTpDSbXkFCV
I6xW13AZcK20ukAgOYb7IPTSxMFWLH8YGHgPZpgRoJTSGtC1Cnmev0ra933/VRTFpyZxMzsA
RzPbN02z/SeUZfnh7k9zkkvSLclPzZxkwMXMtm3X4zi+m9k98OKaZBiGpZktAMzs+0JIKT2G
EDpgBeyqqjosziHQSVoBu7qu3/6WjDFufmF+DiUpZFm2cfdO0t0Uni75DFyFkiRAMcaHuWf9
APv6mfGc3+HbAAAAAElFTkSuQmCC'
]
{ #category : #'accessing - icons' }
MendaIcons >> arrowUpIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self arrowUpIconContents readStream)
]
{ #category : #'private - contents' }
MendaIcons >> arrowUpIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/Menda/Png/arrowUp.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAICAYAAADJEc7MAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAAJRJREFUGJWNy8EJQjEQBNCdVGAdwtca/LYg2EdIsIjNliHi
xQ6sQfRgF4L/LOx4EnJIPg7MaeaBpLRiZnuSn5TSpbWHGXQEcC6l7P6CFXqJyATg1MKhh0hu
AGx7OPRQSukZY7y7+9jCoYd+h5zzw91Hku8aw8wGd7+1UB1VXQG4AliQXAtJUdWDqi5JylzN
bFDVTFK+Zz+PhDBK0j8AAAAASUVORK5CYII='
]
{ #category : #'gt-inspector' }
MendaIcons >> gtInspectorIconsIn: composite [
<gtInspectorPresentationOrder: 40>
composite list
title: 'Icons';
display: [
self iconSelectors asSortedCollection
collect: [ :each | each -> (self perform: each) ] ];
icon: [ :each | each value ];
format: [ :each | each key ]
]
{ #category : #initialization }
MendaIcons >> iconSelectors [
^ self class selectors select: [ :each | '*Icon' match: each asString ]
]
{ #category : #initialization }
MendaIcons >> initialize [
super initialize.
self initializeIcons
]
{ #category : #initialization }
MendaIcons >> initializeIcons [
icons := LRUCache new
maximumWeight: 64;
factory: [ :key | self perform: key ];
yourself
]
{ #category : #'accessing - icons' }
MendaIcons >> minusIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self minusIconContents readStream)
]
{ #category : #'private - contents' }
MendaIcons >> minusIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/Menda/Png/minus.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAADCAYAAACj1j4PAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAADhJREFUCJlj7O7uDmNgYEhjIAEwMTFNZ2FkZJRjYGBwJkXj
379/t7D8////AQMDw05SNDIwMDwEANK6DIovD6CyAAAAAElFTkSuQmCC'
]
{ #category : #'accessing - icons' }
MendaIcons >> plusIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self plusIconContents readStream)
]
{ #category : #'private - contents' }
MendaIcons >> plusIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/Menda/Png/plus.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAAKVJREFUKJHVkjEOgkAQRd9suIFcxUhvZeJpCA2FhoJ2uYyN
nEE9CZ5hP4WQkHVJjIWJv5r5839m83dMEjG6ritCCO3U1lVV3WJN9uYCJOVmtgcws01K41Lk
J/i90bz3haQ84rfAeaob4LEcShqyEEI7B7GCJsH1Xz81A+o4ckm7eZOZnYD7cu6ce1rqALz3
R+AyGQ9lWV5jzR/949qtDkAPryBSmhE5/jJyCd+z1gAAAABJRU5ErkJggg=='
]
{ #category : #'accessing - icons' }
MendaIcons >> smalltalkCodeIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self smalltalkCodeIconContents readStream)
]
{ #category : #'private - contents' }
MendaIcons >> smalltalkCodeIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/Menda/Png/smalltalkCode.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAAQhJREFUKJHtkrFOw0AQRGfOJ1FdkSB6pLgN+QAaJCQkfsS1
ZbcUDm18EvK/UOQPEA1ROiy+gDQBdxz20BwSsiho0jHV7urN7BbLuq4fJc0kbUn2xpiboige
6rq+JdmXZblcrVbnJJeSLMk5ydZKmpGckrwAAEl3AEDyTNInABhjTgBckkRkUkNyG5vTJEkm
zrk1RnLO3SdJMhmGIY2hGyupJwlr7Vue5/uxCQCyLAsA9t57G5f05jfwL/o3HsJo4xshhHDs
vbdd171XVfXxE2qa5iiE4ABMv32G5BwAjDEvAHbOuatxegjhGsAOwHMcLSzJVlJKciOpjwAA
PAHoY/0qaR2vW0hqvwBnzXKb8TsomwAAAABJRU5ErkJggg=='
]
{ #category : #'accessing - icons' }
MendaIcons >> tagAddIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self tagAddIconContents readStream)
]
{ #category : #'private - contents' }
MendaIcons >> tagAddIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/Menda/Png/tagAdd.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAATFJREFUKJF90DFPAjEcBfD3GuByGg1qiH4FRyOrDhjipl9B
HR25+whu0NldJ0dmHJ2c1U0HY6KigKLJwYE8F8GjAf5Jk+bf/tq+slwunwDIwymSNgiCmtsf
lgGQJ7nrDklVa21xFgQASGpKOpXU/bvRn4VNYn4RhuExgKvEc6fiJDyqVCqXAApO1onYJDZ4
JHdI0j19EjYkraRoUo71zXcsZOOJmJJgrS1KqpL0k3B77xG31zk0Xv7bkiKS+5QEAGM4X3hG
OvODldUOvj4yiLsG9zfLqD/NAcBA0sEIJvFSrusbI2xsveLhLovPhofvdhpxJzUgeVgqlc6S
v4ogCGok91tvXtSs++j1DNotD826P4ZGGd0a3jy/2PPjKIV+34yhqdDJ7LloJkzgtTAMz921
X92gun92K18+AAAAAElFTkSuQmCC'
]
{ #category : #'accessing - icons' }
MendaIcons >> tagMinusIcon [
"Private - Generated method"
^Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: self tagMinusIconContents readStream)
]
{ #category : #'private - contents' }
MendaIcons >> tagMinusIconContents [
"Private - Method generated with the content of the file File @ /home/offray/Programas/Grafoscopio/Dev/Common/Icons/Menda/Png/tagMinus.png"
^ 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABHNCSVQICAgIfAhkiAAAAAlw
SFlzAAAOxAAADsQBlSsOGwAAAPhJREFUKJGF0bFKQzEUBuD/D9Zy3RQKPsh9gkpx7Cuoo+NN
HqHbvZm76+TYuY4+gqubIDg4iFBbaP8u9ZIcrrcHAiHJl5NzwrquZwBKmCAZvfdLu/4XDkBJ
8toOSYsY46QPAgAkfUmaS1ofMhZ92CXzpxDCPYCX5Ln/4hTeNU3zDGBsau3ELjkwJHlFkvb2
LuxIRkmrrjr6MCUhxjiRtCBZHLtA0orklJIAIMPl+AOD020G3l4v8Pl+BgA7STctTPH5aF04
pwz+fA+w+T3ZkbytquohgzazeWWLgPw7AADe+yXJqWlYhtrmdEWSeWhRL0zwZQjh0e7tAVcM
m6R0vbZ+AAAAAElFTkSuQmCC'
]