tag:forum.world.st,2006:forum-115649Nabble - Magritte, Pier and Related Tools2024-03-28T16:43:46Z<img src="https://forum.world.st/file/n115649/MagrittePierLogo.png" border="0" class="left"/>Pier is a CMS and application development framework.<br>
<a href="http://www.piercms.com/" target="_top" rel="nofollow" link="external">www.piercms.com</a><br>
Magritte is a generic framework for describing classes and their instances.<br>
See the <a href="https://github.com/magritte-metamodel/magritte" target="_top" rel="nofollow" link="external">GitHub project page</a>
tag:forum.world.st,2006:post-5104045Magritte installation problem2019-09-18T10:27:15Z2019-09-18T10:27:15ZSebastián Filippini
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<p>Hi all,</p>
<p>I'm trying to install Magritte and Seaside on Pharo7.</p>
<p>I have installed Seaside with:</p>
<pre><span class="pl-c1">Metacello</span> <span class="pl-k">new</span>
<span class="pl-c1">baseline:</span><span class="pl-s"><span class="pl-pds">'</span>Seaside3<span class="pl-pds">'</span></span>;
<span class="pl-c1">repository:</span> <span class="pl-s"><span class="pl-pds">'</span>github://SeasideSt/Seaside:master/repository<span class="pl-pds">'</span></span>;
load
</pre>
<p>and then I've tried to install Magritte with:</p>
<pre>Metacello new
repository: 'github://magritte-metamodel/magritte';
baseline: 'Magritte';
load
</pre>
<p>but I'm getting a conflict with the installed version of package
BaselineOfGrease. <br>
</p>
<p>I'm new to Pharo and I don't know how to resolve these kind of
conflicts.</p>
<p>Any help would be greatly appreciated. <br>
</p>
<p>Kindly,</p>
<p><span class="tlid-translation translation" lang="en"><span
title="" class="">Sebastian<br>
</span></span></p>
<p><span class="tlid-translation translation" lang="en"><span
title="" class=""><br>
</span></span></p>
<p><br>
</p>
<br />_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-5108995[Pier] Problems writing PierSeaside to GitHub2019-12-29T06:15:08Z2019-12-29T06:15:08ZJohn Borden
<div>Hi All - Lately I've updated the table-of-contents link in Pier to visit its parent, not the page being renderered, and it's resolved one issue, but writing the code to GitHub has been challenging.<br><br>The class PRTocRenderer is in Pier-Seaside-Visitors, however what is listed in Iceberg is pier-seaside (lowercase and missing visitors). When committing changes, it doesn't to leave Iceberg. The steps and pictures are at:<br>http://myborden.com/pier/john-c-borden/updates/committing-pier-seaside-in-iceberg<br><br>Is this problem caused by the package name being lowercase, or that it is missing the suffix? Any suggestions on how to fix this?</div><div><br data-mce-bogus="1"></div><div>Thanks,<br data-mce-bogus="1"></div><div>John<br data-mce-bogus="1"></div><br />_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-5099490Configuration management2019-05-19T07:39:46Z2019-05-19T07:39:46ZDiegoLont
Hi all,
<br/><br/>I am afraid that I do not know how to put this in a smaller mail, as I believe a bit of historical background and theoretical background is in needed. But maybe I should split this in 2 mails. First the background. You can skip this mail, if you believe you know all this.
<br/><br/>Before we used git, there was a lot of discussion how to to proper software configuration management for our open source projects. One of the major problems was that a new version of a package was usually a development versions, and might break the build and also other projects. Metacello allowed us to solve this problem. As Dale always has pointed out, not all projects are the same, so there is not one solutions fits all. This was reflected in Metacello, that supported most (if not all) of these strategies. But just as we agreed on using MIT for our licensing the open source projects, in the end there was agreement on how to do make configurations.
<br/><br/>There were baselines, that described what packages were used and where these packages could be found
<br/> - no version information was included here, only the dependencies
<br/>There were concrete versions, that described what versions of packages belonged together
<br/> - all versions where explicit, also the versions of the projects used.These versions were frozen.
<br/>We defined symbolic versions, that described on a meta level the versions (releases and stable version)
<br/> - these versions where aliases to a concrete version, that could change over time, to include bug fixes.
<br/><br/>By moving our projects to GIT we could use the version management of GIT, and needed less of Metacello.
<br/><br/>In GIT we have good branch support, something that lacked in Metacallo. Using git means, it is no longer necessary to define versions in Metacello. Each concrete or symbolic version can be indicated by either tag, or a branch.
<br/><br/>There is one special branch “master” that is implicitly the stable version. This is supported by git tools, i.e. before merging a pull request in a branch, one can build this pull request, verifying that it s indeed a stable version, and when this was in error, it is easy to revert the change, but leaving this change available for further development.
<br/><br/>For long term support of releases, one can create a branch (preferable recognisable by calling it isomething like masterv2.3 or release2.3), and merge bug fixes into this branch when applicable.
<br/><br/>Also in GIT it is possible for each user to fork a project at a certain version, allowing everyone to freeze a certain project to a certain version, and still be able to get updates on changes, and giving the option to easily merge this change or bug fix into their fork, or leave this change out.
<br/><br/>Finally there is a method to refer to a specific version in GitHub by including to the tag/branch name in the url: <git-url>//<projectname>[:<branchname>]/<source-dir>. This branch name is optional, and when left out, it automatically refers to master.
<br/><br/>Regards,
<br/>Diego
<br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-5099234Broken build2019-05-14T04:13:29Z2019-05-14T04:13:29ZDiegoLont
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">Hi all,<div class=""><br class=""></div><div class="">I have some time to fix QCMagritte, and wanted to make it work for the latest Pharo and to my surprise, loading Magritte itself is broken for Pharo 7.</div><div class=""><br class=""></div><div class="">If I understand correctly the official project on GitHub is in the project <a href="https://github.com/magritte-metamodel" class="" target="_top" rel="nofollow" link="external">https://github.com/magritte-metamodel</a></div><div class="">There are only 2 people in this repository. Sean or Cyril, can you add me (delware // <a href="/user/SendEmail.jtp?type=node&node=5099234&i=0" target="_top" rel="nofollow" link="external">[hidden email]</a>) to this repository so I can make Magritte working again?</div><div class=""><br class=""></div><div class="">Cheers,</div><div class="">Diego</div><div class=""> </div><br />_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-5098736Seaside and Magritte on Gemstone 3.4.32019-04-29T03:24:36Z2019-04-29T03:24:36Zdtrussardi@tiscali.it
Ciao,<div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>i have a development system based on Pharo 7.0.3.</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>On it the 26 April i do :<span class="Apple-tab-span" style="white-space:pre"> </span></div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span><b style="font-weight:normal;" id="docs-internal-guid-35958a93-7fff-80c4-b352-3a65da0b338c"><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; text-indent: 36pt; display: inline !important; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; ">Metacello new</span></div></b></div><b style="font-weight:normal;" id="docs-internal-guid-35958a93-7fff-80c4-b352-3a65da0b338c"><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; text-indent: 36pt; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "><span class="Apple-tab-span" style="white-space:pre"> </span>baseline:'Seaside3';</span></div><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; text-indent: 36pt; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "><span class="Apple-tab-span" style="white-space:pre"> </span>repository:'<a href="github://SeasideSt/Seaside:develop/repository'">github://SeasideSt/Seaside:develop/repository'</a>;</span></div><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; text-indent: 36pt; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "><span class="Apple-tab-span" style="white-space: pre; "> </span>load</span></div><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; text-indent: 36pt; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "><br></span></div></b><div><span class="Apple-tab-span" style="white-space:pre"> </span><font class="Apple-style-span" size="4">It load:<span class="Apple-tab-span" style="white-space:pre"> </span>Seaside v3.3.3 commit c985986</font></div><div><br></div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span><b style="font-weight:normal;" id="docs-internal-guid-fa232ccc-7fff-241f-2e62-d75ba4205b2a"><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; display: inline !important; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; ">Metacello new</span></div></b></div><b style="font-weight:normal;" id="docs-internal-guid-fa232ccc-7fff-241f-2e62-d75ba4205b2a"><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "><span class="Apple-tab-span" style="white-space:pre"> </span>baseline:'Magritte';</span></div><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "><span class="Apple-tab-span" style="white-space:pre"> </span>repository:'<a href="github://magritte-metamodel/magritte:master/repository'">github://magritte-metamodel/magritte:master/repository'</a>;</span></div><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "><span class="Apple-tab-span" style="white-space: pre; "> </span>load</span></div></b><div><span class="Apple-tab-span" style="white-space:pre"> </span></div><div><span class="Apple-tab-span" style="white-space:pre"> </span><font class="Apple-style-span" size="4">It load<span class="Apple-tab-span" style="white-space:pre"> </span>Magritte <span class="Apple-tab-span" style="white-space:pre"> </span>commit c8a8cd5</font></div><div><span class="Apple-tab-span" style="white-space:pre"> </span></div><div><span class="Apple-tab-span" style="white-space:pre"> and everything seems to work well</span>.</div><div><br></div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Now i some test to load the same project on Gemstone 3.4.3</div><div><span class="Apple-tab-span" style="white-space:pre"> </span></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>The Seaside with:</div><div><span class="Apple-tab-span" style="white-space:pre"> </span></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>GsDeployer deploy: [</div> <span class="Apple-tab-span" style="white-space:pre"> </span> Metacello new<br> <span class="Apple-tab-span" style="white-space:pre"> </span> baseline: 'Seaside3';<br> <span class="Apple-tab-span" style="white-space:pre"> </span> repository: '<a href="github://SeasideSt/Seaside:master/repository'">github://SeasideSt/Seaside:master/repository'</a>;<br> <span class="Apple-tab-span" style="white-space:pre"> </span> onLock: [:ex | ex honor];<br> <span class="Apple-tab-span" style="white-space:pre"> </span> load ].<div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span><span class="Apple-style-span" style="font-size: large; ">It load:</span><span class="Apple-style-span" style="font-size: large; "><span class="Apple-tab-span" style="white-space: pre; "> </span></span><span class="Apple-style-span" style="font-size: large; ">Seaside v3.3.3 commit c985986 ( like above )</span><br><br><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>The Magritte with:<br><span class="Apple-tab-span" style="white-space:pre"> </span></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>GsDeployer deploy: [<br> <span class="Apple-tab-span" style="white-space:pre"> </span> <span class="Apple-tab-span" style="white-space:pre"> </span>Metacello new<br> <span class="Apple-tab-span" style="white-space:pre"> </span>baseline: 'Magritte';<br> <span class="Apple-tab-span" style="white-space:pre"> </span>repository: '<a href="github://Magritte-metamodel/Magritte:master/source'">github://Magritte-metamodel/Magritte:master/source'</a>;<br> <span class="Apple-tab-span" style="white-space:pre"> </span>onLock: [:ex | ex honor];<br> <span class="Apple-tab-span" style="white-space:pre"> </span>load ].</div><div><br><span class="Apple-tab-span" style="white-space:pre"> </span>A this point the system open a dialog with the error:</div><div><br><span class="Apple-tab-span" style="white-space:pre"> </span>Could not resolve: Magritte-Merging [Magritte-Merging] in cache <a href="github://Magritte-metamodel/Magritte:master/source">github://Magritte-metamodel/Magritte:master/source</a> (4)<br></div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>and the Seaside project entry is update to v3.2.4<span class="Apple-tab-span" style="white-space:pre"> </span> commit 1f39762</div><div><br></div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Considerations ?</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Thanks,</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>Dario</div><div><br></div><div>P.S. Today i do the command to load Magritte on a new Pharo 7.0.3 image</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre"> </span>The system open a dialog with: </div><div><span class="Apple-tab-span" style="white-space:pre"> </span></div><div><span class="Apple-tab-span" style="white-space:pre"> </span><b style="font-weight:normal;" id="docs-internal-guid-08e81862-7fff-aebe-3dcf-848f13b30dec"><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; display: inline !important; "><span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: 400; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; ">MetacelloConflictingProjectError: Load Conflict between existing BaselineOfGrease [baseline] from <a href="github://SeasideSt/Grease:master/repository">github://SeasideSt/Grease:master/repository</a> and BaselineOfGrease [baseline] from <a href="github://SeasideSt/Grease:1.3.5/repository">github://SeasideSt/Grease:1.3.5/repository</a></span></div></b></div><div><b style="font-weight:normal;" id="docs-internal-guid-08e81862-7fff-aebe-3dcf-848f13b30dec"><div style="line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt; display: inline !important; "><span style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;"><br></span></div></b></div><br />_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-5098817manual installation of Seaside on Pharo halting2019-04-30T11:24:34Z2019-04-30T11:24:34ZKurt Thams
on ConfigurationOfSeaside3 package,
<br/><br/> error: 'Cannot resolve symbolic version #release1'
<br/><br/><a href="http://www.seaside.st/download/pharo" target="_top" rel="nofollow" link="external">http://www.seaside.st/download/pharo</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-5096590Pier on Pharo 72019-03-10T19:17:39Z2019-03-10T19:17:39ZJohn Borden
Anyone who contributed to Pier - Lately I’ve been porting Pier to Pharo 7, and saving my progress in <a href="https://github.com/jborden23/Pier3" class="" target="_top" rel="nofollow" link="external">https://github.com/jborden23/Pier3</a>. Currently I can whip up an image that displays, but none of the commands work, however at least the license at <a href="http://localhost:8765/pier/information/license" class="" target="_top" rel="nofollow" link="external">http://localhost:8765/pier/information/license</a> is functional. I also noticed that there’s a PRBasicObject>>pierLicense to add. Are there any other license-related changes I need to make before moving this to GitHub? <div class="">Thanks,</div><div class="">John</div><div class=""><br class=""></div><br />_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-5085184Description Data - Properties Vs. Inst Vars2018-09-24T10:31:22Z2018-09-24T10:31:22ZSean P. DeNigris
Looking through the MADescription hierarchy, *almost* all field data is
<br/>stored as properties, except MAReferenceDescription>>#reference,
<br/>MAOptionDescription>>#options and a few others. Why these anomalies? Design
<br/>decision or mistake?
<br/><br/><br/><br/>-----
<br/>Cheers,
<br/>Sean
<br/>--
<br/>Sent from: <a href="http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html" target="_top" rel="nofollow" link="external">http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-5083125[Ann]: Magritte3 Ported to GitHub2018-08-16T17:26:22Z2018-08-16T17:26:22ZSean P. DeNigris
Norbert has done a ton of work to port Magritte3 from StHub to GH[1]. He also
<br/>has been steadily integrating the enhancements from my fork [2]. For Pharo
<br/>users, it seems that [1] should most certainly be considered canonical going
<br/>forward. For users of Squeak/other platforms, many enhancements have only
<br/>been tested in Pharo, so they may work, but they may also have to be tweaked
<br/>to work in non-Pharo platforms.
<br/><br/>1. <a href="https://github.com/magritte-metamodel/magritte" target="_top" rel="nofollow" link="external">https://github.com/magritte-metamodel/magritte</a><br/>2. <a href="https://github.com/seandenigris/Magritte3" target="_top" rel="nofollow" link="external">https://github.com/seandenigris/Magritte3</a><br/><br/><br/><br/>-----
<br/>Cheers,
<br/>Sean
<br/>--
<br/>Sent from: <a href="http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html" target="_top" rel="nofollow" link="external">http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-5080551Dependencies of Magritte 32018-06-26T15:35:53Z2018-06-26T15:35:53ZCyrilFerlicot
Hi,
<br/><br/>I have projects depending on Magritte3, Seaside and Grease. I am
<br/>currently updating the dependencies to use the official current
<br/>repository of Seaside and Grease that is now on Github and not on Sthub
<br/>anymore.
<br/><br/>I currently have a problem because Magritte3 dependencies reference the
<br/>Sthub version and not the github one. This creates conflicts.
<br/><br/>I am wondering if Magritte3 should not have a new version using the new
<br/>repositories when they still are close. In that case what should be the
<br/>release? 3.5.3? 3.6.0?
<br/><br/>--
<br/>Cyril Ferlicot
<br/><a href="https://ferlicot.fr" target="_top" rel="nofollow" link="external">https://ferlicot.fr</a><br/><br/><br />_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a><!--start-attachments--><div class="small"><br/><img src="https://forum.world.st/images/icon_attachment.gif" > <strong>signature.asc</strong> (836 bytes) <a href="https://forum.world.st/attachment/5080551/0/signature.asc" target="_top" rel="nofollow" link="external">Download Attachment</a></div><!--end-attachments-->
tag:forum.world.st,2006:post-5078483[Feature]: Merging2018-06-01T06:41:36Z2018-06-01T06:41:36ZSean P. DeNigris
I finally got around to writing some documentation (reprinted below from
<br/>[1]), so I figured this was a good time to announce. Load "Magritte-Merging"
<br/>from my GH fork [2]
<br/><br/>Motivation
<br/><br/><br/>Let's say you have a Person object with a Name. Maybe you are in the
<br/>marketing domain, and info comes in through various lists (say csv or Excel
<br/>files). Some of these may contain missing, incomplete, or incorrect
<br/>information. When new info comes in referring to the same person, you'd like
<br/>to take the most correct parts of both the existing and incoming data.
<br/><br/>API
<br/><br/><br/>Main entry point
<br/><br/><br/>The well-known #patchRelativeToBase:, which we borrow from Monticello.
<br/>newObject patchRelativeToBase: existingObject returns an MAPatchMacro which
<br/>contains a MAPatchOperation for each description of interest. "Interesting"
<br/>here means that the description:
<br/><br/>1. The field has not been excluded from merging
<br/>2. The new value is interesting
<br/>3. Excluding a field from merging
<br/><br/>Just do anElementDescription shouldMerge: false. Why would you want to do
<br/>this? Continuing our Person example, let's say we have a virtual #fullName
<br/>field which concatenates #firstName, #lastName, etc into a pretty printed
<br/>string. The real data lies not in the generated string, but in the
<br/>components and will be merged there. NB: maybe a simpler way would be to
<br/>exclude #readonly fields?
<br/><br/>Is a New Value "Interesting"
<br/><br/><br/>The default rules are:
<br/><br/>1. The value has changed - duh!
<br/>2. The new value is not nil
<br/>3. The new value is not the Magritte default value (This should be
<br/>implemented. See Issue #19)
<br/>These can be changed by overriding #is:anInterestingReplacementFor:,
<br/>currently on the domain object level e.g. Name. For example, aName might
<br/>want to merge a new value which is a full first name like "James", when the
<br/>previous value was an abbreviation e.g. "J.". Obviously, overriding once per
<br/>domain object only works when its fields which are all similar. Probably in
<br/>the future when the need arises, this should be moved to the element
<br/>description.
<br/><br/>Merging in Place
<br/><br/><br/>By default, field values are replaced with the new values. If instead you
<br/>want to keep the existing field value object and recursively update its
<br/>fields, in your field type (Name in our example), override as follows:
<br/><br/>patchRelativeToBase: oldValue as: description of: receiver
<br/> "Edit me in place instead of full replacement like a value object"
<br/> ^ self patchRelativeToBase: oldValue
<br/>This would allow us to consider each update to aPerson's name individually
<br/>and not as an atomic operation. We may want to accept the new first name,
<br/>but reject the new middle name.
<br/><br/>1. <a href="https://github.com/seandenigris/Magritte3/wiki/Merging" target="_top" rel="nofollow" link="external">https://github.com/seandenigris/Magritte3/wiki/Merging</a><br/>2. <a href="https://github.com/seandenigris/Magritte3/" target="_top" rel="nofollow" link="external">https://github.com/seandenigris/Magritte3/</a><br/><br/><br/><br/>-----
<br/>Cheers,
<br/>Sean
<br/>--
<br/>Sent from: <a href="http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html" target="_top" rel="nofollow" link="external">http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-5071459[Enh]: Smalltalk Block Description2018-03-21T19:21:09Z2018-03-21T19:21:09ZSean P. DeNigris
See
<br/><a href="https://github.com/seandenigris/Magritte3/commit/285dc66600f94ac37d5b0f681a65b591f31798e2" target="_top" rel="nofollow" link="external">https://github.com/seandenigris/Magritte3/commit/285dc66600f94ac37d5b0f681a65b591f31798e2</a><br/>for details
<br/><br/>*NB*: Conversion from string requires code evaluation, which can pose a big
<br/>security risk. Use with caution.
<br/><br/>We duplicated MAMemoDescription's multi-line behavior. It would be nice to
<br/>extract into a Trait to avoid the duplication, but we'll hold off in the
<br/>interest of cross-platform compatibility since it's "just a few methods"
<br/><br/><br/><br/>-----
<br/>Cheers,
<br/>Sean
<br/>--
<br/>Sent from: <a href="http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html" target="_top" rel="nofollow" link="external">http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-5071016[Feature]: Dynamic Condition Labels2018-03-17T20:54:40Z2018-03-17T20:54:40ZSean P. DeNigris
Allow code like the following:
<br/>```smalltalk
<br/>"..."
<br/> addCondition: [ :obj | "whatever" ]
<br/> labelled: [ :obj | obj date mmddyyyy, ' is too far in the future' ]
<br/>```
<br/><br/>See
<br/><a href="https://github.com/seandenigris/Magritte3/commit/bfc682fae0d40503519956cfa30d49760d41768f" target="_top" rel="nofollow" link="external">https://github.com/seandenigris/Magritte3/commit/bfc682fae0d40503519956cfa30d49760d41768f</a><br/><br/><br/><br/>-----
<br/>Cheers,
<br/>Sean
<br/>--
<br/>Sent from: <a href="http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html" target="_top" rel="nofollow" link="external">http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-5067645[Feature]: Add a Field in 3 Simple Steps2018-02-21T19:42:39Z2018-02-21T19:42:39ZSean P. DeNigris
This is something I've been dreaming about for a long time, and finally had
<br/>some time to implement. Next step: integrate with browser, and possible
<br/>offer as a refactoring…
<br/><br/>Motivation: Define a descripton on a class, along with instVar, getter and
<br/>setter, in three easy steps.
<br/>Example Usage:
<br/><br/>```smalltalk
<br/>MyClass maAddField: #employeeNumber.
<br/>```
<br/><br/>1. A list of MADescription subclasses will appear; select one.
<br/>2. Next fill out a Morphic Magritte form on a prototype of your selection
<br/>from #1
<br/>3. An annotated description-creation method will be added to MyClass. If you
<br/>gave the description an MASelectorAccessor, the instVar, getter, and setter
<br/>will be created if needed.
<br/><br/><br/><br/>-----
<br/>Cheers,
<br/>Sean
<br/>--
<br/>Sent from: <a href="http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html" target="_top" rel="nofollow" link="external">http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-5066987Condition Handling - WIP?2018-02-15T08:28:03Z2018-02-15T08:28:03ZSean P. DeNigris
I'm wondering whether conditions could be fleshed out some more or if I'm
<br/>missing some intention/design…
<br/><br/>I was employing a technique described by Ramon Leon [1] for conditions that
<br/>affect multiple descriptions, namely:
<br/>```
<br/>descriptionContainer
<br/> ^(super descriptionContainer)
<br/> addCondition: [:memento |
<br/> (memento cache at: self descriptionEndDate) > (memento cache at:
<br/>self descriptionStartDate)]
<br/> labelled: 'End date must be after start date';
<br/> yourself
<br/>```
<br/><br/>I noticed a few seeming limitations of this technique (and conditions in
<br/>general):
<br/>1. The example above only works when using a cached memento. It fails due to
<br/>DNU #cache for other Memento types, as well as when validating objects
<br/>directly (e.g. `myDomainObject magritteDescription validate: self.`)
<br/>2. When the above fails, the exception bubbles up on its own instead of
<br/>being grouped together with failed conditions from individual descriptions
<br/>because `MAValidatorVisitor>>#visitContainer:` handles the container
<br/>validation separately (via `super visitContainer: aDescription.`) before
<br/>looping through the element descriptions to validate them.
<br/>3. In both the container and element validations, once one condition
<br/>per-[container | element] fails, others are not processed (for the same
<br/>[container | element]). I experimented with expanding the error handling
<br/>block, but couldn't see a great way to overcome this without a more
<br/>significant rewrite because MAValidationErrors are not resumable.
<br/><br/>My quick fix idea would be to make MAValidationErrors resumable and expand
<br/>the error block to include the container along with the element validations.
<br/>Would that be the best way to address the issues above?
<br/><br/>1. <a href="http://onsmalltalk.com/multiple-field-validation-rules-in-magritte" target="_top" rel="nofollow" link="external">http://onsmalltalk.com/multiple-field-validation-rules-in-magritte</a><br/><br/><br/><br/>-----
<br/>Cheers,
<br/>Sean
<br/>--
<br/>Sent from: <a href="http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html" target="_top" rel="nofollow" link="external">http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-4827879Default labels2015-05-21T07:18:12Z2015-05-21T07:18:12ZSean P. DeNigris
In cases where there is an MASelectorAccessor, I'd like to make the default label = `the accessor capitalized unCamelCased`. It seems the overwhelmingly common use case is `... #accessor: #dateCreated; #label: 'Date Created'`.
<br/><br/>The current behavior is
<br/> MADescription>>#label
<br/> ^ self propertyAt: #label ifAbsent: [ self class defaultLabel ]
<br/>Is anyone using (or can state a plausible use case for) this subclass-customizable class-side #defaultLabel?
<br/><br/>If no one is relying on the existing behavior, I'll make the change...
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-5066837Where did #asCondition go?2018-02-13T18:13:30Z2018-02-13T18:13:30ZSean P. DeNigris
I checked StHub, SqS and SS3, but did not find the code. Ideas?
<br/><br/><br/><br/>-----
<br/>Cheers,
<br/>Sean
<br/>--
<br/>Sent from: <a href="http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html" target="_top" rel="nofollow" link="external">http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-5064935Executability (Actions)2018-01-28T09:22:04Z2018-01-28T09:22:04ZSean P. DeNigris
Rereading "Magritte – A Meta-Driven Approach to Empower Developers and End
<br/>Users", I found the following very interesting passage on page 5:
<br/><br/>> Magritte does not provide specific functionality to describe behavioral
<br/>> aspects, such as operations, their parameters and return values [17,9].
<br/>> This is not necessary, as methods in Smalltalk are objects that can be
<br/>> described as any other object. Then using the reflective facilities it is
<br/>> possible to retrieve a list of invokable method sends (first class method
<br/>> invocations) that are available on a particular class. On request these
<br/>> methods can be invoked with arguments provided by end users.
<br/><br/>Can anyone provide or point to an example of the above in actual use? It is
<br/>very intriguing but I'm not clear how one would go about implementing it!
<br/><br/><br/><br/>-----
<br/>Cheers,
<br/>Sean
<br/>--
<br/>Sent from: <a href="http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html" target="_top" rel="nofollow" link="external">http://forum.world.st/Magritte-Pier-and-Related-Tools-f115649.html</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
<div class="signature weak-color">
Cheers,
<br/>Sean
</div>
tag:forum.world.st,2006:post-117630Photo gallery?2008-11-18T03:15:18Z2008-11-18T03:15:18ZDamien Cassou-3
Hi,
<br/><br/>is there any photo gallery available for Pier? I mean a widget where I
<br/>could upload pictures and they are rendered in a nice way. I started
<br/>one 4 years ago but I abandoned it.
<br/><br/>Bye
<br/><br/>--
<br/>Damien Cassou
<br/><a href="http://damiencassou.seasidehosting.st" target="_top" rel="nofollow" link="external">http://damiencassou.seasidehosting.st</a><br/><br/>_______________________________________________
<br/>SmallWiki, Magritte, Pier and Related Tools ...
<br/><a href="https://www.iam.unibe.ch/mailman/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.iam.unibe.ch/mailman/listinfo/smallwiki</a><br/>
tag:forum.world.st,2006:post-50287193.5.2 and MATimeStampDescription2017-11-17T23:44:41Z2017-11-17T23:44:41ZTobias Pape
Hi all
<br/><br/>I have just uploaded a new config, and called it version 3.5.2.
<br/>Essential change:
<br/><br/> Split out Trait extensions FileSystem/Directory detection and load only when supported.
<br/> - Traits are supporten in Pharo and Squek (but only when loaded).
<br/> - FileSystem is in all newer Pharo but could be loaded in Pharo 1.0 and Squeak, GemStone and Squeak have FileDriectory by default'
<br/><br/>This makes it possible to properly load in Squeak and neatly have the dependencies more "capability"-based.
<br/>This is because Squeak can live with and without Traits or FileSystem.
<br/>Another goal was to Un-break GemStone a bit more, but not too much progress here.
<br/><br/>The effect is that the tests for the external file model are now centralized, and the implementation in
<br/>Magritte-FileDirectory (for Squeak/GemStone), Magritte-FileSystem (for squeak, pharo-1 and pharo-2), and (traditional way) Magritte-Pharo3-Model).
<br/><br/>If this is not to your liking, please tell and I'll reverse this.
<br/><br/>=-=-=
<br/>Also, I found a problem with using DateAndTime as timestamp 'backend' in Pharo.
<br/>The problem is, that we loose information, should ever a DateAndTime be used that uses a local offset, and, sadly, that is almost every one.
<br/><br/>Here's a snipped to illustrate:
<br/><br/>|d t tz text |
<br/>tz := DateAndTime localTimeZone.
<br/>[d := MATimeStampDescription new
<br/> accessor: MANullAccessor new;
<br/> yourself.
<br/>t := GRPlatform current magritteTimeStampClass current.
<br/>text := d toString: t.
<br/>DateAndTime localTimeZone: (TimeZone offset: -8 hours name: 'Pacific Standard Time' abbreviation: 'PST').
<br/>(d fromString: text) = t
<br/>] ensure: [ DateAndTime localTimeZone: tz ].
<br/><br/>You will get false, but we want true.
<br/>Sadly, this also holds for Squeak.
<br/><br/>We could force a timeszone designator at the end of the to-string-converted version (like this
<br/>MAStringWriter>>visitTimeStampDescription: aDescription
<br/> self stream print: self object asDate; space.
<br/> self stream print: self object asTime; space.
<br/>
<br/>(self object offset ~= Duration zero)
<br/> ifTrue: [self stream
<br/> nextPut: (self object offset positive ifTrue: [$+] ifFalse: [$-]);
<br/> nextPutAll: (self object offset hours abs asString padLeftTo: 2 with: $0);
<br/> nextPutAll: (self object offset minutes abs asString padLeftTo: 2 with: $0)]
<br/> ifFalse: [self stream nextPut: $Z]
<br/><br/>) which would fix it for pharo.
<br/><br/>But i really think that it would be better to force an ISO format, which should have explicit timezone (or 'Z' for that matter).
<br/><br/>=-=-=-=
<br/><br/>Best regards
<br/> -Tobias
<br/><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4939548Improving Magritte2017-03-21T13:44:55Z2017-03-21T13:44:55ZDiegoLont
Hi all,
<br/><br/>Recently there was a question about Magritte extensions on the Pharo users list. It has been a while that I was really involved in developing on (QC)Magritte and doing stuff on the web, but on my todo list, there is feeding back the improvements on Magritte I have made for QCMagritte to Magritte itself. And while doing so, adding tests and cleaning up code where needed.
<br/><br/>The first extension I would like to feed back into Magritte is the Builder.
<br/><br/>The background of the builder is the following:
<br/>- Having a custom component set, and wanting to use this custom component set can be very tiresome for larger applications, because you have to set a component class for all descriptions.
<br/>- Also it breaks the layering Magritte is trying to build in, as you need to "pollute" your model descriptions, with all kind of stuff, that determine how everything looks like. With stuff that belongs in your UI code instead of your model code.
<br/>I believe that the builder is a solution for this problem. The actual builder can be injected as an extension (for an example see the QCMagritte demo) and processes all descriptions. As it is a visitor, it can replace or enrich your descriptions with whatever you need in your UI based on the type of description.
<br/><br/>The builder affects the way the Magritte description is created, so the package contains an override of magritteDescription. If I would implement this on Object (the most logical point), I would need to put the builder into Magritte-Model. Having no builders, this would of course not affect the returned description. Does anyone object to putting this here? And if you have objections, do you have a suggestion to do this elsewhere?
<br/><br/>Cheers,
<br/>Diego
<br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4996002MAReport body scrolling with thead data 'fixed'2017-10-25T03:06:49Z2017-10-25T03:06:49Zdtrussardi@tiscali.it
Ciao,<div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>i have a Magritte Report based on same descriptions.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>Now i need to rendering the relative instance inside a div for scrolling the data.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>All works fine but the scrolling works on the thead data rendering at the top.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>In this case i lose ( not display ) the thead data when i scrolling down the data.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>My goal is to 'fixed' the thead data at the top and when i scrolling only the body data scrolling.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>The same considerations is relative to the tfood of the MAReport.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>I attempted to fixed the thead with:</div><div><span class="Apple-tab-span" style="white-space: pre; "> </span></div><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">.</span>divForScrolling<span class="Apple-tab-span" style="white-space: pre; "> table thead {</span></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">position: absolute;</span></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">width: 99%;</span></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">border: 2px solid;</span></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">}</span></div><div><br></div></blockquote></blockquote><span class="Apple-tab-span" style="white-space: pre; "> </span>It 'fixed' the thead data at the top of the divForScrolling but it lose the resizing of the thead td width.<div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>This in the both case when defined the table-layout of the MAReport table<span class="Apple-tab-span" style="white-space: pre; "> </span>fixed or auto</div><div><br></div><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div>. divForScrolling table {</div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><div>table-layout: fixed;</div></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><div>width: 100%;</div></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><div>}</div></div></blockquote></blockquote><div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>In substance with the thead position: absolute </div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>the body td width size change when resizing the MAReport </div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>( change the size of the web page for fixed table-layout <span class="Apple-tab-span" style="white-space: pre; "> </span> or change the data for auto table-layout )</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>but the relative thead td width not.</div></div><div><br></div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>Has anyone else had such a requirement / plan to solve it out there?</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>Thanks,</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>Dario</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>P.S. <span style="color: rgb(33, 33, 33); font-family: arial, sans-serif; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 24px; text-align: left; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; display: inline !important; float: none; background-color: rgb(255, 255, 255); ">Has anyone solved these problems by using other tools ( library ) ?</span></div><div><span style="color: rgb(33, 33, 33); font-family: arial, sans-serif; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 24px; text-align: left; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; display: inline !important; float: none; background-color: rgb(255, 255, 255); "><br></span></div><br />_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4996015MAReport body scrolling with thead data 'fixed'2017-10-25T02:36:56Z2017-10-25T02:36:56Zdtrussardi@tiscali.it
Ciao,<div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>i have a Magritte Report based on same descriptions.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>Now i need to rendering the relative instance inside a div for scrolling the data.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>All works fine but the scrolling works on the thead data rendering at the top.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>In this case i lose ( not display ) the thead data when i scrolling down the data.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>My goal is to 'fixed' the thead data at the top and when i scrolling only the body data scrolling.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>The same considerations is relative to the tfood of the MAReport.</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>I attempted to fixed the thead with:</div><div><span class="Apple-tab-span" style="white-space: pre; "> </span></div><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">.</span>divForScrolling<span class="Apple-tab-span" style="white-space: pre; "> table thead {</span></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">position: absolute;</span></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">width: 99%;</span></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">border: 2px solid;</span></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><span class="Apple-tab-span" style="white-space: pre; ">}</span></div><div><br></div></blockquote></blockquote><span class="Apple-tab-span" style="white-space: pre; "> </span>It 'fixed' the thead data at the top of the divForScrolling but it lose the resizing of the thead td width.<div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>This in the both case when defined the table-layout of the MAReport table<span class="Apple-tab-span" style="white-space: pre; "> </span>fixed or auto</div><div><br></div><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div>. divForScrolling table {</div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><div>table-layout: fixed;</div></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><div>width: 100%;</div></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><div><div>}</div></div></blockquote></blockquote><div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>In substance with the thead position: absolute </div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>the body td width size change when resizing the MAReport </div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>( change the size of the web page for fixed table-layout <span class="Apple-tab-span" style="white-space: pre; "> </span> or change the data for auto table-layout )</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>but the relative thead td width not.</div></div><div><br></div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>Has anyone else had such a requirement / plan to solve it out there?</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>Thanks,</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>Dario</div><div><br></div><div><span class="Apple-tab-span" style="white-space: pre; "> </span>P.S. <span style="color: rgb(33, 33, 33); font-family: arial, sans-serif; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 24px; text-align: left; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; display: inline !important; float: none; background-color: rgb(255, 255, 255); ">Has anyone solved these problems by using other tools ?</span></div><br><br />_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4940588Is there an Undo/Versioning solution based on Magritte?2017-03-30T11:47:28Z2017-03-30T11:47:28ZEsteban A. Maringolo
Hi all,
<br/><br/>I'm trying to implement a way to have versions of the contents entered
<br/>through a form so I can revert the object models to an early state,
<br/>very much like the page history edits in Wikipedia, but with more
<br/>fields than just the text content.
<br/><br/>This solution should provide a feature to store the contents not only
<br/>of the descriptions in the container, but also descriptions contained
<br/>in referenced descriptions (via MAReferenceDescription).
<br/><br/>I'm about to write my own, but if there is something out there, I
<br/>would like to see if it fits our needs, or could be easily modified.
<br/><br/>Regards!
<br/><br/>Esteban A. Maringolo
<br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4993988Magritte3 on Pharo72017-10-23T09:21:19Z2017-10-23T09:21:19ZStephan Eggermont-3
I've started making some changes to run Magritte on Pharo7.
<br/>In Pharo7, a number of traits were flattened and are no longer used.
<br/>That results in #label not being available
<br/><br/>Stephna
<br/><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4945490Port of builders to Magritte-Model2017-05-03T12:45:55Z2017-05-03T12:45:55ZDiegoLont
Hi all,
<br/><br/>As announced previously I ported the builder back to Magritte, as I believe it was a missing piece in Magritte. A mail does not suffice to give the details, and in the past I did 2 presentations on this topic (dry-ing Magritte, <a href="https://www.slideshare.net/esug/drying-magritte?next_slideshow=1" target="_top" rel="nofollow" link="external">https://www.slideshare.net/esug/drying-magritte?next_slideshow=1</a>).
<br/><br/>I also extended the tutorial (build in with QC-Magritte, load QC-Magritte, and start a web-browser on <a href="http://localhost:8080/" target="_top" rel="nofollow" link="external">http://localhost:8080/</a>) with a chapter “technical details” where I made another effort in explaining why we need builders. If this gives questions, please ask them.
<br/><br/>Also I am not 100% sure a builder is the correct term: so if there are people with better suggestions, please post them.
<br/><br/>The coming weeks I will fill in the last blanks:
<br/>- add testcases specific to the builder. The old ones still run, ensuring no builders == no change.
<br/>- more work on tutorial.
<br/><br/>Of course it motivates me, when people comment or ask questions, so I know it is used. So thanks Udo for asking a question concerning QCMagritte, this helped me at least finish this far.
<br/><br/>Regards,
<br/>Diego
<br/><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4945771QCMagritte: (Bug?) Groups always collapsed2017-05-07T04:00:30Z2017-05-07T04:00:30ZUdo Schneider
All,
<br/><br/>I think I hit a bug in QCMagritte. If you have groups (or objects
<br/>embedded via MAToOneRelation) theses are rendered as collapsed groups by
<br/>default. However it is not possible to uncollapse them.
<br/><br/>This is IMHO due to a bug in MAContainer>>#isCollapsed:. As far as I
<br/>read the code in #isCollapsed:/#setCollapsed:for: and #defaultCollapsed
<br/>groups, it's not possible to un-collapse groups because neither
<br/>#setCollapsed:for: nor #isCollapsed: *sets* the property. Both use
<br/>#at:ifAbsent:. Changing #isCollapsed: to use #at:ifAbsentPut: seems to
<br/>solve the issue:
<br/><br/>isGroupCollapsed: aGroup
<br/> ^ (self propertyAt: #collapsedGroups ifAbsentPut: [ self
<br/>defaultCollapsedGroups ])
<br/> includes: aGroup
<br/><br/>CU,
<br/><br/>Udo
<br/>+
<br/><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4944592QCMagritte: QCObject vs. QCParentObject2017-04-27T13:09:08Z2017-04-27T13:09:08ZUdo Schneider
All,
<br/><br/>I can't really understand the difference between QCObject and
<br/>QCParentObject and when to use which.
<br/><br/> From reading the source I can guess that a QCParentObject allows you to
<br/>access the ApplicationModel using #model (through it's parent ivar). But
<br/>is this all?
<br/><br/>CU,
<br/><br/>Udo
<br/><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4940076Latest Magritte version per Smalltalk dialect2017-03-27T06:40:01Z2017-03-27T06:40:01ZEsteban A. Maringolo
Hi all,
<br/><br/>Do we know what is the latest Magritte version available in each
<br/>Smalltalk dialect?
<br/><br/>I know Pharo/Squeak share code, but I'd like to know if there is
<br/>recent version of it in Cincom Smalltalk (VisualWorks 8.2), or if
<br/>there is somebody with plans of migrating/using it.
<br/><br/>Best regards,
<br/><br/>--
<br/>Esteban.
<br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4922768Pier3 with latest Pillar2016-11-11T19:36:51Z2016-11-11T19:36:51ZJohn Borden
Hi Peter - Recently I saw your "Pier3 with latest Pillar" post to the Pharo group, and was intrigued about your changes. If you can't get them in Pillar, maybe they could be modified to be added to Pier3 or the Pier3AddOns build. Recently I updated the config to correct the version of Seaside that was loading, and now all of the builds are green for:
<br/> <a href="https://ci.inria.fr/pharo-contribution/job/Pier3Addons/" target="_top" rel="nofollow" link="external">https://ci.inria.fr/pharo-contribution/job/Pier3Addons/</a><br/>I can't recall who gave me write access, but I expect they are on this list.
<br/>Thanks,
<br/>John
<br/><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4915126Adaptive Magritte Trait2016-09-11T10:16:44Z2016-09-11T10:16:44ZTapple Gao
Quoting from <a href="http://sdmeta.gforge.inria.fr/Teaching/Lille/0910-MetaModelisation/07-08-Cours43-DescribedBy-Reng07aMagritte.pdf" target="_top" rel="nofollow" link="external">http://sdmeta.gforge.inria.fr/Teaching/Lille/0910-MetaModelisation/07-08-Cours43-DescribedBy-Reng07aMagritte.pdf</a> section 4.1:
<br/><br/>The Adaptive- Model has two instance variables, the first being used to refer to the descriptions of the instance and the other one to keep a list of the actual values of the model. Transforming the class of the adaptive model into a Trait [18] allows us turn any existing class into an adaptive model and to combine the descriptions defined in the class with the ones provided by the instance.
<br/><br/>I cannot find this trait. Does it exist in magritte? I see MAAdaptiveModel, but I am indeed trying to add adaptivity to a class, and am struggling with it
<br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4914739How to Contribute2016-09-08T03:12:56Z2016-09-08T03:12:56ZTapple Gao
Hello all. It’s been a long time since I contributed to a smalltalk project, but I’d like to start again.
<br/><br/>I’m developing a complex website based on Pier and Magritte: <a href="https://fiberhood.nl" target="_top" rel="nofollow" link="external">https://fiberhood.nl</a><br/><br/>Even though I’ve barely started, I’ve already found several things to fix in Pier and Magritte, and would like to submit my fixes back upstream. How should I do that? I assume I don’t have commit access to <a href="http://www.smalltalkhub.com/#!/~Magritte" target="_top" rel="nofollow" link="external">http://www.smalltalkhub.com/#!/~Magritte</a> and <a href="http://www.smalltalkhub.com/#!/~Pier" target="_top" rel="nofollow" link="external">http://www.smalltalkhub.com/#!/~Pier</a> , although I don’t really know how to tell. I’m used to squeaksource, where it plainly says Global: Read or Global: Read and Write
<br/><br/>My username on smalltalkhub is tapple: <a href="http://www.smalltalkhub.com/#!/~tapple" target="_top" rel="nofollow" link="external">http://www.smalltalkhub.com/#!/~tapple</a><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4907405QCMagritte and executePolicy error2016-07-21T15:38:47Z2016-07-21T15:38:47Zalvan
When I install QCMagritte in Pharo5.0 via catalog browser it loads Seaside 3.2 and Seaside 3.1 and after loading localhost page I get this error executePolicy is missing. Is there an way to disable dependency on Seaside 3.2 or update QCMagritte.
<br/>Thank you
<br/>Ales
<br/><img src="https://forum.world.st/file/n4907405/Screen_Shot_2016-07-22_at_01.jpg" border="0" alt="QCMagritte load Seaside 3.2 and executePolicy error"/>
tag:forum.world.st,2006:post-4895097[ANN] Pharo 5.0 released!2016-05-12T08:46:04Z2016-05-12T08:46:04ZEstebanLM
<meta http-equiv="Content-Type" content="text/html charset=utf-8"><div style="font-size: 14px;" class=""><div class="" style="font-size: 12px; line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt;"><span class="" style="font-size: 15px; font-family: Arial; vertical-align: baseline; white-space: pre-wrap;">Hi,</span></div><div class="" style="font-size: 12px; line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt;"><span class="" style="font-size: 15px; font-family: Arial; vertical-align: baseline; white-space: pre-wrap;"><br class=""></span></div><div class="" style="font-size: 12px; line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt;"><span class="" style="font-size: 15px; font-family: Arial; vertical-align: baseline; white-space: pre-wrap;">Please spread widely, and s</span><span style="font-family: Arial; font-size: 15px; white-space: pre-wrap;" class="">orry for multiple posts. </span></div><div class="" style="font-size: 12px; line-height: 1.38; margin-top: 0pt; margin-bottom: 0pt;"><span class="" style="font-size: 15px; font-family: Arial; vertical-align: baseline; white-space: pre-wrap;">(this post can be see here: <a href="http://pharo.org/news/pharo-5.0-released" class="" target="_top" rel="nofollow" link="external">http://pharo.org/news/pharo-5.0-released</a></span><span style="font-family: Arial; font-size: 15px; white-space: pre-wrap;" class="">)</span></div></div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">Dear World,</div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">The time has come for <b class="">Pharo 5.0</b>!</div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class=""><img apple-inline="yes" id="59F63B25-AF6E-4425-AF7B-9742D6B45BBF" height="706" width="850" apple-width="yes" apple-height="yes" src="https://forum.world.st/attachment/4895097/0/pharo50-screenshot.png" class=""></div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">This is our most significant release yet. Here are some highlights:</div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">- The PharoVM is now based on Spur, the new memory management, and it brings with it a 35% speedup!</div><div style="font-size: 14px;" class="">- A new unified foreign function interface (UFFI) replaced NativeBoost to provide a strong Spur-compatible framework for interfacing with the outside world.</div><div style="font-size: 14px;" class="">- The Glamorous Toolkit now includes the GTDebugger to offer a moldable infrastructure that allows the developer to customize the debugger deeply.</div><div style="font-size: 14px;" class="">- The underlying Reflectivity mechanism has reached maturity with multiple pieces coming together to empower developers to instrument their own systems. For example, we now have breakpoints implemented as just a simple extension of this mechanism.</div><div style="font-size: 14px;" class="">- QualityAssistant is now part of the image to provide live feedback during development.</div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">These are just the more prominent highlights, but the details are just as important. We have closed 2446 issues in Pharo 5. Take a moment to go through a more detailed recount of the progress: <a href="https://github.com/pharo-project/pharo-changelogs/blob/master/Pharo50ChangeLogs.md" class="" target="_top" rel="nofollow" link="external">https://github.com/pharo-project/pharo-changelogs/blob/master/Pharo50ChangeLogs.md</a>.</div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">While the technical improvements are significant, just think of getting 30% faster out-of-the-box, still the most impressive fact is that the new code that got in the main Pharo 5.0 image was contributed by 100 people. Together we have touched 43% of the classes, and 20% of the methods. The following visualization rendered with Roassal in Pharo 5.0 is dedicated to this effort. The picture shows the touched classes and packages in gray, the authors and the links to the changed classes in red, and, using an automatically generated visual id, you can spot authors that have worked on similar projects.</div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class=""><img apple-inline="yes" id="AD8D7EAA-CA7C-45C9-914F-314A9468139A" height="1072" width="950" apple-width="yes" apple-height="yes" src="https://forum.world.st/attachment/4895097/1/pharo50-contributors.png" class=""></div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">Pharo is more than code. It is an exciting project involving energetic people. We thank all the contributors of this release:</div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">Abdelghani Alidra, Clara Allende, David Allouche, Nicolas Anquetil, Thibault Arloing, Jean Baptiste Arnaud, Mangesh Bendre, Clement Bera, Alexandre Bergel, Torsten Bergmann, Usman Bhatti, Vincent Blondeau, Johan Brichau, Camillo Bruni, Miguel Campusano, Damien Cassou, Nicolas Cellier, Danny Chan, Andrei Chis, Christopher Coat, Ben Coman, Bernardo Contreras, Gabriel Omar Cotelli, Tommaso Dal Sasso, Paul De Bruicker, Sean De Nigris, Christophe Demarey, Simon Denier, Marcus Denker, Martin Dias, John Dougan, Stephane Ducasse, Stephan Eggermont, Johan Fabry, Sergio Fedi, Cyril Ferlicot, Holger Hans Peter Freyther, Joshua Gargus, Tudor Girba, Thierry Goubier, Kris Gybels, Norbert Hartl, Thomas Heniart, Dale Henrichs, Nicolai Hess, Alejandro Infante, Henrik Johansen, Goran Krampe, Pavel Krivanek, Juraj Kubelka, Denis Kudriashov, Matthieu Lacaton, Laurent Laffont, Kevin Lanvin, Jannik Laval, Alexander Lazarević, Skip Lentz, Max Leske, Dave Lewis, Esteban Lorenzano, Sheridan Mahoney, Mariano Martinez Peck, Max Mattone, John McIntosh, Rene Meusel, Eliot Miranda, Henrik Nergaard, Marion Noirbent, Merwan Ouddane, Nick Papoulias, Nicolas Passerini, Alain Plantec, Guillermo Polito, Damien Pollet, Baptiste Quide, Andreas Raab (RIP), Alain Rastoul, Stefan Reichhart, Lukas Renggli, Mark Rizun, Michael Rueger, Valentin Ryckewaert, Ronie Salgado, Udo Schneider, Boris Spasojevic, Igor Stasenko, Roger Stebler, Serge Stinckwich, Aliaksei Syrel, Camille Teruel, Pablo Tesone, Yuriy Tymchuk, Peter Uhnak, Masashi Umezawa, Dion Stewart, Sven Van Caekenberghe, Jan Van De Sandt, Benjamin Van Ryseghem, Toon Verwaest, Franck Warlouzet.</div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">(If you contributed with Pharo 5.0 development in any way and we missed your name, please send us a mail and we will add you).</div><div style="font-size: 14px;" class=""><br class=""></div><div style="font-size: 14px;" class="">Enjoy!</div><div style="font-size: 14px;" class="">The Pharo Team</div><div class=""><br class=""></div><br />_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a>
tag:forum.world.st,2006:post-4889058MAReport with editable cells2016-04-08T04:32:53Z2016-04-08T04:32:53ZIwan Vosloo
Hi,
<br/><br/>We often use MAReport to display tables of data. We'd like to also be
<br/>able to edit cells in such a table. There is MADescribedComponentColumn
<br/>which allows using a component in a cell, but it does not quite do the
<br/>trick because it is read-only (and its implementation does not allow
<br/>otherwise).
<br/><br/>I am currently on a mission to figure out how we can do this cleanly
<br/>using Magritte.
<br/><br/>Has anyone else had such a requirement / plan to solve it out there?
<br/><br/>Regards
<br/>- Iwan
<br/><br/>--
<br/>Reahl, the Python only web framework: <a href="http://www.reahl.org" target="_top" rel="nofollow" link="external">http://www.reahl.org</a><br/><br/>_______________________________________________
<br/>Magritte, Pier and Related Tools ...
<br/><a href="https://www.list.inf.unibe.ch/listinfo/smallwiki" target="_top" rel="nofollow" link="external">https://www.list.inf.unibe.ch/listinfo/smallwiki</a><br/>