⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tkscrollbar.h

📁 linux系统下的音频通信
💻 H
字号:
/* * tkScrollbar.h -- * *	Declarations of types and functions used to implement *	the scrollbar widget. * * Copyright (c) 1996 by Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * * SCCS: @(#) tkScrollbar.h 1.8 96/11/05 11:34:58 */#ifndef _TKSCROLLBAR#define _TKSCROLLBAR#ifndef _TKINT#include "tkInt.h"#endif#ifdef BUILD_tk# undef TCL_STORAGE_CLASS# define TCL_STORAGE_CLASS DLLEXPORT#endif/* * A data structure of the following type is kept for each scrollbar * widget. */typedef struct TkScrollbar {    Tk_Window tkwin;		/* Window that embodies the scrollbar.  NULL				 * means that the window has been destroyed				 * but the data structures haven't yet been				 * cleaned up.*/    Display *display;		/* Display containing widget.  Used, among				 * other things, so that resources can be				 * freed even after tkwin has gone away. */    Tcl_Interp *interp;		/* Interpreter associated with scrollbar. */    Tcl_Command widgetCmd;	/* Token for scrollbar's widget command. */    Tk_Uid orientUid;		/* Orientation for window ("vertical" or				 * "horizontal"). */    int vertical;		/* Non-zero means vertical orientation				 * requested, zero means horizontal. */    int width;			/* Desired narrow dimension of scrollbar,				 * in pixels. */    char *command;		/* Command prefix to use when invoking				 * scrolling commands.  NULL means don't				 * invoke commands.  Malloc'ed. */    int commandSize;		/* Number of non-NULL bytes in command. */    int repeatDelay;		/* How long to wait before auto-repeating				 * on scrolling actions (in ms). */    int repeatInterval;		/* Interval between autorepeats (in ms). */    int jump;			/* Value of -jump option. */    /*     * Information used when displaying widget:     */    int borderWidth;		/* Width of 3-D borders. */    Tk_3DBorder bgBorder;	/* Used for drawing background (all flat				 * surfaces except for trough). */    Tk_3DBorder activeBorder;	/* For drawing backgrounds when active (i.e.				 * when mouse is positioned over element). */    XColor *troughColorPtr;	/* Color for drawing trough. */    int relief;			/* Indicates whether window as a whole is				 * raised, sunken, or flat. */    int highlightWidth;		/* Width in pixels of highlight to draw				 * around widget when it has the focus.				 * <= 0 means don't draw a highlight. */    XColor *highlightBgColorPtr;				/* Color for drawing traversal highlight				 * area when highlight is off. */    XColor *highlightColorPtr;	/* Color for drawing traversal highlight. */    int inset;			/* Total width of all borders, including				 * traversal highlight and 3-D border.				 * Indicates how much interior stuff must				 * be offset from outside edges to leave				 * room for borders. */    int elementBorderWidth;	/* Width of border to draw around elements				 * inside scrollbar (arrows and slider).				 * -1 means use borderWidth. */    int arrowLength;		/* Length of arrows along long dimension of				 * scrollbar, including space for a small gap				 * between the arrow and the slider.				 * Recomputed on window size changes. */    int sliderFirst;		/* Pixel coordinate of top or left edge				 * of slider area, including border. */    int sliderLast;		/* Coordinate of pixel just after bottom				 * or right edge of slider area, including				 * border. */    int activeField;		/* Names field to be displayed in active				 * colors, such as TOP_ARROW, or 0 for				 * no field. */    int activeRelief;		/* Value of -activeRelief option: relief				 * to use for active element. */    /*     * Information describing the application related to the scrollbar.     * This information is provided by the application by invoking the     * "set" widget command.  This information can now be provided in     * two ways:  the "old" form (totalUnits, windowUnits, firstUnit,     * and lastUnit), or the "new" form (firstFraction and lastFraction).     * FirstFraction and lastFraction will always be valid, but     * the old-style information is only valid if the NEW_STYLE_COMMANDS     * flag is 0.     */    int totalUnits;		/* Total dimension of application, in				 * units.  Valid only if the NEW_STYLE_COMMANDS				 * flag isn't set. */    int windowUnits;		/* Maximum number of units that can be				 * displayed in the window at once.  Valid				 * only if the NEW_STYLE_COMMANDS flag isn't				 * set. */    int firstUnit;		/* Number of last unit visible in				 * application's window.  Valid only if the				 * NEW_STYLE_COMMANDS flag isn't set. */    int lastUnit;		/* Index of last unit visible in window.				 * Valid only if the NEW_STYLE_COMMANDS				 * flag isn't set. */    double firstFraction;	/* Position of first visible thing in window,				 * specified as a fraction between 0 and				 * 1.0. */    double lastFraction;	/* Position of last visible thing in window,				 * specified as a fraction between 0 and				 * 1.0. */    /*     * Miscellaneous information:     */    Tk_Cursor cursor;		/* Current cursor for window, or None. */    char *takeFocus;		/* Value of -takefocus option;  not used in				 * the C code, but used by keyboard traversal				 * scripts.  Malloc'ed, but may be NULL. */    int flags;			/* Various flags;  see below for				 * definitions. */} TkScrollbar;/* * Legal values for "activeField" field of Scrollbar structures.  These * are also the return values from the ScrollbarPosition procedure. */#define OUTSIDE		0#define TOP_ARROW	1#define TOP_GAP		2#define SLIDER		3#define BOTTOM_GAP	4#define BOTTOM_ARROW	5/* * Flag bits for scrollbars: *  * REDRAW_PENDING:		Non-zero means a DoWhenIdle handler *				has already been queued to redraw *				this window. * NEW_STYLE_COMMANDS:		Non-zero means the new style of commands *				should be used to communicate with the *				widget:  ".t yview scroll 2 lines", instead *				of ".t yview 40", for example. * GOT_FOCUS:			Non-zero means this window has the input *				focus. */#define REDRAW_PENDING		1#define NEW_STYLE_COMMANDS	2#define GOT_FOCUS		4/* * Declaration of scrollbar class procedures structure. */extern TkClassProcs tkpScrollbarProcs;/* * Declaration of scrollbar configuration options. */extern Tk_ConfigSpec tkpScrollbarConfigSpecs[];/* * Declaration of procedures used in the implementation of the scrollbar * widget.  */EXTERN void		TkScrollbarEventProc _ANSI_ARGS_((			    ClientData clientData, XEvent *eventPtr));EXTERN void		TkScrollbarEventuallyRedraw _ANSI_ARGS_((			    TkScrollbar *scrollPtr));EXTERN void		TkpComputeScrollbarGeometry _ANSI_ARGS_((			    TkScrollbar *scrollPtr));EXTERN TkScrollbar *	TkpCreateScrollbar _ANSI_ARGS_((Tk_Window tkwin));EXTERN void 		TkpDestroyScrollbar _ANSI_ARGS_((    			    TkScrollbar *scrollPtr));EXTERN void		TkpDisplayScrollbar _ANSI_ARGS_((			    ClientData clientData));EXTERN void		TkpConfigureScrollbar _ANSI_ARGS_((			    TkScrollbar *scrollPtr));EXTERN int		TkpScrollbarPosition _ANSI_ARGS_((			    TkScrollbar *scrollPtr, int x, int y));# undef TCL_STORAGE_CLASS# define TCL_STORAGE_CLASS DLLIMPORT#endif /* _TKSCROLLBAR */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -