Added documentation for all forms of Fl_Widget::damage() (STR

#61)

Fl_Double_Window now has a type() value of FL_DOUBLE_WINDOW, to
allow double-buffered windows to process redraws properly on
WIN32 (STR #46)

Added FL_DAMAGE_USER1 and FL_DAMAGE_USER2 damage bits for use by
widget developers (STR #57)

Fl_Help_View didn't support numeric character entities (STR #66)

Menu shortcuts didn't use the Mac key names under MacOS X (STR
#71)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3026 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Michael R Sweet 2003-06-12 01:36:18 +00:00
parent dd6c9535ef
commit f438ffa087
10 changed files with 58 additions and 35 deletions

18
CHANGES
View File

@ -1,11 +1,23 @@
CHANGES IN FLTK 1.1.4
- CodeWarrior Mac OS X updated to work with current CW8.3
- Added documentation for all forms of
Fl_Widget::damage() (STR #61)
- Fl_Double_Window now has a type() value of
FL_DOUBLE_WINDOW, to allow double-buffered windows to
process redraws properly on WIN32 (STR #46)
- Added FL_DAMAGE_USER1 and FL_DAMAGE_USER2 damage bits
for use by widget developers (STR #57)
- Fl_Help_View didn't support numeric character entities
(STR #66)
- Menu shortcuts didn't use the Mac key names under
MacOS X (STR #71)
- CodeWarrior Mac OS X updated to work with current
CW8.3 (STR #34)
- Apple-C/X/V/Z didn't work in the Fl_Input widget due
to a bad mapping to control keys (STR #pending)
to a bad mapping to control keys (STR #79)
- Added the OSX-specific fl_open_callback() function to
handle Open Documents messages from the Finder (STR
#pending)
#80)
- The configure script contained erroneous whitespace in
various tests which caused errors on some platforms
(STR #60)

View File

@ -1,5 +1,5 @@
//
// "$Id: Enumerations.H,v 1.18.2.14.2.34 2003/05/18 22:12:19 easysw Exp $"
// "$Id: Enumerations.H,v 1.18.2.14.2.35 2003/06/12 01:36:15 easysw Exp $"
//
// Enumerations for the Fast Light Tool Kit (FLTK).
//
@ -403,6 +403,8 @@ enum Fl_Damage {
FL_DAMAGE_EXPOSE = 0x02,
FL_DAMAGE_SCROLL = 0x04,
FL_DAMAGE_OVERLAY = 0x08,
FL_DAMAGE_USER1 = 0x10,
FL_DAMAGE_USER2 = 0x20,
FL_DAMAGE_ALL = 0x80
};
@ -417,5 +419,5 @@ enum Fl_Damage {
#endif
//
// End of "$Id: Enumerations.H,v 1.18.2.14.2.34 2003/05/18 22:12:19 easysw Exp $".
// End of "$Id: Enumerations.H,v 1.18.2.14.2.35 2003/06/12 01:36:15 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_Double_Window.H,v 1.7.2.3.2.4 2003/01/30 21:38:57 easysw Exp $"
// "$Id: Fl_Double_Window.H,v 1.7.2.3.2.5 2003/06/12 01:36:16 easysw Exp $"
//
// Double-buffered window header file for the Fast Light Tool Kit (FLTK).
//
@ -40,13 +40,13 @@ public:
void hide();
~Fl_Double_Window();
Fl_Double_Window(int W, int H, const char *l = 0)
: Fl_Window(W,H,l), force_doublebuffering_(0) {}
: Fl_Window(W,H,l), force_doublebuffering_(0) { type(FL_DOUBLE_WINDOW); }
Fl_Double_Window(int X, int Y, int W, int H, const char *l = 0)
: Fl_Window(X,Y,W,H,l), force_doublebuffering_(0) {}
: Fl_Window(X,Y,W,H,l), force_doublebuffering_(0) { type(FL_DOUBLE_WINDOW); }
};
#endif
//
// End of "$Id: Fl_Double_Window.H,v 1.7.2.3.2.4 2003/01/30 21:38:57 easysw Exp $".
// End of "$Id: Fl_Double_Window.H,v 1.7.2.3.2.5 2003/06/12 01:36:16 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_Window.H,v 1.12.2.6.2.6 2003/01/30 21:40:37 easysw Exp $"
// "$Id: Fl_Window.H,v 1.12.2.6.2.7 2003/06/12 01:36:16 easysw Exp $"
//
// Window header file for the Fast Light Tool Kit (FLTK).
//
@ -29,6 +29,7 @@
#include "Fl_Group.H"
#define FL_WINDOW 0xF0 // all subclasses have type() >= this
#define FL_DOUBLE_WINDOW 0xF1
class Fl_X;
@ -123,5 +124,5 @@ public:
#endif
//
// End of "$Id: Fl_Window.H,v 1.12.2.6.2.6 2003/01/30 21:40:37 easysw Exp $".
// End of "$Id: Fl_Window.H,v 1.12.2.6.2.7 2003/06/12 01:36:16 easysw Exp $".
//

View File

@ -258,13 +258,17 @@ method for more information.
equal to this widget. Returns 0 if <TT>b</TT> is <TT>NULL</TT>.
<H4><A name=Fl_Widget.damage>uchar Fl_Widget::damage() const</A></H4>
<H4><A name=Fl_Widget.damage>uchar Fl_Widget::damage() const<BR>
void damage(uchar c);<BR>
void damage(uchar c, int X, int Y, int W, int H);</A></H4>
<P>Non-zero if <A
<P>The first version returns non-zero if <A
HREF="subclassing.html#draw"><TT>draw()</TT></A> needs to be
called. The damage value is actually a bit field that the widget
subclass can use to figure out what parts to draw.
<P>The last two forms set the damage bits for the widget; the
last form damages the widget within the specified bounding box.
<H4><A name=Fl_Widget.default_callback>static void
Fl_Widget::default_callback(Fl_Widget*, void*)</A></H4>

View File

@ -295,6 +295,8 @@ cursors.</P>
<LI><TT>FL_DAMAGE_SCROLL</TT> - The <TT>Fl_Scroll</TT> widget was
scrolled. </LI>
<LI><TT>FL_DAMAGE_OVERLAY</TT> - The overlay planes need to be redrawn. </LI>
<LI><TT>FL_DAMAGE_USER1</TT> - First user-defined damage bit. </LI>
<LI><TT>FL_DAMAGE_USER2</TT> - Second user-defined damage bit. </LI>
<LI><TT>FL_DAMAGE_ALL</TT> - Everything needs to be redrawn. </LI>
</UL>
</BODY></HTML>

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_Help_View.cxx,v 1.1.2.47 2003/05/21 16:12:14 easysw Exp $"
// "$Id: Fl_Help_View.cxx,v 1.1.2.48 2003/06/12 01:36:17 easysw Exp $"
//
// Fl_Help_View widget routines.
//
@ -2759,9 +2759,11 @@ quote_char(const char *p) { // I - Quoted string
{ "yuml;", 5, 255 }
};
if (isdigit(*p)) return atoi(p);
if (!strchr(p, ';')) return -1;
if (*p == '#') {
if (*(p+1) == 'x' || *(p+1) == 'X') return strtol(p+2, NULL, 16);
else return atoi(p+1);
}
for (i = (int)(sizeof(names) / sizeof(names[0])), nameptr = names; i > 0; i --, nameptr ++)
if (strncmp(p, nameptr->name, nameptr->namelen) == 0)
return nameptr->code;
@ -2793,5 +2795,5 @@ hscrollbar_callback(Fl_Widget *s, void *)
//
// End of "$Id: Fl_Help_View.cxx,v 1.1.2.47 2003/05/21 16:12:14 easysw Exp $".
// End of "$Id: Fl_Help_View.cxx,v 1.1.2.48 2003/06/12 01:36:17 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_Sys_Menu_Bar.cxx,v 1.1.2.6 2003/01/30 21:42:45 easysw Exp $"
// "$Id: Fl_Sys_Menu_Bar.cxx,v 1.1.2.7 2003/06/12 01:36:18 easysw Exp $"
//
// MacOS system menu bar widget for the Fast Light Tool Kit (FLTK).
//
@ -110,11 +110,11 @@ static void catMenuFont( const Fl_Menu_Item *m, char *dst )
* append a marker to identify the menu shortcut
* <B, I, U, O, and S
enum {
ÊÊÊÊkMenuNoModifiersÊÊÊÊÊÊÊÊ= 0,
ÊÊÊÊkMenuShiftModifierÊÊÊÊÊÊ= (1 << 0),
ÊÊÊÊkMenuOptionModifierÊÊÊÊÊ= (1 << 1),
ÊÊÊÊkMenuControlModifierÊÊÊÊ= (1 << 2),
ÊÊÊÊkMenuNoCommandModifierÊÊ= (1 << 3)
kMenuNoModifiers = 0,
kMenuShiftModifier = (1 << 0),
kMenuOptionModifier = (1 << 1),
kMenuControlModifier = (1 << 2),
kMenuNoCommandModifier = (1 << 3)
};
*/
static void setMenuShortcut( MenuHandle mh, int miCnt, const Fl_Menu_Item *m )
@ -316,5 +316,5 @@ int Fl_Menu_Bar::handle(int event) {
*/
//
// End of "$Id: Fl_Sys_Menu_Bar.cxx,v 1.1.2.6 2003/01/30 21:42:45 easysw Exp $".
// End of "$Id: Fl_Sys_Menu_Bar.cxx,v 1.1.2.7 2003/06/12 01:36:18 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_win32.cxx,v 1.33.2.37.2.45 2003/05/20 19:09:33 easysw Exp $"
// "$Id: Fl_win32.cxx,v 1.33.2.37.2.46 2003/06/12 01:36:18 easysw Exp $"
//
// WIN32-specific code for the Fast Light Tool Kit (FLTK).
//
@ -613,7 +613,7 @@ static LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lPar
fl_save_pen();
i->flush();
fl_restore_pen();
if (window->parent()) ValidateRgn(hWnd,0);
if (window->type() == FL_DOUBLE_WINDOW) ValidateRgn(hWnd,0);
else ValidateRgn(hWnd,i->region);
window->clear_damage();
} return 0;
@ -1193,5 +1193,5 @@ void Fl_Window::make_current() {
}
//
// End of "$Id: Fl_win32.cxx,v 1.33.2.37.2.45 2003/05/20 19:09:33 easysw Exp $".
// End of "$Id: Fl_win32.cxx,v 1.33.2.37.2.46 2003/06/12 01:36:18 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: fl_shortcut.cxx,v 1.4.2.9.2.10 2003/05/21 01:50:14 easysw Exp $"
// "$Id: fl_shortcut.cxx,v 1.4.2.9.2.11 2003/06/12 01:36:18 easysw Exp $"
//
// Shortcut support routines for the Fast Light Tool Kit (FLTK).
//
@ -116,12 +116,12 @@ const char * fl_shortcut_label(int shortcut) {
static char buf[20];
char *p = buf;
if (!shortcut) {*p = 0; return buf;}
#ifdef UNUSED__APPLE__UNUSED
#ifdef __APPLE__
// \todo Mac : we might want to change the symbols for Mac users - consider drawing Apple Symbols... .
if (shortcut & FL_SHIFT) {strcpy(p,"shift+"); p += 6;} //: Mac hollow up arrow
if (shortcut & FL_META) {strcpy(p,"ctrl+"); p += 5;} //: Mac 'cotrol'
if (shortcut & FL_ALT) {strcpy(p,"option+"); p += 7;} //: Mac 'Option' or fancy switch symbol
if (shortcut & FL_CTRL) {strcpy(p,"cmd+"); p += 4;} //: Mac Apple or Curlyflour
if (shortcut & FL_SHIFT) {strcpy(p,"Shift+"); p += 6;} //: Mac hollow up arrow
if (shortcut & FL_META) {strcpy(p,"Ctrl+"); p += 5;} //: Mac 'control'
if (shortcut & FL_ALT) {strcpy(p,"Option+"); p += 7;} //: Mac 'Option' or fancy switch symbol
if (shortcut & FL_CTRL) {strcpy(p,"Cmd+"); p += 4;} //: Mac Apple or Curlyflour
#else
if (shortcut & FL_META) {strcpy(p,"Meta+"); p += 5;}
if (shortcut & FL_ALT) {strcpy(p,"Alt+"); p += 4;}
@ -201,5 +201,5 @@ int Fl_Widget::test_shortcut() {
}
//
// End of "$Id: fl_shortcut.cxx,v 1.4.2.9.2.10 2003/05/21 01:50:14 easysw Exp $".
// End of "$Id: fl_shortcut.cxx,v 1.4.2.9.2.11 2003/06/12 01:36:18 easysw Exp $".
//