[Pharo-dev] Zinc-rest URL matching

2014-09-12 Thread Christophe Demarey
Hi,

I use Zinc-Rest and it works like a charm, really simple to quickly get 
something working.
I have a question about URL pattern matching that is used to dispatch request 
to the right handler.
I want to have following URLs:
/foo/*
/foo/latest
I defined 2 handlers with following patterns:
#('foo' '*')
#('foo' 'latest')

I was expecting that the more precise handler was chosen but it was the generic 
handler (with '*'). Is there a way to do that?
It is not blocking because I can use the same handler to manage both patterns 
but I would prefer to have them separated as the semantic is not the same.

Regards,
Christophe.

smime.p7s
Description: S/MIME cryptographic signature


Re: [Pharo-dev] Zinc-rest URL matching

2014-09-12 Thread Santiago Bragagnolo
You may want to check this thread.

http://forum.world.st/ANN-Teapot-0-8-micro-web-framework-tp4774449.html

Hope it solves your needs :)



2014-09-12 10:28 GMT+02:00 Christophe Demarey christophe.dema...@inria.fr:

 Hi,

 I use Zinc-Rest and it works like a charm, really simple to quickly get
 something working.
 I have a question about URL pattern matching that is used to dispatch
 request to the right handler.
 I want to have following URLs:
 /foo/*
 /foo/latest
 I defined 2 handlers with following patterns:
 #('foo' '*')
 #('foo' 'latest')

 I was expecting that the more precise handler was chosen but it was the
 generic handler (with '*'). Is there a way to do that?
 It is not blocking because I can use the same handler to manage both
 patterns but I would prefer to have them separated as the semantic is not
 the same.

 Regards,
 Christophe.


[Pharo-dev] [pharo-project/pharo-core]

2014-09-12 Thread GitHub
  Branch: refs/tags/40219
  Home:   https://github.com/pharo-project/pharo-core


[Pharo-dev] [pharo-project/pharo-core] 0964b9: 40219

2014-09-12 Thread GitHub
  Branch: refs/heads/4.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: 0964b98329abb623c8f85c25e414009a5ec4b2da
  
https://github.com/pharo-project/pharo-core/commit/0964b98329abb623c8f85c25e414009a5ec4b2da
  Author: Jenkins Build Server bo...@pharo-project.org
  Date:   2014-09-12 (Fri, 12 Sep 2014)

  Changed paths:
M Refactoring-Critics.package/RBImplementedNotSentRule.class/definition.st
A 
Refactoring-Critics.package/RBImplementedNotSentRule.class/instance/cache/literals.st
A 
Refactoring-Critics.package/RBImplementedNotSentRule.class/instance/private/addLiteral_.st
M 
Refactoring-Critics.package/RBImplementedNotSentRule.class/instance/running/checkMethod_.st
A 
Refactoring-Critics.package/RBImplementedNotSentRule.class/instance/running/resetResult.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
scripts/script219.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
updates/update40219.st
M 
ScriptLoader40.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
M 
System-Announcements.package/MethodRecategorized.class/instance/accessing/methodRecategorized_.st
M 
System-Announcements.package/MethodRemoved.class/instance/accessing/methodRemoved_.st

  Log Message:
  ---
  40219
13993 remove two undeclared in System-Announcemetns
https://pharo.fogbugz.com/f/cases/13993

13990 RBImplementedNotSentRule slow
https://pharo.fogbugz.com/f/cases/13990

http://files.pharo.org/image/40/40219.zip




Re: [Pharo-dev] Zinc-rest URL matching

2014-09-12 Thread Sven Van Caekenberghe
Hi Christophe,

On 12 Sep 2014, at 10:28, Christophe Demarey christophe.dema...@inria.fr 
wrote:

 Hi,
 
 I use Zinc-Rest and it works like a charm, really simple to quickly get 
 something working.
 I have a question about URL pattern matching that is used to dispatch request 
 to the right handler.
 I want to have following URLs:
 /foo/*
 /foo/latest
 I defined 2 handlers with following patterns:
 #('foo' '*')
 #('foo' 'latest')
 
 I was expecting that the more precise handler was chosen but it was the 
 generic handler (with '*'). Is there a way to do that?
 It is not blocking because I can use the same handler to manage both patterns 
 but I would prefer to have them separated as the semantic is not the same.
 
 Regards,
 Christophe.

My first answer would indeed also have been to handle both cases in one call (I 
did similar things in my projects). But now that you mention it, I think this 
can be fixed quite easily. Have a look at the following version:

===
Name: Zinc-REST-SvenVanCaekenberghe.16
Author: SvenVanCaekenberghe
Time: 12 September 2014, 11:55:02.020483 am
UUID: 6421d8be-c7c8-44fc-8958-121cc86ae93e
Ancestors: Zinc-REST-SvenVanCaekenberghe.15

ZnCallHierarchyRestUriSpace#match: now uses #order to sort auto matched REST 
call subclasses - a lower order call will be matched before a higher order call.
===

By default, calls inherit order 50, to make move one call earlier in the 
matching process, override #order with a lower number.

Thanks for the feedback, this is really helpful.

HTH,

Sven




[Pharo-dev] [pharo-project/pharo-core] 56d108: 40220

2014-09-12 Thread GitHub
  Branch: refs/heads/4.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: 56d1088926e2b3f5602ee74771eb1d5f00e5b987
  
https://github.com/pharo-project/pharo-core/commit/56d1088926e2b3f5602ee74771eb1d5f00e5b987
  Author: Jenkins Build Server bo...@pharo-project.org
  Date:   2014-09-12 (Fri, 12 Sep 2014)

  Changed paths:
M 
Refactoring-Critics.package/RBSentNotImplementedRule.class/instance/running/checkMethod_.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
scripts/script220.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
updates/update40220.st
M 
ScriptLoader40.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
A System-CachingTests.package/DoubleLinkedListTests.class/README.md
A System-CachingTests.package/DoubleLinkedListTests.class/definition.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testAddAfterLink.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testAddBeforeLink.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testAddFirst.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testAddLast.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testCollect.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testDo.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testEmpty.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testIncludes.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testOne.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testOneRemoveFirst.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testOneRemoveLast.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testReject.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testReverseDo.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testSelect.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testThree.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testThreeRemoveFirst.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testThreeRemoveLast.st
A 
System-CachingTests.package/DoubleLinkedListTests.class/instance/testing/testThreeRemoveLink.st
A System-CachingTests.package/LRUCacheTests.class/README.md
A System-CachingTests.package/LRUCacheTests.class/definition.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/accessing/newCache.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/test5kClasses.st
A System-CachingTests.package/LRUCacheTests.class/instance/testing/test6k.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testCustomWeight.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testEmpty.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testEnumeration.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testEviction.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testFactory.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testFactoryStyle.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testFibonacci.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testFixedAccess.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testOne.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testOneHit.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testOneHitTwice.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testPrimeFactors.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testRandomAccess.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testRemoveAll.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testRemoveOne.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testRemoveOneOfThree.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testTen.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testTenThreadSafe.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testThree.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testThreeHitSameOne.st
A 
System-CachingTests.package/LRUCacheTests.class/instance/testing/testTwo.st
A System-CachingTests.package/TTLCacheTests.class/README.md
A System-CachingTests.package/TTLCacheTests.class/definition.st
  

[Pharo-dev] [pharo-project/pharo-core]

2014-09-12 Thread GitHub
  Branch: refs/tags/40220
  Home:   https://github.com/pharo-project/pharo-core


[Pharo-dev] fosdem 2015

2014-09-12 Thread Santiago Bragagnolo
Hi people!, Will we have room in next FOSDEM?


Re: [Pharo-dev] Zinc-rest URL matching

2014-09-12 Thread Christophe Demarey

Le 12 sept. 2014 à 10:50, Santiago Bragagnolo a écrit :

 
 You may want to check this thread. 
 
 http://forum.world.st/ANN-Teapot-0-8-micro-web-framework-tp4774449.html
 
 Hope it solves your needs :) 


Thanks, nice framework. Interesting to know

smime.p7s
Description: S/MIME cryptographic signature


Re: [Pharo-dev] Zinc-rest URL matching

2014-09-12 Thread Christophe Demarey
Hi Sven,

Le 12 sept. 2014 à 11:59, Sven Van Caekenberghe a écrit :

 Hi Christophe,
 
 On 12 Sep 2014, at 10:28, Christophe Demarey christophe.dema...@inria.fr 
 wrote:
 
 Hi,
 
 I use Zinc-Rest and it works like a charm, really simple to quickly get 
 something working.
 I have a question about URL pattern matching that is used to dispatch 
 request to the right handler.
 I want to have following URLs:
 /foo/*
 /foo/latest
 I defined 2 handlers with following patterns:
 #('foo' '*')
 #('foo' 'latest')
 
 I was expecting that the more precise handler was chosen but it was the 
 generic handler (with '*'). Is there a way to do that?
 It is not blocking because I can use the same handler to manage both 
 patterns but I would prefer to have them separated as the semantic is not 
 the same.
 
 Regards,
 Christophe.
 
 My first answer would indeed also have been to handle both cases in one call 
 (I did similar things in my projects). But now that you mention it, I think 
 this can be fixed quite easily. Have a look at the following version:
 
 ===
 Name: Zinc-REST-SvenVanCaekenberghe.16
 Author: SvenVanCaekenberghe
 Time: 12 September 2014, 11:55:02.020483 am
 UUID: 6421d8be-c7c8-44fc-8958-121cc86ae93e
 Ancestors: Zinc-REST-SvenVanCaekenberghe.15
 
 ZnCallHierarchyRestUriSpace#match: now uses #order to sort auto matched 
 REST call subclasses - a lower order call will be matched before a higher 
 order call.
 ===
 
 By default, calls inherit order 50, to make move one call earlier in the 
 matching process, override #order with a lower number.

Indeed, it does the trick with only a few changes :)
I wonder if it would be a good idea to give a default lower priority (ex: 20) 
if the pattern ends with a '*'. It could be done in the order method. I think 
you will never had to override priority this way but it has a little CPU 
overhead.

Thanks for the quick feedback. It looks like functionality on-demand :)

Christophe

smime.p7s
Description: S/MIME cryptographic signature


Re: [Pharo-dev] Zinc-rest URL matching

2014-09-12 Thread Sven Van Caekenberghe

On 12 Sep 2014, at 12:23, Christophe Demarey christophe.dema...@inria.fr 
wrote:

 Hi Sven,
 
 Le 12 sept. 2014 à 11:59, Sven Van Caekenberghe a écrit :
 
 Hi Christophe,
 
 On 12 Sep 2014, at 10:28, Christophe Demarey christophe.dema...@inria.fr 
 wrote:
 
 Hi,
 
 I use Zinc-Rest and it works like a charm, really simple to quickly get 
 something working.
 I have a question about URL pattern matching that is used to dispatch 
 request to the right handler.
 I want to have following URLs:
 /foo/*
 /foo/latest
 I defined 2 handlers with following patterns:
 #('foo' '*')
 #('foo' 'latest')
 
 I was expecting that the more precise handler was chosen but it was the 
 generic handler (with '*'). Is there a way to do that?
 It is not blocking because I can use the same handler to manage both 
 patterns but I would prefer to have them separated as the semantic is not 
 the same.
 
 Regards,
 Christophe.
 
 My first answer would indeed also have been to handle both cases in one call 
 (I did similar things in my projects). But now that you mention it, I think 
 this can be fixed quite easily. Have a look at the following version:
 
 ===
 Name: Zinc-REST-SvenVanCaekenberghe.16
 Author: SvenVanCaekenberghe
 Time: 12 September 2014, 11:55:02.020483 am
 UUID: 6421d8be-c7c8-44fc-8958-121cc86ae93e
 Ancestors: Zinc-REST-SvenVanCaekenberghe.15
 
 ZnCallHierarchyRestUriSpace#match: now uses #order to sort auto matched 
 REST call subclasses - a lower order call will be matched before a higher 
 order call.
 ===
 
 By default, calls inherit order 50, to make move one call earlier in the 
 matching process, override #order with a lower number.
 
 Indeed, it does the trick with only a few changes :)
 I wonder if it would be a good idea to give a default lower priority (ex: 20) 
 if the pattern ends with a '*'. It could be done in the order method. I think 
 you will never had to override priority this way but it has a little CPU 
 overhead.

Hmm, I thought about other ways of sorting patterns, but they will all be quite 
complex. [ Also remember that from a design standpoint, #pattern is not 
external, only #match: is, as there could be other approaches to matching ]. 
The trick with #order is very simple and only has to be used when there is a 
actual conflict, which is quite seldom I think.

I can think of more conflicts than the one you can up with

/tasks
/tasks/*
/tasks/last
/tasks/*/items/*
/tasks/last/items/*
/tasks/*/items/last

