Author: engelsman
Date: 2009-03-14 04:46:43 -0700 (Sat, 14 Mar 2009)
New Revision: 6683
Log:
updated Fl_Slider and Fl_Scrollbar documentation (STR #2156 - part 2)

converted html tags to doxygen
rationalised doxygen comments
renamed Fl_Slider::scrollvalue() and Fl_Scrollbar::value() parameters



Modified:
   branches/branch-1.3/FL/Fl_Scrollbar.H
   branches/branch-1.3/FL/Fl_Slider.H
   branches/branch-1.3/src/Fl_Scrollbar.cxx
   branches/branch-1.3/src/Fl_Slider.cxx

Modified: branches/branch-1.3/FL/Fl_Scrollbar.H
===================================================================
--- branches/branch-1.3/FL/Fl_Scrollbar.H       2009-03-14 10:23:05 UTC (rev 
6682)
+++ branches/branch-1.3/FL/Fl_Scrollbar.H       2009-03-14 11:46:43 UTC (rev 
6683)
@@ -34,18 +34,20 @@
 #include "Fl_Slider.H"
 
 /**
-  The Fl_Scrollbar widget displays a slider with arrow buttons
-  at the ends of the scrollbar. Clicking on the arrows move up/left and
-  down/right by linesize().  Scrollbars also accept 
-  FL_SHORTCUT events: the arrows move by linesize(), and
-  vertical scrollbars take Page Up/Down (they move by the page size minus 
-  linesize()) and Home/End (they jump to the top or bottom).
-  <P>Scrollbars have step(1) preset (they always return
-  integers). If desired you can set the step() to non-integer
-  values.  You will then have to use casts to get at the floating-point
-  versions of value() from Fl_Slider. </P>
-  <P ALIGN=CENTER>\image html scrollbar.gif 
-  \image latex  scrollbar.eps "Fl_Scrollbar" width=4cm
+  The Fl_Scrollbar widget displays a slider with arrow buttons at
+  the ends of the scrollbar. Clicking on the arrows move up/left and
+  down/right by linesize(). Scrollbars also accept FL_SHORTCUT events:
+  the arrows move by linesize(), and vertical scrollbars take Page
+  Up/Down (they move by the page size minus linesize()) and Home/End
+  (they jump to the top or bottom).
+
+  Scrollbars have step(1) preset (they always return integers). If
+  desired you can set the step() to non-integer values. You will then
+  have to use casts to get at the floating-point versions of value()
+  from Fl_Slider.
+
+  \image html  scrollbar.gif 
+  \image latex scrollbar.eps "Fl_Scrollbar" width=4cm
 */
 class FL_EXPORT Fl_Scrollbar : public Fl_Slider {
 
@@ -58,30 +60,32 @@
 
 public:
 
-  Fl_Scrollbar(int x,int y,int w,int h, const char *l = 0);
+  Fl_Scrollbar(int X,int Y,int W,int H, const char *L = 0);
   ~Fl_Scrollbar();
   int handle(int);
 
   /**
     Gets the integer value (position) of the slider in the scrollbar.
     You can get the floating point value with Fl_Slider::value().
+
     \see Fl_Scrollbar::value(int p)
-    \see Fl_Scrollbar::value(int p, int s, int top, int total)
+    \see Fl_Scrollbar::value(int pos, int size, int first, int total)
   */
   int value() const {return int(Fl_Slider::value());}
 
   /**
     Sets the value (position) of the slider in the scrollbar.
+
     \see Fl_Scrollbar::value()
-    \see Fl_Scrollbar::value(int p, int s, int top, int total)
+    \see Fl_Scrollbar::value(int pos, int size, int first, int total)
   */
   int value(int p) {return int(Fl_Slider::value((double)p));}
 
   /**
     Sets the position, size and range of the slider in the scrollbar.
-    \param[in] p     position, first line displayed
-    \param[in] s     window size, number of lines displayed
-    \param[in] top   number of first line
+    \param[in] pos   position, first line displayed
+    \param[in] size  window size, number of lines displayed
+    \param[in] first number of first line
     \param[in] total total number of lines
 
     You should call this every time your window changes size, your data
@@ -89,21 +93,20 @@
     to a callback from this scrollbar).
     All necessary calls to redraw() are done.
 
-    Calls Fl_Slider::scrollvalue(int p, int s, int top, int total).
+    Calls Fl_Slider::scrollvalue(int pos, int size, int first, int total).
   */
-  int value(int p, int s, int top, int total) {
-    return scrollvalue(p, s, top, total);
+  int value(int pos, int size, int first, int total) {
+    return scrollvalue(pos, size, first, total);
   }
 
   /**
-    This number controls how big the steps are that the arrow keys do.  In
-    addition page up/down move by the size last sent to value()
-    minus one linesize().  The default is 16.
+    Get the size of step, in lines, that the arror keys move.
   */
   int linesize() const {return linesize_;}
+
   /**
-    This number controls how big the steps are that the arrow keys do.  In
-    addition page up/down move by the size last sent to value()
+    This number controls how big the steps are that the arrow keys do.
+    In addition page up/down move by the size last sent to value()
     minus one linesize().  The default is 16.
   */
   void linesize(int i) {linesize_ = i;}

Modified: branches/branch-1.3/FL/Fl_Slider.H
===================================================================
--- branches/branch-1.3/FL/Fl_Slider.H  2009-03-14 10:23:05 UTC (rev 6682)
+++ branches/branch-1.3/FL/Fl_Slider.H  2009-03-14 11:46:43 UTC (rev 6683)
@@ -44,29 +44,28 @@
 #define FL_HOR_NICE_SLIDER     5
 
 /**
-  The Fl_Slider widget contains a sliding knob inside a box. It
-  if often used as a scrollbar.  Moving the box all the way to the
-  top/left sets it to the minimum(), and to the bottom/right to
-  the maximum().  The minimum() may be greater than the 
-  maximum() to reverse the slider direction.
+  The Fl_Slider widget contains a sliding knob inside a box. It if
+  often used as a scrollbar.  Moving the box all the way to the
+  top/left sets it to the minimum(), and to the bottom/right to the
+  maximum().  The minimum() may be greater than the maximum() to
+  reverse the slider direction.
 
-  <P>Use void Fl_Widget::type(int) to set how the slider is drawn, 
+  Use void Fl_Widget::type(int) to set how the slider is drawn, 
   which can be one of the following:
-  <UL>
-  <LI>FL_VERTICAL - Draws a vertical slider (this is the
-  default). </LI>
-  <LI>FL_HORIZONTAL - Draws a horizontal slider. </LI>
-  <LI>FL_VERT_FILL_SLIDER - Draws a filled vertical  slider,
-  useful as a progress or value meter. </LI>
-  <LI>FL_HOR_FILL_SLIDER - Draws a filled horizontal  slider,
-  useful as a progress or value meter. </LI>
-  <LI>FL_VERT_NICE_SLIDER - Draws a vertical slider with  a nice
-  looking control knob. </LI>
-  <LI>FL_HOR_NICE_SLIDER - Draws a horizontal slider with  a
-  nice looking control knob. </LI>
-  </UL>
-  <P ALIGN=CENTER>\image html slider.gif 
-  \image latex  slider.eps "Fl_Slider" width=4cm
+  
+  \li FL_VERTICAL - Draws a vertical slider (this is the default).
+  \li FL_HORIZONTAL - Draws a horizontal slider.
+  \li FL_VERT_FILL_SLIDER - Draws a filled vertical slider,
+      useful as a progress or value meter.
+  \li FL_HOR_FILL_SLIDER - Draws a filled horizontal  slider,
+      useful as a progress or value meter.
+  \li FL_VERT_NICE_SLIDER - Draws a vertical slider with  a nice
+      looking control knob.
+  \li FL_HOR_NICE_SLIDER - Draws a horizontal slider with  a
+      nice looking control knob.
+
+  \image html  slider.gif 
+  \image latex slider.eps "Fl_Slider" width=4cm
 */
 class FL_EXPORT Fl_Slider : public Fl_Valuator {
 
@@ -85,24 +84,31 @@
 public:
 
   int handle(int);
-  Fl_Slider(int x,int y,int w,int h, const char *l = 0);
-  Fl_Slider(uchar t,int x,int y,int w,int h, const char *l);
+  Fl_Slider(int X,int Y,int W,int H, const char *L = 0);
+  Fl_Slider(uchar t,int X,int Y,int W,int H, const char *L);
 
-  int scrollvalue(int windowtop,int windowsize,int first,int totalsize);
+  int scrollvalue(int pos,int size,int first,int total);
   void bounds(double a, double b);
+
   /**
-    Get or set the dimensions of the moving piece of slider.  This is the
-    fraction of the size of the entire widget.  If you set this to 1 then
-    the slider cannot move.  The default value is .08.
-    <P>For the "fill" sliders this is the size of the area around the end
-    that causes a drag effect rather than causing the slider to jump to the
-    mouse.
+    Get the dimensions of the moving piece of slider.
   */
   float slider_size() const {return slider_size_;}
-  /** See float slider_size() const  */
+
+  /**
+    Set the dimensions of the moving piece of slider. This is
+    the fraction of the size of the entire widget. If you set this
+    to 1 then the slider cannot move.  The default value is .08.
+
+    For the "fill" sliders this is the size of the area around the
+    end that causes a drag effect rather than causing the slider to
+    jump to the mouse.
+  */
   void slider_size(double v);
+
   /** Gets the slider box type. */
   Fl_Boxtype slider() const {return (Fl_Boxtype)slider_;}
+
   /** Sets the slider box type. */
   void slider(Fl_Boxtype c) {slider_ = c;}
 };

Modified: branches/branch-1.3/src/Fl_Scrollbar.cxx
===================================================================
--- branches/branch-1.3/src/Fl_Scrollbar.cxx    2009-03-14 10:23:05 UTC (rev 
6682)
+++ branches/branch-1.3/src/Fl_Scrollbar.cxx    2009-03-14 11:46:43 UTC (rev 
6683)
@@ -256,9 +256,8 @@
 }
 
 /**
-  Creates a new Fl_Scrollbar widget using the given position,
-  size, and label string.  You need to do type(FL_HORIZONTAL) if
-  you want a horizontal scrollbar.
+  Creates a new Fl_Scrollbar widget with given position, size, and label.
+  You need to do type(FL_HORIZONTAL) if you want a horizontal scrollbar.
 */
 Fl_Scrollbar::Fl_Scrollbar(int X, int Y, int W, int H, const char* L)
   : Fl_Slider(X, Y, W, H, L) {

Modified: branches/branch-1.3/src/Fl_Slider.cxx
===================================================================
--- branches/branch-1.3/src/Fl_Slider.cxx       2009-03-14 10:23:05 UTC (rev 
6682)
+++ branches/branch-1.3/src/Fl_Slider.cxx       2009-03-14 11:46:43 UTC (rev 
6683)
@@ -40,25 +40,24 @@
   Creates a new Fl_Slider widget using the given position,
   size, and label string. The default boxtype is FL_DOWN_BOX.
 */
-Fl_Slider::Fl_Slider(int X, int Y, int W, int H, const char* l)
-: Fl_Valuator(X, Y, W, H, l) {
+Fl_Slider::Fl_Slider(int X, int Y, int W, int H, const char* L)
+: Fl_Valuator(X, Y, W, H, L) {
   box(FL_DOWN_BOX);
   _Fl_Slider();
 }
 
 /**
-  Creates a new Fl_Slider widget using the given position,
-  size, and label string. The default boxtype is FL_DOWN_BOX.
+  Creates a new Fl_Slider widget using the given box type, position,
+  size, and label string.
 */
-Fl_Slider::Fl_Slider(uchar t, int X, int Y, int W, int H, const char* l)
-  : Fl_Valuator(X, Y, W, H, l) {
+Fl_Slider::Fl_Slider(uchar t, int X, int Y, int W, int H, const char* L)
+  : Fl_Valuator(X, Y, W, H, L) {
   type(t);
   box(t==FL_HOR_NICE_SLIDER || t==FL_VERT_NICE_SLIDER ?
       FL_FLAT_BOX : FL_DOWN_BOX);
   _Fl_Slider();
 }
 
-/** See float Fl_Slider::slider_size() const */
 void Fl_Slider::slider_size(double v) {
   if (v <  0) v = 0;
   if (v > 1) v = 1;
@@ -81,18 +80,18 @@
 
 /**
   Sets the size and position of the sliding knob in the box.
-  \param[in] p position, first line displayed
-  \param[in] W window, number of lines displayed
-  \param[in] t top, number of first line
-  \param[in] l length, total number of lines
+  \param[in] pos position of first line displayed
+  \param[in] size size of window in lines
+  \param[in] first number of first line
+  \param[in] total total number of lines
   Returns Fl_Valuator::value(p)
  */
-int Fl_Slider::scrollvalue(int p, int W, int t, int l) {
+int Fl_Slider::scrollvalue(int pos, int size, int first, int total) {
   step(1, 1);
-  if (p+W > t+l) l = p+W-t;
-  slider_size(W >= l ? 1.0 : double(W)/double(l));
-  bounds(t, l-W+t);
-  return value(p);
+  if (pos+size > first+total) total = pos+size-first;
+  slider_size(size >= total ? 1.0 : double(size)/double(total));
+  bounds(first, total-size+first);
+  return value(pos);
 }
 
 // All slider interaction is done as though the slider ranges from

_______________________________________________
fltk-commit mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-commit

Reply via email to