]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - man/form_driver.3x
ncurses 5.7 - patch 20101002
[ncurses.git] / man / form_driver.3x
index 85b1df8277d6b15eb63282e8d541c675349c554a..1325ecd9372f2b664251da83600e7613d1921238 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998-2006,2007 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2008,2010 Free Software Foundation, Inc.              *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
 .\" copy of this software and associated documentation files (the            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_driver.3x,v 1.15 2007/06/02 22:56:49 tom Exp $
+.\" $Id: form_driver.3x,v 1.21 2010/10/02 23:39:22 tom Exp $
 .TH form_driver 3X ""
+.de bP
+.IP \(bu 4
+..
 .SH NAME
-\fBform_driver\fR - command-processing loop of the form system
+\fBform_driver\fR \- command-processing loop of the form system
 .SH SYNOPSIS
 \fB#include <form.h>\fR
 .br
@@ -37,8 +40,18 @@ int form_driver(FORM *form, int c);
 .br
 .SH DESCRIPTION
 Once a form has been posted (displayed), you should funnel input events to it
-through \fBform_driver\fR.  This routine has two major input cases; either
-the input is a form navigation request or it is a printable ASCII character.
+through \fBform_driver\fR.  This routine has three major input cases:
+.bP
+The input is a form navigation request.
+Navigation request codes are constants defined in \fB<form.h>\fP,
+which are distinct from the key- and character codes returned by \fBwgetch\fP.
+.bP
+The input is a printable character.
+Printable characters (which must be positive, less than 256) are
+checked according to the program's locale settings.
+.bP
+The input is the KEY_MOUSE special key associated with an mouse event.
+.PP
 The form driver requests are as follows:
 .TP 5
 REQ_NEXT_PAGE
@@ -218,18 +231,18 @@ Display next field choice.
 REQ_PREV_CHOICE
 Display previous field choice.
 .PP
-If the second argument is a printable ASCII character, the driver places it
+If the second argument is a printable character, the driver places it
 in the current position in the current field.  If it is one of the forms
 requests listed above, that request is executed.
 .SS MOUSE HANDLING
 .PP
 If the second argument is the KEY_MOUSE special key, the associated
 mouse event is translated into one of the above pre-defined requests.
-Currently only clicks in the user window (e.g. inside the form display
+Currently only clicks in the user window (e.g., inside the form display
 area or the decoration window) are handled.
 .PP
 If you click above the display region of the form:
-.RS
+.RS 3
 .TP
 a REQ_PREV_FIELD is generated for a single click,
 .TP
@@ -239,7 +252,7 @@ a REQ_FIRST_FIELD is generated for a triple-click.
 .RE
 .PP
 If you click below the display region of the form:
-.RS
+.RS 3
 .TP
 a REQ_NEXT_FIELD is generated for a single click,
 .TP
@@ -249,12 +262,10 @@ a REQ_LAST_FIELD is generated for a triple-click.
 .RE
 .PP
 If you click at an field inside the display area of the form:
-.RS
-.TP 3
--
+.RS 3
+.bP
 the form cursor is positioned to that field.
-.TP 3
--
+.bP
 If you double-click a field,
 the form cursor is positioned to that field
 and \fBE_UNKNOWN_COMMAND\fR is returned.
@@ -263,17 +274,16 @@ because a double click usually means that an field-specific action should
 be returned.
 It is exactly the purpose of this return value to signal that an
 application specific command should be executed.
-.TP 3
--
+.bP
 If a translation
 into a request was done, \fBform_driver\fR returns the result of this request.
 .RE
 .PP
-If you clicked outside the user window or the mouse event couldn't be translated
+If you clicked outside the user window or the mouse event could not be translated
 into a form request an \fBE_REQUEST_DENIED\fR is returned.
 .SS APPLICATION-DEFINED COMMANDS
 .PP
-If the second argument is neither printable ASCII nor one of the above
+If the second argument is neither printable nor one of the above
 pre-defined form requests, the driver assumes it is an application-specific
 command and returns \fBE_UNKNOWN_COMMAND\fR.  Application-defined commands
 should be defined relative to \fBMAX_COMMAND\fR, the maximum value of these
@@ -306,7 +316,10 @@ System error occurred (see \fBerrno\fR).
 The form driver code saw an unknown request code.
 .
 .SH SEE ALSO
-\fBcurses\fR(3X), \fBform\fR(3X).
+\fBcurses\fR(3X),
+\fBform\fR(3X),
+\fBform_variables\fR(3X),
+\fBgetch\fR(3X).
 .SH NOTES
 The header file \fB<form.h>\fR automatically includes the header files
 \fB<curses.h>\fR.