What I mean is, it is not just the number of stars. [ More like the longest 
match ]. But if you would come up with something general enough I would be 
interested.

BTW, REST API design is quite hard, we have discussion about this subject here 
every week.

 Thanks for the quick feedback. It looks like functionality on-demand :)
 
 Christophe




Re: [Pharo-dev] fosdem 2015

2014-09-12 Thread Stephan Eggermont
Santiage wrote:
Hi people!, Will we have room in next FOSDEM? 

I will put out a proposal for a devroom, yes. That is no guarantee 
that we will get one, the amount of space is limited.

Stephan



Re: [Pharo-dev] fosdem 2015

2014-09-12 Thread Santiago Bragagnolo
Great, keep us updated :) If i can help, tell me.

2014-09-12 13:05 GMT+02:00 Stephan Eggermont step...@stack.nl:

 Santiage wrote:
 Hi people!, Will we have room in next FOSDEM?

 I will put out a proposal for a devroom, yes. That is no guarantee
 that we will get one, the amount of space is limited.

 Stephan




Re: [Pharo-dev] fosdem 2015

2014-09-12 Thread p...@highoctane.be
I am living close to the venue, tell me if I can help.

Phil


On Fri, Sep 12, 2014 at 1:05 PM, Stephan Eggermont step...@stack.nl wrote:

 Santiage wrote:
 Hi people!, Will we have room in next FOSDEM?

 I will put out a proposal for a devroom, yes. That is no guarantee
 that we will get one, the amount of space is limited.

 Stephan




[Pharo-dev] [pharo-project/pharo-core] b2889c: 40221

2014-09-12 Thread GitHub
  Branch: refs/heads/4.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: b2889c176180755954e866ceca6380fd90577271
  
https://github.com/pharo-project/pharo-core/commit/b2889c176180755954e866ceca6380fd90577271
  Author: Jenkins Build Server bo...@pharo-project.org
  Date:   2014-09-12 (Fri, 12 Sep 2014)

  Changed paths:
R 
AsmJit-Tests.package/AJx86AssemblerTests.class/instance/tests/testRegistersOf_.st
A 
Collections-Streams.package/LimitedWriteStream.class/instance/accessing/nextPutAll_.st
R Collections-Streams.package/LimitedWriteStream.class/instance/as yet 
unclassified/nextPutAll_.st
R Collections-Streams.package/LimitedWriteStream.class/instance/as yet 
unclassified/pastEndPut_.st
A 
Collections-Streams.package/LimitedWriteStream.class/instance/private/pastEndPut_.st
M 
Collections-Streams.package/LimitingLineStreamWrapper.class/class/examples/example1.st
M 
Collections-Streams.package/LimitingLineStreamWrapper.class/class/examples/example2.st
M 
Collections-Streams.package/MultiByteBinaryOrTextStream.class/instance/private 
basic/basicNextInto_.st
M 
Collections-Streams.package/MultiByteBinaryOrTextStream.class/instance/private 
basic/basicNext_into_.st
M 
Collections-Streams.package/MultiByteBinaryOrTextStream.class/instance/private 
basic/basicPosition.st
M 
Collections-Streams.package/MultiByteBinaryOrTextStream.class/instance/private 
basic/basicPosition_.st
M Collections-Streams.package/PositionableStream.class/instance/data 
get%2Fput/int16_.st
M Collections-Streams.package/PositionableStream.class/instance/data 
get%2Fput/int32_.st
M 
Collections-Streams.package/PositionableStream.class/instance/positioning/untilEndWithFork_displayingProgress_.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/binary.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/contents.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/isBinary.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/next.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/nextPut_.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/next_.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/next_into_startingAt_.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/readInto_startingAt_count_.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/text.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/accessing/upToEnd.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/asBinaryOrTextStream.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/ascii.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/binary.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/contents.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/isBinary.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/next.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/nextPut_.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/next_.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/next_into_startingAt_.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/padToEndWith_.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/readInto_startingAt_count_.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/reset.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/setFileTypeToObject.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/text.st
R Collections-Streams.package/RWBinaryOrTextStream.class/instance/as yet 
unclassified/upToEnd.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/converting/asBinaryOrTextStream.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/converting/ascii.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/positioning/reset.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/properties-setting/setFileTypeToObject.st
A 
Collections-Streams.package/RWBinaryOrTextStream.class/instance/public/padToEndWith_.st
A 
Collections-Streams.package/TextStream.class/instance/accessing/nextPutAll_.st
R Collections-Streams.package/TextStream.class/instance/as yet 
unclassified/nextPutAll_.st
R 

[Pharo-dev] [pharo-project/pharo-core]

2014-09-12 Thread GitHub
  Branch: refs/tags/40221
  Home:   https://github.com/pharo-project/pharo-core


[Pharo-dev] Which Character Encodings do you want/need in Pharo ?

2014-09-12 Thread Sven Van Caekenberghe
Hi,

ZnCharacterEncoder and its subclasses in the package 
Zinc-Character-Encoding-Core (a standard part of Pharo) have the following 
features:

- proper Unicode Character/String to/from byte(s) encoding/decoding
- calculation of encoding size per Character/String
- proper handling of holes in tables with exceptions (strict/lenient)
- properly backing up one character on a binary stream 
- simple, efficient, documented
- convenience API
- optimisations for some encodings

Together, they support the following encodings:

- utf-8
- utf-16 (big/little endian, bom detection)
- null
- iso-8859-1 (latin-1)
- iso-8859-2 (latin-2)
- mac-roman
- cp1250
- cp1252
- cp1253
- koi8r
- iso-8859-7
- iso-8859-15

The question is, what other encodings do you want/need ?

There is already a request to add CP1251. 

New byte encoders are easy to add, based on the official Unicode mappings that 
can be found here: http://unicode.org/Public/MAPPINGS (these are automagically 
parsed).

Please help us make Pharo more international friendly.

Sven





[Pharo-dev] [pharo-project/pharo-core]

2014-09-12 Thread GitHub
  Branch: refs/tags/40222
  Home:   https://github.com/pharo-project/pharo-core


[Pharo-dev] [pharo-project/pharo-core] ffde2a: 40222

2014-09-12 Thread GitHub
  Branch: refs/heads/4.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: ffde2ab569aa9227b81ea1ed2b180099aad86594
  
https://github.com/pharo-project/pharo-core/commit/ffde2ab569aa9227b81ea1ed2b180099aad86594
  Author: Jenkins Build Server bo...@pharo-project.org
  Date:   2014-09-12 (Fri, 12 Sep 2014)

  Changed paths:
