1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
//
// "$Id: FileInput.cxx,v 1.3 2000/01/04 13:45:51 mike Exp $"
//
// FileInput routines.
//
// Copyright 1997-2000 by Easy Software Products.
//
// These coded instructions, statements, and computer programs are the
// property of Easy Software Products and are protected by Federal
// copyright law. Distribution and use rights are outlined in the file
// "COPYING" which should have been included with this file. If this
// file is missing or damaged please contact Easy Software Products
// at:
//
// Attn: ESP Licensing Information
// Easy Software Products
// 44141 Airport View Drive, Suite 204
// Hollywood, Maryland 20636-3111 USA
//
// Voice: (301) 373-9600
// EMail: info@easysw.com
// WWW: http://www.easysw.com
//
// Contents:
//
// FileInput::handle() - Handle tab events.
//
//
// Include necessary header files...
//
#include <FL/Fl.H>
#include "FileInput.h"
//
// Note: This has got to be a runner for the world's shortest class.
// Basically the whole purpose of this subclass is to alter the
// behavior of the Tab key; specifically if the user hits the
// Tab key while text is selected, the cursor is moved to the
// end of the selected text rather than doing the navigation
// thing.
//
// This is a likely enhancement to the 2.0 Fl_Input widget...
//
//
// 'FileInput::handle()' - Handle tab events.
//
int // O - 1 if we handled the event
FileInput::handle(int event) // I - Event to handle
{
if (event == FL_KEYBOARD && Fl::event_key() == FL_Tab &&
mark() != position())
{
// Set the current cursor position to the end of the selection...
if (mark() > position())
position(mark());
else
position(position());
return (1);
}
else
{
// Use the Fl_Input handler...
return (Fl_Input::handle(event));
}
}
//
// End of "$Id: FileInput.cxx,v 1.3 2000/01/04 13:45:51 mike Exp $".
//
|