From damien.cassou at laposte.net Tue Nov 1 10:57:00 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Tue, 01 Nov 2005 10:57:00 +0100 Subject: [SW2] Example browser bug In-Reply-To: <17D4A1FA-8387-4E43-8E0B-98207972D403@iam.unibe.ch> References: <43664CF6.7060903@laposte.net> <17D4A1FA-8387-4E43-8E0B-98207972D403@iam.unibe.ch> Message-ID: <43673BEC.9010902@laposte.net> Lukas Renggli a ?crit : >> Open : http://localhost:8080/seaside/examplebrowser >> Change "exampleEditor" to "exampleMeta" in the list and click 'ok'. > > > This has been fixed with the latest versions on SqueakMap and in the > Monticello Reporsitory. > It seems that the magritte monticello repository is not up-to-date. From renggli at iam.unibe.ch Tue Nov 1 20:24:40 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 1 Nov 2005 20:24:40 +0100 Subject: [SW2] Example browser bug In-Reply-To: <17D4A1FA-8387-4E43-8E0B-98207972D403@iam.unibe.ch> References: <43664CF6.7060903@laposte.net> <17D4A1FA-8387-4E43-8E0B-98207972D403@iam.unibe.ch> Message-ID: <710C42F1-15CB-4C45-AE74-BAA2AD0F4C86@iam.unibe.ch> On 31 Oct 2005, at 21:21, Lukas Renggli wrote: >> Open : http://localhost:8080/seaside/examplebrowser >> Change "exampleEditor" to "exampleMeta" in the list and click 'ok'. >> > > This has been fixed with the latest versions on SqueakMap and in > the Monticello Reporsitory. Yeah, sorry about that. Again this bug was caused by a misspelled method-extension category name; so I couldn't reproduce in my image and in other peoples image this method was simply missing. I need to do something, that this is less likely to happen over and over again ... Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Tue Nov 1 20:24:40 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 1 Nov 2005 20:24:40 +0100 Subject: [SW2] Example browser bug In-Reply-To: <17D4A1FA-8387-4E43-8E0B-98207972D403@iam.unibe.ch> References: <43664CF6.7060903@laposte.net> <17D4A1FA-8387-4E43-8E0B-98207972D403@iam.unibe.ch> Message-ID: <710C42F1-15CB-4C45-AE74-BAA2AD0F4C86@iam.unibe.ch> On 31 Oct 2005, at 21:21, Lukas Renggli wrote: >> Open : http://localhost:8080/seaside/examplebrowser >> Change "exampleEditor" to "exampleMeta" in the list and click 'ok'. >> > > This has been fixed with the latest versions on SqueakMap and in > the Monticello Reporsitory. Yeah, sorry about that. Again this bug was caused by a misspelled method-extension category name; so I couldn't reproduce in my image and in other peoples image this method was simply missing. I need to do something, that this is less likely to happen over and over again ... Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Tue Nov 1 20:24:40 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 1 Nov 2005 20:24:40 +0100 Subject: [SW2] Example browser bug In-Reply-To: <17D4A1FA-8387-4E43-8E0B-98207972D403@iam.unibe.ch> References: <43664CF6.7060903@laposte.net> <17D4A1FA-8387-4E43-8E0B-98207972D403@iam.unibe.ch> Message-ID: <710C42F1-15CB-4C45-AE74-BAA2AD0F4C86@iam.unibe.ch> On 31 Oct 2005, at 21:21, Lukas Renggli wrote: >> Open : http://localhost:8080/seaside/examplebrowser >> Change "exampleEditor" to "exampleMeta" in the list and click 'ok'. >> > > This has been fixed with the latest versions on SqueakMap and in > the Monticello Reporsitory. Yeah, sorry about that. Again this bug was caused by a misspelled method-extension category name; so I couldn't reproduce in my image and in other peoples image this method was simply missing. I need to do something, that this is less likely to happen over and over again ... Lukas -- Lukas Renggli http://www.lukas-renggli.ch From damien.cassou at laposte.net Wed Nov 2 09:54:42 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Wed, 02 Nov 2005 09:54:42 +0100 Subject: [SW2] Installation fail due to the licence Message-ID: <43687ED2.509@laposte.net> Hi, at this end of the installation, the following squeak code is executed : SW2Kernel>>defaultInfoLicense ^ SW2Page new title: 'License'; contents: '!' , self class license. The method SW2Kernel class>>licence does not exist. -- Damien From renggli at iam.unibe.ch Wed Nov 2 10:07:47 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 2 Nov 2005 10:07:47 +0100 Subject: [SW2] Installation fail due to the licence In-Reply-To: <43687ED2.509@laposte.net> References: <43687ED2.509@laposte.net> Message-ID: <6CD5BD76-E554-4CCD-9D19-574896F10901@iam.unibe.ch> > at this end of the installation, the following squeak code is executed There is no SqueakMap entry and no working Sar-Installation for SmallWiki 2 yet. There is a lot of source code in the packages that does not work yet. Therefor you have to wait to get a one click installation ;-) Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Wed Nov 2 10:11:13 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 2 Nov 2005 10:11:13 +0100 Subject: [SW2] Installation fail due to the licence In-Reply-To: <43687ED2.509@laposte.net> References: <43687ED2.509@laposte.net> Message-ID: > SW2Kernel>>defaultInfoLicense > ^ SW2Page new > title: 'License'; > contents: '!' , self class license. Aha, I see, you were talking about a different problem. :-S That should be "SW2Distribution license" instead of "self class license", I think. This is because of the ongoing refactorings towards a release. I will commit a fixed version later today. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From damien.cassou at laposte.net Wed Nov 2 10:23:17 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Wed, 02 Nov 2005 10:23:17 +0100 Subject: [SW2] Installation fail due to the licence In-Reply-To: References: <43687ED2.509@laposte.net> Message-ID: <43688585.1020708@laposte.net> Lukas Renggli wrote: >> SW2Kernel>>defaultInfoLicense >> ^ SW2Page new >> title: 'License'; >> contents: '!' , self class license. > > Aha, I see, you were talking about a different problem. :-S > > That should be "SW2Distribution license" instead of "self class > license", I think. This is because of the ongoing refactorings > towards a release. I will commit a fixed version later today. Thank you. I'm sorry to not have been enough explicit :-) -- Damien From ducasse at iam.unibe.ch Wed Nov 2 11:10:07 2005 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Wed, 2 Nov 2005 11:10:07 +0100 Subject: [BUG] rendering as is Message-ID: <07EC6654-773A-47F7-A2A6-A1891511B57D@iam.unibe.ch> Hi = = = = =DISPLAY =localhost:0.0 = = = does not render the text without = Stef From bert at impara.de Wed Nov 2 12:07:26 2005 From: bert at impara.de (Bert Freudenberg) Date: Wed, 2 Nov 2005 12:07:26 +0100 Subject: [FIX][BUG] rendering as is In-Reply-To: <07EC6654-773A-47F7-A2A6-A1891511B57D@iam.unibe.ch> References: <07EC6654-773A-47F7-A2A6-A1891511B57D@iam.unibe.ch> Message-ID: Am 02.11.2005 um 11:10 schrieb st?phane ducasse: > Hi > > = > = ="http://www.apple.com/DTDs/PropertyList-1.0.dtd"> > = > = > =DISPLAY > =localhost:0.0 > = > = > = > > does not render the text without = A quick fix is this change to SWHtmlWriteStream>>htmlEscapeTable htmlEscapeTable ^(stack isEmpty or: [stack last ~= 'pre']) ifTrue: [self class htmlEscapeTable] ifFalse: [self class attributeEscapeTable] - Bert - From renggli at iam.unibe.ch Wed Nov 2 18:41:30 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 2 Nov 2005 18:41:30 +0100 Subject: [SW2] Installation fail due to the licence In-Reply-To: <43688585.1020708@laposte.net> References: <43687ED2.509@laposte.net> <43688585.1020708@laposte.net> Message-ID: <1032BCB2-A219-4ADB-AE7B-A8F4E3479C8D@iam.unibe.ch> >>> SW2Kernel>>defaultInfoLicense >>> ^ SW2Page new >>> title: 'License'; >>> contents: '!' , self class license. >> >> Aha, I see, you were talking about a different problem. :-S >> >> That should be "SW2Distribution license" instead of "self class >> license", I think. This is because of the ongoing refactorings >> towards a release. I will commit a fixed version later today. > > Thank you. I'm sorry to not have been enough explicit :-) SmallWiki2-All-lr.111 fixes this issue. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Wed Nov 9 22:25:56 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 9 Nov 2005 22:25:56 +0100 Subject: [SW2] Solution to keep ids with a list In-Reply-To: <43719EA5.2070409@laposte.net> References: <43719EA5.2070409@laposte.net> Message-ID: <508BE5ED-1D10-4227-A34B-676382D8F70D@iam.unibe.ch> Hi Damien, your approach is certainly very interesting. Congratulations, you are the first one to use Magritte together with a relational database! I was thinking about similar things, especially using Magritte (maybe together with ROE) to do relational object mapping. Having a generic framework like this would be very cool. Basically Magritte descriptions can be directly mapped to a relational-database: - MAConatiner --> Table (that automatically alter the tables as soon as the containing descriptions change) - MAElementDescription --> Column - MAStringDescription -> VARCHAR - MANumberDescription -> INT - MADateDescription -> DATE - ... - MAeRelationship --> Foreign Key - MAOneToOneRelationship -> 1:1 mapping - MAOneToManyRelationship -> 1:n mapping You are using the MAAssociationDescription to do the mapping from the db-id to the object? I think a database-layer should be as transparent as possible and not require the programmer to think about ids and primary-keys, etc. But yeah, this is not an easy problem ;-) I am interested to see a demo of your code! Lukas On 9 Nov 2005, at 08:00, Damien Cassou wrote: > Hi Lukas, > > I found a problem and a solution what do you think about it ? > > My project works with DB. I have a Table State which stores > different stats (Switzerland, France, Espana...). I have a table > Person with a field for the orign state (where the person was borned). > When I edit a person, I want a SingleOptionComponent representing > the different states in the DB (the state names). And when I save > the form, I want the Id of the state, not its name (because the > Person table use a foreing key to the state table). > > My Solution : > > - Add a new field for MADescription named : #withId (and implement > isWithId, beWithId...) > - Create an AssociationDescription with a #kind method returning > the class Association. AssociationDescription inherit from > MAElementDescription. > - Add a description to the person with: > options: (MADynamicObject on: [GISQL > getNamesCollectionFrom: 'Select Id, Name FROM State ORDER BY Name']); > reference: GIAssociationDescription new; > > #getNamesCollectionFrom returns an association collection of type > Id->Name > > When I want to get the Id of the model with the description I use : > > value := description accessor read: aDescribedObject. > description isWithId ifTrue: [ value := value key ]. > > > It works great. What is your opinion about this ? > > Thanks -- Lukas Renggli http://www.lukas-renggli.ch From fpluquet at yahoo.fr Thu Nov 10 00:24:38 2005 From: fpluquet at yahoo.fr (Frederic Pluquet) Date: Thu, 10 Nov 2005 00:24:38 +0100 Subject: [SmallWiki] A Private SmallWiki Message-ID: <2BE93395-DCA5-4AC6-85B1-3823D1FD87AC@yahoo.fr> Hi everybody, I needed to make a private folder in SmallWiki, for students but also for me and other participants at the wiki. I developped an extension of SmallWiki that allows to create personal and private folders/pages/resources and manage (private) users. It works good and very simply. For more informations : http://decomp.ulb.ac.be/frdricpluquet/personalstuff/. Any questions or remarks, please reply this email. Fr?d --------------------- Fr?d?ric Pluquet Assistant at Universit? Libre de Bruxelles (Brussel) email : fpluquet at ulb.ac.be [ ___________________________________________________________________________ Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger T?l?chargez cette version sur http://fr.messenger.yahoo.com From philippe.marschall at gmail.com Thu Nov 10 00:40:39 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Thu, 10 Nov 2005 00:40:39 +0100 Subject: [SmallWiki] A Private SmallWiki In-Reply-To: <2BE93395-DCA5-4AC6-85B1-3823D1FD87AC@yahoo.fr> References: <2BE93395-DCA5-4AC6-85B1-3823D1FD87AC@yahoo.fr> Message-ID: <66666f210511091540wd1810d5k@mail.gmail.com> > I needed to make a private folder in SmallWiki, for > students but also for me and other participants at the > wiki. I developped an extension of SmallWiki that > allows to create personal and private > folders/pages/resources and manage (private) users. AFAIK this is already possible with SmallWiki: Root-Folder (anonymous: #( view edit )) Read/Write-Subwiki Readonly-Subwiki (anonymous: #( view ) Private-Subwiki (anonymous: #( )) From damien.cassou at laposte.net Thu Nov 10 06:33:42 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Thu, 10 Nov 2005 06:33:42 +0100 Subject: [SW2] Solution to keep ids with a list In-Reply-To: <508BE5ED-1D10-4227-A34B-676382D8F70D@iam.unibe.ch> References: <43719EA5.2070409@laposte.net> <508BE5ED-1D10-4227-A34B-676382D8F70D@iam.unibe.ch> Message-ID: <4372DBB6.7050006@laposte.net> Lukas Renggli a ?crit : > Hi Damien, > > your approach is certainly very interesting. Congratulations, you are > the first one to use Magritte together with a relational database! > > I was thinking about similar things, especially using Magritte (maybe > together with ROE) to do relational object mapping. Having a generic > framework like this would be very cool. Yes, we need to work on something like this. > Basically Magritte descriptions can be directly mapped to a > relational-database: > [...] > You are using the MAAssociationDescription to do the mapping from the > db-id to the object? I think a database-layer should be as > transparent as possible and not require the programmer to think about > ids and primary-keys, etc. But yeah, this is not an easy problem ;-) And I work with what I have because I have no time to improve my code. > I am interested to see a demo of your code! I'm sure it is not very interesting currently and I'm far from proud of my source code :-( But you can already download from SqueakSource : The project is called 'Gestion Parc Immobilier' and can be found with the search tool using '*Immobilier*'. It is currently in french but will be changed after if you want to do something with it. Bye From renggli at iam.unibe.ch Mon Nov 14 14:17:15 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 14 Nov 2005 14:17:15 +0100 Subject: [SW2] [FAQ] Install SmallWiki 2 Message-ID: <9954B64E-75DF-4A2A-B7FA-2EA8A50844F1@iam.unibe.ch> 1. Take a Squeak 3.8 (3.7 or 3.9 should also work) 2. Install Magritte from SqueakMap. It will ask you if you would like to install Seaside as well, do so. 3. Install OmniBrowser from SqueakMap. 3. Add the following repository to Monticello and load SmallWiki2-All MCHttpRepository location: 'http://mc.lukas-renggli.ch/smallwiki2' user: '' password: '' Soon I will add another package for SmallWiki to SqueakMap, this will pull in all the required packages including Magritte and its dependencies. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Mon Nov 14 14:20:22 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 14 Nov 2005 14:20:22 +0100 Subject: [SW2] [FAQ] Install SmallWiki 2 In-Reply-To: <9954B64E-75DF-4A2A-B7FA-2EA8A50844F1@iam.unibe.ch> References: <9954B64E-75DF-4A2A-B7FA-2EA8A50844F1@iam.unibe.ch> Message-ID: Oups, there are more dependencies: > [...] > 3. Install OmniBrowser from SqueakMap. 3.a Install SmaCC from SqueakMap > [...] > 4. Add the following repository to Monticello and load SmallWiki2-All -- Lukas Renggli http://www.lukas-renggli.ch From philippe.marschall at gmail.com Mon Nov 14 16:37:42 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Mon, 14 Nov 2005 16:37:42 +0100 Subject: [SW2] [FAQ] Install SmallWiki 2 In-Reply-To: References: <9954B64E-75DF-4A2A-B7FA-2EA8A50844F1@iam.unibe.ch> Message-ID: <66666f210511140737k8d9ba61g@mail.gmail.com> Is recompilation of the parser and scanner still needed? Doesn't Smacc need RB? I guess the loading of Seaside as dependency of Magritte loads all dependendices of Seaside (KomHttp, Seaside-Async, DynamicBindings)? 2005/11/14, Lukas Renggli : > Oups, there are more dependencies: > > > [...] > > 3. Install OmniBrowser from SqueakMap. > > 3.a Install SmaCC from SqueakMap > > > [...] > > 4. Add the following repository to Monticello and load SmallWiki2-All > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > From renggli at iam.unibe.ch Mon Nov 14 17:24:38 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 14 Nov 2005 17:24:38 +0100 Subject: [SW2] [FAQ] Install SmallWiki 2 In-Reply-To: <66666f210511140737k8d9ba61g@mail.gmail.com> References: <9954B64E-75DF-4A2A-B7FA-2EA8A50844F1@iam.unibe.ch> <66666f210511140737k8d9ba61g@mail.gmail.com> Message-ID: <7F984221-D86F-47AD-93ED-94973C691044@iam.unibe.ch> > Is recompilation of the parser and scanner still needed? > Doesn't Smacc need RB? Yeah, you are right: SmaCC-Development requires the re-factoring- browser. SmaCC-Runtime doesn't, but since you are (still) required to recompile the parser due to this annoying bug somewhere in-between SmaCC/Monticello you have to load the full thing. Else it wouldn't be required, since SmaCC-Runtime is in the base-3.8 image. > I guess the loading of Seaside as dependency of Magritte loads all > dependendices of Seaside (KomHttp, Seaside-Async, DynamicBindings)? Yep, loading Magritte pulls in all the necessary dependencies for Magritte, what currently is: DynamicBindings, KomServices, KomHttpServer, Seaside2, Scriptaculous, Magritte-Model, Magritte- Tests, Magritte-Morph, Magritte-Seaside. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From damien.cassou at laposte.net Tue Nov 15 16:54:09 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Tue, 15 Nov 2005 16:54:09 +0100 Subject: [SW2] Bug in MASingleOptionDescription Message-ID: <437A04A1.60009@laposte.net> Hi, if I have a MASingleOptionDescription NOT requiered, and with a default value of nil, the MASelectListComponent will display nil two times in the list box. It adds one first with MAOptionDescription>>allOptionsWith: It adds nil too with MASingleOptionDescription>>prepareOption Bye From renggli at iam.unibe.ch Tue Nov 15 20:34:06 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 15 Nov 2005 20:34:06 +0100 Subject: [SW2] Bug in MASingleOptionDescription In-Reply-To: <437A04A1.60009@laposte.net> References: <437A04A1.60009@laposte.net> Message-ID: <4EB43ECC-6078-412F-BECE-FF3B97C2CD34@iam.unibe.ch> On 15 Nov 2005, at 16:54, Damien Cassou wrote: > if I have a MASingleOptionDescription NOT requiered, and with a > default value of nil, the MASelectListComponent will display nil > two times in the list box. This is fixed in Magritte-All-lr.84 Thanks for reporting, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From damien.cassou at laposte.net Wed Nov 16 08:12:02 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Wed, 16 Nov 2005 08:12:02 +0100 Subject: [SW2] Can't load Magritte-Seaside-lr.153 Message-ID: <437ADBC2.2080006@laposte.net> Hi, I can't manage to load the Magritte-Seaside-lr.153 with monticello. When I click on this version in the Magritte-Seaside package, I have the following message : UndefinedObject>>doesNotUnderstand: #readStream. Can you just save your magritte package in a new version to try please ? SqueakVM 3.7-7 16 November 2005 6:48:43 am VM: unix - a SmalltalkImage Image: Squeak3.9alpha [latest update: #6695] SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /.automount/bang/s4/i2/cassou/squeak Trusted Dir /.automount/bang/s4/i2/cassou/squeak/secure Untrusted Dir /.automount/bang/s4/i2/cassou/squeak/My Squeak UndefinedObject(Object)>>doesNotUnderstand: #readStream Receiver: nil Arguments and temporary variables: aMessage: readStream Receiver's instance variables: nil MCScanner class>>scanTokens: Receiver: MCScanner Arguments and temporary variables: aString: nil Receiver's instance variables: superclass: Object methodDict: a MethodDictionary(#next->a CompiledMethod (146) #nextArray->a Comp...etc... format: 132 instanceVariables: #('stream') organization: ('as yet unclassified' next nextArray nextString nextSymbol strea...etc... subclasses: nil name: #MCScanner classPool: nil sharedPools: nil environment: a SystemDictionary(lots of globals) category: nil MCMczReader>>parseMember: Receiver: a MCMczReader Arguments and temporary variables: fileName: 'version' tokens: nil Receiver's instance variables: stream: a RWBinaryOrTextStream a ByteArray(115 101 114 118 101 114 32 97 98 111...etc... package: nil info: nil definitions: nil dependencies: nil stepChildren: nil zip: a ZipArchive infoCache: nil MCMczReader>>loadVersionInfo Receiver: a MCMczReader Arguments and temporary variables: Receiver's instance variables: stream: a RWBinaryOrTextStream a ByteArray(115 101 114 118 101 114 32 97 98 111...etc... package: nil info: nil definitions: nil dependencies: nil stepChildren: nil zip: a ZipArchive infoCache: nil --- The full stack --- UndefinedObject(Object)>>doesNotUnderstand: #readStream MCScanner class>>scanTokens: MCMczReader>>parseMember: MCMczReader>>loadVersionInfo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - MCMczReader(MCVersionReader)>>info [] in MCHttpRepository(MCFileBasedRepository)>>loadVersionInfoFromFileNamed: {[:r | r info]} MCMczReader(Object)>>ifNotNilDo: MCHttpRepository>>versionReaderForFileNamed:do: MCHttpRepository(MCFileBasedRepository)>>loadVersionInfoFromFileNamed: MCHttpRepository(MCFileBasedRepository)>>versionInfoFromFileNamed: MCFileRepositoryInspector>>versionInfo MCFileRepositoryInspector>>versionSummary MCFileRepositoryInspector(MCVersionInspector)>>summary PluggableTextMorphPlus(PluggableTextMorph)>>getText PluggableTextMorphPlus(PluggableTextMorph)>>update: PluggableTextMorphPlus>>update: [] in MCFileRepositoryInspector(Object)>>changed: {[:aDependent | aDependent update: aParameter]} DependentsArray>>do: MCFileRepositoryInspector(Object)>>changed: MCFileRepositoryInspector>>versionSelection: PluggableListMorphPlus(PluggableListMorph)>>changeModelSelection: PluggableListMorphPlus(PluggableListMorph)>>mouseUp: PluggableListMorphPlus(Morph)>>handleMouseUp: MouseButtonEvent>>sentTo: PluggableListMorphPlus(Morph)>>handleEvent: PluggableListMorphPlus(Morph)>>handleFocusEvent: [] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self. ActiveEvent := anEvent. result := focusHolder han...]} [] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]} BlockContext>>on:do: PasteUpMorph>>becomeActiveDuring: HandMorph>>sendFocusEvent:to:clear: HandMorph>>sendEvent:focus:clear: HandMorph>>sendMouseEvent: HandMorph>>handleEvent: HandMorph>>processEvents [] in WorldState>>doOneCycleNowFor: {[:h | ActiveHand := h. h processEvents. capturingGesture := capturingGest...]} Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor yield. false] whileFalse. nil]} [] in BlockContext>>newProcess {[self value. Processor terminateActive]} From renggli at iam.unibe.ch Wed Nov 16 13:32:59 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 16 Nov 2005 13:32:59 +0100 Subject: [SW2] Can't load Magritte-Seaside-lr.153 In-Reply-To: <437ADBC2.2080006@laposte.net> References: <437ADBC2.2080006@laposte.net> Message-ID: <5CE61109-3F16-4418-8409-5C32F2CD4D68@iam.unibe.ch> > Can you just save your magritte package in a new version to try > please ? I can load the latest code from here (including Magritte-Seaside-lr. 153), so it should be ok. Maybe you have a corrupted download in your cache? Try deleting the files in the folder 'package-cache' and evaluate 'MCFileBasedRepository flushAllCaches'. If this doesn't help I will commit a new version tonight. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From damien.cassou at laposte.net Wed Nov 16 15:34:52 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Wed, 16 Nov 2005 15:34:52 +0100 Subject: [SW2] Can't load Magritte-Seaside-lr.153 In-Reply-To: <5CE61109-3F16-4418-8409-5C32F2CD4D68@iam.unibe.ch> References: <437ADBC2.2080006@laposte.net> <5CE61109-3F16-4418-8409-5C32F2CD4D68@iam.unibe.ch> Message-ID: <437B438C.1040903@laposte.net> Lukas Renggli a ?crit : >> Can you just save your magritte package in a new version to try >> please ? > > I can load the latest code from here (including Magritte-Seaside-lr. > 153), so it should be ok. > > Maybe you have a corrupted download in your cache? Try deleting the > files in the folder 'package-cache' and evaluate > 'MCFileBasedRepository flushAllCaches'. If this doesn't help I will > commit a new version tonight. I used a previous image and everything worked fine. Thanks From jborden23 at mac.com Fri Nov 18 00:33:57 2005 From: jborden23 at mac.com (John Borden) Date: Thu, 17 Nov 2005 17:33:57 -0600 Subject: How to disable Smileys? In-Reply-To: <4315BDEC.6020502@impara.de> Message-ID: <9FC2F534-57C2-11DA-A9CC-00039388207A@mac.com> Hello, I tried the same thing in SW1, and it removed smilies alright, but then there were other problems. First the parser tests failed - When you had a page like: # list 1, item 1 # list 1, item 2 #list 2, item 1 This would get converted into: 1. list 1, item 1 2. list 1, item 2 3. list 2, item 1 (the newline gets dropped. Additionally, if you had a line with a single astrisks in it, like: page with single * start After you edited the page the second time, it would be: page with single \* start which seemed like a little reminder to escape it. If you simply saved the page again, it display with the backslash. The same can be done with square brackets under the right circumstances. Next I thought it was surely a type on my part, so I got a clean SW1 image and loaded SmaCC Development for <=3.8 (10) again, and then compiled the LALR(1) parser again without any change. All of the above problems still occurred (as well as the forsaken smilies). What version of SmaCC was used in Smallwiki? Was any code added after the classes were built? Thanks, John On Wednesday, August 31, 2005, at 09:25 AM, Thomas Fr?b wrote: > Thomas Fr?b wrote: > >> Hi, >> >> I use the latest version of SmallWiki 1 from SqueakLand. >> Is there a possiblity to disable the smileys in SmallWiki 1? >> I need to load some Data from outside the Wiki and I get parse errors >> when there are smileys in headlines. >> >> Besides: In the current SmaCC Runtime ( version 4 ) from SqueakMap >> the SmaCCParserError has no method "parameter". So you may use "tag" >> instead. >> >> Regards, >> Thomas > > ok, I've got it. Now I now (at least a bit) how to use the > SmaCCParserGenerator ;) > > Regards, > Thomas > From thf at impara.de Fri Nov 18 11:35:14 2005 From: thf at impara.de (Thomas Froeb) Date: Fri, 18 Nov 2005 11:35:14 +0100 Subject: How to disable Smileys? In-Reply-To: <9FC2F534-57C2-11DA-A9CC-00039388207A@mac.com> References: <9FC2F534-57C2-11DA-A9CC-00039388207A@mac.com> Message-ID: <437DAE62.7030202@impara.de> Hello, I have the problem with the dropped newline in lists too. You can hit a space with the newline to avoid the dropping. If you find the right Sanner/Parser definitions please let me know. I don't have the problem with the stars or square brackets. I had also Problems using the SmaCC Development for <=3.8 (10). The Smallwiki Parser seems to be created with an older version. I then used SmaCC Development for <=3.8 (1.4) and SmaCC Runtime (4) without errors. Regards, Thomas John Borden schrieb: > Hello, > I tried the same thing in SW1, and it removed smilies alright, but > then there were other problems. > First the parser tests failed - When you had a page like: > > # list 1, item 1 > # list 1, item 2 > > #list 2, item 1 > > This would get converted into: > > 1. list 1, item 1 > 2. list 1, item 2 > 3. list 2, item 1 > > (the newline gets dropped. Additionally, if you had a line with a > single astrisks in it, like: > > page with single * start > > After you edited the page the second time, it would be: > > page with single \* start > > which seemed like a little reminder to escape it. If you simply saved > the page again, it display with the backslash. The same can be done > with square brackets under the right circumstances. > > Next I thought it was surely a type on my part, so I got a clean SW1 > image and loaded SmaCC Development for <=3.8 (10) again, and then > compiled the LALR(1) parser again without any change. All of the > above problems still occurred (as well as the forsaken smilies). What > version of SmaCC was used in Smallwiki? Was any code added after the > classes were built? > Thanks, > John > > On Wednesday, August 31, 2005, at 09:25 AM, Thomas Fr?b wrote: > >> Thomas Fr?b wrote: >> >>> Hi, >>> >>> I use the latest version of SmallWiki 1 from SqueakLand. >>> Is there a possiblity to disable the smileys in SmallWiki 1? >>> I need to load some Data from outside the Wiki and I get parse >>> errors when there are smileys in headlines. >>> >>> Besides: In the current SmaCC Runtime ( version 4 ) from SqueakMap >>> the SmaCCParserError has no method "parameter". So you may use "tag" >>> instead. >>> >>> Regards, >>> Thomas >> >> >> ok, I've got it. Now I now (at least a bit) how to use the >> SmaCCParserGenerator ;) >> >> Regards, >> Thomas >> > From renggli at iam.unibe.ch Fri Nov 18 12:05:00 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 18 Nov 2005 12:05:00 +0100 Subject: [ANN] [PR] Pier 1.0.0-alpha on SqueakMap Message-ID: <83872B21-B84C-41F5-8DE9-59FDAEEDC8ED@iam.unibe.ch> Hi, I just published a first version of Pier (formerly called SmallWiki 2) on SqueakMap, it is still an unofficial and incomplete version, but it is closer to release than ever. Some things are still missing or incomplete (such as a proper and fully functional persistency, lots of tests, query engine is probably too complex ...), but that will certainly improve! The package includes all the requirements to use Pier within a 3.8 image, probably it also works in 3.7 and 3.9. The installer will ask in the beginning if Seaside should be installed, if you tell so, it will automatically go through all the requirements and load DynamicBindings, KomServices, KomHttpServer, Seaside and Scriptaculous. Then Magritte will be loaded and finally Pier. Start Seaside using "WAKom startOn: 8888" and fire up a browser on "http://localhost:8888/seaside/pier" to play with the system ... Now for those that have an existing image with code and a model inside they want to keep. That is possible as well of course, but it is not strait-forward: loading the new code from SqueakMap or Monticello won't work, because I renamed package- and class-prefixes. Copy the attached script to a workspace and follow the instructions step-by-step and everything will magically work. If you followed the naming conventions of SmallWiki 2 your code will be automatically updated as well, you just need to publish the new packages ;-) -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: migration.txt Url: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20051118/fbbe13ae/migration.txt -------------- next part -------------- Lukas -- Lukas Renggli http://www.lukas-renggli.ch From damien.cassou at laposte.net Fri Nov 18 23:08:14 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Fri, 18 Nov 2005 23:08:14 +0100 Subject: [ANN] [PR] Pier 1.0.0-alpha on SqueakMap In-Reply-To: <83872B21-B84C-41F5-8DE9-59FDAEEDC8ED@iam.unibe.ch> References: <83872B21-B84C-41F5-8DE9-59FDAEEDC8ED@iam.unibe.ch> Message-ID: <437E50CE.5010007@laposte.net> Lukas Renggli a ?crit : > Hi, > > I just published a first version of Pier (formerly called SmallWiki > 2) on SqueakMap, it is still an unofficial and incomplete version, > but it is closer to release than ever. Some things are still missing > or incomplete (such as a proper and fully functional persistency, > lots of tests, query engine is probably too complex ...), but that > will certainly improve! It is certainly a very good news. Thanks for Pier ! From philippe.marschall at gmail.com Sat Nov 19 00:06:56 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Sat, 19 Nov 2005 00:06:56 +0100 Subject: MASingleOptionDescription + MADynamicObject + #copy Message-ID: <66666f210511181506m57151d34w@mail.gmail.com> Hi Im running into some real strange Problems (= the image is locking up instantly without ALT + . working) when executing the code below. ^SVACLItem descriptionPrincipal copy stringWriter: SVAsStringWriter; yourself SVACLItems >> #descriptionPrincipal ^(MASingleOptionDescription selector: #principal label: 'Principal' priority: 200) options: (MADynamicObject on: [ PRCurrentContext value in: [ :context | context userManagement principals ] ]); reference: SVPrincipal description; beRequired; yourself. Then I saw that MADynamicObject does not implement #copy (or #postCopy) because it's a proxy and extends ProtoObject but sends it to #realSubject. I don't think this is really wanted for DynamicObjects. So the question is the usual one `Is the bug in my or Lukas' code or do I just have tomatoes on my eyes'? Cheers Philippe From philippe.marschall at gmail.com Sun Nov 20 12:38:48 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Sun, 20 Nov 2005 12:38:48 +0100 Subject: perbuilt Pier image with access control Message-ID: <66666f210511200338s7f5a10c6u@mail.gmail.com> Hi A prebuild Pier image with access control based on Squeak3.8-6665 is available at: http://www.iamexwi.unibe.ch/studenten/marschal/Spielverderber.tar.bz2 This is not a finished product but work in progress. The idea is to give anyone who is interested a first impression and the ability to provide feedback. However I'll march in this afternoon so I probably won't be able to respond for a week. You can find further informaiton about it at: http:/127.0.0.1:8080/seaside/pier/Information/Access http://kilana.unibe.ch/advanceddesignlabs/admin/ In addition to the acces control, it contains the following addons to Pier - a bookmarks widget that allows you to bookmark structures - a goto widget that allows you to enter a path and go to it - a walback in the stlye of Pier - ugly smilies and the following addons to magritte - descriptions for email, icq, aim, yahoo addresses Known issuses: - entering a wrong password displays a walkback and screws up the kernel lock, this is probably a Pier issue - bookmarking a structure bookmarks it twice, this is a SeasideAsync issue, but I'll probably move tho Scirptaculous anyway Cheers Philippe From renggli at iam.unibe.ch Sun Nov 20 18:25:03 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sun, 20 Nov 2005 18:25:03 +0100 Subject: MASingleOptionDescription + MADynamicObject + #copy In-Reply-To: <66666f210511181506m57151d34w@mail.gmail.com> References: <66666f210511181506m57151d34w@mail.gmail.com> Message-ID: > Then I saw that MADynamicObject does not implement #copy (or > #postCopy) because it's a proxy and extends ProtoObject but sends it > to #realSubject. I don't think this is really wanted for > DynamicObjects. So the question is the usual one `Is the bug in my or > Lukas' code or do I just have tomatoes on my eyes'? Yeah, that is probably a bug in my code since so far I never tried to copy an MADynamicObject. I added a new test that shows the problem (the proxy is resolved if copy it) and I fixed the problem. As a general advice for all Magritte users I suggest to try to avoid the use of MADynamicObject as much as possible, since this can lead to very difficult bugs. Often you have got the possibility to override #description on the instance-side of your model-objects and return a copied description that you have modified according to the context. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From ian at inextenso.com Mon Nov 21 11:12:00 2005 From: ian at inextenso.com (Ian Prince) Date: Mon, 21 Nov 2005 11:12:00 +0100 Subject: perbuilt Pier image with access control In-Reply-To: <66666f210511200338s7f5a10c6u@mail.gmail.com> References: <66666f210511200338s7f5a10c6u@mail.gmail.com> Message-ID: <933591DC-113A-46DB-AB8B-8A5BBFB40728@inextenso.com> Philippe, thanks for the announcement, I'm taking a look now at the access control. BTW, can I re-publish your announcement on my blog or do you prefer restricting access to the list? Cheers, Ian. On 20 Nov 2005, at 12:38, Philippe Marschall wrote: > Hi > > A prebuild Pier image with access control based on Squeak3.8-6665 is > available at: > http://www.iamexwi.unibe.ch/studenten/marschal/Spielverderber.tar.bz2 > > This is not a finished product but work in progress. The idea is to > give anyone who is interested a first impression and the ability to > provide feedback. However I'll march in this afternoon so I probably > won't be able to respond for a week. > > You can find further informaiton about it at: > http:/127.0.0.1:8080/seaside/pier/Information/Access > http://kilana.unibe.ch/advanceddesignlabs/admin/ > > In addition to the acces control, it contains the following addons > to Pier > - a bookmarks widget that allows you to bookmark structures > - a goto widget that allows you to enter a path and go to it > - a walback in the stlye of Pier > - ugly smilies > > and the following addons to magritte > - descriptions for email, icq, aim, yahoo addresses > > Known issuses: > - entering a wrong password displays a walkback and screws up the > kernel lock, this is probably a Pier issue > - bookmarking a structure bookmarks it twice, this is a SeasideAsync > issue, but I'll probably move tho Scirptaculous anyway > > Cheers > Philippe > -- Ian Prince ian at inextenso.com +41 78 880 27 02 Skype: inextenso_ian AIM: inextenso at mac.com From cbeler at enit.fr Mon Nov 21 11:19:27 2005 From: cbeler at enit.fr (=?ISO-8859-1?Q?C=E9drick_B=E9ler?=) Date: Mon, 21 Nov 2005 11:19:27 +0100 Subject: perbuilt Pier image with access control In-Reply-To: <66666f210511200338s7f5a10c6u@mail.gmail.com> References: <66666f210511200338s7f5a10c6u@mail.gmail.com> Message-ID: <43819F2F.3000905@enit.fr> Hi ! Pier is cool ;) it works great ( from squeakmap or using the "acl" image...) after recompiling the PRDocument scanner and parser... But in the two cases, I can't make the search widget working... I don't know if it's working or not... It says token not expected in MARelationScaner/parser... I recompiled it but still the same problem... Is it normal (not implemented...) ? Thanks C?drick >Hi > >A prebuild Pier image with access control based on Squeak3.8-6665 is >available at: >http://www.iamexwi.unibe.ch/studenten/marschal/Spielverderber.tar.bz2 > >This is not a finished product but work in progress. The idea is to >give anyone who is interested a first impression and the ability to >provide feedback. However I'll march in this afternoon so I probably >won't be able to respond for a week. > >You can find further informaiton about it at: >http:/127.0.0.1:8080/seaside/pier/Information/Access >http://kilana.unibe.ch/advanceddesignlabs/admin/ > >In addition to the acces control, it contains the following addons to Pier >- a bookmarks widget that allows you to bookmark structures >- a goto widget that allows you to enter a path and go to it >- a walback in the stlye of Pier >- ugly smilies > >and the following addons to magritte >- descriptions for email, icq, aim, yahoo addresses > >Known issuses: >- entering a wrong password displays a walkback and screws up the >kernel lock, this is probably a Pier issue >- bookmarking a structure bookmarks it twice, this is a SeasideAsync >issue, but I'll probably move tho Scirptaculous anyway > >Cheers >Philippe > > > > From renggli at iam.unibe.ch Mon Nov 21 13:13:12 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 21 Nov 2005 13:13:12 +0100 Subject: perbuilt Pier image with access control In-Reply-To: <43819F2F.3000905@enit.fr> References: <66666f210511200338s7f5a10c6u@mail.gmail.com> <43819F2F.3000905@enit.fr> Message-ID: <33C64640-B920-4523-9F1D-806B68B527BC@iam.unibe.ch> > Pier is cool ;) it works great ( from squeakmap or using the "acl" > image...) after recompiling the PRDocument scanner and parser... Thanks, it is really annoying that you have to recompile the scanner and parser. Currently I know no other workaround than recompiling. I send the problem to a guy here at the university that is looking for strange bugs using his implementation of an omniscent debugger, so maybe he can find out about the real problem. > But in the two cases, I can't make the search widget working... I > don't know if it's working or not... > It says token not expected in MARelationScaner/parser... I > recompiled it but still the same problem... Is it normal (not > implemented...) ? Mhh, it works in my image, but the syntax is not as strait forward as you might expect ;-) Some examples that are known to work: title='Information' title beginsWith: 'Info' OR title matches: '*orm*' level>1 AND text matches: '*ink*' kind='Table' If you just want to do a full text search you can write: 'Syntax' I know I should create a new page about pier with some documentation about its features. Also I should enhance the query parser to be less picky about its input. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Mon Nov 21 14:23:47 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 21 Nov 2005 14:23:47 +0100 Subject: [SW1] Making the action appear ... Message-ID: <8C4110ED-0539-465E-9C68-669C62A7CAE7@iam.unibe.ch> Hi Roel, the 3 things needed for an action to appear in SmallWiki 1 (see [1] for an example): 1. Return a label of your action: MyAction class>>title ^ 'My Action' 2. Register your action to the structures (or all) it should support: MyAction class>>initialize Structure withAllSubclasses do: [ :each | each registerAction: self ] 3. Add your action to the template using the template editor. Hope this helps. Cheers, Lukas [1] http://www.iam.unibe.ch/~scg/smallwiki/smallwiki.pdf, Page 38 -- Lukas Renggli http://www.lukas-renggli.ch From cbeler at enit.fr Mon Nov 21 15:28:45 2005 From: cbeler at enit.fr (=?ISO-8859-1?Q?C=E9drick_B=E9ler?=) Date: Mon, 21 Nov 2005 15:28:45 +0100 Subject: perbuilt Pier image with access control In-Reply-To: <33C64640-B920-4523-9F1D-806B68B527BC@iam.unibe.ch> References: <66666f210511200338s7f5a10c6u@mail.gmail.com> <43819F2F.3000905@enit.fr> <33C64640-B920-4523-9F1D-806B68B527BC@iam.unibe.ch> Message-ID: <4381D99D.4030500@enit.fr> > Thanks, it is really annoying that you have to recompile the scanner > and parser. Currently I know no other workaround than recompiling. I > send the problem to a guy here at the university that is looking for > strange bugs using his implementation of an omniscent debugger, so > maybe he can find out about the real problem. anyway, it's quite simple to compile it with the interface... but maybe as a workaround to wait for a better solution, is it possible to do that manipulation through the install ? (in a class initialize...or even by writing some lines of code in the workspace...) Would it be something like that (doesn't work here as scanerDefinitonComment doesnt return a string...): | parserCompiler | parserCompiler := SmaCCGrammarCompiler new. parserCompiler buildScanner: PRDocumentScanner scannerDefinitionComment ??? andParser: PRDocumentParser parserDefinitionComment. ??? parserCompiler compileInto: PRDocumentScanner andParser: PRDocumentParser. > Mhh, it works in my image, but the syntax is not as strait forward as > you might expect ;-) oh ok ;) I tried to find out how the query stuff is working but did not really succed lol - the query mechanism is still a bit obscure for me... but it's working...cool > Some examples that are known to work: > > title='Information' > title beginsWith: 'Info' OR title matches: '*orm*' > level>1 AND text matches: '*ink*' > kind='Table' > > If you just want to do a full text search you can write: > > 'Syntax' > I know I should create a new page about pier with some documentation > about its features. Also I should enhance the query parser to be less > picky about its input. I imagine it's all a question of time :). I wish I could help but my understanding remains quite limited... See you C?drick From renggli at iam.unibe.ch Mon Nov 21 16:40:35 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 21 Nov 2005 16:40:35 +0100 Subject: perbuilt Pier image with access control In-Reply-To: <4381D99D.4030500@enit.fr> References: <66666f210511200338s7f5a10c6u@mail.gmail.com> <43819F2F.3000905@enit.fr> <33C64640-B920-4523-9F1D-806B68B527BC@iam.unibe.ch> <4381D99D.4030500@enit.fr> Message-ID: >> Thanks, it is really annoying that you have to recompile the >> scanner and parser. Currently I know no other workaround than >> recompiling. I send the problem to a guy here at the university >> that is looking for strange bugs using his implementation of an >> omniscent debugger, so maybe he can find out about the real problem. > > anyway, it's quite simple to compile it with the interface... but > maybe as a workaround to wait for a better solution, is it > possible to do that manipulation through the install ? (in a class > initialize...or even by writing some lines of code in the > workspace...) > > | parserCompiler | > parserCompiler := SmaCCGrammarCompiler new. > parserCompiler > buildScanner: PRDocumentScanner scannerDefinitionComment ??? > andParser: PRDocumentParser parserDefinitionComment. ??? > parserCompiler compileInto: PRDocumentScanner andParser: > PRDocumentParser. Yeah, the only problem here is that if I want to recompile the parsers after installing I need to load the Refactoring-Browser and SmaCC-Development as prerequisite. Both are pretty big packages that are not needed otherwise, however if I can find a solution to that problem, that will be the only workaround. > Would it be something like that (doesn't work here as > scanerDefinitonComment doesnt return a string...): Something like (PRDocumentScanner class sourceCodeAt: #scannerDefinitionComment) readStream upTo: $"; upTo: $". and (PRDocumentParser class sourceCodeAt: #parserDefinitionComment) readStream upTo: $"; upTo: $". does work in my image. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Mon Nov 21 18:01:15 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 21 Nov 2005 18:01:15 +0100 Subject: perbuilt Pier image with access control In-Reply-To: References: <66666f210511200338s7f5a10c6u@mail.gmail.com> <43819F2F.3000905@enit.fr> <33C64640-B920-4523-9F1D-806B68B527BC@iam.unibe.ch> <4381D99D.4030500@enit.fr> Message-ID: >>> Thanks, it is really annoying that you have to recompile the >>> scanner and parser. Currently I know no other workaround than >>> recompiling. I send the problem to a guy here at the university >>> that is looking for strange bugs using his implementation of an >>> omniscent debugger, so maybe he can find out about the real >>> problem. >> >> anyway, it's quite simple to compile it with the interface... but >> maybe as a workaround to wait for a better solution, is it >> possible to do that manipulation through the install ? (in a >> class initialize...or even by writing some lines of code in the >> workspace...) >> >> | parserCompiler | >> parserCompiler := SmaCCGrammarCompiler new. >> parserCompiler >> buildScanner: PRDocumentScanner scannerDefinitionComment ??? >> andParser: PRDocumentParser parserDefinitionComment. ??? >> parserCompiler compileInto: PRDocumentScanner andParser: >> PRDocumentParser. > > Yeah, the only problem here is that if I want to recompile the > parsers after installing I need to load the Refactoring-Browser and > SmaCC-Development as prerequisite. Both are pretty big packages > that are not needed otherwise, however if I can find a solution to > that problem, that will be the only workaround. Ok, this was like to live or to die ... :-( After digging in Squeak for more than 3 hours I found the bug and reported it to Mantis: The SmaCC scanner-compiler uses #storeOn: to put the characters it is matching for into the source-code. The original implementation of Character>>storeOn: only prints a dollar and the respective character. This works well for all printable characters but not for others such as 'Character lf' or 'Character cr', since Monticello is converting all the source-code to a standard form destroying some special character-literals and breaking the SmaCC scanner. Uff, this is it ;-) Lukas PS: I will soon commit a new version of Pier to SqueakMap that will run out of the box ... -- Lukas Renggli http://www.lukas-renggli.ch From ian at inextenso.com Mon Nov 21 18:06:55 2005 From: ian at inextenso.com (Ian Prince) Date: Mon, 21 Nov 2005 18:06:55 +0100 Subject: perbuilt Pier image with access control In-Reply-To: References: <66666f210511200338s7f5a10c6u@mail.gmail.com> <43819F2F.3000905@enit.fr> <33C64640-B920-4523-9F1D-806B68B527BC@iam.unibe.ch> <4381D99D.4030500@enit.fr> Message-ID: <373D71E6-4865-4AC2-8384-67D28A8020F8@inextenso.com> Well done Lukas! :-) Ian. On 21 Nov 2005, at 18:01, Lukas Renggli wrote: >>>> Thanks, it is really annoying that you have to recompile the >>>> scanner and parser. Currently I know no other workaround than >>>> recompiling. I send the problem to a guy here at the university >>>> that is looking for strange bugs using his implementation of an >>>> omniscent debugger, so maybe he can find out about the real >>>> problem. >>> >>> anyway, it's quite simple to compile it with the interface... but >>> maybe as a workaround to wait for a better solution, is it >>> possible to do that manipulation through the install ? (in a >>> class initialize...or even by writing some lines of code in the >>> workspace...) >>> >>> | parserCompiler | >>> parserCompiler := SmaCCGrammarCompiler new. >>> parserCompiler >>> buildScanner: PRDocumentScanner scannerDefinitionComment ??? >>> andParser: PRDocumentParser parserDefinitionComment. ??? >>> parserCompiler compileInto: PRDocumentScanner andParser: >>> PRDocumentParser. >> >> Yeah, the only problem here is that if I want to recompile the >> parsers after installing I need to load the Refactoring-Browser >> and SmaCC-Development as prerequisite. Both are pretty big >> packages that are not needed otherwise, however if I can find a >> solution to that problem, that will be the only workaround. > > Ok, this was like to live or to die ... :-( > > After digging in Squeak for more than 3 hours I found the bug and > reported it to Mantis: > > The SmaCC scanner-compiler uses #storeOn: to put the characters it > is matching for into the source-code. The original implementation > of Character>>storeOn: only prints a dollar and the respective > character. This works well for all printable characters but not for > others such as 'Character lf' or 'Character cr', since Monticello > is converting all the source-code to a standard form destroying > some special character-literals and breaking the SmaCC scanner. > > Uff, this is it ;-) > > Lukas > > PS: I will soon commit a new version of Pier to SqueakMap that will > run out of the box ... > > -- > Lukas Renggli > http://www.lukas-renggli.ch From damien.cassou at laposte.net Mon Nov 21 18:51:48 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Mon, 21 Nov 2005 18:51:48 +0100 Subject: perbuilt Pier image with access control In-Reply-To: References: <66666f210511200338s7f5a10c6u@mail.gmail.com> <43819F2F.3000905@enit.fr> <33C64640-B920-4523-9F1D-806B68B527BC@iam.unibe.ch> <4381D99D.4030500@enit.fr> Message-ID: <43820934.6050706@laposte.net> > The SmaCC scanner-compiler uses #storeOn: to put the characters it is > matching for into the source-code. The original implementation of > Character>>storeOn: only prints a dollar and the respective > character. This works well for all printable characters but not for > others such as 'Character lf' or 'Character cr', since Monticello is > converting all the source-code to a standard form destroying some > special character-literals and breaking the SmaCC scanner. > > Uff, this is it ;-) You got it finally. Very well done ! Good job From renggli at iam.unibe.ch Mon Nov 21 22:37:22 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 21 Nov 2005 22:37:22 +0100 Subject: perbuilt Pier image with access control In-Reply-To: <43820934.6050706@laposte.net> References: <66666f210511200338s7f5a10c6u@mail.gmail.com> <43819F2F.3000905@enit.fr> <33C64640-B920-4523-9F1D-806B68B527BC@iam.unibe.ch> <4381D99D.4030500@enit.fr> <43820934.6050706@laposte.net> Message-ID: >> The SmaCC scanner-compiler uses #storeOn: to put the characters it >> is matching for into the source-code. The original implementation >> of Character>>storeOn: only prints a dollar and the respective >> character. This works well for all printable characters but not >> for others such as 'Character lf' or 'Character cr', since >> Monticello is converting all the source-code to a standard form >> destroying some special character-literals and breaking the SmaCC >> scanner. >> >> Uff, this is it ;-) > > You got it finally. Very well done ! Good job I published a new versions of Magritte and Pier to SqueakSource that fixes the issues with the parser. No recompilation needed anymore. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Tue Nov 22 23:48:56 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 22 Nov 2005 23:48:56 +0100 Subject: Fwd: [ANN] [PR] Pier 1.0.0-alpha on SqueakMap References: Message-ID: <79BAF1AA-B1F6-47A9-BA6A-444DF8C70341@iam.unibe.ch> Hi Klaus > have Pier installed on Squeak 3.8 / Debian Linux, with Apache2 > forwarding requests to localhost:8888. > > Allmost all works fine execpt the request below crashed the Squeak VM: > - http://squeak.cobss.ch/LowSpaceDebug.log > (just a low space condition). Thanks for reporting this issue. This is a bug leading to a recursion, since by accessing the URL /seaside/pier/Environment/Contents you are trying to display what is currently display in the contents- pane, what is currently displayed in the contents-pane, what is currently display in the contents-pane, ... The standard checks to avoid recursion within recursively nested pages does not work here, so I had to put a special check into PRDefaultView. This is not a nice solution, but the only one I can think of at the moment. Load the latest release from http://mc.lukas- renggli.ch/pier/Pier-All-lr.11.mcz to avoid this problem. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From klaus.witzel at cobss.ch Wed Nov 23 03:30:59 2005 From: klaus.witzel at cobss.ch (Klaus D. Witzel) Date: Wed, 23 Nov 2005 03:30:59 +0100 Subject: Fwd: [ANN] [PR] Pier 1.0.0-alpha on SqueakMap In-Reply-To: <79BAF1AA-B1F6-47A9-BA6A-444DF8C70341@iam.unibe.ch> References: <79BAF1AA-B1F6-47A9-BA6A-444DF8C70341@iam.unibe.ch> Message-ID: Thank you Lukas ! Loaded (not merged) Pier-All-lr.11.mcz, accepted a yes/no, then a warning about unresolved globals, saw 2 complaints about Undeclared, and then tested all the items on Pier's home page O.K. :) The only thing I now have to solve is '...service already running (or so)...' despite that I did a (MAKom shutDown) and thereafter uploaded the new image to the server (so there was a GC involved). If someone knows a trick for how to get rid of the shutDown'ed instance then please let me know. /Klaus On Tue, 22 Nov 2005 23:48:56 +0100, Lukas Renggli wrote: > Hi Klaus > >> have Pier installed on Squeak 3.8 / Debian Linux, with Apache2 >> forwarding requests to localhost:8888. >> >> Allmost all works fine execpt the request below crashed the Squeak VM: >> - http://squeak.cobss.ch/LowSpaceDebug.log >> (just a low space condition). > > Thanks for reporting this issue. This is a bug leading to a recursion, > since by accessing the URL /seaside/pier/Environment/Contents > you are trying to display what is currently display in the contents- > pane, what is currently displayed in the contents-pane, what is > currently display in the contents-pane, ... > > The standard checks to avoid recursion within recursively nested pages > does not work here, so I had to put a special check into PRDefaultView. > This is not a nice solution, but the only one I can think of at the > moment. Load the latest release from http://mc.lukas- > renggli.ch/pier/Pier-All-lr.11.mcz to avoid this problem. > > Lukas > From damien.cassou at laposte.net Wed Nov 23 05:47:48 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Wed, 23 Nov 2005 05:47:48 +0100 Subject: Fwd: [ANN] [PR] Pier 1.0.0-alpha on SqueakMap In-Reply-To: <79BAF1AA-B1F6-47A9-BA6A-444DF8C70341@iam.unibe.ch> References: <79BAF1AA-B1F6-47A9-BA6A-444DF8C70341@iam.unibe.ch> Message-ID: <4383F474.40100@laposte.net> Lukas Renggli a ?crit : > Hi Klaus > >> have Pier installed on Squeak 3.8 / Debian Linux, with Apache2 >> forwarding requests to localhost:8888. >> >> Allmost all works fine execpt the request below crashed the Squeak VM: >> - http://squeak.cobss.ch/LowSpaceDebug.log >> (just a low space condition). > > > Thanks for reporting this issue. This is a bug leading to a > recursion, since by accessing the URL /seaside/pier/Environment/Contents > you are trying to display what is currently display in the contents- > pane, what is currently displayed in the contents-pane, what is > currently display in the contents-pane, ... Do you plan to go on displaying the Environment page ? I think you should hide it and just allow to edit it. From philippe.marschall at gmail.com Wed Nov 23 08:08:07 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Wed, 23 Nov 2005 08:08:07 +0100 Subject: perbuilt Pier image with access control In-Reply-To: <933591DC-113A-46DB-AB8B-8A5BBFB40728@inextenso.com> References: <66666f210511200338s7f5a10c6u@mail.gmail.com> <933591DC-113A-46DB-AB8B-8A5BBFB40728@inextenso.com> Message-ID: <66666f210511222308g57dcbd8ay@mail.gmail.com> > BTW, can I re-publish your announcement on my blog Sure, no problem. From damien.cassou at laposte.net Thu Nov 24 16:43:16 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Thu, 24 Nov 2005 16:43:16 +0100 Subject: [Pier] Remove link on MAOneToManyComponent Message-ID: <4385DF94.5020908@laposte.net> Hi, here is a simple code to add a 'remove' button on MAOneToManycomponent. Bye -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: MAOneToManyComponent-buildReport.st Url: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20051124/2a2398cc/MAOneToManyComponent-buildReport.bat -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: MAOneToManyComponent-remove.st Url: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20051124/2a2398cc/MAOneToManyComponent-remove.bat From bergel at iam.unibe.ch Thu Nov 24 16:50:35 2005 From: bergel at iam.unibe.ch (Alexandre Bergel) Date: Thu, 24 Nov 2005 16:50:35 +0100 Subject: Pier questions Message-ID: Perhaps I have some stupid question, but I dare :-) Is this mailing list appropriate for Pier-related questions ? Regarding what we said in the squeak-dev mailing list: > Pier was designed to have a prevalence like persistency: this means it > consists of a snapshot mechanism and the logging facilities for > command-objects. Command objects are the key thing, since this is the > only way to modify the model. There is some experimental code (that > already proved to work) but that is not tested in real environments > and that is still lacking some features. It seems that there are no test related to persistency except PRKernelTest>>testPersistency. Is it right ? Is the method snapshot called ? There is no class having a name starting with PR that send the method snapshot, but perhaps it is invoked in a non trivial way. If this method is invoked, when ? If there is no test on persistency, I am interested in writing some... I want to have a reliable mechanism to save wikis... Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.iam.unibe.ch/~bergel ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. From ian at inextenso.com Thu Nov 24 17:49:19 2005 From: ian at inextenso.com (Ian Prince) Date: Thu, 24 Nov 2005 17:49:19 +0100 Subject: [Pier] Remove link on MAOneToManyComponent In-Reply-To: <4385DF94.5020908@laposte.net> References: <4385DF94.5020908@laposte.net> Message-ID: <0DC2F07F-A8A1-434D-BFFC-30015CDFD67B@inextenso.com> Thanks, works for me. Ian. On 24 Nov 2005, at 16:43, Damien Cassou wrote: > Hi, > > here is a simple code to add a 'remove' button on > MAOneToManycomponent. > > > Bye > > > 'From Squeak3.8 of ''5 May 2005'' [latest update: #6665] on 24 > November 2005 at 4:41:36 pm'! > > !MAOneToManyComponent methodsFor: 'private' stamp: 'dc 11/24/2005 > 16:10'! > buildReport > ^ (MAReport rows: self value description: self reference) > addColumn: (MACommandColumn new > addCommandOn: self selector: #remove: text: 'Remove'; > yourself); > yourself! ! > 'From Squeak3.8 of ''5 May 2005'' [latest update: #6665] on 24 > November 2005 at 4:42:43 pm'! > > !MAOneToManyComponent methodsFor: 'actions' stamp: 'dc 11/24/2005 > 16:34'! > remove: anElement > self report rows > remove: anElement! ! From ian at inextenso.com Thu Nov 24 17:55:02 2005 From: ian at inextenso.com (Ian Prince) Date: Thu, 24 Nov 2005 17:55:02 +0100 Subject: [Pier] Remove link on MAOneToManyComponent In-Reply-To: <4385DF94.5020908@laposte.net> References: <4385DF94.5020908@laposte.net> Message-ID: <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> On 24 Nov 2005, at 16:43, Damien Cassou wrote: > Hi, > > here is a simple code to add a 'remove' button on > MAOneToManycomponent. can i ask you for a "edit" button/link too? thanks, ian. > > > Bye > > > 'From Squeak3.8 of ''5 May 2005'' [latest update: #6665] on 24 > November 2005 at 4:41:36 pm'! > > !MAOneToManyComponent methodsFor: 'private' stamp: 'dc 11/24/2005 > 16:10'! > buildReport > ^ (MAReport rows: self value description: self reference) > addColumn: (MACommandColumn new > addCommandOn: self selector: #remove: text: 'Remove'; > yourself); > yourself! ! > 'From Squeak3.8 of ''5 May 2005'' [latest update: #6665] on 24 > November 2005 at 4:42:43 pm'! > > !MAOneToManyComponent methodsFor: 'actions' stamp: 'dc 11/24/2005 > 16:34'! > remove: anElement > self report rows > remove: anElement! ! From renggli at iam.unibe.ch Thu Nov 24 19:17:19 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 24 Nov 2005 19:17:19 +0100 Subject: [Pier] Remove link on MAOneToManyComponent In-Reply-To: <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> References: <4385DF94.5020908@laposte.net> <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> Message-ID: <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> Hi Damien, thanks for the code, I put it into the latest version of Magritte in the development repository. > can i ask you for a "edit" button/link too? Hi Ian, this is done in 'Magritte-All-lr.94'. You might also want to try loading 'Pier-Forms-lr.2', that includes a sortable report-view, see attached screen-shot. The report displays the values of the common descriptions of all the children of the current structure. It does not yet allow deleting or editing children directly, but you can navigate to the child using the tree-control and use the appropriate actions there. What do you think? Already more useful without much additional code ;-) Lukas -------------- next part -------------- A non-text attachment was scrubbed... Name: Picture 1.png Type: image/png Size: 46948 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20051124/fa73d06d/Picture1.png -------------- next part -------------- -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Thu Nov 24 19:54:20 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 24 Nov 2005 19:54:20 +0100 Subject: Pier questions In-Reply-To: References: Message-ID: <394632D1-9889-429E-BC74-B58D7C785146@iam.unibe.ch> > Is this mailing list appropriate for Pier-related questions ? Yeah, this is the mailing-list of Magritte and Pier, even-tough it still called smallwiki ... maybe we could create an alias and migrate slowly, but I dare that this is not that easy as the name change was? > Regarding what we said in the squeak-dev mailing list: > >> Pier was designed to have a prevalence like persistency: this >> means it >> consists of a snapshot mechanism and the logging facilities for >> command-objects. Command objects are the key thing, since this is the >> only way to modify the model. There is some experimental code (that >> already proved to work) but that is not tested in real environments >> and that is still lacking some features. > > It seems that there are no test related to persistency except > PRKernelTest>>testPersistency. Is it right ? Ahh well, this is more a kernel test, not a persistency test ;-) I didn't had time to write tests for the persistency or the commands yet. There are some empty skeletons for the commands already. > Is the method snapshot called ? There is no class having a name > starting with PR that send the method snapshot, but perhaps it is > invoked in a non trivial way. No, the method #snapshot is not called from within Pier, I guess that it should be manually executed from a workspace (maybe also from a regular thread), if the user wants to create a snapshot. The key thing is the logging of the commands that happens in #log: and is called automatically after executing every command. There are different subclasses of PRPersistency: - PRImagePersistency: this mock-class is finished, it is basically intended to test and try out the whole persistency mechanism. It keeps the commands and snapshots in ordered collections within the image. - PRNullPersistency: doesn't do any persistency, it is basically intended to test other parts of Pier without the overhead of storing anything. - PRFilePersistency: this should do the same as PRImagePersistency, but it is not finished right now. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From ian at inextenso.com Thu Nov 24 22:37:33 2005 From: ian at inextenso.com (Ian Prince) Date: Thu, 24 Nov 2005 22:37:33 +0100 Subject: [Pier] Remove link on MAOneToManyComponent In-Reply-To: <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> References: <4385DF94.5020908@laposte.net> <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> Message-ID: Hi Lukas, thanks, the screenshot looks really cool (I'll load the latest version tomorrow when I have access to my Image at work). My question: can a form "template/definition" be "attached/promoted" to the Add command? For example, in the case of your screenshot is it possible to specify that "Package" be added to the "Add" command list? Ian. P.S. typing /seaside/pier is kinda elegant ;-) On 24 Nov 2005, at 19:17, Lukas Renggli wrote: > Hi Damien, > > thanks for the code, I put it into the latest version of Magritte > in the development repository. > > >> can i ask you for a "edit" button/link too? >> > > Hi Ian, > > this is done in 'Magritte-All-lr.94'. You might also want to try > loading 'Pier-Forms-lr.2', that includes a sortable report-view, > see attached screen-shot. The report displays the values of the > common descriptions of all the children of the current structure. > It does not yet allow deleting or editing children directly, but > you can navigate to the child using the tree-control and use the > appropriate actions there. > > What do you think? Already more useful without much additional > code ;-) > > Lukas > > > > > -- > Lukas Renggli > http://www.lukas-renggli.ch From ian at inextenso.com Fri Nov 25 16:19:37 2005 From: ian at inextenso.com (Ian Prince) Date: Fri, 25 Nov 2005 16:19:37 +0100 Subject: [Pier] Remove link on MAOneToManyComponent In-Reply-To: <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> References: <4385DF94.5020908@laposte.net> <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> Message-ID: <158F0386-1BD4-4842-B554-E0BA5344EC94@inextenso.com> On 24 Nov 2005, at 19:17, Lukas Renggli wrote: > Hi Damien, > > thanks for the code, I put it into the latest version of Magritte > in the development repository. > >> can i ask you for a "edit" button/link too? > > Hi Ian, > > this is done in 'Magritte-All-lr.94'. You might also want to try > loading 'Pier-Forms-lr.2', that includes a sortable report-view, > see attached screen-shot. The report displays the values of the > common descriptions of all the children of the current structure. > It does not yet allow deleting or editing children directly, but > you can navigate to the child using the tree-control and use the > appropriate actions there. > > What do you think? Already more useful without much additional > code ;-) Pretty cool and generic. I like how "Reporting" on the root page displays a sortable list of page titles, neat side-effect! 2 questions: 1. Do pages always have title descriptions? If so, providing a link on the displayed title might be nice. 2. Is there a UI for the batch size of the report? Ian. From damien.cassou at laposte.net Fri Nov 25 18:57:06 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Fri, 25 Nov 2005 18:57:06 +0100 Subject: Pictures within CSS Message-ID: <43875072.1080801@laposte.net> Hi, in Pier, the logo is displayed thanks to CSS : .header .logo { background: transparent url(header-logo.png) no-repeat; width: 127px; height: 127px; } How can I get this picture, modify it and add this new picture to Squeak for use in another CSS ? Thanks -- Damien From philippe.marschall at gmail.com Sat Nov 26 00:53:56 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Sat, 26 Nov 2005 00:53:56 +0100 Subject: #doValidate Message-ID: <66666f210511251553l6a255970o@mail.gmail.com> Hi Because of some problems, I just wanted to ask if self error: aMessage is still the way to signal invalid input in a pier command in the #doValidate method. Cheers Philippe From damien.cassou at laposte.net Sat Nov 26 08:56:22 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Sat, 26 Nov 2005 08:56:22 +0100 Subject: #doValidate In-Reply-To: <66666f210511251553l6a255970o@mail.gmail.com> References: <66666f210511251553l6a255970o@mail.gmail.com> Message-ID: <43881526.5070307@laposte.net> Philippe Marschall a ?crit : >Hi > >Because of some problems, I just wanted to ask if >self error: aMessage >is still the way to signal invalid input in a pier command in the >#doValidate method. > It seems Lukas changed this ! Use MAError instead YourCommand>>validate MAValidationError on: self Or one of the subclasses Bye From philippe.marschall at gmail.com Sat Nov 26 12:37:00 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Sat, 26 Nov 2005 12:37:00 +0100 Subject: #doValidate In-Reply-To: <43881526.5070307@laposte.net> References: <66666f210511251553l6a255970o@mail.gmail.com> <43881526.5070307@laposte.net> Message-ID: <66666f210511260337r6e70b8dk@mail.gmail.com> > YourCommand>>validate > MAValidationError on: self > > Or one of the subclasses Are you really sure about this? - I can see no #validate in the command hierarchy, #exceute still sends #doValdiate - MAValidationError is abstract - PRRemoveCommand >> #doValidate super doValidate. (self structure isRoot) ifTrue: [ self error: 'Unable to remove root node.' ]. #error: is the one from Object From renggli at students.unibe.ch Sat Nov 26 13:46:30 2005 From: renggli at students.unibe.ch (Lukas Renggli) Date: Sat, 26 Nov 2005 13:46:30 +0100 Subject: #doValidate In-Reply-To: <66666f210511260337r6e70b8dk@mail.gmail.com> References: <66666f210511251553l6a255970o@mail.gmail.com> <43881526.5070307@laposte.net> <66666f210511260337r6e70b8dk@mail.gmail.com> Message-ID: <20051126134630.d6eti0188gtcgwo4@www.students.unibe.ch> Sorry for not answering, I am currently in Hamburg and don't have the laptop not with me. You'll have to wait till monday :-) Cheers, Lukas Zitat von Philippe Marschall : >> YourCommand>>validate >> MAValidationError on: self >> >> Or one of the subclasses > > Are you really sure about this? > - I can see no #validate in the command hierarchy, #exceute still > sends #doValdiate > - MAValidationError is abstract > - PRRemoveCommand >> #doValidate > super doValidate. > (self structure isRoot) > ifTrue: [ self error: 'Unable to remove root node.' ]. > > #error: is the one from Object > > -- Lukas Renggli http://www.lukas-renggli.ch From philippe.marschall at gmail.com Sat Nov 26 17:12:34 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Sat, 26 Nov 2005 17:12:34 +0100 Subject: WAAnchorTag >> #goto: Problem Message-ID: <66666f210511260812x769e71d5x@mail.gmail.com> Hi After checking several times I think theres a problem in WAAnchorTag >> #goto and not my code: Setps to reproduce - go on a page like /Information/Syntax - look at the urls of liks to structures (or commands), for a link to /Information/License it should look about like this: http://127.0.0.1:9090/seaside/pier/Information/Syntax/Information/License.... - note that both the current and target structure are encoded in the url - wait for a session timeout and click the link (or remove all parameters from the url and go there), you will get an exception that there is no /Information/Syntax/Information/License structure the problem is that canvas context actionUrl already contains the "url" to the current structure eg '/seaside/pier/Information/Syntax' and to that the path of the target structure gets appended. Cheers Philippe From philippe.marschall at gmail.com Sun Nov 27 01:08:13 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Sun, 27 Nov 2005 01:08:13 +0100 Subject: How to flatten nested descriptions Message-ID: <66666f210511261608s21c70d2r@mail.gmail.com> Hi I have an object (a command) that references some other object (a model object). Instead of copying all descriptions on the class side I use a MAOneToOneRelationDescription (I guess I'll have to make a copy for editing so it works with the persistence). This works so far but I'd like to flatten the editor component to that the fields of the referenced object are mixed with those of the referencing object. The description looks something like this: descriptionItem ^ (MAOneToOneRelationDescription selector: #item label: 'Rule' priority: 100) componentClass: MAInternalEditorComponent; classes: (Array with: SVACLItem); yourself. And the output like this http://img121.imageshack.us/my.php?image=nesteddescription3jp.png What I'd like is the 'Rule' label to disappear and the 'Principal' 'Allow' and 'Command' fields instead appear on its level. Did I express myself in an understanable way? Do I even use the correct approach? Cheers Philippe From damien.cassou at laposte.net Sun Nov 27 12:24:27 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Sun, 27 Nov 2005 12:24:27 +0100 Subject: #doValidate In-Reply-To: <66666f210511260337r6e70b8dk@mail.gmail.com> References: <66666f210511251553l6a255970o@mail.gmail.com> <43881526.5070307@laposte.net> <66666f210511260337r6e70b8dk@mail.gmail.com> Message-ID: <4389976B.4000708@laposte.net> Philippe Marschall a ?crit : >>YourCommand>>validate >> MAValidationError on: self >> >>Or one of the subclasses >> >> > >Are you really sure about this? >- I can see no #validate in the command hierarchy, #exceute still >sends #doValdiate >- MAValidationError is abstract >- PRRemoveCommand >> #doValidate > super doValidate. > (self structure isRoot) > ifTrue: [ self error: 'Unable to remove root node.' ]. > >#error: is the one from Object > > The problem if you use #error is that the error message is not user friendly. Using MAError display just a few lines in top of your form. Use doValidate instead of validat which doesn't exist :-) sorry From rleon at insario.com Sun Nov 27 23:38:48 2005 From: rleon at insario.com (Ramon Leon) Date: Sun, 27 Nov 2005 15:38:48 -0700 Subject: Magritte Validation Error References: <4385DF94.5020908@laposte.net> <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> Message-ID: <24C40DFA333DC44882F9FB0115F33D8F1653D3@ARGON.insario.local> Hi I'm playing with the latest Magritte and generating some forms for a couple objects to test out how relationships between objects works, I'm running into some trouble. At first I thought it was something wrong with my code. descriptionProject ^(MASingleOptionDescription selector: #project label: 'Project' priority: 10) reference: MAClassDescription new; options: (MADynamicObject on: [ TMProject repository asArray]); beRequired; beSorted ; yourself but after writing a lenghy email explaining the issue, it struck me what it might be, so I popped into MADescription and commented out the code for validateKind: anObject. Turns out that fixed my issue. Validation was failing because the objects I had in a single option description were proxies coming from goods, and they fail validateKind:, has someone else run into this? Guess I'll just leave it commented out for now until there's a fix, or I figure out what I'm doing wrong. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/ms-tnef Size: 3818 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20051127/b0a96eda/attachment.bin From renggli at iam.unibe.ch Mon Nov 28 13:09:01 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 28 Nov 2005 13:09:01 +0100 Subject: [Pier] Remove link on MAOneToManyComponent In-Reply-To: <158F0386-1BD4-4842-B554-E0BA5344EC94@inextenso.com> References: <4385DF94.5020908@laposte.net> <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> <158F0386-1BD4-4842-B554-E0BA5344EC94@inextenso.com> Message-ID: <5637FAD1-FFF7-4B1C-987C-FD5BAB11E4E7@iam.unibe.ch> > 1. Do pages always have title descriptions? If so, providing a > link on the displayed title might be nice. Yep, that would be nice. However I first need some enhancements on the report engine, something I neglected for quite some time ... > 2. Is there a UI for the batch size of the report? The current report has got a property #batchSize:, so you could do something like PRReportView>>buildReport ^ (MAReport rows: self structures description: self description) batchSize: 30; yourself. No UI yet ;-) Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Mon Nov 28 13:12:01 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 28 Nov 2005 13:12:01 +0100 Subject: #doValidate In-Reply-To: <66666f210511260337r6e70b8dk@mail.gmail.com> References: <66666f210511251553l6a255970o@mail.gmail.com> <43881526.5070307@laposte.net> <66666f210511260337r6e70b8dk@mail.gmail.com> Message-ID: <62C57E76-804D-4D87-8007-D69CF316F980@iam.unibe.ch> > - MAValidationError is abstract Use on of its subclasses. > - PRRemoveCommand >> #doValidate > super doValidate. > (self structure isRoot) > ifTrue: [ self error: 'Unable to remove root node.' ]. Damien is right, I am migrating all the sends to #error: to something raising a subclass of MAValidationError, however there are still a few places where that doesn't happen. > Because of some problems, I just wanted to ask if > self error: aMessage > is still the way to signal invalid input in a pier command in the > #doValidate method. What is your exact problem? A lot of people seem to have troubles there with lockups etc. I need to have a look at it ... Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Mon Nov 28 13:21:52 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 28 Nov 2005 13:21:52 +0100 Subject: WAAnchorTag >> #goto: Problem In-Reply-To: <66666f210511260812x769e71d5x@mail.gmail.com> References: <66666f210511260812x769e71d5x@mail.gmail.com> Message-ID: <77710258-AE5D-4DB9-9858-128C99962BEC@iam.unibe.ch> > After checking several times I think theres a problem in WAAnchorTag >>> #goto and not my code: Yep, this is certainly a bug. I will have a look at it. Avi recently made some enhancements in the handling of URLs and anchors, I will load the latest Seaside and pray that we have URL objects instead of strings in WAAnchorTag now, so the #goto: should be much easier ;-) Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Mon Nov 28 13:26:50 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 28 Nov 2005 13:26:50 +0100 Subject: How to flatten nested descriptions In-Reply-To: <66666f210511261608s21c70d2r@mail.gmail.com> References: <66666f210511261608s21c70d2r@mail.gmail.com> Message-ID: <03FBC1CC-4463-4DDF-AE45-A20A015C7291@iam.unibe.ch> > componentClass: MAInternalEditorComponent; You could write your own MAInternalEditorComponent. > What I'd like is the 'Rule' label to disappear and the 'Principal' > 'Allow' and 'Command' fields instead appear on its level. Have a look at the following thread: http://impara.de/pipermail/smallwiki/2005-October/002635.html Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Mon Nov 28 13:41:42 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 28 Nov 2005 13:41:42 +0100 Subject: Magritte Validation Error In-Reply-To: <24C40DFA333DC44882F9FB0115F33D8F1653D3@ARGON.insario.local> References: <4385DF94.5020908@laposte.net> <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> <24C40DFA333DC44882F9FB0115F33D8F1653D3@ARGON.insario.local> Message-ID: <7FFF13D9-B958-4719-9109-A153609B0765@iam.unibe.ch> > into MADescription and commented out the code for validateKind: > anObject. Turns out that fixed my issue. Validation was failing > because the objects I had in a single option description were > proxies coming from goods, and they fail validateKind:, has someone > else run into this? Guess I'll just leave it commented out for now > until there's a fix, or I figure out what I'm doing wrong. The method #validateKind: for MASingleOptionDescription look like (I merged in the super-call): MASingleDescription>>validateKind: anObject (anObject isKindOf: self kind) ifFalse: [ MAKindError on: self ]. (self isExtensible or: [ self options includes: anObject ]) ifFalse: [ MAKindError on: self ]. anObject is used as a receiver for #isKindOf: and #= within #includes:. I think the #isKindOf: should resolve any proxies, but there is probably a problem with the #includes:. I think the point is that your project-class doesn't implement #= and therefor defaults to #==, so you the #includes: identity-compares every project with the proxy ... what fails of course. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From damien.cassou at laposte.net Mon Nov 28 15:47:39 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Mon, 28 Nov 2005 15:47:39 +0100 Subject: How to flatten nested descriptions In-Reply-To: <03FBC1CC-4463-4DDF-AE45-A20A015C7291@iam.unibe.ch> References: <66666f210511261608s21c70d2r@mail.gmail.com> <03FBC1CC-4463-4DDF-AE45-A20A015C7291@iam.unibe.ch> Message-ID: <438B188B.2000101@laposte.net> Lukas Renggli a ?crit : >> componentClass: MAInternalEditorComponent; > > > You could write your own MAInternalEditorComponent. I might be wrong, but I think even if you create a new MAInternalEditorComponent, you will always see the "Rule:" field because it is displayed before the component. From philippe.marschall at gmail.com Mon Nov 28 16:09:50 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Mon, 28 Nov 2005 16:09:50 +0100 Subject: #doValidate In-Reply-To: <62C57E76-804D-4D87-8007-D69CF316F980@iam.unibe.ch> References: <66666f210511251553l6a255970o@mail.gmail.com> <43881526.5070307@laposte.net> <66666f210511260337r6e70b8dk@mail.gmail.com> <62C57E76-804D-4D87-8007-D69CF316F980@iam.unibe.ch> Message-ID: <66666f210511280709h45ddaeb7o@mail.gmail.com> > What is your exact problem? A lot of people seem to have troubles > there with lockups etc. I need to have a look at it ... Doing a self error: in a #doValidate screws (used to, does no longer if I use a MAValidationError) up the kernel mutex. In general if an exception happens during the execution of a command this screws up the kernel mutex (I was told this is not bug but a feature that has to do with conituntions, non local returns, the way exceptions are done in Squeak and Java sucking badly). You could observe that for example in the demo of the picture gallery application of Chris. From philippe.marschall at gmail.com Mon Nov 28 16:40:47 2005 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Mon, 28 Nov 2005 16:40:47 +0100 Subject: How to flatten nested descriptions In-Reply-To: <438B188B.2000101@laposte.net> References: <66666f210511261608s21c70d2r@mail.gmail.com> <03FBC1CC-4463-4DDF-AE45-A20A015C7291@iam.unibe.ch> <438B188B.2000101@laposte.net> Message-ID: <66666f210511280740o5b3806d2n@mail.gmail.com> > I might be wrong, but I think even if you create a new > MAInternalEditorComponent, you will always see the "Rule:" field because > it is displayed before the component. What about another Container? FlatteningContainer >> #acceptMagritte: aVisitor self children do: [ :each | each visit: aVisitor ] From renggli at iam.unibe.ch Mon Nov 28 16:46:55 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 28 Nov 2005 16:46:55 +0100 Subject: How to flatten nested descriptions In-Reply-To: <66666f210511280740o5b3806d2n@mail.gmail.com> References: <66666f210511261608s21c70d2r@mail.gmail.com> <03FBC1CC-4463-4DDF-AE45-A20A015C7291@iam.unibe.ch> <438B188B.2000101@laposte.net> <66666f210511280740o5b3806d2n@mail.gmail.com> Message-ID: <46B73D2E-FA04-428D-A7F1-6BCD8979C51B@iam.unibe.ch> >> I might be wrong, but I think even if you create a new >> MAInternalEditorComponent, you will always see the "Rule:" field >> because >> it is displayed before the component. > > What about another Container? > > FlatteningContainer >> #acceptMagritte: aVisitor > self children do: [ :each | each visit: aVisitor ] Sure, why not ... -- Lukas Renggli http://www.lukas-renggli.ch From rleon at insario.com Mon Nov 28 16:50:53 2005 From: rleon at insario.com (Ramon Leon) Date: Mon, 28 Nov 2005 08:50:53 -0700 Subject: Magritte Validation Error References: <4385DF94.5020908@laposte.net> <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> <24C40DFA333DC44882F9FB0115F33D8F1653D3@ARGON.insario.local> <7FFF13D9-B958-4719-9109-A153609B0765@iam.unibe.ch> Message-ID: <24C40DFA333DC44882F9FB0115F33D8F1653D4@ARGON.insario.local> No, it is the call to isKindOf from the super class that is failing, the call to includes works fine. My project class does implement #= and hash, and uses a UUID string for identity. self kind is resolving to Class class, since isKindOf is being sent to anObject, that should resolve the proxy, so perhaps something is wrong with: descriptionProject ^(MASingleOptionDescription selector: #project label: 'Project' priority: 10) reference: MAClassDescription new; options: (MADynamicObject on: [ TMProject repository asArray]); beRequired; beSorted ; yourself MAClassDescription seems wrong, looking now, I see why isKindOf is failing, I'm not filling the dropdown with classes, but I don't see what's appropriate, without it I get MessageNotUnderstood: TMProject>>do:. So how do I use other domain objects in a SingleOptionDescription rather than just a simple list of symbols or strings? ________________________________ From: owner-smallwiki at iam.unibe.ch on behalf of Lukas Renggli Sent: Mon 11/28/2005 5:41 AM To: smallwiki at iam.unibe.ch Subject: Re: Magritte Validation Error > into MADescription and commented out the code for validateKind: > anObject. Turns out that fixed my issue. Validation was failing > because the objects I had in a single option description were > proxies coming from goods, and they fail validateKind:, has someone > else run into this? Guess I'll just leave it commented out for now > until there's a fix, or I figure out what I'm doing wrong. The method #validateKind: for MASingleOptionDescription look like (I merged in the super-call): MASingleDescription>>validateKind: anObject (anObject isKindOf: self kind) ifFalse: [ MAKindError on: self ]. (self isExtensible or: [ self options includes: anObject ]) ifFalse: [ MAKindError on: self ]. anObject is used as a receiver for #isKindOf: and #= within #includes:. I think the #isKindOf: should resolve any proxies, but there is probably a problem with the #includes:. I think the point is that your project-class doesn't implement #= and therefor defaults to #==, so you the #includes: identity-compares every project with the proxy ... what fails of course. Lukas -- Lukas Renggli http://www.lukas-renggli.ch -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/ms-tnef Size: 5974 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20051128/3cdd9d08/attachment.bin From renggli at iam.unibe.ch Mon Nov 28 17:28:51 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 28 Nov 2005 17:28:51 +0100 Subject: Magritte Validation Error In-Reply-To: <24C40DFA333DC44882F9FB0115F33D8F1653D4@ARGON.insario.local> References: <4385DF94.5020908@laposte.net> <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> <24C40DFA333DC44882F9FB0115F33D8F1653D3@ARGON.insario.local> <7FFF13D9-B958-4719-9109-A153609B0765@iam.unibe.ch> <24C40DFA333DC44882F9FB0115F33D8F1653D4@ARGON.insario.local> Message-ID: <200C5322-18A8-4FC6-8BBF-485BA228C17D@iam.unibe.ch> > No, it is the call to isKindOf from the super class that is > failing, the call to includes works fine. My project class does > implement #= and hash, and uses a UUID string for identity. self > kind is resolving to Class class, since isKindOf is being sent to > anObject, that should resolve the proxy, so perhaps something is > wrong with: Ok. > descriptionProject > ^(MASingleOptionDescription selector: #project label: 'Project' > priority: 10) > reference: MAClassDescription new; > options: (MADynamicObject on: [ TMProject repository > asArray]); > beRequired; beSorted ; > yourself > > MAClassDescription seems wrong, looking now, I see why isKindOf is > failing, I'm not filling the dropdown with classes, but I don't see > what's appropriate, without it I get MessageNotUnderstood: > TMProject>>do:. So how do I use other domain objects in a > SingleOptionDescription rather than just a simple list of symbols > or strings? Yep, that's true. MAClassDescription expects a class. I have never put a single description into a MASingleOptionDescription yet, so I didn't encouter this problem yet. I don't know, but I would try descriptionProject ^(MASingleOptionDescription selector: #project label: 'Project' priority: 10) reference: TMProject description; options: (MADynamicObject on: [ TMProject repository asArray]); beRequired; beSorted ; yourself Else a possibility might be to create a new description, say a null- object pattern MAUnknownDescription that wouldn't validate the referenced object. Another thing that I am not entirely sure about at the moment is, if the referenced object should be validated at all? I mean, currently MASingleOptionDescription does its validation, e.g. is the selected entry one of the items of the list, and then passes it to the reference ... probably that should happen somewhere else :-/ Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Mon Nov 28 17:46:21 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 28 Nov 2005 17:46:21 +0100 Subject: Magritte Validation Error In-Reply-To: <200C5322-18A8-4FC6-8BBF-485BA228C17D@iam.unibe.ch> References: <4385DF94.5020908@laposte.net> <6C92A292-E47B-43C2-9593-EF9A7FC7107D@inextenso.com> <005DE2CB-E550-4684-B762-C43CF41B8A13@iam.unibe.ch> <24C40DFA333DC44882F9FB0115F33D8F1653D3@ARGON.insario.local> <7FFF13D9-B958-4719-9109-A153609B0765@iam.unibe.ch> <24C40DFA333DC44882F9FB0115F33D8F1653D4@ARGON.insario.local> <200C5322-18A8-4FC6-8BBF-485BA228C17D@iam.unibe.ch> Message-ID: <21BD7A3D-6A11-4751-80E6-18F922622CD2@iam.unibe.ch> > Yep, that's true. MAClassDescription expects a class. I have never > put a single description into a MASingleOptionDescription yet, so I > didn't encouter this problem yet. Err, never put a *domain-object* into a single-description ;-) -- Lukas Renggli http://www.lukas-renggli.ch From rleon at insario.com Mon Nov 28 17:48:18 2005 From: rleon at insario.com (Ramon Leon) Date: Mon, 28 Nov 2005 09:48:18 -0700 Subject: Magritte Validation Error Message-ID: <24C40DFA333DC44882F9FB0115F33D8F32B655@ARGON.insario.local> > > Err, never put a *domain-object* into a single-description ;-) > Why not? It's a common need, can't just hardcode lists of strings and symbols, is there some other descriptor for creating dropdown lists that works with domain objects? From rleon at insario.com Mon Nov 28 17:49:13 2005 From: rleon at insario.com (Ramon Leon) Date: Mon, 28 Nov 2005 09:49:13 -0700 Subject: Magritte Validation Error Message-ID: <24C40DFA333DC44882F9FB0115F33D8F32B656@ARGON.insario.local> Oops, ignore my last, I read your response too fast and didn't notice you were correcting yourself. > -----Original Message----- > From: owner-smallwiki at iam.unibe.ch > [mailto:owner-smallwiki at iam.unibe.ch] On Behalf Of Lukas Renggli > Sent: Monday, November 28, 2005 9:46 AM > To: smallwiki at iam.unibe.ch > Subject: Re: Magritte Validation Error > > > Yep, that's true. MAClassDescription expects a class. I > have never put > > a single description into a MASingleOptionDescription yet, > so I didn't > > encouter this problem yet. > > Err, never put a *domain-object* into a single-description ;-) > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > From avi.bryant at gmail.com Mon Nov 28 20:38:10 2005 From: avi.bryant at gmail.com (Avi Bryant) Date: Mon, 28 Nov 2005 11:38:10 -0800 Subject: WAAnchorTag >> #goto: Problem In-Reply-To: <77710258-AE5D-4DB9-9858-128C99962BEC@iam.unibe.ch> References: <66666f210511260812x769e71d5x@mail.gmail.com> <77710258-AE5D-4DB9-9858-128C99962BEC@iam.unibe.ch> Message-ID: <85926696-486B-4B18-83F0-2E94CF83A70A@gmail.com> On Nov 28, 2005, at 4:21 AM, Lukas Renggli wrote: >> After checking several times I think theres a problem in WAAnchorTag >> >>>> #goto and not my code: >>>> > > Yep, this is certainly a bug. I will have a look at it. > > Avi recently made some enhancements in the handling of URLs and > anchors, I will load the latest Seaside and pray that we have URL > objects instead of strings in WAAnchorTag now, so the #goto: should > be much easier ;-) No, not yet, although I was thinking about it. But tell me what #goto: does and how full URL objects would help? Avi From renggli at iam.unibe.ch Mon Nov 28 21:03:05 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Mon, 28 Nov 2005 21:03:05 +0100 Subject: WAAnchorTag >> #goto: Problem In-Reply-To: <85926696-486B-4B18-83F0-2E94CF83A70A@gmail.com> References: <66666f210511260812x769e71d5x@mail.gmail.com> <77710258-AE5D-4DB9-9858-128C99962BEC@iam.unibe.ch> <85926696-486B-4B18-83F0-2E94CF83A70A@gmail.com> Message-ID: <3C4998DF-FC05-4064-89B5-24FC7A036331@iam.unibe.ch> > No, not yet, although I was thinking about it. But tell me what > #goto: does and how full URL objects would help? The current implementation (the fixed version after the bug-report) looks like: WAAnchorTag>>goto: aContext "Initialize the receiver to properly activate aContext when being clicked. This includes a callback and a human-readable and bookmarkable url." | path | path := canvas painter session application baseUrl. aContext structure parents allButFirst do: [ :each | path addToPath: each title ]. path addParameter: 'command' value: aContext command class name. aContext command isView ifTrue: [ path addParameter: 'view' value: aContext command viewComponentClass name ]. path addParameter: (canvas callbacks registerActionCallback: [ PRCurrentContext value: aContext ]). self url: path displayString. I would prefer to write: WAAnchorTag>>goto: aContext self callback: [ PRCurrentContext value: aContext ]. aContext structure parents allButFirst do: [ :each | self url addToPath: each title ]. self url addParameter: 'command' value: aContext command class name. aContext command isView ifTrue: [ self url addParameter: 'view' value: aContext command viewComponentClass name ]. I think it is important to have URL-objects and not strings whenever we deal with URLs, such as in anchors. I don't like to call low-level functions such as #registerActionCallback: and to receive greetings from demeter in 'canvas painter session application baseUrl' ;-) Basically all generated links in Pier have annotations of the current context, to be able to bookmark pages and different views. If an anchor would know its URL the code would become much simpler. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From rleon at insario.com Tue Nov 29 18:03:53 2005 From: rleon at insario.com (Ramon Leon) Date: Tue, 29 Nov 2005 10:03:53 -0700 Subject: Magritte Validation Error Message-ID: <24C40DFA333DC44882F9FB0115F33D8F32B688@ARGON.insario.local> > Yep, that's true. MAClassDescription expects a class. I have > never put a single description into a > MASingleOptionDescription yet, so I didn't encouter this problem yet. > > I don't know, but I would try > > descriptionProject > ^(MASingleOptionDescription selector: #project label: 'Project' > priority: 10) > reference: TMProject description; > options: (MADynamicObject on: [ TMProject repository > asArray]); > beRequired; beSorted ; > yourself > > Else a possibility might be to create a new description, say > a null- object pattern MAUnknownDescription that wouldn't > validate the referenced object. > That solution works well, thanks much. Though, I do want to mention, it's always bothered me that you chose description as an accessor for getting at the metaModel, since description is probably one of the most used accessors to put onto a domain object, along with name. I think description is too generic and useful a term to use it as an extension to the instance side of Object, what do you think? From renggli at iam.unibe.ch Tue Nov 29 19:57:36 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 29 Nov 2005 19:57:36 +0100 Subject: Magritte Validation Error In-Reply-To: <24C40DFA333DC44882F9FB0115F33D8F32B688@ARGON.insario.local> References: <24C40DFA333DC44882F9FB0115F33D8F32B688@ARGON.insario.local> Message-ID: <59836CEA-6654-4C82-8C84-14ACB6D2F90F@iam.unibe.ch> > Though, I do want to mention, it's always bothered me that you > chose description as an accessor for getting at the metaModel, > since description is probably one of the most used accessors to > put onto a domain object, along with name. I think description > is too generic and useful a term to use it as an extension > to the instance side of Object, what do you think? Do you have a better suggestion on how to name it? I was looking for a word that does not include 'meta' as a substring (I think it is already used too often in different contexts) and that reads well and tells what it is used for. #description was the best thing I could find. In real live I only observed once having an accessor that was called #description and then I could change that together with the author to be something like #summary. I think every method extension sooner or later conflicts with existing software. Another thing, probably out-of-topic in this thread, is how you should call accessors, if you have an object referencing an external description, such as MAValidationError. I simply called it #description, even-tough this description does not describe the receiver. I probably should have called it #actualDescription or #targetDescription or #externalDescription or ... I was too lazy at the moment. However this problem stays the same, even if I replace the #description-prefix with any other. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From rleon at insario.com Tue Nov 29 20:46:30 2005 From: rleon at insario.com (Ramon Leon) Date: Tue, 29 Nov 2005 12:46:30 -0700 Subject: Magritte Validation Error Message-ID: <24C40DFA333DC44882F9FB0115F33D8F32B698@ARGON.insario.local> > > Do you have a better suggestion on how to name it? > > I was looking for a word that does not include 'meta' as a > substring (I think it is already used too often in different > contexts) and that reads well and tells what it is used for. > #description was the best thing I could find. > > In real live I only observed once having an accessor that was > called #description and then I could change that together > with the author to be something like #summary. I think every > method extension sooner or later conflicts with existing software. > > Another thing, probably out-of-topic in this thread, is how > you should call accessors, if you have an object referencing > an external description, such as MAValidationError. I simply > called it #description, even-tough this description does not > describe the receiver. I probably should have called it > #actualDescription or #targetDescription or > #externalDescription or ... I was too lazy at the moment. > However this problem stays the same, even if I replace the > #description-prefix with any other. Honestly, maybe it's a culture difference, but damned if I don't have a description accessor on tons of my domain objects, summary doesn't feel right to me. I was just thinking something that's less common than description, that's just so generic a term and so common for an accessor. Even something similar that is more behavioral sounding like descriptor, or, really, a conversion method like asDescrition or asDescriptor rather than just description. It's not really an accessor anyhow, it's building a description of the object and returning it as a container, so a conversion method seems reasonable. Thoughts? From damien.cassou at laposte.net Tue Nov 29 20:58:42 2005 From: damien.cassou at laposte.net (Damien Cassou) Date: Tue, 29 Nov 2005 20:58:42 +0100 Subject: Magritte Validation Error In-Reply-To: <24C40DFA333DC44882F9FB0115F33D8F32B698@ARGON.insario.local> References: <24C40DFA333DC44882F9FB0115F33D8F32B698@ARGON.insario.local> Message-ID: <438CB2F2.4090909@laposte.net> >Honestly, maybe it's a culture difference, but damned if I don't have a >description accessor on tons of my domain objects, summary doesn't feel >right to me. I was just thinking something that's less common than >description, that's just so generic a term and so common for an >accessor. Even something similar that is more behavioral sounding like >descriptor, or, really, a conversion method like asDescrition or >asDescriptor rather than just description. It's not really an accessor >anyhow, it's building a description of the object and returning it as a >container, so a conversion method seems reasonable. Thoughts? > > How about #descriptions which is a common naming for collections of anything ? From rleon at insario.com Tue Nov 29 21:07:56 2005 From: rleon at insario.com (Ramon Leon) Date: Tue, 29 Nov 2005 13:07:56 -0700 Subject: Magritte Validation Error Message-ID: <24C40DFA333DC44882F9FB0115F33D8F32B69D@ARGON.insario.local> > >Honestly, maybe it's a culture difference, but damned if I > don't have a > >description accessor on tons of my domain objects, summary > doesn't feel > >right to me. I was just thinking something that's less common than > >description, that's just so generic a term and so common for an > >accessor. Even something similar that is more behavioral > sounding like > >descriptor, or, really, a conversion method like asDescrition or > >asDescriptor rather than just description. It's not really > an accessor > >anyhow, it's building a description of the object and > returning it as a > >container, so a conversion method seems reasonable. Thoughts? > > > > > How about #descriptions which is a common naming for > collections of anything ? I would even prefer that, since I don't see myself as having collisions with it, but I really do feel it should be a conversion method. When you want a component, you say anObject asComponent, when you want a description, why not anObject asDescription? The description isn't a property of the object, it's a different representation of it, a meta representation. From renggli at iam.unibe.ch Tue Nov 29 22:20:18 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 29 Nov 2005 22:20:18 +0100 Subject: Magritte Validation Error In-Reply-To: <24C40DFA333DC44882F9FB0115F33D8F32B69D@ARGON.insario.local> References: <24C40DFA333DC44882F9FB0115F33D8F32B69D@ARGON.insario.local> Message-ID: >> How about #descriptions which is a common naming for >> collections of anything ? I don't like this, because you don't get a collection of single descriptions, but a container of descriptions that is a description (singular) itself (and accidently responds to the collection protocol). > with it, but I really do feel it should be a conversion method. When > you want a component, you say anObject asComponent, when you want a > description, why not anObject asDescription? The description isn't a > property of the object, it's a different representation of it, a meta > representation. It is definitely not a conversion method, the resulting description is completely independent from the receiver of the message: it can be recomposed, reused with or without any other model instance. What is more, have you ever seen an #asClass conversion method to ask your instance for its meta-representation (#class)? Lukas -- Lukas Renggli http://www.lukas-renggli.ch From rleon at insario.com Tue Nov 29 23:36:29 2005 From: rleon at insario.com (Ramon Leon) Date: Tue, 29 Nov 2005 15:36:29 -0700 Subject: Magritte Validation Error Message-ID: <24C40DFA333DC44882F9FB0115F33D8F32B6A8@ARGON.insario.local> > It is definitely not a conversion method, the resulting > description is completely independent from the receiver of > the message: it can be recomposed, reused with or without any > other model instance. What is more, have you ever seen an > #asClass conversion method to ask your instance for its > meta-representation (#class)? > > Lukas > > -- > Lukas Renggli > http://www.lukas-renggli.ch Hmm.. that's a good point. My inclination is to toss the word meta in there somewhere, it is after all metadata, but you already said you were avoiding that. It's not that big a deal I guess, I just wanted to raise the issue since it was a problem for me. I still think description is far to useful an accessor in "any" problem domain to use it as an extension on Object, I'd at least call it descriptor, but I'm not complaining. I love the framework man, keep up the great work, I check for updates daily and have learned quite a bit about Smalltalk style from reading your code. From renggli at iam.unibe.ch Wed Nov 30 00:28:14 2005 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 30 Nov 2005 00:28:14 +0100 Subject: Magritte Validation Error In-Reply-To: <24C40DFA333DC44882F9FB0115F33D8F32B6A8@ARGON.insario.local> References: <24C40DFA333DC44882F9FB0115F33D8F32B6A8@ARGON.insario.local> Message-ID: > It's not that big a deal I guess, I just wanted to raise > the issue since it was a problem for me. I still think description is > far to useful an accessor in "any" problem domain to use it as an > extension on Object, I'd at least call it descriptor, but I'm not > complaining. Sure, I am open for discussion on any part of the framework. I see that we should try to reduce conflicts as much as possible and having extensions in Object naturally lead to such troubles (unless we have something like class-boxes). I think #descriptor would be a nice name as well, but I am not sure if it is worth the troubles of a rename: there is already a lot of existing code built on top of Magritte (at netstyle.ch we are using Magritte in productive systems since april 2005) and I know software (have a look at OmniBrowser), that would conflict with #descriptor but does not with #description ... ;-) Lukas -- Lukas Renggli http://www.lukas-renggli.ch