M NewValueHolder.package/extension/Object/instance/asReactiveVariable.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
scripts/script222.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
updates/update40222.st
M 
ScriptLoader40.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
M 
Spec-Core.package/AbstractWidgetModel.class/instance/initialization/initialize.st
M Spec-Core.package/ButtonModel.class/instance/initialization/initialize.st
M 
Spec-Core.package/CheckBoxModel.class/instance/initialization/initialize.st
M 
Spec-Core.package/ComposableModel.class/instance/initialization/initialize.st
M 
Spec-Core.package/DialogWindowModel.class/instance/initialize/initialize.st
M Spec-Core.package/DiffModel.class/instance/initialize/initialize.st
M 
Spec-Core.package/DropListModel.class/instance/initialization/initialize.st
M 
Spec-Core.package/DynamicComposableModel.class/instance/initialization/initialize.st
M 
Spec-Core.package/IconListModel.class/instance/initialization/initialize.st
M Spec-Core.package/ImageModel.class/instance/initialization/initialize.st
M Spec-Core.package/LabelModel.class/instance/initialization/initialize.st
M Spec-Core.package/ListModel.class/instance/initialization/initialize.st
M Spec-Core.package/MenuGroupModel.class/instance/initialize/initialize.st
M Spec-Core.package/MenuItemModel.class/instance/initialize/initialize.st
M Spec-Core.package/MenuModel.class/instance/initialize/initialize.st
M Spec-Core.package/NewListModel.class/instance/initialize/initialize.st
M 
Spec-Core.package/OkCancelToolbar.class/instance/initialization/initialize.st
M Spec-Core.package/OkToolbar.class/instance/initialization/initialize.st
M 
Spec-Core.package/RadioButtonModel.class/instance/initialization/initialize.st
M Spec-Core.package/SliderModel.class/instance/initialization/initialize.st
M Spec-Core.package/TabManagerModel.class/instance/initialize/initialize.st
M Spec-Core.package/TabModel.class/instance/initialize/initialize.st
M 
Spec-Core.package/TextInputFieldModel.class/instance/initialization/initialize.st
M Spec-Core.package/TextModel.class/instance/initialization/initialize.st
M 
Spec-Core.package/TreeColumnModel.class/instance/initialization/initialize.st
M Spec-Core.package/TreeModel.class/instance/initialization/initialize.st
M Spec-Core.package/TreeNodeModel.class/instance/initialize/initialize.st
M Spec-Core.package/WindowModel.class/instance/initialization/initialize.st
M 
Spec-Debugger.package/SpecDebugActionButton.class/instance/initialization/initialize.st
M 
Spec-Debugger.package/SpecDebugger.class/instance/initialization/initialize.st
M 
Spec-Debugger.package/SpecDebuggerDynamicToolbar.class/instance/initialization/initialize.st
M 
Spec-Debugger.package/SpecDebuggerStack.class/instance/initialization/initialize.st
M 
Spec-Debugger.package/SpecPreDebugWindow.class/instance/initialization/initialize.st
M 
Spec-Examples.package/DynamicSpecExample.class/instance/initialization/initialize.st
M 
Spec-Inspector.package/EyeAbstractInspector.class/instance/initialization/initialize.st
M 
Spec-Inspector.package/InspectorNavigator.class/instance/initialization/initialize.st
M 
Spec-MorphicAdapters.package/MorphicWindowAdapter.class/instance/initialize/initialize.st
M 
Spec-PolyWidgets.package/DateModel.class/instance/initialization/initialize.st
M 
Spec-PolyWidgets.package/EditableList.class/instance/initialization/initialize.st
M 
Spec-PolyWidgets.package/InputWidget.class/instance/initialization/initialize.st
M 
Spec-PolyWidgets.package/MethodToolbar.class/instance/initialization/initialize.st
M 
Spec-PolyWidgets.package/PickListModel.class/instance/initialization/initialize.st
M 
Spec-PolyWidgets.package/SearchableTree.class/instance/initialization/initialize.st
M 
Spec-Tools.package/AbstractApiSetter.class/instance/initialization/initialize.st
M Spec-Tools.package/BlockEditor.class/instance/initialization/initialize.st
M Spec-Tools.package/ColorEditor.class/instance/initialization/initialize.st
M 
Spec-Tools.package/IntegerEditor.class/instance/initialization/initialize.st
M 
Spec-Tools.package/MessageBrowser.class/instance/initialization/initialize.st
M 
Spec-Tools.package/MessageBrowser.class/instance/initialization/initializeWidgets.st
M Spec-Tools.package/STEditor.class/instance/initialization/initialize.st
M 

Re: [Pharo-dev] Which Character Encodings do you want/need in Pharo ?

2014-09-12 Thread kilon alios
I am not in any urgent need as I rarely use (like almost never) my native
language in reading or writing  when it comes to anything related to
computers, apart from facebook friends. But I would like to see it added to
pharo , its Ελληνικά or as you know it Greek.

I assume the most popular encondings to have would be Chinese and Hindu ?

On Fri, Sep 12, 2014 at 4:10 PM, Sven Van Caekenberghe s...@stfx.eu wrote:

 Hi,

 ZnCharacterEncoder and its subclasses in the package
 Zinc-Character-Encoding-Core (a standard part of Pharo) have the following
 features:

 - proper Unicode Character/String to/from byte(s) encoding/decoding
 - calculation of encoding size per Character/String
 - proper handling of holes in tables with exceptions (strict/lenient)
 - properly backing up one character on a binary stream
 - simple, efficient, documented
 - convenience API
 - optimisations for some encodings

 Together, they support the following encodings:

 - utf-8
 - utf-16 (big/little endian, bom detection)
 - null
 - iso-8859-1 (latin-1)
 - iso-8859-2 (latin-2)
 - mac-roman
 - cp1250
 - cp1252
 - cp1253
 - koi8r
 - iso-8859-7
 - iso-8859-15

 The question is, what other encodings do you want/need ?

 There is already a request to add CP1251.

 New byte encoders are easy to add, based on the official Unicode mappings
 that can be found here: http://unicode.org/Public/MAPPINGS (these are
 automagically parsed).

 Please help us make Pharo more international friendly.

 Sven






Re: [Pharo-dev] Which Character Encodings do you want/need in Pharo ?

2014-09-12 Thread Sven Van Caekenberghe

On 12 Sep 2014, at 16:05, kilon alios kilon.al...@gmail.com wrote:

 I am not in any urgent need as I rarely use (like almost never) my native 
 language in reading or writing  when it comes to anything related to 
 computers, apart from facebook friends. But I would like to see it added to 
 pharo , its Ελληνικά or as you know it Greek.

So that would be ISO 8857-9 (http://en.wikipedia.org/wiki/ISO/IEC_8859-7 - 
http://unicode.org/Public/MAPPINGS/ISO8859/8859-7.TXT) then, right ? 

Is this nice to have or really necessary (as in used by everybody using the 
Greek language) ?

 I assume the most popular encondings to have would be Chinese and Hindu ?

I think this something that (native) speakers should help with ;-)

Remember we have full Unicode Character/String capable classes, as well as good 
UTF-8. Those cover all languages, in theory. 

The question comes down to which older encodings are still really 
used/necessary today.

 On Fri, Sep 12, 2014 at 4:10 PM, Sven Van Caekenberghe s...@stfx.eu wrote:
 Hi,
 
 ZnCharacterEncoder and its subclasses in the package 
 Zinc-Character-Encoding-Core (a standard part of Pharo) have the following 
 features:
 
 - proper Unicode Character/String to/from byte(s) encoding/decoding
 - calculation of encoding size per Character/String
 - proper handling of holes in tables with exceptions (strict/lenient)
 - properly backing up one character on a binary stream
 - simple, efficient, documented
 - convenience API
 - optimisations for some encodings
 
 Together, they support the following encodings:
 
 - utf-8
 - utf-16 (big/little endian, bom detection)
 - null
 - iso-8859-1 (latin-1)
 - iso-8859-2 (latin-2)
 - mac-roman
 - cp1250
 - cp1252
 - cp1253
 - koi8r
 - iso-8859-7
 - iso-8859-15
 
 The question is, what other encodings do you want/need ?
 
 There is already a request to add CP1251.
 
 New byte encoders are easy to add, based on the official Unicode mappings 
 that can be found here: http://unicode.org/Public/MAPPINGS (these are 
 automagically parsed).
 
 Please help us make Pharo more international friendly.
 
 Sven
 
 
 
 




Re: [Pharo-dev] Which Character Encodings do you want/need in Pharo ?

2014-09-12 Thread kilon alios
Ok this is strange the ISO 8857-7 is available with Chrome as an encoding ,
I tried it and it turns Greek to weird signs. Actually I tried also several
others available for Greek by Chrome and none works apart from the default
which is UTF-8 

Also you can ignore my request as I tried Pharo with True Type fonts with
Arial and it can display Greeks just fine. Well done Pharoers , once again
Pharo surprises me in a good way :)

On Fri, Sep 12, 2014 at 5:16 PM, Sven Van Caekenberghe s...@stfx.eu wrote:


 On 12 Sep 2014, at 16:05, kilon alios kilon.al...@gmail.com wrote:

  I am not in any urgent need as I rarely use (like almost never) my
 native language in reading or writing  when it comes to anything related to
 computers, apart from facebook friends. But I would like to see it added to
 pharo , its Ελληνικά or as you know it Greek.

 So that would be ISO 8857-9 (http://en.wikipedia.org/wiki/ISO/IEC_8859-7
 - http://unicode.org/Public/MAPPINGS/ISO8859/8859-7.TXT) then, right ?

 Is this nice to have or really necessary (as in used by everybody using
 the Greek language) ?

  I assume the most popular encondings to have would be Chinese and Hindu ?

 I think this something that (native) speakers should help with ;-)

 Remember we have full Unicode Character/String capable classes, as well as
 good UTF-8. Those cover all languages, in theory.

 The question comes down to which older encodings are still really
 used/necessary today.

  On Fri, Sep 12, 2014 at 4:10 PM, Sven Van Caekenberghe s...@stfx.eu
 wrote:
  Hi,
 
  ZnCharacterEncoder and its subclasses in the package
 Zinc-Character-Encoding-Core (a standard part of Pharo) have the following
 features:
 
  - proper Unicode Character/String to/from byte(s) encoding/decoding
  - calculation of encoding size per Character/String
  - proper handling of holes in tables with exceptions (strict/lenient)
  - properly backing up one character on a binary stream
  - simple, efficient, documented
  - convenience API
  - optimisations for some encodings
 
  Together, they support the following encodings:
 
  - utf-8
  - utf-16 (big/little endian, bom detection)
  - null
  - iso-8859-1 (latin-1)
  - iso-8859-2 (latin-2)
  - mac-roman
  - cp1250
  - cp1252
  - cp1253
  - koi8r
  - iso-8859-7
  - iso-8859-15
 
  The question is, what other encodings do you want/need ?
 
  There is already a request to add CP1251.
 
  New byte encoders are easy to add, based on the official Unicode
 mappings that can be found here: http://unicode.org/Public/MAPPINGS
 (these are automagically parsed).
 
  Please help us make Pharo more international friendly.
 
  Sven
 
 
 
 





[Pharo-dev] [pharo-project/pharo-core]

2014-09-12 Thread GitHub
  Branch: refs/tags/40223
  Home:   https://github.com/pharo-project/pharo-core


[Pharo-dev] [pharo-project/pharo-core] 29f280: 40223

2014-09-12 Thread GitHub
  Branch: refs/heads/4.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: 29f280e791381e9a5027e10a7d80a921e199fba4
  
https://github.com/pharo-project/pharo-core/commit/29f280e791381e9a5027e10a7d80a921e199fba4
  Author: Jenkins Build Server bo...@pharo-project.org
  Date:   2014-09-12 (Fri, 12 Sep 2014)

  Changed paths:
M ClassOrganizer-Core.package/ClassOrganization.class/instance/backward 
compatibility/categoryOfElement_.st
A ClassOrganizer-Core.package/ClassOrganization.class/instance/backward 
compatibility/categoryOfElement_ifAbsent_.st
M ClassOrganizer-Core.package/ClassOrganization.class/instance/backward 
compatibility/classify_under_suppressIfDefault_.st
M ClassOrganizer-Tests.package/ClassOrganizationTest.class/definition.st
M 
ClassOrganizer-Tests.package/ClassOrganizationTest.class/instance/running/setUp.st
A 
ClassOrganizer-Tests.package/ClassOrganizationTest.class/instance/running/tearDown.st
M 
Refactoring-Environment.package/RBBrowserEnvironment.class/instance/accessing/whichProtocolIncludes_in_.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
scripts/script223.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
updates/update40223.st
M 
ScriptLoader40.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st

  Log Message:
  ---
  40223
13924 Adding a new method to a trait triggers a MethodRecategorized 
announcement for each user
https://pharo.fogbugz.com/f/cases/13924

