git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14970 268f45cc-cd09-0410...
authorkdecker <kdecker@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 22 Jun 2006 15:01:31 +0000 (15:01 +0000)
committerkdecker <kdecker@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 22 Jun 2006 15:01:31 +0000 (15:01 +0000)
WebKitTools/ChangeLog
WebKitTools/Drosera/Drosera.xcodeproj/project.pbxproj
WebKitTools/Drosera/Images/SourceArrow.png [new file with mode: 0644]
WebKitTools/Drosera/Images/SourceArrowBlank.png [new file with mode: 0644]
WebKitTools/Drosera/Images/background_stripe.png [new file with mode: 0644]
WebKitTools/Drosera/Images/verticalSplitterBar.tiff [new file with mode: 0644]
WebKitTools/Drosera/Images/verticalSplitterDimple.tiff [new file with mode: 0644]
WebKitTools/Drosera/debugger.css
WebKitTools/Drosera/debugger.html
WebKitTools/Drosera/debugger.js

index 4d97ead1a6b0c3a781667adb48c6b1170d94c3e4..c5361e4797bc70b80528393a906c5b9e3d0ab95a 100644 (file)
@@ -1,3 +1,10 @@
+2006-06-22  Kevin Decker         <kdecker@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        - More progress toward Javascript Debugger. 
+        - Added some new images to the project. 
+
 2006-06-21  Alexey Proskuryakov  <ap@nypop.com>
 
         Reviewed by Anders.
index 9c8221b1414a4cebfb610da99f6e7d40af1bdd19..1f9820b271f46637be8cf3f83e69ba7867c6c4c7 100644 (file)
@@ -54,7 +54,7 @@
                        isa = PBXContainerItemProxy;
                        containerPortal = 2A37F4A9FDCFA73011CA2CEA /* Project object */;
                        proxyType = 1;
-                       remoteGlobalIDString = 8D15AC270486D014006FF6A4 /* Drosera */;
+                       remoteGlobalIDString = 8D15AC270486D014006FF6A4;
                        remoteInfo = Drosera;
                };
 /* End PBXContainerItemProxy section */
diff --git a/WebKitTools/Drosera/Images/SourceArrow.png b/WebKitTools/Drosera/Images/SourceArrow.png
new file mode 100644 (file)
index 0000000..f493903
Binary files /dev/null and b/WebKitTools/Drosera/Images/SourceArrow.png differ
diff --git a/WebKitTools/Drosera/Images/SourceArrowBlank.png b/WebKitTools/Drosera/Images/SourceArrowBlank.png
new file mode 100644 (file)
index 0000000..d178ac0
Binary files /dev/null and b/WebKitTools/Drosera/Images/SourceArrowBlank.png differ
diff --git a/WebKitTools/Drosera/Images/background_stripe.png b/WebKitTools/Drosera/Images/background_stripe.png
new file mode 100644 (file)
index 0000000..d9ddebc
Binary files /dev/null and b/WebKitTools/Drosera/Images/background_stripe.png differ
diff --git a/WebKitTools/Drosera/Images/verticalSplitterBar.tiff b/WebKitTools/Drosera/Images/verticalSplitterBar.tiff
new file mode 100644 (file)
index 0000000..4810d01
Binary files /dev/null and b/WebKitTools/Drosera/Images/verticalSplitterBar.tiff differ
diff --git a/WebKitTools/Drosera/Images/verticalSplitterDimple.tiff b/WebKitTools/Drosera/Images/verticalSplitterDimple.tiff
new file mode 100644 (file)
index 0000000..fee927b
Binary files /dev/null and b/WebKitTools/Drosera/Images/verticalSplitterDimple.tiff differ
index 1b7f8596c23e4d042d68d25fe318d6cb2d3712fb..b915ff85b48934b43b42514b738c9a3b9f25459c 100644 (file)
@@ -41,6 +41,7 @@ body { margin: 0; padding: 0; }
 #header { vertical-align: top; height: 16px; box-sizing: border-box; border-bottom: 1px solid #aaa; background: url(glossyHeader.png) repeat-x; position: absolute; top: 0; left: 0; right: 0; }
 #header > * { vertical-align: top; }
 #footer { height: 21px; box-sizing: border-box; border-top: 1px solid #aaa; background: url(glossyFooterFill.tif) repeat-x; position: absolute; bottom: 0; left: 0; right: 0; }
+#infoDivider { position:absolute; right:0; left:0; top:0; bottom:0; width:10px; cursor: move; background: url(verticalSplitterDimple.tiff) 50% no-repeat, url(verticalSplitterBar.tiff) repeat-y; width: 10px; }
 
 #files {
     opacity: 0;
@@ -120,3 +121,82 @@ button.nav.left:active {
     border-left: 1px solid rgba(0, 0, 0, 0.3);
     background: url(navLeftPressed.png) no-repeat;
 }
