<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/&quot;CE4BR3cycCp7ImA9WxBTEU4.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218</id><updated>2009-12-06T12:55:56.998-08:00</updated><title>Guineu</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>58</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><link rel="self" href="http://feeds.feedburner.com/Guineu" type="application/atom+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry gd:etag="W/&quot;CE4ERn4_eyp7ImA9WxBTEU4.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-6738050445098699242</id><published>2009-11-30T14:39:00.001-08:00</published><updated>2009-12-06T12:55:07.043-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-06T12:55:07.043-08:00</app:edited><title>Builds 390 - 412</title><content type="html">&lt;span xmlns=""&gt;&lt;p&gt;I'll update this blog entry to collect all changes that have been implemented within the past few months. The past month's activity on the release blog doesn't do justice to the development of Guineu. There have been a number of changes.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Build &lt;strong&gt;412&lt;/strong&gt; introduces the SelStart and SelLength properties for the Editbox control.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Build &lt;strong&gt;405&lt;/strong&gt; adds the SET PROCEDURE TO and SET CLASSLIB TO command. This makes it easier to create more complex applications. Additionally, GuineuIDE handles controls correctly that are stored in a class library. With this release you might have to delete the generated .SCX.PRG files in order to regenerate those using the latest version of GuineuIDE. Starting with build 405 you can create your own VCX class libraries and use those classes on different forms.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Build &lt;strong&gt;403&lt;/strong&gt; includes the Timer control. Available properties are Enabled and Interval. Timers raise the Init and Timer events.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;SYS(8015) is new in build &lt;strong&gt;402&lt;/strong&gt;. This function adds SMTP capabilities to Guineu. To send an e-mail from the device you can use the following one liner:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=";font-family:Courier New;font-size:10pt;"  &gt;&lt;span style="font-size:100%;"&gt;Sys(8015, ;&lt;br /&gt;  "from@server.com", ;&lt;br /&gt;  "to@server.com", ;&lt;br /&gt;  "smtp.server.com","username","password", ;&lt;br /&gt;  "Subject", ;"Body" ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;You need internet connectivity on the device in order to send mails. Sending mails can be an alternative to printing a receipt.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Devices behave differently when you press the Enter key while the focus is on a button. Some devices trigger the Click event, some don't. Build &lt;strong&gt;400&lt;/strong&gt; adds SYS(8014) to control this behavior. To explicitly call the Click event when Enter is pressed, use the following option:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=";font-family:Courier New;font-size:100%;"  &gt;SYS(8014,"ButtonClickOnEnter",1)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;You revert to the device's default behavior by using this line:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=";font-family:Courier New;font-size:100%;"  &gt;SYS(8014,"ButtonClickOnEnter",0)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Build &lt;strong&gt;395&lt;/strong&gt; adds the LOOP command. It works on all three supported loop types: FOR, DO WHILE and SCAN. SCATTER and GATHER have been extended in the same build. In addition to the NAME clause, they now support the MEMVAR and MEMO keywords.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-6738050445098699242?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/6738050445098699242/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=6738050445098699242" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/6738050445098699242?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/6738050445098699242?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/11/builds-389-412.html" title="Builds 390 - 412" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DEIDQXk8cSp7ImA9WxJbFUw.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-7386270175168638234</id><published>2009-07-25T03:09:00.001-07:00</published><updated>2009-07-25T03:09:30.779-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-25T03:09:30.779-07:00</app:edited><title>Build 389</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;&lt;img alt='' src='http://www.foxpert.com/images/072509_1009_Build3891.png' align='left'/&gt;&lt;span style='color:black; font-family:Verdana'&gt;&lt;br /&gt;				&lt;/span&gt;&lt;/p&gt;&lt;p&gt;SYS(8012) for controlling the Software-based Input Panel has been in the product for the past few weeks, but not been documented at all. The latest build mainly brings the documentation on par with the product, at least as far as the SIP is concerned. You find a detailed description of SYS(8012) on &lt;a href='http://guineu.net/help/index.html?sys8012___software_based_input_panel.htm'&gt;http://guineu.net/help/index.html?sys8012___software_based_input_panel.htm&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-7386270175168638234?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/7386270175168638234/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=7386270175168638234" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7386270175168638234?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7386270175168638234?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/07/build-389.html" title="Build 389" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DEMHQXw8eip7ImA9WxJbFE8.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-6570355613892204085</id><published>2009-07-24T02:02:00.001-07:00</published><updated>2009-07-24T02:07:10.272-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-24T02:07:10.272-07:00</app:edited><title>Build 388</title><content type="html">&lt;span xmlns=""&gt;&lt;p&gt;Finally, FTP transfer is available for the mobile engine, as well. SYS(8010) allows you to send or receive files from any mobile device with internet connectivity with a single line of code using the FTP protocol:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;MessageBox( Sys(8010, ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;"put", ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;"ftp.server.com/test.txt", ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;"username", ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;"password", ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;"hello world" ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;MessageBox(Sys(8010, ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;"get", ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;"ftp.server.com/test.txt", ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;"username", ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;"password" ;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;))&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Please note that you need a real internet connection for SYS(8010). The shared internet connection provided by ActiveSync/WMDC while the device is in the cradle (or connected with the PC) does not work reliable for FTP connections.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-6570355613892204085?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/6570355613892204085/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=6570355613892204085" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/6570355613892204085?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/6570355613892204085?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/07/build-388.html" title="Build 388" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;C0IDQn06eip7ImA9WxJUGU4.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-7325096078755928420</id><published>2009-07-18T08:39:00.001-07:00</published><updated>2009-07-18T08:39:33.312-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-18T08:39:33.312-07:00</app:edited><title>Build 387</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;The desktop version got left behind a bit. Several features like RowSource haven't made it to the desktop engine when I introduced them to the mobile engine. These issues have now been corrected. The past seven builds were mostly lots of smaller bug fixes .&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-7325096078755928420?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/7325096078755928420/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=7325096078755928420" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7325096078755928420?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7325096078755928420?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/07/build-387.html" title="Build 387" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DUcHRHY6eCp7ImA9WxJUEks.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-7651433615600628218</id><published>2009-07-10T16:03:00.001-07:00</published><updated>2009-07-10T16:03:55.810-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-10T16:03:55.810-07:00</app:edited><title>Build 380</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;A number of bugs have been fixed in the last builds. When Guineu causes an exception (aka crashes) it writes an exception.txt file with additional information where the crash happened. Now you also have the calling hierarchy of your programs so you can see which line of code caused the problem.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Newly implemented are SET DECIMALS. The ? and ?? commands do not yet completely respect the SET DECIMALS setting, though. SYS(1079), an undocumented function in VFP, is also implemented. SYS(1079) causes a crash for diagnostic purposes, if you want to see what the dialog looks like.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;SYS(8013) is the counter part of DATETIME(). You can call it to change the local system time provided you have the permissions to change the time. On Windows Mobile changing the time does not require special privileges as it does on desktop systems. ADIR() now provides the date and time of the last file modification as well as file attribute information. The time respects the current daylight saving settings and like Microsoft Visual FoxPro and Explorer. ADIR() and SYS(8013) can be combined to implement a simple time synchronization between the mobile device and the server.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-7651433615600628218?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/7651433615600628218/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=7651433615600628218" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7651433615600628218?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7651433615600628218?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/07/build-380.html" title="Build 380" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;CEUHSH07eSp7ImA9WxJVEk8.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-7338459865107914427</id><published>2009-06-28T13:50:00.001-07:00</published><updated>2009-06-28T13:50:39.301-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-28T13:50:39.301-07:00</app:edited><title>Build 369</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;ADEL() is now available, as well.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-7338459865107914427?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/7338459865107914427/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=7338459865107914427" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7338459865107914427?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7338459865107914427?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/06/build-369.html" title="Build 369" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;Ck8FQ349eSp7ImA9WxJVEkw.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-7605075185075071455</id><published>2009-06-28T10:40:00.001-07:00</published><updated>2009-06-28T10:40:12.061-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-28T10:40:12.061-07:00</app:edited><title>Build 368</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;RowSource and RowSourceType are now available for comboboxes and listboxes on mobile devices. Right now the only supported value for RowSourceType is 1 = Values.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-7605075185075071455?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/7605075185075071455/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=7605075185075071455" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7605075185075071455?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7605075185075071455?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/06/build-368.html" title="Build 368" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;C0QESXkyfCp7ImA9WxJWF0k.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-2991532939887393270</id><published>2009-06-23T00:14:00.001-07:00</published><updated>2009-06-23T00:15:08.794-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-23T00:15:08.794-07:00</app:edited><title>Build 365</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;While there have been only few posts here on the release blog, I've been constantly posting new versions of Guineu over the past few months. I've made many, many bug fixes in this time, but haven't added a lot of new features. Constantly reading blog posts that merely state "There's a new bug fix" doesn't seem very appealing to me, so I rather not posted those.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;There've been a few new features in the meantime. DELETE FILE and SAVE TO are now working. SYS(8010) allows FTP transfer albeit for now only in the desktop version. SYS(8011) is a debugging function that produces extensive log information. &lt;br /&gt;&lt;/p&gt;&lt;p&gt;SYS(8012) is a brand new function that gives you access to the Software Input Panel (SIP) on mobile devices. That's the writing area you use with the stylus when there's no keyboard attached to the device. I'll update the documentation soon.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Tomorrow morning I'll be presenting in Prague at the conference. Topic of the session is Mobile development with VFP and Guineu.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-2991532939887393270?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/2991532939887393270/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=2991532939887393270" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/2991532939887393270?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/2991532939887393270?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/06/build-365.html" title="Build 365" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;A0UMRHs_eSp7ImA9WxVVEEQ.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-5798518477490657964</id><published>2009-03-03T08:51:00.000-08:00</published><updated>2009-03-03T08:54:45.541-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-03T08:54:45.541-08:00</app:edited><title>Updated documentation</title><content type="html">I've updated the setup instruction and first steps section on mobile development in the Guineu documentation. Following these steps should now enable you to set up Guineu, the device emulator and create your first form. If you had difficulties to get Guineu running with the previous documentation, please give the new documentation a try.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-5798518477490657964?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/5798518477490657964/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=5798518477490657964" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/5798518477490657964?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/5798518477490657964?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/03/updated-documentation.html" title="Updated documentation" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;A0UMQnc-eip7ImA9WxVVEE8.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-6988498438589136197</id><published>2009-03-02T13:26:00.000-08:00</published><updated>2009-03-02T13:28:03.952-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-02T13:28:03.952-08:00</app:edited><title>Build 341</title><content type="html">In a number of cases there was an exception when simply opening a table when certain field types were present. The new build fixes this issue.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-6988498438589136197?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/6988498438589136197/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=6988498438589136197" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/6988498438589136197?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/6988498438589136197?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/03/build-341.html" title="Build 341" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;CkQHRHw8eCp7ImA9WxVWEEU.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-2441092546667727418</id><published>2009-02-19T13:49:00.001-08:00</published><updated>2009-02-19T13:52:15.270-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-19T13:52:15.270-08:00</app:edited><title>Build 340</title><content type="html">&lt;span xmlns=""&gt;&lt;p&gt;GuineuIDE has been enhanced a bit. When you have multiple Project Manager windows open at the same time it can be difficult to figure out which project is currently controlled through the Guineu menu. This has become easier since the project name is now displayed in the menu.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://www.foxpert.com/images/021909_2149_Build3401.png" /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;A new option to clean up the project directory has been added. Choosing this option removes all temporary files that GuineuIDE creates in order to build the EXE. Aside from the C# files these are mainly the *.SCX.PRG and *.VCX.PRG file that contain converted versions of the visual files. Use this option after you installed a new build of Guineu or when Guineu isn't picking up any of the changes you make to a visual file.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;When your project file contains an icon, this icon is now added to the EXE. Finding your application in File Explorer on the mobile device should now be significantly easier.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Mostly you'll be building the same project type repeatedly during development. After you picked on of the build targets in the Guineu Build menu, this target is added as a shortcut directly to the Guineu menu as the very first item. Repeated builds should be easier this way.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;A few bug fixes deal with the conversion of properties. Some color properties where not detected correctly. Also, there was one more issue with long properties that contain double quotes, specifically the _MemberData property. Those are fixed now.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-2441092546667727418?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/2441092546667727418/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=2441092546667727418" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/2441092546667727418?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/2441092546667727418?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/02/build-340.html" title="Build 340" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DUAMQn44fSp7ImA9WxVQFU8.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-3305237185313155502</id><published>2009-02-01T14:34:00.001-08:00</published><updated>2009-02-01T14:36:23.035-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-01T14:36:23.035-08:00</app:edited><title>Build 336</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;&lt;img alt='' src='http://www.foxpert.com/images/020109_2234_Build3361.png' align='left'/&gt;Forms can now be scrollable. This should make it easier for you to create forms that require a lot of input. To enable scroll bars for a form merely set the &lt;a href='http://guineu.foxpert.com/help/scrollbars_property.htm'&gt;ScrollBars&lt;/a&gt; property to 3.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Guineu differs in a few details from Microsoft Visual FoxPro. Unlike in VFP the property is read-/writable at runtime. So you can turn on and off scrollbars as needed. However, you can only turn on horizontal and vertical scrollbars together. The scrollbars only appear when there's something to scroll to, though. Similar to VFP the rightmost and bottommost controls define the extension of the scrollable area.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Parameters passed to CREATEOBJECT() and NEWOBJECT() are forwarded to the Init event. STR() does now support all three parameters. A few issued with SECONDS() and SYS(2) have been fixed.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-3305237185313155502?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/3305237185313155502/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=3305237185313155502" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/3305237185313155502?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/3305237185313155502?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/02/build-336.html" title="Build 336" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;D0EHQHg-cSp7ImA9WxVRFUo.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-8626645030809765209</id><published>2009-01-21T14:02:00.001-08:00</published><updated>2009-01-21T14:07:11.659-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-21T14:07:11.659-08:00</app:edited><title>Build 333</title><content type="html">&lt;span xmlns=""&gt;&lt;p&gt;The latest addition to Guineu is &lt;a href="http://guineu.foxpert.com/help/sys8009___http_data_transfer.htm"&gt;SYS(8009)&lt;/a&gt;. With this function you can send and receive data over the internet or intranet using the HTTP protocol.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;Local lcWeb&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;lcWeb = Sys(8009,"GET","http://guineu.foxpert.com")&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;MessageBox( Left(m.lcWeb,500) )&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;"&gt;lcWeb = Sys(8009,"POST","http://server/process.php","data")&lt;/span&gt;&lt;/p&gt;&lt;p&gt;You are not limited to transfer text data. For instance, you can have a web page that calls a Visual FoxPro COM server. The COM server could execute a query into a temporary DBF and then return the DBF file. In the same way you can transfer a DBF file to the server where server side scripts can process the content.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Instead of a VFP COM server you could also use a PHP script that accesses a MySql database.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;If you want to pass on state information to a VFP application running on the web server, you can use SAVE MEMORY to save all current variables. On the backend you can use RESTORE MEMORY to load the variable set into memory. This is especially useful when the remote script executes a query and query parameters have been stored in local variables.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-8626645030809765209?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/8626645030809765209/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=8626645030809765209" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/8626645030809765209?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/8626645030809765209?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/01/build-333.html" title="Build 333" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DUIMSXs7fCp7ImA9WxVRE0Q.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-8659711001451766621</id><published>2009-01-19T12:39:00.001-08:00</published><updated>2009-01-19T12:39:48.504-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-19T12:39:48.504-08:00</app:edited><title>Build 331</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;I've fixed a number of bugs. Most importantly, there was a breaking bug in the desktop UI engine that is now fixed. If launching a form brings up an error right away, please download this build. Some minor issues in ALINES() and STRTOFILE() have also been fixed.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-8659711001451766621?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/8659711001451766621/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=8659711001451766621" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/8659711001451766621?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/8659711001451766621?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2009/01/build-331.html" title="Build 331" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;A0UFQXY4eip7ImA9WxRVFE0.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-275054979120280547</id><published>2008-11-11T05:13:00.001-08:00</published><updated>2008-11-11T05:13:30.832-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-11T05:13:30.832-08:00</app:edited><title>Build 329</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;Today's build implements SET NOTIFY. While there are currently no messages that are suppressed by SET NOTIFY, this is one command less that you would need to remove from your code. When Guineu encountered an unknown command, in the past you got an error message stating line 1 as the culprit. The latest version accurately reports the compiled code line that caused the problem&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Tab order handling: The &lt;a href='http://guineu.foxpert.com/help/tabindex_property.htm'&gt;TabIndex property&lt;/a&gt; is now available for all controls on mobile devices. For desktop controls TabIndex has no effect, as of now, but doesn't cause an error, either. For desktop controls the property will be available shortly.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Two other reported bugs have been fixed: Passing THIS and THISFORM to a function doesn't raise an invalid type error anymore. Furthermore, accessing a non-existing object brings up a proper "Member not found" error message instead of a .NET runtime exception.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-275054979120280547?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/275054979120280547/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=275054979120280547" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/275054979120280547?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/275054979120280547?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/11/build-329.html" title="Build 329" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;CUcDRno9fSp7ImA9WxRVEUk.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-6296151387113980326</id><published>2008-11-08T03:17:00.001-08:00</published><updated>2008-11-08T03:17:57.465-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-08T03:17:57.465-08:00</app:edited><title>New online help</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;The online help (&lt;a href='http://guineu.foxpert.com/help'&gt;http://guineu.foxpert.com/help&lt;/a&gt;) has been enhanced. Not only does the help file now contain additional content. There's also a new search feature available that performs a full text search on the entire documentation.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-6296151387113980326?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/6296151387113980326/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=6296151387113980326" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/6296151387113980326?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/6296151387113980326?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/11/new-online-help.html" title="New online help" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;C0MFQHY-eSp7ImA9WxRVEU0.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-7942197489584734724</id><published>2008-11-07T15:43:00.001-08:00</published><updated>2008-11-07T15:43:31.851-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-07T15:43:31.851-08:00</app:edited><title>Build 322</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;&lt;img alt='' src='http://www.foxpert.com/images/110708_2343_Build3221.png' align='left'/&gt;When a package is delivered to your home these days, you don't sign on paper anymore. Instead, the delivery person is asking you to sign on their mobile scanner. The same requirement came up for multiple Guineu applications, be it to sign for delivery, for receipts, etc.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I'm happy to report that such a control is now available in Guineu. Before you can use the new Signature control, you have to activate the Signature base class with the new SYS(8008) function. This SYS function provides additional base classes that are not in Visual FoxPro. To remain compatible with Visual FoxPro, these classes are disabled by default.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;There's also a new Signature &lt;a href='http://guineu.foxpert.com/help/index.html?signature_sample.htm'&gt;sample project&lt;/a&gt; with the form you see on the figure. Signatures can be stored in a memo field in either a binary format that can be loaded into the control, or as a bitmap. You can use an Image control and assign the content of the memo field to the PictureVal property to display the signature. PictureVal has been added to the Image control in this release, as well.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-7942197489584734724?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/7942197489584734724/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=7942197489584734724" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7942197489584734724?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7942197489584734724?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/11/build-322.html" title="Build 322" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DkMDQ3k7eSp7ImA9WxRXE0s.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-2232352493878498635</id><published>2008-10-18T14:14:00.001-07:00</published><updated>2008-10-18T14:14:32.701-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-18T14:14:32.701-07:00</app:edited><title>Build 317</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;Currently I'm at the SouthWest FoxPro conference in Phoenix giving various sessions. Among them is one session about doing mobile development with Guineu.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The last few versions have seen a number of bug fixes. GuineuIDE is now faster as forms and classes are only regenerated when they have changed. New in the language is the BOF() function as requested on the forum. During yesterday's session support for writing memo fields has been requested. That's also available in the new build. Forms now support the Unload event. Editboxes and Textboxes do have the ReadOnly event.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The help file has been updated. As it turned out, a number of functions have been implemented, but weren't documented.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-2232352493878498635?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/2232352493878498635/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=2232352493878498635" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/2232352493878498635?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/2232352493878498635?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/10/build-317.html" title="Build 317" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;D04HR3o4eSp7ImA9WxRSEkg.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-4518031387664164249</id><published>2008-09-12T14:45:00.001-07:00</published><updated>2008-09-12T14:45:36.431-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-12T14:45:36.431-07:00</app:edited><title>Build 302</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;In the past I've been using a combination of Visual Studio 2005 and Visual Studio 2008 to develop Guineu. I finally upgrade Visual Studio on the build machine, as well, and moved development completely to Visual Studio 2008. As a user you aren't affected by this move since Guineu remains a .NET 2.0 application.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The past few releases mainly fixed a number of bugs: SELECT 0 does now move to the next free work area. Edit boxes have a vertical scroll bar just like in Visual FoxPro. Checkboxes deal properly with the Value property. Deleted records are not shown in the grid. Replacing a string field with an empty string clears the field now.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-4518031387664164249?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/4518031387664164249/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=4518031387664164249" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/4518031387664164249?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/4518031387664164249?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/09/build-302.html" title="Build 302" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;CEcBSXc_fyp7ImA9WxRTFEk.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-3262165077666048245</id><published>2008-09-03T04:40:00.001-07:00</published><updated>2008-09-03T04:40:58.947-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-03T04:40:58.947-07:00</app:edited><title>A new support forum</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;I've frequently been asked if there's a place for Guineu users to exchange ideas, ask questions, get help, and request features from the developer. Previously I created a newsgroup on my own server assuming that offline availability is a big plus. It seems though, that I was wrong in this assumption. Even worse was probably the decision to make the newsgroup password protected. Hardly anybody found it.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Today I finally got around installing a web based forum (phpBB) on my web server. The new forum is not hidden, not password protected and easily discoverable: &lt;a href='http://guineu.foxpert.com/forum'&gt;http://guineu.foxpert.com/forum&lt;/a&gt;. For now there are only three sections, one for each language: English, Spanish and German. I'm looking forward to seeing you all there!&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-3262165077666048245?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/3262165077666048245/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=3262165077666048245" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/3262165077666048245?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/3262165077666048245?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/09/new-support-forum.html" title="A new support forum" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;A0AMRnk5cCp7ImA9WxdUGUQ.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-9061381233998612392</id><published>2008-08-05T22:16:00.001-07:00</published><updated>2008-08-05T22:16:27.728-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-05T22:16:27.728-07:00</app:edited><title>Build 295</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;The past builds have fixed a number of small bugs. There are also some internal changes to prepare for future features and extensions. The STORE command and the TTOD() function are newly implemented. Some other functions like MESSAGEBOX() have been extended to cover more scenarios.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-9061381233998612392?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/9061381233998612392/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=9061381233998612392" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/9061381233998612392?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/9061381233998612392?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/08/build-295.html" title="Build 295" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;CEEMSX0_cCp7ImA9WxdXF04.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-3972442345607577710</id><published>2008-06-29T02:44:00.001-07:00</published><updated>2008-06-29T02:44:48.348-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-29T02:44:48.348-07:00</app:edited><title>DevCon in Prague</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;Tomorrow I'm heading to Prague where - in addition to three other sessions - I'll be talking about Guineu. There are two sessions on Guineu planned. The one on Tuesday will be in English, the one on Thursday in English and Czech.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;If you want to see Guineu on the various platforms without having to install the Compact Framework, Virtual PC, the device emulator, device images, Microsoft SQL Server 2005, SQL Management Studio, VMWare Player, Linux, Mono, Visual WebGUI, IIS, ASP.NET, and so forth, find your way to Prague next week: &lt;a href='http://www.daquas.cz/fox/devcon2008/devcon2008an.htm'&gt;http://www.daquas.cz/fox/devcon2008/devcon2008an.htm&lt;/a&gt;.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-3972442345607577710?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/3972442345607577710/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=3972442345607577710" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/3972442345607577710?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/3972442345607577710?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/06/devcon-in-prague.html" title="DevCon in Prague" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DkcGQXs9fCp7ImA9WxdXFUw.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-7497477490007437736</id><published>2008-06-26T14:00:00.001-07:00</published><updated>2008-06-26T14:00:20.564-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-26T14:00:20.564-07:00</app:edited><title>Build 270</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;The grid has been improved. It now properly works on ordered and filtered tables. The Width property in columns is also working.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The DELETE command and the DELETED() function are new in this build. &lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-7497477490007437736?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/7497477490007437736/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=7497477490007437736" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7497477490007437736?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/7497477490007437736?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/06/build-270.html" title="Build 270" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;D0IDQXs8eCp7ImA9WxdQGUQ.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-8176708880818498951</id><published>2008-06-20T13:59:00.001-07:00</published><updated>2008-06-20T13:59:30.570-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-20T13:59:30.570-07:00</app:edited><title>Build 266</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;Andrew MacNeill has interviewed me for his latest &lt;a href='http://akselsoft.libsyn.com/index.php?post_id=345589'&gt;FoxShow&lt;/a&gt;. You can probably tell from the interview that I was quite nervous with this one being the first time. It's never ceases to amaze me what has become possible during only the past few years and is now taken for granted. I mean a transatlantic interview and we only need to worry about the time zone differences…&lt;br /&gt;&lt;/p&gt;&lt;p&gt;A couple of new features have been added to the latest release.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The mobile version of Guineu now supports the grid control. Unfortunately, the .NET DataGrid control in the Compact Framework isn't exactly what I would call a powerful control. So far, the grid class supports a cursor as a RecordSource. The cursor can be a DBF table that has been opened, or the result of a query against the Microsoft SQL Server Compact engine.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Columns can have a ControlSource and Headers a Caption. Any other control in the column is currently ignored, meaning everything is displayed as text. Nonetheless, you can use columns of any data type. To change the color of grid lines use the GridLineColor property. To hide the grid you can change the GridLineColor to the background color of the form.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Right now there are still some limitations: Any filter and index tag is ignored. I'm working on that. The grid is also non-editable. This is a limitation of the .NET control which will take some more time to work around. The grid class will be added to the desktop version in a later build. Right now I focus on getting this to work flawlessly on the PDA.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Another new class is the Spinner control which is available in all versions of Guineu. Forms now support the Load event, which is a good place to open any table you plan to use as a ControlSource or RecordSource.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;For PDAs with a higher resolution than 320x240 there's some additional support. First of all, SYSMETRIC() can be used to return the screen resolution if you want to support multiple resolutions.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Guineu.compact.exe is a hi-res aware application. Any form you run through this loader has the full resolution available. If you don't need the higher resolution, you can enable automatic scaling with SYS(8006). The same function is necessary, if your PDA treats any application as a hi-res aware application. Some HP organizers seem to do this.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Any mobile application created with GuineuIDE.EXE is currently generated as a lo-res application. That means Windows pretends that the screen resolution is only 320x240 and scales internally. SYSMETRIC() also returns 320x240 in this case. If you need to create hi-res applications with GuineuIDE, please let me know.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The bad news at the end: I'm still working on the code to update CDX files. That part is a little more complicated since CDX files need to be fully integrated into Guineu. Otherwise it would be impossible to implement some features like seeking in a buffered table.&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-8176708880818498951?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/8176708880818498951/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=8176708880818498951" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/8176708880818498951?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/8176708880818498951?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/06/build-266.html" title="Build 266" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;AkUDQ30_fSp7ImA9WxdSEk8.&quot;"><id>tag:blogger.com,1999:blog-5190762195554470218.post-3131727219542463888</id><published>2008-05-19T13:16:00.001-07:00</published><updated>2008-05-19T13:17:52.345-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-05-19T13:17:52.345-07:00</app:edited><title>Build 248</title><content type="html">&lt;span xmlns=''&gt;&lt;p&gt;Some more minor changes: EOF() and TIME() are available. Pages fire the Activate event when the active page changes. Most controls have a Refresh() method. There were some issues with Refresh that are now fixed. ComboBoxes and ListBoxes have the DisplayValue property. The ComboBox now defaults to DropDown ComboBox on both, the desktop and the Windows Mobile platform. Properties containing images (Icon, DownPicture, etc.) are now properly enclosed in quotation marks when you build the project with GuineuIDE.&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5190762195554470218-3131727219542463888?l=guineu-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://guineu-blog.blogspot.com/feeds/3131727219542463888/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5190762195554470218&amp;postID=3131727219542463888" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/3131727219542463888?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5190762195554470218/posts/default/3131727219542463888?v=2" /><link rel="alternate" type="text/html" href="http://guineu-blog.blogspot.com/2008/05/build-248.html" title="Build 248" /><author><name>Guineu</name><uri>http://www.blogger.com/profile/18092546784467693071</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="12681970972217318980" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry></feed>
