You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ma...@apache.org on 2009/09/10 19:16:28 UTC

svn commit: r813518 - in /myfaces/trinidad/trunk/trinidad-impl/src/main: java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/ java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/ javascript/META-INF/adf/jsLibs/ resources/META...

Author: matzew
Date: Thu Sep 10 17:16:27 2009
New Revision: 813518

URL: http://svn.apache.org/viewvc?rev=813518&view=rev
Log:
TRINIDAD-1568 - Allow to disclose and undisclose lightweight dialog

thanks to Radek Hodain for the patch

Added:
    myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/disclose.gif   (with props)
    myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/undisclose.gif   (with props)
Modified:
    myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/SkinSelectors.java
    myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/DialogStyleScriptlet.java
    myfaces/trinidad/trunk/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/PopupDialog.js
    myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/styles/base-desktop.xss

Modified: myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/SkinSelectors.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/SkinSelectors.java?rev=813518&r1=813517&r2=813518&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/SkinSelectors.java (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/SkinSelectors.java Thu Sep 10 17:16:27 2009
@@ -239,6 +239,10 @@
     AF_DIALOG_ROOT_STYLE_CLASS + "::title-text";
   public static final String AF_DIALOG_CLOSE_ICON_STYLE_CLASS =
     AF_DIALOG_ROOT_STYLE_CLASS + "::close-icon";
+  public static final String AF_DIALOG_DISCLOSE_ICON_STYLE_CLASS =
+	  AF_DIALOG_ROOT_STYLE_CLASS + "::disclose-icon";
+  public static final String AF_DIALOG_UNDISCLOSE_ICON_STYLE_CLASS =
+	  AF_DIALOG_ROOT_STYLE_CLASS + "::undisclose-icon";
   public static final String AF_DIALOG_BLOCKED_AREA_STYLE_CLASS =
     AF_DIALOG_ROOT_STYLE_CLASS + "::blocked-area";
 

Modified: myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/DialogStyleScriptlet.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/DialogStyleScriptlet.java?rev=813518&r1=813517&r2=813518&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/DialogStyleScriptlet.java (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/DialogStyleScriptlet.java Thu Sep 10 17:16:27 2009
@@ -81,6 +81,10 @@
     writer.writeText(arc.getStyleClass(SkinSelectors.AF_DIALOG_CLOSE_ICON_STYLE_CLASS), null);
     writer.writeText("','" + SkinSelectors.AF_DIALOG_BLOCKED_AREA_STYLE_CLASS + "':'", null);
     writer.writeText(arc.getStyleClass(SkinSelectors.AF_DIALOG_BLOCKED_AREA_STYLE_CLASS), null);
+    writer.writeText("','" + SkinSelectors.AF_DIALOG_UNDISCLOSE_ICON_STYLE_CLASS + "':'", null);
+    writer.writeText(arc.getStyleClass(SkinSelectors.AF_DIALOG_UNDISCLOSE_ICON_STYLE_CLASS), null);
+    writer.writeText("','" + SkinSelectors.AF_DIALOG_DISCLOSE_ICON_STYLE_CLASS + "':'", null);
+    writer.writeText(arc.getStyleClass(SkinSelectors.AF_DIALOG_DISCLOSE_ICON_STYLE_CLASS), null);
     writer.writeText("'} ); ", null);
   }
 

Modified: myfaces/trinidad/trunk/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/PopupDialog.js
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/PopupDialog.js?rev=813518&r1=813517&r2=813518&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/PopupDialog.js (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/PopupDialog.js Thu Sep 10 17:16:27 2009
@@ -41,6 +41,16 @@
   closerDiv.className = page.getStyleClass("af|dialog::close-icon");
   _addEvent(closerDiv, "click", TrPopupDialog._returnFromDialog);
   titlebar.appendChild(closerDiv);
+  
+  //setup the title bar
+  var toggleDiv = document.createElement("div");
+  toggleDiv.style.cssText = "float:right;";
+  toggleDiv.className = page.getStyleClass("af|dialog::undisclose-icon");
+  _addEvent(toggleDiv, "click", TrPopupDialog._toggleDialog);
+  titlebar.appendChild(toggleDiv);
+
+  //Hold the div so we can change the styleClass
+  this._toggleDiv = toggleDiv;
 
   //setup the title bar
   var sepDiv = document.createElement("div");
@@ -72,6 +82,9 @@
 
   // flag to indicate if dialog size should be locked
   this._fixedSize = false;
+  
+  // iframe height which is set by click on toggle button
+  this._toggleHeight = "0px";
 
 }
 
@@ -264,6 +277,35 @@
     alert("returnFromDialog(): Error - Current popup is not a dialog");
   }
 }
+ 
+/*
+ * This function handles the click on toggle button. 
+ * The first click closes the iframe and the second dicloses. 
+ */
+TrPopupDialog._toggleDialog = function()
+{
+  var dialog = TrPopupDialog.DIALOG;
+  if (dialog)
+  {
+    var page = TrPage.getInstance();
+    var tmp = dialog._iframe.height;
+    dialog._iframe.height = dialog._toggleHeight;
+    dialog._toggleHeight = tmp;
+
+    if (dialog._iframe.height === "0px")
+    {
+      dialog._toggleDiv.className = page.getStyleClass("af|dialog::disclose-icon");
+    }
+    else
+    {
+      dialog._toggleDiv.className = page.getStyleClass("af|dialog::undisclose-icon");
+    }
+  }
+  else
+  {
+    alert("Error - Current popup is not a dialog");
+  }
+}
 
 /*
  * Callback function, invoked on close of dialog.  If necessary, this

Added: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/disclose.gif
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/disclose.gif?rev=813518&view=auto
==============================================================================
Binary file - no diff available.

Propchange: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/disclose.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/undisclose.gif
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/undisclose.gif?rev=813518&view=auto
==============================================================================
Binary file - no diff available.

Propchange: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/undisclose.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Modified: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/styles/base-desktop.xss
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/styles/base-desktop.xss?rev=813518&r1=813517&r2=813518&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/styles/base-desktop.xss (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/styles/base-desktop.xss Thu Sep 10 17:16:27 2009
@@ -708,6 +708,28 @@
     <property name="height">13px</property>
     <property name="width">13px</property>
   </style>
+  
+  <style selector="af|dialog::disclose-icon">
+    <includeStyle name="AFDefaultFont"/>
+    <includeStyle name="AFMediumFont"/>
+    <property name="margin-left">5px</property>
+    <property name="background-image">url('/adf/images/disclose.gif')</property>
+    <property name="background-position">center</property>
+    <property name="background-repeat">no-repeat</property>
+    <property name="height">13px</property>
+    <property name="width">13px</property>
+  </style>
+  
+  <style selector="af|dialog::undisclose-icon">
+    <includeStyle name="AFDefaultFont"/>
+    <includeStyle name="AFMediumFont"/>
+    <property name="margin-left">5px</property>
+    <property name="background-image">url('/adf/images/undisclose.gif')</property>
+    <property name="background-position">center</property>
+    <property name="background-repeat">no-repeat</property>
+    <property name="height">13px</property>
+    <property name="width">13px</property>
+  </style>
 
   <style selector="af|dialog::content">
     <includeStyle name="AFLightAccentBackground"/>