http://files.pharo.org/image/40/40223.zip




[Pharo-dev] GToolkit

2014-09-12 Thread p...@highoctane.be
I've been working in a data acquisition scenario today and GToolkit proved
to be of immense help.

Working in the live application, looking around for data (including file
contents), and inspecting it all + live debugging is really a sweet
experience.

With CommandShell I may not have to leave the environment...


Phil


Re: [Pharo-dev] GToolkit

2014-09-12 Thread kilon alios
maybe make a video and upload to youtube of your workflow , I am sure I
will learn something from it :)

On Fri, Sep 12, 2014 at 7:14 PM, p...@highoctane.be p...@highoctane.be
wrote:

 I've been working in a data acquisition scenario today and GToolkit proved
 to be of immense help.

 Working in the live application, looking around for data (including file
 contents), and inspecting it all + live debugging is really a sweet
 experience.

 With CommandShell I may not have to leave the environment...


 Phil



Re: [Pharo-dev] Roassal vs Roassal 2

2014-09-12 Thread kilon alios
yes I am using Roassal 2 now , I also care a lot about the performance
cause of my project Hyperion which is and going to be a GUI builder and
vector editor , I want to make GUIs with Roassal so performance is an
issue. I am studying the examples and I will return with questions. The SVG
import and export is certainly very useful for my needs.

On Fri, Sep 12, 2014 at 2:25 AM, Alejandro Infante 
alejandroinfant...@gmail.com wrote:

 I also advice you to use Roassal2, it is much faster and you can do more
 fun stuff. About documentation there are also the examples, with
 right-click you can see the code needed to create each example.

 Cheers,
 Alejandro

 On Sep 10, 2014, at 8:05 AM, kilon alios kilon.al...@gmail.com wrote:

 thank you both for your help, I have installed Roassal 2 in Pharo 3 and it
 works fine judging from examples so now I will study the doc from the
 Peter's link and the examples Phil referred to.

 On Wed, Sep 10, 2014 at 1:37 PM, Peter Uhnák i.uh...@gmail.com wrote:

 A new book is being written by Alexandre. You can find it at
 http://agilevisualization.com/
 Also there is about hundred examples in the Roassal2 repository. (Open
 Roassal examples browser from world menu.)

 On Wed, Sep 10, 2014 at 12:14 PM, p...@highoctane.be p...@highoctane.be
 wrote:

 Prefixing with RT (Roassal Two) instead of RO (ROassal) will get you
 started.

 Phil



 On Wed, Sep 10, 2014 at 12:06 PM, kilon alios kilon.al...@gmail.com
 wrote:

 I see in the roassal.pdf that it refers to roassal but in smalltalkhub
 there is also Roassal 2. Which of the two I should be using and whats their
 diffirence ? Will the existing roassal.pdf documentation work with Roassal
 2 ?








Re: [Pharo-dev] Roassal vs Roassal 2

2014-09-12 Thread Alexandre Bergel
Hi!

Currently Roassal2 _does not have any optimization_, which does not imply 
Roassal2 is slow. You can easily have 500 000 elements on screen without having 
much lag.

In the future, we should be able to plug QuadTree in Roassal2. But currently, 
nothing has been done in that respect (except keeping the core of Roassal clean 
and lean :-).

Cheers,
Alexandre
-- 
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.



On Sep 12, 2014, at 1:32 PM, kilon alios kilon.al...@gmail.com wrote:

 yes I am using Roassal 2 now , I also care a lot about the performance cause 
 of my project Hyperion which is and going to be a GUI builder and vector 
 editor , I want to make GUIs with Roassal so performance is an issue. I am 
 studying the examples and I will return with questions. The SVG import and 
 export is certainly very useful for my needs. 
 
 On Fri, Sep 12, 2014 at 2:25 AM, Alejandro Infante 
 alejandroinfant...@gmail.com wrote:
 I also advice you to use Roassal2, it is much faster and you can do more fun 
 stuff. About documentation there are also the examples, with right-click you 
 can see the code needed to create each example.
 
 Cheers,
 Alejandro
 
 On Sep 10, 2014, at 8:05 AM, kilon alios kilon.al...@gmail.com wrote:
 
 thank you both for your help, I have installed Roassal 2 in Pharo 3 and it 
 works fine judging from examples so now I will study the doc from the 
 Peter's link and the examples Phil referred to. 
 
 On Wed, Sep 10, 2014 at 1:37 PM, Peter Uhnák i.uh...@gmail.com wrote:
 A new book is being written by Alexandre. You can find it at 
 http://agilevisualization.com/
 Also there is about hundred examples in the Roassal2 repository. (Open 
 Roassal examples browser from world menu.)
 
 On Wed, Sep 10, 2014 at 12:14 PM, p...@highoctane.be p...@highoctane.be 
 wrote:
 Prefixing with RT (Roassal Two) instead of RO (ROassal) will get you started.
 
 Phil
  
 
 
 On Wed, Sep 10, 2014 at 12:06 PM, kilon alios kilon.al...@gmail.com wrote:
 I see in the roassal.pdf that it refers to roassal but in smalltalkhub there 
 is also Roassal 2. Which of the two I should be using and whats their 
 diffirence ? Will the existing roassal.pdf documentation work with Roassal 2 
 ? 
 
 
 
 
 



Re: [Pharo-dev] Roassal vs Roassal 2

2014-09-12 Thread kilon alios
wow 500.000 is a huge number for my needs. How about animation ? I assume
its similar situation there too. Well then I have little reason not to use
it. Hopefully I will make a few contributions too :)

When I first used Roassal I was sceptical on its design , but now that I
see more and more people using it and more documentation about it I see its
going to a direction I wanted to go. I also see that Roassal works well
with Morphic and Spec which is very good too for my needs. Great job !

Should ask questions here or in stackoverflow ?

On Fri, Sep 12, 2014 at 8:00 PM, Alexandre Bergel alexandre.ber...@me.com
wrote:

 Hi!

 Currently Roassal2 _does not have any optimization_, which does not imply
 Roassal2 is slow. You can easily have 500 000 elements on screen without
 having much lag.

 In the future, we should be able to plug QuadTree in Roassal2. But
 currently, nothing has been done in that respect (except keeping the core
 of Roassal clean and lean :-).

 Cheers,
 Alexandre
 --
 _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
 Alexandre Bergel  http://www.bergel.eu
 ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.



 On Sep 12, 2014, at 1:32 PM, kilon alios kilon.al...@gmail.com wrote:

 yes I am using Roassal 2 now , I also care a lot about the performance
 cause of my project Hyperion which is and going to be a GUI builder and
 vector editor , I want to make GUIs with Roassal so performance is an
 issue. I am studying the examples and I will return with questions. The SVG
 import and export is certainly very useful for my needs.

 On Fri, Sep 12, 2014 at 2:25 AM, Alejandro Infante 
 alejandroinfant...@gmail.com wrote:

 I also advice you to use Roassal2, it is much faster and you can do more
 fun stuff. About documentation there are also the examples, with
 right-click you can see the code needed to create each example.

 Cheers,
 Alejandro

 On Sep 10, 2014, at 8:05 AM, kilon alios kilon.al...@gmail.com wrote:

 thank you both for your help, I have installed Roassal 2 in Pharo 3 and
 it works fine judging from examples so now I will study the doc from the
 Peter's link and the examples Phil referred to.

 On Wed, Sep 10, 2014 at 1:37 PM, Peter Uhnák i.uh...@gmail.com wrote:

 A new book is being written by Alexandre. You can find it at
 http://agilevisualization.com/
 Also there is about hundred examples in the Roassal2 repository. (Open
 Roassal examples browser from world menu.)

 On Wed, Sep 10, 2014 at 12:14 PM, p...@highoctane.be p...@highoctane.be
  wrote:

 Prefixing with RT (Roassal Two) instead of RO (ROassal) will get you
 started.

 Phil



 On Wed, Sep 10, 2014 at 12:06 PM, kilon alios kilon.al...@gmail.com
 wrote:

 I see in the roassal.pdf that it refers to roassal but in smalltalkhub
 there is also Roassal 2. Which of the two I should be using and whats 
 their
 diffirence ? Will the existing roassal.pdf documentation work with Roassal
 2 ?










Re: [Pharo-dev] GToolkit

2014-09-12 Thread Andrei Chis
On Fri, Sep 12, 2014 at 6:29 PM, kilon alios kilon.al...@gmail.com wrote:

 maybe make a video and upload to youtube of your workflow , I am sure I
 will learn something from it :)


+1




 On Fri, Sep 12, 2014 at 7:14 PM, p...@highoctane.be p...@highoctane.be
 wrote:

 I've been working in a data acquisition scenario today and GToolkit
 proved to be of immense help.

 Working in the live application, looking around for data (including file
 contents), and inspecting it all + live debugging is really a sweet
 experience.

 With CommandShell I may not have to leave the environment...


 Phil





[Pharo-dev] [pharo-project/pharo-core] c58635: 40224

2014-09-12 Thread GitHub
  Branch: refs/heads/4.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: c58635333b230d32651bc1db0ec6db10b4984073
  
https://github.com/pharo-project/pharo-core/commit/c58635333b230d32651bc1db0ec6db10b4984073
  Author: Jenkins Build Server bo...@pharo-project.org
  Date:   2014-09-12 (Fri, 12 Sep 2014)

  Changed paths:
R DebuggerFilters.package/FilterTest.class/README.md
R DebuggerFilters.package/FilterTest.class/definition.st
R DebuggerFilters.package/FilterTest.class/instance/running/setUp.st
R DebuggerFilters.package/FilterTest.class/instance/tests/testBlockFilter.st
R 
DebuggerFilters.package/FilterTest.class/instance/tests/testBooleanFilter.st
R 
DebuggerFilters.package/FilterTest.class/instance/tests/testKernelClassesFilter.st
R 
DebuggerFilters.package/FilterTest.class/instance/tests/testSelectorFilter.st
A DebuggerTests.package/FilterTest.class/README.md
A DebuggerTests.package/FilterTest.class/definition.st
A DebuggerTests.package/FilterTest.class/instance/running/setUp.st
A DebuggerTests.package/FilterTest.class/instance/tests/testBlockFilter.st
A DebuggerTests.package/FilterTest.class/instance/tests/testBooleanFilter.st
A 
DebuggerTests.package/FilterTest.class/instance/tests/testKernelClassesFilter.st
A 
DebuggerTests.package/FilterTest.class/instance/tests/testSelectorFilter.st
M Ring-Core-Kernel.package/RGBehaviorDefinition.class/instance/accessing 
class hierarchy/allSuperclassesDo_.st
M 
Ring-Core-Kernel.package/RGBehaviorDefinition.class/instance/accessing/superclass_.st
M Ring-Core-Kernel.package/RGCommentDefinition.class/instance/type of 
comments/fromActiveToPassive.st
M Ring-Core-Kernel.package/RGElementDefinition.class/class/parsing 
stamp/basicParseAuthorAliasFrom_.st
M Ring-Core-Kernel.package/RGElementDefinition.class/class/parsing 
stamp/parseTimestampFrom_default_.st
M 
Ring-Core-Kernel.package/RGMethodDefinition.class/instance/conversion/asStringOrText.st
M Ring-Core-Kernel.package/RGMethodDefinition.class/instance/type of 
methods/fromActiveToPassive.st
R Ring-Core-Kernel.package/RGObject.class/instance/testing types/isClass.st
M 
Ring-Core-Kernel.package/extension/Class/instance/asRingDefinitionWithMethods_withSuperclasses_withSubclasses_withPackageKeys_in_.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
scripts/script224.st
A ScriptLoader40.package/ScriptLoader.class/instance/pharo - 
updates/update40224.st
M 
ScriptLoader40.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
M Spec-Layout.package/SpecLayout.class/instance/converting/asArray.st
M 
System-Announcements.package/MethodModified.class/instance/accessing/newMethod_.st

  Log Message:
  ---
  40224
