[Newbies] Squeak in commercial projects

Edgar J. De Cleene edgardec2001 at yahoo.com.ar
Wed Mar 7 08:31:42 UTC 2007

El 3/6/07 8:03 PM, "Jens Pall" <jens at axonspace.com> escribió:

> Yes, I've seen bits and pieces of the lock down procedure but haven't
> been able to successfully lock an image (haven't tried very hard
> though). This is a step inn the right direction but I'm a bit concerned
> about upgrades. How would I ship an upgrade without sending the whole
> image again? Can I somehow export the new/changed bytecode and import it
> at the customer's site?
> JP

I following your exchange with Ron.

My tip.

To a Ned Preferences disableProgrammerFacilities method I usually add a
modified World menu

!TheWorldMenu methodsFor: 'construction' stamp: 'edc 1/29/2006 07:18'!
    "Build the menu that is put up when the screen-desktop is
    clicked on"
    | menu |
    menu := MenuMorph new defaultTarget: self.
    menu commandKeyHandler: self.
    self colorForDebugging: menu.
    menu addStayUpItem.
    self fillIn: menu from: {{'restore display (r)'. {World.
#restoreMorphicDisplay}. 'repaint the screen -- useful for removing unwanted
display artifacts, lingering cursors, etc.'}. nil}.
    Preferences simpleMenus
        ifFalse: [self fillIn: menu from: {{'open...'. {self. #openWindow}}.
{'windows...'. {self. #windowsDo}}. {'changes...'. {self. #changesDo}}}].
    self fillIn: menu from: {{'help...'. {self. #helpDo}. 'puts up a menu of
useful items for updating the system, determining what version you are
running, and much else'}. {'appearance...'. {self. #appearanceDo}. 'put up a
menu offering many controls over appearance.'}}.
    Preferences simpleMenus
        ifFalse: [self fillIn: menu from: {{'do...'. {Utilities.
#offerCommonRequests}. 'put up an editible list of convenient expressions,
and evaluate the one selected.'}}].
    self fillIn: menu from: {
        {'new morph...' . { self  . #newMorph }. 'Offers a variety of ways
to create new objects'}.
    Preferences simpleMenus
        ifFalse: [self fillIn: menu from: {{'debug...'. {self. #debugDo}. 'a
menu of debugging items'}}].
    self fillIn: menu from: {nil. {'save'. {SmalltalkImage current.
#saveSession}. 'save the current version of the image on disk'}. {'save
as...'. {SmalltalkImage current. #saveAs}. 'save the current version of the
image on disk under a new name.'}. {'save as new version'. {SmalltalkImage
current. #saveAsNewVersion}. 'give the current image a new version-stamped
name and save it under that name on disk.'}. {'save and quit'. {self.
#saveAndQuit}. 'save the current image on disk, and quit out of Squeak.'}.
{'quit'. {self. #quitSession}. 'quit out of Squeak.'}}.
    ^ menu! !

Compare with what you have in your image and suit to needs.

Also I usually add a makeRTS method to things what I develop and wihst
This is a morphic button what sends the button to the class in use, do all
Ned trick and mine adds, save image with wishd name and destroy button.

Former I cook SqueakLight, my striped first and load what I wish version of
Squeak. I could produce a 3.7 version based app as small as 3.8 Mb and grow
to what you need (see what is in official Squeak site)

For managing updates in a form similar to what Squeak uses , I use a
commercial free 24/24 server.

The complete process could be used, I have on my ftp several semi closed own
versions of what a Squeak app could be from different times, for pople could
be how this have some years of evolution.

password: elpelotero  (on approximate 09:00 to 20:00 GMT, dig and take what
you like, at your own risk)

Fell free to ask here or private



Preguntá. Respondé. Descubrí. 
Todo lo que querías saber, y lo que ni imaginabas, 
está en Yahoo! Respuestas (Beta). 
¡Probalo ya! 

More information about the Beginners mailing list