Hi ben,

you don't need multiple popups, just alternate content in on popup. e.g.:


 <f:facet name="popup">
    <tc:popup width="150" height="100" id="popup"
rendered="#{InputScreenBean.showPopup1 ||
InputScreenBean.showPopup2}">
      <tc:panel>
        <f:facet name="layout">
          <tc:gridlayout rows="1*;1*"/>
         </f:facet>
        <tc:panel rendered="#{InputScreenBean.showPopup1}">
          <!-- content of first option -->
        </tc:panel>
        <tc:panel rendered="#{InputScreenBean.showPopup2}">
          <!-- content of second option -->
        </tc:panel>
      </tc:panel>
    </tc:popup>
</f:facet>



Regards,
    Volker




2008/5/20 ben_p <[EMAIL PROTECTED]>:
>
> Hi All,
> I am again struggling with popups. I have a submit button which when clicked
> does an initial pass of a database and calculates the number of results that
> would be returned. If this number is (e.g) > 50 but < 100 I want a warning
> popup with the option of continuing or cancelling. if the number > 100 I
> want a popup that informs the user to selection is too large. This last
> popup would have a single OK button and would cancel the transaction.
>
> My problem is I can get a single popup to work. But I cannot get two popups
> to be associated with my submit button. I have been playing around with the
> facet name and the popup rendered attribute but without success. I cannot
> get popup2 to be displayed. Only the first popup is displayed.
>
> Note the facet names in the below code. There is popup and popup2. If they
> are both 'popup 'then JSF throws an exception. Only the one with the name
> 'popup' will be displayed, but I have seen sample code on this forum where
> the facet name is set to 'popup1' and 'popup2'.
>
> <tc:button label="Open Popup" action="#{InputScreenBean.submit}"
>    id="myButtonId">
>
>    <f:facet name="popup">
>     <tc:popup width="150" height="100" id="popup1"
>      rendered="#{InputScreenBean.showPopup1}">
>      <tc:box label="Popup Title 1">
>       <tc:panel>
>        <f:facet name="layout">
>         <tc:gridLayout rows="1*;fixed;" columns="1*;1*" />
>        </f:facet>
>        <tc:cell spanX="2">
>         <tc:out value="Over 100 results returned"></tc:out>
>        </tc:cell>
>        <tc:button label="OK" action="#{InputScreenBean.popupAction1}">
>         <tc:attribute name="popupClose" value="afterSubmit" />
>        </tc:button>
>        <tc:button label="Cancel">
>         <tc:attribute name="popupClose" value="immediate" />
>        </tc:button>
>       </tc:panel>
>      </tc:box>
>     </tc:popup>
>    </f:facet>
>
>    <f:facet name="popup2">
>     <tc:popup width="150" height="100" id="popupId_2"
>      rendered="#{InputScreenBean.showPopup2}">
>      <tc:box label="Popup Title 2">
>       <tc:panel>
>        <f:facet name="layout">
>         <tc:gridLayout rows="1*;fixed;" columns="1*;1*" />
>        </f:facet>
>        <tc:cell spanX="2">
>         <tc:out value="Hooray 2nd popup shown"></tc:out>
>        </tc:cell>
>        <tc:button label="OK" action="#{InputScreenBean.popupAction2}">
>         <tc:attribute name="popupClose" value="afterSubmit" />
>        </tc:button>
>        <tc:button label="Cancel">
>         <tc:attribute name="popupClose" value="immediate" />
>        </tc:button>
>       </tc:panel>
>      </tc:box>
>     </tc:popup>
>    </f:facet>
>   </tc:button>
>
> Relevant InputScreenBean.java code:
>
> public String popupAction1() {
>  System.out.println("in popupAction1");
>  showPopup1 = false;
>  return "success";
>  }
>
>  public String popupAction2() {
>  System.out.println("in popupAction");
>  return "success";
>  }
>
>  public String submit() {
>  try {
>   int maxAllowed = 100;
>   int maxWarnings = 50;
>   showPopup1 = false;
>   showPopup2 = false;
>
>   System.out.println("numResults is " + numResults);
>   //if numResults > maxAllowed the popup
>   //is show, if it is only >  maxWarnings no
>   //popup is shown
>
>   int iNumRes = Integer.parseInt(numResults);
>   if (iNumRes > maxAllowed) {
>    showPopup1 = true;
>    return null;
>   } else if (iNumRes > maxWarnings) {
>    showPopup2 = true;
>    return null;
>   }
>  } catch (Exception e) {
>   System.out.println("Error in submit()");
>   e.printStackTrace();
>   return "failure";
>  }
>
>  return "success";
>  }
>
>
>
>
>
>
>
>
> --
> View this message in context: 
> http://www.nabble.com/-Tobago--choosing-popup-to-display-tp17338603p17338603.html
> Sent from the MyFaces - Users mailing list archive at Nabble.com.
>
>



-- 
inexso - information exchange solutions GmbH
Bismarckstraße 13 | 26122 Oldenburg
Tel.: +49 441 4082 356 |
FAX: +49 441 4082 355 | www.inexso.de

Reply via email to