14000 FilterTest needs to be moved to a Debugger test package
https://pharo.fogbugz.com/f/cases/14000

14004 SpecLayoutasArray(result is shadowed)
https://pharo.fogbugz.com/f/cases/14004

14001 MethodModifiednewMethod: (newMethod is Undeclared) 
https://pharo.fogbugz.com/f/cases/14001

14010 Small code critics clean of Ring
https://pharo.fogbugz.com/f/cases/14010

http://files.pharo.org/image/40/40224.zip




[Pharo-dev] [pharo-project/pharo-core]

2014-09-12 Thread GitHub
  Branch: refs/tags/40224
  Home:   https://github.com/pharo-project/pharo-core


Re: [Pharo-dev] How production ready is Pharo on SQLServer?

2014-09-12 Thread Esteban A. Maringolo
2014-09-11 17:48 GMT-03:00 Sebastian Sastre sebast...@flowingconcept.com:
 Hi guys,

 there is a project that needs to connect and extend a system using SQLServer
 and Pharo is being considered for the backend.

 Just checking, how ready are we for a production-ready backend using Pharo
 on SQLServer?

(absent)

 and how do we connect to it?

DBXTalk, probably, but really can't tell.

Database connectivity, other than PostgreSQL seems to be rather
infrequent, if used at all.


Esteban A. Maringolo



Re: [Pharo-dev] Which Character Encodings do you want/need in Pharo ?

2014-09-12 Thread stepharo


Sven thank you.
I love your code and spirit!
We should clone you.

Stef

Hi,

ZnCharacterEncoder and its subclasses in the package 
Zinc-Character-Encoding-Core (a standard part of Pharo) have the following 
features:

- proper Unicode Character/String to/from byte(s) encoding/decoding
- calculation of encoding size per Character/String
- proper handling of holes in tables with exceptions (strict/lenient)
- properly backing up one character on a binary stream
- simple, efficient, documented
- convenience API
- optimisations for some encodings

Together, they support the following encodings:

- utf-8
- utf-16 (big/little endian, bom detection)
- null
- iso-8859-1 (latin-1)
- iso-8859-2 (latin-2)
- mac-roman
- cp1250
- cp1252
- cp1253
- koi8r
- iso-8859-7
- iso-8859-15

The question is, what other encodings do you want/need ?

There is already a request to add CP1251.

New byte encoders are easy to add, based on the official Unicode mappings that 
can be found here: http://unicode.org/Public/MAPPINGS (these are automagically 
parsed).

Please help us make Pharo more international friendly.

Sven









Re: [Pharo-dev] Which Character Encodings do you want/need in Pharo ?

2014-09-12 Thread stepharo


Ok this is strange the ISO 8857-7 is available with Chrome as an 
encoding , I tried it and it turns Greek to weird signs. Actually I 
tried also several others available for Greek by Chrome and none works 
apart from the default which is UTF-8 


Also you can ignore my request as I tried Pharo with True Type fonts 
with Arial and it can display Greeks just fine. Well done Pharoers , 
once again Pharo surprises me in a good way :)

Us too. :)





[Pharo-dev] Thanks :)

2014-09-12 Thread stepharo
Every time we improve the system with a little change, the system gets 
better. And in Pharo we do it daily. Thank you all for all your changes 
and enhancements. **You** make Pharo cool.


http://pharoweekly.wordpress.com/2014/09/12/there-is-no-such-thing-as-an-unworthy-change/



[Pharo-dev] Starting with Roassal 2

2014-09-12 Thread kilon alios
Ok here comes the first question

how I change the background color of RTView ?

also

when I do this

v := RTView new.
shape := RTEllipse new size: 20; color: Color red. shape := shape + RTLabel.
es := shape elementOn:'hello'. v add: es.
line := RTDirectedLine new pointsFrom: 20@20 To: 30@30.
es2 := line element.v add: es2.
es @ RTDraggable.
v @ RTDraggableView .
v open.

I am getting an error

MNU Array  element

why ?


Re: [Pharo-dev] How production ready is Pharo on SQLServer?

2014-09-12 Thread Chris Cunningham
DBXTalk is probably right.  If it doesn't work, the old ODBC package will
work - I have tried that later one (not against SQLServer, but it's just
ODBC, so will work).

-cbc

On Fri, Sep 12, 2014 at 12:37 PM, Esteban A. Maringolo emaring...@gmail.com
 wrote:

 2014-09-11 17:48 GMT-03:00 Sebastian Sastre sebast...@flowingconcept.com
 :
  Hi guys,
 
  there is a project that needs to connect and extend a system using
 SQLServer
  and Pharo is being considered for the backend.
 
  Just checking, how ready are we for a production-ready backend using
 Pharo
  on SQLServer?

 (absent)

  and how do we connect to it?

 DBXTalk, probably, but really can't tell.

 Database connectivity, other than PostgreSQL seems to be rather
 infrequent, if used at all.


 Esteban A. Maringolo




Re: [Pharo-dev] Which Character Encodings do you want/need in Pharo ?

2014-09-12 Thread Sven Van Caekenberghe
Kilon,

On 12 Sep 2014, at 16:51, kilon alios kilon.al...@gmail.com wrote:

 Ok this is strange the ISO 8857-7 is available with Chrome as an encoding , I 
 tried it and it turns Greek to weird signs. Actually I tried also several 
 others available for Greek by Chrome and none works apart from the default 
 which is UTF-8 

You misunderstand how this works, let me try to explain using Pharo ;-)

When a website serves a page containing non-ascii content, like ελληνικά, it 
needs to convert from characters to bytes using an encoding. This is normally 
done by adding a parameter to the content-type of the page being served. Modern 
servers default to utf-8.

This is how you start your own HTTP server in Pharo:

(ZnServer defaultOn: 1701)
  onRequestRespond: [ :req |
ZnResponse ok: (ZnEntity with: 'Do you speak ελληνικά ?' type: ZnMimeType 
textPlain) ];
  start.

It will respond with the same text to any request. Try browsing 
http://localhost:1701

In code, you can do it like this:

ZnClient new get: ZnServer default localUrl.

Here is how you check the content-type being used:

(ZnClient new get: ZnServer default localUrl; response) contentType.

You will see that it is text/plain;charset=utf-8 which is the default used by 
Zinc when serving textual content. Asking/forcing your browser to interpret 
these bytes using a different encoding is wrong, since the data was not encoded 
as such.

But the server could also be using a Greek specific byte encoding, like this:

(ZnServer defaultOn: 1701)
  onRequestRespond: [ :req |
ZnResponse ok: (ZnEntity 
  with: 'Do you speak ελληνικά ?' 
  type: (ZnMimeType textPlain charSet: 'iso-8859-7')) ];
  start.

Now the page is served differently and browsers/clients know what to do, they 
will switch their encoding accordingly. Explicitly switching to utf-8 will now 
fail, as the content is *not* utf-8 encoded.

So why is the option there in the browser ?

Because sometimes, the server is lazy (and technically, wrong) by not 
explicitly setting the charset/encoding. That leaves the browser/client with a 
problem of course. For this there is a default, often utf-8, sometimes ascii, ..

Zinc uses the null encoder as default (ZnNullEncoder) when the server fails to 
set one, you can override this default as follows:

ZnDefaultCharacterEncoder 
  value: ZnUTF8Encoder new
  during: [ ZnClient new get: ZnServer default localUrl ].

ZnDefaultCharacterEncoder 
  value: (ZnCharacterEncoder newForEncoding: 'iso-8859-7')
  during: [ ZnClient new get: ZnServer default localUrl ].

Note however that Zinc will always follow the encoding set by the response 
(i.e. you cannot force another one, only use one if the encoding is missing).

HTH,

Sven

PS: If you are on Mac OS X or Linux, you can try using curl as a client. 
ZnClient can return a command line that you can copy/paste into a terminal:

ZnClient new get: ZnServer default localUrl; curl.

$ curl http://localhost:1701/ -HAccept:*/* -HUser-Agent:Zinc HTTP Components 
1.0 -HHost:localhost:1701

Do you speak ελληνικά ?

By add the -D - option the incoming HTTP headers will be dumped

$ curl -D - http://localhost:1701/ -HAccept:*/* -HUser-Agent:Zinc HTTP 
Components 1.0 -HHost:localhost:1701

HTTP/1.1 200 OK
Content-Type: text/plain;charset=utf-8
Content-Length: 31
Date: Fri, 12 Sep 2014 20:15:53 GMT
Server: Zinc HTTP Components 1.0

Do you speak ελληνικά ?

 Also you can ignore my request as I tried Pharo with True Type fonts with 
 Arial and it can display Greeks just fine. Well done Pharoers , once again 
 Pharo surprises me in a good way :) 
 
 On Fri, Sep 12, 2014 at 5:16 PM, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 On 12 Sep 2014, at 16:05, kilon alios kilon.al...@gmail.com wrote:
 
  I am not in any urgent need as I rarely use (like almost never) my native 
  language in reading or writing  when it comes to anything related to 
  computers, apart from facebook friends. But I would like to see it added to 
  pharo , its Ελληνικά or as you know it Greek.
 
 So that would be ISO 8857-9 (http://en.wikipedia.org/wiki/ISO/IEC_8859-7 - 
 http://unicode.org/Public/MAPPINGS/ISO8859/8859-7.TXT) then, right ?
 
 Is this nice to have or really necessary (as in used by everybody using the 
 Greek language) ?
 
  I assume the most popular encondings to have would be Chinese and Hindu ?
 
 I think this something that (native) speakers should help with ;-)
 
 Remember we have full Unicode Character/String capable classes, as well as 
 good UTF-8. Those cover all languages, in theory.
 
 The question comes down to which older encodings are still really 
 used/necessary today.
 
  On Fri, Sep 12, 2014 at 4:10 PM, Sven Van Caekenberghe s...@stfx.eu wrote:
  Hi,
 
  ZnCharacterEncoder and its subclasses in the package 
  Zinc-Character-Encoding-Core (a standard part of Pharo) have the following 
  features:
 
  - proper Unicode Character/String to/from byte(s) encoding/decoding
  - 

