Servoy 3.5.4

We announce the immediate availability of Servoy 3.5.4

Make a backup of your current Servoy installation (directory and database) before installing.

This version will be available shortly through auto update for users of 3.5 versions (check via help menu → check for new version)

Changes
[new] generate hyperlinks in pdf with pdf_ouput plugin when printing from html_area
[new] function setBorder is added to all form elements to change a border at runtime

[enh] port configurable on udp plugin.setPort()
[enh] DBTreeview bean: added removeAllRoots function
[enh] ability to revert to system locale: added “default” option in locale preferences combobox
[enh] property in admin page to disable serverside pack
[enh] support for Sybase Adaptive Server Enterprise
[enh] there are 2 new top level css classes for check-/ comboboxes: check and combobox for the respective display types
[enh] made UI property modification possible via application.setUIProperty(…)

[fix] tab panels not transparent (smart client fix)
[fix] background color not honored for header body parts
[fix] setSize() on tabpanel was not being updated immediately in the GUI
[fix] pdf_output not displaying form elements on Macs
[fix] webclient disabled tabs and selected tabs looked similar, changed bgcolor of disabled tabs
[fix] prevented exception from appearing in the log for fields using a lookup on a column with null constraint
[fix] fields using valuelists with display and real values of different types will no longer accept other values than those in the display list
[fix] application.getUserPropertyNames no longer returns names prepended with ‘user.’
[fix] onAction after onDatachange not fired in list view
[fix] grand summary part and header part back on correct location
[fix] a form with a self-joined record showing in a tab did not remove the new record after databaseManager.rollbackEditedRecords()
[fix] transparency for fields broken on Mac OSX 10.5
[fix] anchors broken on portal elements for resizing
[fix] when no special element security settings were specified, the table security settings were lost
[fix] when importing record in smartclient via file import when having a form visible, the transaction was not always committed
[fix] UI refresh problem on setValueListItems
[fix] disabled calendar field still allowed to change the date by using the icon
[fix] getLabelForElementNames() no longer returns nameless elements
[fix] ServerTwoWaySocket accept socket fix
[fix] opening form in find mode that contains field of type calendar property reports format error
[fix] checkboxes with value list attached do not work in webclient
[fix] IE browser back button workaround
[fix] auto complete/type ahead workaround for IE
[fix] we did not correctly clear the exception field in the rawSQL plugin
[fix] spaces in dialog window names are now considered the same as “_”. In other words, in Servoy scripting using the window name “a b” is the same as using “a_b”
[fix] non-modal dialogs in IE7 now appear in foreground instead of background
[fix] Japanese Kanji (Alt+~ while in japanese keyboard) onAction triggering in fields when it was not supposed to
[fix] legacy use of function showFormInDialog(form); from form 1 show form 2 in popup, then from the popup show form 3; when closed, the size was incorrect
[fix] Japanese character problem in HTTP plugin
[fix] form in dialog title issue: title doesn’t show the first time
[fix] number format rounding problem in fields
[fix] plugins.mail.receiveMail scrambling Kanji text from some Japanese email servers
[fix] several DBTreeView problems
[fix] checkbox border painting via style
[fix] focus was lost in web client when updates occured
[fix] OSX problem on focus and show of dialog
[fix] slowness after print dialog opens on OSX
[fix] unable to focus a textfield on Linux after an update in a calculation
[fix] support for multiple constraints between two tables when creating relations from foreign keys
[fix] switch-server fix for smart client
[fix] related foundsets using dynamic tab panels
[fix] table triggers would also be triggered on rollback
[fix] for media in columns with long names (Oracle)
[fix] added support for serialization of BigDecimals in serialization plugin
[fix] table events references are not removed if table is deleted
[fix] databaseManager.convertFoundSet() didn’t work in every situation

Sample Solutions
[fix] typo in calculation in sample crm

Previous release
http://forum.servoy.com/viewtopic.php?t=9603

I think some of the changes you did from my bug submissions on comboboxes have a bug in 3.5.4. Just upgraded, and the comboboxes default color has now changed from white to grey, and they’ve all become center justified. My default in my stylesheet is white and left justfied – also I can’t seem to get the styleclass property popup list to activate for comboboxes, though it works in 3.5.3.

I think there is now a more serious bug: names of new elements (or changed names) are not saved when restarting Servoy. This affects comboboxes, checkboxes, rectangles, but not text fields, as far as I have tested. This is a big issue because a missing name in a form could cause a lot of troubles. Any suggestion for a workaround?

Besides that, setting a CSS property for check fields adds a border to the field, even if border is set to 0. Font formatting is respected. Setting the border property to empty in the properties panel doesn’t remove it. The only way to hide the border is to use .setBorder(“EmptyBorder,0,0,0,0”) in an onShow method.

Same for tabpanel: no CSS property to choose from is shown in the properties panel.

Image_Media fields now enlarge the image they display if the border is set to empty, while they keep the original proportions if there is a border.

MacOS X 10.5.2
Servoy Developer
Version 3.5.4-build 517
Java version 1.5.0_13-119 (Mac OS X)
DB MySql 5.0.51a

