00001 /* 00002 * Copyright (c) 1991 Stanford University 00003 * Copyright (c) 1991 Silicon Graphics, Inc. 00004 * 00005 * Permission to use, copy, modify, distribute, and sell this software and 00006 * its documentation for any purpose is hereby granted without fee, provided 00007 * that (i) the above copyright notices and this permission notice appear in 00008 * all copies of the software and related documentation, and (ii) the names of 00009 * Stanford and Silicon Graphics may not be used in any advertising or 00010 * publicity relating to the software without the specific, prior written 00011 * permission of Stanford and Silicon Graphics. 00012 * 00013 * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 00014 * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 00015 * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 00016 * 00017 * IN NO EVENT SHALL STANFORD OR SILICON GRAPHICS BE LIABLE FOR 00018 * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, 00019 * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, 00020 * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 00021 * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 00022 * OF THIS SOFTWARE. 00023 */ 00024 00025 /* 00026 * DocBrowser -- browse a directory 00027 */ 00028 00029 #ifndef dbrowser_h 00030 #define dbrowser_h 00031 00032 #include <IV-look/browser.h> 00033 00034 class Adjustable; 00035 class DocBrowserImpl; 00036 class WidgetKit; 00037 class Word; 00038 00039 class DocBrowser : public Browser { 00040 public: 00041 DocBrowser(TBScrollBox*, WidgetKit*); 00042 virtual ~DocBrowser(); 00043 00044 virtual void press(const Event&); 00045 virtual void drag(const Event&); 00046 virtual void release(const Event&); 00047 virtual void keystroke(const Event&); 00048 virtual InputHandler* focus_in(); 00049 virtual void focus_out(); 00050 00051 virtual void select(GlyphIndex); 00052 00053 virtual Adjustable* adjustable() const; 00054 virtual void refresh(); 00055 virtual void select_word_action(Action*); 00056 virtual Word* select_word(); 00057 private: 00058 DocBrowserImpl* impl_; 00059 }; 00060 00061 #endif