From jacanterbury at gmail.com Thu Dec 1 12:18:55 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Thu, 1 Dec 2011 04:18:55 -0800 Subject: How to set subobject properties Message-ID: Hi, I want to set subobject properties on the fly rather than hard code them in the properties box. (eg set an image's size and position on a slide object) I suppose I could define extra attributes in the list and set their values with setattrib() and then in the properties box for the image refer to [width] etc but I'd like to use this as an opportunity to learn a bit more. The Reference manual lists loads of funciton s eg CSlideImage but I can't find any documentation any where that explains what they do or how to use them. Can anyone help/point me in the right direction? Many thanks, John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From evelina at illinois.edu Thu Dec 1 22:12:23 2011 From: evelina at illinois.edu (Evelina Tapia) Date: Thu, 1 Dec 2011 14:12:23 -0800 Subject: How to set subobject properties In-Reply-To: Message-ID: John, I use script like this: c.SetAttrib "something", InputBox$("Enter something value that you want to vary: ") And then have "something" in square brackets as a property. I'd be glad to share a script where this works in my experiment if you'd like :) Evelina On Dec 1, 6:18 am, JACanterbury wrote: > Hi, > > I want to set subobject properties on the fly rather than hard code > them in the properties box. (eg set an image's size and position on a > slide object) > > I suppose I could define extra attributes in the list and set their > values with setattrib() and then in the properties box for the image > refer to [width] etc but I'd like to use this as an opportunity to > learn a bit more. > > The Reference manual lists loads of funciton s eg CSlideImage but I > can't find any documentation any where that explains what they do or > how to use them. > > Can anyone help/point me in the right direction? > > Many thanks, > > John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Dec 1 22:20:27 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 1 Dec 2011 17:20:27 -0500 Subject: How to set subobject properties In-Reply-To: Message-ID: John,m At 12/1/2011 07:18 AM Thursday, you wrote: >I want to set subobject properties on the fly rather than hard code >them in the properties box. (eg set an image's size and position on a >slide object) > >I suppose I could define extra attributes in the list and set their >values with setattrib() and then in the properties box for the image >refer to [width] etc but I'd like to use this as an opportunity to >learn a bit more. Well, this is already the correct solution, for at least three reasons... (1) Using attribute references documents your parameter values in the logged data file. Presumably, you want those values logged with the data anyway. In that case, you will already use c.SetAttrib just to log the values (BTW, you do *not* need to create attributes in a List before you set them with c.SetAttrib, just go right ahead and use c.SetAttrib in inline code), and as long as your program does that already, you might as well just use those as an attribute references (e.g., "[width]") to manipulate sub-object properties. (2) Using attribute references better documents what happens within your sub-objects. If you start monkeying with sub-object properties directly with code, then nothing in the sub-object itself will reflect that, which could be misleading to anyone who later looks at your program (including you two weeks from now). It is poor programming practice to obfuscate program behavior like that. If you use an attribute reference in your sub-object property, then that alerts the reader that that value is subject to change, and to look for the definition of the attribute somewhere else in the program. (3) It is usually easier and cleaner to manipulate sub-object properties by means of attribute references rather than directly. In fact, I would hazard that the designers of E-Prime specifically added this facility as a convenience to users, so to circumvent that rather destroys the purpose of the facility -- it would be like getting an underground garden sprinkler system installed, and then asking, "Where is the garden hose, and how do I hook it up to the spigot?" Remember, for better or worse, this is E-Prime, *not* pure VBA (much less C or C++). Nevertheless, you might have a legitimate reason to manipulate sub-objects directly in code, or you might just be determined to do things the wrong way. In that case... >The Reference manual lists loads of funciton s eg CSlideImage but I >can't find any documentation any where that explains what they do or >how to use them. Contrary to what you may expect based on the title, the "Reference Guide" is *not* the E-Prime technical reference. You will find what counts as a technical reference in the E-Basic Help facility, which you may access from the Help menu in E-Studio, or from the E-Prime menu off the Windows Start menu. Slide sub-object topics (e.g., SlideText) there will include examples of E-Basic code. Bear in mind, however, that the E-Prime documentation is incomplete, and sometimes misleading or just plain wrong, so keep your wits about you and test everything for yourself. >Can anyone help/point me in the right direction? See also my two essays at http://groups.google.com/group/e-prime/browse_thread/thread/5425e03968cab428 and http://groups.google.com/group/e-prime/browse_thread/thread/b0ce54870b723fc3 . -- David McFarlane -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jacanterbury at gmail.com Fri Dec 2 09:38:07 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Fri, 2 Dec 2011 01:38:07 -0800 Subject: How to set subobject properties In-Reply-To: <322f9465-3356-40d4-9cbc-3f264f3a1a4e@s4g2000yqk.googlegroups.com> Message-ID: Hi Evelina, Thanks for your reply but I was interested to find a solution NOT involving attributes. eg the following will change the back colour of a slide. dim theState as SlideState set theState = Slide1.States("Default") theState.BackColor = CColor("green") I'd like to do something similar but for sub object that are on the slide - eg images.. thanks John On Dec 1, 10:12 pm, Evelina Tapia wrote: > John, > > I use script like this: > > c.SetAttrib "something", InputBox$("Enter something value that you > want to vary: ") > > And then have "something" in square brackets as a property. I'd be > glad to share a script where this works in my experiment if you'd > like :) > > Evelina > > On Dec 1, 6:18 am, JACanterbury wrote: > > > > > > > > > Hi, > > > I want to set subobject properties on the fly rather than hard code > > them in the properties box. (eg set an image's size and position on a > > slide object) > > > I suppose I could define extra attributes in the list and set their > > values with setattrib() and then in the properties box for the image > > refer to [width] etc but I'd like to use this as an opportunity to > > learn a bit more. > > > The Reference manual lists loads of funciton s eg CSlideImage but I > > can't find any documentation any where that explains what they do or > > how to use them. > > > Can anyone help/point me in the right direction? > > > Many thanks, > > > John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jacanterbury at gmail.com Fri Dec 2 11:47:19 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Fri, 2 Dec 2011 03:47:19 -0800 Subject: How to set subobject properties In-Reply-To: <4ed7fdb3.4a842b0a.6311.ffffb863SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks for your thoughts and pointers to other resources which look useful. Certainly the 'attribute' approach has merits for transparency and simplicity but as I said, I was interested to use this as an opportunity to stretch my e-prime knowledge. I knew the information was out there but with e-prime it seems that unless you know exactly what you're looking for already, then finding it is harder work than it ought to be. I will report back when I get a solution! cheers, John On Dec 1, 10:20 pm, David McFarlane wrote: > John,m > > At 12/1/2011 07:18 AM Thursday, you wrote: > > >I want to set subobject properties on the fly rather than hard code > >them in the properties box. (eg set an image's size and position on a > >slide object) > > >I suppose I could define extra attributes in the list and set their > >values with setattrib() and then in the properties box for the image > >refer to [width] etc but I'd like to use this as an opportunity to > >learn a bit more. > > Well, this is already the correct solution, for at least three reasons... > > (1) Using attribute references documents your parameter values in the > logged data file.  Presumably, you want those values logged with the > data anyway.  In that case, you will already use c.SetAttrib just to > log the values (BTW, you do *not* need to create attributes in a List > before you set them with c.SetAttrib, just go right ahead and use > c.SetAttrib in inline code), and as long as your program does that > already, you might as well just use those as an attribute references > (e.g., "[width]") to manipulate sub-object properties. > > (2) Using attribute references better documents what happens within > your sub-objects.  If you start monkeying with sub-object properties > directly with code, then nothing in the sub-object itself will > reflect that, which could be misleading to anyone who later looks at > your program (including you two weeks from now).  It is poor > programming practice to obfuscate program behavior like that.  If you > use an attribute reference in your sub-object property, then that > alerts the reader that that value is subject to change, and to look > for the definition of the attribute somewhere else in the program. > > (3) It is usually easier and cleaner to manipulate sub-object > properties by means of attribute references rather than directly.  In > fact, I would hazard that the designers of E-Prime specifically added > this facility as a convenience to users, so to circumvent that rather > destroys the purpose of the facility -- it would be like getting an > underground garden sprinkler system installed, and then asking, > "Where is the garden hose, and how do I hook it up to the > spigot?"  Remember, for better or worse, this is E-Prime, *not* pure > VBA (much less C or C++). > > Nevertheless, you might have a legitimate reason to manipulate > sub-objects directly in code, or you might just be determined to do > things the wrong way.  In that case... > > >The Reference manual lists loads of funciton s eg CSlideImage but I > >can't find any documentation any where that explains what they do or > >how to use them. > > Contrary to what you may expect based on the title, the "Reference > Guide" is *not* the E-Prime technical reference.  You will find what > counts as a technical reference in the E-Basic Help facility, which > you may access from the Help menu in E-Studio, or from the E-Prime > menu off the Windows Start menu.  Slide sub-object topics (e.g., > SlideText) there will include examples of E-Basic code.  Bear in > mind, however, that the E-Prime documentation is incomplete, and > sometimes misleading or just plain wrong, so keep your wits about you > and test everything for yourself. > > >Can anyone help/point me in the right direction? > > See also my two essays at > http://groups.google.com/group/e-prime/browse_thread/thread/5425e0396... > and > http://groups.google.com/group/e-prime/browse_thread/thread/b0ce54870... > . > > -- David McFarlane -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From Jedema at pitt.edu Fri Dec 2 14:44:24 2011 From: Jedema at pitt.edu (Hank Jedema) Date: Fri, 2 Dec 2011 06:44:24 -0800 Subject: E-Prime data file Message-ID: Hi All, Here is something in the E-data file that seems problematic and puzzles me: In a stoptask I use a number of if - then scripts to present a sequence of stimulus slides. The script occurs just after each slide and dependent on the whether a response was received or that the slide simply timed out (i.e. reached the end of its slide duration), the script will advance the trial on to the next slide (let's say slide B if a response was received or slide C if no response was received. The issue that I am having is that when I log the response and onset time etc for slides B and C, the E-data file list values for all, even though the slide B and C are mutually exclusive. I would expect a "NULL" for the slide that was not presented, but instead if slide B was actually presented, it will list the values from a prior trial for slide C duration, slide C response etc, and vice versa. The program is is structured so that 2 nested lists specify the trial type and stimulus duration and the program properly runs the correct number of trials (300). In the E-data file each trial provides one line of data. What am I missing? Thanks very much for your help. Hank -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From d.vinson at ucl.ac.uk Fri Dec 2 14:58:28 2011 From: d.vinson at ucl.ac.uk (David Vinson) Date: Fri, 2 Dec 2011 14:58:28 +0000 Subject: E-Prime data file In-Reply-To: <46a45cde-0513-487b-8a4a-433464ec7e6a@y7g2000vbe.googlegroups.com> Message-ID: Hi Hank, We have experienced something very similar in experiments with contingent designs (skipping one or more data collection objects depending on various characteristics of responses). I'm sure someone else has a more elegant solution but we got around this problem by adding inline code which set these variables to impossible values (e.g. RT = -99) if a particular object was not run on a given trial. Then we filtered such values out of any analyses we conducted. cheers, david On 02/12/2011 14:44, Hank Jedema wrote: > Hi All, > > Here is something in the E-data file that seems problematic and > puzzles me: In a stoptask I use a number of if - then scripts to > present a sequence of stimulus slides. The script occurs just after > each slide and dependent on the whether a response was received or > that the slide simply timed out (i.e. reached the end of its slide > duration), the script will advance the trial on to the next slide > (let's say slide B if a response was received or slide C if no > response was received. The issue that I am having is that when I log > the response and onset time etc for slides B and C, the E-data file > list values for all, even though the slide B and C are mutually > exclusive. I would expect a "NULL" for the slide that was not > presented, but instead if slide B was actually presented, it will list > the values from a prior trial for slide C duration, slide C response > etc, and vice versa. The program is is structured so that 2 nested > lists specify the trial type and stimulus duration and the program > properly runs the correct number of trials (300). In the E-data file > each trial provides one line of data. What am I missing? Thanks very > much for your help. > Hank > -- David Vinson, Ph.D. Senior Postdoctoral Researcher Cognitive, Perceptual and Brain Sciences Research Department University College London 26 Bedford Way, London WC1H 0AP Tel +44 (0)20 7679 5311 (UCL internal ext. 25311) -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Dec 2 15:12:32 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 2 Dec 2011 10:12:32 -0500 Subject: E-Prime data file In-Reply-To: <4ED8E794.7050600@ucl.ac.uk> Message-ID: Hank, Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) If you do get an answer from PST Web Support, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my guess... Suppose your program contains lines like this in the Procedure that runs B or C: c.SetAttrib "B.RT", B.RT c.SetAttrib "C.RT", C.RT i.e., it explicitly logs values for both B and C, even if only one gets presented. Yes, *your* inline code may have If-Thens that log only one or the other, but if you have enabled logging from the Properties Pages of B and C, then that will defeat your inline If-Thens and both will get logged anyway. Don't take my word for that, go look at the full generated code -- every time you enable logging for an object, you will find a set of c.SetAttrib commands immediately after that object runs, *plus* the same commands again just before the c.Log command at the end of the Procedure. This redundancy is E-Prime's attempt to ensure that attributes have proper values at the times needed (but note that PreRelease can defeat this, see Chapter 3 of the E-Prime User's Guide). So what happens when a trial skips B? Well, although attribute values do not survive from one Procdure run to the next, global variable and property values do survive. So the *property* B.RT still has its value from the previous run of the Procedure. Thus, 'c.SetAttrib "B.RT", B.RT' will set the *attribute* "B.RT" to the current value of B.RT, which still lingers from the previous run of the Procedure (follow?), and so that gets logged for the current trial. If that is the case, then the solution is merely to turn off logging from the Properties Pages of B and C, and do all logging explicitly in your inline code. -- David McFarlane, Professional Faultfinder "For a successful technology, reality must take precedence over public relations, for nature cannot be fooled." (Richard Feynman, Nobel prize-winning physicist) At 12/2/2011 09:58 AM Friday, David Vinson wrote: >Hi Hank, > >We have experienced something very similar in experiments with >contingent designs (skipping one or more data collection objects >depending on various characteristics of responses). > >I'm sure someone else has a more elegant solution but we got around >this problem by adding inline code which set these variables to >impossible values (e.g. RT = -99) if a particular object was not run >on a given trial. Then we filtered such values out of any analyses >we conducted. > >cheers, >david > >On 02/12/2011 14:44, Hank Jedema wrote: >>Hi All, >> >>Here is something in the E-data file that seems problematic and >>puzzles me: In a stoptask I use a number of if - then scripts to >>present a sequence of stimulus slides. The script occurs just after >>each slide and dependent on the whether a response was received or >>that the slide simply timed out (i.e. reached the end of its slide >>duration), the script will advance the trial on to the next slide >>(let's say slide B if a response was received or slide C if no >>response was received. The issue that I am having is that when I log >>the response and onset time etc for slides B and C, the E-data file >>list values for all, even though the slide B and C are mutually >>exclusive. I would expect a "NULL" for the slide that was not >>presented, but instead if slide B was actually presented, it will list >>the values from a prior trial for slide C duration, slide C response >>etc, and vice versa. The program is is structured so that 2 nested >>lists specify the trial type and stimulus duration and the program >>properly runs the correct number of trials (300). In the E-data file >>each trial provides one line of data. What am I missing? Thanks very >>much for your help. >>Hank > >-- >David Vinson, Ph.D. >Senior Postdoctoral Researcher >Cognitive, Perceptual and Brain Sciences Research Department >University College London >26 Bedford Way, London WC1H 0AP >Tel +44 (0)20 7679 5311 (UCL internal ext. 25311) -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From Jedema at pitt.edu Mon Dec 5 13:25:52 2011 From: Jedema at pitt.edu (Hank Jedema) Date: Mon, 5 Dec 2011 05:25:52 -0800 Subject: E-Prime data file In-Reply-To: <4ed8eae8.07602a0a.0c86.ffffe91fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Thanks very much for the thorough explanation. I will do as suggested, turn of the logging and explicitly log the values. Thanks again for your help. Hank On Dec 2, 10:12 am, David McFarlane wrote: > Hank, > > Stock reminder:  1) I do not work for PST.  2) PST's trained staff > take any and all questions athttp://support.pstnet.com/e%2Dprime/support/login.asp, and they > strive to respond to all requests in 24-48 hours -- this is pretty > much their substitute for proper documentation, so make full use of > it.  3) If you do get an answer from PST Web Support, please extend > the courtesy of posting their reply back here for the sake of others. > > That said, here is my guess... > > Suppose your program contains lines like this in the Procedure that > runs B or C: > > c.SetAttrib "B.RT", B.RT > c.SetAttrib "C.RT", C.RT > > i.e., it explicitly logs values for both B and C, even if only one > gets presented.  Yes, *your* inline code may have If-Thens that log > only one or the other, but if you have enabled logging from the > Properties Pages of B and C, then that will defeat your inline > If-Thens and both will get logged anyway.  Don't take my word for > that, go look at the full generated code -- every time you enable > logging for an object, you will find a set of c.SetAttrib commands > immediately after that object runs, *plus* the same commands again > just before the c.Log command at the end of the Procedure.  This > redundancy is E-Prime's attempt to ensure that attributes have proper > values at the times needed (but note that PreRelease can defeat this, > see Chapter 3 of the E-Prime User's Guide). > > So what happens when a trial skips B?  Well, although attribute > values do not survive from one Procdure run to the next, global > variable and property values do survive.  So the *property* B.RT > still has its value from the previous run of the Procedure.  Thus, > 'c.SetAttrib "B.RT", B.RT' will set the *attribute* "B.RT" to the > current value of B.RT, which still lingers from the previous run of > the Procedure (follow?), and so that gets logged for the current trial. > > If that is the case, then the solution is merely to turn off logging > from the Properties Pages of B and C, and do all logging explicitly > in your inline code. > > -- David McFarlane, Professional Faultfinder > "For a successful technology, reality must take precedence over > public relations, for nature cannot be fooled."  (Richard Feynman, > Nobel prize-winning physicist) > > At 12/2/2011 09:58 AM Friday, David Vinson wrote: > > > > > > > > >Hi Hank, > > >We have experienced something very similar in experiments with > >contingent designs (skipping one or more data collection objects > >depending on various characteristics of responses). > > >I'm sure someone else has a more elegant solution but we got around > >this problem by adding inline code which set these variables to > >impossible values (e.g. RT = -99) if a particular object was not run > >on a given trial. Then we filtered such values out of any analyses > >we conducted. > > >cheers, > >david > > >On 02/12/2011 14:44, Hank Jedema wrote: > >>Hi All, > > >>Here is something in the E-data file that seems problematic and > >>puzzles me: In a stoptask I use a number of if - then scripts to > >>present a sequence of stimulus slides. The script occurs just after > >>each slide and dependent on the whether a response was received or > >>that the slide simply timed out (i.e. reached the end of its slide > >>duration), the script will advance the trial on to the next slide > >>(let's say slide B if a response was received or slide C if no > >>response was received. The issue that I am having is that when I log > >>the response and onset time etc for slides B and C, the E-data file > >>list values for all, even though the slide B and C are mutually > >>exclusive. I would expect a "NULL" for the slide that was not > >>presented, but instead if slide B was actually presented, it will list > >>the values from a prior trial for slide C duration, slide C response > >>etc, and vice versa. The program is is structured so that 2 nested > >>lists specify the trial type and stimulus duration and the program > >>properly runs the correct number of trials (300). In the E-data file > >>each trial provides one line of data. What am I missing? Thanks very > >>much for your help. > >>Hank > > >-- > >David Vinson, Ph.D. > >Senior Postdoctoral Researcher > >Cognitive, Perceptual and Brain Sciences Research Department > >University College London > >26 Bedford Way, London WC1H 0AP > >Tel +44 (0)20 7679 5311  (UCL internal ext. 25311) -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From elinebp at hotmail.com Wed Dec 7 12:57:45 2011 From: elinebp at hotmail.com (ELine) Date: Wed, 7 Dec 2011 04:57:45 -0800 Subject: Randomize trials, but always keep the last one the same Message-ID: Hi Eprimers I have a a question that I hope you might have some inputs on. I'm designing an experiment which have 5 trials: read, write, listen to normal speech, listen to speech in noise, and relax. I want to design the experiment such that the first four trials are randomized, but the last one should always be relax. I've tried to solve it by creating lists (10 .txt-files) with different order of the tasks, but always ending with 'relax'. The idea was to get a random generator to choose between the lists using the inline (placed in the BlockProc before the TrialList): c.SetAttrib "ListNr", "List"+CStr(random(1,10))+".txt" But E-Prime does not allow the reference to attributes when defining the input file to the list. Does any of you brilliant minds have a suggestion to how I can fix this? I hope to hear from you ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From hester.duffy at gmail.com Wed Dec 7 13:13:49 2011 From: hester.duffy at gmail.com (Hester Duffy) Date: Wed, 7 Dec 2011 13:13:49 +0000 Subject: Randomize trials, but always keep the last one the same In-Reply-To: <8adf2f9f-8313-4ff5-8ff9-30127bc2ee55@m10g2000vbc.googlegroups.com> Message-ID: Hi Eline, Could you not just present the first four trials as a list which can be randomised, and then the final trial as a separate stand-alone event with its own procedure? That is, have a list of four trials, and then a second list consisting only of the Relax trial? H On Wed, Dec 7, 2011 at 12:57 PM, ELine wrote: > Hi Eprimers > > I have a a question that I hope you might have some inputs on. I'm > designing an experiment which have 5 trials: read, write, listen to > normal speech, listen to speech in noise, and relax. I want to design > the experiment such that the first four trials are randomized, but the > last one should always be relax. > > I've tried to solve it by creating lists (10 .txt-files) with > different order of the tasks, but always ending with 'relax'. The idea > was to get a random generator to choose between the lists using the > inline (placed in the BlockProc before the TrialList): > c.SetAttrib "ListNr", "List"+CStr(random(1,10))+".txt" > But E-Prime does not allow the reference to attributes when defining > the input file to the list. > > Does any of you brilliant minds have a suggestion to how I can fix > this? > I hope to hear from you > ELine > > -- > You received this message because you are subscribed to the Google Groups > "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to > e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/e-prime?hl=en. > > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From elinebp at hotmail.com Wed Dec 7 13:19:25 2011 From: elinebp at hotmail.com (ELine) Date: Wed, 7 Dec 2011 05:19:25 -0800 Subject: Randomize trials, but always keep the last one the same In-Reply-To: Message-ID: That was exactly the kind of input I needed. Sometimes you just stare at the same problem for too long Thanks a million ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Wed Dec 7 14:46:33 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Wed, 7 Dec 2011 09:46:33 -0500 Subject: Randomize trials, but always keep the last one the same In-Reply-To: Message-ID: Might also do this with judicious use of a nested List, depending on your requirements. The head List runs five trials in Sequential order, the first four trials pull from a nested List set to Random order, and the fifth trial simply runs straight from the head List at the end. -- David McFarlane Hester Duffy wrote: > Hi Eline, > > Could you not just present the first four trials as a list which can be > randomised, and then the final trial as a separate stand-alone event > with its own procedure? That is, have a list of four trials, and then a > second list consisting only of the Relax trial? > > H > > On Wed, Dec 7, 2011 at 12:57 PM, ELine > wrote: > > Hi Eprimers > > I have a a question that I hope you might have some inputs on. I'm > designing an experiment which have 5 trials: read, write, listen to > normal speech, listen to speech in noise, and relax. I want to design > the experiment such that the first four trials are randomized, but the > last one should always be relax. > > I've tried to solve it by creating lists (10 .txt-files) with > different order of the tasks, but always ending with 'relax'. The idea > was to get a random generator to choose between the lists using the > inline (placed in the BlockProc before the TrialList): > c.SetAttrib "ListNr", "List"+CStr(random(1,10))+".txt" > But E-Prime does not allow the reference to attributes when defining > the input file to the list. > > Does any of you brilliant minds have a suggestion to how I can fix > this? > I hope to hear from you > ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Wed Dec 7 15:11:31 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Wed, 7 Dec 2011 10:11:31 -0500 Subject: Randomize trials, but always keep the last one the same In-Reply-To: <4EDF7C49.7040707@msu.edu> Message-ID: Just to elaborate a bit on what I mean by "depending on your requirements": Simply adding the fifth trial directly in the Procedure after the 4-trial List means that, in the .edat file, the fifth trial will be logged at a different level than the other four (Block vs. Trial, etc.), unless you pull some other tricks (e.g., add a second List to run only the fifth trial, or use inline code to do a c.PushNewFram/c.PopFrame). Using the nested List approach, data from all five trials get logged at the same level. IOW, both approaches have their advantages and disadvantages. -- David McFarlane David McFarlane wrote: > Might also do this with judicious use of a nested List, depending on > your requirements. The head List runs five trials in Sequential order, > the first four trials pull from a nested List set to Random order, and > the fifth trial simply runs straight from the head List at the end. > > -- David McFarlane > > > Hester Duffy wrote: >> Hi Eline, >> >> Could you not just present the first four trials as a list which can >> be randomised, and then the final trial as a separate stand-alone >> event with its own procedure? That is, have a list of four trials, and >> then a second list consisting only of the Relax trial? >> >> H >> >> On Wed, Dec 7, 2011 at 12:57 PM, ELine > > wrote: >> >> Hi Eprimers >> >> I have a a question that I hope you might have some inputs on. I'm >> designing an experiment which have 5 trials: read, write, listen to >> normal speech, listen to speech in noise, and relax. I want to design >> the experiment such that the first four trials are randomized, but >> the >> last one should always be relax. >> >> I've tried to solve it by creating lists (10 .txt-files) with >> different order of the tasks, but always ending with 'relax'. The >> idea >> was to get a random generator to choose between the lists using the >> inline (placed in the BlockProc before the TrialList): >> c.SetAttrib "ListNr", "List"+CStr(random(1,10))+".txt" >> But E-Prime does not allow the reference to attributes when defining >> the input file to the list. >> >> Does any of you brilliant minds have a suggestion to how I can fix >> this? >> I hope to hear from you >> ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jacanterbury at gmail.com Thu Dec 8 10:46:56 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Thu, 8 Dec 2011 02:46:56 -0800 Subject: image 'stretch' but maintaining aspect ratio Message-ID: Hi all, My research indicates that the answer to my question is 'No' but I thought I'd try a quick post incase someone has found a way to do this. I want to display images without altering the aspect ratio (ie width to height proportions) but to fix one of the dimensions, e.g. height and leave eprime to set the appropriate width so that the image doesn't get stretched/squashed. (easy in css but I haven't seen how it can be done in eprime) Any thoughts? Many thanks, John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From Michiel.Spape at nottingham.ac.uk Thu Dec 8 11:23:00 2011 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 8 Dec 2011 11:23:00 +0000 Subject: image 'stretch' but maintaining aspect ratio In-Reply-To: <8ebe0297-aef3-4ca3-b632-42049b981509@cs7g2000vbb.googlegroups.com> Message-ID: Hi, E-Prime is, of course, not quite as convenient as current web-standards, but I see no reason it should be _that_ difficult to arrange. That is, if your images all need to be 500 pixels high, say, and your picture is 200x400, can't you just stretch it by 25% (i.e. width and height become 500/400=125%, or 250x500)? The only thing required is that you need to know the base size of your pictures prior to the stretching operations. Two points, however: E-Prime stretches incredibly badly, it does no form of anti-aliasing whatsoever, so your pictures will become degraded in quality. A lot. Secondly, on that point, and given that it's still science-related, I think it is much better practise to do such things off-line (in photoshop or whatever) - keeping the quality somewhat high and knowing full well in advance what you're going to get. It's a bit of work, but well worth it, generally. Cheers, Mich Dr. Michiel M. Sovijärvi-Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of JACanterbury Sent: 08 December 2011 10:47 To: E-Prime Subject: image 'stretch' but maintaining aspect ratio Hi all, My research indicates that the answer to my question is 'No' but I thought I'd try a quick post incase someone has found a way to do this. I want to display images without altering the aspect ratio (ie width to height proportions) but to fix one of the dimensions, e.g. height and leave eprime to set the appropriate width so that the image doesn't get stretched/squashed. (easy in css but I haven't seen how it can be done in eprime) Any thoughts? Many thanks, John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From baltimore.ben at gmail.com Thu Dec 8 14:13:47 2011 From: baltimore.ben at gmail.com (ben robinson) Date: Thu, 8 Dec 2011 09:13:47 -0500 Subject: image 'stretch' but maintaining aspect ratio In-Reply-To: <09DAEA8BC192C94EB62C8E71FC35A5D93279CD90CB@EXCHANGE3.ad.nottingham.ac.uk> Message-ID: michael's probably got the better suggestion, but i have done this in eprime. it requires, as he said, knowing the base size of the pictures. find this info by right clicking on each of your picture's icons in windows, selecting properties, and then entering the horizontal and vertical pixel information into a List object in eprime. unfortunately, i know of no way to do this but by hand. next you would set your SlideImage object's y-resolution to be a fixed value, say 500 pixels high, and its x-resolution to be [(the original y-res) divided by 500 multiplied by (the original x-res)]. ben On Thu, Dec 8, 2011 at 6:23 AM, Michiel Spape wrote: > Hi, > E-Prime is, of course, not quite as convenient as current web-standards, but I see no reason it should be _that_ difficult to arrange. That is, if your images all need to be 500 pixels high, say, and your picture is 200x400, can't you just stretch it by 25% (i.e. width and height become 500/400=125%, or 250x500)? The only thing required is that you need to know the base size of your pictures prior to the stretching operations. > Two points, however: E-Prime stretches incredibly badly, it does no form of anti-aliasing whatsoever, so your pictures will become degraded in quality. A lot. Secondly, on that point, and given that it's still science-related, I think it is much better practise to do such things off-line (in photoshop or whatever) - keeping the quality somewhat high and knowing full well in advance what you're going to get. It's a bit of work, but well worth it, generally. > Cheers, > Mich > > Dr. Michiel M. Sovijärvi-Spapé > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > www.cognitology.eu > > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of JACanterbury > Sent: 08 December 2011 10:47 > To: E-Prime > Subject: image 'stretch' but maintaining aspect ratio > > Hi all, > > My research indicates that the answer to my question is 'No' but I > thought I'd try a quick post incase someone has found a way to do > this. > > I want to display images without altering the aspect ratio (ie width > to height proportions) but to fix one of the dimensions, e.g. height > and leave eprime to set the appropriate width so that the image > doesn't get stretched/squashed. (easy in css but I haven't seen how it > can be done in eprime) > > Any thoughts? > > Many thanks, > > John > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > > This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it.   Please do not use, copy or disclose the information contained in this message or in any attachment.  Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. > > This message has been checked for viruses but the contents of an attachment > may still contain software viruses which could damage your computer system: > you are advised to perform your own checks. Email communications with the > University of Nottingham may be monitored as permitted by UK legislation. > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Dec 8 15:47:16 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 8 Dec 2011 10:47:16 -0500 Subject: image 'stretch' but maintaining aspect ratio In-Reply-To: Message-ID: John, About the lack of anti-aliasing during stretching... I have never found this to be a problem, but that is because I always start with original images at a higher resolution and then use "Stretch" to effectively "Shrink" the original image, which seems to work OK. That said, I too think it better to just make the orginal images at the size you want displayed, and then just let E-Prime display those without Stretch. I like to reserve Stretch just for doing crude animations where I have to manipulate the image size at run time (although I might also use Stretch at times just to be lazy). -- David McFarlane At 12/8/2011 09:13 AM Thursday, ben robinson wrote: >michael's probably got the better suggestion, but i have done this in eprime. >it requires, as he said, knowing the base size of the pictures. find >this info by right clicking on each of your picture's icons in >windows, selecting properties, and then entering the horizontal and >vertical pixel information into a List object in eprime. >unfortunately, i know of no way to do this but by hand. >next you would set your SlideImage object's y-resolution to be a fixed >value, say 500 pixels high, and its x-resolution to be [(the original >y-res) divided by 500 multiplied by (the original x-res)]. > >ben > >On Thu, Dec 8, 2011 at 6:23 AM, Michiel Spape > wrote: > > Hi, > > E-Prime is, of course, not quite as > convenient as current web-standards, but I see > no reason it should be _that_ difficult to > arrange. That is, if your images all need to be > 500 pixels high, say, and your picture is > 200x400, can't you just stretch it by 25% (i.e. > width and height become 500/400=125%, or > 250x500)? The only thing required is that you > need to know the base size of your pictures prior to the stretching operations. > > Two points, however: E-Prime stretches > incredibly badly, it does no form of > anti-aliasing whatsoever, so your pictures will > become degraded in quality. A lot. Secondly, on > that point, and given that it's still > science-related, I think it is much better > practise to do such things off-line (in > photoshop or whatever) - keeping the quality > somewhat high and knowing full well in advance > what you're going to get. It's a bit of work, but well worth it, generally. > > Cheers, > > Mich > > > > Dr. Michiel M. Sovijärvi-Spapé > > Research Fellow > > Perception & Action group > > University of Nottingham > > School of Psychology > > www.cognitology.eu > > > > > > -----Original Message----- > > From: e-prime at googlegroups.com > [mailto:e-prime at googlegroups.com] On Behalf Of JACanterbury > > Sent: 08 December 2011 10:47 > > To: E-Prime > > Subject: image 'stretch' but maintaining aspect ratio > > > > Hi all, > > > > My research indicates that the answer to my question is 'No' but I > > thought I'd try a quick post incase someone has found a way to do > > this. > > > > I want to display images without altering the aspect ratio (ie width > > to height proportions) but to fix one of the dimensions, e.g. height > > and leave eprime to set the appropriate width so that the image > > doesn't get stretched/squashed. (easy in css but I haven't seen how it > > can be done in eprime) > > > > Any thoughts? > > > > Many thanks, > > > > John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From Michiel.Spape at nottingham.ac.uk Thu Dec 8 16:10:49 2011 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 8 Dec 2011 16:10:49 +0000 Subject: image 'stretch' but maintaining aspect ratio In-Reply-To: <4ee0dc08.096c2a0a.6f63.ffff9135SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David et al., Just a note - be careful, just because you're stretching from higher to lower resolution doesn't mean it gets to be okay. For instance, let's say you have 2 black pixels, 1 white pixel, 3 blue pixels horizontally, next to one another. You want to decrease size by 50%. There will be 1 black pixel to start with, for sure, but what happens with the rest? Your screen doesn't do half pixels, and although anti-aliasing blurs it in such a way that this isn't too obvious, E-Prime (unless 2.0 changed this) doesn't do that. So, what you get is exactly the same as what you get in MSPaint, by decreasing size of this image. I just tested it, the outcome is 1 black pixel, 0 white pixels, and 2 blue pixels. Why is the 0.5 white pixel rounded down (to 0), but the 1.5 blue pixels are rounded up? (to 2) Beats me. A better coder could give the answer, presumably. Anyway, given a high resolution, these changes may not be immediately noticeable, although - if you're a webcoder - you might've seen the effect of what happens with people who present a huge picture with an img tag saying . Ugliness and high server load ensues. As a result, I've always tried telling my students they should process stimulus material as well as possible - and if doing that outside e-prime is more work, then so be it. Cheers, Mich PS: This is me signing off - I'll be back next year, working on a new post doc position over at the Helsinki Institute for Information Technology. Dr. Michiel M. Sovijärvi-Spapé Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 08 December 2011 15:47 To: e-prime at googlegroups.com Subject: Re: image 'stretch' but maintaining aspect ratio John, About the lack of anti-aliasing during stretching... I have never found this to be a problem, but that is because I always start with original images at a higher resolution and then use "Stretch" to effectively "Shrink" the original image, which seems to work OK. That said, I too think it better to just make the orginal images at the size you want displayed, and then just let E-Prime display those without Stretch. I like to reserve Stretch just for doing crude animations where I have to manipulate the image size at run time (although I might also use Stretch at times just to be lazy). -- David McFarlane At 12/8/2011 09:13 AM Thursday, ben robinson wrote: >michael's probably got the better suggestion, but i have done this in eprime. >it requires, as he said, knowing the base size of the pictures. find >this info by right clicking on each of your picture's icons in >windows, selecting properties, and then entering the horizontal and >vertical pixel information into a List object in eprime. >unfortunately, i know of no way to do this but by hand. >next you would set your SlideImage object's y-resolution to be a fixed >value, say 500 pixels high, and its x-resolution to be [(the original >y-res) divided by 500 multiplied by (the original x-res)]. > >ben > >On Thu, Dec 8, 2011 at 6:23 AM, Michiel Spape > wrote: > > Hi, > > E-Prime is, of course, not quite as > convenient as current web-standards, but I see > no reason it should be _that_ difficult to > arrange. That is, if your images all need to be > 500 pixels high, say, and your picture is > 200x400, can't you just stretch it by 25% (i.e. > width and height become 500/400=125%, or > 250x500)? The only thing required is that you > need to know the base size of your pictures prior to the stretching operations. > > Two points, however: E-Prime stretches > incredibly badly, it does no form of > anti-aliasing whatsoever, so your pictures will > become degraded in quality. A lot. Secondly, on > that point, and given that it's still > science-related, I think it is much better > practise to do such things off-line (in > photoshop or whatever) - keeping the quality > somewhat high and knowing full well in advance > what you're going to get. It's a bit of work, but well worth it, generally. > > Cheers, > > Mich > > > > Dr. Michiel M. Sovijärvi-Spapé > > Research Fellow > > Perception & Action group > > University of Nottingham > > School of Psychology > > www.cognitology.eu > > > > > > -----Original Message----- > > From: e-prime at googlegroups.com > [mailto:e-prime at googlegroups.com] On Behalf Of JACanterbury > > Sent: 08 December 2011 10:47 > > To: E-Prime > > Subject: image 'stretch' but maintaining aspect ratio > > > > Hi all, > > > > My research indicates that the answer to my question is 'No' but I > > thought I'd try a quick post incase someone has found a way to do > > this. > > > > I want to display images without altering the aspect ratio (ie width > > to height proportions) but to fix one of the dimensions, e.g. height > > and leave eprime to set the appropriate width so that the image > > doesn't get stretched/squashed. (easy in css but I haven't seen how it > > can be done in eprime) > > > > Any thoughts? > > > > Many thanks, > > > > John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Dec 9 15:51:14 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 9 Dec 2011 10:51:14 -0500 Subject: More (free) E-Prime training & support resources Message-ID: For those of you looking for more, free, E-Prime training resources, check out the videos on PST's YouTube channel (http://www.youtube.com/user/PSTNET ). They have 25 videos so far, and I suppose will come up with more (for which they take suggestions). These are not nearly as good as what I will offer after the new year, but they are free, they may cover specific topics of interest to you, and they are available now. PST also maintains a Facebook page at http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 , and it seems that they even answer questions there (which is more than they do at their Forum). I had not taken note of these resources before, and I don't know how well PST has gotten the word out, so I just wanted to post the info here (and should add this to my "How to Solve E-Prime Puzzles?" essay at http://groups.google.com/group/e-prime/browse_thread/thread/5425e03968cab428 ) -- David McFarlane -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jbuczny at gmail.com Fri Dec 9 17:28:40 2011 From: jbuczny at gmail.com (Jacek Buczny) Date: Fri, 9 Dec 2011 09:28:40 -0800 Subject: calculating sums etc. in virtual shop Message-ID: Hi, Is E-Prime able to calculate sums etc.? For example a subject is going to take a virtual shopping. He has 200 Euro in his wallet. In each trial he is presented with a product, and has to decide "buy" or "not to buy". After each trial I want to present how much he spent and how much money left. After finishing a block of trials I want to present a sum of participant's expenses (200 Euro minus what was bought in all trials). Where should I put information about each product price to calculate a sum correctly? What kind of InLine script I should write down? I will appreciate any help! Thank you in advance! Jacek -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Dec 9 18:28:12 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 9 Dec 2011 13:28:12 -0500 Subject: calculating sums etc. in virtual shop In-Reply-To: <10c5da7a-1f84-4866-955d-945a5396b62f@f11g2000yql.googlegro ups.com> Message-ID: Jacek, Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) In addition, PST takes questions at their Facebook page (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 ), and offers several instructional videos there and on their YouTube channel (http://www.youtube.com/user/PSTNET ) (no Twitter feed yet, though). 4) If you do get an answer from PST Web Support, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... You can computer most anything you like using inline code. See Chapter 4, "Using E-Basic", in the User's Guide that came with E-Prime. If you are a beginner at E-Prime, then you might also see my essays at http://groups.google.com/group/e-prime/browse_thread/thread/5425e03968cab428 and http://groups.google.com/group/e-prime/browse_thread/thread/b0ce54870b723fc3 . -- David McFarlane >Is E-Prime able to calculate sums etc.? For example a subject is going >to take a virtual shopping. He has 200 Euro in his wallet. In each >trial he is presented with a product, and has to decide "buy" or "not >to buy". After each trial I want to present how much he spent and how >much money left. After finishing a block of trials I want to present a >sum of participant's expenses (200 Euro minus what was bought in all >trials). > >Where should I put information about each product price to calculate a >sum correctly? What kind of InLine script I should write down? > >I will appreciate any help! Thank you in advance! > >Jacek -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From brieana.viscomi at gmail.com Sat Dec 10 17:54:57 2011 From: brieana.viscomi at gmail.com (Brieana) Date: Sat, 10 Dec 2011 09:54:57 -0800 Subject: Pulling from multiple nested lists at the same time and on the same text slide Message-ID: Hi, I have 5 procedures. In each procedure, there are 3 text slides each with about 14 text boxes. The reason for so many text boxes is because it was the only way I could figure out how to make a 'faux' table in e- Prime without using any heavy coding. On these text slides, I have some text boxes that are to pull values from one nested list and other textboxes that are to pull values from a different nested list. More specifically, I want each textbox to randomly present only one value from the nested list without repeating any of the values that are being presented in the other textboxes drawing from the same list. After reading the Users Guide, I thought that colon syntax was the way to go. I was able to get the textboxes that were to pull values from one nested list to work so that only one value was presented in each textbox, the order was random, and there weren't any repeats. However, as soon as I added the other nested list to the procedure using the colon syntax method, e-prime would stop running once it got to that particular text slide and read that the last attribute referenced on the slide did not exist (even though it was clearly listed and defined on my list). Would anyone happen to know of a way for half of the textboxes on a slide to only draw one value from a nested list and the other half on the same slide to only draw one value from a different nested list? I found that I was able to have each group of textboxes draw from their respective nested list if I defined each nested list on the same master list and their attributes. However, I want these values to be presented SIMULTANEOUSLY. Since each nested list was referenced in the same master list, I could only get the values to show up on the slide in a sequential manner. I need both sets of values presented together. Any and all ideas or help would be greatly appreciated! Thank you, Brieana -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Sun Dec 11 12:59:45 2011 From: liwenna at gmail.com (liwenna) Date: Sun, 11 Dec 2011 04:59:45 -0800 Subject: Pulling from multiple nested lists at the same time and on the same text slide In-Reply-To: <31194c7d-1fd2-44b5-ac7c-0e74c28af8c7@c18g2000yqj.googlegroups.com> Message-ID: Hello Brieana, First, I wonder why you decided to use colon syntax rather than simple 'brackets' ([variablename] instead of [variablename:x]). I suppose therefore that you have the values need to be used within one trial (procedure) nested in a vertical manner: each value it's own level in a list. This may be more intuitive to you as a person, but it's not to e-prime (hence you have to use the colon's to get e-prime to pull a value of a different level of the list). E-prime's normal 'way to do things' is to use a single level of each list (in a nested series of lists) on each run of a procedure. I would advice you to give in to e-prime's way and transpose the nested lists so that each value is stored in a separate attribute and that each level of a nested list contains a series of values that is to be used within one run of the procedure. I.e. nestedlist1 could have 7 attributes called v1, v2 etc to v7. Each of these 7 values would be used within one run of the procedure and the next level of the list could contain the same values but in a different order etc. in order to achieve randomization of the text locations -> the textboxes 1 to 7 should be given the 'text' [v1], [v2] etc (note: no :x) in order to resolve to/pull out the values of the attributes v1, v2 etc. If you'd set the nestlist to be presented in a random order, a random level of the list would be used for each run of the procedure. If you nest multiple lists e-prime should be able to draw values from two nested lists onto the same slide, provided that the two lists do not have identical attribute names from which values are drawn. I.e. in your master lists in the nested column you can nest multiple lists divided by comma's (nestedlist1, nestedlist2). Then if one of the nested lists contains the values that you need for textboxes 1 to 7 (v1, v2 - v7) and the other the values for textboxes 8 to 14 (v8 - v14), e-prime should run just fine. Hope this helps, AW On 10 dec, 18:54, Brieana wrote: > Hi, > > I have 5 procedures. In each procedure, there are 3 text slides each > with about 14 text boxes. The reason for so many text boxes is because > it was the only way I could figure out how to make a 'faux' table in e- > Prime without using any heavy coding. On these text slides, I have > some text boxes that are to pull values from one nested list and other > textboxes that are to pull values from a different nested list. More > specifically, I want each textbox to randomly present only one value > from the nested list without repeating any of the values that are > being presented in the other textboxes drawing from the same list. > After reading the Users Guide, I thought that colon syntax was the way > to go. I was able to get the textboxes that were to pull values from > one nested list to work so that only one value was presented in each > textbox, the order was random, and there weren't any repeats. However, > as soon as I added the other nested list to the procedure using the > colon syntax method, e-prime would stop running once it got to that > particular text slide and read that the last attribute referenced on > the slide did not exist (even though it was clearly listed and defined > on my list). > > Would anyone happen to know of a way for half of the textboxes on a > slide to only draw one value from a nested list and the other half on > the same slide to only draw one value from a different nested list? > > I found that I was able to have each group of textboxes draw from > their respective nested list if I defined each nested list on the same > master list and their attributes. However, I want these values to be > presented SIMULTANEOUSLY. Since each nested list was referenced in the > same master list, I could only get the values to show up on the slide > in a sequential manner. I need both sets of values presented together. > > Any and all ideas or help would be greatly appreciated! > > Thank you, > > Brieana -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From elinebp at hotmail.com Mon Dec 12 10:48:22 2011 From: elinebp at hotmail.com (ELine) Date: Mon, 12 Dec 2011 02:48:22 -0800 Subject: Return array from function Message-ID: Hello again I have problems returning a 3x3 array from a function. I have an experiment with 9 conditions and to keep things simple I organized them in a 3x3 array. I want to keep track on the number of trials pr condition by updating this array in the end of each trial using a user- specified function that returns a 3x3 array containing one 1 (rest is 0s) specifying which trial has been run. my problem is not with the function itself, but with returning a 3x3 array. I've tried something like this (but of course more complicated): Function UpdateArray(A As Integer, B As Integer) As Variant Dim U(3,3) As Variant for i= 1 to 3 for j= 1 to 3 U(i,j)=0 next j next i U(A,B)=1 UpdateArray=U End Function When compiling E-Prime returns the error: Cannot assign whole array. I also tried with integer instead of variant, but it still doesn't work. And I've tried including ReDim, but without any luck. Can anyone help me? ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Mon Dec 12 10:57:09 2011 From: liwenna at gmail.com (liwenna) Date: Mon, 12 Dec 2011 02:57:09 -0800 Subject: Return array from function In-Reply-To: Message-ID: Must admit that I do not understand the code but I do happen to know that array's start counting levels at 0, so the "top left" cell in a 3*3 array is U(0,0) and the bottom right U(2,2). => if you let i and j run from 0 to 2 rather than 1 to 3, that may help? best, liw On Dec 12, 11:48 am, ELine wrote: > Hello again > > I have problems returning a 3x3 array from a function. I have an > experiment with 9 conditions and to keep things simple I organized > them in a 3x3 array. I want to keep track on the number of trials pr > condition by updating this array in the end of each trial using a user- > specified function that returns a 3x3 array containing one 1 (rest is > 0s) specifying which trial has been run. > > my problem is not with the function itself, but with returning a 3x3 > array. I've tried something like this (but of course more > complicated): > > Function UpdateArray(A As Integer, B As Integer) As Variant >     Dim U(3,3) As Variant > >      for i= 1 to 3 >         for j= 1 to 3 >         U(i,j)=0 >         next j >      next i >      U(A,B)=1 > >     UpdateArray=U > > End Function > > When compiling E-Prime returns the error: Cannot assign whole array. I > also tried with integer instead of variant, but it still doesn't work. > And I've tried including ReDim, but without any luck. > > Can anyone help me? > > ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From elinebp at hotmail.com Mon Dec 12 11:01:27 2011 From: elinebp at hotmail.com (ELine) Date: Mon, 12 Dec 2011 03:01:27 -0800 Subject: Return array from function In-Reply-To: <43a5c3b4-c811-4b1b-9c60-69fd71dd0eb2@l29g2000yqf.googlegroups.com> Message-ID: Yes, that did help Thanks -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From josealejandro.aristizabalc at gmail.com Mon Dec 12 11:26:58 2011 From: josealejandro.aristizabalc at gmail.com (Jose Alejandro Aristizabal C) Date: Mon, 12 Dec 2011 03:26:58 -0800 Subject: change in scale Message-ID: Dear Sr I'm stuck with this script to emulate an analog scale, and I have the problem that by indicating a number on the scale to press next, the data stays red. What I want is the subject to choose a number on the scale go to the next screen to return to choose another value. without actively engaged in red. Sorry for my English. thank you very much 'Designate "theState" as the Default Slide State, which is the 'current ActiveState on the Slide object "Stimulus". Dim theState As SlideState Set theState = Stimulus.States("Default") Dim theSlideText As SlideText Dim strHit As String Dim theMouseResponseData As MouseResponseData 'Was there a response? If Stimulus.InputMasks.Responses.Count > 0 Then 'Get the mouse response. Set theMouseResponseData = CMouseResponseData(Stimulus.InputMasks.Responses(1)) 'Determine string name of SlideText object at 'mouse click coordinates. Assign that value to strHit strHit = theState.HitTest(theMouseResponseData.CursorX, theMouseResponseData.CursorY) End if 'Did the subject click one of the SlideText sub-objects? If strHit <> "" And strHit <> "Image1" And strHit <> "PainUnplesantness" And strHit <> "Confirm" And strHit <> "NoUnpleasantness" And strHit <> "HighestUnpleasantness" And strHit <> "Question2" Then Dim UnpleasantnessRating As Integer 'Gain access to the SlideText sub-object selected 'Change appearance of selected sub-object to provide feedback to the subject. Set theSlideText = CSlideText(Stimulus.States.Item("Default").Objects(strHit)) Dim StrTu As String StrTu = Mid(strHit, 1, 4) Select Case StrTu Case "Unpl" If R2 = False Then theSlideText.BackColor = CColor("red") R2 = True UnpleasantnessRating = CInt(Mid(strHit, 5, 3)) c.Setattrib "Unpleasantness", UnpleasantnessRating Else If theSlideText.BackColor = CColor("red") Then R2 = False eLSE IF theSlidetext.BackColor = CColor("Navy") Then R2 = False End If End If End If End Select Goto RedoTrial Else If R2 = False Then Goto RedoTrial End If If R2 = True Then ConfirmarActivado = True End If End if Botton Scale If ConfirmarActivado = true Then If theSlideText.BackColor = CColor("red")Then theSlidetext.BackColor = CColor("Navy") ConfirmarActivado = true End If End If -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Mon Dec 12 12:33:34 2011 From: liwenna at gmail.com (liwenna) Date: Mon, 12 Dec 2011 04:33:34 -0800 Subject: change in scale In-Reply-To: Message-ID: Although I don't know where your problem lies exactly, here are three things that you could try: 1: move the label "redotrial" to before the inline in which the scale is drawn 2: otherwise (if you need to old scaledrawing to stay for some reason) : insert an inline inbetween the label "redotrial" and the slide with the code " theSlidetext.BackColor = CColor("Navy") " 3: if the problem is not in the returning to the previous slide but rather on a NEXT slide (so... not a next showing of the previous slide) then add an "empty" slide inbetween this one and the next with the background set to opaque and a duration of 20 ms or so. Following that you'll have to redraw the scale for the next slide by copying the scale drawing inline and adjust the code based on the name of the next slide. best, AW On Dec 12, 12:26 pm, Jose Alejandro Aristizabal C wrote: > Dear Sr > > I'm stuck with this script to emulate an analog scale, and I have the > problem that by indicating a number on the scale to press next, the > data stays red. > What I want is the subject to choose a number on the scale go to the > next screen to return to choose another value. without actively > engaged in red. > > Sorry for my English. thank you very much > > 'Designate "theState" as the Default Slide State, which is the > 'current ActiveState on the Slide object "Stimulus". > Dim theState As SlideState > Set theState = Stimulus.States("Default") > > Dim theSlideText As SlideText > > Dim strHit As String > > Dim theMouseResponseData As MouseResponseData > > 'Was there a response? > If Stimulus.InputMasks.Responses.Count > 0 Then > >         'Get the mouse response. >         Set theMouseResponseData = > CMouseResponseData(Stimulus.InputMasks.Responses(1)) > >         'Determine string name of SlideText object at >         'mouse click coordinates. Assign that value to strHit >         strHit = theState.HitTest(theMouseResponseData.CursorX, > theMouseResponseData.CursorY) > > End if >         'Did the subject click one of the SlideText sub-objects? >         If strHit <> "" And strHit <> "Image1" And strHit <> > "PainUnplesantness" And strHit <> "Confirm" And strHit <> > "NoUnpleasantness" And strHit <> "HighestUnpleasantness" And strHit <> > "Question2" Then >                 Dim UnpleasantnessRating As Integer > >                 'Gain access to the SlideText sub-object selected >                 'Change appearance of selected sub-object to provide feedback to the > subject. >                 Set theSlideText = > CSlideText(Stimulus.States.Item("Default").Objects(strHit)) > >                 Dim StrTu As String > >                 StrTu = Mid(strHit, 1, 4) > >                 Select Case StrTu > > Case "Unpl" > >             If R2 = False Then >          theSlideText.BackColor = CColor("red") >                 R2 = True >                 UnpleasantnessRating = CInt(Mid(strHit, 5, 3)) >                 c.Setattrib "Unpleasantness", UnpleasantnessRating >                 Else >                  If theSlideText.BackColor = CColor("red") Then >                   R2 = False >                   eLSE >        IF theSlidetext.BackColor = CColor("Navy") Then >                   R2 = False >                    End If >             End If >                 End If >   End Select > >   Goto RedoTrial > >   Else >   If  R2 = False Then >   Goto RedoTrial >   End If >   If R2 = True Then >   ConfirmarActivado = True >   End If > End if > > Botton Scale > >                 If ConfirmarActivado = true Then >                 If theSlideText.BackColor = CColor("red")Then >         theSlidetext.BackColor = CColor("Navy") >         ConfirmarActivado = true >                 End If > End If -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Mon Dec 12 14:44:35 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 12 Dec 2011 09:44:35 -0500 Subject: Return array from function In-Reply-To: <43a5c3b4-c811-4b1b-9c60-69fd71dd0eb2@l29g2000yqf.googlegroups.com> Message-ID: Eline, Glad that liw solved it for you. I just want to add a few more details in case anyone else stumbles on this thread. By *default*, array indexes in E-Prime/E-Basic start at 0. But you may change that to start instead at 1 using the "Option Base 1" statement in the global User script area -- see the Option Base topic in the E-Basic Help facility. You may also override the default on any array by explicitly declaring its bounds in the Dim statement -- see the Dim topic in the E-Basic Help. E.g., if you were to say Dim U(1 to 3, 1 to 3) As Variant in your original code, then the array initialization loop should work just fine. Exactly because this array index issue can get so confusing, I have taken to always explicitly declaring the index bounds when I declare arrays, that way there is no question. I would advise you and everyone else to do the same. -- David McFarlane liwenna wrote: > Must admit that I do not understand the code but I do happen to know > that array's start counting levels at 0, so the "top left" cell in a > 3*3 array is U(0,0) and the bottom right U(2,2). => if you let i and j > run from 0 to 2 rather than 1 to 3, that may help? > > best, > > liw > > > On Dec 12, 11:48 am, ELine wrote: >> Hello again >> >> I have problems returning a 3x3 array from a function. I have an >> experiment with 9 conditions and to keep things simple I organized >> them in a 3x3 array. I want to keep track on the number of trials pr >> condition by updating this array in the end of each trial using a user- >> specified function that returns a 3x3 array containing one 1 (rest is >> 0s) specifying which trial has been run. >> >> my problem is not with the function itself, but with returning a 3x3 >> array. I've tried something like this (but of course more >> complicated): >> >> Function UpdateArray(A As Integer, B As Integer) As Variant >> Dim U(3,3) As Variant >> >> for i= 1 to 3 >> for j= 1 to 3 >> U(i,j)=0 >> next j >> next i >> U(A,B)=1 >> >> UpdateArray=U >> >> End Function >> >> When compiling E-Prime returns the error: Cannot assign whole array. I >> also tried with integer instead of variant, but it still doesn't work. >> And I've tried including ReDim, but without any luck. >> >> Can anyone help me? >> >> ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Mon Dec 12 15:24:06 2011 From: liwenna at gmail.com (liwenna) Date: Mon, 12 Dec 2011 07:24:06 -0800 Subject: Return array from function In-Reply-To: <4EE61353.9040208@msu.edu> Message-ID: Thanks for that info, David! I'll absolutely take up your advice of defining boundaries in the future since the 0-level regularly confuses me when it try to use loops to fill/pull arrays ^.^ On Dec 12, 3:44 pm, David McFarlane wrote: > Eline, > > Glad that liw solved it for you.  I just want to add a few more details > in case anyone else stumbles on this thread. > > By *default*, array indexes in E-Prime/E-Basic start at 0.  But you may > change that to start instead at 1 using the "Option Base 1" statement in > the global User script area -- see the Option Base topic in the E-Basic > Help facility. > > You may also override the default on any array by explicitly declaring > its bounds in the Dim statement -- see the Dim topic in the E-Basic > Help.  E.g., if you were to say > >         Dim U(1 to 3, 1 to 3) As Variant > > in your original code, then the array initialization loop should work > just fine. > > Exactly because this array index issue can get so confusing, I have > taken to always explicitly declaring the index bounds when I declare > arrays, that way there is no question.  I would advise you and everyone > else to do the same. > > -- David McFarlane > > > > > > > > liwenna wrote: > > Must admit that I do not understand the code but I do happen to know > > that array's start counting levels at 0, so the "top left" cell in a > > 3*3 array is U(0,0) and the bottom right U(2,2). => if you let i and j > > run from 0 to 2 rather than 1 to 3, that may help? > > > best, > > > liw > > > On Dec 12, 11:48 am, ELine wrote: > >> Hello again > > >> I have problems returning a 3x3 array from a function. I have an > >> experiment with 9 conditions and to keep things simple I organized > >> them in a 3x3 array. I want to keep track on the number of trials pr > >> condition by updating this array in the end of each trial using a user- > >> specified function that returns a 3x3 array containing one 1 (rest is > >> 0s) specifying which trial has been run. > > >> my problem is not with the function itself, but with returning a 3x3 > >> array. I've tried something like this (but of course more > >> complicated): > > >> Function UpdateArray(A As Integer, B As Integer) As Variant > >>     Dim U(3,3) As Variant > > >>      for i= 1 to 3 > >>         for j= 1 to 3 > >>         U(i,j)=0 > >>         next j > >>      next i > >>      U(A,B)=1 > > >>     UpdateArray=U > > >> End Function > > >> When compiling E-Prime returns the error: Cannot assign whole array. I > >> also tried with integer instead of variant, but it still doesn't work. > >> And I've tried including ReDim, but without any luck. > > >> Can anyone help me? > > >> ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jacanterbury at gmail.com Tue Dec 13 10:19:46 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Tue, 13 Dec 2011 02:19:46 -0800 Subject: Configuring SRBox port number on the fly (and other parameters) Message-ID: Not a question, but I thought I'd post some recent findings, cobbled together from various posts and a little experimentation [ This may be explained succinctly elsewhere but I couldn't find all the info I needed in one place so please excuse the posting if its duplicating info you already know] - Hopefully they'll be of interest to others at some point. Usually I set the commport for the SR response box by using the menu options in E-studio: Edit || Experiment || Devices tab || SRBox || and set the Port setting from the drop-down menu [values 1-4 allowed] Unfortunately we have a whole range of PCs that are used to run studies some using serial ports and some using USB serial port emulators and having the port hard-wired in the ebs2 file is a pain. So, how to override this at runtime? There are (at least) 2 ways to override the port setting that's compiled in the ebs2 file. The first is at the this can be overridden by making utilising E- primes global settings which are stored in a text file e.g. C:\Users\user_name\Documents\My Experiments\Global.startupInfo You can get E-prime to generate this for you in E-studio as follows: -Edit || Experiment || Startup Info || Edit global values || then click the Add button (green PLUS sign) and choose SRBox.Commport from the dropdown list then click into the field alongside it and enter the desired port value. -Click SAVE and the OK. NB this creates an xml type text file that can be edited using a text editor (eg notepad) An example is :- 1 Note that the above will set the SRBox.Commport setting to use port 1 It seemed to me though that using the Global.startupInfo file was not ideal though as it's distinct to user profiles [ though you may well be able to set this for all users by setting the InitPath key in the registry (HKEY_CURRENT_USER\Software\Psychology Software Tools\E-Prime\1.1\E-DataAid\ViewOptions\InitPath ) but I've not experimented with that ] An alternative way is to user a 'local' config file ( e.g "my_exp_name.startupInfo" ). Again, you can get E-prime to create this for you, as above but click on "Edit Local Values" (instead of global). This creates the xml file in your experiment folder alongside your ebs2 file. (eg stroop.startupInfo) Now, users can then edit this file to change the port number if necessary without having to regenerate the ebs2 file in E-Studio. Note that this local file will take precedence over the Global file if it exists which in turn takes precedence over the value set on the Devices tab that's compiled into the ebs2 file. I've only focused on setting the commport but you can change a whole load of settings in the same way. The drop-down list on the 'add' screen lists them all (seems to be everything that's available through the 'Devices' tab) Hope thats of interest to someone! cheers, John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From supercarv at googlemail.com Mon Dec 19 15:26:41 2011 From: supercarv at googlemail.com (Richard Carvey) Date: Mon, 19 Dec 2011 07:26:41 -0800 Subject: Using mouse click to select one of several alternative responses Message-ID: Hi, I'm trying to build an experiment in which nine items are displayed on screen, and participants need to select one fo them using the mouse. I have seen a couple of people mention issues with clicks anywhere on screen being registered as responses, but I would like to make sure that only clicks within the bounds of the nine items are accepted, and that the specific item clicked is logged. Clicking any of the nine items should advanc the program, no one answer is correct or incorrect. If anybody could offer me some advice on how to achieve this, it would be greatly appreciated. Annoyingly, whoever installed E-Prime (1.2, btw) on this computer saw fit not install the help functions correctly/ at all. Thanks, Richard -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From pfc.groot at gmail.com Mon Dec 19 22:44:32 2011 From: pfc.groot at gmail.com (Paul Groot) Date: Mon, 19 Dec 2011 23:44:32 +0100 Subject: Using mouse click to select one of several alternative responses In-Reply-To: <8d39c0dd-137c-4ad2-bb4e-8c60c4592ab6@p9g2000vbb.googlegroups.com> Message-ID: Hi Richard, You might have a look at the VAS example script I posted a while ago on http://pfcgroot.nl/e-prime/83-example-scripts/80-visual-analogue-scale-example-for-e-prime.html. This example contains a bit more script then you need, but the ACK_HandleResponse function (in the user script tab) demonstrates how you can use boundaries of (text-)objects as hit area for mouse clicks. The core of this piece of script uses the Mouse.GetCursorPos and Object.HitTest functions to implement two user confirmation buttons. It can be easily adapted for more buttons. Also, instead of using the boundaries of a slide element (i.e. text or image), you can also make your own hit-test function. cheers, Paul Groot 2011/12/19 Richard Carvey : > Hi, > > I'm trying to build an experiment in which nine items are displayed on > screen, and participants need to select one fo them using the mouse. I > have seen a couple of people mention issues with clicks anywhere on > screen being registered as responses, but I would like to make sure > that only clicks within the bounds of the nine items are accepted, and > that the specific item clicked is logged. Clicking any of the nine > items should advanc the program, no one answer is correct or > incorrect. > > If anybody could offer me some advice on how to achieve this, it would > be greatly appreciated. Annoyingly, whoever installed E-Prime (1.2, > btw) on this computer saw fit not install the help functions correctly/ > at all. > > Thanks, > > Richard > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From supercarv at googlemail.com Tue Dec 20 11:57:13 2011 From: supercarv at googlemail.com (Richard Carvey) Date: Tue, 20 Dec 2011 03:57:13 -0800 Subject: Using mouse click to select one of several alternative responses In-Reply-To: Message-ID: Hi Paul, Thanks for that. It looks like it makes sense to me, and should be quite helpful. I'll have a crack at making it work after Christmas. I appreciate the speedy reply though. Thanks again, Richard On Dec 19, 10:44 pm, Paul Groot wrote: > Hi Richard, > > You might have a look at the VAS example script I posted a while ago > onhttp://pfcgroot.nl/e-prime/83-example-scripts/80-visual-analogue-scal.... > This example contains a bit more script then you need, but the > ACK_HandleResponse function (in the user script tab) demonstrates how > you can use boundaries of (text-)objects as hit area for mouse clicks. > The core of this piece of script uses the Mouse.GetCursorPos and > Object.HitTest functions to implement two user confirmation buttons. > It can be easily adapted for more buttons. Also, instead of using the > boundaries of a slide element (i.e. text or image), you can also make > your own hit-test function. > > cheers, > Paul Groot > > 2011/12/19 Richard Carvey : > > > > > Hi, > > > I'm trying to build an experiment in which nine items are displayed on > > screen, and participants need to select one fo them using the mouse. I > > have seen a couple of people mention issues with clicks anywhere on > > screen being registered as responses, but I would like to make sure > > that only clicks within the bounds of the nine items are accepted, and > > that the specific item clicked is logged. Clicking any of the nine > > items should advanc the program, no one answer is correct or > > incorrect. > > > If anybody could offer me some advice on how to achieve this, it would > > be greatly appreciated. Annoyingly, whoever installed E-Prime (1.2, > > btw) on this computer saw fit not install the help functions correctly/ > > at all. > > > Thanks, > > > Richard > > > -- > > You received this message because you are subscribed to the Google Groups "E-Prime" group. > > To post to this group, send email to e-prime at googlegroups.com. > > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > > For more options, visit this group athttp://groups.google.com/group/e-prime?hl=en.- Hide quoted text - > > - Show quoted text - -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From brieana.viscomi at gmail.com Tue Dec 20 20:20:26 2011 From: brieana.viscomi at gmail.com (Brieana) Date: Tue, 20 Dec 2011 12:20:26 -0800 Subject: Pulling from multiple nested lists at the same time and on the same text slide In-Reply-To: Message-ID: Thanks for the response! Silly me did not even think about using a comma between the names of nested lists located on the same level. That helped a lot and I'm happy to report that everything works just as I wanted it to now. Thanks again, Brieana On Dec 11, 7:59 am, liwenna wrote: > Hello Brieana, > > First, I wonder why you decided to use colon syntax rather than simple > 'brackets' ([variablename] instead of [variablename:x]). I suppose > therefore that you have the values need to be used within one trial > (procedure) nested in a vertical manner: each value it's own level in > a list. This may be more intuitive to you as a person, but it's not to > e-prime (hence you have to use the colon's to get e-prime to pull a > value of a different level of the list). > > E-prime's normal 'way to do things' is to use a single level of each > list (in a nested series of lists) on each run of a procedure. I would > advice you to give in to e-prime's way and transpose the nested lists > so that each value is stored in a separate attribute and that each > level of a nested list contains a series of values that is to be used > within one run of the procedure. I.e. nestedlist1 could have 7 > attributes called v1, v2 etc to v7. Each of these 7 values would be > used within one run of the procedure and the next level of the list > could contain the same values but in a different order etc. in order > to achieve randomization of the text locations -> the textboxes 1 to 7 > should be given the 'text' [v1], [v2] etc (note: no :x) in order to > resolve to/pull out the values of the attributes v1, v2 etc. If you'd > set the nestlist to be presented in a random order, a random level of > the list would be used for each run of the procedure. > > If you nest multiple lists e-prime should be able to draw values from > two nested lists onto the same slide, provided that the two lists do > not have identical attribute names from which values are drawn. I.e. > in your master lists in the nested column you can nest multiple lists > divided by comma's (nestedlist1, nestedlist2). Then if one of the > nested lists contains the values that you need for textboxes 1 to 7 > (v1, v2 - v7) and the other the values for textboxes 8 to 14 (v8 - > v14), e-prime should run just fine. > > Hope this helps, > > AW > > On 10 dec, 18:54, Brieana wrote: > > > > > > > > > Hi, > > > I have 5 procedures. In each procedure, there are 3 text slides each > > with about 14 text boxes. The reason for so many text boxes is because > > it was the only way I could figure out how to make a 'faux' table in e- > > Prime without using any heavy coding. On these text slides, I have > > some text boxes that are to pull values from one nested list and other > > textboxes that are to pull values from a different nested list. More > > specifically, I want each textbox to randomly present only one value > > from the nested list without repeating any of the values that are > > being presented in the other textboxes drawing from the same list. > > After reading the Users Guide, I thought that colon syntax was the way > > to go. I was able to get the textboxes that were to pull values from > > one nested list to work so that only one value was presented in each > > textbox, the order was random, and there weren't any repeats. However, > > as soon as I added the other nested list to the procedure using the > > colon syntax method, e-prime would stop running once it got to that > > particular text slide and read that the last attribute referenced on > > the slide did not exist (even though it was clearly listed and defined > > on my list). > > > Would anyone happen to know of a way for half of the textboxes on a > > slide to only draw one value from a nested list and the other half on > > the same slide to only draw one value from a different nested list? > > > I found that I was able to have each group of textboxes draw from > > their respective nested list if I defined each nested list on the same > > master list and their attributes. However, I want these values to be > > presented SIMULTANEOUSLY. Since each nested list was referenced in the > > same master list, I could only get the values to show up on the slide > > in a sequential manner. I need both sets of values presented together. > > > Any and all ideas or help would be greatly appreciated! > > > Thank you, > > > Brieana -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From brieana.viscomi at gmail.com Tue Dec 20 20:25:14 2011 From: brieana.viscomi at gmail.com (Brieana) Date: Tue, 20 Dec 2011 12:25:14 -0800 Subject: Bolding the highest value out of a series of randomly presented values Message-ID: Hello, Does anyone know of a way to have e-Prime randomly pull and present numeric values in textboxes while also having it bold the highest (or lowest) value that's presented? My study is set up so that participants are like bidders in an auction and, at times, must see the previous highest bid bolded. Any and all insight would be greatly appreciated! Thank you, Brieana -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From ioannis.arapakis at hotmail.com Fri Dec 23 19:47:47 2011 From: ioannis.arapakis at hotmail.com (ioannis.arapakis at hotmail.com) Date: Fri, 23 Dec 2011 11:47:47 -0800 Subject: detection of image display & triggering of TMS Message-ID: Hi, I want to create an Inline object that will detect in time and accurately when an image display is presented - onset time - (with an if statement?) and then trigger after 30 ms the TMS pulse. I am not sure what the code should be, neither if the inline should precede the imagedisplay object. Could you please suggest some code? -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From brad.mattan at gmail.com Sat Dec 24 04:15:58 2011 From: brad.mattan at gmail.com (Brad Mattan) Date: Fri, 23 Dec 2011 20:15:58 -0800 Subject: Correct, Incorrect and No Response: Differential Feedback Display Times Message-ID: I am trying to program e prime to display "correct" after a correct response for 1000 ms, and "incorrect" after an incorrect response for 1500ms. I also wish to display "please try to respond faster" for 2000 ms in the event a participant takes longer than 1500 ms to respond to the stimulus. Thanks to a previous post, I used the following inline to code for the correct and incorrect responses. I have also been able to set the response time limit at 1500 ms. However, I have been unable to determine how to set the no response feedback display at 2000 ms. Any suggestions would be much appreciated! -Brad Const DurCorrect as Integer = 1000 Const DurIncorrect as Integer = 1500 If StimText.ACC Then ' correct answer c.SetAttrib "FeedDur", DurCorrect Else ' incorrect answer c.SetAttrib "FeedDur", DurIncorrect End If -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jacanterbury at gmail.com Thu Dec 1 12:18:55 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Thu, 1 Dec 2011 04:18:55 -0800 Subject: How to set subobject properties Message-ID: Hi, I want to set subobject properties on the fly rather than hard code them in the properties box. (eg set an image's size and position on a slide object) I suppose I could define extra attributes in the list and set their values with setattrib() and then in the properties box for the image refer to [width] etc but I'd like to use this as an opportunity to learn a bit more. The Reference manual lists loads of funciton s eg CSlideImage but I can't find any documentation any where that explains what they do or how to use them. Can anyone help/point me in the right direction? Many thanks, John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From evelina at illinois.edu Thu Dec 1 22:12:23 2011 From: evelina at illinois.edu (Evelina Tapia) Date: Thu, 1 Dec 2011 14:12:23 -0800 Subject: How to set subobject properties In-Reply-To: Message-ID: John, I use script like this: c.SetAttrib "something", InputBox$("Enter something value that you want to vary: ") And then have "something" in square brackets as a property. I'd be glad to share a script where this works in my experiment if you'd like :) Evelina On Dec 1, 6:18?am, JACanterbury wrote: > Hi, > > I want to set subobject properties on the fly rather than hard code > them in the properties box. (eg set an image's size and position on a > slide object) > > I suppose I could define extra attributes in the list and set their > values with setattrib() and then in the properties box for the image > refer to [width] etc but I'd like to use this as an opportunity to > learn a bit more. > > The Reference manual lists loads of funciton s eg CSlideImage but I > can't find any documentation any where that explains what they do or > how to use them. > > Can anyone help/point me in the right direction? > > Many thanks, > > John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Dec 1 22:20:27 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 1 Dec 2011 17:20:27 -0500 Subject: How to set subobject properties In-Reply-To: Message-ID: John,m At 12/1/2011 07:18 AM Thursday, you wrote: >I want to set subobject properties on the fly rather than hard code >them in the properties box. (eg set an image's size and position on a >slide object) > >I suppose I could define extra attributes in the list and set their >values with setattrib() and then in the properties box for the image >refer to [width] etc but I'd like to use this as an opportunity to >learn a bit more. Well, this is already the correct solution, for at least three reasons... (1) Using attribute references documents your parameter values in the logged data file. Presumably, you want those values logged with the data anyway. In that case, you will already use c.SetAttrib just to log the values (BTW, you do *not* need to create attributes in a List before you set them with c.SetAttrib, just go right ahead and use c.SetAttrib in inline code), and as long as your program does that already, you might as well just use those as an attribute references (e.g., "[width]") to manipulate sub-object properties. (2) Using attribute references better documents what happens within your sub-objects. If you start monkeying with sub-object properties directly with code, then nothing in the sub-object itself will reflect that, which could be misleading to anyone who later looks at your program (including you two weeks from now). It is poor programming practice to obfuscate program behavior like that. If you use an attribute reference in your sub-object property, then that alerts the reader that that value is subject to change, and to look for the definition of the attribute somewhere else in the program. (3) It is usually easier and cleaner to manipulate sub-object properties by means of attribute references rather than directly. In fact, I would hazard that the designers of E-Prime specifically added this facility as a convenience to users, so to circumvent that rather destroys the purpose of the facility -- it would be like getting an underground garden sprinkler system installed, and then asking, "Where is the garden hose, and how do I hook it up to the spigot?" Remember, for better or worse, this is E-Prime, *not* pure VBA (much less C or C++). Nevertheless, you might have a legitimate reason to manipulate sub-objects directly in code, or you might just be determined to do things the wrong way. In that case... >The Reference manual lists loads of funciton s eg CSlideImage but I >can't find any documentation any where that explains what they do or >how to use them. Contrary to what you may expect based on the title, the "Reference Guide" is *not* the E-Prime technical reference. You will find what counts as a technical reference in the E-Basic Help facility, which you may access from the Help menu in E-Studio, or from the E-Prime menu off the Windows Start menu. Slide sub-object topics (e.g., SlideText) there will include examples of E-Basic code. Bear in mind, however, that the E-Prime documentation is incomplete, and sometimes misleading or just plain wrong, so keep your wits about you and test everything for yourself. >Can anyone help/point me in the right direction? See also my two essays at http://groups.google.com/group/e-prime/browse_thread/thread/5425e03968cab428 and http://groups.google.com/group/e-prime/browse_thread/thread/b0ce54870b723fc3 . -- David McFarlane -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jacanterbury at gmail.com Fri Dec 2 09:38:07 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Fri, 2 Dec 2011 01:38:07 -0800 Subject: How to set subobject properties In-Reply-To: <322f9465-3356-40d4-9cbc-3f264f3a1a4e@s4g2000yqk.googlegroups.com> Message-ID: Hi Evelina, Thanks for your reply but I was interested to find a solution NOT involving attributes. eg the following will change the back colour of a slide. dim theState as SlideState set theState = Slide1.States("Default") theState.BackColor = CColor("green") I'd like to do something similar but for sub object that are on the slide - eg images.. thanks John On Dec 1, 10:12?pm, Evelina Tapia wrote: > John, > > I use script like this: > > c.SetAttrib "something", InputBox$("Enter something value that you > want to vary: ") > > And then have "something" in square brackets as a property. I'd be > glad to share a script where this works in my experiment if you'd > like :) > > Evelina > > On Dec 1, 6:18?am, JACanterbury wrote: > > > > > > > > > Hi, > > > I want to set subobject properties on the fly rather than hard code > > them in the properties box. (eg set an image's size and position on a > > slide object) > > > I suppose I could define extra attributes in the list and set their > > values with setattrib() and then in the properties box for the image > > refer to [width] etc but I'd like to use this as an opportunity to > > learn a bit more. > > > The Reference manual lists loads of funciton s eg CSlideImage but I > > can't find any documentation any where that explains what they do or > > how to use them. > > > Can anyone help/point me in the right direction? > > > Many thanks, > > > John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jacanterbury at gmail.com Fri Dec 2 11:47:19 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Fri, 2 Dec 2011 03:47:19 -0800 Subject: How to set subobject properties In-Reply-To: <4ed7fdb3.4a842b0a.6311.ffffb863SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David, Thanks for your thoughts and pointers to other resources which look useful. Certainly the 'attribute' approach has merits for transparency and simplicity but as I said, I was interested to use this as an opportunity to stretch my e-prime knowledge. I knew the information was out there but with e-prime it seems that unless you know exactly what you're looking for already, then finding it is harder work than it ought to be. I will report back when I get a solution! cheers, John On Dec 1, 10:20?pm, David McFarlane wrote: > John,m > > At 12/1/2011 07:18 AM Thursday, you wrote: > > >I want to set subobject properties on the fly rather than hard code > >them in the properties box. (eg set an image's size and position on a > >slide object) > > >I suppose I could define extra attributes in the list and set their > >values with setattrib() and then in the properties box for the image > >refer to [width] etc but I'd like to use this as an opportunity to > >learn a bit more. > > Well, this is already the correct solution, for at least three reasons... > > (1) Using attribute references documents your parameter values in the > logged data file. ?Presumably, you want those values logged with the > data anyway. ?In that case, you will already use c.SetAttrib just to > log the values (BTW, you do *not* need to create attributes in a List > before you set them with c.SetAttrib, just go right ahead and use > c.SetAttrib in inline code), and as long as your program does that > already, you might as well just use those as an attribute references > (e.g., "[width]") to manipulate sub-object properties. > > (2) Using attribute references better documents what happens within > your sub-objects. ?If you start monkeying with sub-object properties > directly with code, then nothing in the sub-object itself will > reflect that, which could be misleading to anyone who later looks at > your program (including you two weeks from now). ?It is poor > programming practice to obfuscate program behavior like that. ?If you > use an attribute reference in your sub-object property, then that > alerts the reader that that value is subject to change, and to look > for the definition of the attribute somewhere else in the program. > > (3) It is usually easier and cleaner to manipulate sub-object > properties by means of attribute references rather than directly. ?In > fact, I would hazard that the designers of E-Prime specifically added > this facility as a convenience to users, so to circumvent that rather > destroys the purpose of the facility -- it would be like getting an > underground garden sprinkler system installed, and then asking, > "Where is the garden hose, and how do I hook it up to the > spigot?" ?Remember, for better or worse, this is E-Prime, *not* pure > VBA (much less C or C++). > > Nevertheless, you might have a legitimate reason to manipulate > sub-objects directly in code, or you might just be determined to do > things the wrong way. ?In that case... > > >The Reference manual lists loads of funciton s eg CSlideImage but I > >can't find any documentation any where that explains what they do or > >how to use them. > > Contrary to what you may expect based on the title, the "Reference > Guide" is *not* the E-Prime technical reference. ?You will find what > counts as a technical reference in the E-Basic Help facility, which > you may access from the Help menu in E-Studio, or from the E-Prime > menu off the Windows Start menu. ?Slide sub-object topics (e.g., > SlideText) there will include examples of E-Basic code. ?Bear in > mind, however, that the E-Prime documentation is incomplete, and > sometimes misleading or just plain wrong, so keep your wits about you > and test everything for yourself. > > >Can anyone help/point me in the right direction? > > See also my two essays at > http://groups.google.com/group/e-prime/browse_thread/thread/5425e0396... > and > http://groups.google.com/group/e-prime/browse_thread/thread/b0ce54870... > . > > -- David McFarlane -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From Jedema at pitt.edu Fri Dec 2 14:44:24 2011 From: Jedema at pitt.edu (Hank Jedema) Date: Fri, 2 Dec 2011 06:44:24 -0800 Subject: E-Prime data file Message-ID: Hi All, Here is something in the E-data file that seems problematic and puzzles me: In a stoptask I use a number of if - then scripts to present a sequence of stimulus slides. The script occurs just after each slide and dependent on the whether a response was received or that the slide simply timed out (i.e. reached the end of its slide duration), the script will advance the trial on to the next slide (let's say slide B if a response was received or slide C if no response was received. The issue that I am having is that when I log the response and onset time etc for slides B and C, the E-data file list values for all, even though the slide B and C are mutually exclusive. I would expect a "NULL" for the slide that was not presented, but instead if slide B was actually presented, it will list the values from a prior trial for slide C duration, slide C response etc, and vice versa. The program is is structured so that 2 nested lists specify the trial type and stimulus duration and the program properly runs the correct number of trials (300). In the E-data file each trial provides one line of data. What am I missing? Thanks very much for your help. Hank -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From d.vinson at ucl.ac.uk Fri Dec 2 14:58:28 2011 From: d.vinson at ucl.ac.uk (David Vinson) Date: Fri, 2 Dec 2011 14:58:28 +0000 Subject: E-Prime data file In-Reply-To: <46a45cde-0513-487b-8a4a-433464ec7e6a@y7g2000vbe.googlegroups.com> Message-ID: Hi Hank, We have experienced something very similar in experiments with contingent designs (skipping one or more data collection objects depending on various characteristics of responses). I'm sure someone else has a more elegant solution but we got around this problem by adding inline code which set these variables to impossible values (e.g. RT = -99) if a particular object was not run on a given trial. Then we filtered such values out of any analyses we conducted. cheers, david On 02/12/2011 14:44, Hank Jedema wrote: > Hi All, > > Here is something in the E-data file that seems problematic and > puzzles me: In a stoptask I use a number of if - then scripts to > present a sequence of stimulus slides. The script occurs just after > each slide and dependent on the whether a response was received or > that the slide simply timed out (i.e. reached the end of its slide > duration), the script will advance the trial on to the next slide > (let's say slide B if a response was received or slide C if no > response was received. The issue that I am having is that when I log > the response and onset time etc for slides B and C, the E-data file > list values for all, even though the slide B and C are mutually > exclusive. I would expect a "NULL" for the slide that was not > presented, but instead if slide B was actually presented, it will list > the values from a prior trial for slide C duration, slide C response > etc, and vice versa. The program is is structured so that 2 nested > lists specify the trial type and stimulus duration and the program > properly runs the correct number of trials (300). In the E-data file > each trial provides one line of data. What am I missing? Thanks very > much for your help. > Hank > -- David Vinson, Ph.D. Senior Postdoctoral Researcher Cognitive, Perceptual and Brain Sciences Research Department University College London 26 Bedford Way, London WC1H 0AP Tel +44 (0)20 7679 5311 (UCL internal ext. 25311) -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Dec 2 15:12:32 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 2 Dec 2011 10:12:32 -0500 Subject: E-Prime data file In-Reply-To: <4ED8E794.7050600@ucl.ac.uk> Message-ID: Hank, Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) If you do get an answer from PST Web Support, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my guess... Suppose your program contains lines like this in the Procedure that runs B or C: c.SetAttrib "B.RT", B.RT c.SetAttrib "C.RT", C.RT i.e., it explicitly logs values for both B and C, even if only one gets presented. Yes, *your* inline code may have If-Thens that log only one or the other, but if you have enabled logging from the Properties Pages of B and C, then that will defeat your inline If-Thens and both will get logged anyway. Don't take my word for that, go look at the full generated code -- every time you enable logging for an object, you will find a set of c.SetAttrib commands immediately after that object runs, *plus* the same commands again just before the c.Log command at the end of the Procedure. This redundancy is E-Prime's attempt to ensure that attributes have proper values at the times needed (but note that PreRelease can defeat this, see Chapter 3 of the E-Prime User's Guide). So what happens when a trial skips B? Well, although attribute values do not survive from one Procdure run to the next, global variable and property values do survive. So the *property* B.RT still has its value from the previous run of the Procedure. Thus, 'c.SetAttrib "B.RT", B.RT' will set the *attribute* "B.RT" to the current value of B.RT, which still lingers from the previous run of the Procedure (follow?), and so that gets logged for the current trial. If that is the case, then the solution is merely to turn off logging from the Properties Pages of B and C, and do all logging explicitly in your inline code. -- David McFarlane, Professional Faultfinder "For a successful technology, reality must take precedence over public relations, for nature cannot be fooled." (Richard Feynman, Nobel prize-winning physicist) At 12/2/2011 09:58 AM Friday, David Vinson wrote: >Hi Hank, > >We have experienced something very similar in experiments with >contingent designs (skipping one or more data collection objects >depending on various characteristics of responses). > >I'm sure someone else has a more elegant solution but we got around >this problem by adding inline code which set these variables to >impossible values (e.g. RT = -99) if a particular object was not run >on a given trial. Then we filtered such values out of any analyses >we conducted. > >cheers, >david > >On 02/12/2011 14:44, Hank Jedema wrote: >>Hi All, >> >>Here is something in the E-data file that seems problematic and >>puzzles me: In a stoptask I use a number of if - then scripts to >>present a sequence of stimulus slides. The script occurs just after >>each slide and dependent on the whether a response was received or >>that the slide simply timed out (i.e. reached the end of its slide >>duration), the script will advance the trial on to the next slide >>(let's say slide B if a response was received or slide C if no >>response was received. The issue that I am having is that when I log >>the response and onset time etc for slides B and C, the E-data file >>list values for all, even though the slide B and C are mutually >>exclusive. I would expect a "NULL" for the slide that was not >>presented, but instead if slide B was actually presented, it will list >>the values from a prior trial for slide C duration, slide C response >>etc, and vice versa. The program is is structured so that 2 nested >>lists specify the trial type and stimulus duration and the program >>properly runs the correct number of trials (300). In the E-data file >>each trial provides one line of data. What am I missing? Thanks very >>much for your help. >>Hank > >-- >David Vinson, Ph.D. >Senior Postdoctoral Researcher >Cognitive, Perceptual and Brain Sciences Research Department >University College London >26 Bedford Way, London WC1H 0AP >Tel +44 (0)20 7679 5311 (UCL internal ext. 25311) -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From Jedema at pitt.edu Mon Dec 5 13:25:52 2011 From: Jedema at pitt.edu (Hank Jedema) Date: Mon, 5 Dec 2011 05:25:52 -0800 Subject: E-Prime data file In-Reply-To: <4ed8eae8.07602a0a.0c86.ffffe91fSMTPIN_ADDED@gmr-mx.google.com> Message-ID: Thanks very much for the thorough explanation. I will do as suggested, turn of the logging and explicitly log the values. Thanks again for your help. Hank On Dec 2, 10:12?am, David McFarlane wrote: > Hank, > > Stock reminder: ?1) I do not work for PST. ?2) PST's trained staff > take any and all questions athttp://support.pstnet.com/e%2Dprime/support/login.asp, and they > strive to respond to all requests in 24-48 hours -- this is pretty > much their substitute for proper documentation, so make full use of > it. ?3) If you do get an answer from PST Web Support, please extend > the courtesy of posting their reply back here for the sake of others. > > That said, here is my guess... > > Suppose your program contains lines like this in the Procedure that > runs B or C: > > c.SetAttrib "B.RT", B.RT > c.SetAttrib "C.RT", C.RT > > i.e., it explicitly logs values for both B and C, even if only one > gets presented. ?Yes, *your* inline code may have If-Thens that log > only one or the other, but if you have enabled logging from the > Properties Pages of B and C, then that will defeat your inline > If-Thens and both will get logged anyway. ?Don't take my word for > that, go look at the full generated code -- every time you enable > logging for an object, you will find a set of c.SetAttrib commands > immediately after that object runs, *plus* the same commands again > just before the c.Log command at the end of the Procedure. ?This > redundancy is E-Prime's attempt to ensure that attributes have proper > values at the times needed (but note that PreRelease can defeat this, > see Chapter 3 of the E-Prime User's Guide). > > So what happens when a trial skips B? ?Well, although attribute > values do not survive from one Procdure run to the next, global > variable and property values do survive. ?So the *property* B.RT > still has its value from the previous run of the Procedure. ?Thus, > 'c.SetAttrib "B.RT", B.RT' will set the *attribute* "B.RT" to the > current value of B.RT, which still lingers from the previous run of > the Procedure (follow?), and so that gets logged for the current trial. > > If that is the case, then the solution is merely to turn off logging > from the Properties Pages of B and C, and do all logging explicitly > in your inline code. > > -- David McFarlane, Professional Faultfinder > "For a successful technology, reality must take precedence over > public relations, for nature cannot be fooled." ?(Richard Feynman, > Nobel prize-winning physicist) > > At 12/2/2011 09:58 AM Friday, David Vinson wrote: > > > > > > > > >Hi Hank, > > >We have experienced something very similar in experiments with > >contingent designs (skipping one or more data collection objects > >depending on various characteristics of responses). > > >I'm sure someone else has a more elegant solution but we got around > >this problem by adding inline code which set these variables to > >impossible values (e.g. RT = -99) if a particular object was not run > >on a given trial. Then we filtered such values out of any analyses > >we conducted. > > >cheers, > >david > > >On 02/12/2011 14:44, Hank Jedema wrote: > >>Hi All, > > >>Here is something in the E-data file that seems problematic and > >>puzzles me: In a stoptask I use a number of if - then scripts to > >>present a sequence of stimulus slides. The script occurs just after > >>each slide and dependent on the whether a response was received or > >>that the slide simply timed out (i.e. reached the end of its slide > >>duration), the script will advance the trial on to the next slide > >>(let's say slide B if a response was received or slide C if no > >>response was received. The issue that I am having is that when I log > >>the response and onset time etc for slides B and C, the E-data file > >>list values for all, even though the slide B and C are mutually > >>exclusive. I would expect a "NULL" for the slide that was not > >>presented, but instead if slide B was actually presented, it will list > >>the values from a prior trial for slide C duration, slide C response > >>etc, and vice versa. The program is is structured so that 2 nested > >>lists specify the trial type and stimulus duration and the program > >>properly runs the correct number of trials (300). In the E-data file > >>each trial provides one line of data. What am I missing? Thanks very > >>much for your help. > >>Hank > > >-- > >David Vinson, Ph.D. > >Senior Postdoctoral Researcher > >Cognitive, Perceptual and Brain Sciences Research Department > >University College London > >26 Bedford Way, London WC1H 0AP > >Tel +44 (0)20 7679 5311 ?(UCL internal ext. 25311) -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From elinebp at hotmail.com Wed Dec 7 12:57:45 2011 From: elinebp at hotmail.com (ELine) Date: Wed, 7 Dec 2011 04:57:45 -0800 Subject: Randomize trials, but always keep the last one the same Message-ID: Hi Eprimers I have a a question that I hope you might have some inputs on. I'm designing an experiment which have 5 trials: read, write, listen to normal speech, listen to speech in noise, and relax. I want to design the experiment such that the first four trials are randomized, but the last one should always be relax. I've tried to solve it by creating lists (10 .txt-files) with different order of the tasks, but always ending with 'relax'. The idea was to get a random generator to choose between the lists using the inline (placed in the BlockProc before the TrialList): c.SetAttrib "ListNr", "List"+CStr(random(1,10))+".txt" But E-Prime does not allow the reference to attributes when defining the input file to the list. Does any of you brilliant minds have a suggestion to how I can fix this? I hope to hear from you ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From hester.duffy at gmail.com Wed Dec 7 13:13:49 2011 From: hester.duffy at gmail.com (Hester Duffy) Date: Wed, 7 Dec 2011 13:13:49 +0000 Subject: Randomize trials, but always keep the last one the same In-Reply-To: <8adf2f9f-8313-4ff5-8ff9-30127bc2ee55@m10g2000vbc.googlegroups.com> Message-ID: Hi Eline, Could you not just present the first four trials as a list which can be randomised, and then the final trial as a separate stand-alone event with its own procedure? That is, have a list of four trials, and then a second list consisting only of the Relax trial? H On Wed, Dec 7, 2011 at 12:57 PM, ELine wrote: > Hi Eprimers > > I have a a question that I hope you might have some inputs on. I'm > designing an experiment which have 5 trials: read, write, listen to > normal speech, listen to speech in noise, and relax. I want to design > the experiment such that the first four trials are randomized, but the > last one should always be relax. > > I've tried to solve it by creating lists (10 .txt-files) with > different order of the tasks, but always ending with 'relax'. The idea > was to get a random generator to choose between the lists using the > inline (placed in the BlockProc before the TrialList): > c.SetAttrib "ListNr", "List"+CStr(random(1,10))+".txt" > But E-Prime does not allow the reference to attributes when defining > the input file to the list. > > Does any of you brilliant minds have a suggestion to how I can fix > this? > I hope to hear from you > ELine > > -- > You received this message because you are subscribed to the Google Groups > "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to > e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/e-prime?hl=en. > > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. -------------- next part -------------- An HTML attachment was scrubbed... URL: From elinebp at hotmail.com Wed Dec 7 13:19:25 2011 From: elinebp at hotmail.com (ELine) Date: Wed, 7 Dec 2011 05:19:25 -0800 Subject: Randomize trials, but always keep the last one the same In-Reply-To: Message-ID: That was exactly the kind of input I needed. Sometimes you just stare at the same problem for too long Thanks a million ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Wed Dec 7 14:46:33 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Wed, 7 Dec 2011 09:46:33 -0500 Subject: Randomize trials, but always keep the last one the same In-Reply-To: Message-ID: Might also do this with judicious use of a nested List, depending on your requirements. The head List runs five trials in Sequential order, the first four trials pull from a nested List set to Random order, and the fifth trial simply runs straight from the head List at the end. -- David McFarlane Hester Duffy wrote: > Hi Eline, > > Could you not just present the first four trials as a list which can be > randomised, and then the final trial as a separate stand-alone event > with its own procedure? That is, have a list of four trials, and then a > second list consisting only of the Relax trial? > > H > > On Wed, Dec 7, 2011 at 12:57 PM, ELine > wrote: > > Hi Eprimers > > I have a a question that I hope you might have some inputs on. I'm > designing an experiment which have 5 trials: read, write, listen to > normal speech, listen to speech in noise, and relax. I want to design > the experiment such that the first four trials are randomized, but the > last one should always be relax. > > I've tried to solve it by creating lists (10 .txt-files) with > different order of the tasks, but always ending with 'relax'. The idea > was to get a random generator to choose between the lists using the > inline (placed in the BlockProc before the TrialList): > c.SetAttrib "ListNr", "List"+CStr(random(1,10))+".txt" > But E-Prime does not allow the reference to attributes when defining > the input file to the list. > > Does any of you brilliant minds have a suggestion to how I can fix > this? > I hope to hear from you > ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Wed Dec 7 15:11:31 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Wed, 7 Dec 2011 10:11:31 -0500 Subject: Randomize trials, but always keep the last one the same In-Reply-To: <4EDF7C49.7040707@msu.edu> Message-ID: Just to elaborate a bit on what I mean by "depending on your requirements": Simply adding the fifth trial directly in the Procedure after the 4-trial List means that, in the .edat file, the fifth trial will be logged at a different level than the other four (Block vs. Trial, etc.), unless you pull some other tricks (e.g., add a second List to run only the fifth trial, or use inline code to do a c.PushNewFram/c.PopFrame). Using the nested List approach, data from all five trials get logged at the same level. IOW, both approaches have their advantages and disadvantages. -- David McFarlane David McFarlane wrote: > Might also do this with judicious use of a nested List, depending on > your requirements. The head List runs five trials in Sequential order, > the first four trials pull from a nested List set to Random order, and > the fifth trial simply runs straight from the head List at the end. > > -- David McFarlane > > > Hester Duffy wrote: >> Hi Eline, >> >> Could you not just present the first four trials as a list which can >> be randomised, and then the final trial as a separate stand-alone >> event with its own procedure? That is, have a list of four trials, and >> then a second list consisting only of the Relax trial? >> >> H >> >> On Wed, Dec 7, 2011 at 12:57 PM, ELine > > wrote: >> >> Hi Eprimers >> >> I have a a question that I hope you might have some inputs on. I'm >> designing an experiment which have 5 trials: read, write, listen to >> normal speech, listen to speech in noise, and relax. I want to design >> the experiment such that the first four trials are randomized, but >> the >> last one should always be relax. >> >> I've tried to solve it by creating lists (10 .txt-files) with >> different order of the tasks, but always ending with 'relax'. The >> idea >> was to get a random generator to choose between the lists using the >> inline (placed in the BlockProc before the TrialList): >> c.SetAttrib "ListNr", "List"+CStr(random(1,10))+".txt" >> But E-Prime does not allow the reference to attributes when defining >> the input file to the list. >> >> Does any of you brilliant minds have a suggestion to how I can fix >> this? >> I hope to hear from you >> ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jacanterbury at gmail.com Thu Dec 8 10:46:56 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Thu, 8 Dec 2011 02:46:56 -0800 Subject: image 'stretch' but maintaining aspect ratio Message-ID: Hi all, My research indicates that the answer to my question is 'No' but I thought I'd try a quick post incase someone has found a way to do this. I want to display images without altering the aspect ratio (ie width to height proportions) but to fix one of the dimensions, e.g. height and leave eprime to set the appropriate width so that the image doesn't get stretched/squashed. (easy in css but I haven't seen how it can be done in eprime) Any thoughts? Many thanks, John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From Michiel.Spape at nottingham.ac.uk Thu Dec 8 11:23:00 2011 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 8 Dec 2011 11:23:00 +0000 Subject: image 'stretch' but maintaining aspect ratio In-Reply-To: <8ebe0297-aef3-4ca3-b632-42049b981509@cs7g2000vbb.googlegroups.com> Message-ID: Hi, E-Prime is, of course, not quite as convenient as current web-standards, but I see no reason it should be _that_ difficult to arrange. That is, if your images all need to be 500 pixels high, say, and your picture is 200x400, can't you just stretch it by 25% (i.e. width and height become 500/400=125%, or 250x500)? The only thing required is that you need to know the base size of your pictures prior to the stretching operations. Two points, however: E-Prime stretches incredibly badly, it does no form of anti-aliasing whatsoever, so your pictures will become degraded in quality. A lot. Secondly, on that point, and given that it's still science-related, I think it is much better practise to do such things off-line (in photoshop or whatever) - keeping the quality somewhat high and knowing full well in advance what you're going to get. It's a bit of work, but well worth it, generally. Cheers, Mich Dr. Michiel M. Sovij?rvi-Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of JACanterbury Sent: 08 December 2011 10:47 To: E-Prime Subject: image 'stretch' but maintaining aspect ratio Hi all, My research indicates that the answer to my question is 'No' but I thought I'd try a quick post incase someone has found a way to do this. I want to display images without altering the aspect ratio (ie width to height proportions) but to fix one of the dimensions, e.g. height and leave eprime to set the appropriate width so that the image doesn't get stretched/squashed. (easy in css but I haven't seen how it can be done in eprime) Any thoughts? Many thanks, John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From baltimore.ben at gmail.com Thu Dec 8 14:13:47 2011 From: baltimore.ben at gmail.com (ben robinson) Date: Thu, 8 Dec 2011 09:13:47 -0500 Subject: image 'stretch' but maintaining aspect ratio In-Reply-To: <09DAEA8BC192C94EB62C8E71FC35A5D93279CD90CB@EXCHANGE3.ad.nottingham.ac.uk> Message-ID: michael's probably got the better suggestion, but i have done this in eprime. it requires, as he said, knowing the base size of the pictures. find this info by right clicking on each of your picture's icons in windows, selecting properties, and then entering the horizontal and vertical pixel information into a List object in eprime. unfortunately, i know of no way to do this but by hand. next you would set your SlideImage object's y-resolution to be a fixed value, say 500 pixels high, and its x-resolution to be [(the original y-res) divided by 500 multiplied by (the original x-res)]. ben On Thu, Dec 8, 2011 at 6:23 AM, Michiel Spape wrote: > Hi, > E-Prime is, of course, not quite as convenient as current web-standards, but I see no reason it should be _that_ difficult to arrange. That is, if your images all need to be 500 pixels high, say, and your picture is 200x400, can't you just stretch it by 25% (i.e. width and height become 500/400=125%, or 250x500)? The only thing required is that you need to know the base size of your pictures prior to the stretching operations. > Two points, however: E-Prime stretches incredibly badly, it does no form of anti-aliasing whatsoever, so your pictures will become degraded in quality. A lot. Secondly, on that point, and given that it's still science-related, I think it is much better practise to do such things off-line (in photoshop or whatever) - keeping the quality somewhat high and knowing full well in advance what you're going to get. It's a bit of work, but well worth it, generally. > Cheers, > Mich > > Dr. Michiel M. Sovij?rvi-Spap? > Research Fellow > Perception & Action group > University of Nottingham > School of Psychology > www.cognitology.eu > > > -----Original Message----- > From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of JACanterbury > Sent: 08 December 2011 10:47 > To: E-Prime > Subject: image 'stretch' but maintaining aspect ratio > > Hi all, > > My research indicates that the answer to my question is 'No' but I > thought I'd try a quick post incase someone has found a way to do > this. > > I want to display images without altering the aspect ratio (ie width > to height proportions) but to fix one of the dimensions, e.g. height > and leave eprime to set the appropriate width so that the image > doesn't get stretched/squashed. (easy in css but I haven't seen how it > can be done in eprime) > > Any thoughts? > > Many thanks, > > John > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > > This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. ? Please do not use, copy or disclose the information contained in this message or in any attachment. ?Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. > > This message has been checked for viruses but the contents of an attachment > may still contain software viruses which could damage your computer system: > you are advised to perform your own checks. Email communications with the > University of Nottingham may be monitored as permitted by UK legislation. > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Thu Dec 8 15:47:16 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Thu, 8 Dec 2011 10:47:16 -0500 Subject: image 'stretch' but maintaining aspect ratio In-Reply-To: Message-ID: John, About the lack of anti-aliasing during stretching... I have never found this to be a problem, but that is because I always start with original images at a higher resolution and then use "Stretch" to effectively "Shrink" the original image, which seems to work OK. That said, I too think it better to just make the orginal images at the size you want displayed, and then just let E-Prime display those without Stretch. I like to reserve Stretch just for doing crude animations where I have to manipulate the image size at run time (although I might also use Stretch at times just to be lazy). -- David McFarlane At 12/8/2011 09:13 AM Thursday, ben robinson wrote: >michael's probably got the better suggestion, but i have done this in eprime. >it requires, as he said, knowing the base size of the pictures. find >this info by right clicking on each of your picture's icons in >windows, selecting properties, and then entering the horizontal and >vertical pixel information into a List object in eprime. >unfortunately, i know of no way to do this but by hand. >next you would set your SlideImage object's y-resolution to be a fixed >value, say 500 pixels high, and its x-resolution to be [(the original >y-res) divided by 500 multiplied by (the original x-res)]. > >ben > >On Thu, Dec 8, 2011 at 6:23 AM, Michiel Spape > wrote: > > Hi, > > E-Prime is, of course, not quite as > convenient as current web-standards, but I see > no reason it should be _that_ difficult to > arrange. That is, if your images all need to be > 500 pixels high, say, and your picture is > 200x400, can't you just stretch it by 25% (i.e. > width and height become 500/400=125%, or > 250x500)? The only thing required is that you > need to know the base size of your pictures prior to the stretching operations. > > Two points, however: E-Prime stretches > incredibly badly, it does no form of > anti-aliasing whatsoever, so your pictures will > become degraded in quality. A lot. Secondly, on > that point, and given that it's still > science-related, I think it is much better > practise to do such things off-line (in > photoshop or whatever) - keeping the quality > somewhat high and knowing full well in advance > what you're going to get. It's a bit of work, but well worth it, generally. > > Cheers, > > Mich > > > > Dr. Michiel M. Sovij?rvi-Spap? > > Research Fellow > > Perception & Action group > > University of Nottingham > > School of Psychology > > www.cognitology.eu > > > > > > -----Original Message----- > > From: e-prime at googlegroups.com > [mailto:e-prime at googlegroups.com] On Behalf Of JACanterbury > > Sent: 08 December 2011 10:47 > > To: E-Prime > > Subject: image 'stretch' but maintaining aspect ratio > > > > Hi all, > > > > My research indicates that the answer to my question is 'No' but I > > thought I'd try a quick post incase someone has found a way to do > > this. > > > > I want to display images without altering the aspect ratio (ie width > > to height proportions) but to fix one of the dimensions, e.g. height > > and leave eprime to set the appropriate width so that the image > > doesn't get stretched/squashed. (easy in css but I haven't seen how it > > can be done in eprime) > > > > Any thoughts? > > > > Many thanks, > > > > John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From Michiel.Spape at nottingham.ac.uk Thu Dec 8 16:10:49 2011 From: Michiel.Spape at nottingham.ac.uk (Michiel Spape) Date: Thu, 8 Dec 2011 16:10:49 +0000 Subject: image 'stretch' but maintaining aspect ratio In-Reply-To: <4ee0dc08.096c2a0a.6f63.ffff9135SMTPIN_ADDED@gmr-mx.google.com> Message-ID: Hi David et al., Just a note - be careful, just because you're stretching from higher to lower resolution doesn't mean it gets to be okay. For instance, let's say you have 2 black pixels, 1 white pixel, 3 blue pixels horizontally, next to one another. You want to decrease size by 50%. There will be 1 black pixel to start with, for sure, but what happens with the rest? Your screen doesn't do half pixels, and although anti-aliasing blurs it in such a way that this isn't too obvious, E-Prime (unless 2.0 changed this) doesn't do that. So, what you get is exactly the same as what you get in MSPaint, by decreasing size of this image. I just tested it, the outcome is 1 black pixel, 0 white pixels, and 2 blue pixels. Why is the 0.5 white pixel rounded down (to 0), but the 1.5 blue pixels are rounded up? (to 2) Beats me. A better coder could give the answer, presumably. Anyway, given a high resolution, these changes may not be immediately noticeable, although - if you're a webcoder - you might've seen the effect of what happens with people who present a huge picture with an img tag saying . Ugliness and high server load ensues. As a result, I've always tried telling my students they should process stimulus material as well as possible - and if doing that outside e-prime is more work, then so be it. Cheers, Mich PS: This is me signing off - I'll be back next year, working on a new post doc position over at the Helsinki Institute for Information Technology. Dr. Michiel M. Sovij?rvi-Spap? Research Fellow Perception & Action group University of Nottingham School of Psychology www.cognitology.eu -----Original Message----- From: e-prime at googlegroups.com [mailto:e-prime at googlegroups.com] On Behalf Of David McFarlane Sent: 08 December 2011 15:47 To: e-prime at googlegroups.com Subject: Re: image 'stretch' but maintaining aspect ratio John, About the lack of anti-aliasing during stretching... I have never found this to be a problem, but that is because I always start with original images at a higher resolution and then use "Stretch" to effectively "Shrink" the original image, which seems to work OK. That said, I too think it better to just make the orginal images at the size you want displayed, and then just let E-Prime display those without Stretch. I like to reserve Stretch just for doing crude animations where I have to manipulate the image size at run time (although I might also use Stretch at times just to be lazy). -- David McFarlane At 12/8/2011 09:13 AM Thursday, ben robinson wrote: >michael's probably got the better suggestion, but i have done this in eprime. >it requires, as he said, knowing the base size of the pictures. find >this info by right clicking on each of your picture's icons in >windows, selecting properties, and then entering the horizontal and >vertical pixel information into a List object in eprime. >unfortunately, i know of no way to do this but by hand. >next you would set your SlideImage object's y-resolution to be a fixed >value, say 500 pixels high, and its x-resolution to be [(the original >y-res) divided by 500 multiplied by (the original x-res)]. > >ben > >On Thu, Dec 8, 2011 at 6:23 AM, Michiel Spape > wrote: > > Hi, > > E-Prime is, of course, not quite as > convenient as current web-standards, but I see > no reason it should be _that_ difficult to > arrange. That is, if your images all need to be > 500 pixels high, say, and your picture is > 200x400, can't you just stretch it by 25% (i.e. > width and height become 500/400=125%, or > 250x500)? The only thing required is that you > need to know the base size of your pictures prior to the stretching operations. > > Two points, however: E-Prime stretches > incredibly badly, it does no form of > anti-aliasing whatsoever, so your pictures will > become degraded in quality. A lot. Secondly, on > that point, and given that it's still > science-related, I think it is much better > practise to do such things off-line (in > photoshop or whatever) - keeping the quality > somewhat high and knowing full well in advance > what you're going to get. It's a bit of work, but well worth it, generally. > > Cheers, > > Mich > > > > Dr. Michiel M. Sovij?rvi-Spap? > > Research Fellow > > Perception & Action group > > University of Nottingham > > School of Psychology > > www.cognitology.eu > > > > > > -----Original Message----- > > From: e-prime at googlegroups.com > [mailto:e-prime at googlegroups.com] On Behalf Of JACanterbury > > Sent: 08 December 2011 10:47 > > To: E-Prime > > Subject: image 'stretch' but maintaining aspect ratio > > > > Hi all, > > > > My research indicates that the answer to my question is 'No' but I > > thought I'd try a quick post incase someone has found a way to do > > this. > > > > I want to display images without altering the aspect ratio (ie width > > to height proportions) but to fix one of the dimensions, e.g. height > > and leave eprime to set the appropriate width so that the image > > doesn't get stretched/squashed. (easy in css but I haven't seen how it > > can be done in eprime) > > > > Any thoughts? > > > > Many thanks, > > > > John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please send it back to me, and immediately delete it. Please do not use, copy or disclose the information contained in this message or in any attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. This message has been checked for viruses but the contents of an attachment may still contain software viruses which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Dec 9 15:51:14 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 9 Dec 2011 10:51:14 -0500 Subject: More (free) E-Prime training & support resources Message-ID: For those of you looking for more, free, E-Prime training resources, check out the videos on PST's YouTube channel (http://www.youtube.com/user/PSTNET ). They have 25 videos so far, and I suppose will come up with more (for which they take suggestions). These are not nearly as good as what I will offer after the new year, but they are free, they may cover specific topics of interest to you, and they are available now. PST also maintains a Facebook page at http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 , and it seems that they even answer questions there (which is more than they do at their Forum). I had not taken note of these resources before, and I don't know how well PST has gotten the word out, so I just wanted to post the info here (and should add this to my "How to Solve E-Prime Puzzles?" essay at http://groups.google.com/group/e-prime/browse_thread/thread/5425e03968cab428 ) -- David McFarlane -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jbuczny at gmail.com Fri Dec 9 17:28:40 2011 From: jbuczny at gmail.com (Jacek Buczny) Date: Fri, 9 Dec 2011 09:28:40 -0800 Subject: calculating sums etc. in virtual shop Message-ID: Hi, Is E-Prime able to calculate sums etc.? For example a subject is going to take a virtual shopping. He has 200 Euro in his wallet. In each trial he is presented with a product, and has to decide "buy" or "not to buy". After each trial I want to present how much he spent and how much money left. After finishing a block of trials I want to present a sum of participant's expenses (200 Euro minus what was bought in all trials). Where should I put information about each product price to calculate a sum correctly? What kind of InLine script I should write down? I will appreciate any help! Thank you in advance! Jacek -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Fri Dec 9 18:28:12 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Fri, 9 Dec 2011 13:28:12 -0500 Subject: calculating sums etc. in virtual shop In-Reply-To: <10c5da7a-1f84-4866-955d-945a5396b62f@f11g2000yql.googlegro ups.com> Message-ID: Jacek, Stock reminder: 1) I do not work for PST. 2) PST's trained staff take any and all questions at http://support.pstnet.com/e%2Dprime/support/login.asp , and they strive to respond to all requests in 24-48 hours -- this is pretty much their substitute for proper documentation, so make full use of it. 3) In addition, PST takes questions at their Facebook page (http://www.facebook.com/pages/Psychology-Software-Tools-Inc/241802160683 ), and offers several instructional videos there and on their YouTube channel (http://www.youtube.com/user/PSTNET ) (no Twitter feed yet, though). 4) If you do get an answer from PST Web Support, please extend the courtesy of posting their reply back here for the sake of others. That said, here is my take... You can computer most anything you like using inline code. See Chapter 4, "Using E-Basic", in the User's Guide that came with E-Prime. If you are a beginner at E-Prime, then you might also see my essays at http://groups.google.com/group/e-prime/browse_thread/thread/5425e03968cab428 and http://groups.google.com/group/e-prime/browse_thread/thread/b0ce54870b723fc3 . -- David McFarlane >Is E-Prime able to calculate sums etc.? For example a subject is going >to take a virtual shopping. He has 200 Euro in his wallet. In each >trial he is presented with a product, and has to decide "buy" or "not >to buy". After each trial I want to present how much he spent and how >much money left. After finishing a block of trials I want to present a >sum of participant's expenses (200 Euro minus what was bought in all >trials). > >Where should I put information about each product price to calculate a >sum correctly? What kind of InLine script I should write down? > >I will appreciate any help! Thank you in advance! > >Jacek -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From brieana.viscomi at gmail.com Sat Dec 10 17:54:57 2011 From: brieana.viscomi at gmail.com (Brieana) Date: Sat, 10 Dec 2011 09:54:57 -0800 Subject: Pulling from multiple nested lists at the same time and on the same text slide Message-ID: Hi, I have 5 procedures. In each procedure, there are 3 text slides each with about 14 text boxes. The reason for so many text boxes is because it was the only way I could figure out how to make a 'faux' table in e- Prime without using any heavy coding. On these text slides, I have some text boxes that are to pull values from one nested list and other textboxes that are to pull values from a different nested list. More specifically, I want each textbox to randomly present only one value from the nested list without repeating any of the values that are being presented in the other textboxes drawing from the same list. After reading the Users Guide, I thought that colon syntax was the way to go. I was able to get the textboxes that were to pull values from one nested list to work so that only one value was presented in each textbox, the order was random, and there weren't any repeats. However, as soon as I added the other nested list to the procedure using the colon syntax method, e-prime would stop running once it got to that particular text slide and read that the last attribute referenced on the slide did not exist (even though it was clearly listed and defined on my list). Would anyone happen to know of a way for half of the textboxes on a slide to only draw one value from a nested list and the other half on the same slide to only draw one value from a different nested list? I found that I was able to have each group of textboxes draw from their respective nested list if I defined each nested list on the same master list and their attributes. However, I want these values to be presented SIMULTANEOUSLY. Since each nested list was referenced in the same master list, I could only get the values to show up on the slide in a sequential manner. I need both sets of values presented together. Any and all ideas or help would be greatly appreciated! Thank you, Brieana -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Sun Dec 11 12:59:45 2011 From: liwenna at gmail.com (liwenna) Date: Sun, 11 Dec 2011 04:59:45 -0800 Subject: Pulling from multiple nested lists at the same time and on the same text slide In-Reply-To: <31194c7d-1fd2-44b5-ac7c-0e74c28af8c7@c18g2000yqj.googlegroups.com> Message-ID: Hello Brieana, First, I wonder why you decided to use colon syntax rather than simple 'brackets' ([variablename] instead of [variablename:x]). I suppose therefore that you have the values need to be used within one trial (procedure) nested in a vertical manner: each value it's own level in a list. This may be more intuitive to you as a person, but it's not to e-prime (hence you have to use the colon's to get e-prime to pull a value of a different level of the list). E-prime's normal 'way to do things' is to use a single level of each list (in a nested series of lists) on each run of a procedure. I would advice you to give in to e-prime's way and transpose the nested lists so that each value is stored in a separate attribute and that each level of a nested list contains a series of values that is to be used within one run of the procedure. I.e. nestedlist1 could have 7 attributes called v1, v2 etc to v7. Each of these 7 values would be used within one run of the procedure and the next level of the list could contain the same values but in a different order etc. in order to achieve randomization of the text locations -> the textboxes 1 to 7 should be given the 'text' [v1], [v2] etc (note: no :x) in order to resolve to/pull out the values of the attributes v1, v2 etc. If you'd set the nestlist to be presented in a random order, a random level of the list would be used for each run of the procedure. If you nest multiple lists e-prime should be able to draw values from two nested lists onto the same slide, provided that the two lists do not have identical attribute names from which values are drawn. I.e. in your master lists in the nested column you can nest multiple lists divided by comma's (nestedlist1, nestedlist2). Then if one of the nested lists contains the values that you need for textboxes 1 to 7 (v1, v2 - v7) and the other the values for textboxes 8 to 14 (v8 - v14), e-prime should run just fine. Hope this helps, AW On 10 dec, 18:54, Brieana wrote: > Hi, > > I have 5 procedures. In each procedure, there are 3 text slides each > with about 14 text boxes. The reason for so many text boxes is because > it was the only way I could figure out how to make a 'faux' table in e- > Prime without using any heavy coding. On these text slides, I have > some text boxes that are to pull values from one nested list and other > textboxes that are to pull values from a different nested list. More > specifically, I want each textbox to randomly present only one value > from the nested list without repeating any of the values that are > being presented in the other textboxes drawing from the same list. > After reading the Users Guide, I thought that colon syntax was the way > to go. I was able to get the textboxes that were to pull values from > one nested list to work so that only one value was presented in each > textbox, the order was random, and there weren't any repeats. However, > as soon as I added the other nested list to the procedure using the > colon syntax method, e-prime would stop running once it got to that > particular text slide and read that the last attribute referenced on > the slide did not exist (even though it was clearly listed and defined > on my list). > > Would anyone happen to know of a way for half of the textboxes on a > slide to only draw one value from a nested list and the other half on > the same slide to only draw one value from a different nested list? > > I found that I was able to have each group of textboxes draw from > their respective nested list if I defined each nested list on the same > master list and their attributes. However, I want these values to be > presented SIMULTANEOUSLY. Since each nested list was referenced in the > same master list, I could only get the values to show up on the slide > in a sequential manner. I need both sets of values presented together. > > Any and all ideas or help would be greatly appreciated! > > Thank you, > > Brieana -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From elinebp at hotmail.com Mon Dec 12 10:48:22 2011 From: elinebp at hotmail.com (ELine) Date: Mon, 12 Dec 2011 02:48:22 -0800 Subject: Return array from function Message-ID: Hello again I have problems returning a 3x3 array from a function. I have an experiment with 9 conditions and to keep things simple I organized them in a 3x3 array. I want to keep track on the number of trials pr condition by updating this array in the end of each trial using a user- specified function that returns a 3x3 array containing one 1 (rest is 0s) specifying which trial has been run. my problem is not with the function itself, but with returning a 3x3 array. I've tried something like this (but of course more complicated): Function UpdateArray(A As Integer, B As Integer) As Variant Dim U(3,3) As Variant for i= 1 to 3 for j= 1 to 3 U(i,j)=0 next j next i U(A,B)=1 UpdateArray=U End Function When compiling E-Prime returns the error: Cannot assign whole array. I also tried with integer instead of variant, but it still doesn't work. And I've tried including ReDim, but without any luck. Can anyone help me? ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Mon Dec 12 10:57:09 2011 From: liwenna at gmail.com (liwenna) Date: Mon, 12 Dec 2011 02:57:09 -0800 Subject: Return array from function In-Reply-To: Message-ID: Must admit that I do not understand the code but I do happen to know that array's start counting levels at 0, so the "top left" cell in a 3*3 array is U(0,0) and the bottom right U(2,2). => if you let i and j run from 0 to 2 rather than 1 to 3, that may help? best, liw On Dec 12, 11:48?am, ELine wrote: > Hello again > > I have problems returning a 3x3 array from a function. I have an > experiment with 9 conditions and to keep things simple I organized > them in a 3x3 array. I want to keep track on the number of trials pr > condition by updating this array in the end of each trial using a user- > specified function that returns a 3x3 array containing one 1 (rest is > 0s) specifying which trial has been run. > > my problem is not with the function itself, but with returning a 3x3 > array. I've tried something like this (but of course more > complicated): > > Function UpdateArray(A As Integer, B As Integer) As Variant > ? ? Dim U(3,3) As Variant > > ? ? ?for i= 1 to 3 > ? ? ? ? for j= 1 to 3 > ? ? ? ? U(i,j)=0 > ? ? ? ? next j > ? ? ?next i > ? ? ?U(A,B)=1 > > ? ? UpdateArray=U > > End Function > > When compiling E-Prime returns the error: Cannot assign whole array. I > also tried with integer instead of variant, but it still doesn't work. > And I've tried including ReDim, but without any luck. > > Can anyone help me? > > ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From elinebp at hotmail.com Mon Dec 12 11:01:27 2011 From: elinebp at hotmail.com (ELine) Date: Mon, 12 Dec 2011 03:01:27 -0800 Subject: Return array from function In-Reply-To: <43a5c3b4-c811-4b1b-9c60-69fd71dd0eb2@l29g2000yqf.googlegroups.com> Message-ID: Yes, that did help Thanks -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From josealejandro.aristizabalc at gmail.com Mon Dec 12 11:26:58 2011 From: josealejandro.aristizabalc at gmail.com (Jose Alejandro Aristizabal C) Date: Mon, 12 Dec 2011 03:26:58 -0800 Subject: change in scale Message-ID: Dear Sr I'm stuck with this script to emulate an analog scale, and I have the problem that by indicating a number on the scale to press next, the data stays red. What I want is the subject to choose a number on the scale go to the next screen to return to choose another value. without actively engaged in red. Sorry for my English. thank you very much 'Designate "theState" as the Default Slide State, which is the 'current ActiveState on the Slide object "Stimulus". Dim theState As SlideState Set theState = Stimulus.States("Default") Dim theSlideText As SlideText Dim strHit As String Dim theMouseResponseData As MouseResponseData 'Was there a response? If Stimulus.InputMasks.Responses.Count > 0 Then 'Get the mouse response. Set theMouseResponseData = CMouseResponseData(Stimulus.InputMasks.Responses(1)) 'Determine string name of SlideText object at 'mouse click coordinates. Assign that value to strHit strHit = theState.HitTest(theMouseResponseData.CursorX, theMouseResponseData.CursorY) End if 'Did the subject click one of the SlideText sub-objects? If strHit <> "" And strHit <> "Image1" And strHit <> "PainUnplesantness" And strHit <> "Confirm" And strHit <> "NoUnpleasantness" And strHit <> "HighestUnpleasantness" And strHit <> "Question2" Then Dim UnpleasantnessRating As Integer 'Gain access to the SlideText sub-object selected 'Change appearance of selected sub-object to provide feedback to the subject. Set theSlideText = CSlideText(Stimulus.States.Item("Default").Objects(strHit)) Dim StrTu As String StrTu = Mid(strHit, 1, 4) Select Case StrTu Case "Unpl" If R2 = False Then theSlideText.BackColor = CColor("red") R2 = True UnpleasantnessRating = CInt(Mid(strHit, 5, 3)) c.Setattrib "Unpleasantness", UnpleasantnessRating Else If theSlideText.BackColor = CColor("red") Then R2 = False eLSE IF theSlidetext.BackColor = CColor("Navy") Then R2 = False End If End If End If End Select Goto RedoTrial Else If R2 = False Then Goto RedoTrial End If If R2 = True Then ConfirmarActivado = True End If End if Botton Scale If ConfirmarActivado = true Then If theSlideText.BackColor = CColor("red")Then theSlidetext.BackColor = CColor("Navy") ConfirmarActivado = true End If End If -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Mon Dec 12 12:33:34 2011 From: liwenna at gmail.com (liwenna) Date: Mon, 12 Dec 2011 04:33:34 -0800 Subject: change in scale In-Reply-To: Message-ID: Although I don't know where your problem lies exactly, here are three things that you could try: 1: move the label "redotrial" to before the inline in which the scale is drawn 2: otherwise (if you need to old scaledrawing to stay for some reason) : insert an inline inbetween the label "redotrial" and the slide with the code " theSlidetext.BackColor = CColor("Navy") " 3: if the problem is not in the returning to the previous slide but rather on a NEXT slide (so... not a next showing of the previous slide) then add an "empty" slide inbetween this one and the next with the background set to opaque and a duration of 20 ms or so. Following that you'll have to redraw the scale for the next slide by copying the scale drawing inline and adjust the code based on the name of the next slide. best, AW On Dec 12, 12:26?pm, Jose Alejandro Aristizabal C wrote: > Dear Sr > > I'm stuck with this script to emulate an analog scale, and I have the > problem that by indicating a number on the scale to press next, the > data stays red. > What I want is the subject to choose a number on the scale go to the > next screen to return to choose another value. without actively > engaged in red. > > Sorry for my English. thank you very much > > 'Designate "theState" as the Default Slide State, which is the > 'current ActiveState on the Slide object "Stimulus". > Dim theState As SlideState > Set theState = Stimulus.States("Default") > > Dim theSlideText As SlideText > > Dim strHit As String > > Dim theMouseResponseData As MouseResponseData > > 'Was there a response? > If Stimulus.InputMasks.Responses.Count > 0 Then > > ? ? ? ? 'Get the mouse response. > ? ? ? ? Set theMouseResponseData = > CMouseResponseData(Stimulus.InputMasks.Responses(1)) > > ? ? ? ? 'Determine string name of SlideText object at > ? ? ? ? 'mouse click coordinates. Assign that value to strHit > ? ? ? ? strHit = theState.HitTest(theMouseResponseData.CursorX, > theMouseResponseData.CursorY) > > End if > ? ? ? ? 'Did the subject click one of the SlideText sub-objects? > ? ? ? ? If strHit <> "" And strHit <> "Image1" And strHit <> > "PainUnplesantness" And strHit <> "Confirm" And strHit <> > "NoUnpleasantness" And strHit <> "HighestUnpleasantness" And strHit <> > "Question2" Then > ? ? ? ? ? ? ? ? Dim UnpleasantnessRating As Integer > > ? ? ? ? ? ? ? ? 'Gain access to the SlideText sub-object selected > ? ? ? ? ? ? ? ? 'Change appearance of selected sub-object to provide feedback to the > subject. > ? ? ? ? ? ? ? ? Set theSlideText = > CSlideText(Stimulus.States.Item("Default").Objects(strHit)) > > ? ? ? ? ? ? ? ? Dim StrTu As String > > ? ? ? ? ? ? ? ? StrTu = Mid(strHit, 1, 4) > > ? ? ? ? ? ? ? ? Select Case StrTu > > Case "Unpl" > > ? ? ? ? ? ? If R2 = False Then > ? ? ? ? ?theSlideText.BackColor = CColor("red") > ? ? ? ? ? ? ? ? R2 = True > ? ? ? ? ? ? ? ? UnpleasantnessRating = CInt(Mid(strHit, 5, 3)) > ? ? ? ? ? ? ? ? c.Setattrib "Unpleasantness", UnpleasantnessRating > ? ? ? ? ? ? ? ? Else > ? ? ? ? ? ? ? ? ?If theSlideText.BackColor = CColor("red") Then > ? ? ? ? ? ? ? ? ? R2 = False > ? ? ? ? ? ? ? ? ? eLSE > ? ? ? ?IF theSlidetext.BackColor = CColor("Navy") Then > ? ? ? ? ? ? ? ? ? R2 = False > ? ? ? ? ? ? ? ? ? ?End If > ? ? ? ? ? ? End If > ? ? ? ? ? ? ? ? End If > ? End Select > > ? Goto RedoTrial > > ? Else > ? If ?R2 = False Then > ? Goto RedoTrial > ? End If > ? If R2 = True Then > ? ConfirmarActivado = True > ? End If > End if > > Botton Scale > > ? ? ? ? ? ? ? ? If ConfirmarActivado = true Then > ? ? ? ? ? ? ? ? If theSlideText.BackColor = CColor("red")Then > ? ? ? ? theSlidetext.BackColor = CColor("Navy") > ? ? ? ? ConfirmarActivado = true > ? ? ? ? ? ? ? ? End If > End If -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From mcfarla9 at msu.edu Mon Dec 12 14:44:35 2011 From: mcfarla9 at msu.edu (David McFarlane) Date: Mon, 12 Dec 2011 09:44:35 -0500 Subject: Return array from function In-Reply-To: <43a5c3b4-c811-4b1b-9c60-69fd71dd0eb2@l29g2000yqf.googlegroups.com> Message-ID: Eline, Glad that liw solved it for you. I just want to add a few more details in case anyone else stumbles on this thread. By *default*, array indexes in E-Prime/E-Basic start at 0. But you may change that to start instead at 1 using the "Option Base 1" statement in the global User script area -- see the Option Base topic in the E-Basic Help facility. You may also override the default on any array by explicitly declaring its bounds in the Dim statement -- see the Dim topic in the E-Basic Help. E.g., if you were to say Dim U(1 to 3, 1 to 3) As Variant in your original code, then the array initialization loop should work just fine. Exactly because this array index issue can get so confusing, I have taken to always explicitly declaring the index bounds when I declare arrays, that way there is no question. I would advise you and everyone else to do the same. -- David McFarlane liwenna wrote: > Must admit that I do not understand the code but I do happen to know > that array's start counting levels at 0, so the "top left" cell in a > 3*3 array is U(0,0) and the bottom right U(2,2). => if you let i and j > run from 0 to 2 rather than 1 to 3, that may help? > > best, > > liw > > > On Dec 12, 11:48 am, ELine wrote: >> Hello again >> >> I have problems returning a 3x3 array from a function. I have an >> experiment with 9 conditions and to keep things simple I organized >> them in a 3x3 array. I want to keep track on the number of trials pr >> condition by updating this array in the end of each trial using a user- >> specified function that returns a 3x3 array containing one 1 (rest is >> 0s) specifying which trial has been run. >> >> my problem is not with the function itself, but with returning a 3x3 >> array. I've tried something like this (but of course more >> complicated): >> >> Function UpdateArray(A As Integer, B As Integer) As Variant >> Dim U(3,3) As Variant >> >> for i= 1 to 3 >> for j= 1 to 3 >> U(i,j)=0 >> next j >> next i >> U(A,B)=1 >> >> UpdateArray=U >> >> End Function >> >> When compiling E-Prime returns the error: Cannot assign whole array. I >> also tried with integer instead of variant, but it still doesn't work. >> And I've tried including ReDim, but without any luck. >> >> Can anyone help me? >> >> ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From liwenna at gmail.com Mon Dec 12 15:24:06 2011 From: liwenna at gmail.com (liwenna) Date: Mon, 12 Dec 2011 07:24:06 -0800 Subject: Return array from function In-Reply-To: <4EE61353.9040208@msu.edu> Message-ID: Thanks for that info, David! I'll absolutely take up your advice of defining boundaries in the future since the 0-level regularly confuses me when it try to use loops to fill/pull arrays ^.^ On Dec 12, 3:44?pm, David McFarlane wrote: > Eline, > > Glad that liw solved it for you. ?I just want to add a few more details > in case anyone else stumbles on this thread. > > By *default*, array indexes in E-Prime/E-Basic start at 0. ?But you may > change that to start instead at 1 using the "Option Base 1" statement in > the global User script area -- see the Option Base topic in the E-Basic > Help facility. > > You may also override the default on any array by explicitly declaring > its bounds in the Dim statement -- see the Dim topic in the E-Basic > Help. ?E.g., if you were to say > > ? ? ? ? Dim U(1 to 3, 1 to 3) As Variant > > in your original code, then the array initialization loop should work > just fine. > > Exactly because this array index issue can get so confusing, I have > taken to always explicitly declaring the index bounds when I declare > arrays, that way there is no question. ?I would advise you and everyone > else to do the same. > > -- David McFarlane > > > > > > > > liwenna wrote: > > Must admit that I do not understand the code but I do happen to know > > that array's start counting levels at 0, so the "top left" cell in a > > 3*3 array is U(0,0) and the bottom right U(2,2). => if you let i and j > > run from 0 to 2 rather than 1 to 3, that may help? > > > best, > > > liw > > > On Dec 12, 11:48 am, ELine wrote: > >> Hello again > > >> I have problems returning a 3x3 array from a function. I have an > >> experiment with 9 conditions and to keep things simple I organized > >> them in a 3x3 array. I want to keep track on the number of trials pr > >> condition by updating this array in the end of each trial using a user- > >> specified function that returns a 3x3 array containing one 1 (rest is > >> 0s) specifying which trial has been run. > > >> my problem is not with the function itself, but with returning a 3x3 > >> array. I've tried something like this (but of course more > >> complicated): > > >> Function UpdateArray(A As Integer, B As Integer) As Variant > >> ? ? Dim U(3,3) As Variant > > >> ? ? ?for i= 1 to 3 > >> ? ? ? ? for j= 1 to 3 > >> ? ? ? ? U(i,j)=0 > >> ? ? ? ? next j > >> ? ? ?next i > >> ? ? ?U(A,B)=1 > > >> ? ? UpdateArray=U > > >> End Function > > >> When compiling E-Prime returns the error: Cannot assign whole array. I > >> also tried with integer instead of variant, but it still doesn't work. > >> And I've tried including ReDim, but without any luck. > > >> Can anyone help me? > > >> ELine -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From jacanterbury at gmail.com Tue Dec 13 10:19:46 2011 From: jacanterbury at gmail.com (JACanterbury) Date: Tue, 13 Dec 2011 02:19:46 -0800 Subject: Configuring SRBox port number on the fly (and other parameters) Message-ID: Not a question, but I thought I'd post some recent findings, cobbled together from various posts and a little experimentation [ This may be explained succinctly elsewhere but I couldn't find all the info I needed in one place so please excuse the posting if its duplicating info you already know] - Hopefully they'll be of interest to others at some point. Usually I set the commport for the SR response box by using the menu options in E-studio: Edit || Experiment || Devices tab || SRBox || and set the Port setting from the drop-down menu [values 1-4 allowed] Unfortunately we have a whole range of PCs that are used to run studies some using serial ports and some using USB serial port emulators and having the port hard-wired in the ebs2 file is a pain. So, how to override this at runtime? There are (at least) 2 ways to override the port setting that's compiled in the ebs2 file. The first is at the this can be overridden by making utilising E- primes global settings which are stored in a text file e.g. C:\Users\user_name\Documents\My Experiments\Global.startupInfo You can get E-prime to generate this for you in E-studio as follows: -Edit || Experiment || Startup Info || Edit global values || then click the Add button (green PLUS sign) and choose SRBox.Commport from the dropdown list then click into the field alongside it and enter the desired port value. -Click SAVE and the OK. NB this creates an xml type text file that can be edited using a text editor (eg notepad) An example is :- 1 Note that the above will set the SRBox.Commport setting to use port 1 It seemed to me though that using the Global.startupInfo file was not ideal though as it's distinct to user profiles [ though you may well be able to set this for all users by setting the InitPath key in the registry (HKEY_CURRENT_USER\Software\Psychology Software Tools\E-Prime\1.1\E-DataAid\ViewOptions\InitPath ) but I've not experimented with that ] An alternative way is to user a 'local' config file ( e.g "my_exp_name.startupInfo" ). Again, you can get E-prime to create this for you, as above but click on "Edit Local Values" (instead of global). This creates the xml file in your experiment folder alongside your ebs2 file. (eg stroop.startupInfo) Now, users can then edit this file to change the port number if necessary without having to regenerate the ebs2 file in E-Studio. Note that this local file will take precedence over the Global file if it exists which in turn takes precedence over the value set on the Devices tab that's compiled into the ebs2 file. I've only focused on setting the commport but you can change a whole load of settings in the same way. The drop-down list on the 'add' screen lists them all (seems to be everything that's available through the 'Devices' tab) Hope thats of interest to someone! cheers, John -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From supercarv at googlemail.com Mon Dec 19 15:26:41 2011 From: supercarv at googlemail.com (Richard Carvey) Date: Mon, 19 Dec 2011 07:26:41 -0800 Subject: Using mouse click to select one of several alternative responses Message-ID: Hi, I'm trying to build an experiment in which nine items are displayed on screen, and participants need to select one fo them using the mouse. I have seen a couple of people mention issues with clicks anywhere on screen being registered as responses, but I would like to make sure that only clicks within the bounds of the nine items are accepted, and that the specific item clicked is logged. Clicking any of the nine items should advanc the program, no one answer is correct or incorrect. If anybody could offer me some advice on how to achieve this, it would be greatly appreciated. Annoyingly, whoever installed E-Prime (1.2, btw) on this computer saw fit not install the help functions correctly/ at all. Thanks, Richard -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From pfc.groot at gmail.com Mon Dec 19 22:44:32 2011 From: pfc.groot at gmail.com (Paul Groot) Date: Mon, 19 Dec 2011 23:44:32 +0100 Subject: Using mouse click to select one of several alternative responses In-Reply-To: <8d39c0dd-137c-4ad2-bb4e-8c60c4592ab6@p9g2000vbb.googlegroups.com> Message-ID: Hi Richard, You might have a look at the VAS example script I posted a while ago on http://pfcgroot.nl/e-prime/83-example-scripts/80-visual-analogue-scale-example-for-e-prime.html. This example contains a bit more script then you need, but the ACK_HandleResponse function (in the user script tab) demonstrates how you can use boundaries of (text-)objects as hit area for mouse clicks. The core of this piece of script uses the Mouse.GetCursorPos and Object.HitTest functions to implement two user confirmation buttons. It can be easily adapted for more buttons. Also, instead of using the boundaries of a slide element (i.e. text or image), you can also make your own hit-test function. cheers, Paul Groot 2011/12/19 Richard Carvey : > Hi, > > I'm trying to build an experiment in which nine items are displayed on > screen, and participants need to select one fo them using the mouse. I > have seen a couple of people mention issues with clicks anywhere on > screen being registered as responses, but I would like to make sure > that only clicks within the bounds of the nine items are accepted, and > that the specific item clicked is logged. Clicking any of the nine > items should advanc the program, no one answer is correct or > incorrect. > > If anybody could offer me some advice on how to achieve this, it would > be greatly appreciated. Annoyingly, whoever installed E-Prime (1.2, > btw) on this computer saw fit not install the help functions correctly/ > at all. > > Thanks, > > Richard > > -- > You received this message because you are subscribed to the Google Groups "E-Prime" group. > To post to this group, send email to e-prime at googlegroups.com. > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. > -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From supercarv at googlemail.com Tue Dec 20 11:57:13 2011 From: supercarv at googlemail.com (Richard Carvey) Date: Tue, 20 Dec 2011 03:57:13 -0800 Subject: Using mouse click to select one of several alternative responses In-Reply-To: Message-ID: Hi Paul, Thanks for that. It looks like it makes sense to me, and should be quite helpful. I'll have a crack at making it work after Christmas. I appreciate the speedy reply though. Thanks again, Richard On Dec 19, 10:44?pm, Paul Groot wrote: > Hi Richard, > > You might have a look at the VAS example script I posted a while ago > onhttp://pfcgroot.nl/e-prime/83-example-scripts/80-visual-analogue-scal.... > This example contains a bit more script then you need, but the > ACK_HandleResponse function (in the user script tab) demonstrates how > you can use boundaries of (text-)objects as hit area for mouse clicks. > The core of this piece of script uses the Mouse.GetCursorPos and > Object.HitTest functions to implement two user confirmation buttons. > It can be easily adapted for more buttons. Also, instead of using the > boundaries of a slide element (i.e. text or image), you can also make > your own hit-test function. > > cheers, > Paul Groot > > 2011/12/19 Richard Carvey : > > > > > Hi, > > > I'm trying to build an experiment in which nine items are displayed on > > screen, and participants need to select one fo them using the mouse. I > > have seen a couple of people mention issues with clicks anywhere on > > screen being registered as responses, but I would like to make sure > > that only clicks within the bounds of the nine items are accepted, and > > that the specific item clicked is logged. Clicking any of the nine > > items should advanc the program, no one answer is correct or > > incorrect. > > > If anybody could offer me some advice on how to achieve this, it would > > be greatly appreciated. Annoyingly, whoever installed E-Prime (1.2, > > btw) on this computer saw fit not install the help functions correctly/ > > at all. > > > Thanks, > > > Richard > > > -- > > You received this message because you are subscribed to the Google Groups "E-Prime" group. > > To post to this group, send email to e-prime at googlegroups.com. > > To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. > > For more options, visit this group athttp://groups.google.com/group/e-prime?hl=en.- Hide quoted text - > > - Show quoted text - -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From brieana.viscomi at gmail.com Tue Dec 20 20:20:26 2011 From: brieana.viscomi at gmail.com (Brieana) Date: Tue, 20 Dec 2011 12:20:26 -0800 Subject: Pulling from multiple nested lists at the same time and on the same text slide In-Reply-To: Message-ID: Thanks for the response! Silly me did not even think about using a comma between the names of nested lists located on the same level. That helped a lot and I'm happy to report that everything works just as I wanted it to now. Thanks again, Brieana On Dec 11, 7:59?am, liwenna wrote: > Hello Brieana, > > First, I wonder why you decided to use colon syntax rather than simple > 'brackets' ([variablename] instead of [variablename:x]). I suppose > therefore that you have the values need to be used within one trial > (procedure) nested in a vertical manner: each value it's own level in > a list. This may be more intuitive to you as a person, but it's not to > e-prime (hence you have to use the colon's to get e-prime to pull a > value of a different level of the list). > > E-prime's normal 'way to do things' is to use a single level of each > list (in a nested series of lists) on each run of a procedure. I would > advice you to give in to e-prime's way and transpose the nested lists > so that each value is stored in a separate attribute and that each > level of a nested list contains a series of values that is to be used > within one run of the procedure. I.e. nestedlist1 could have 7 > attributes called v1, v2 etc to v7. Each of these 7 values would be > used within one run of the procedure and the next level of the list > could contain the same values but in a different order etc. in order > to achieve randomization of the text locations -> the textboxes 1 to 7 > should be given the 'text' [v1], [v2] etc (note: no :x) in order to > resolve to/pull out the values of the attributes v1, v2 etc. If you'd > set the nestlist to be presented in a random order, a random level of > the list would be used for each run of the procedure. > > If you nest multiple lists e-prime should be able to draw values from > two nested lists onto the same slide, provided that the two lists do > not have identical attribute names from which values are drawn. I.e. > in your master lists in the nested column you can nest multiple lists > divided by comma's (nestedlist1, nestedlist2). Then if one of the > nested lists contains the values that you need for textboxes 1 to 7 > (v1, v2 - v7) and the other the values for textboxes 8 to 14 (v8 - > v14), e-prime should run just fine. > > Hope this helps, > > AW > > On 10 dec, 18:54, Brieana wrote: > > > > > > > > > Hi, > > > I have 5 procedures. In each procedure, there are 3 text slides each > > with about 14 text boxes. The reason for so many text boxes is because > > it was the only way I could figure out how to make a 'faux' table in e- > > Prime without using any heavy coding. On these text slides, I have > > some text boxes that are to pull values from one nested list and other > > textboxes that are to pull values from a different nested list. More > > specifically, I want each textbox to randomly present only one value > > from the nested list without repeating any of the values that are > > being presented in the other textboxes drawing from the same list. > > After reading the Users Guide, I thought that colon syntax was the way > > to go. I was able to get the textboxes that were to pull values from > > one nested list to work so that only one value was presented in each > > textbox, the order was random, and there weren't any repeats. However, > > as soon as I added the other nested list to the procedure using the > > colon syntax method, e-prime would stop running once it got to that > > particular text slide and read that the last attribute referenced on > > the slide did not exist (even though it was clearly listed and defined > > on my list). > > > Would anyone happen to know of a way for half of the textboxes on a > > slide to only draw one value from a nested list and the other half on > > the same slide to only draw one value from a different nested list? > > > I found that I was able to have each group of textboxes draw from > > their respective nested list if I defined each nested list on the same > > master list and their attributes. However, I want these values to be > > presented SIMULTANEOUSLY. Since each nested list was referenced in the > > same master list, I could only get the values to show up on the slide > > in a sequential manner. I need both sets of values presented together. > > > Any and all ideas or help would be greatly appreciated! > > > Thank you, > > > Brieana -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From brieana.viscomi at gmail.com Tue Dec 20 20:25:14 2011 From: brieana.viscomi at gmail.com (Brieana) Date: Tue, 20 Dec 2011 12:25:14 -0800 Subject: Bolding the highest value out of a series of randomly presented values Message-ID: Hello, Does anyone know of a way to have e-Prime randomly pull and present numeric values in textboxes while also having it bold the highest (or lowest) value that's presented? My study is set up so that participants are like bidders in an auction and, at times, must see the previous highest bid bolded. Any and all insight would be greatly appreciated! Thank you, Brieana -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From ioannis.arapakis at hotmail.com Fri Dec 23 19:47:47 2011 From: ioannis.arapakis at hotmail.com (ioannis.arapakis at hotmail.com) Date: Fri, 23 Dec 2011 11:47:47 -0800 Subject: detection of image display & triggering of TMS Message-ID: Hi, I want to create an Inline object that will detect in time and accurately when an image display is presented - onset time - (with an if statement?) and then trigger after 30 ms the TMS pulse. I am not sure what the code should be, neither if the inline should precede the imagedisplay object. Could you please suggest some code? -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en. From brad.mattan at gmail.com Sat Dec 24 04:15:58 2011 From: brad.mattan at gmail.com (Brad Mattan) Date: Fri, 23 Dec 2011 20:15:58 -0800 Subject: Correct, Incorrect and No Response: Differential Feedback Display Times Message-ID: I am trying to program e prime to display "correct" after a correct response for 1000 ms, and "incorrect" after an incorrect response for 1500ms. I also wish to display "please try to respond faster" for 2000 ms in the event a participant takes longer than 1500 ms to respond to the stimulus. Thanks to a previous post, I used the following inline to code for the correct and incorrect responses. I have also been able to set the response time limit at 1500 ms. However, I have been unable to determine how to set the no response feedback display at 2000 ms. Any suggestions would be much appreciated! -Brad Const DurCorrect as Integer = 1000 Const DurIncorrect as Integer = 1500 If StimText.ACC Then ' correct answer c.SetAttrib "FeedDur", DurCorrect Else ' incorrect answer c.SetAttrib "FeedDur", DurIncorrect End If -- You received this message because you are subscribed to the Google Groups "E-Prime" group. To post to this group, send email to e-prime at googlegroups.com. To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com. For more options, visit this group at http://groups.google.com/group/e-prime?hl=en.