+
+#leftPane {
+ position:absolute;
+ overflow:scroll;
+ top:0;
+ bottom:10px;
+ left:0;
+ width:353px;
+ padding:0;
+ margin:0;
+ }
+.infoBackground {
+ background: url(background_stripe.png) repeat;
+ position:absolute;
+ top:16px;
+ bottom:0;
+ right:0;
+ left:0px;
+ padding:0;
+ margin:0;
+ z-index:-1;
+ }
+
+#rightPane {
+ position:absolute;
+ top:0;
+ bottom:0;
+ right:0;
+ left:353px;
+ padding:0;
+ margin:0;
+ }
+
+#variables {
+ overflow:scroll;
+ position:absolute;
+ top:0;
+ bottom:10px;
+ right:0;
+ left:10px;
+ padding:0;
+ margin:0;
+ }
+
+td {
+ font-family: "lucida grande";
+ font-size: 8pt;
+ padding: 3px 8px;
+ border-left: 1px solid #d9d9d9;
+}
+
+.multivariable {
+list-style-image:url(SourceArrow.png);
+}
+
+#variablesTable
+{
+width:100%;
+}
+
+.column th {
+ background: url(glossyHeader.png) repeat-x;
+ border-right: 1px solid #d9d9d9;
+ height: 16px; 
+ box-sizing: border-box; 
+ border-bottom: 1px solid #aaa;
+ font-family: "lucida grande";
+ font-size: 8pt;
+ font-weight:normal;
+ vertical-align:middle;
+ padding:0 8px;
+ text-align:left;
+}
+
+li {
+list-style-image:url(SourceArrow.png);
+}
+
index aad3c540cc652fab139af3663b27dcdb6beb480b..d2c55d1ac2050739c090b4d29492426f2bb9f630 100644 (file)
@@ -41,7 +41,20 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 </div>
 <div id="main">
 <div id="info">
-<div id="console"></div>
+<div id="console">
+<div id="leftPane">
+<div class="infoBackground"></div>
+</div>
+<div id="rightPane">
+<div id="infoDivider"></div>
+<div id="variables">
+<div class="infoBackground"></div>
+<table id="variablesTable">
+<tr class="column"><th>Variable</th><th>Value</th></tr>
+</table>
+</div>
+</div>
+</div>
 <div id="divider"></div>
 </div>
 <div id="body">
index 38af2b9424c1404595a1eced2e6c7674b2ebae9c..da774d3e115d7694981f5d65f106b515c85dc20b 100644 (file)
@@ -48,15 +48,56 @@ function keyPressed(event) {
     else if (event.charCode == 115) step();
 }
 
-function dividerDragStart(event) {
-    var element = document.getElementById("divider");
+function dividerDragStart(element, dividerDrag, dividerDragEnd, event) {
     element.dragging = true;
-    element.dragLastY = event.clientY + window.scrollY;
+    element.dragLastX = event.clientX + window.scrollX;
     document.addEventListener("mousemove", dividerDrag, true);
     document.addEventListener("mouseup", dividerDragEnd, true);
     event.preventDefault();
 }
 
+function sourceDividerDragStart(event) {
+    dividerDragStart(document.getElementById("divider"), dividerDrag, sourceDividerDragEnd, event);
+}
+
+function infoDividerDragStart(event) {
+    dividerDragStart(document.getElementById("infoDivider"), infoDividerDrag, infoDividerDragEnd, event);
+}
+
+function infoDividerDragEnd(event) {
+    dividerDragEnd(document.getElementById("infoDivider"), infoDividerDrag, infoDividerDragEnd);
+}
+
+function sourceDividerDragEnd(event) {
+    dividerDragEnd(document.getElementById("divider"), dividerDrag, sourceDividerDragEnd);
+}
+
+function dividerDragEnd(element, dividerDrag, dividerDragEnd, event) {
+    element.dragging = false;
+    document.removeEventListener("mousemove", dividerDrag, true);
+    document.removeEventListener("mouseup", dividerDragEnd, true);
+}
+
+function infoDividerDrag(event) {
+    var element = document.getElementById("infoDivider");
+    if (document.getElementById("infoDivider").dragging == true) {
+      var main = document.getElementById("main");
+      var leftPane = document.getElementById("leftPane");
+      var rightPane = document.getElementById("rightPane");
+      var x = event.clientX + window.scrollX;
+       
+      if (x < main.clientWidth * 0.25)
+        x = main.clientWidth * 0.25;
+        else if (x > main.clientWidth * 0.75)
+         x = main.clientWidth * 0.75;
+
+        leftPane.style.width = x + "px";
+        rightPane.style.left = x + "px";
+        element.dragLastX = x;
+        event.preventDefault();
+    }
+}
+
 function dividerDrag(event) {
     var element = document.getElementById("divider");
     if (document.getElementById("divider").dragging == true) {
@@ -80,16 +121,10 @@ function dividerDrag(event) {
     }
 }
 
-function dividerDragEnd(event) {
-    var element = document.getElementById("divider");
-    element.dragging = false;
-    document.removeEventListener("mousemove", dividerDrag, true);
-    document.removeEventListener("mouseup", dividerDragEnd, true);
-}
-
 function loaded() {
     window.addEventListener("keypress", keyPressed, false);
-    document.getElementById("divider").addEventListener("mousedown", dividerDragStart, false);
+    document.getElementById("divider").addEventListener("mousedown", sourceDividerDragStart, false);
+    document.getElementById("infoDivider").addEventListener("mousedown", infoDividerDragStart, false);
 }
 
 function isPaused() {