Hey Thomas,
We're now opening jira issues for any non-trivial change change to
Core or Tomahawk (Sandbox is still optional although recommended).
This is how we're generating change-logs, release notes for new releases.
On 9/22/06, Thomas Spiegl <[EMAIL PROTECTED]> wrote:
> Hi Mike,
>
> no need to feel bad. I thought we open jira issues for important
> changes, like new components or changes to MyFaces core. I did not
> knew that we have to open a jira issue for new component attributes. I
> will consider this in the future.
>
> -Thomas
>
> On 9/20/06, Mike Kienenberger <[EMAIL PROTECTED]> wrote:
> > Thomas,
> >
> > I hate to keep picking on you, but where's the JIRA issue for this?
> > We'll also want to update the commit log message to point to that
> > issue (Martin and Wendy talked about how to do that in the last couple
> > of weeks when Martin forgot to add a JIRA issue).
> >
> > On 9/20/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > > Author: tomsp
> > > Date: Wed Sep 20 04:50:22 2006
> > > New Revision: 448171
> > >
> > > URL: http://svn.apache.org/viewvc?view=rev&rev=448171
> > > Log:
> > > new attribute "activePanelTabVar" for HtmlPanelTabbedPane
> > >
> > > Modified:
> > >
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.java
> > >
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPaneTag.java
> > >
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlTabbedPaneRenderer.java
> > >
myfaces/tomahawk/trunk/core/src/main/resources/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.xml
> > >
myfaces/tomahawk/trunk/core/src/main/tld/tomahawk-entities/tomahawk_panel_tabbed_pane_attributes.xml
> > >
> > > Modified:
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.java
> > > URL:
http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.java?view=diff&rev=448171&r1=448170&r2=448171
> > >
==============================================================================
> > > ---
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.java
(original)
> > > +++
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.java
Wed Sep 20 04:50:22 2006
> > > @@ -161,6 +161,7 @@
> > > private String _inactiveSubStyleClass = null;
> > > private String _tabContentStyleClass = null;
> > > private Boolean _serverSideTabSwitch = null;
> > > + private String _activePanelTabVar;
> > >
> > > public HtmlPanelTabbedPane()
> > > {
> > > @@ -172,6 +173,17 @@
> > > return COMPONENT_FAMILY;
> > > }
> > >
> > > + public String getActiveTabVar() {
> > > + if (_activePanelTabVar != null) return _activePanelTabVar;
> > > + ValueBinding vb = getValueBinding("activeTabVar");
> > > + return vb != null ?
_ComponentUtils.getStringValue(getFacesContext(), vb) : null;
> > > + }
> > > +
> > > + public void setActiveTabVar(String activeTabVar) {
> > > + _activePanelTabVar = activeTabVar;
> > > + }
> > > +
> > > +
> > > public void setSelectedIndex(int selectedIndex)
> > > {
> > > _selectedIndex = new Integer(selectedIndex);
> > > @@ -284,7 +296,7 @@
> > >
> > > public Object saveState(FacesContext context)
> > > {
> > > - Object values[] = new Object[11];
> > > + Object values[] = new Object[12];
> > > values[0] = super.saveState(context);
> > > values[1] = _selectedIndex;
> > > values[2] = _bgcolor;
> > > @@ -296,6 +308,7 @@
> > > values[8] = _tabContentStyleClass;
> > > values[9] = _disabledTabStyleClass;
> > > values[10] = _serverSideTabSwitch;
> > > + values[11] = _activePanelTabVar;
> > > return ((Object) (values));
> > > }
> > >
> > > @@ -313,6 +326,7 @@
> > > _tabContentStyleClass = (String)values[8];
> > > _disabledTabStyleClass = (String)values[9];
> > > _serverSideTabSwitch = (Boolean) values[10];
> > > + _activePanelTabVar = (String) values[11];
> > > }
> > > //------------------ GENERATED CODE END
---------------------------------------
> > > }
> > >
> > > Modified:
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPaneTag.java
> > > URL:
http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPaneTag.java?view=diff&rev=448171&r1=448170&r2=448171
> > >
==============================================================================
> > > ---
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPaneTag.java
(original)
> > > +++
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPaneTag.java
Wed Sep 20 04:50:22 2006
> > > @@ -63,6 +63,7 @@
> > > private String _inactiveSubStyleClass;
> > > private String _tabContentStyleClass;
> > > private String _serverSideTabSwitch;
> > > + private String _activePanelTabVar;
> > > // User Role support --> already handled by HtmlPanelGroupTag
> > >
> > >
> > > @@ -91,6 +92,7 @@
> > > setStringProperty(component, "inactiveSubStyleClass",
_inactiveSubStyleClass);
> > > setStringProperty(component, "tabContentStyleClass",
_tabContentStyleClass);
> > > setBooleanProperty(component, "serverSideTabSwitch",
_serverSideTabSwitch);
> > > + setStringProperty(component, "activePanelTabVar",
_activePanelTabVar);
> > > }
> > >
> > >
> > > @@ -116,6 +118,7 @@
> > > _inactiveSubStyleClass = null;
> > > _tabContentStyleClass = null;
> > > _serverSideTabSwitch = null;
> > > + _activePanelTabVar = null;
> > > }
> > >
> > > public void setServerSideTabSwitch(String serverSideTabSwitch)
> > > @@ -222,4 +225,7 @@
> > > _disabledTabStyleClass = disabledTabStyleClass;
> > > }
> > >
> > > + public void setActivePanelTabVar(String activePanelTabVar) {
> > > + _activePanelTabVar = activePanelTabVar;
> > > + }
> > > }
> > >
> > > Modified:
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlTabbedPaneRenderer.java
> > > URL:
http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlTabbedPaneRenderer.java?view=diff&rev=448171&r1=448170&r2=448171
> > >
==============================================================================
> > > ---
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlTabbedPaneRenderer.java
(original)
> > > +++
myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/tabbedpane/HtmlTabbedPaneRenderer.java
Wed Sep 20 04:50:22 2006
> > > @@ -220,7 +220,7 @@
> > > String tabContentStyleClass =
tabbedPane.getTabContentStyleClass();
> > > writer.writeAttribute(HTML.CLASS_ATTR, TAB_PANE_CLASS+(tabContentStyleClass==null ?
"" : " "+tabContentStyleClass), null);
> > >
> > > - writeTabsContents(writer, facesContext, tabbedPane,
selectedIndex);
> > > + writeTabsContents(writer, facesContext, tabbedPane,
selectedIndex);
> > >
> > > writer.endElement(HTML.TD_ELEM);
> > > writer.endElement(HTML.TR_ELEM);
> > > @@ -514,28 +514,38 @@
> > >
> > > protected void writeTabsContents(ResponseWriter writer, FacesContext
facesContext, HtmlPanelTabbedPane tabbedPane,
> > > int selectedIndex) throws
IOException {
> > > - HtmlRendererUtils.writePrettyLineSeparator(facesContext);
> > > + HtmlRendererUtils.writePrettyLineSeparator(facesContext);
> > > +
> > > + int tabIdx = 0;
> > > + List children = tabbedPane.getChildren();
> > > + for (int i = 0, len = children.size(); i < len; i++) {
> > > + UIComponent child = getUIComponent((UIComponent)
children.get(i));
> > > + if (child instanceof HtmlPanelTab) {
> > > + String activeTabVar = tabbedPane.getActiveTabVar();
> > > + if (activeTabVar != null) {
> > > + Map requestMap =
facesContext.getExternalContext().getRequestMap();
> > > + requestMap.put(activeTabVar, Boolean.valueOf(tabIdx
== selectedIndex));
> > > + }
> > >
> > > - int tabIdx = 0;
> > > - List children = tabbedPane.getChildren();
> > > - for (int i = 0, len = children.size(); i < len; i++) {
> > > - UIComponent child = getUIComponent((UIComponent)
children.get(i));
> > > - if (child instanceof HtmlPanelTab) {
> > > - HtmlPanelTab tab = (HtmlPanelTab)child;
> > > - writer.startElement(HTML.DIV_ELEM, tabbedPane);
> > > - writer.writeAttribute(HTML.ID_ATTR,
tab.getClientId(facesContext), null);
> > > - // the inactive tabs are hidden with a div-tag
> > > - if (tabIdx != selectedIndex) {
> > > - writer.writeAttribute(HTML.STYLE_ATTR,
"display:none", null);
> > > - }
> > > - RendererUtils.renderChild(facesContext, child);
> > > - writer.endElement(HTML.DIV_ELEM);
> > > -
> > > - tabIdx++;
> > > - } else {
> > > - RendererUtils.renderChild(facesContext, child);
> > > - }
> > > - }
> > > + HtmlPanelTab tab = (HtmlPanelTab)child;
> > > + writer.startElement(HTML.DIV_ELEM, tabbedPane);
> > > + writer.writeAttribute(HTML.ID_ATTR,
tab.getClientId(facesContext), null);
> > > + // the inactive tabs are hidden with a div-tag
> > > + if (tabIdx != selectedIndex) {
> > > + writer.writeAttribute(HTML.STYLE_ATTR,
"display:none", null);
> > > + }
> > > + RendererUtils.renderChild(facesContext, child);
> > > + writer.endElement(HTML.DIV_ELEM);
> > > +
> > > + tabIdx++;
> > > + if (activeTabVar != null) {
> > > + Map requestMap =
facesContext.getExternalContext().getRequestMap();
> > > + requestMap.remove(tabbedPane.getActiveTabVar());
> > > + }
> > > + } else {
> > > + RendererUtils.renderChild(facesContext, child);
> > > + }
> > > + }
> > > }
> > >
> > > private UIComponent getUIComponent(UIComponent uiComponent)
> > >
> > > Modified:
myfaces/tomahawk/trunk/core/src/main/resources/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.xml
> > > URL:
http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/core/src/main/resources/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.xml?view=diff&rev=448171&r1=448170&r2=448171
> > >
==============================================================================
> > > ---
myfaces/tomahawk/trunk/core/src/main/resources/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.xml
(original)
> > > +++
myfaces/tomahawk/trunk/core/src/main/resources/org/apache/myfaces/custom/tabbedpane/HtmlPanelTabbedPane.xml
Wed Sep 20 04:50:22 2006
> > > @@ -45,4 +45,8 @@
> > > <name>tabContentStyleClass</name>
> > > <type>java.lang.String</type>
> > > </field>
> > > + <field>
> > > + <name>activePanelTabVar</name>
> > > + <type>java.lang.String</type>
> > > + </field>
> > > </component>
> > >
> > > Modified:
myfaces/tomahawk/trunk/core/src/main/tld/tomahawk-entities/tomahawk_panel_tabbed_pane_attributes.xml
> > > URL:
http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/core/src/main/tld/tomahawk-entities/tomahawk_panel_tabbed_pane_attributes.xml?view=diff&rev=448171&r1=448170&r2=448171
> > >
==============================================================================
> > > ---
myfaces/tomahawk/trunk/core/src/main/tld/tomahawk-entities/tomahawk_panel_tabbed_pane_attributes.xml
(original)
> > > +++
myfaces/tomahawk/trunk/core/src/main/tld/tomahawk-entities/tomahawk_panel_tabbed_pane_attributes.xml
Wed Sep 20 04:50:22 2006
> > > @@ -62,3 +62,12 @@
> > > Toggle client-side/server-side tab switches.
> > > </description>
> > > </attribute>
> > > + <attribute>
> > > + <name>_activePanelTabVar</name>
> > > + <required>false</required>
> > > + <rtexprvalue>false</rtexprvalue>
> > > + <description>
> > > + Boolean Variable that is set in request scope when
rendering a panelTab. True means that the currently rendered
> > > + panelTab is active.
> > > + </description>
> > > + </attribute>
> > >
> > >
> > >
> >
>
>
> --
> http://www.irian.at
>
> Your JSF powerhouse -
> JSF Consulting, Development and
> Courses in English and German
>
> Professional Support for Apache MyFaces
>