Re: [Pharo-dev] Which Character Encodings do you want/need in Pharo ?

2014-09-12 Thread Sven Van Caekenberghe

On 12 Sep 2014, at 21:43, stepharo steph...@free.fr wrote:

 
 Sven thank you.
 I love your code and spirit!
 We should clone you.

Thanks, but Pharo is a group effort, we all contribute in our area of expertise.

I am especially happy that we have some new people that recently became active.

 Stef
 Hi,
 
 ZnCharacterEncoder and its subclasses in the package 
 Zinc-Character-Encoding-Core (a standard part of Pharo) have the following 
 features:
 
 - proper Unicode Character/String to/from byte(s) encoding/decoding
 - calculation of encoding size per Character/String
 - proper handling of holes in tables with exceptions (strict/lenient)
 - properly backing up one character on a binary stream
 - simple, efficient, documented
 - convenience API
 - optimisations for some encodings
 
 Together, they support the following encodings:
 
 - utf-8
 - utf-16 (big/little endian, bom detection)
 - null
 - iso-8859-1 (latin-1)
 - iso-8859-2 (latin-2)
 - mac-roman
 - cp1250
 - cp1252
 - cp1253
 - koi8r
 - iso-8859-7
 - iso-8859-15
 
 The question is, what other encodings do you want/need ?
 
 There is already a request to add CP1251.
 
 New byte encoders are easy to add, based on the official Unicode mappings 
 that can be found here: http://unicode.org/Public/MAPPINGS (these are 
 automagically parsed).
 
 Please help us make Pharo more international friendly.
 
 Sven
 
 
 
 
 
 




Re: [Pharo-dev] How production ready is Pharo on SQLServer?

2014-09-12 Thread Sebastian Sastre
ok, I'll try dbx and think of odbc as plan b

from iPad

 On 12/09/2014, at 17:14, Chris Cunningham cunningham...@gmail.com wrote:
 
 DBXTalk is probably right.  If it doesn't work, the old ODBC package will 
 work - I have tried that later one (not against SQLServer, but it's just 
 ODBC, so will work).
 
 -cbc
 
 On Fri, Sep 12, 2014 at 12:37 PM, Esteban A. Maringolo 
 emaring...@gmail.com wrote:
 2014-09-11 17:48 GMT-03:00 Sebastian Sastre sebast...@flowingconcept.com:
  Hi guys,
 
  there is a project that needs to connect and extend a system using 
  SQLServer
  and Pharo is being considered for the backend.
 
  Just checking, how ready are we for a production-ready backend using Pharo
  on SQLServer?
 
 (absent)
 
  and how do we connect to it?
 
 DBXTalk, probably, but really can't tell.
 
 Database connectivity, other than PostgreSQL seems to be rather
 infrequent, if used at all.
 
 
 Esteban A. Maringolo
 


Re: [Pharo-dev] Thanks :)

2014-09-12 Thread Sven Van Caekenberghe

On 12 Sep 2014, at 21:51, stepharo steph...@free.fr wrote:

 Every time we improve the system with a little change, the system gets 
 better. And in Pharo we do it daily. Thank you all for all your changes and 
 enhancements. **You** make Pharo cool.
 
 http://pharoweekly.wordpress.com/2014/09/12/there-is-no-such-thing-as-an-unworthy-change/

+ 10




Re: [Pharo-dev] Which Character Encodings do you want/need in Pharo ?

2014-09-12 Thread kilon alios
I see thank you very much for the detailed explanation. I suspected it was
working a bit like you described but now I know the juicy details :)

Maybe you should add that text to an Encoding chapter in Pharo For The
Enterprise so its widely available for people like me that are not familiar
with Encodings.

On Fri, Sep 12, 2014 at 11:18 PM, Sven Van Caekenberghe s...@stfx.eu
wrote:

 Kilon,

 On 12 Sep 2014, at 16:51, kilon alios kilon.al...@gmail.com wrote:

  Ok this is strange the ISO 8857-7 is available with Chrome as an
 encoding , I tried it and it turns Greek to weird signs. Actually I tried
 also several others available for Greek by Chrome and none works apart from
 the default which is UTF-8 

 You misunderstand how this works, let me try to explain using Pharo ;-)

 When a website serves a page containing non-ascii content, like ελληνικά,
 it needs to convert from characters to bytes using an encoding. This is
 normally done by adding a parameter to the content-type of the page being
 served. Modern servers default to utf-8.

 This is how you start your own HTTP server in Pharo:

 (ZnServer defaultOn: 1701)
   onRequestRespond: [ :req |
 ZnResponse ok: (ZnEntity with: 'Do you speak ελληνικά ?' type:
 ZnMimeType textPlain) ];
   start.

 It will respond with the same text to any request. Try browsing
 http://localhost:1701

 In code, you can do it like this:

 ZnClient new get: ZnServer default localUrl.

 Here is how you check the content-type being used:

 (ZnClient new get: ZnServer default localUrl; response) contentType.

 You will see that it is text/plain;charset=utf-8 which is the default used
 by Zinc when serving textual content. Asking/forcing your browser to
 interpret these bytes using a different encoding is wrong, since the data
 was not encoded as such.

 But the server could also be using a Greek specific byte encoding, like
 this:

 (ZnServer defaultOn: 1701)
   onRequestRespond: [ :req |
 ZnResponse ok: (ZnEntity
   with: 'Do you speak ελληνικά ?'
   type: (ZnMimeType textPlain charSet: 'iso-8859-7'))
 ];
   start.

 Now the page is served differently and browsers/clients know what to do,
 they will switch their encoding accordingly. Explicitly switching to utf-8
 will now fail, as the content is *not* utf-8 encoded.

 So why is the option there in the browser ?

 Because sometimes, the server is lazy (and technically, wrong) by not
 explicitly setting the charset/encoding. That leaves the browser/client
 with a problem of course. For this there is a default, often utf-8,
 sometimes ascii, ..

 Zinc uses the null encoder as default (ZnNullEncoder) when the server
 fails to set one, you can override this default as follows:

 ZnDefaultCharacterEncoder
   value: ZnUTF8Encoder new
   during: [ ZnClient new get: ZnServer default localUrl ].

 ZnDefaultCharacterEncoder
   value: (ZnCharacterEncoder newForEncoding: 'iso-8859-7')
   during: [ ZnClient new get: ZnServer default localUrl ].

 Note however that Zinc will always follow the encoding set by the response
 (i.e. you cannot force another one, only use one if the encoding is
 missing).

 HTH,

 Sven

 PS: If you are on Mac OS X or Linux, you can try using curl as a client.
 ZnClient can return a command line that you can copy/paste into a terminal:

 ZnClient new get: ZnServer default localUrl; curl.

 $ curl http://localhost:1701/ -HAccept:*/* -HUser-Agent:Zinc HTTP
 Components 1.0 -HHost:localhost:1701

 Do you speak ελληνικά ?

 By add the -D - option the incoming HTTP headers will be dumped

 $ curl -D - http://localhost:1701/ -HAccept:*/* -HUser-Agent:Zinc HTTP
 Components 1.0 -HHost:localhost:1701

 HTTP/1.1 200 OK
 Content-Type: text/plain;charset=utf-8
 Content-Length: 31
 Date: Fri, 12 Sep 2014 20:15:53 GMT
 Server: Zinc HTTP Components 1.0

 Do you speak ελληνικά ?

  Also you can ignore my request as I tried Pharo with True Type fonts
 with Arial and it can display Greeks just fine. Well done Pharoers , once
 again Pharo surprises me in a good way :)
 
  On Fri, Sep 12, 2014 at 5:16 PM, Sven Van Caekenberghe s...@stfx.eu
 wrote:
 
  On 12 Sep 2014, at 16:05, kilon alios kilon.al...@gmail.com wrote:
 
   I am not in any urgent need as I rarely use (like almost never) my
 native language in reading or writing  when it comes to anything related to
 computers, apart from facebook friends. But I would like to see it added to
 pharo , its Ελληνικά or as you know it Greek.
 
  So that would be ISO 8857-9 (http://en.wikipedia.org/wiki/ISO/IEC_8859-7
 - http://unicode.org/Public/MAPPINGS/ISO8859/8859-7.TXT) then, right ?
 
  Is this nice to have or really necessary (as in used by everybody using
 the Greek language) ?
 
   I assume the most popular encondings to have would be Chinese and
 Hindu ?
 
  I think this something that (native) speakers should help with ;-)
 
  Remember we have full Unicode Character/String capable classes, as well
 as good UTF-8. Those cover all 

Re: [Pharo-dev] Thanks :)

2014-09-12 Thread Tudor Girba
+1

Doru

On Fri, Sep 12, 2014 at 10:24 PM, Sven Van Caekenberghe s...@stfx.eu
wrote:


 On 12 Sep 2014, at 21:51, stepharo steph...@free.fr wrote:

  Every time we improve the system with a little change, the system gets
 better. And in Pharo we do it daily. Thank you all for all your changes and
 enhancements. **You** make Pharo cool.
 
 
 http://pharoweekly.wordpress.com/2014/09/12/there-is-no-such-thing-as-an-unworthy-change/

 + 10





-- 
www.tudorgirba.com

Every thing has its own flow


Re: [Pharo-dev] Starting with Roassal 2

2014-09-12 Thread kilon alios
to answer myself, view color changes via canvas so it is

v canvas color: Color black.

I also found a way to create an edge looking at the tests.

this is the complete code now

