Hi everybody,
I found out some problems while using woodstock.
I couldn't find them in the bug list and I don't know whether I should
file them there or not.
May be some of them aren't even bugs and there are known workarounds...
I'm using the latest woodstock build (4.3 - Build 2 - 04/25/2008).
I attached 3 screenshots and the jsp file that produced these results.
1- Localization problem on the dropdowns (see screen1.jpg)
The files
/theme/src/suntheme/translatedfiles/messages/messages_xx.properties
(where xx are something like country codes) have problems at line 47 on
the property
DropDown.titleOptionLabel=— {0} —
I'm no expert at all, but I think it should be
DropDown.titleOptionLabel=\u2014 {0} \u2014
(which apparently works). Otherwise, — gets html encoded and
appears in the dropdown list.
The same goes on at line 388 for
ListSelector.titleOptionLabel=— {0} —
2 - Focus problems with accordion tabs
When I put textfields or textareas in accordion tabs, I can give them
focus (by clicking) and type some text in them, but if I hit space, it
folds (or unfolds) the last accordion tab that I unfolded (or folded).
I saw some emails about that problem where someone said that the guy
having the problem didn't properly set the focus on the control.
Other than clicking on it, I don't know how a user could possibly set
the focus on a control.
When disabling the javascript code that handles the keyevents on the
accordion tabs and recompiling woodstock this problem disappears.
I didn't do much more research on this point, but I can help if needed.
As a side note, it could be usefull to be able to entirelly disable key
navigation on the accordions (that's more an RFE than a problem actually).
3 - Rendering problems with bubbles in accordion tabs (see screen3.jpg)
Most of the components I put in the accordion tab render properly, only
the bubble component has renders quite away from the image whose
mouseover event triggers the bubble.
The bubble "shift" seems to be consistent accross pages (on firefox : I
can restore its position with style="margin:-35px 0px 0px -15px;", on
ie7 I have to set style="margin:-50px 0px 0px -10px;").
If I open firefox DOMInspector and let the child nodes of the accordion
tab "content div" blink, they appear shifted to the bottom right of the div.
In my case the accordion tab contains an h:panelgrid and several bubbles.
Although appearing shifted in DOMInspector, the panelgrid displays
properly, but the bubbles renders shifted to the bottom right, far not
as much as what DOMInspector shows, but still far enough to be quite
useless in this case.
4- Another rendering problem with bubbles in accordion tabs :
I don't know if this is a feature or not, so I separated this issue from
the previous.
Bubbles too big to fit in the accordion tab are cut on the bottom (so
that they do not overlap the next accordion tab) but not on the top
(they may overlap the previous accordion tab).
If this is a feature, I'll happily stay with my style="z-index:30000;"
(which allows the bubble to overlap the next tab), but it could be nice
to have some more documentation on this point and/or a documented
setting so that other users do not loose time finding out out to achieve
these results.
Still, this style setting doesn't allow the bubble to overlap (or go out
of) the accordion itself. I added
style="overflow:visible;overflow-x:visible;overflow-y:visible;" which
seems to work on both firefox and IE (this might be suboptimal, I'm not
a CSS expert either ;-).
I agree this setting is not limited to the bubble overlapping the tab,
but it could be usefull for other users too (or maybe I'm just too dumb
and should know CSS styles better and everyone else already found out...)
The same goes on the the tabsets.
5-Table rendering problems on IE7 (see screen5.jpg)
The table component's title bar mangles the action bar part of the table
on IE 7.
I double checked my css file and could not find anything related to tables.
Thanks for your help and have a nice day...
Best regards,
Arnaud Brand
<jsp:root version="2.1" xmlns:f="
http://java.sun.com/jsf/core"
xmlns:h="
http://java.sun.com/jsf/html" xmlns:jsp="
http://java.sun.com/JSP/Page"
xmlns:webuijsf="
http://www.sun.com/webui/webuijsf" xmlns:w="
http://www.sun.com/webui/webuijsf"
xmlns:risb="
http://java.sun.com/jsf/ri/sandbox"
xmlns:a4j="
http://richfaces.org/a4j" xmlns:rich="
http://richfaces.org/rich">
<jsp:directive.page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"/>
<f:view>
<webuijsf:page id="page1">
<f:loadBundle basename="fr.esca.ordonnanceur.MessageRessources" var="msgs"/>
<webuijsf:html id="html">
<webuijsf:head id="head" title="#{msgs.tree_navTreeTitle}">
<w:themeLinks />
<webuijsf:link rel="shortcut icon" type="image/x-icon" url="/images/favicon.ico"/>
<webuijsf:link id="link1" url="/resources/stylesheet.css" />
<webuijsf:script> <![CDATA[
function initAllPlanifRows()
{
// Disable table actions by default.
var table = document.getElementById("form:panel1:tset:One:acc2:tab3:tablePlanif");
table.initAllRows();
}
function disablePlanifActions()
{
// Disable table actions by default.
var table = document.getElementById("form:panel1:tset:One:acc2:tab3:tablePlanif");
var selections = table.getAllSelectedRowsCount(); // Hidden & visible selections.
var disable = (selections > 0) ? false : true;
// Set disabled state for top actions.
document.getElementById("form:panel1:tset:One:acc2:tab3:tablePlanif:action1").setProps({disabled: disable});
document.getElementById("form:panel1:tset:One:acc2:tab3:tablePlanif:action2").setProps({disabled: disable});
}
function initAllBranchesRows()
{
// Disable table actions by default.
var table = document.getElementById("form:panel1:tset:One:acc2:tab8:tableBanches");
table.initAllRows();
}
function disableBranchesActions()
{
// Disable table actions by default.
var table = document.getElementById("form:panel1:tset:One:acc2:tab8:tableBanches");
var selections = table.getAllSelectedRowsCount(); // Hidden & visible selections.
var disable = (selections > 0) ? false : true;
// Set disabled state for top actions.
document.getElementById("form:panel1:tset:One:acc2:tab8:tableBanches:action1").setProps({disabled: disable});
document.getElementById("form:panel1:tset:One:acc2:tab8:tableBanches:action2").setProps({disabled: disable});
}
function openDlg(ctrlid)
{
var dst=document.getElementById("detailsForm:ajinc:currentItem");
var src=document.getElementById(ctrlid);
if (src.getSelectedValue()=='com_sun_webui_jsf_NONESELECTED') return false;
dst.value=src.getSelectedValue();
var but=document.getElementById("detailsForm:ajinc:detClic");
but.click();
return false;
}
]]>
</webuijsf:script>
</webuijsf:head>
<webuijsf:body id="body">
<webuijsf:form id="formChoose">
<webuijsf:contentPageTitle id="contentPageTitle" title="#{msgs.sequences_page_title}">
<f:facet name="pageButtonsTop" >
<webuijsf:panelGroup id="pageButtonsGroupTop">
<webuijsf:dropDown
id="modeleTraitementChoisi"
items="#{modSeqOL.modèlesSéquencesChoose}"
selected="#{sequencesBackingBean.modèleSéquenceChoisie}"
submitForm="true"
immediate="true"
valueChangeListenerExpression="#{sequencesBackingBean.choisiModèleSéquenceEvt}"
actionExpression="refresh"
/>
<w:button
text="#{msgs.new_msg}"
actionListenerExpression="#{sequencesBackingBean.newModèleSéquenceEvt}"
actionExpression="refresh"
/>
</webuijsf:panelGroup>
</f:facet>
</webuijsf:contentPageTitle>
</webuijsf:form>
<webuijsf:form id="form">
<webuijsf:markup styleClass="#{themeStyles.CONTENT_MARGIN}" tag="div">
<webuijsf:messageGroup showSummary="true" />
<webuijsf:panelLayout id="panel1" rendered="#{sequencesBackingBean.AChoisiModèleSéquence}">
<f:verbatim><hr/></f:verbatim>
<table width="100%">
<tr>
<td>
<webuijsf:tabSet id="tset" selected="One">
<webuijsf:tab id="One" text="#{msgs.sequences_tab_1}" style="overflow:visible;overflow-x:visible;overflow-y:visible;">
<webuijsf:accordion id="acc2" toggleControls="true" refreshIcon="false" multipleSelect="true" style="overflow:visible;overflow-x:visible;overflow-y:visible;">
<webuijsf:accordionTab id="tab1" contentHeight="auto" title="#{msgs.sequences_accor_title_1}">
<h:panelGrid columns="4">
<h:outputText value="#{msgs.sequences_labels_libelle}"/>
<w:textField id="lelib" text="#{sequencesBackingBean.modèleSéquenceCourante.libelle}" columns="50" required="true"/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab1:help_libelseq').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab1:help_libelseq').close();" />
<w:message for="lelib"/>
<h:outputText value="#{msgs.sequences_labels_repertoire}"/>
<webuijsf:textField id="lerep" text="#{sequencesBackingBean.modèleSéquenceCourante.repertoire}" columns="100" required="true"/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab1:help_repertoire').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab1:help_repertoire').close();" />
<w:message for="lerep"/>
<h:outputText value="#{msgs.sequences_labels_comment}"/>
<webuijsf:textArea id="lecomment" columns="100" rows="3" text="#{sequencesBackingBean.modèleSéquenceCourante.commentaire}"/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab1:help_comment').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab1:help_comment').close();" />
<w:message for="lecomment"/>
<h:outputText value="#{msgs.sequences_labels_explic}"/>
<webuijsf:textArea id="lexplic" columns="100" rows="3" text="#{sequencesBackingBean.modèleSéquenceCourante.explications}"/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab1:help_explic').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab1:help_explic').close();" />
<w:message for="lexplic"/>
<h:outputText value="#{msgs.sequences_labels_docref}"/>
<webuijsf:textField id="ladocref" columns="100" text="#{sequencesBackingBean.modèleSéquenceCourante.documentReference}"/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab1:help_docref').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab1:help_docref').close();" />
<w:message for="ladocref"/>
</h:panelGrid>
<!-- bulles d'aide pour cet accordéon : préfixe "form:panel1:tset:One:acc2:tab1:" -->
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_libelseq" title="#{msgs.sequences_labels_libelle}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_tbldet_desc_lib1}" />
<webuijsf:markup tag="br" singleton="true" /><webuijsf:markup tag="br" singleton="true" />
<webuijsf:staticText text="#{msgs.sequences_tbldet_desc_lib2}" />
</webuijsf:bubble>
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_repertoire" title="#{msgs.sequences_labels_repertoire}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}" width="400">
<webuijsf:staticText text="#{msgs.sequences_tbldet_desc_rep1}" />
<webuijsf:markup tag="br" singleton="true" /><webuijsf:markup tag="br" singleton="true" />
<webuijsf:staticText text="#{msgs.sequences_tbldet_desc_rep2}" />
</webuijsf:bubble>
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_comment" title="#{msgs.sequences_labels_comment}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_tbldet_desc_comment1}" />
</webuijsf:bubble>
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_explic" title="#{msgs.sequences_labels_explic}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}" width="400">
<webuijsf:staticText text="#{msgs.sequences_tbldet_desc_explic1}" />
</webuijsf:bubble>
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_docref" title="#{msgs.sequences_labels_docref}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}" width="400">
<webuijsf:staticText text="#{msgs.sequences_tbldet_desc_docref1}" />
</webuijsf:bubble>
</webuijsf:accordionTab>
<webuijsf:accordionTab id="tab6" contentHeight="auto" title="#{msgs.sequences_accor_title_6}">
<webuijsf:panelGroup block="true" styleClass="explications">
<webuijsf:staticText text="#{msgs.sequences_tblerrs_explic_requis}" />
</webuijsf:panelGroup>
<h:panelGrid columns="5">
<h:outputText value="#{msgs.sequences_labels_prerequis}"/>
<webuijsf:dropDown id="prereqdd"
items="#{conditionOL.conditionsNone}"
selected="#{sequencesBackingBean.modèleSéquenceCourante.idPreRequis}"/>
<w:button id="detprereqbut" text="Détails" onClick="return openDlg('form:panel1:tset:One:acc2:tab6:prereqdd');"/>
<w:button id="addprereqbut" text="Nouveau" disabled="true"/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab6:help_prereq').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab6:help_prereq').close();" />
<h:outputText value="#{msgs.sequences_labels_postrequis}"/>
<webuijsf:dropDown id="postreqdd"
items="#{conditionOL.conditionsNone}"
selected="#{sequencesBackingBean.modèleSéquenceCourante.idPostRequis}"/>
<w:button id="detpostreqbut" text="Détails" onClick="return openDlg('form:panel1:tset:One:acc2:tab6:postreqdd');"/>
<w:button id="addpostreqbut" text="Nouveau" disabled="true"/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab6:help_postreq').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab6:help_postreq').close();"/>
</h:panelGrid>
<webuijsf:panelGroup block="true" styleClass="explications">
<webuijsf:staticText text="#{msgs.sequences_tblerrs_explic_errs}" />
</webuijsf:panelGroup>
<h:panelGrid columns="3">
<h:outputText value="#{msgs.sequences_labels_traiterr}"/>
<webuijsf:dropDown
id="letraiterr" items="#{modTraitOL.modTraitNone}"
selected="#{sequencesBackingBean.modèleSéquenceCourante.idSurErreur}"/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab6:help_traiterr').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab6:help_traiterr').close();"/>
</h:panelGrid>
<webuijsf:panelGroup block="true" styleClass="explications">
<webuijsf:staticText text="#{msgs.sequences_tblerrs_explic_prio}"/>
</webuijsf:panelGroup>
<h:panelGrid columns="4">
<h:outputText value="#{msgs.sequences_labels_priorite}" />
<webuijsf:textField id="laprio" text="#{sequencesBackingBean.modèleSéquenceCourante.priorite}" columns="5" >
<f:validateLongRange minimum="1" maximum="2000000"/>
</webuijsf:textField>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab6:help_verrprio').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab6:help_verrprio').close();" />
<w:message for="laprio"/>
</h:panelGrid>
<!-- bulles d'aide pour cet accordéon : préfixe "form:panel1:tset:One:acc2:tab6:" -->
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_prereq" title="#{msgs.sequences_labels_prerequis}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_tblerrs_desc_prerequis}" />
<webuijsf:markup tag="br" singleton="true" /><webuijsf:markup tag="br" singleton="true" />
<webuijsf:staticText text="#{msgs.sequences_tblerrs_popaide_prerequis}" />
</webuijsf:bubble>
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_postreq" title="#{msgs.sequences_labels_postrequis}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_tblerrs_desc_postrequis}" />
<webuijsf:markup tag="br" singleton="true" /><webuijsf:markup tag="br" singleton="true" />
<webuijsf:staticText text="#{msgs.sequences_tblerrs_popaide_postrequis}" />
</webuijsf:bubble>
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_traiterr" title="#{msgs.sequences_labels_traiterr}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_tblerrs_desc_traiterr}" />
<webuijsf:markup tag="br" singleton="true" /><webuijsf:markup tag="br" singleton="true" />
<webuijsf:staticText text="#{msgs.sequences_tblerrs_popaide_traiterr}" />
</webuijsf:bubble>
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_verrprio" title="#{msgs.sequences_labels_priorite}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_tblerrs_popaide_verrprio1}" />
<webuijsf:markup tag="br" singleton="true" /><webuijsf:markup tag="br" singleton="true" />
<webuijsf:staticText text="#{msgs.sequences_tblerrs_popaide_verrprio2}" />
</webuijsf:bubble>
</webuijsf:accordionTab>
<webuijsf:accordionTab id="tab2" contentHeight="auto" title="#{msgs.sequences_accor_title_2}">
<webuijsf:panelGroup block="true" styleClass="explications">
<webuijsf:staticText text="#{msgs.sequences_tbldecl_explic}" />
</webuijsf:panelGroup>
<webuijsf:table id="tableDecl" title="#{msgs.sequences_decltable_title}"
paginateButton="false" paginationControls="false"
clearSortButton="true" sortPanelToggleButton="true">
<webuijsf:tableRowGroup id="rowGroup1"
sourceData="#{sequencesBackingBean.declencheurs.provider}" sourceVar="decls" >
<webuijsf:tableColumn headerText="#{msgs.sequences_tbldecl_actif}" align="center" valign="middle" width="10%">
<webuijsf:checkbox selected="#{decls.value.used}" />
</webuijsf:tableColumn>
<webuijsf:tableColumn headerText="#{msgs.sequences_tbldecl_condition}"
sort="#{decls.value.objectUsed.libelle}" align="center" valign="middle">
<webuijsf:staticText text="#{decls.value.objectUsed.libelle}" />
</webuijsf:tableColumn>
<webuijsf:tableColumn headerText="#{msgs.sequences_tbldecl_intervalle}"
sort="#{decls.value.objectUsed.intervalle}" align="center" valign="middle">
<webuijsf:staticText text="#{decls.value.objectUsed.intervalle}"/>
</webuijsf:tableColumn>
</webuijsf:tableRowGroup>
</webuijsf:table>
</webuijsf:accordionTab>
<webuijsf:accordionTab id="tab3" contentHeight="auto" title="#{msgs.sequences_accor_title_3}">
<webuijsf:panelGroup block="true" styleClass="explications">
<webuijsf:staticText text="#{msgs.sequences_tblprog_explic}" />
</webuijsf:panelGroup>
<webuijsf:table id="tablePlanif" title="#{msgs.sequences_planiftable_title}"
paginateButton="false" paginationControls="true"
deselectMultipleButton="true" selectMultipleButton="true"
deselectMultipleButtonOnClick="setTimeout('disablePlanifActions()', 0)"
selectMultipleButtonOnClick="setTimeout('disablePlanifActions()', 0)"
clearSortButton="true" sortPanelToggleButton="true">
<webuijsf:tableRowGroup id="rowGroup1"
sourceData="#{sequencesBackingBean.planificationGP.provider}" sourceVar="planifs"
rows="#{sequencesBackingBean.planificationGP.preferences.rows}"
selected="#{sequencesBackingBean.planificationGP.select.selectedState}"
binding="#{sequencesBackingBean.planificationGP.tableRowGroup}">
<w:tableColumn id="col0" sort="#{sequencesBackingBean.planificationGP.select.selectedState}"
selectId="select" align="center" valign="middle">
<w:checkbox id="select" onClick="setTimeout('initAllPlanifRows(); disablePlanifActions()', 0)"
selected="#{sequencesBackingBean.planificationGP.select.selected}"
selectedValue="#{sequencesBackingBean.planificationGP.select.selectedValue}"/>
</w:tableColumn>
<webuijsf:tableColumn headerText="#{msgs.sequences_tblprog_calendrier}"
sort="#{planifs.value.calendrier.libelle}" align="center" valign="middle">
<webuijsf:staticText text="#{planifs.value.calendrier.libelle}"/>
</webuijsf:tableColumn>
<webuijsf:tableColumn headerText="#{msgs.sequences_tblprog_heure}"
sort="#{planifs.value.showableHeure}" align="center" valign="middle">
<webuijsf:staticText text="#{planifs.value.showableHeure}" />
</webuijsf:tableColumn>
</webuijsf:tableRowGroup>
<f:facet name="actionsTop">
<w:button id="action2"
actionExpression="#{sequencesBackingBean.planificationGP.actions.delete}"
disabled="#{sequencesBackingBean.planificationGP.actions.disabled}"
text="#{msgs.sequences_tablePlanif_ActionDelete}"/>
</f:facet>
<f:facet name="actionsBottom">
<w:button id="action1"
actionExpression="#{sequencesBackingBean.planificationGP.actions.delete}"
disabled="#{sequencesBackingBean.planificationGP.actions.disabled}"
text="#{msgs.sequences_tablePlanif_ActionDelete}"/>
</f:facet>
</webuijsf:table>
<webuijsf:contentPageTitle id="contentPageTitle" title="#{msgs.sequences_addnew_planification}">
<f:verbatim><hr style="height:2px;"/></f:verbatim>
<h:panelGrid columns="2" width="100%">
<h:panelGrid columns="3">
<w:staticText text="#{msgs.sequences_add_calendrier}"/>
<webuijsf:dropDown
items="#{calendrierOL.calendriersNone}"
selected="#{sequencesBackingBean.planificationGP.toAdd.idCalendrier}"
/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab3:help_add_calendrier').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab3:help_add_calendrier').close();" />
<w:staticText text="#{msgs.sequences_add_moment}"/>
<w:textField text="#{sequencesBackingBean.planificationGP.toAdd.showableHeure}"/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab3:help_add_moment').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab3:help_add_moment').close();" />
</h:panelGrid>
<webuijsf:button actionExpression="#{sequencesBackingBean.planificationGP.addIt}" text="#{msgs.add_msg}" />
</h:panelGrid>
</webuijsf:contentPageTitle>
<!-- bulles d'aide pour cet accordéon : préfixe "form:panel1:tset:One:acc2:tab3:" -->
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_add_calendrier" title="#{msgs.sequences_add_calendrier}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_add_desc_calendrier}" />
</webuijsf:bubble>
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_add_moment" title="#{msgs.sequences_add_moment}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_add_desc_moment}" />
</webuijsf:bubble>
</webuijsf:accordionTab>
<webuijsf:accordionTab id="tab7" contentHeight="auto" title="#{msgs.sequences_accor_title_7}" >
<webuijsf:panelGroup block="true" styleClass="explications">
<webuijsf:staticText text="#{msgs.sequences_tblplag_explic}" />
</webuijsf:panelGroup>
<webuijsf:table id="tablePlagesAlt" binding="#{sequencesBackingBean.plagesCourantesTable}"/>
</webuijsf:accordionTab>
<webuijsf:accordionTab id="tab8" title="#{msgs.sequences_accor_title_8}" contentHeight="auto">
<webuijsf:panelGroup block="true" styleClass="explications">
<webuijsf:staticText text="#{msgs.sequences_tblbranch_explic}" />
</webuijsf:panelGroup>
<webuijsf:table id="tableBanches" title="#{msgs.sequences_branchtable_title}"
paginateButton="false" paginationControls="true"
deselectMultipleButton="true" selectMultipleButton="true"
deselectMultipleButtonOnClick="setTimeout('disableBranchesActions()', 0)"
selectMultipleButtonOnClick="setTimeout('disableBranchesActions()', 0)"
clearSortButton="true" sortPanelToggleButton="true">
<webuijsf:tableRowGroup id="rowGroup1"
sourceData="#{sequencesBackingBean.brancheGP.provider}" sourceVar="branches"
rows="#{sequencesBackingBean.brancheGP.preferences.rows}"
selected="#{sequencesBackingBean.brancheGP.select.selectedState}"
binding="#{sequencesBackingBean.brancheGP.tableRowGroup}">
<w:tableColumn id="col0" sort="#{sequencesBackingBean.brancheGP.select.selectedState}"
selectId="select" align="center" valign="middle">
<w:checkbox id="select" onClick="setTimeout('initAllBranchesRows(); disableBranchesActions()', 0)"
selected="#{sequencesBackingBean.brancheGP.select.selected}"
selectedValue="#{sequencesBackingBean.brancheGP.select.selectedValue}"/>
</w:tableColumn>
<webuijsf:tableColumn headerText="#{msgs.sequences_tblbrc_libelbrc}"
sort="#{branches.value.modeleBranche.libelle}" align="center" valign="middle">
<webuijsf:staticText text="#{branches.value.modeleBranche.libelle}"/>
</webuijsf:tableColumn>
<webuijsf:tableColumn headerText="#{msgs.sequences_tblbrc_paramset}"
sort="#{branches.value.pset.libelle}" align="center" valign="middle">
<webuijsf:staticText text="#{branches.value.pset.libelle}" />
</webuijsf:tableColumn>
</webuijsf:tableRowGroup>
<f:facet name="actionsTop">
<w:button id="action2"
actionExpression="#{sequencesBackingBean.brancheGP.actions.delete}"
disabled="#{sequencesBackingBean.brancheGP.actions.disabled}"
text="#{msgs.sequences_branchtable_ActionDelete}"/>
</f:facet>
<f:facet name="actionsBottom">
<w:button id="action1"
actionExpression="#{sequencesBackingBean.brancheGP.actions.delete}"
disabled="#{sequencesBackingBean.brancheGP.actions.disabled}"
text="#{msgs.sequences_branchtable_ActionDelete}"/>
</f:facet>
</webuijsf:table>
<webuijsf:contentPageTitle id="contentPageTitle" title="#{msgs.sequences_addnew_branche}">
<f:verbatim><hr style="height:2px;"/></f:verbatim>
<h:panelGrid columns="2" width="100%">
<h:panelGrid columns="3">
<w:staticText text="#{msgs.sequences_add_branche}"/>
<webuijsf:dropDown
items="#{modBrancheOL.modBrancheNone}"
selected="#{sequencesBackingBean.brancheGP.toAdd.idBranche}"
/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab8:help_add_branche').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab8:help_add_branche').close();" />
<w:staticText text="#{msgs.sequences_add_pset}"/>
<webuijsf:dropDown
items="#{paramsetOL.paramsetsNone}"
selected="#{sequencesBackingBean.brancheGP.toAdd.idPset}"
/>
<h:graphicImage url="#{msgs.global_info_icon}"
onmouseover="document.getElementById('form:panel1:tset:One:acc2:tab8:help_add_pset').open(event);"
onmouseout="document.getElementById('form:panel1:tset:One:acc2:tab8:help_add_pset').close();" />
</h:panelGrid>
<h:panelGroup>
<webuijsf:button id="brcAddBut" binding="#{sequencesBackingBean.brancheGP.addButton}" actionExpression="#{sequencesBackingBean.brancheGP.addIt}" text="#{msgs.add_msg}" />
<w:message for="brcAddBut"/>
</h:panelGroup>
</h:panelGrid>
</webuijsf:contentPageTitle>
<!-- bulles d'aide pour cet accordéon : préfixe "form:panel1:tset:One:acc2:tab8:" -->
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_add_branche" title="#{msgs.sequences_add_branche}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_add_desc_branche1}" />
<webuijsf:markup tag="br" singleton="true" /><webuijsf:markup tag="br" singleton="true" />
<webuijsf:staticText text="#{msgs.sequences_add_desc_branche_pset}" />
</webuijsf:bubble>
<webuijsf:bubble style="#{sequencesBackingBean.accordionBubbleStyle}" id="help_add_pset" title="#{msgs.sequences_add_pset}" autoClose="#{msgs.global_popup_autoclose}" openDelay="#{msgs.global_popup_opendelay}" duration="#{msgs.global_popup_duration}">
<webuijsf:staticText text="#{msgs.sequences_add_desc_pset1}" />
<webuijsf:markup tag="br" singleton="true" /><webuijsf:markup tag="br" singleton="true" />
<webuijsf:staticText text="#{msgs.sequences_add_desc_branche_pset}" />
</webuijsf:bubble>
</webuijsf:accordionTab>
</webuijsf:accordion>
</webuijsf:tab>
<webuijsf:tab id="Two" text="#{msgs.sequences_tab_2}">
<w:accordion binding="#{sequencesBackingBean.accordionDependances}"/>
</webuijsf:tab>
<webuijsf:tab id="Three" text="#{msgs.sequences_tab_3}">
<w:staticText text="En construction"/>
<!--<f:verbatim>
<jsp:plugin
type="applet"
code="DigitalClock.class"
codebase="/bookstore2"
jreversion="1.4"
align="center" height="25" width="300"
nspluginurl="
http://java.sun.com/j2se/1.4.2/download.html"
iepluginurl="
http://java.sun.com/j2se/1.4.2/download.html" >
<jsp:params>
<jsp:param name="language"
value="${pageContext.request.locale.language}" />
<jsp:param name="country"
value="${pageContext.request.locale.country}" />
<jsp:param name="bgcolor" value="FFFFFF" />
<jsp:param name="fgcolor" value="CC0066" />
</jsp:params>
<jsp:fallback>
<p>Unable to start plugin.</p>
</jsp:fallback>
</jsp:plugin>
</f:verbatim>-->
</webuijsf:tab>
</webuijsf:tabSet>
</td>
</tr>
<tr>
<td align="right">
<webuijsf:button actionListenerExpression="#{sequencesBackingBean.checkSolvabilityEvt}" text="#{msgs.sequences_solvability}"/>
<webuijsf:button actionListenerExpression="#{sequencesBackingBean.refreshEvt}" text="#{msgs.refresh_msg}"/>
<webuijsf:button actionListenerExpression="#{sequencesBackingBean.sauverSéquenceEvt}" text="#{msgs.save_msg}"/>
</td>
</tr>
</table>
</webuijsf:panelLayout>
<webuijsf:panelLayout rendered="#{sequencesBackingBean.AChoisiModèleSéquence!=true}">
<webuijsf:staticText text="Choisissez une séquence"/>
</webuijsf:panelLayout>
</webuijsf:markup>
</webuijsf:form>
<h:form id="detailsForm">
<a4j:include id="ajinc" viewId="/include/popupDetailsCondition.jsp" />
</h:form>
</webuijsf:body>
</webuijsf:html>
</webuijsf:page>
</f:view>
</jsp:root>