ICEfaces
  1. ICEfaces
  2. ICE-1408

Support standard portlet themes in ICEfaces components

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.5.4, 1.6DR#3
    • Fix Version/s: 1.7DR#3, 1.7
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      All
    • Affects:
      Compatibility/Configuration
    • Workaround Exists:
      Yes
    • Workaround Description:
      Manually adjust the theme stylesheet.

      Description

      Portlet styling has special requirements. A customer has sent in some changes to one of our existing theme stylesheets that allows his ICEfaces application to be properly displayed in a portlet. I'll include his changes in this case. We'll need to discuss styling requirements for portlets in a more holistic sense when proper support is added to the main framework.
      1. xp.css
        47 kB
        Deryk Sinotte
      2. xp-portlet.css
        51 kB
        Neil Griffin
      1. screenshot-1.jpg
        248 kB

        Issue Links

          Activity

          Deryk Sinotte created issue -
          Hide
          Deryk Sinotte added a comment -

          I'm attaching the customer's adjustments to our xp.css file as well as pasting in a diff from our current stylesheet in the repository trunk. The only adjustment I made was to remove the customer's name and email address to protect their privacy.

          Index: xp.css
          ===================================================================
          — xp.css (revision 13465)
          +++ xp.css (working copy)
          @@ -41,34 +41,45 @@

          /* set the attributes for the font family, size and color for ALL elements on the page */
          /* make the fonts inside tables and forms == the default size of the page */
          +
          +/* This is incompatible with portal themes, so commenting it out...
          body, table

          { font-family: Arial, Helvetica, sans-serif; font-size: .95em; color: #000000; }

          +*/

          /* now set the size and other attributes of the fonts for any of the form elements for non-ICE form elements. (note this will also affect any ICE components that render out any of the following HTML tags */
          +/* This is incompatible with portal themes, so commenting it out...
          input, textarea, select {
          }
          +*/

          /*
          =================== HTML Form Element Appearence ==============
          */

          /* set the style elements for any of the textarea form elements */
          +/* This is incompatible with portal themes, so commenting it out...
          textarea {

          }
          +*/

          /* set the style elements for any of the select form elements */
          +/* This is incompatible with portal themes, so commenting it out...
          select {

          }
          +*/

          /* set the style elements for any of the input form elements */
          +/* This is incompatible with portal themes, so commenting it out...
          input {

          }
          +*/

          /*
          =================== Style class definitions for ICE Standard Extended Component Appearance ==============
          @@ -80,10 +91,6 @@
          padding: 2px;
          }

          -.iceCheckbox

          { - white-space: nowrap; -}

          -
          .iceCheckbox input, .iceRadioBtn input, .iceBooleanCheckbox

          { margin: 2px; padding: 2px; @@ -323,11 +330,14 @@ margin: 10px; }

          -.iceDtdPgrScrBtn {
          /* the cells behind the scroll buttons */
          +/* This is incompatible with portal themes, so commenting it out...
          +/*
          +.iceDtdPgrScrBtn

          { background-color: #FFFFFF; padding: 2px; }

          +*/

          .iceDtdPgrTbl

          { /* the container for the pagination*/ @@ -341,9 +351,9 @@ background-color: #FFFFFF; color: #666666; display: block; + border: 1px solid #FFFFFF; padding-left: 5px; padding-right: 5px; - border: 1px solid #FFFFFF; }
          • html .iceDtdPgrCol a { @@ -437,6 +447,7 @@ border: none; }

          + /* ADDED Navy Blue font color, since it always appears on a white background. In one case, the portal theme had a portlet-font, which would not render on this always-white background in the ICEfaces XP theme */
          .iceTabSetTabOn .MiddleMiddle

          { background-color: transparent; background-image: url( "./css-images/on-mid-mid.gif" ); @@ -444,6 +455,7 @@ text-align: center; border: none; white-space: nowrap; + color: #012A5C; }

          .iceTabSetTabOn .MiddleMiddle a

          { @@ -534,6 +546,7 @@ border: none; }

          + /* ADDED Navy Blue font color, since it always appears on a white background. In one case, the portal theme had a portlet-font, which would not render on this always-white background in the ICEfaces XP theme */
          .iceTabSetTabOff .MiddleMiddle

          { background-color: transparent; background-image: url( "./css-images/off-mid-mid.gif" ); @@ -541,6 +554,7 @@ text-align: center; border: none; white-space: nowrap; + color: #012A5C; }

          .iceTabSetTabOff .MiddleMiddle a {
          @@ -691,6 +705,8 @@

          /* tabPanel */

          +
          +/* background-color: #FFFFFF; Background color within .iceTabSet is incompatible with portal themes, so commenting it out... */
          .iceTabSet

          { padding-top: 10px; padding-left: 10px; @@ -699,7 +715,6 @@ border-right: 1px solid #ABABAB; border-bottom: 1px solid #ABABAB; border-left: 1px solid #ABABAB; - background-color: #FFFFFF; }

          /* TABS ON BOTTOM STYLE CLASSES */
          @@ -1217,7 +1232,6 @@
          /*
          ----------- FileUpload Component classes
          */
          -.iceFileUpload {}
          .iceFileUploadText {
          border: 1px solid #ABABAB;
          background-color: #FFFFFF;
          @@ -1550,8 +1564,8 @@
          Classes for the connection status indicator
          */

          +/* margin: 10px; This is incompatible with portal themes, so commenting it out... */
          .iceOutConStat

          { - margin: 10px; width: 25px; height: 25px; border: none; @@ -1680,42 +1694,6 @@ cursor: default; }

          -/* submenu disabled style classes */
          -.iceSubMenuRowLabel-dis

          { - color: #ABABAB; - text-decoration: none; - cursor: default; -}

          -
          -.iceSubMenuRow-dis

          { - color: #ABABAB; - text-decoration: none; - cursor: default; - padding: 0px; - display: block; - height: auto; -}

          -
          -.iceSubMenuRow-dis a

          { - color: #333333; - text-decoration: none; - cursor: default; - display: block; - padding-left: 3px; - padding-right: 3px; - padding-top: 3px; - padding-bottom: 3px; - -}

          -
          -.iceSubMenuRow-dis a:hover

          { - color: #ABABAB; - text-decoration: none; - border-bottom: 1px dotted #CCCCCC; - cursor: default; -}

          -
          -
          /* panel tabs disabled style classes */

          .iceTabSetTabOff {

          Show
          Deryk Sinotte added a comment - I'm attaching the customer's adjustments to our xp.css file as well as pasting in a diff from our current stylesheet in the repository trunk. The only adjustment I made was to remove the customer's name and email address to protect their privacy. Index: xp.css =================================================================== — xp.css (revision 13465) +++ xp.css (working copy) @@ -41,34 +41,45 @@ /* set the attributes for the font family, size and color for ALL elements on the page */ /* make the fonts inside tables and forms == the default size of the page */ + +/* This is incompatible with portal themes, so commenting it out... body, table { font-family: Arial, Helvetica, sans-serif; font-size: .95em; color: #000000; } +*/ /* now set the size and other attributes of the fonts for any of the form elements for non-ICE form elements. (note this will also affect any ICE components that render out any of the following HTML tags */ +/* This is incompatible with portal themes, so commenting it out... input, textarea, select { } +*/ /* =================== HTML Form Element Appearence ============== */ /* set the style elements for any of the textarea form elements */ +/* This is incompatible with portal themes, so commenting it out... textarea { } +*/ /* set the style elements for any of the select form elements */ +/* This is incompatible with portal themes, so commenting it out... select { } +*/ /* set the style elements for any of the input form elements */ +/* This is incompatible with portal themes, so commenting it out... input { } +*/ /* =================== Style class definitions for ICE Standard Extended Component Appearance ============== @@ -80,10 +91,6 @@ padding: 2px; } -.iceCheckbox { - white-space: nowrap; -} - .iceCheckbox input, .iceRadioBtn input, .iceBooleanCheckbox { margin: 2px; padding: 2px; @@ -323,11 +330,14 @@ margin: 10px; } -.iceDtdPgrScrBtn { /* the cells behind the scroll buttons */ +/* This is incompatible with portal themes, so commenting it out... +/* +.iceDtdPgrScrBtn { background-color: #FFFFFF; padding: 2px; } +*/ .iceDtdPgrTbl { /* the container for the pagination*/ @@ -341,9 +351,9 @@ background-color: #FFFFFF; color: #666666; display: block; + border: 1px solid #FFFFFF; padding-left: 5px; padding-right: 5px; - border: 1px solid #FFFFFF; } html .iceDtdPgrCol a { @@ -437,6 +447,7 @@ border: none; } + /* ADDED Navy Blue font color, since it always appears on a white background. In one case, the portal theme had a portlet-font, which would not render on this always-white background in the ICEfaces XP theme */ .iceTabSetTabOn .MiddleMiddle { background-color: transparent; background-image: url( "./css-images/on-mid-mid.gif" ); @@ -444,6 +455,7 @@ text-align: center; border: none; white-space: nowrap; + color: #012A5C; } .iceTabSetTabOn .MiddleMiddle a { @@ -534,6 +546,7 @@ border: none; } + /* ADDED Navy Blue font color, since it always appears on a white background. In one case, the portal theme had a portlet-font, which would not render on this always-white background in the ICEfaces XP theme */ .iceTabSetTabOff .MiddleMiddle { background-color: transparent; background-image: url( "./css-images/off-mid-mid.gif" ); @@ -541,6 +554,7 @@ text-align: center; border: none; white-space: nowrap; + color: #012A5C; } .iceTabSetTabOff .MiddleMiddle a { @@ -691,6 +705,8 @@ /* tabPanel */ + +/* background-color: #FFFFFF; Background color within .iceTabSet is incompatible with portal themes, so commenting it out... */ .iceTabSet { padding-top: 10px; padding-left: 10px; @@ -699,7 +715,6 @@ border-right: 1px solid #ABABAB; border-bottom: 1px solid #ABABAB; border-left: 1px solid #ABABAB; - background-color: #FFFFFF; } /* TABS ON BOTTOM STYLE CLASSES */ @@ -1217,7 +1232,6 @@ /* ----------- FileUpload Component classes */ -.iceFileUpload {} .iceFileUploadText { border: 1px solid #ABABAB; background-color: #FFFFFF; @@ -1550,8 +1564,8 @@ Classes for the connection status indicator */ +/* margin: 10px; This is incompatible with portal themes, so commenting it out... */ .iceOutConStat { - margin: 10px; width: 25px; height: 25px; border: none; @@ -1680,42 +1694,6 @@ cursor: default; } -/* submenu disabled style classes */ -.iceSubMenuRowLabel-dis { - color: #ABABAB; - text-decoration: none; - cursor: default; -} - -.iceSubMenuRow-dis { - color: #ABABAB; - text-decoration: none; - cursor: default; - padding: 0px; - display: block; - height: auto; -} - -.iceSubMenuRow-dis a { - color: #333333; - text-decoration: none; - cursor: default; - display: block; - padding-left: 3px; - padding-right: 3px; - padding-top: 3px; - padding-bottom: 3px; - -} - -.iceSubMenuRow-dis a:hover { - color: #ABABAB; - text-decoration: none; - border-bottom: 1px dotted #CCCCCC; - cursor: default; -} - - /* panel tabs disabled style classes */ .iceTabSetTabOff {
          Deryk Sinotte made changes -
          Field Original Value New Value
          Attachment xp.css [ 10361 ]
          Deryk Sinotte made changes -
          Assignee Deryk Sinotte [ deryk.sinotte ]
          Hide
          Neil Griffin added a comment -

          I think many of these changes got put into the xp-portet-styles.css file in the DR#5 release.

          On a related note, there is a Liferay customer who is interested in seeing stuff like

          style="portlet-form-input-field" added to <ice:inputText/> automatically when running inside a portal, so that the portal's theme will get picked up automatically. This would apply to <ice:commandButton/> and other controls too.

          (Part of the wholistic thing Deryk was talking about)

          Show
          Neil Griffin added a comment - I think many of these changes got put into the xp-portet-styles.css file in the DR#5 release. On a related note, there is a Liferay customer who is interested in seeing stuff like style="portlet-form-input-field" added to <ice:inputText/> automatically when running inside a portal, so that the portal's theme will get picked up automatically. This would apply to <ice:commandButton/> and other controls too. (Part of the wholistic thing Deryk was talking about)
          Deryk Sinotte made changes -
          Link This issue is duplicated by ICE-1340 [ ICE-1340 ]
          Hide
          Deryk Sinotte added a comment -

          The work that needs to be done is to:

          1) Examine the portlet spec and review the specified styles names outlined in PLT.C CSS Style Definitions.
          2) Resolve those against our existing components.
          3) Implement a mechanism were the standard portlet class names are rendered out when appropriate.

          Show
          Deryk Sinotte added a comment - The work that needs to be done is to: 1) Examine the portlet spec and review the specified styles names outlined in PLT.C CSS Style Definitions. 2) Resolve those against our existing components. 3) Implement a mechanism were the standard portlet class names are rendered out when appropriate.
          Ken Fyten made changes -
          Link This issue blocks ICE-1608 [ ICE-1608 ]
          Ken Fyten made changes -
          Assignee User Deryk.sinotte [ deryk.sinotte ] Adnan Durrani [ adnan.durrani ]
          Ken Fyten made changes -
          Fix Version/s 1.7 [ 10080 ]
          Ken Fyten made changes -
          Fix Version/s 1.7DR#1 [ 10100 ]
          Fix Version/s 1.7 [ 10080 ]
          Assignee Priority P1
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #14844 Fri Sep 21 09:47:55 MDT 2007 adnan.durrani Fix for ICE-1408. ICEfaces extended components have changed to spit out the portlet specific style classes defined in JSR-168 spec
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/taglib/Util.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlCommandButton.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlOutputLabel.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlOutputText.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlSelectOneListbox.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlInputTextarea.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlSelectManyMenu.java
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/util/CoreUtils.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/menubar/MenuBarRenderer.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlSelectBooleanCheckbox.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/menubar/MenuItemRenderer.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlInputText.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlSelectOneMenu.java
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/renderkit/dom_html_basic/DomBasicRenderer.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlInputSecret.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlSelectManyListbox.java
          Hide
          Adnan Durrani added a comment -

          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlCommandButton.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputSecret.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputText.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputTextarea.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlOutputLabel.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlOutputText.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectBooleanCheckbox.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectManyListbox.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectManyMenu.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectOneListbox.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectOneMenu.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\taglib\Util.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\menubar\MenuBarRenderer.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\menubar\MenuItemRenderer.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\core\src\com\icesoft\faces\renderkit\dom_html_basic\DomBasicRenderer.java
          Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\core\src\com\icesoft\faces\util\CoreUtils.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\menubar\MenuBarRenderer.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\core\src\com\icesoft\faces\util\CoreUtils.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectOneListbox.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectBooleanCheckbox.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectManyMenu.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\taglib\Util.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputTextarea.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlOutputLabel.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\core\src\com\icesoft\faces\renderkit\dom_html_basic\DomBasicRenderer.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputText.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlOutputText.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputSecret.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectOneMenu.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectManyListbox.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlCommandButton.java
          Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\menubar\MenuItemRenderer.java
          Completed: At revision: 14844

          Show
          Adnan Durrani added a comment - Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlCommandButton.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputSecret.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputText.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputTextarea.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlOutputLabel.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlOutputText.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectBooleanCheckbox.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectManyListbox.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectManyMenu.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectOneListbox.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectOneMenu.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\taglib\Util.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\menubar\MenuBarRenderer.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\menubar\MenuItemRenderer.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\core\src\com\icesoft\faces\renderkit\dom_html_basic\DomBasicRenderer.java Modified: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\core\src\com\icesoft\faces\util\CoreUtils.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\menubar\MenuBarRenderer.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\core\src\com\icesoft\faces\util\CoreUtils.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectOneListbox.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectBooleanCheckbox.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectManyMenu.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\taglib\Util.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputTextarea.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlOutputLabel.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\core\src\com\icesoft\faces\renderkit\dom_html_basic\DomBasicRenderer.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputText.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlOutputText.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlInputSecret.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectOneMenu.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlSelectManyListbox.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\ext\HtmlCommandButton.java Sending content: D:\work\development\current\svn\ossrepo\icefaces\trunk\icefaces\component\src\com\icesoft\faces\component\menubar\MenuItemRenderer.java Completed: At revision: 14844
          Hide
          Adnan Durrani added a comment -

          The changes has been made, so the ICEfaces extended components can spit out the portlet specific style classes only when in portlet environment and the following context parameter being set to true in the web.xml "com.icesoft.faces.portlet.renderStyles". The default value of this parameter is true. To disabling it the following param need to be set to false exclusively.

          <context-param>
          <param-name>com.icesoft.faces.portlet.renderStyles</param-name>
          <param-value>false</param-value>
          </context-param>

          According to the spec, all approperate components has been modifed, except dataTable and selectOneRadio and selectManyCheckbox.

          The JSF with non-porlet environment, renders styleClasses on the container of the both selectOneRadio and selectManyCheckbox, and according to the portlet classes need to be render on each instance of the input element.

          Show
          Adnan Durrani added a comment - The changes has been made, so the ICEfaces extended components can spit out the portlet specific style classes only when in portlet environment and the following context parameter being set to true in the web.xml "com.icesoft.faces.portlet.renderStyles". The default value of this parameter is true. To disabling it the following param need to be set to false exclusively. <context-param> <param-name>com.icesoft.faces.portlet.renderStyles</param-name> <param-value>false</param-value> </context-param> According to the spec, all approperate components has been modifed, except dataTable and selectOneRadio and selectManyCheckbox. The JSF with non-porlet environment, renders styleClasses on the container of the both selectOneRadio and selectManyCheckbox, and according to the portlet classes need to be render on each instance of the input element.
          Adnan Durrani made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Ken Fyten made changes -
          Summary Theme styles don't work properly with portlets. Support standard portlet themes in ICEfaces components
          Issue Type Bug [ 1 ] New Feature [ 2 ]
          Hide
          Neil Griffin added a comment -

          Adnan,

          I'm working with the trunk and noticed that the <ice:outputText/> component is rendering like this:

          <span class="portlet-form-label">

          This class should only be rendered on <ice:outputLabel /> and needs to be removed from the rendering of <ice:outputText />

          Thanks,

          Neil

          Show
          Neil Griffin added a comment - Adnan, I'm working with the trunk and noticed that the <ice:outputText/> component is rendering like this: <span class="portlet-form-label"> This class should only be rendered on <ice:outputLabel /> and needs to be removed from the rendering of <ice:outputText /> Thanks, Neil
          Hide
          Neil Griffin added a comment -

          Adnan,

          The PORTLET_CSS_DEFAULT.PORTLET_SECTION_BODY and PORTLET_CSS_DEFAULT.PORTLET_SECTION_ALTERNATE styles are not getting appended to rows in ice:dataTable.

          Thanks,

          Neil

          Show
          Neil Griffin added a comment - Adnan, The PORTLET_CSS_DEFAULT.PORTLET_SECTION_BODY and PORTLET_CSS_DEFAULT.PORTLET_SECTION_ALTERNATE styles are not getting appended to rows in ice:dataTable. Thanks, Neil
          Ken Fyten made changes -
          Resolution Fixed [ 1 ]
          Status Resolved [ 5 ] Reopened [ 4 ]
          Affects [Compatibility/Configuration]
          Ken Fyten made changes -
          Fix Version/s 1.7DR#2 [ 10110 ]
          Fix Version/s 1.7DR#1 [ 10100 ]
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #14925 Thu Oct 11 10:42:36 MDT 2007 adnan.durrani Fix for ICE-1408 (the outputText component doesn't render portlet styleClass any more. the iceDataTable is rendering portlet styleClasses for the header, footer, body and the alternate row)
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlOutputText.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/renderkit/TableRenderer.java
          Hide
          Adnan Durrani added a comment -

          Hi Neil,

          The outputText component doesn't render the portlet styleClass anymore and the ice:dataTable is rendering the following style classes:

          PORTLET_SECTION_HEADER
          PORTLET_SECTION_BODY
          PORTLET_SECTION_ALTERNATE
          PORTLET_SECTION_FOOTER

          revision : 14925

          Show
          Adnan Durrani added a comment - Hi Neil, The outputText component doesn't render the portlet styleClass anymore and the ice:dataTable is rendering the following style classes: PORTLET_SECTION_HEADER PORTLET_SECTION_BODY PORTLET_SECTION_ALTERNATE PORTLET_SECTION_FOOTER revision : 14925
          Adnan Durrani made changes -
          Status Reopened [ 4 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Hide
          Neil Griffin added a comment -

          Hey thanks Adnan!!!

          Show
          Neil Griffin added a comment - Hey thanks Adnan!!!
          Hide
          Neil Griffin added a comment -

          Adnan,

          Found one more issue today...

          In TableRenderer.java, the PORTLET_SECTION_BODY class is being applied to the <tbody> element, and the PORTLET_SECTION_ALTERNATE class is being applied to the "odd" <tr> elements.

          This can cause a rendering problem under IE, which in this case actually obeys CSS a little better than FireFox. Basically, the styles applied to <tbody> are supposed to override the styles applied to <tr>. So by putting the PORTLET_SECTION_BODY class name on the <tbody> element, it makes it impossible to do things like render a background image in the alternate table rows. Instead, the PORTLET_SECTION_BODY class should be applied to "even" rows, just as PORTLET_SECTION_ALTERNATE applies to "odd" rows.

          So in order to fix this, the folowing code needs to be removed from TableRenderer.encodeChildren()...

          /*
          if (CoreUtils.getPortletStyleClass(PORTLET_CSS_DEFAULT.
          PORTLET_SECTION_BODY).length() > 1)

          { tBody.setAttribute(HTML.CLASS_ATTR, PORTLET_CSS_DEFAULT.PORTLET_SECTION_BODY); }

          */

          And the getPortletAlternateRowClass() code should look like this:

          String getPortletAlternateRowClass(String selectedClass, int rowIndex) {
          String rowClass = PORTLET_CSS_DEFAULT.PORTLET_SECTION_ALTERNATE;
          if ((rowIndex % 2) == 0)

          { rowClass = PORTLET_CSS_DEFAULT.PORTLET_SECTION_BODY; }

          if(selectedClass.indexOf(' ')> 1)

          { return selectedClass.replaceFirst(" ", CoreUtils.getPortletStyleClass(" "+ rowClass + " ")); }

          else

          { return selectedClass += CoreUtils.getPortletStyleClass(""+ rowClass); }

          }

          Thanks!!!

          Neil

          Show
          Neil Griffin added a comment - Adnan, Found one more issue today... In TableRenderer.java, the PORTLET_SECTION_BODY class is being applied to the <tbody> element, and the PORTLET_SECTION_ALTERNATE class is being applied to the "odd" <tr> elements. This can cause a rendering problem under IE, which in this case actually obeys CSS a little better than FireFox. Basically, the styles applied to <tbody> are supposed to override the styles applied to <tr>. So by putting the PORTLET_SECTION_BODY class name on the <tbody> element, it makes it impossible to do things like render a background image in the alternate table rows. Instead, the PORTLET_SECTION_BODY class should be applied to "even" rows, just as PORTLET_SECTION_ALTERNATE applies to "odd" rows. So in order to fix this, the folowing code needs to be removed from TableRenderer.encodeChildren()... /* if (CoreUtils.getPortletStyleClass(PORTLET_CSS_DEFAULT. PORTLET_SECTION_BODY).length() > 1) { tBody.setAttribute(HTML.CLASS_ATTR, PORTLET_CSS_DEFAULT.PORTLET_SECTION_BODY); } */ And the getPortletAlternateRowClass() code should look like this: String getPortletAlternateRowClass(String selectedClass, int rowIndex) { String rowClass = PORTLET_CSS_DEFAULT.PORTLET_SECTION_ALTERNATE; if ((rowIndex % 2) == 0) { rowClass = PORTLET_CSS_DEFAULT.PORTLET_SECTION_BODY; } if(selectedClass.indexOf(' ')> 1) { return selectedClass.replaceFirst(" ", CoreUtils.getPortletStyleClass(" "+ rowClass + " ")); } else { return selectedClass += CoreUtils.getPortletStyleClass(""+ rowClass); } } Thanks!!! Neil
          Hide
          Ken Fyten added a comment -

          Recent issue found by Neil with fix suggestion attached.

          Show
          Ken Fyten added a comment - Recent issue found by Neil with fix suggestion attached.
          Ken Fyten made changes -
          Resolution Fixed [ 1 ]
          Status Resolved [ 5 ] Reopened [ 4 ]
          Assignee Priority P1
          Ken Fyten made changes -
          Fix Version/s 1.7DR#3 [ 10112 ]
          Fix Version/s 1.7DR#2 [ 10110 ]
          Ken Fyten made changes -
          Assignee Adnan Durrani [ adnan.durrani ] Yip Ng [ yip.ng ]
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #15065 Wed Oct 31 17:41:52 MDT 2007 yip.ng ICE-1408
          Changed rendering of portlet-section-body and portlet-section-alternate style classes for alternate table rows.
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/renderkit/TableRenderer.java
          Hide
          yip.ng added a comment -

          Screenshot showing alternating table row classes and background images after applying the suggested fix.

          Show
          yip.ng added a comment - Screenshot showing alternating table row classes and background images after applying the suggested fix.
          yip.ng made changes -
          Attachment screenshot-1.jpg [ 10720 ]
          yip.ng made changes -
          Status Reopened [ 4 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Hide
          Neil Griffin added a comment -

          The attached file is easily diff'able with today's trunk. I deleted some hard coded font colors and some other items that shouldn't be present it portlets.

          Show
          Neil Griffin added a comment - The attached file is easily diff'able with today's trunk. I deleted some hard coded font colors and some other items that shouldn't be present it portlets.
          Neil Griffin made changes -
          Attachment xp-portlet.css [ 10727 ]
          Hide
          Neil Griffin added a comment -

          In addition to the xp-portlet.css that I just attached, I recommend adding the following entries as well:

          .iceDatTbl

          { margin: 0px; }

          .iceOutConStat

          { margin: 0px; }

          .iceSelOneMnu

          { padding: 1px 1px 1px 1px; }

          .iceInpTxt

          { margin: 0px; }

          .iceOutLbl

          { padding: 1px 4px 1px 0px; }

          .icePnlTbSet

          { background: transparent; }
          Show
          Neil Griffin added a comment - In addition to the xp-portlet.css that I just attached, I recommend adding the following entries as well: .iceDatTbl { margin: 0px; } .iceOutConStat { margin: 0px; } .iceSelOneMnu { padding: 1px 1px 1px 1px; } .iceInpTxt { margin: 0px; } .iceOutLbl { padding: 1px 4px 1px 0px; } .icePnlTbSet { background: transparent; }
          Hide
          Ken Fyten added a comment -

          Please review Neil's suggestions with Adnan as required.

          Show
          Ken Fyten added a comment - Please review Neil's suggestions with Adnan as required.
          Ken Fyten made changes -
          Resolution Fixed [ 1 ]
          Status Resolved [ 5 ] Reopened [ 4 ]
          Hide
          Adnan Durrani added a comment -

          I do not t see any problems with it.

          Show
          Adnan Durrani added a comment - I do not t see any problems with it.
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #15189 Wed Nov 14 14:52:35 MST 2007 yip.ng ICE-1408
          Updated CSS.
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/resources/css/xp/xp-portlet.css
          yip.ng made changes -
          Status Reopened [ 4 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Ken Fyten made changes -
          Resolution Fixed [ 1 ]
          Status Resolved [ 5 ] Reopened [ 4 ]
          Assignee Priority P1
          Ken Fyten made changes -
          Status Reopened [ 4 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Ken Fyten made changes -
          Fix Version/s 1.7 [ 10080 ]
          Ken Fyten made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Assignee Priority P1
          Assignee Yip Ng [ yip.ng ]

            People

            • Assignee:
              Unassigned
              Reporter:
              Deryk Sinotte
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: