This is the mail archive of the insight@sources.redhat.com mailing list for the Insight project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [RFA] Address, line number and download progress.


On Fri, 2 Nov 2001, Fernando Nasser wrote:

> I am aware of the risks of accepting the patch without the cleanup. But Ian
> has done a lot lately and this is sort of his last batch of UI changes, I
> wouldn't like to leave a bit of it out.
>
> Unless Ian thinks he can do this bit more and create the GDBStatusBar
> class...
> Can you Ian?

I thought as much, too, which is why I asked. :v)

Ian, if you don't have the time (and I am pretty certain you don't right
now), please check in your changes.

FWIW, here's your patches against current sources.
Keith

Index: library/srcwin.itb
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/library/srcwin.itb,v
retrieving revision 1.17
diff -u -p -r1.17 srcwin.itb
--- library/srcwin.itb	2001/10/04 15:01:36	1.17
+++ library/srcwin.itb	2001/11/02 16:57:12
@@ -112,17 +112,13 @@ body SrcWin::_build_win {} {
   $_statbar.mode list insert end SRC+ASM


-  # Search/download progress frame
+  # Search
   frame $_statbar.frame
   entry $_statbar.frame.search -bd 3 -font src-font -width 10
   bind_plain_key $_statbar.frame.search \
     Return [code $this _search forwards]
   bind_plain_key $_statbar.frame.search \
     Shift-Return [code $this _search backwards]
-  canvas $_statbar.frame.progress -relief sunken -borderwidth 2 \
-    -highlightthickness 0 -takefocus 0 -width 100 -height 0 -confine 1
-  $_statbar.frame.progress create rectangle 0 0 0 \
-    [winfo height $_statbar.frame.progress] -outline blue -fill blue -tags rect

   pack $_statbar.frame -side right -pady 4 -padx 10 -fill y -expand 1 -anchor e
   pack $_statbar.mode -side right -padx 10 -pady 4
@@ -140,8 +136,32 @@ body SrcWin::_build_win {} {

     # add status line
     set _status [conAdd status -resizable 0]
+    set _statusframe [frame $_status]
+    set _status $_statusframe.con
     label $_status -relief sunken -bd 3 -font global/status -height 1
-    pack $_status -expand 1 -fill both
+
+    # add download progress meter
+    canvas $_statusframe.progress -relief sunken -borderwidth 2 \
+      -highlightthickness 0 -takefocus 0 -width 100 -height 0 -confine 1
+    $_statusframe.progress create rectangle 0 0 0 \
+      [winfo height $_statusframe.progress] -outline blue -fill blue -tags rect
+
+    # add address and line number indicators
+    label $_statusframe.addr -text "" -width 10 -relief sunken \
+      -bd 1 -anchor e -font src-font
+    label $_statusframe.line -text "" -width 6 -relief sunken \
+      -bd 1 -anchor e -font src-font
+
+    balloon register $_statusframe.addr "Address"
+    balloon register $_statusframe.line "Line number"
+
+    pack $_statusframe -expand 1 -fill both
+    grid $_status -row 0 -column 1 -sticky news -pady 2 -padx 2
+    grid $_statusframe.addr -row 0 -column 3 -sticky nes -pady 4
+    grid $_statusframe.line -row 0 -column 4 -sticky nws -pady 4
+    grid columnconfigure $_statusframe 1 -weight 10
+    grid columnconfigure $_statusframe 2 -minsize 5
+    grid columnconfigure $_statusframe 5 -minsize 5
   }

   set_execution_status
@@ -206,8 +226,8 @@ body SrcWin::download_progress { section

   #debug "$section $num $tot $msg"
   if {$last_section_start == 0} {
-    pack forget $_statbar.frame.search
-    pack $_statbar.frame.progress -fill both -expand yes
+    grid forget $_statusframe.addr $_statusframe.line
+    grid $_statusframe.progress -row 0 -column 4 -padx 4 -sticky news
     ::update idletasks
   }

@@ -232,7 +252,7 @@ body SrcWin::download_progress { section
     set_status "Downloading section $section - $num bytes"
   }

-  set canvas $_statbar.frame.progress
+  set canvas $_statusframe.progress
   set height [winfo height $canvas]
   if {$last_done} {
     set width [winfo width $canvas]
@@ -259,8 +279,9 @@ body SrcWin::download_progress { section
     set last_done 0
     set last_section_start 0

-    pack forget $_statbar.frame.progress
-    pack $_statbar.frame.search -fill x -expand yes
+    grid forget $_statusframe.progress
+    grid $_statusframe.addr -row 0 -column 3 -sticky new -pady 4
+    grid $_statusframe.line -row 0 -column 4 -sticky nws -pady 4
     ::update idletasks
   }
 }
@@ -458,7 +479,9 @@ body SrcWin::location {tag linespec} {
   }

   # set address and line widgets
-  $_toolbar configure -address $addr -line $line
+  $_statusframe.addr configure -text $addr
+  $_statusframe.line configure -text $line
+

   # set function combobox
   $_statbar.func entryset $funcname
Index: library/srcwin.ith
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/library/srcwin.ith,v
retrieving revision 1.7
diff -u -p -r1.7 srcwin.ith
--- library/srcwin.ith	2001/06/04 15:49:53	1.7
+++ library/srcwin.ith	2001/11/02 16:57:12
@@ -79,6 +79,7 @@ class SrcWin {
     variable _statbar
     variable _status
     variable _toolbar
+    variable _statusframe
     variable top
     variable twin
     variable current
Index: library/srcbar.itcl
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/library/srcbar.itcl,v
retrieving revision 1.13
diff -u -p -r1.13 srcbar.itcl
--- library/srcbar.itcl	2001/10/29 21:45:30	1.13
+++ library/srcbar.itcl	2001/11/02 16:57:22
@@ -534,12 +534,6 @@ class SrcBar {
       $Tool add separator
     }

-    $Tool add label addr $address "Address" -relief sunken \
-                           -bd 1 -anchor e -font  src-font
-
-    $Tool add label line $line "Line Number" -width 6 -relief sunken \
-                           -bd 1 -anchor e -font  src-font
-
     $Tool toolbar_button_right_justify

     create_stack_buttons
@@ -1165,23 +1159,6 @@ Do you want to continue?" \
   public variable updatevalue 0 {
     global GDBSrcBar_state
     ::set GDBSrcBar_state($this) $updatevalue
-  }
-
-  # This holds the text that is shown in the address label.
-  public variable address {} {
-    if {[string length $address] > 10} {
-      # 64-bit address plus "0x"
-      set width 18
-    } else {
-      # 32-bit address plus "0x"
-      set width 10
-    }
-    $Tool itemconfigure addr -text $address -font src-font -width $width
-  }
-
-  # This holds the text that is shown in the line label.
-  public variable line {} {
-    $Tool itemconfigure line -text $line
   }

   # This holds the source window's display mode.  Valid values are


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]