Changes in SuperWaba 5.73 (20070510)
1. fixed deadlock when using MessageBox without buttons, occured after the MB was closed.
2. now TabPanel arrows are added only if there's more than one tab.
3. fixed Label.clear. Now it does... nothing, unless you set clearValueStr to something else (it is set to null on the Label's constructor). Normally its not a good idea to clear a label.
4. fixed NPE on TabPanel when adding arrows without the TabPanel has been added to the parent container.
5. fixed Grid when penless giving an out of bounds error when pressing enter without a line being selected.
6.
added WINDOWS VISTA-like user interface style (Settings.Vista). Changed controls: Check, Button, TabPanel, ComboBox, Grid, Radio, ScrollBar, PushButtonGroup, ProgressBar. Added Graphics.fill3dRect, drawVistaRect. The drawback is that this style looks best at least a 12-bit screen (use the 16-bit vm for this) Now UIGadgets can change the current UI style by selecting the menu.
7. Now the PushButtonGroup at WinCE and Vista simulate a real button press.
8. fixed wrong selection of Palm OS devices that has virtual keyboard: instead of an exclusion list, we have now a list of devices that HAS dynamic input area.
9. fixed PushButtonGroup being repainted after a dialog that has it was closed. It was drawing over the previous window.
.
Settings.penless now is deprecated. Use Settings.keyboardFocusTraversable instead.
10. fixed /D (disable semaphore) support for Palm OS 68k vm. /D is ignored in such vm.
11. fixed tabpanel compute when to use arrows or not: changed extra size from 3 to 2 pixels.
12. fixed Grid not correctly showing title on column 0 if check is disabled
13. fixed NPE when calling a popup window from a Grid's edit.
14. fixed Grid when calling a Calendar or Calculator from an editable cell. Now the changed text is correctly handled.
15. Now in Grid you can check/uncheck a selected line typing '0', and also activate the control (if the column has any) pressing the column number, from 1 to 9. This is specially useful for penless devices.
16. Added Settings.appSettingsBin, which is the same of appSettings, but it holds a byte array instead of a String.
17. fixed problem when swapping to another container and the focus movement was freezed, without letting the user change the focus.
18. fixed wrong repaint of controls with highlightning.
19. now, when swapping, the focus is set to the first control of tabOrder vector, instead of the container itself.
20. added new parameter to application and applet: /penlessDevice, which sets the keyboardFocusTraversable for the running application. added also a /keypadOnly, to set the respective parameter
21. double buffer now is set to true by default in the Window constructor when running on applet.
22. fixed keyboard navigation for penless (e.g.: set the disable radio in uigadgets): it was going to the first or last control, even if that control was disabled.
23. changed the highlighting method on penless: now it draws a filled rectangle and redraws the screen at each movement. This fixes all glytches in the user interface. You can change the colors by assigning the Control.highlightColors 6-color array.
24. fixed reset when loading a non-existant native library.
25. fixed problem when renaming a catalog right after adding records to it.
26. fixed problem on Menu on penless devices, where sometimes the keys were not working.
27. changed the way the Grid works on penless devices: now, to exit from it, you must press "action" or "enter". Going to the left no longer exits it.
28. fixed Edit on keypadOnly devices loosing the focus when a calculator/calendar was popped up.
. Now on keypadOnly devices, the numeric pad of Calculator is hidden.
. replaced all occurences of "symbian" by Settings.keypadOnly in Edit.
29. waba.ui.Keypad is now a singleton.
30. Now Edit changes the keypad numbers when mode is CURRENCY or DATE. For CURRENCY, it sets the keys as numeric, and the # as ".-". For DATE, as numeric, and the # as the date separator.
31. fixed Keypad.setKeys not updating the charset when called.
32. Now in Keypad, if the key set is a single key, use it immediately.
33. Added Keypad.setNumberKeys, to allow a change in the default behaviour when pressing #
34. fixed infinite loop at Keypad.reposition when a control that takes the whole screen has focus and the keypad was called.
35. fixed Calendar support on penless devices. note that you still have to provide a button to make the calendar appear on such devices
36. added static Date.getDaysInMonth(month,year).
37. added PushButtonGroup.setColor so you can customize the color of single buttons.
38. added PushButtonGroup.setNames to change the captions of the buttons.
39. set Calendar.weekNames array as public static so you may customize it, and also todayClearCancel array so you can customize the button names.
40. now PushButtonGroup skips empty button names when traversing using the keyboard.
. note that now its no longer possible to change the Calendar's font using setFont.
. The Calendar class was completely refactored: now it uses labels, buttons and a PushButtonGroup, to better support penless devices.
41. now we make sure that chars 10 and 13 (\r \n) have width 0 when returned in FontMetrics.getXXXWidth.
42. fixed the way MultiEdit releases the focus: now you must press the action key (as with in the other controls).
43. fixed value for joy press on symbian: instead of ENTER, now its ACTION. On S60, the pen key is now ENTER.
. moved symbian SIS vm installations to a dedicated symbian folder under installers/vm/symbian.
44. fixed AIOOBE with MultiEdit when there are no text and the down key was pressed.
. added Keypad.numberKeyset.
45. disabled ACTION as a way to check a grid line on keypadOnly devices. Now only "0" does it.
46. Now when keyboardFocusTraversable is true and the user press a key in a control that has the highlight, the focus is requested to the control so that the key is already handled by the control. This is specially useful for edits, so the user can highlight it and type something, which will be sent to the Edit (or to any other control, like a ListBox).
47. When the PushButtonGroup has focus, pressing 1-9 activates the given button, and pressing 0 releases everyone (if atLeastOne was false).
Changes in SuperWaba 5.72 (20070426)
.
removed deprecated Color.defaultBackColor and defaultForeColor. Use UIColors.controlsBack/Fore instead
1. now at desktop, when a timeout happens, Socket.readBytes returns -1.
2. now Warp can include xml files passing /T as parameter.
3. added "CD Card" to the list of volumes that File.getCardVolume search. Also made the winceVols string array public so you can add your own strings.
4. fixed XPlatSyncConduit not working due to RemoteCatalog's fields being removed by Proguard.
5. fixed endless loop in Palm OS that occured when a problem was found in the program's startup.
6. fixed Listbox on penless devices when horizontal scroll is enabled.
7. added Volker Nigge changes to ListBox to fix a problem when an index was selected before the bounds were set.
8. added waba.io.NativeMethod4JDK.readTries to limit the number of read tries before returning in a SerialPort.readBytes.
. fixed InputDialog with more than one button not working when using penless.
9. fixed MessageBox getting a NPE when keyboardFocusTraversable is true and the buttons were null.
10. now the Grid does not draw the "select all" box on the title when canClickSelectAll is false.
11. added Grid.boldCheck to make the grid's check a bit more visible on 320x320 screen devices. Default is false. You may set it using:
grid.boldCheck = Settings.screenWidth > 300.
12. added TabPanel.useOnTabThePanelsColor. The name is self-explanatory.
13. when Palm OS style, shrinked the button's height on 1. This way, when putting many combox in the same x position, on consecutive lines, the buttons won't glue.
14. now the Grid's two horizontal scroll buttons also use ScrollBar.extraArrowSize to increase the arrow sizes.
15. added UIColors.sameColors to disable (when set to true) the brighted background of ComboBox, Edit, Check and Radio controls.
16. fixed problem when grid was scrolling using keys and the scrollbar was grabbing the focus without notice.
17. added FontMetrics.getMaxWidth, Hashtable(String resBundle) and Convert.dup(char, count). See the respective javadocs for more information.
18. fixed grid offset when the number of items shrinked.
19. added Control.clear, to make easier to clear the values of the controls. Added Container.clear, which will call clear in all controls that are focusTraversable. The controls use the instance fields control.clearValueStr or clearValueInt, depending on the control type (Edit use Str, ComboBox use Int, etc). Assigning new values to these lets you customize the values. Note that if you have declared any method called
clear as protected or private, you'll have to change it to public (a compilation error will be thrown).
20. luciana - Fixed methods getSize and getCompressedSize of BigByteArrayStream class returning wrong values.
21. changed the way the Grid control works on penless devices. Previously, the SELECTED_EVENT occured at each navigation at the grid. Now it is thrown only when the user press the enter key. If the grid has a check, the GridEvent.col value is 0, otherwise is 1.
Changes in SuperWaba 5.71 (20070314)
. fixed socket support for Symbian s60v3 (Nokia E62).
1. fixed Icon problems on exegen.
2. now Scanner.getScanManagerVersion and getScanPortDriverVersion return an hexadecimal string.
3. fixed problem when calling edit.setText("") in the FOCUS_IN event.
4. added Ivan Peevski changes to htmlcontainer: Style now allows table cells background colour; Table class - fixing multiple problems with colspan and rowspan as well as improving spacing and layout to fit more information on one screen, without horizontal scrolling. Also allowing any border size, by defining border="". If this attribute is not defined in the <table> tag, there are no borders.
5. fixed problem when calling edit.setText("string") in the FOCUS_IN event. The error ocurred when the keyboard was called and a bigger string was entered and then the device keyboard was used to enter something.
6. fixed problem when a Palm OS hard key is pressed but the assigned application was not being called. This also fixes a problem when the Treo receives an incoming call and the call was lost bc the phone application was not called when the program exited.
7. fixed a playTone issue on WinCE. Out of range frequencies cause a software lock.
8. fixed a problem in the Grid when just a few items was added and the down key was pressed on touchscreen devices.
9. increased the button sizes of the waba.ui.Calculator.
10. added superwaba.ext.xplat.util.EscapeHtml to escape and unescape special html characters. The methods are highly optimized, and they support 101 escape chars.
11. added Hashtable/IntHashtable.collisions. See the javadocs to learn how to compute the number of collisions for a set of keys.
12. fixed Soap class not correctly handling characters with accentuation and escaped (&) characters.
13. rnovais - fixed the warning message in FTP.setLoggingControl when the control is null
Changes in SuperWaba 5.7 (20070129)
. Conduit api now migrated to HotSync 6.01 (which comes with Palm Desktop 4.2.4), it will not work on 4.1 anymore.
. Now Grid.getColumnText(line,col), if the grid has a checkbox, the col must start from 1 instead of 0.
. Removed the following deprecated classes and methods: superwaba.ext.xplat.ui.db.Grid (use waba.ui.Grid.DataSource instead - See change 87), superwaba.ext.xplat.ui.ToolTip (use waba.ui.ToolTip instead), superwaba.ext.xplat.ui.ProgressBar (use waba.ui.ProgressBar instead), FTP.sendFile(Stream inputStream, String name, boolean storeUnique) (use the other sendFile method, without the storeUnique param), ComboBox.setOffset and getNeededHorizontalScrollValue (use setHorizScroll(true) instead), ListBox.setOffset and getNeededHorizontalScrollValue (idem), Rect.SAME (use 0 instead), superwaba.ext.xplat.util.xml package (XPlatUtilXML.pdb is NO LONGER AVAILABLE - use the superwaba.ext.xplat.xml and http classes instead). Window.popupModal(Window) and popupBlockingModal(Window) are now private (use the ones without arguments instead). Deprecated superwaba.ext.xplat.util.Compression, use superwaba.ext.xplat.util.zip.JZlib (for GPL users) or superwaba.ext.xplat.zip.Zlib (for LGPL users) instead
. Changed the xmalloc/xfree/xrealloc function on the native part. Now you must call libxmalloc/libxfree/libxrealloc instead of vmGlobals->xmalloc/xfree/xrealloc. You must change any native library that call these functions. See issue 97.
. Added support for Opticon OPL-2724 bluetooth scanner.
. new
Litebase product (previously named PDBDriver) developed.
. new table format (plain files). In Palm OS NVFS devices, file is written directly to persistent storage.
. index now implemented using a variant of B-Tree
. index now can be used with <,<=,>,>=,like 'x%' (starts with) and between (b > a && b < c)
1. rnovais - Created new SQL functions in Litebase: ABS(int), UPPER(char|char_nocase), LOWER(char|char_nocase) .
2. rnovais - Created test case to SQL functions: ABS, UPPER, LOWER.
3. fixed NPE when running the application under Linux
4. now by calling catalog.setRecordPos(-2) will invoke the DmSyncDatabase to commit any pending changes to the persistent storage in Palm OS devices that support it.
5. rnovais - Created support to ABS function with other data types: ABS(short,long,float,double)
6. rnovais - Created test case to ABS function with other data types
7. fixed generation of install files for Palm OS when built with ANT xml files. The files being installed was searched only in the classpath, now we also check in the current working directory.
8. save the current target and replace only when calling onEvent below. This avoids a problem when a grid item was selected, then the MenuBar item was selected: the target was replaced from MenuBar to Grid and so the WINDOW_CLOSED event was not correctly processed.
9. fixed Settings4xxxx file deletion at desktop when only appSecretKey was being used.
10. rnovais - code improvement in Litebase (valueCompareTo).
11. rnovais - fixed test case TestDate_DateTime.
12. rnovais - fixed ResultSetMetaData to new Data types.
13. fixed wrong attribute being compared at desktop when searching for diry records.
14. fixed dirty attribute not being reset after synchronizing a record.
15. fixed Litebase.log not correctly adding a new log record.
16. fixed sql parse not recognizing "where xxx=-10" (it required a space between the = and the -).
17. rnovais - created the methods setDate(...) and setDateTime(...) in PreparedStatement class.
18. luciana - fixed grid: Necessary adjusts to handle more than one call of setRect by the application.
19. fdie - fixed invalid memory access when returning values from native functions and the stack was at the beginning.
20. fixed a Litebase problem in desktop that a table could be created twice without throwing a "table already createed" exception. The table was being checked on at memory, and not at disk. Now it mimics device. Changed a few testcases to handle this situation.
21. fixed Catalog.listCatalogs at desktop not using the datapath if this one was set.
22. luciana - ScrollBar now follows the usual behavior: when the user presses and holds one of the buttons or clicks and holds the scrollBar gap an automatic scroll begins.
23. fdie - fixed keypad display on popup windows.
24. rnovais - fixed the index creation for rowId when the index is created in a populated table and created test case for it.
25. luciana - fixed MessageBox: When the unpopTimer finishes it's necessary to ask if the messageBox is still open before calling the unpop method in order to avoid the unpop of other windows(like popList of ComboBox).
26. now "Warp /v number" lets you specify a version for the pdb file being created. The number arg must be a number between 0 and 65536.
27. changed myDmGetDatabaseTypeCreatorCount to myDmGetDatabaseInfo (native).
28. added BigByteArrayStream.DESTRUCTIVE_READ_MODE to destroy each buffer after it has been fully used, thus releasing memory. Must be used in setMode.
29. fixed a missing popObject when there was not enough memory to allocate an image. also removed an extra argument when calling popObject in some places.
30. fixed Vm.getTimeStamp for Palm OS ARM not working as expected (wrap-around was not correctly being avoided).
31. added BigByteArrayStream.readFully, to fully read data from a Stream in the bbas.
32. improved the HttpStream class. Added static boolean debugHeader, to print the header; added String connection, which contains the connection response property; added Hashtable cookies, which contains the cookies (or null if no cookies were returned); added Options.openTimeOut, so you can change the open timeout; now User-Agent uses the platform and the deviceId; now the socket.readBytes tries a few times before returning; replaced all \n by \r\n, as http defines; now its possible to replace the "host" in postHeaders, it will not be overwritten; in getStatus, "socket closed" is returned only if its not open and status was ok; added readLine method; added Options.setCookies, to easily set back the cookies on Post; added Options.setBasicAuthentication, to pass a basic user/password without encryption in the headers; added Options.setContentType, to easy a content type change; improved javadocs.
33. fixed StandardHttpClient not correctly setting the default URI if the given one was null or empty
34. added superwaba.ext.xplat.webservice.SOAP, to connect to SOAP web services.
35. added a default constructor to DumpXml. you must call tokenize(stream) afterwards.
36. added flush to vmDebug when running on applet.
37. added a test to see if the current smartphone is penless. Since there's no api specific for this, i just test for GetSystemMetrics(SM_MOUSEPRESENT).
38. added Vitor Hugo Campos (vitorhc) changes to HttpStream to support get queries on post commands.
39. fixed some UI problems on penless devices.
40. fixed PalmOS5 VM failure when an Alarm/Calendar event occurs
41. fixed garbage collector's compact method not zeroing the erased chunk. This was causing, in some order, that new objects was not completely erased, thus resulting in app crash. This was more noticeable when using Litebase with lots of hard calls to Vm.gc.
42. added new checks to see if resultset is closed, and throw an exception if it is. The only case an exception is not thrown is when calling the
close method again.
43. added support for SocketCom collectors (Pocket PC only). Added Scanner.isPassive and Scanner.trigger methods to support passive scanners (ie, scanners that don't have a trigger hardware button).
44. disabled WinCE Sound.tone. It plays horribly.
45. luciana - changes on SOAP class - Added constructor to only inicialize the SOAP object with the basic params URI, method and vector to receive the answer. Now the user can create a SOAP object, sets its parameters and then call soap.execute() to effective handle the SOAP request. There are setParam methods that receives only the parameter value and others that receives the parameter value and parameter name. This is important because some servers require the names of the parameters. Added method setParam that receives a parameter in String format, the paramName and the type of parameter, which provides more flexibility. Added methods to set array parameters. Added method setParam that receives a parameter of type Vector.
46. added support for Motorola Queue left,right,on,off,back keys (mapped to IKeys.HARD1/2/3/4 and ESCAPE).
47. now the conduit file functions can be used to access memory cards (and also the hidden volume in NVFS) in Palm OS devices
48. added Control.highlightRectsCount where you can control the number of rectangles that are drawn on the currently focused control (on penless devices). Increased to 3 for big resolutions.
49. luciana: fixed index creation when only one row was added to database.
50. fixed BigByteArrayStream when the enter of a line was placed in the starting of the next buffer.
51. fixed Convert.toString(double) when the exponent was <= -320.
52. fixed MessageBox class arrows on windows ce screens. Now the arrows are vertically centered if the ok button is present.
53. fixed reset on Treo 650 when shift+backspace was pressed. fixed backspace support on Treo 650.
54. now the sw application's frame is no longer resizable. thanks to Jemmy Chen for the tip.
55. rnovais: fixed preparedstatement.setDate on where clause.
56. rnovais: added the method preparedStatment.setTime(int index,Time time)
57. added a new parameter option to Litebase.getInstance: aspdb, which specifies that on desktop (applet) and Palm OS devices with NVFS (flash memory), files will be written as pdb instead of plain files on internal memory.
58. fixed keyboard not openning on Treo devices when /fullscreen was passed on exegen.
59. added Mike Toggweiler changes to HtmlContainer: - Support for rowspan and colspan; - Enhanced table and cell width calculation; - Added Zoomfactor to HtmlContainer which controls i.e. Zoom factor if html Font. a Browser may then support zooming of html pages; - Image alignment: Implemented reading of image valignment tag. I've not yet found a solution to align the image in the table because the height of the layoutcontext is not defined prior layout. Probably I've got to process the cells again after determining the width and height of every cell. added support for Color and Background-Color in the Styles definition and the painting components, fixed a painting after scrolling issue when another container is lying above the
HtmlContainer?
60. now in win32, if you try to run the same app twice, it will bring the first instance to the foreground. This was already happening in wince, but not in win32. it avoids table corruption if two app instances try to access the same db.
61. rnovais: handle the rowId to be continuously incremented after the purge in table with the last line deleted.
62. fixed socket.readLine not recognizing chars > 127.
63. rnovais: fixed problem in desktop when a catalog was open and nothing was written: no file was being written.
64. fixed file not being read in pocketpc due to sharing violation. Now all files are open with FILE_SHARE_WRITE flag (only FILE_SHARE_READ was being used.
65. added SerialPort.stopWriteCheckOnTimeout, default to true. Set to false to keep trying to read even if a timeout occured.
66. added Victor Hugo (Softsite) fix to SMTP class where the month's name index was not considering that it starts from 1 and not from 0.
67. fixed write timeout on SerialPort class for Palm OS. added a field writeTimeout where you can set it (the default is 6 seconds). The data is flushed before returning.
68. placed back the code to handle usb port on Palm arm devices.
69. rnovais: fixed problem on rename catalog when the catalog path has a . inside the new name.
70. now HttpStream.isOk also depends if the socket is open.
71. fixed problem when persisting sessions on a tomcat server, where the c code was closing the connection after a few tries. note that not necessarily this means that the connection was dead.
72. fixed screen not being repainted when a win32 app was fullscreen and alt+tab was pressed.
73. rnovais - fixed the creator id that was inverted for stream files on PALMOS.
74. rnovais - setting the backup attribute for stream files on PALMOS.
75. rnovais - added support to stream files on desktop.
76. rnovais - added MenuBar.getItems() method.
77. rnovais - changed the TestCase to accept tests using aspdb.
78. rnovais - changed the extensions of pdb files (ex: .db.pdb to _dbh.pdb).
79. added Container.swapToTopmostWindow, so you can easily swap a container to the topmost window. Check javadocs for more info.
80. now in win32 vm, when you execute an app with wait, when the executed app finishes, the sw app is bringed back to front.
81. added Grid.setColumnChoices, which sets a column as a ComboBox-like control: a PopList is open with the given choices, and the TEXT_CHANGED_EVENT event is thrown if the selection changes.
82. now hitting ESC on penless devices removes the focus from the grid.
83. rnovais - now Win32 is NVFS too.
84. now the gc is run after 10 timed-chunks were created. this may fix some memory problems that many poorly written programs have.
85. added Date.toString(format). This can help you to pass a date in the format YMD as required by Litebase's insertion sql format.
86. added an option to exegen where you can specify that the application will not use the semaphore (/NOSEMAPHORE). This will improve application's stability on some new devices but will also decrease the available memory that your program has, and the program may crash due to out-of-memory errors. For instance, in an almost empty Treo 650, using the semaphore you have about 27M of available RAM memory, while not using it you have 4.8MB. Read the optimization tricks tutorial to learn how to minimize memory usage. A side effect of disabling the semaphore is that the VM speed increases by 20%.
87. added waba.ui.Grid.DataSource interface and a setDataSource method. It can be used to assign a resultset as the data source and the lines will be fetch only when needed. Note that the sort, replace, add, insert and delete functions will be disabled when a datasource is assigned. Also made some optimizations on the Grid.
. fixed ALL javadoc errors.
88. added 4 pixels to the preferred width of Edit when using Flat. It was just too short. Note that this may move your UI a bit if the space is too tight.
89. fixed Vm.arrayCopy when the src/dest was Object[] and dest/src was Object[][].
90. changed the way /autorun works for TestSuite: removed the timer; now the test is called directly.
91. added Grid.setColumnText to set a text of a column.
92. now the tooltip is not shown when an Edit is assigned to a column of the Grid.
93. fixed repainting problem on ToolTip: sometimes the parent was not repainted properly. also, on penup, the timer was not being destroyed properly.
94. now the max memory used in the vm is computed and dumped with the other memory statistics.
95. fixed Class.forName not storing the correct name due to buffer being reused in getClass.
96. support Symbian S60 3rd edition.
97. fixed some memory leaks on the Litebase and some resets that was occuring when there was no more memory. fixed also a memory leak in the vm where the class heaps were not being freed in platforms without semaphore usage. added checks to warn of possible memory leaks.
98. fixed problem in Edit that was preventing change of the cursor position after the focus was set.
99. added Greg Ouzounian fixes to SMTP class, where the line of a attachment was being cut when it finished at certain line lengths.
100. added a menubar option in waba.ui.Welcome to detect memory leaks. If a leak is detected at program exit, a fatal alert dialog will appear showing the source/line where it was allocated.
101. fixed xFreeMemInfo for win32 and others.
102. fixed a memory leak and "free handle" problem caused by the DmSetDatabaseInfo call in Palm OS (related to the notification that the call of this function does) with the Litebase (and also within the VM). Many thanks to Ben Combee for the tip.
103. added David Beers fix to ListBox.find, that was not taking into account if the given letter was lowercase.
104. changed some flags in the sw_serial for opening the stream that will fix problems in IR for Pocket PC devices.
;
105. fixed windows mobile 5 not correctly finding the ;SerialIR port. they changed the device name from "IrDA" to "SerialIR" on registry.
106. now it is possible to pass, in windows ce and windows 32, the full name of the port that you want to use in the SerialPort constructor. before now, only COM ports were selectable. Now, by using a code like new SerialPort(Convert.chars2int("TCP1"),bauds) it is possible to pass the whole port identifier. Using the chars2int is needed to convert the 4-letters string into an integer that will be decoded back to the string in the native part. The : is added later.
107. support Symbian S60v3 alphanumeric keyboards, added Settings.keypadOnly which defines that the device does NOT have a full keyboard.
108. rnovais - fixed sql parsing with sqlfunction on where clause
109. fixed application's title on Pocket PC devices.
110. fixed problem in wince that was allowing a 2nd instance of an app to be loaded.
111. Added Ivan Peevski changes to HtmlContainer: - add_italic.diff - allows <i> (italic) tags in html by using an italic variant of the current font to display text blocks. It assumes an italic variant of the system font is available, using the same name + the suffix "i". There are some more changes we've done to configure the font used for any text block in general if you are interested. - blue_links.diff - make <a> links blue, so they are easier to recognize as links. On black&white displays, they show up as gray which also looks acceptable. - br_formatting.diff - I've had some issues with <br> tags not resetting the lines/formatting as expected and that small change fixed my problems. - extendable_container.diff - some changes to the way the
HtmlContainer? class is organized to make it possible to extend classes from it with enough information for it to be useful. Also added a function to return the height in pixels of the total content in the container.- li_improvements.diff - tweaked where the li bullet points are displayed and also added code to replace the hardcoded representation (which we found very small and confusing) with an image (also attached the two images we are using for this) - links_wrapping.diff - add "/" symbol as a delimiter in links text, which allows long URLs to wrap on multiple lines instead of generating horizontal scroll bars. - mndash_fixes.diff - mdash and ndash were showing up as squares until we made the change, shown in this file. There still seems to be problems with that, but I think these values work better. - move_link_underlining_down.diff - the underline line on links was running through the bottom of the text it was underlining, which looked wrong. Moved it down, so now it has a gap of at least a pixel, which IMO looks much better.
112. fixed Edit.autoSelect that was not auto-selecting. also make sure that the cursor is not set when the popup keyboard is called. fixed click event being ignored after the keyboard is closed.
113. Now if you type a space when a Grid has focus, all items will be selected and unselected.
114. rnovais - fixed the max table name length. The max size is 23.
115. Deleted retroguard.jar and jopt.jar. Now we use Proguard (proguard.sourceforge.net) instead, which works fine with new JDKs and have a greater compression.
116. fixed FTP class not setting the readtimeout when openning the socket. This was causing an instant-failure when opening the socket for the first time.
117. rnovais - changed from PDBException to DriverException
118. added a new Scanner chapter (26) to the
SuperWaba Companion.
119. luciana - fixed HttpStream class. It must test if data differs from null before posting it.
120. fixed badly repainted highlighted (with focus) controls on devices without a pen.
121. now stub.prc is searched in the superwabatools.jar even if sdk.root env var is defined.
122. now you can pass, via exegen, a commandline to the application: use /cmd "command line". the argument can be retrieved using MainWindow.getCommandLine()