1/* 2 * Author: William Chia-Wei Cheng (bill.cheng@acm.org) 3 * 4 * Copyright (C) 2001-2009, William Chia-Wei Cheng. 5 * 6 * This file may be distributed under the terms of the Q Public License 7 * as defined by Trolltech AS of Norway and appearing in the file 8 * LICENSE.QPL included in the packaging of this file. 9 * 10 * THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING 11 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR 12 * PURPOSE. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, 13 * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING 14 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, 15 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION 16 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17 * 18 * @(#)$Header: /mm2/home/cvs/bc-src/tgif/scroll.e,v 1.6 2011/05/16 16:21:59 william Exp $ 19 */ 20 21#ifndef _SCROLL_E_ 22#define _SCROLL_E_ 23 24extern int autoPan; 25 26extern int scrollingCanvas; 27extern int smoothScrollingCanvas; 28 29extern int resetOriginOnAdvancePage; 30 31#ifdef _INCLUDE_FROM_SCROLL_C_ 32#undef extern 33#define extern 34#endif /*_INCLUDE_FROM_SCROLL_C_*/ 35 36extern int TgAnyButtonDown ARGS_DECL((Display*, Window)); 37extern int TgPressButtonLoop ARGS_DECL((Display*, Window, struct BBRec *, 38 ScrollBtnCallbackInfo*)); 39extern int TgGetScrollHit ARGS_DECL((int x, int y, int orientation, 40 int scroll_area_w, int scroll_area_h, 41 double start_frac, int length, 42 int total, int *pn_offset)); 43extern void TgDrawScrollBar ARGS_DECL((Display*, Window, int orientation, 44 int x_off, int y_off, 45 int scroll_area_w, int scroll_area_h, 46 double start_frac, int length, 47 int total)); 48extern void RedrawVScrollWindow ARGS_DECL((void)); 49extern void RedrawHScrollWindow ARGS_DECL((void)); 50extern void RedrawScrollBars ARGS_DECL((void)); 51extern void GetMaxScrollOrigin ARGS_DECL((int *pn_orig_x, int *pn_orig_y)); 52extern void ScrollTo ARGS_DECL((int XOff, int YOff)); 53extern void ScrollUp ARGS_DECL((XButtonEvent *)); 54extern void ForceScrollDown ARGS_DECL((int)); 55extern void ScrollDown ARGS_DECL((XButtonEvent *)); 56extern void ScrollLeft ARGS_DECL((XButtonEvent *)); 57extern void ScrollRight ARGS_DECL((XButtonEvent *)); 58extern void ScrollEventHandler ARGS_DECL((XEvent *)); 59extern void ScrollToSpecifiedOrigin ARGS_DECL((int page_num, int orig_x, 60 int orig_y, int zoom_scale, 61 int zoomed_in)); 62extern int ScrollToOrigin ARGS_DECL((void)); 63extern void SaveOrigin ARGS_DECL((void)); 64extern void SetOrigin ARGS_DECL((int x, int y, int zoom_scale, 65 int zoomed_in)); 66extern void GetOrigin ARGS_DECL((int *pn_x, int *pn_y, int *pn_zoom_scale, 67 int *pn_zoomed_in)); 68extern void CleanUpScrolls ARGS_DECL((void)); 69extern void UpdScrollWinWH ARGS_DECL((void)); 70extern void InitScroll ARGS_DECL((void)); 71extern void ChangeScrollMode ARGS_DECL((int ModeIndex)); 72extern int RefreshScrollModeMenu ARGS_DECL((TgMenu*)); 73extern TgMenu *CreateScrollModeMenu ARGS_DECL((TgMenu*, int X, int Y, 74 TgMenuInfo*, 75 int status_str_xlated)); 76 77#ifdef _INCLUDE_FROM_SCROLL_C_ 78#undef extern 79#ifndef _NO_RECURSIVE_EXTERN 80#define extern extern 81#endif /* ~_NO_RECURSIVE_EXTERN */ 82#endif /*_INCLUDE_FROM_SCROLL_C_*/ 83 84#endif /*_SCROLL_E_*/ 85