From 053a2f12a435ad31a4ceb6acf6e80edde6a6ed86 Mon Sep 17 00:00:00 2001 From: gpawel <gpawel> Date: Wed, 8 Jun 2011 11:53:39 +0000 Subject: [PATCH] small improvements in 'ad hoc' vocabulary terms SVN: 21650 --- .../field/VocabularyTermSelectionWidget.java | 19 +++++++++--------- .../application/ui/widget/FieldUtil.java | 6 ++++++ .../openbis/public/images/trigger-plus.png | Bin 3563 -> 3646 bytes 3 files changed, 16 insertions(+), 9 deletions(-) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/field/VocabularyTermSelectionWidget.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/field/VocabularyTermSelectionWidget.java index c2453c2d7fd..0f42a739876 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/field/VocabularyTermSelectionWidget.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/field/VocabularyTermSelectionWidget.java @@ -25,6 +25,7 @@ import com.extjs.gxt.ui.client.event.EventType; import com.extjs.gxt.ui.client.event.Events; import com.extjs.gxt.ui.client.event.KeyListener; import com.extjs.gxt.ui.client.event.Listener; +import com.extjs.gxt.ui.client.widget.form.LabelField; import com.extjs.gxt.ui.client.widget.form.TextField; import com.google.gwt.user.client.rpc.AsyncCallback; @@ -36,7 +37,6 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewConte import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareField; import ch.systemsx.cisd.openbis.generic.client.web.client.application.model.ModelDataPropertyNames; import ch.systemsx.cisd.openbis.generic.client.web.client.application.model.VocabularyTermModel; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.field.CodeField.CodeFieldKind; import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.widget.AbstractRegistrationDialog; import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.widget.DropDownList; import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.widget.FieldUtil; @@ -64,7 +64,7 @@ public class VocabularyTermSelectionWidget extends private final IViewContext<?> viewContext; - private final CodeField codeField; + private final LabelField codeField; private final DescriptionField descriptionField; @@ -86,17 +86,16 @@ public class VocabularyTermSelectionWidget extends form.setFieldWidth(FIELD_WIDTH); this.setWidth(LABEL_WIDTH + FIELD_WIDTH + 50); - codeField = - new CodeField(viewContext, viewContext.getMessage(Dict.CODE), - CodeFieldKind.CODE_WITH_COLON); - codeField.setMaxLength(GenericConstants.COLUMN_LABEL); + codeField = new LabelField(); + codeField.setLabelSeparator(":"); + codeField.setFieldLabel(viewContext.getMessage(Dict.CODE)); codeField.setReadOnly(true); - // FIXME GWT hangs if this field is disabled, but we want disabled style - // codeField.disable(); + addField(codeField); boolean mandatory = false; labelField = createTextField(viewContext.getMessage(Dict.LABEL), mandatory); + labelField.setEmptyText("enter label"); FieldUtil.setValueWithUnescaping(labelField, refreshAction.code); FieldUtil.setValueWithUnescaping(codeField, labelField.getValue() == null ? "" : CodeNormalizer.normalize(labelField.getValue())); @@ -125,12 +124,14 @@ public class VocabularyTermSelectionWidget extends termSelectionWidget = createTermSelectionWidget(); addField(termSelectionWidget); + + setFocusWidget(labelField); } @Override protected void register(AsyncCallback<Void> registrationCallback) { - refreshAction.code = codeField.getValue(); + refreshAction.code = (String) codeField.getValue(); viewContext.getCommonService().addUnofficialVocabularyTerm( TechId.create(vocabularyOrNull), refreshAction.code, labelField.getValue().trim(), descriptionField.getValue(), diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/FieldUtil.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/FieldUtil.java index bc716b3523f..2fc01086075 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/FieldUtil.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/FieldUtil.java @@ -24,6 +24,7 @@ import com.extjs.gxt.ui.client.widget.ComponentHelper; import com.extjs.gxt.ui.client.widget.MessageBox; import com.extjs.gxt.ui.client.widget.WidgetComponent; import com.extjs.gxt.ui.client.widget.form.Field; +import com.extjs.gxt.ui.client.widget.form.LabelField; import com.extjs.gxt.ui.client.widget.form.TextField; import com.google.gwt.user.client.Element; import com.google.gwt.user.client.ui.Image; @@ -116,6 +117,11 @@ public class FieldUtil field.setValue(StringEscapeUtils.unescapeHtml(value)); } + public static void setValueWithUnescaping(LabelField field, String value) + { + field.setValue(StringEscapeUtils.unescapeHtml(value)); + } + // // info icon support // WORKAROUND: Based on GXT functionality for displaying error icon, until there is no diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/public/images/trigger-plus.png b/openbis/source/java/ch/systemsx/cisd/openbis/public/images/trigger-plus.png index 0f25d2a1ba310c7da6d0e844c73e003e9e97eb98..334c64c9474ab06b48361293d0900ae425a4afa8 100644 GIT binary patch delta 909 zcmV;819JT98@?Q{zzTn9Nkl<Zc-rh&O=}ZD7=CAVvzw$}2rV^I6~y8tEd|A+2a$Ry z2>K(u_vFQ2Ab9sjR1hk7%0Vc2h*H=^@Po9K+HKlEnvZ_Cc4s_HGTBTvv$NB*NXdKJ zotZb!Gta#9yc_iX!zV}*uO7d6@b*ojl#frJU#1jv8W8n_A3uM$N*m?HNB7lJ3Ql>g zR9~7OQ%|Wj(ORkg^2uyc6pa)OV&-A9p_ni-IyQUzW@)4R-BV4ub8T#K;p$qcp6Dd6 zj8Xv5K&cX>m@<_DZDLqG;jq~_IXO;*@olF8=N}p<`+xP}OiF3^oxP5aj{`uXAyTm| z3jhf1I?Pjo0bqardIkW#{yrR(5CRH&&Cg^dD1=58lt}<!{}d03m?#<3>)x~108m_6 zuGj0an_+tK6nFbb5&Q0~X#n_KDyvAw^pc~HZd=9}rcA<9%03<lF;OyvP;b%2Zbp4J zOp9+OlAQ267|~dipqng~&T11gwXRGzGZcS2E(S#oJt%)-tt!J9Gyf7|Vq$_l92^`7 zCv0NM{7Z<18?C`FTPJ7tGRq*$zf@3|D4A5tzl4}cw+4S5<FiU;7zX#RaD+#SE6det zmFY_;vJArgOOjID{1a&t{RYDqfl!n-1MXicD1^d@)$uP$%H|Q)CT7-ZwPv%K&*x*+ zt<`GTY!-h2_A3?Jwjrv-#9m&h>`YDr!1hsKP_#6ci`~pScLykRP@+n#AIk2YpSG>3 zTzsYM?)j|dG>Dl&5CDMdy2X`cVRd-Kb=^!R)9yqV018e;o>Fiswr#ijh;rRiNQ%N% z@|1NC%Tv}poVG0hUyoR)W4f-}>gAz|<AdSuX|#VS7Mu!ucsMs1-a|joRmYQWX4UaH zJw+4}1bn60epvTf4+}XGR_ZLo3_t-;05Az5mSyod-}l46#ixAVC+*K3Y#7?!$wgV3 z%k>U+zIBvQ!ppFM&yQHpE;BRo%d5AtQmK@DrAlyA15od{FsOQ25Dbb{KVo9XBt-1T z+}D3x*EQ6Rnmdl<Rt9ml5xXD)B~CByYm!?Tst=_Dh^{hjVd|A75eooN4;OA9tBxnk z(*D}XQTnN-NR0jQi6y4<he;!l)ILyjYr2TgAZ89q6b)vIv;P}048uqmL&*}C`B1XN j?m3ifcrnjE{tW;ogDu&E*1#kH0000<MNS1ou0mjfp**aO delta 825 zcmV-91IGNm9P1mfzzTmBNkl<Zc-rh(&rcIU6n-;Z`B5lz6ATIj8Y7q(Fhq$*560ld zghc-c@0`5&7npeWkHCbWi3h^Lgv3K_nk;N$-4rmj%fcq5Ex$xM<6+CX-LCALVcUc0 zJ56Wy%lExE-@Mr^`S|Gzh{T(xuO7XBCj|NY{N?`yA?G!Q2Yi1wcJf=+{F8@x$eL!Y z=PS?dCGe2aAz9B?UN20FvPeKAgegadRV1LVKQVcGBEMzjOf2NiNMe5W#(KUYw3BK- z2LK6{5+g{+^=lw4jN$=Dht<>56CsXo#VWKuBv|%;%hM^GbKg`VQTJ-K>X*{p)dc{I z`#1CMXrD9Ce;$8DRR{?d#+%%v)Z5PfIgLt~zhnag19LClI^*=xVx>|EO=fy5?uBd= zjxod!ZVfwwuXzhoG7JlAY|F!4%nPy3Xe7b{T;`3y)#m-jue!3l$png%V5wb}O2{f+ zm?Cv#<X2nD(jH-TmnD<Qz~#ZgL1%DqaNyhF`x8BZklBCnUT2WmIlX!>6Jl|SGTs~f z+BDWvpZ{?}uUaxyRb4lF!#kN?S}c`HPJJ0CbE$3&B)$DBuuWjvhXf1bkcu-5Wc!#( z3scJFvZ|_>>XyspcsvdO`?d|KQPf>-+r^<_04N;S7N$oq$t-UafrA{&?%r7{g=#gs zduNX4B!qv_TCIjOr28bLSY!Wv65mHSNVBv@n8G<X3?sd?*j!!jq+uBDI7aDe)(VBJ zW~~^N>>6B(MWHlPfKW)L01Bl5OtP0T#sDCf%Q?TNrl!2h?tH@*#bN-krrFNV$1_8X z-)^?|F*laAVrVkUTG1I0DHa-|0FX5=u85lrMah4f7iMhGB_>Sry-Ye>;)R(J0)$_9 z-784gjU-}Wf%5?_`{zy17_=rhM6nqpQb{;PewXRG?iy0pb=<!wwhM93OH*p((!@z< zH8Cu{$ePrJxTo?GYC=%L0uJWp=BDWWgy!HAv!a=9GAo)%g0CiFmcXh-E=-BGTj3AT z2hA~T!P#nuFbbUzj84gfo!%*#*e5`zWSxWAmiRLOT1EbLKJ0#q00000NkvXXu0mjf DY0!{C -- GitLab