Regarding comboboxes: you can now define a style for comboboxes on the top level of CSS. So I think the description above is not quite right. It’s not field.combobox, but simply combobox. So just define a style combobox and you have control over comboboxes only. Also, combobox.mySpecialCombo should work and mySpecialCombo should then be usable from the style class popup.

This version, is introducing also strange things…
All my tabpanels are white in the inside (using XP with Windows L&F)
instead of default grey.

If I set the tabpanel transparant off, than the default background grey is back again. But than If someone is using Kunstoff L&F, I’ll get that ugly dark-grey at the top of the tabpanel… grr… :?

I liked it, the way it was… :(

ellenmeserow:
I think some of the changes you did from my bug submissions on comboboxes have a bug in 3.5.4. Just upgraded, and the comboboxes default color has now changed from white to grey, and they’ve all become center justified. My default in my stylesheet is white and left justfied – also I can’t seem to get the styleclass property popup list to activate for comboboxes, though it works in 3.5.3.

Ellen, make this in your stylesheet:
combobox
{
background-color: #ffffff;
border-width: 0;
text-align: left;
}

that works for me.

(emphasis mine)

svroemisse:
[enh] there are 2 new top level css classes for check-/ comboboxes: field.check and field.combobox for the respective display types

Just for clarification: field.combobox and field.check in your stylesheet doesn’t work.
As noted in this thread already you need to use ‘combobox’ and ‘check’. Thus without the ‘field’ prefix.

Btw is it the correct (default) behavior for checkboxes to be centered ??
Can this be changed to left align? Or even better according to the text orientation setting (left-to-right = left align, etc.)

Edit: fixed a typo

I think center alignment is indeed the default for JComboboxes. But can’t you just create a combobox style that does the left alignment for you?

Patrick and others suggest creating a style for comboboxes (or checkboxes) in the Css sheet. But styles (using “combobox” and “check” without the field. prefix, as Robert Ivens correctly suggests) are not recognized and they are not shown in the properties panel. So creating styles to modify the new default behavior does not help at all. At least this is what happens to me in MacOS X Leopard 10.5.2, so I decided to revert to 3.5.3 until this issue is resolved (and the disappearing names one, also).

I’m sorry. There was an issue with my backend database that did not save data. The problems therefore were not caused by Servoy 3.5.4, besides the new default behavior of comboboxes and checkboxes.

Hi Patrick,

patrick:
I think center alignment is indeed the default for JComboboxes. But can’t you just create a combobox style that does the left alignment for you?

I was talking about the checkboxes, not the comboboxes.
Create a field and put a valuelist on it with multiple values. Then set the display type to checkboxes. You will see they are centered. Something they only started doing in 3.5.4.

Hi rioba,

rioba:
Patrick and others suggest creating a style for comboboxes (or checkboxes) in the Css sheet. But styles (using “combobox” and “check” without the field. prefix, as Robert Ivens correctly suggests) are not recognized and they are not shown in the properties panel.

When you create a style with the name ‘combobox.mySpecialStyle’ then ‘mySpecialStyle’ will show up in the properties panel for comboboxes.
Using ‘combobox’ alone will apply to any combobox that doesn’t have a specific styleClass set.

Hope this explains things.

Hi Robert, I wasn’t reading right. And checkboxes can’t be made left aligned by a style?

Hi Patrick,

patrick:
Hi Robert, I wasn’t reading right. And checkboxes can’t be made left aligned by a style?

Yes they can. But that wasn’t my question ;)

rioba:
I think there is now a more serious bug: names of new elements (or changed names) are not saved when restarting Servoy. This affects comboboxes, checkboxes, rectangles, but not text fields, as far as I have tested. This is a big issue because a missing name in a form could cause a lot of troubles. Any suggestion for a workaround?

We are unable to reproduce this, also a name is just another property, and all names are on element level (not specific to combos/checks/etc), for persistence there is nothing special about names (except you can not have duplicate names)

ROCLASI:
Btw is it the correct (default) behavior for checkboxes to be centered ??
Can this be changed to left align? Or even better according to the text orientation setting (left-to-right = left align, etc.)

I think this was always the case that they where default centered.

jan blok wrote

We are unable to reproduce this, also a name is just another property, and all names are on element level (not specific to combos/checks/etc), for persistence there is nothing special about names (except you can not have duplicate names)

As I specified in the subsequent post, I was wrong: I had an issue with my backend database that did not save modified data to the repository. I had to reinstall the mysql java connector. I am really sorry for any trouble.

I checked v. 3.52 on my iMac and checkboxes were indeed left aligned and
hope this will be the case again in the next version.

Regards,
Ron

jcompagner:

ROCLASI:
Btw is it the correct (default) behavior for checkboxes to be centered ??
Can this be changed to left align? Or even better according to the text orientation setting (left-to-right = left align, etc.)

I think this was always the case that they where default centered.

Hmm…you are correct. I guess I was confused because it always was left aligned because the styleClass for a regular field was applied to it.
Now it uses it’s own styleClass.

Excuses for the noise.

[new] function setBorder is added to all form elements to change a border at runtime

this function only works once. is this the intended functionality? i don’t see any use for it unless you can change border properties on the fly (which i’ve wanted forever!).

patrick:
It’s not field.combobox, but simply combobox.

You’re right, thanks for noting that. I changed the release notes accordingly.