v := RTView new.
shape := RTEllipse new size: 20; color: Color red. shape := shape + RTLabel.
es := shape elementOn:'hello'. v add: es.
el1 := RTBox element.
el2 := RTBox element.
el1 translateTo: 20 @ 20.
el2 translateTo: 60 @ 80.
edge := RTLine edgeFrom: el1 to: el2.
es2 := edge element.v add: edge.
RTEdge buildEdgesFromObjects: (1 to: 20) from: [ :i | i // 2 ] to:
#yourself inView: v. RTGridLayout on: es.
es @ RTDraggable.
v @ RTDraggableView .
v canvas color: Color black.
v open.

probably there is an easier way to do this so I am taking a look at both
tests and examples.

On Fri, Sep 12, 2014 at 11:03 PM, kilon alios kilon.al...@gmail.com wrote:

 Ok here comes the first question

 how I change the background color of RTView ?

 also

 when I do this

 v := RTView new.
 shape := RTEllipse new size: 20; color: Color red. shape := shape +
 RTLabel.
 es := shape elementOn:'hello'. v add: es.
 line := RTDirectedLine new pointsFrom: 20@20 To: 30@30.
 es2 := line element.v add: es2.
 es @ RTDraggable.
 v @ RTDraggableView .
 v open.

 I am getting an error

 MNU Array  element

 why ?




Re: [Pharo-dev] Starting with Roassal 2

2014-09-12 Thread Juraj Kubelka
I have checked RTDirectedLine and it is not supposed to use the way you want. 
Basically RTEdge is the object you want to manipulate with. 

I do not know what is the objective of your example. But there is way how you 
could write it.

-=-=-
| v elements models |
models := (10 to: 60 by: 1).
v := RTView new.
elements := (RTEllipse new size: #yourself; color: Color red) + RTLabel 
elementsOn: models.
v addAll: elements.
RTEdge buildEdgesFromObjects: models from: #yourself to: [ :i | i // 2 ] 
inView: v. 
RTGridLayout on: elements.
elements @ RTDraggable.
v @ RTDraggableView.
v canvas color: Color black.
v open.
-=-=-

Cheers,
Juraj

On Sep 12, 2014, at 5:03 PM, kilon alios kilon.al...@gmail.com wrote:

 Ok here comes the first question
 
 how I change the background color of RTView ?
 
 also
 
 when I do this
 
 v := RTView new.
 shape := RTEllipse new size: 20; color: Color red. shape := shape + RTLabel.
 es := shape elementOn:'hello'. v add: es.
 line := RTDirectedLine new pointsFrom: 20@20 To: 30@30. 
 es2 := line element.v add: es2. 
 es @ RTDraggable.
 v @ RTDraggableView .
 v open.
 
 I am getting an error 
 
 MNU Array  element
 
 why ?
 




Re: [Pharo-dev] Starting with Roassal 2

2014-09-12 Thread kilon alios
yes i know about the example of a line connecting with other shapes. I
wanted just a simple line by itself starting from one point and ending to
another in a single line of code.

On Sat, Sep 13, 2014 at 12:26 AM, Juraj Kubelka juraj.kube...@gmail.com
wrote:

 I have checked RTDirectedLine and it is not supposed to use the way you
 want. Basically RTEdge is the object you want to manipulate with.

 I do not know what is the objective of your example. But there is way how
 you could write it.

 -=-=-
 | v elements models |
 models := (10 to: 60 by: 1).
 v := RTView new.
 elements := (RTEllipse new size: #yourself; color: Color red) + RTLabel
 elementsOn: models.
 v addAll: elements.
 RTEdge buildEdgesFromObjects: models from: #yourself to: [ :i | i // 2 ]
 inView: v.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 v @ RTDraggableView.
 v canvas color: Color black.
 v open.
 -=-=-

 Cheers,
 Juraj

 On Sep 12, 2014, at 5:03 PM, kilon alios kilon.al...@gmail.com wrote:

  Ok here comes the first question
 
  how I change the background color of RTView ?
 
  also
 
  when I do this
 
  v := RTView new.
  shape := RTEllipse new size: 20; color: Color red. shape := shape +
 RTLabel.
  es := shape elementOn:'hello'. v add: es.
  line := RTDirectedLine new pointsFrom: 20@20 To: 30@30.
  es2 := line element.v add: es2.
  es @ RTDraggable.
  v @ RTDraggableView .
  v open.
 
  I am getting an error
 
  MNU Array  element
 
  why ?
 





Re: [Pharo-dev] Starting with Roassal 2

2014-09-12 Thread Juraj Kubelka
OK, then you can write:

-=-=-=-
| v elements edge |
v := RTView new.
elements := (RTEllipse new
size: #yourself;
color: Color red) + RTLabel elementsOn: #(10 20).
edge := RTDirectedLine new
color: Color blue;
edgeFrom: elements first to: elements second.
v
addAll: elements;
add: edge.
RTGridLayout on: elements.
elements @ RTDraggable.
^ v open
-=-=-

Cheers,
Juraj

On Sep 12, 2014, at 6:30 PM, kilon alios kilon.al...@gmail.com wrote:

 yes i know about the example of a line connecting with other shapes. I wanted 
 just a simple line by itself starting from one point and ending to another in 
 a single line of code.
 
 On Sat, Sep 13, 2014 at 12:26 AM, Juraj Kubelka juraj.kube...@gmail.com 
 wrote:
 I have checked RTDirectedLine and it is not supposed to use the way you want. 
 Basically RTEdge is the object you want to manipulate with.
 
 I do not know what is the objective of your example. But there is way how you 
 could write it.
 
 -=-=-
 | v elements models |
 models := (10 to: 60 by: 1).
 v := RTView new.
 elements := (RTEllipse new size: #yourself; color: Color red) + RTLabel 
 elementsOn: models.
 v addAll: elements.
 RTEdge buildEdgesFromObjects: models from: #yourself to: [ :i | i // 2 ] 
 inView: v.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 v @ RTDraggableView.
 v canvas color: Color black.
 v open.
 -=-=-
 
 Cheers,
 Juraj
 
 On Sep 12, 2014, at 5:03 PM, kilon alios kilon.al...@gmail.com wrote:
 
  Ok here comes the first question
 
  how I change the background color of RTView ?
 
  also
 
  when I do this
 
  v := RTView new.
  shape := RTEllipse new size: 20; color: Color red. shape := shape + RTLabel.
  es := shape elementOn:'hello'. v add: es.
  line := RTDirectedLine new pointsFrom: 20@20 To: 30@30.
  es2 := line element.v add: es2.
  es @ RTDraggable.
  v @ RTDraggableView .
  v open.
 
  I am getting an error
 
  MNU Array  element
 
  why ?
 
 
 
 



Re: [Pharo-dev] Starting with Roassal 2

2014-09-12 Thread kilon alios
well thats not an one liner and you still connect elements with it. I just
wanted to pass coordinates to a line and draw it. So I would prefer it if I
could pass points instead of elements.

On Sat, Sep 13, 2014 at 12:38 AM, Juraj Kubelka juraj.kube...@gmail.com
wrote:

 OK, then you can write:

 -=-=-=-
 | v elements edge |
 v := RTView new.
 elements := (RTEllipse new
 size: #yourself;
 color: Color red) + RTLabel elementsOn: #(10 20).
 edge := RTDirectedLine new
 color: Color blue;
 *edgeFrom: elements first to: elements second.*
 v
 addAll: elements;
 add: edge.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 ^ v open
 -=-=-

 Cheers,
 Juraj

 On Sep 12, 2014, at 6:30 PM, kilon alios kilon.al...@gmail.com wrote:

 yes i know about the example of a line connecting with other shapes. I
 wanted just a simple line by itself starting from one point and ending to
 another in a single line of code.

 On Sat, Sep 13, 2014 at 12:26 AM, Juraj Kubelka juraj.kube...@gmail.com
 wrote:

 I have checked RTDirectedLine and it is not supposed to use the way you
 want. Basically RTEdge is the object you want to manipulate with.

 I do not know what is the objective of your example. But there is way how
 you could write it.

 -=-=-
 | v elements models |
 models := (10 to: 60 by: 1).
 v := RTView new.
 elements := (RTEllipse new size: #yourself; color: Color red) + RTLabel
 elementsOn: models.
 v addAll: elements.
 RTEdge buildEdgesFromObjects: models from: #yourself to: [ :i | i // 2 ]
 inView: v.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 v @ RTDraggableView.
 v canvas color: Color black.
 v open.
 -=-=-

 Cheers,
 Juraj

 On Sep 12, 2014, at 5:03 PM, kilon alios kilon.al...@gmail.com wrote:

  Ok here comes the first question
 
  how I change the background color of RTView ?
 
  also
 
  when I do this
 
  v := RTView new.
  shape := RTEllipse new size: 20; color: Color red. shape := shape +
 RTLabel.
  es := shape elementOn:'hello'. v add: es.
  line := RTDirectedLine new pointsFrom: 20@20 To: 30@30.
  es2 := line element.v add: es2.
  es @ RTDraggable.
  v @ RTDraggableView .
  v open.
 
  I am getting an error
 
  MNU Array  element
 
  why ?
 







Re: [Pharo-dev] Starting with Roassal 2

2014-09-12 Thread Juraj Kubelka
I think the intention of Roassal lines is to be connected with elements. If you 
want only draw lines without any connection to elements, use directly Trachel. 
I guess

-=-=-=-
| v line |
v := RTView new.
line := TRLineShape new from: 0@0 to: 100@100 color: Color blue.
v canvas addShape: line.
^ v open
-=-=-=-

Cheers,
Juraj

On Sep 12, 2014, at 6:53 PM, kilon alios kilon.al...@gmail.com wrote:

 well thats not an one liner and you still connect elements with it. I just 
 wanted to pass coordinates to a line and draw it. So I would prefer it if I 
 could pass points instead of elements. 
 
 On Sat, Sep 13, 2014 at 12:38 AM, Juraj Kubelka juraj.kube...@gmail.com 
 wrote:
 OK, then you can write:
 
 -=-=-=-
 | v elements edge |
 v := RTView new.
 elements := (RTEllipse new
   size: #yourself;
   color: Color red) + RTLabel elementsOn: #(10 20).
 edge := RTDirectedLine new
   color: Color blue;
   edgeFrom: elements first to: elements second.
 v
   addAll: elements;
   add: edge.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 ^ v open
 -=-=-
 
 Cheers,
 Juraj
 
 On Sep 12, 2014, at 6:30 PM, kilon alios kilon.al...@gmail.com wrote:
 
 yes i know about the example of a line connecting with other shapes. I 
 wanted just a simple line by itself starting from one point and ending to 
 another in a single line of code.
 
 On Sat, Sep 13, 2014 at 12:26 AM, Juraj Kubelka juraj.kube...@gmail.com 
 wrote:
 I have checked RTDirectedLine and it is not supposed to use the way you 
 want. Basically RTEdge is the object you want to manipulate with.
 
 I do not know what is the objective of your example. But there is way how 
 you could write it.
 
 -=-=-
 | v elements models |
 models := (10 to: 60 by: 1).
 v := RTView new.
 elements := (RTEllipse new size: #yourself; color: Color red) + RTLabel 
 elementsOn: models.
 v addAll: elements.
 RTEdge buildEdgesFromObjects: models from: #yourself to: [ :i | i // 2 ] 
 inView: v.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 v @ RTDraggableView.
 v canvas color: Color black.
 v open.
 -=-=-
 
 Cheers,
 Juraj
 
 On Sep 12, 2014, at 5:03 PM, kilon alios kilon.al...@gmail.com wrote:
 
  Ok here comes the first question
 
  how I change the background color of RTView ?
 
  also
 
  when I do this
 
  v := RTView new.
  shape := RTEllipse new size: 20; color: Color red. shape := shape + 
  RTLabel.
  es := shape elementOn:'hello'. v add: es.
  line := RTDirectedLine new pointsFrom: 20@20 To: 30@30.
  es2 := line element.v add: es2.
  es @ RTDraggable.
  v @ RTDraggableView .
  v open.
 
  I am getting an error
 
  MNU Array  element
 
  why ?
 
 
 
 
 
 



Re: [Pharo-dev] Starting with Roassal 2

2014-09-12 Thread kilon alios
ah thank you very much, thats exactly what I was looking for. I will study
Trachel too.  I also found that I can do something similar using a SVG path
with Roassal.

On Sat, Sep 13, 2014 at 12:58 AM, Juraj Kubelka juraj.kube...@gmail.com
wrote:

 I think the intention of Roassal lines is to be connected with elements.
 If you want only draw lines without any connection to elements, use
 directly Trachel. I guess

 -=-=-=-
 | v line |
 v := RTView new.
 line := TRLineShape new from: 0@0 to: 100@100 color: Color blue.
 v canvas addShape: line.
 ^ v open
 -=-=-=-

 Cheers,
 Juraj

 On Sep 12, 2014, at 6:53 PM, kilon alios kilon.al...@gmail.com wrote:

 well thats not an one liner and you still connect elements with it. I just
 wanted to pass coordinates to a line and draw it. So I would prefer it if I
 could pass points instead of elements.

 On Sat, Sep 13, 2014 at 12:38 AM, Juraj Kubelka juraj.kube...@gmail.com
 wrote:

 OK, then you can write:

 -=-=-=-
 | v elements edge |
 v := RTView new.
 elements := (RTEllipse new
 size: #yourself;
 color: Color red) + RTLabel elementsOn: #(10 20).
 edge := RTDirectedLine new
 color: Color blue;
 *edgeFrom: elements first to: elements second.*
 v
 addAll: elements;
 add: edge.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 ^ v open
 -=-=-

 Cheers,
 Juraj

 On Sep 12, 2014, at 6:30 PM, kilon alios kilon.al...@gmail.com wrote:

 yes i know about the example of a line connecting with other shapes. I
 wanted just a simple line by itself starting from one point and ending to
 another in a single line of code.

 On Sat, Sep 13, 2014 at 12:26 AM, Juraj Kubelka juraj.kube...@gmail.com
 wrote:

 I have checked RTDirectedLine and it is not supposed to use the way you
 want. Basically RTEdge is the object you want to manipulate with.

 I do not know what is the objective of your example. But there is way
 how you could write it.

 -=-=-
 | v elements models |
 models := (10 to: 60 by: 1).
 v := RTView new.
 elements := (RTEllipse new size: #yourself; color: Color red) + RTLabel
 elementsOn: models.
 v addAll: elements.
 RTEdge buildEdgesFromObjects: models from: #yourself to: [ :i | i // 2 ]
 inView: v.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 v @ RTDraggableView.
 v canvas color: Color black.
 v open.
 -=-=-

 Cheers,
 Juraj

 On Sep 12, 2014, at 5:03 PM, kilon alios kilon.al...@gmail.com wrote:

  Ok here comes the first question
 
  how I change the background color of RTView ?
 
  also
 
  when I do this
 
  v := RTView new.
  shape := RTEllipse new size: 20; color: Color red. shape := shape +
 RTLabel.
  es := shape elementOn:'hello'. v add: es.
  line := RTDirectedLine new pointsFrom: 20@20 To: 30@30.
  es2 := line element.v add: es2.
  es @ RTDraggable.
  v @ RTDraggableView .
  v open.
 
  I am getting an error
 
  MNU Array  element
 
  why ?
 









Re: [Pharo-dev] Starting with Roassal 2

2014-09-12 Thread kilon alios
ah thank you very much, thats exactly what I was looking for. I will study
Trachel too.  I also found that I can do something similar using a SVG path
with Roassal.

On Sat, Sep 13, 2014 at 12:58 AM, Juraj Kubelka juraj.kube...@gmail.com
wrote:

 I think the intention of Roassal lines is to be connected with elements.
 If you want only draw lines without any connection to elements, use
 directly Trachel. I guess

 -=-=-=-
 | v line |
 v := RTView new.
 line := TRLineShape new from: 0@0 to: 100@100 color: Color blue.
 v canvas addShape: line.
 ^ v open
 -=-=-=-

 Cheers,
 Juraj

 On Sep 12, 2014, at 6:53 PM, kilon alios kilon.al...@gmail.com wrote:

 well thats not an one liner and you still connect elements with it. I just
 wanted to pass coordinates to a line and draw it. So I would prefer it if I
 could pass points instead of elements.

 On Sat, Sep 13, 2014 at 12:38 AM, Juraj Kubelka juraj.kube...@gmail.com
 wrote:

 OK, then you can write:

 -=-=-=-
 | v elements edge |
 v := RTView new.
 elements := (RTEllipse new
 size: #yourself;
 color: Color red) + RTLabel elementsOn: #(10 20).
 edge := RTDirectedLine new
 color: Color blue;
 *edgeFrom: elements first to: elements second.*
 v
 addAll: elements;
 add: edge.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 ^ v open
 -=-=-

 Cheers,
 Juraj

 On Sep 12, 2014, at 6:30 PM, kilon alios kilon.al...@gmail.com wrote:

 yes i know about the example of a line connecting with other shapes. I
 wanted just a simple line by itself starting from one point and ending to
 another in a single line of code.

 On Sat, Sep 13, 2014 at 12:26 AM, Juraj Kubelka juraj.kube...@gmail.com
 wrote:

 I have checked RTDirectedLine and it is not supposed to use the way you
 want. Basically RTEdge is the object you want to manipulate with.

 I do not know what is the objective of your example. But there is way
 how you could write it.

 -=-=-
 | v elements models |
 models := (10 to: 60 by: 1).
 v := RTView new.
 elements := (RTEllipse new size: #yourself; color: Color red) + RTLabel
 elementsOn: models.
 v addAll: elements.
 RTEdge buildEdgesFromObjects: models from: #yourself to: [ :i | i // 2 ]
 inView: v.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 v @ RTDraggableView.
 v canvas color: Color black.
 v open.
 -=-=-

 Cheers,
 Juraj

 On Sep 12, 2014, at 5:03 PM, kilon alios kilon.al...@gmail.com wrote:

  Ok here comes the first question
 
  how I change the background color of RTView ?
 
  also
 
  when I do this
 
  v := RTView new.
  shape := RTEllipse new size: 20; color: Color red. shape := shape +
 RTLabel.
  es := shape elementOn:'hello'. v add: es.
  line := RTDirectedLine new pointsFrom: 20@20 To: 30@30.
  es2 := line element.v add: es2.
  es @ RTDraggable.
  v @ RTDraggableView .
  v open.
 
  I am getting an error
 
  MNU Array  element
 
  why ?
 









Re: [Pharo-dev] Starting with Roassal 2

2014-09-12 Thread Juraj Kubelka
Yes, you can use SVG path as a shape for an element. What you chose really 
depends on your objective. If you want to draw nodes (elements) and connect 
them with edges (lines), I guess, the preferred API is Roassal2.

On Sep 12, 2014, at 7:02 PM, kilon alios kilon.al...@gmail.com wrote:

 ah thank you very much, thats exactly what I was looking for. I will study 
 Trachel too.  I also found that I can do something similar using a SVG path 
 with Roassal. 
 
 On Sat, Sep 13, 2014 at 12:58 AM, Juraj Kubelka juraj.kube...@gmail.com 
 wrote:
 I think the intention of Roassal lines is to be connected with elements. If 
 you want only draw lines without any connection to elements, use directly 
 Trachel. I guess
 
 -=-=-=-
 | v line |
 v := RTView new.
 line := TRLineShape new from: 0@0 to: 100@100 color: Color blue.
 v canvas addShape: line.
 ^ v open
 -=-=-=-
 
 Cheers,
 Juraj
 
 On Sep 12, 2014, at 6:53 PM, kilon alios kilon.al...@gmail.com wrote:
 
 well thats not an one liner and you still connect elements with it. I just 
 wanted to pass coordinates to a line and draw it. So I would prefer it if I 
 could pass points instead of elements. 
 
 On Sat, Sep 13, 2014 at 12:38 AM, Juraj Kubelka juraj.kube...@gmail.com 
 wrote:
 OK, then you can write:
 
 -=-=-=-
 | v elements edge |
 v := RTView new.
 elements := (RTEllipse new
  size: #yourself;
  color: Color red) + RTLabel elementsOn: #(10 20).
 edge := RTDirectedLine new
  color: Color blue;
  edgeFrom: elements first to: elements second.
 v
  addAll: elements;
  add: edge.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 ^ v open
 -=-=-
 
 Cheers,
 Juraj
 
 On Sep 12, 2014, at 6:30 PM, kilon alios kilon.al...@gmail.com wrote:
 
 yes i know about the example of a line connecting with other shapes. I 
 wanted just a simple line by itself starting from one point and ending to 
 another in a single line of code.
 
 On Sat, Sep 13, 2014 at 12:26 AM, Juraj Kubelka juraj.kube...@gmail.com 
 wrote:
 I have checked RTDirectedLine and it is not supposed to use the way you 
 want. Basically RTEdge is the object you want to manipulate with.
 
 I do not know what is the objective of your example. But there is way how 
 you could write it.
 
 -=-=-
 | v elements models |
 models := (10 to: 60 by: 1).
 v := RTView new.
 elements := (RTEllipse new size: #yourself; color: Color red) + RTLabel 
 elementsOn: models.
 v addAll: elements.
 RTEdge buildEdgesFromObjects: models from: #yourself to: [ :i | i // 2 ] 
 inView: v.
 RTGridLayout on: elements.
 elements @ RTDraggable.
 v @ RTDraggableView.
 v canvas color: Color black.
 v open.
 -=-=-
 
 Cheers,
 Juraj
 
 On Sep 12, 2014, at 5:03 PM, kilon alios kilon.al...@gmail.com wrote:
 
  Ok here comes the first question
 
  how I change the background color of RTView ?
 
  also
 
  when I do this
 
  v := RTView new.
  shape := RTEllipse new size: 20; color: Color red. shape := shape + 
  RTLabel.
  es := shape elementOn:'hello'. v add: es.
  line := RTDirectedLine new pointsFrom: 20@20 To: 30@30.
  es2 := line element.v add: es2.
  es @ RTDraggable.
  v @ RTDraggableView .
  v open.
 
  I am getting an error
 
  MNU Array  element
 
  why ?