<br><br><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">Mariano Martinez Peck</b> <span dir="ltr"><<a href="mailto:marianopeck@gmail.com">marianopeck@gmail.com</a>></span><br>
Date: Fri, Aug 21, 2009 at 12:23 PM<br>Subject: Re: [Pharo-project] [BUG]OpenDBXMacOSX(Object)>>error:<br>To: <a href="mailto:Pharo-project@lists.gforge.inria.fr">Pharo-project@lists.gforge.inria.fr</a><br><br><br><br>
<br><div class="gmail_quote"><div class="im">On Fri, Aug 21, 2009 at 8:16 AM, François Tanguy <span dir="ltr"><<a href="mailto:francois.tanguy@gmail.com" target="_blank">francois.tanguy@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello,<br>
<br>
it may be a noobie question but I tried to execute the GlorpTest and<br>
it failed in one case.<br>
<br>
If the DBXDriver is used, the tests failed. (See the stacktrace below)<br>
| tr |<br>
SqueakDatabaseAccessor DefaultDriver: SqueakDBXDriver.<br>
tr := TestRunner new.<br>
ToolBuilder open: tr.<br>
tr categoryAt: (tr categoryList indexOf: 'GlorpTest') put: true;<br>
selectAllClasses; runAll.<br>
<br>
But the native driver is used, the tests passed.<br>
| tr |<br>
SqueakDatabaseAccessor DefaultDriver: NativePostgresDriver.<br>
tr := TestRunner new.<br>
ToolBuilder open: tr.<br>
tr categoryAt: (tr categoryList indexOf: 'GlorpTest') put: true;<br>
selectAllClasses; runAll.<br>
<br>
I thought the DBXDriver could be used to manage postgresql database,<br>
no ?</blockquote></div><div><br>Yes, SqueakDBX supports PostgreSQL but also many others backends. But in contrary to the native postgresql driver which is all in smalltalk, SqueakDBX delegates to an external library written in C called OpenDBX.<br>
<br>So, when using SqueakDBX you must install OpenDBX and the client library of your database (the error you had is because SqueakDBX doesn't find OpenDBX in your system). Unfortunately this solution requires a bit more time of configuring than using the native driver but we can use a lot of databases and have better performance.<br>
<br>I suggest you read the link: <a href="http://wiki.squeak.org/squeak/6052" target="_blank">http://wiki.squeak.org/squeak/6052</a><br>And more in deep this link: <a href="http://wiki.squeak.org/squeak/6129" target="_blank">http://wiki.squeak.org/squeak/6129</a><br>
<br>For Linux and Windows there are also binaries, but in the case of Mac you must compile. <br><br>Finally there is a blog someone write to use PostgreSQL with SqueakDBX in Mac OS:<br><a href="http://dreamsofascorpion.blogspot.com/2008/05/using-opendbx-with-squeak.html" target="_blank">http://dreamsofascorpion.blogspot.com/2008/05/using-opendbx-with-squeak.html</a><br>
<br>To avoid noise in Pharo mailing list remember there is our own mailing list here:<br><a href="http://wiki.squeak.org/squeak/6052" target="_blank">http://wiki.squeak.org/squeak/6052</a><br><br>If you have more questions, just ask :)<br>
<br>Best,<br><font color="#888888"><br>Mariano<br><br> </font></div><div><div></div><div class="h5"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
<br>
François<br>
<br>
ps : I am using pharo1.0-10418-BETAweb09.08.2 and I changed the login<br>
information in the correct methods (defaultPostgreSQLLocalLogin and<br>
buildDefaultConnectionArgs).<br>
21 August 2009 11:13:22 am<br>
<br>
VM: Mac OS - intel - 1058 - Squeak3.8.1 of '28 Aug 2006' [latest<br>
update: #6747] Squeak VM 4.1.1b2<br>
Image: Pharo1.0beta [Latest update: #10418]<br>
<br>
SecurityManager state:<br>
Restricted: false<br>
FileAccess: true<br>
SocketAccess: true<br>
Working Dir /Users/paco/Desktop/pharo1.0-10418-BETAweb09.08.2<br>
Trusted Dir /foobar/tooBar/forSqueak/bogus<br>
Untrusted Dir /Users/paco/Library/Preferences/Squeak/Internet/My Squeak<br>
<br>
OpenDBXMacOSX(Object)>>error:<br>
Receiver: an OpenDBXMacOSX<br>
Arguments and temporary variables:<br>
aString: 'Unable to find function address'<br>
Receiver's instance variables:<br>
an OpenDBXMacOSX<br>
<br>
OpenDBXMacOSX(Object)>>externalCallFailed<br>
Receiver: an OpenDBXMacOSX<br>
Arguments and temporary variables:<br>
errCode: 13<br>
Receiver's instance variables:<br>
an OpenDBXMacOSX<br>
<br>
OpenDBXMacOSX(OpenDBXUnix)>>apiInitialize:backend:host:port:<br>
Receiver: an OpenDBXMacOSX<br>
Arguments and temporary variables:<br>
handle: a WordArray(0)<br>
backend: 'pgsql'<br>
host: '127.0.0.1'<br>
port: '5432'<br>
Receiver's instance variables:<br>
an OpenDBXMacOSX<br>
<br>
DBXPostgresPlatform(DBXPlatform)>>createConnection:<br>
Receiver: a DBXPostgresPlatform<br>
Arguments and temporary variables:<br>
aConnection: a DBXConnection<br>
err: nil<br>
handleArray: a WordArray(0)<br>
handle: nil<br>
Receiver's instance variables:<br>
a DBXPostgresPlatform<br>
<br>
DBXConnection>>connect<br>
Receiver: a DBXConnection<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
platform: a DBXPostgresPlatform<br>
settings: a DBXConnectionSettings<br>
handle: nil<br>
open: a ValueHolder<br>
connected: a ValueHolder<br>
result: nil<br>
<br>
SqueakDBXDriver>>connect:<br>
Receiver: a SqueakDBXDriver<br>
Arguments and temporary variables:<br>
aLogin: a Login(a PostgreSQLPlatform, 'postgres', 'vorevoca',<br>
'127.0.0.1_glorp'...etc...<br>
Receiver's instance variables:<br>
connection: a DBXConnection<br>
database: nil<br>
<br>
[] in SqueakDatabaseAccessor>>loginIfError:<br>
Receiver: a SqueakDatabaseAccessor<br>
Arguments and temporary variables:<br>
<<error during printing><br>
Receiver's instance variables:<br>
connection: nil<br>
currentLogin: a Login(a PostgreSQLPlatform, 'postgres', 'vorevoca',<br>
'127.0.0.1_...etc...<br>
logging: nil<br>
reusePreparedStatements: nil<br>
deniedCommands: nil<br>
mutex: a Semaphore()<br>
dependents: nil<br>
isInTransaction: false<br>
databaseDriver: a SqueakDBXDriver<br>
<br>
BlockClosure>>on:do:<br>
Receiver: [closure] in SqueakDatabaseAccessor>>loginIfError:<br>
Arguments and temporary variables:<br>
exception: Error<br>
handlerAction: [closure] in<br>
SqueakDatabaseAccessor(DatabaseAccessor)>>login<br>
handlerActive: false<br>
Receiver's instance variables:<br>
outerContext: SqueakDatabaseAccessor>>loginIfError:<br>
startpc: 60<br>
numArgs: 0<br>
<br>
SqueakDatabaseAccessor(DatabaseAccessor)>>execute:ifError:<br>
Receiver: a SqueakDatabaseAccessor<br>
Arguments and temporary variables:<br>
aBlock: [closure] in SqueakDatabaseAccessor>>loginIfError:<br>
errorBlock: [closure] in<br>
SqueakDatabaseAccessor(DatabaseAccessor)>>login<br>
Receiver's instance variables:<br>
connection: nil<br>
currentLogin: a Login(a PostgreSQLPlatform, 'postgres', 'vorevoca',<br>
'127.0.0.1_...etc...<br>
logging: nil<br>
reusePreparedStatements: nil<br>
deniedCommands: nil<br>
mutex: a Semaphore()<br>
dependents: nil<br>
isInTransaction: false<br>
databaseDriver: a SqueakDBXDriver<br>
<br>
SqueakDatabaseAccessor>>loginIfError:<br>
Receiver: a SqueakDatabaseAccessor<br>
Arguments and temporary variables:<br>
aBlock: [closure] in SqueakDatabaseAccessor(DatabaseAccessor)>>login<br>
Receiver's instance variables:<br>
connection: nil<br>
currentLogin: a Login(a PostgreSQLPlatform, 'postgres', 'vorevoca',<br>
'127.0.0.1_...etc...<br>
logging: nil<br>
reusePreparedStatements: nil<br>
deniedCommands: nil<br>
mutex: a Semaphore()<br>
dependents: nil<br>
isInTransaction: false<br>
databaseDriver: a SqueakDBXDriver<br>
<br>
SqueakDatabaseAccessor(DatabaseAccessor)>>login<br>
Receiver: a SqueakDatabaseAccessor<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
connection: nil<br>
currentLogin: a Login(a PostgreSQLPlatform, 'postgres', 'vorevoca',<br>
'127.0.0.1_...etc...<br>
logging: nil<br>
reusePreparedStatements: nil<br>
deniedCommands: nil<br>
mutex: a Semaphore()<br>
dependents: nil<br>
isInTransaction: false<br>
databaseDriver: a SqueakDBXDriver<br>
<br>
GlorpDatabaseLoginResource>>setUp<br>
Receiver: GlorpDatabaseLoginResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
name: nil<br>
description: nil<br>
accessor: a SqueakDatabaseAccessor<br>
login: a Login(a PostgreSQLPlatform, 'postgres', 'vorevoca',<br>
'127.0.0.1_glorp')...etc...<br>
<br>
GlorpDatabaseLoginResource(TestResource)>>initialize<br>
Receiver: GlorpDatabaseLoginResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
name: nil<br>
description: nil<br>
accessor: a SqueakDatabaseAccessor<br>
login: a Login(a PostgreSQLPlatform, 'postgres', 'vorevoca',<br>
'127.0.0.1_glorp')...etc...<br>
<br>
GlorpDatabaseLoginResource class(Behavior)>>new<br>
Receiver: GlorpDatabaseLoginResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
superclass: TestResource<br>
methodDict: a MethodDictionary(#accessor->a CompiledMethod (1052)<br>
#accessor:->a...etc...<br>
format: 138<br>
instanceVariables: #('accessor' 'login')<br>
organization: ('accessing' accessor accessor: login login: platform)<br>
('initiali...etc...<br>
subclasses: nil<br>
name: #GlorpDatabaseLoginResource<br>
classPool: a Dictionary(#DefaultLogin->a Login(a<br>
PostgreSQLPlatform, 'postgres'...etc...<br>
sharedPools: nil<br>
environment: Smalltalk<br>
category: #'OpenDBX-Glorp-Core-Test'<br>
traitComposition: nil<br>
localSelectors: nil<br>
current: nil<br>
<br>
GlorpDatabaseLoginResource class(TestResource class)>>current<br>
Receiver: GlorpDatabaseLoginResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
superclass: TestResource<br>
methodDict: a MethodDictionary(#accessor->a CompiledMethod (1052)<br>
#accessor:->a...etc...<br>
format: 138<br>
instanceVariables: #('accessor' 'login')<br>
organization: ('accessing' accessor accessor: login login: platform)<br>
('initiali...etc...<br>
subclasses: nil<br>
name: #GlorpDatabaseLoginResource<br>
classPool: a Dictionary(#DefaultLogin->a Login(a<br>
PostgreSQLPlatform, 'postgres'...etc...<br>
sharedPools: nil<br>
environment: Smalltalk<br>
category: #'OpenDBX-Glorp-Core-Test'<br>
traitComposition: nil<br>
localSelectors: nil<br>
current: nil<br>
<br>
GlorpDemoTablePopulatorResource>>setUp<br>
Receiver: GlorpDemoTablePopulatorResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
name: nil<br>
description: nil<br>
login: nil<br>
<br>
GlorpDemoTablePopulatorResource(TestResource)>>initialize<br>
Receiver: GlorpDemoTablePopulatorResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
name: nil<br>
description: nil<br>
login: nil<br>
<br>
GlorpDemoTablePopulatorResource class(Behavior)>>new<br>
Receiver: GlorpDemoTablePopulatorResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
superclass: TestResource<br>
methodDict: a MethodDictionary(#populateStuffTable->a<br>
CompiledMethod (555) #set...etc...<br>
format: 136<br>
instanceVariables: #('login')<br>
organization: ('setup' populateStuffTable setUp)<br>
('*glorpTestPostload-override'...etc...<br>
subclasses: nil<br>
name: #GlorpDemoTablePopulatorResource<br>
classPool: a Dictionary(#NeedsSetup->false )<br>
sharedPools: nil<br>
environment: Smalltalk<br>
category: #GlorpTest<br>
traitComposition: nil<br>
localSelectors: nil<br>
current: nil<br>
<br>
GlorpDemoTablePopulatorResource class(TestResource class)>>current<br>
Receiver: GlorpDemoTablePopulatorResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
superclass: TestResource<br>
methodDict: a MethodDictionary(#populateStuffTable->a<br>
CompiledMethod (555) #set...etc...<br>
format: 136<br>
instanceVariables: #('login')<br>
organization: ('setup' populateStuffTable setUp)<br>
('*glorpTestPostload-override'...etc...<br>
subclasses: nil<br>
name: #GlorpDemoTablePopulatorResource<br>
classPool: a Dictionary(#NeedsSetup->false )<br>
sharedPools: nil<br>
environment: Smalltalk<br>
category: #GlorpTest<br>
traitComposition: nil<br>
localSelectors: nil<br>
current: nil<br>
<br>
GlorpSessionResource>>glorpTestsSystem<br>
Receiver: GlorpSessionResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
name: nil<br>
description: nil<br>
session: nil<br>
<br>
GlorpSessionResource>>setUp<br>
Receiver: GlorpSessionResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
name: nil<br>
description: nil<br>
session: nil<br>
<br>
GlorpSessionResource(TestResource)>>initialize<br>
Receiver: GlorpSessionResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
name: nil<br>
description: nil<br>
session: nil<br>
<br>
GlorpSessionResource class(Behavior)>>new<br>
Receiver: GlorpSessionResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
superclass: TestResource<br>
methodDict: a MethodDictionary(#glorpTestsSystem->a CompiledMethod<br>
(1814) #newS...etc...<br>
format: 136<br>
instanceVariables: #('session')<br>
organization: ('setup' glorpTestsSystem setUp)<br>
('accessing' newSession session)...etc...<br>
subclasses: nil<br>
name: #GlorpSessionResource<br>
classPool: nil<br>
sharedPools: nil<br>
environment: Smalltalk<br>
category: #GlorpTest<br>
traitComposition: nil<br>
localSelectors: nil<br>
current: nil<br>
<br>
GlorpSessionResource class(TestResource class)>>current<br>
Receiver: GlorpSessionResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
superclass: TestResource<br>
methodDict: a MethodDictionary(#glorpTestsSystem->a CompiledMethod<br>
(1814) #newS...etc...<br>
format: 136<br>
instanceVariables: #('session')<br>
organization: ('setup' glorpTestsSystem setUp)<br>
('accessing' newSession session)...etc...<br>
subclasses: nil<br>
name: #GlorpSessionResource<br>
classPool: nil<br>
sharedPools: nil<br>
environment: Smalltalk<br>
category: #GlorpTest<br>
traitComposition: nil<br>
localSelectors: nil<br>
current: nil<br>
<br>
GlorpSessionResource class(TestResource class)>>isAvailable<br>
Receiver: GlorpSessionResource<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
superclass: TestResource<br>
methodDict: a MethodDictionary(#glorpTestsSystem->a CompiledMethod<br>
(1814) #newS...etc...<br>
format: 136<br>
instanceVariables: #('session')<br>
organization: ('setup' glorpTestsSystem setUp)<br>
('accessing' newSession session)...etc...<br>
subclasses: nil<br>
name: #GlorpSessionResource<br>
classPool: nil<br>
sharedPools: nil<br>
environment: Smalltalk<br>
category: #GlorpTest<br>
traitComposition: nil<br>
localSelectors: nil<br>
current: nil<br>
<br>
[] in TestRunner>>basicSetUpSuite:<br>
Receiver: a TestRunner<br>
Arguments and temporary variables:<br>
<<error during printing><br>
Receiver's instance variables:<br>
categories: #(#'AST-Tests' #'AutomaticMethodCategorizer-Tests'<br>
#'AutomaticMetho...etc...<br>
categoriesSelected: a Set(#GlorpTest)<br>
classes: {GlorpBreadthFirstTopologicalSortTest . GlorpCommandTest .<br>
GlorpCursor...etc...<br>
classIndex: 0<br>
classesSelected: a Set(GlorpSQLPrintingTest GlorpDatabaseBasedTest<br>
GlorpManyToM...etc...<br>
failedList: #()<br>
failedSelected: nil<br>
errorList: #()<br>
errorSelected: nil<br>
lastUpdate: 3428305867<br>
result: 0 run, 0 passes, 0 expected failures, 0 failures, 0 errors,<br>
0 unexpecte...etc...<br>
previousRun: nil<br>
<br>
Set>>do:<br>
Receiver: a Set(GlorpSessionResource GlorpDatabaseLoginResource<br>
GlorpDemoTablePopulatorResource)<br>
Arguments and temporary variables:<br>
aBlock: [closure] in TestRunner>>basicSetUpSuite:<br>
index: 2<br>
each: GlorpSessionResource<br>
indexLimiT: 5<br>
Receiver's instance variables:<br>
tally: 3<br>
array: {nil . GlorpSessionResource . GlorpDatabaseLoginResource .<br>
GlorpDemoTabl...etc...<br>
<br>
TestRunner>>basicSetUpSuite:<br>
Receiver: a TestRunner<br>
Arguments and temporary variables:<br>
aTestSuite: a TestSuite<br>
Receiver's instance variables:<br>
categories: #(#'AST-Tests' #'AutomaticMethodCategorizer-Tests'<br>
#'AutomaticMetho...etc...<br>
categoriesSelected: a Set(#GlorpTest)<br>
classes: {GlorpBreadthFirstTopologicalSortTest . GlorpCommandTest .<br>
GlorpCursor...etc...<br>
classIndex: 0<br>
classesSelected: a Set(GlorpSQLPrintingTest GlorpDatabaseBasedTest<br>
GlorpManyToM...etc...<br>
failedList: #()<br>
failedSelected: nil<br>
errorList: #()<br>
errorSelected: nil<br>
lastUpdate: 3428305867<br>
result: 0 run, 0 passes, 0 expected failures, 0 failures, 0 errors,<br>
0 unexpecte...etc...<br>
previousRun: nil<br>
<br>
TestRunner>>basicRunSuite:do:<br>
Receiver: a TestRunner<br>
Arguments and temporary variables:<br>
aTestSuite: a TestSuite<br>
aBlock: [closure] in TestRunner>>runSuite:<br>
Receiver's instance variables:<br>
categories: #(#'AST-Tests' #'AutomaticMethodCategorizer-Tests'<br>
#'AutomaticMetho...etc...<br>
categoriesSelected: a Set(#GlorpTest)<br>
classes: {GlorpBreadthFirstTopologicalSortTest . GlorpCommandTest .<br>
GlorpCursor...etc...<br>
classIndex: 0<br>
classesSelected: a Set(GlorpSQLPrintingTest GlorpDatabaseBasedTest<br>
GlorpManyToM...etc...<br>
failedList: #()<br>
failedSelected: nil<br>
errorList: #()<br>
errorSelected: nil<br>
lastUpdate: 3428305867<br>
result: 0 run, 0 passes, 0 expected failures, 0 failures, 0 errors,<br>
0 unexpecte...etc...<br>
previousRun: nil<br>
<br>
TestRunner>>runSuite:<br>
Receiver: a TestRunner<br>
Arguments and temporary variables:<br>
aTestSuite: a TestSuite<br>
Receiver's instance variables:<br>
categories: #(#'AST-Tests' #'AutomaticMethodCategorizer-Tests'<br>
#'AutomaticMetho...etc...<br>
categoriesSelected: a Set(#GlorpTest)<br>
classes: {GlorpBreadthFirstTopologicalSortTest . GlorpCommandTest .<br>
GlorpCursor...etc...<br>
classIndex: 0<br>
classesSelected: a Set(GlorpSQLPrintingTest GlorpDatabaseBasedTest<br>
GlorpManyToM...etc...<br>
failedList: #()<br>
failedSelected: nil<br>
errorList: #()<br>
errorSelected: nil<br>
lastUpdate: 3428305867<br>
result: 0 run, 0 passes, 0 expected failures, 0 failures, 0 errors,<br>
0 unexpecte...etc...<br>
previousRun: nil<br>
<br>
TestRunner>>runAll<br>
Receiver: a TestRunner<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
categories: #(#'AST-Tests' #'AutomaticMethodCategorizer-Tests'<br>
#'AutomaticMetho...etc...<br>
categoriesSelected: a Set(#GlorpTest)<br>
classes: {GlorpBreadthFirstTopologicalSortTest . GlorpCommandTest .<br>
GlorpCursor...etc...<br>
classIndex: 0<br>
classesSelected: a Set(GlorpSQLPrintingTest GlorpDatabaseBasedTest<br>
GlorpManyToM...etc...<br>
failedList: #()<br>
failedSelected: nil<br>
errorList: #()<br>
errorSelected: nil<br>
lastUpdate: 3428305867<br>
result: 0 run, 0 passes, 0 expected failures, 0 failures, 0 errors,<br>
0 unexpecte...etc...<br>
previousRun: nil<br>
<br>
UndefinedObject>>DoIt<br>
Receiver: nil<br>
Arguments and temporary variables:<br>
tr: a TestRunner<br>
Receiver's instance variables:<br>
nil<br>
<br>
Compiler>>evaluate:in:to:notifying:ifFail:logged:<br>
Receiver: a Compiler<br>
Arguments and temporary variables:<br>
<<error during printing><br>
Receiver's instance variables:<br>
sourceStream: a ReadWriteStream '<br>
|tr |<br>
SqueakDatabaseAccessor DefaultDriver: S...etc...<br>
requestor: a TextMorphForShoutEditor<br>
class: UndefinedObject<br>
category: nil<br>
context: nil<br>
parser: a Parser<br>
<br>
[] in TextMorphForShoutEditor(ParagraphEditor)>>evaluateSelection<br>
Receiver: a TextMorphForShoutEditor<br>
Arguments and temporary variables:<br>
<<error during printing><br>
Receiver's instance variables:<br>
model: a SHWorkspace<br>
paragraph: a MultiNewParagraph<br>
startBlock: a CharacterBlock with index 201 and character Character<br>
cr and rect...etc...<br>
stopBlock: a CharacterBlock with index 201 and character Character<br>
cr and recta...etc...<br>
beginTypeInBlock: nil<br>
emphasisHere: an Array(a TextColor code: Color red)<br>
initialText: a Text for '<br>
|tr |<br>
tr := TestRunner new.<br>
ToolBuilder open: tr.<br>
tr<br>
...etc...<br>
selectionShowing: false<br>
otherInterval: (403 to: 402)<br>
lastParentLocation: nil<br>
morph: a TextMorphForShout(168)<br>
oldInterval: (106 to: 105)<br>
pivotBlock: a CharacterBlock with index 200 and character Character<br>
cr and rect...etc...<br>
inBackTo: false<br>
<br>
BlockClosure>>on:do:<br>
Receiver: [closure] in<br>
TextMorphForShoutEditor(ParagraphEditor)>>evaluateSelection<br>
Arguments and temporary variables:<br>
exception: OutOfScopeNotification<br>
handlerAction: [closure] in<br>
TextMorphForShoutEditor(ParagraphEditor)>>evaluateS...etc...<br>
handlerActive: true<br>
Receiver's instance variables:<br>
outerContext:<br>
TextMorphForShoutEditor(ParagraphEditor)>>evaluateSelection<br>
startpc: 116<br>
numArgs: 0<br>
<br>
TextMorphForShoutEditor(ParagraphEditor)>>evaluateSelection<br>
Receiver: a TextMorphForShoutEditor<br>
Arguments and temporary variables:<br>
result: nil<br>
rcvr: nil<br>
ctxt: nil<br>
Receiver's instance variables:<br>
model: a SHWorkspace<br>
paragraph: a MultiNewParagraph<br>
startBlock: a CharacterBlock with index 201 and character Character<br>
cr and rect...etc...<br>
stopBlock: a CharacterBlock with index 201 and character Character<br>
cr and recta...etc...<br>
beginTypeInBlock: nil<br>
emphasisHere: an Array(a TextColor code: Color red)<br>
initialText: a Text for '<br>
|tr |<br>
tr := TestRunner new.<br>
ToolBuilder open: tr.<br>
tr<br>
...etc...<br>
selectionShowing: false<br>
otherInterval: (403 to: 402)<br>
lastParentLocation: nil<br>
morph: a TextMorphForShout(168)<br>
oldInterval: (106 to: 105)<br>
pivotBlock: a CharacterBlock with index 200 and character Character<br>
cr and rect...etc...<br>
inBackTo: false<br>
<br>
TextMorphForShoutEditor(ParagraphEditor)>>doIt<br>
Receiver: a TextMorphForShoutEditor<br>
Arguments and temporary variables:<br>
<br>
Receiver's instance variables:<br>
model: a SHWorkspace<br>
paragraph: a MultiNewParagraph<br>
startBlock: a CharacterBlock with index 201 and character Character<br>
cr and rect...etc...<br>
stopBlock: a CharacterBlock with index 201 and character Character<br>
cr and recta...etc...<br>
beginTypeInBlock: nil<br>
emphasisHere: an Array(a TextColor code: Color red)<br>
initialText: a Text for '<br>
|tr |<br>
tr := TestRunner new.<br>
ToolBuilder open: tr.<br>
tr<br>
...etc...<br>
selectionShowing: false<br>
otherInterval: (403 to: 402)<br>
lastParentLocation: nil<br>
morph: a TextMorphForShout(168)<br>
oldInterval: (106 to: 105)<br>
pivotBlock: a CharacterBlock with index 200 and character Character<br>
cr and rect...etc...<br>
inBackTo: false<br>
<br>
[] in TextMorphForShoutEditor(ParagraphEditor)>>doIt:<br>
Receiver: a TextMorphForShoutEditor<br>
Arguments and temporary variables:<br>
<<error during printing><br>
Receiver's instance variables:<br>
model: a SHWorkspace<br>
paragraph: a MultiNewParagraph<br>
startBlock: a CharacterBlock with index 201 and character Character<br>
cr and rect...etc...<br>
stopBlock: a CharacterBlock with index 201 and character Character<br>
cr and recta...etc...<br>
beginTypeInBlock: nil<br>
emphasisHere: an Array(a TextColor code: Color red)<br>
initialText: a Text for '<br>
|tr |<br>
tr := TestRunner new.<br>
ToolBuilder open: tr.<br>
tr<br>
...etc...<br>
selectionShowing: false<br>
otherInterval: (403 to: 402)<br>
lastParentLocation: nil<br>
morph: a TextMorphForShout(168)<br>
oldInterval: (106 to: 105)<br>
pivotBlock: a CharacterBlock with index 200 and character Character<br>
cr and rect...etc...<br>
inBackTo: false<br>
<br>
TextMorphForShoutEditor(ParagraphEditor)>>terminateAndInitializeAround:<br>
Receiver: a TextMorphForShoutEditor<br>
Arguments and temporary variables:<br>
aBlock: [closure] in TextMorphForShoutEditor(ParagraphEditor)>>doIt:<br>
Receiver's instance variables:<br>
model: a SHWorkspace<br>
paragraph: a MultiNewParagraph<br>
startBlock: a CharacterBlock with index 201 and character Character<br>
cr and rect...etc...<br>
stopBlock: a CharacterBlock with index 201 and character Character<br>
cr and recta...etc...<br>
beginTypeInBlock: nil<br>
emphasisHere: an Array(a TextColor code: Color red)<br>
initialText: a Text for '<br>
|tr |<br>
tr := TestRunner new.<br>
ToolBuilder open: tr.<br>
tr<br>
...etc...<br>
selectionShowing: false<br>
otherInterval: (403 to: 402)<br>
lastParentLocation: nil<br>
morph: a TextMorphForShout(168)<br>
oldInterval: (106 to: 105)<br>
pivotBlock: a CharacterBlock with index 200 and character Character<br>
cr and rect...etc...<br>
inBackTo: false<br>
<br>
<br>
--- The full stack ---<br>
OpenDBXMacOSX(Object)>>error:<br>
OpenDBXMacOSX(Object)>>externalCallFailed<br>
OpenDBXMacOSX(OpenDBXUnix)>>apiInitialize:backend:host:port:<br>
DBXPostgresPlatform(DBXPlatform)>>createConnection:<br>
DBXConnection>>connect<br>
SqueakDBXDriver>>connect:<br>
[] in SqueakDatabaseAccessor>>loginIfError:<br>
BlockClosure>>on:do:<br>
SqueakDatabaseAccessor(DatabaseAccessor)>>execute:ifError:<br>
SqueakDatabaseAccessor>>loginIfError:<br>
SqueakDatabaseAccessor(DatabaseAccessor)>>login<br>
GlorpDatabaseLoginResource>>setUp<br>
GlorpDatabaseLoginResource(TestResource)>>initialize<br>
GlorpDatabaseLoginResource class(Behavior)>>new<br>
GlorpDatabaseLoginResource class(TestResource class)>>current<br>
GlorpDemoTablePopulatorResource>>setUp<br>
GlorpDemoTablePopulatorResource(TestResource)>>initialize<br>
GlorpDemoTablePopulatorResource class(Behavior)>>new<br>
GlorpDemoTablePopulatorResource class(TestResource class)>>current<br>
GlorpSessionResource>>glorpTestsSystem<br>
GlorpSessionResource>>setUp<br>
GlorpSessionResource(TestResource)>>initialize<br>
GlorpSessionResource class(Behavior)>>new<br>
GlorpSessionResource class(TestResource class)>>current<br>
GlorpSessionResource class(TestResource class)>>isAvailable<br>
[] in TestRunner>>basicSetUpSuite:<br>
Set>>do:<br>
TestRunner>>basicSetUpSuite:<br>
TestRunner>>basicRunSuite:do:<br>
TestRunner>>runSuite:<br>
TestRunner>>runAll<br>
UndefinedObject>>DoIt<br>
Compiler>>evaluate:in:to:notifying:ifFail:logged:<br>
[] in TextMorphForShoutEditor(ParagraphEditor)>>evaluateSelection<br>
BlockClosure>>on:do:<br>
TextMorphForShoutEditor(ParagraphEditor)>>evaluateSelection<br>
TextMorphForShoutEditor(ParagraphEditor)>>doIt<br>
[] in TextMorphForShoutEditor(ParagraphEditor)>>doIt:<br>
TextMorphForShoutEditor(ParagraphEditor)>>terminateAndInitializeAround:<br>
- - - - - - - - - - - - - - -<br>
- - - - - - - - - - - - - - - - - -<br>
TextMorphForShoutEditor(ParagraphEditor)>>doIt:<br>
TextMorphForShoutEditor(ParagraphEditor)>>dispatchOnKeyEvent:with:<br>
TextMorphForShoutEditor(TextMorphEditor)>>dispatchOnKeyEvent:with:<br>
TextMorphForShoutEditor(ParagraphEditor)>>keystroke:<br>
TextMorphForShoutEditor(TextMorphEditor)>>keystroke:<br>
[] in [] in TextMorphForShout(TextMorph)>>keyStroke:<br>
TextMorphForShout(TextMorph)>>handleInteraction:<br>
TextMorphForShout(TextMorphForEditView)>>handleInteraction:<br>
[] in TextMorphForShout(TextMorph)>>keyStroke:<br>
ECToolSet class>>codeCompletionAround:textMorph:keyStroke:<br>
DEVToolSet class>>codeCompletionAround:textMorph:keyStroke:<br>
ToolSet class>>codeCompletionAround:textMorph:keyStroke:<br>
TextMorphForShout(TextMorph)>>keyStroke:<br>
TextMorphForShout(TextMorphForEditView)>>keyStroke:<br>
TextMorphForShout(TextMorph)>>handleKeystroke:<br>
KeyboardEvent>>sentTo:<br>
TextMorphForShout(Morph)>>handleEvent:<br>
TextMorphForShout(Morph)>>handleFocusEvent:<br>
[] in HandMorph>>sendFocusEvent:to:clear:<br>
[] in PasteUpMorph>>becomeActiveDuring:<br>
BlockClosure>>on:do:<br>
PasteUpMorph>>becomeActiveDuring:<br>
HandMorph>>sendFocusEvent:to:clear:<br>
HandMorph>>sendEvent:focus:clear:<br>
HandMorph>>sendKeyboardEvent:<br>
HandMorph>>handleEvent:<br>
HandMorph>>processEvents<br>
[] in WorldState>>doOneCycleNowFor:<br>
Array(SequenceableCollection)>>do:<br>
WorldState>>handsDo:<br>
WorldState>>doOneCycleNowFor:<br>
WorldState>>doOneCycleFor:<br>
PasteUpMorph>>doOneCycle<br>
[] in Project class>>spawnNewProcess<br>
[] in BlockClosure>>newProcess<br>
<br>
<br>
_______________________________________________<br>
Pharo-project mailing list<br>
<a href="mailto:Pharo-project@lists.gforge.inria.fr" target="_blank">Pharo-project@lists.gforge.inria.fr</a><br>
<a href="http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project" target="_blank">http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project</a><br>
</blockquote></div></div></div><br>
</div><br>