<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>StudioWorks - Version 2009-10-10</title> <meta name="keywords" content="omnis studio, raining data, studioworks documentation" /> <link rel="stylesheet" type="text/css" href="http://www.studiotips.net/css/codedoc.css" /> <link rel="stylesheet" type="text/css" href="http://www.studioworks-dev.net/css/codedoc.css" /> </head> <body> <div id="container"> <p><a href = ../index.html > Sw4 </a> &nbsp &gt; &nbsp <a href = index.html > About </a> &nbsp &gt; &nbsp Version 2009-10-10</p> <a name="version20091010" /> <h2>Version 2009-10-10</h2> <p>This is a minor release with various bug fixes and minor enhancements.</p> <ol> <li><span class="nav">Lookup List More Button</span> - Each time the user clicks the <span class="nav">More</span> button, the lookup list scroll to the end to give visual feedback to the user that more records have been fetched.</li> <li><span class="nav">Query Builder</span> - Enhanced duplicate query prompt and methods to allow the user to select a different target library for the duplicate query.</li> <li><span class="nav">$isNumber</span> - Now using the <span class="code">isnumber()</span> function. This also solves the localization problem with countries that you , comma for the decimal character.</li> <li><span class="nav">Format Phone Number</span> - Added an enhancement to <span class="code">oFormatPhoneNumber</span> to set a default prefix. This allows user to just enter the last 4 digits of a North American phone number with the area code and prefix automatically being added.</li> <li><span class="nav">Programmer Workbench VCS Bugs</span> - Fixed some VCS related bugs that were causing false error messages.</li> <li><span class="nav">Prompt for Input</span> - Changes made for longer labels getting cut off. There is still a problem with Mac OS X calculating the text width in OS 4, that has been fixed in OS 5.</li> <li><span class="nav">Pushbuttons Spacing</span> - Fixed a small bug that was causing incorrect positioning of pushbuttons in <span class="code">wPushbuttons</span>.</li> <li><span class="nav">Toolbar Buttons</span> - Fixed a small bug with the <span class="code">$removeButton</span> code.</li> <li><span class="nav">FileOps External Unicode Change</span> - Changed <span class="code">$readfile</span> to <span class="code">$readcharacter(kUniTypeAuto,String)</span> in several location. <span class="code">oOpenLibraries</span> needs to be recopied from <span class="code">swBase4</span> to your application's main library. (See update notes below)</li> <li><span class="nav">Blowfish External</span> Changed from <span class="code">$decrypt</span> to <span class="code">$decryptchar</span> for Omnis 5 blowfish object.</li> <li><span class="nav">Web Security</span> Fixed encrypt/decrypt security code using <span class="code">bintohex()</span> and <span class="code">binfromhex()</span> functions.</li> <li><span class="nav">Email Send</span> Added a second SMTPSend attempt if the first attempt fails. Some ISPs automatically reject the first attempt to reduce spam.</li> </ol> <p>To update to this new release:</p> <ol> <li>Quit Omnis Studio.</li> <li>Backup your application! </li> <li>Replace the <span class="file">studioworks</span> folder.</li> <li>Open your application.</li> <li>Copy the oOpenLibraries object from swBase4/Tools to your main library. (Required for Omnis Studio 5.0)</li> <li>If you hit any snags, email me a zip of your application with instructions on when and where you are running into problems.</li> </ol>Each library and the modifications in the release are listed below. The modifications are compiled from the <span class="code">@MOD</span> tag comments found in the methods of the classes in the library. <a name="myappmain" /> <h3>myAppMain</h3> <span class="code">oOpenLibraries/retPathStudioWorksFolder</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,String). $readfile into string breaks in Omnis Studio 5. <a name="mysysadmin" /> <h3>mySysAdmin</h3> No modifications <a name="swbase4" /> <h3>swBase4</h3> <p><span class="code">oEmail/$sendEmail</span> <span class="moddateby">(2009-10-06 Doug K per Mike M.)</span><br /> If first SMTPSend fails, give it one more try.</p> <p><span class="code">oEncryptDecrypt/$decryptList</span> <span class="moddateby">(2009-10-07 Doug K.)</span><br /> Changed from $decrypt to $decryptchar for Omnis 5 blowfish object.</p> <p><span class="code">oEncryptDecrypt/$decryptString</span> <span class="moddateby">(2009-10-07 Doug K.)</span><br /> Changed from $decrypt to $decryptchar for Omnis 5 blowfish object.</p> <p><span class="code">oEncryptDecrypt/$encryptList</span> <span class="moddateby">(2009-10-07 Doug K.)</span><br /> Changed from $encrypt to $encryptchar for Omnis 5 blowfish object.</p> <p><span class="code">oEncryptDecrypt/$encryptString</span> <span class="moddateby">(2009-10-07 Doug K.)</span><br /> Changed from $encrypt to $encryptchar for Omnis 5 blowfish object.</p> <p><span class="code">oExportImportData/$importReturnList</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,String). $readfile into string breaks in Omnis Studio 5.</p> <p><span class="code">oFunctions/$isNumber</span> <span class="moddateby">(2009-10-01 Doug K.)</span><br /> Replaced old method code with the new isnumber() function. This also solves the localization problem with German decimal separator as noted by Matthias H.</p> <p><span class="code">oMetaDataQueryCol_Model/$updateQueryCols_addschemacolname</span> <span class="moddateby">(2009-08-27 Doug K.)</span><br /> Bug fix. Set rClass in the loop.</p> <p><span class="code">oMetaDataQueryCol_Model/$updateQueryCols_moveschemacolname</span> <span class="moddateby">(2009-08-27 Doug K.)</span><br /> Bug fix. Set rClass in the loop.</p> <p><span class="code">oOpenLibraries/retPathStudioWorksFolder</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,String). $readfile into string breaks in Omnis Studio 5.</p> <p><span class="code">oPaths_StudioWorks/$:PathStudioWorksFolder</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,String). $readfile into string breaks in Omnis Studio 5.</p> <p><span class="code">oPaths_StudioWorks/$retStartupItemsFilePropertiesList</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,String). $readfile into string breaks in Omnis Studio 5.</p> <p><span class="code">oPrimaryKeys/$getNextPrimaryKey</span> <span class="moddateby">(2009-10-01 Doug K per Andy H.)</span><br /> Added an isclear(pfRetNextKey) test if FlagOK=kTrue, just to be sure a valid pkey value is returned.</p> <p><span class="code">oStartupSettingsFile/loadStartupItemsFilePropertiesList</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,String). $readfile into string breaks in Omnis Studio 5.</p> <p><span class="code">wLogFileViewer/loadLogFileContents</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,String). $readfile into string breaks in Omnis Studio 5.</p> <p><span class="code">wSQLQueryBuilder/$duplicateClass</span> <span class="moddateby">(2009-10-02 Doug K per Mike M request.)</span><br /> Enhanced method to allow duplicate a query to a different library.</p> <span class="code">wSQLQueryBuilder/$duplicateClass_continue</span> <span class="moddateby">(2009-10-02 Doug K per Mike M request.)</span><br /> Added method to allow duplicate a query to a different library. <a name="swdocs4" /> <h3>swDocs4</h3> <p><span class="code">oPaths/$:PathStudioWorksFolder</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,String). $readfile into string breaks in Omnis Studio 5.</p> <span class="code">oPaths/$retStartupItemsFilePropertiesList</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,String). $readfile into string breaks in Omnis Studio 5. <a name="swgui4" /> <h3>swGui4</h3> <p><span class="code">oFieldHandlerLookupTypeAhead/$fetchMore</span> <span class="moddateby">(2009-10-02 Doug K.)</span><br /> Send bScrollToEndofList=kTrue to setLookupListField method.</p> <p><span class="code">oFieldHandlerLookupTypeAhead/event_evMouseDown_LookupsList</span> <span class="moddateby">(2009-10-01 Doug K per Chuck M.)</span><br /> $setLookup is being called twice when the user clicks on the lookup list. To avoid the double call, set ibModified in this handler to kFalse after calling 'selectLookupListFieldLine'.</p> <p><span class="code">oFieldHandlerLookupTypeAhead/setLookupListField</span> <span class="moddateby">(2009-08-08 Doug K.)</span><br /> Added helpful OK message with debug hint if the lookup list window reference hasn't been set.</p> <p><span class="code">oFormatPhoneNumber/$:DefaultPrefix</span> <span class="moddateby">(2009-08-29 Doug K.)</span><br /> Added telphone prefix property</p> <p><span class="code">oFormatPhoneNumber/$formatPhoneNumber</span> <span class="moddateby">(2009-08-29 Doug K.)</span><br /> Added code to allow use of a telphone prefix.</p> <p><span class="code">oNavigationMenu_Model/$updateIcon</span> <span class="moddateby">(2009-10-07 Doug K.)</span><br /> Modified code to search for pos(low(pNewIconName) and pos(low(pOldIconName) so that it has better chance of catching wininstids that need their icon recalculated.</p> <p><span class="code">oWindowInstancesListEditor_Controller/$loadData</span> <span class="moddateby">(2009-08-21 Josh L.)</span><br /> Save any changed data before loading new data. Loading new data will not change anything in the lists, and to do this, I have to make sure all previous changes are saved.</p> <p><span class="code">oWindowInstances_Model/$rebuildData</span> <span class="moddateby">(2009-08-21 Josh L.)</span><br /> rebuilding the window instances list now only takes out the lines that are not in the rebuilt list and adds in new lines.</p> <p><span class="code">wEdit_abstract/$control</span> <span class="moddateby">(2009-08-07 Josh L. as per Chuck M.)</span><br /> Tested if the mode is view, then keypresses and mouse-clicks shouldn't set the window as modified ... mainly because they shouldn't modify the data.</p> <p><span class="code">wList_autoconfig/$attachHeadedListEventsObserver</span> <span class="moddateby">(2009-08-28 Doug K.)</span><br /> Added method to allow others to attach themselves as observers directly to the headed list events.</p> <p><span class="code">wLookupList/$set</span> <span class="moddateby">(2009-10-02 Doug K per Chuck M)</span><br /> Added parameter pbScrollToEndOfList and code to execute this. This is used when the user clicks the "More" button.</p> <p><span class="code">wPromptInput/$:PreferredHeight</span> <span class="moddateby">(2009-08-27 Josh L.)</span><br /> Add instance var to keep spacer height the same across methods and provide a single place to change it according to application.</p> <p><span class="code">wPromptInput/_addFieldAtPos</span> <span class="moddateby">(2009-08-27 Josh L.)</span><br /> Add instance var to keep spacer height the same across methods and provide a single place to change it according to application.</p> <p><span class="code">wPromptInput/addFieldsAndLabels</span> <span class="moddateby">(2009-08-20 Josh L.)</span><br /> I noticed there were some prompts with very long labels which were getting cut off. This precalculates the label width and field left so the prompt displays correctly NOTE: This only works if the template label and field have a valid font and size &gt; 0. (On my test mac this is not the case so it uses the template label width) Added Note: Tested this in Omnis Studio 5 and the $wintextwidth function now works with Mac OS X theme fonts.</p> <p><span class="code">wPromptInput/addFieldsAndLabels</span> <span class="moddateby">(2009-08-27 Josh L.)</span><br /> Add instance var to keep spacer height the same across methods and provide a single place to change it according to application.</p> <p><span class="code">wPushbuttons/$resize</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Bug fix. Changed 'type' to 'objtype' to correct spacing problem.</p> <p><span class="code">wToolbar/$#About</span> <span class="moddateby">(2009-10-01 Doug K.)</span><br /> Moved IconWidth local variable to class variable and renamed as ckIconWidth.</p> <p><span class="code">wToolbar/$#About</span> <span class="moddateby">(2009-10-01 Doug K.)</span><br /> Moved iSpacerWidth instance variable to class variable and renamed as ckSpacerWidth.</p> <p><span class="code">wToolbar/$#About</span> <span class="moddateby">(2009-10-01 Doug K.)</span><br /> Created class variable ckGap=16 to replace place in code where '16' is hard coded in.</p> <p><span class="code">wToolbar/$addButton</span> <span class="moddateby">(2009-10-06 Doug K.)</span><br /> Set the icon to k16x16. In Omnis Studio 5 one of the icons was showing up as 32x32.</p> <p><span class="code">wToolbar/$removeButton</span> <span class="moddateby">(2009-10-01 Doug K per Andy H)</span><br /> Recalc iCurrWidth when removing a button.</p> <span class="code">wWindowInstancesListEditor_View/$event</span> <span class="moddateby">(2009-08-24 Josh L.)</span><br /> Commented out saving the Menu Data because I don't understand why we need to save that after we rebuild the Window Data. <a name="swicons4" /> <h3>swIcons4</h3> No modifications <a name="swrefs4" /> <h3>swRefs4</h3> No modifications <a name="swreports4" /> <h3>swReports4</h3> No modifications <a name="swweb4" /> <h3>swWeb4</h3> <p><span class="code">oHTMLSecurity/decryptSessionID</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Added binfromhex() function so that CGIDecode actually works.</p> <p><span class="code">oHTMLSecurity/retEncryptedSessionID</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Added bintohex() function so that CGIEncode actually works.</p> <span class="code">oHTMLTemplates/$retFileText</span> <span class="moddateby">(2009-10-03 Doug K.)</span><br /> Changed FileOp.$readfile to $readcharacter(kUniTypeAuto,HTML). $readfile into string breaks in Omnis Studio 5. <p class="footer">StudioWorks Documentation - Copyright 2005 Vencor Software </p></div> </body> </html>