summaryrefslogtreecommitdiffstats
path: root/generic/tkText.h
diff options
context:
space:
mode:
authordas <das>2005-11-27 02:36:13 (GMT)
committerdas <das>2005-11-27 02:36:13 (GMT)
commit3dadea6fa58518be89d8e48e340285cd5d916887 (patch)
tree98dfe1d79c84fe0819c1b167cb9764496c2c9a72 /generic/tkText.h
parentc0223b885cb724c64ed47ceefc90b7f883a6b4df (diff)
downloadtk-3dadea6fa58518be89d8e48e340285cd5d916887.zip
tk-3dadea6fa58518be89d8e48e340285cd5d916887.tar.gz
tk-3dadea6fa58518be89d8e48e340285cd5d916887.tar.bz2
* unix/tcl.m4 (Darwin): add 64bit support, check for Tiger copyfile(),
add CFLAGS to SHLIB_LD to support passing -isysroot in env(CFLAGS) to configure (flag can't be present twice, so can't be in both CFLAGS and LDFLAGS during configure), don't use -prebind when deploying on 10.4, define TCL_IO_TRACK_OS_FOR_DRIVER_WITH_BAD_BLOCKING (rdar://3171542). (SC_ENABLE_LANGINFO, SC_TIME_HANDLER): add/fix caching, fix obsolete autoconf macros. Sync with tcl/unix/tcl.m4. * unix/configure.in: fix obsolete autoconf macros, sync gratuitous formatting/ordering differences with tcl/unix/configure.in. * unix/Makefile.in: add CFLAGS to wish/tktest link to make executable linking the same as during configure (needed to avoid loosing any linker relevant flags in CFLAGS, in particular flags that can't be in LDFLAGS). Avoid concurrent linking of wish and compiling of tkTestInit.o during parallel make, fix dependencies and flags for building tkMacOSXInit.o (checkstubs, checkexports): dependency and Darwin fixes (dist): add new macosx files. * macosx/tkMacOSXEvent.c (TkMacOSXProcessEvent): * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): * macosx/tkMacOSXCarbonEvents.c: install standard application event handler, add & call functions to start and stop carbon even timer that runs the tcl event loop periodically during a nested carbon event loop in the toolbox (e.g. during menutracking) to ensure tcl timers etc continue to fire, register app event handler for menu tracking and HI command carbon events, move menu event handling to new handlers for those carbon events, no longer register for/handle appleevent carbon event (now dealt with by standard application event handler), event debugging code dynamically acquires carbon event debugging functions to allow use on Tiger where they are no longer exported from HIToolbox. * macosx/tkMacOSXFont.c (TkMacOSXUseAntialiasedText): * macosx/tkMacOSXKeyEvent.c (GetKeyboardLayout): * macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents): * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: abstract common code to dynamically acquire address of a named symbol (from a loaded dynamic library) into new function TkMacOSXGetNamedSymbol() and macro TkMacOSXInitNamedSymbol. * macosx/tkMacOSXMenu.c (TkpNewMenu): * macosx/tkMacOSXMenubutton.c (MenuButtonInitControl): * macosx/tkMacOSXMenus.c (TkMacOSXHandleMenuSelect): switch to modern utf8 aware menu manager API, remove obsolete code, add error handling. * macosx/tkMacOSXMouseEvent.c: define OSX 10.3 or later only constants if necessary to allow compilation on OSX 10.2 * macosx/tkMacOSXWm.c (UpdateSizeHints): remove code that is never executed. * xlib/xgc.c (XCreateGC): sync with core-8-4-branch change. * generic/tk.h: add/correct location of version numbers in macosx files. * generic/tkInt.h: clarify fat compile comment. * macosx/Wish.pbproj/default.pbxuser (new file): * macosx/Wish.pbproj/jingham.pbxuser: * macosx/Wish.pbproj/project.pbxproj: * macosx/Wish.xcode/default.pbxuser: * macosx/Wish.xcode/project.pbxproj: * macosx/Wish.xcodeproj/default.pbxuser (new file): * macosx/Wish.xcodeproj/project.pbxproj (new file): new/updated projects for Xcode 2.2 on 10.4, Xcode 1.5 on 10.3 & ProjectBuilder on 10.2, with native tktest targets and support for universal (fat) compiles. * macosx/Tk-Info.plist (removed): * macosx/Wish-Info.plist (removed): * macosx/buildTkConfig.tcl (removed): remove obsolete build files. * macosx/README: clarification/cleanup, document new Xcode projects and universal (fat) builds via CFLAGS (i.e. ppc and i386 at the same time). * unix/Makefile.in: * unix/aclocal.m4: * unix/configure.in: * macosx/configure.ac (new file): add support for inclusion of unix/configure.in by macosx/configure.ac, allows generation of a config headers enabled configure script in macosx (required by Xcode projects). * macosx/GNUmakefile: rename from Makefile to avoid overwriting by configure run in tk/macosx, add support for reusing configure cache, build target fixes. * generic/tk3d.h: * generic/tkButton.h: * generic/tkCanvas.c: * generic/tkCanvas.h: * generic/tkColor.h: * generic/tkEntry.h: * generic/tkFileFilter.h: * generic/tkFont.c: * generic/tkFont.h: * generic/tkImage.c: * generic/tkImgPhoto.c: * generic/tkInt.h: * generic/tkMenu.c: * generic/tkMenu.h: * generic/tkMenubutton.h: * generic/tkScale.h: * generic/tkScrollbar.h: * generic/tkSelect.h: * generic/tkStubInit.c: * generic/tkStubLib.c: * generic/tkText.h: * generic/tkUndo.h: * macosx/tkMacOSXButton.c: * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: * unix/tkUnixButton.c: * unix/tkUnixMenu.c: * xlib/xgc.c: ensure externally visible symbols not contained in stubs table are declared as MODULE_SCOPE (or as static if not used outside of own source file), #ifdef out a few Xlib and aqua functions that are never called. These changes allow 'make checkstubs' to complete without error on Darwin with gcc 4. * macosx/tkMacOSXTest.c: * macosx/tkMacOSXPort.h: * win/tkWinTest.c: * generic/tkInt.decls: add functions needed by tktest to internal stubs table, correct signature of TkMacOSXHandleMenuSelect, add XSync to aqua Xlib stubs. * unix/tkUnixSend.c: * generic/tkText.c: * generic/tkTest.c: #ifdef unix only declarations. (TestmetricsCmd): unify win and mac implementation. (TestsendCmd): move to tkUnixSend.c to avoid access to global var. (TesttextCmd): move to tkText.c to avoid having to put all the internal text functions it uses into the stubs table. * generic/tkTextDisp.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXXStubs.c: fix gcc 4 warnings. * macosx/tkMacOSXNotify.c: * macosx/tkMacOSXScrlbr.c: sync with core-8-4-branch. * generic/tkIntDecls.h: * generic/tkIntPlatDecls.h: * generic/tkIntXlibDecls.h: * generic/tkStubInit.c: * unix/configure: * unix/tkConfig.h.in: regen.
Diffstat (limited to 'generic/tkText.h')
-rw-r--r--generic/tkText.h192
1 files changed, 96 insertions, 96 deletions
diff --git a/generic/tkText.h b/generic/tkText.h
index 3fd92ab..1357055 100644
--- a/generic/tkText.h
+++ b/generic/tkText.h
@@ -9,7 +9,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tkText.h,v 1.28 2005/11/17 16:21:56 dkf Exp $
+ * RCS: @(#) $Id: tkText.h,v 1.29 2005/11/27 02:36:14 das Exp $
*/
#ifndef _TKTEXT
@@ -940,13 +940,13 @@ typedef struct TkTextElideInfo {
* Declarations for variables shared among the text-related files:
*/
-EXTERN int tkBTreeDebug;
-EXTERN int tkTextDebug;
-EXTERN Tk_SegType tkTextCharType;
-EXTERN Tk_SegType tkTextLeftMarkType;
-EXTERN Tk_SegType tkTextRightMarkType;
-EXTERN Tk_SegType tkTextToggleOnType;
-EXTERN Tk_SegType tkTextToggleOffType;
+MODULE_SCOPE int tkBTreeDebug;
+MODULE_SCOPE int tkTextDebug;
+MODULE_SCOPE Tk_SegType tkTextCharType;
+MODULE_SCOPE Tk_SegType tkTextLeftMarkType;
+MODULE_SCOPE Tk_SegType tkTextRightMarkType;
+MODULE_SCOPE Tk_SegType tkTextToggleOnType;
+MODULE_SCOPE Tk_SegType tkTextToggleOffType;
/*
* Convenience macros for use by B-tree clients which want to access pixel
@@ -963,194 +963,194 @@ EXTERN Tk_SegType tkTextToggleOffType;
* shouldn't be used anywhere else in Tk (or by Tk clients):
*/
-EXTERN int TkBTreeAdjustPixelHeight(CONST TkText *textPtr,
+MODULE_SCOPE int TkBTreeAdjustPixelHeight(CONST TkText *textPtr,
TkTextLine *linePtr, int newPixelHeight,
int mergedLogicalLines);
-EXTERN int TkBTreeCharTagged(CONST TkTextIndex *indexPtr,
+MODULE_SCOPE int TkBTreeCharTagged(CONST TkTextIndex *indexPtr,
TkTextTag *tagPtr);
-EXTERN void TkBTreeCheck(TkTextBTree tree);
-EXTERN TkTextBTree TkBTreeCreate(TkSharedText *sharedTextPtr);
-EXTERN void TkBTreeAddClient(TkTextBTree tree, TkText *textPtr,
+MODULE_SCOPE void TkBTreeCheck(TkTextBTree tree);
+MODULE_SCOPE TkTextBTree TkBTreeCreate(TkSharedText *sharedTextPtr);
+MODULE_SCOPE void TkBTreeAddClient(TkTextBTree tree, TkText *textPtr,
int defaultHeight);
-EXTERN void TkBTreeClientRangeChanged(TkText *textPtr,
+MODULE_SCOPE void TkBTreeClientRangeChanged(TkText *textPtr,
int defaultHeight);
-EXTERN void TkBTreeRemoveClient(TkTextBTree tree,
+MODULE_SCOPE void TkBTreeRemoveClient(TkTextBTree tree,
TkText *textPtr);
-EXTERN void TkBTreeDestroy(TkTextBTree tree);
-EXTERN void TkBTreeDeleteIndexRange(TkTextBTree tree,
+MODULE_SCOPE void TkBTreeDestroy(TkTextBTree tree);
+MODULE_SCOPE void TkBTreeDeleteIndexRange(TkTextBTree tree,
TkTextIndex *index1Ptr, TkTextIndex *index2Ptr);
-EXTERN TkTextLine * TkBTreeFindLine(TkTextBTree tree,
+MODULE_SCOPE TkTextLine *TkBTreeFindLine(TkTextBTree tree,
CONST TkText *textPtr, int line);
-EXTERN TkTextLine * TkBTreeFindPixelLine(TkTextBTree tree,
+MODULE_SCOPE TkTextLine *TkBTreeFindPixelLine(TkTextBTree tree,
CONST TkText *textPtr, int pixels,
int *pixelOffset);
-EXTERN TkTextTag ** TkBTreeGetTags(CONST TkTextIndex *indexPtr,
+MODULE_SCOPE TkTextTag **TkBTreeGetTags(CONST TkTextIndex *indexPtr,
CONST TkText *textPtr, int *numTagsPtr);
-EXTERN void TkBTreeInsertChars(TkTextBTree tree,
+MODULE_SCOPE void TkBTreeInsertChars(TkTextBTree tree,
TkTextIndex *indexPtr, CONST char *string);
-EXTERN int TkBTreeLinesTo(CONST TkText *textPtr,
+MODULE_SCOPE int TkBTreeLinesTo(CONST TkText *textPtr,
TkTextLine *linePtr);
-EXTERN int TkBTreePixelsTo(CONST TkText *textPtr,
+MODULE_SCOPE int TkBTreePixelsTo(CONST TkText *textPtr,
TkTextLine *linePtr);
-EXTERN void TkBTreeLinkSegment(TkTextSegment *segPtr,
+MODULE_SCOPE void TkBTreeLinkSegment(TkTextSegment *segPtr,
TkTextIndex *indexPtr);
-EXTERN TkTextLine * TkBTreeNextLine(CONST TkText *textPtr,
+MODULE_SCOPE TkTextLine *TkBTreeNextLine(CONST TkText *textPtr,
TkTextLine *linePtr);
-EXTERN int TkBTreeNextTag(TkTextSearch *searchPtr);
-EXTERN int TkBTreeNumLines(TkTextBTree tree,
+MODULE_SCOPE int TkBTreeNextTag(TkTextSearch *searchPtr);
+MODULE_SCOPE int TkBTreeNumLines(TkTextBTree tree,
CONST TkText *textPtr);
-EXTERN int TkBTreeNumPixels(TkTextBTree tree,
+MODULE_SCOPE int TkBTreeNumPixels(TkTextBTree tree,
CONST TkText *textPtr);
-EXTERN TkTextLine * TkBTreePreviousLine(TkText *textPtr,
+MODULE_SCOPE TkTextLine *TkBTreePreviousLine(TkText *textPtr,
TkTextLine *linePtr);
-EXTERN int TkBTreePrevTag(TkTextSearch *searchPtr);
-EXTERN void TkBTreeStartSearch(TkTextIndex *index1Ptr,
+MODULE_SCOPE int TkBTreePrevTag(TkTextSearch *searchPtr);
+MODULE_SCOPE void TkBTreeStartSearch(TkTextIndex *index1Ptr,
TkTextIndex *index2Ptr, TkTextTag *tagPtr,
TkTextSearch *searchPtr);
-EXTERN void TkBTreeStartSearchBack(TkTextIndex *index1Ptr,
+MODULE_SCOPE void TkBTreeStartSearchBack(TkTextIndex *index1Ptr,
TkTextIndex *index2Ptr, TkTextTag *tagPtr,
TkTextSearch *searchPtr);
-EXTERN int TkBTreeTag(TkTextIndex *index1Ptr,
+MODULE_SCOPE int TkBTreeTag(TkTextIndex *index1Ptr,
TkTextIndex *index2Ptr, TkTextTag *tagPtr,
int add);
-EXTERN void TkBTreeUnlinkSegment(TkTextSegment *segPtr,
+MODULE_SCOPE void TkBTreeUnlinkSegment(TkTextSegment *segPtr,
TkTextLine *linePtr);
-EXTERN void TkTextBindProc(ClientData clientData,
+MODULE_SCOPE void TkTextBindProc(ClientData clientData,
XEvent *eventPtr);
-EXTERN void TkTextSelectionEvent(TkText *textPtr);
-EXTERN void TkTextChanged(TkSharedText *sharedTextPtr,
+MODULE_SCOPE void TkTextSelectionEvent(TkText *textPtr);
+MODULE_SCOPE void TkTextChanged(TkSharedText *sharedTextPtr,
TkText *textPtr, CONST TkTextIndex *index1Ptr,
CONST TkTextIndex *index2Ptr);
-EXTERN int TkTextIndexBbox(TkText *textPtr,
+MODULE_SCOPE int TkTextIndexBbox(TkText *textPtr,
CONST TkTextIndex *indexPtr, int *xPtr, int *yPtr,
int *widthPtr, int *heightPtr, int *charWidthPtr);
-EXTERN int TkTextCharLayoutProc(TkText *textPtr,
+MODULE_SCOPE int TkTextCharLayoutProc(TkText *textPtr,
TkTextIndex *indexPtr, TkTextSegment *segPtr,
int offset, int maxX, int maxChars, int noBreakYet,
TkWrapMode wrapMode, TkTextDispChunk *chunkPtr);
-EXTERN void TkTextCreateDInfo(TkText *textPtr);
-EXTERN int TkTextDLineInfo(TkText *textPtr,
+MODULE_SCOPE void TkTextCreateDInfo(TkText *textPtr);
+MODULE_SCOPE int TkTextDLineInfo(TkText *textPtr,
CONST TkTextIndex *indexPtr, int *xPtr, int *yPtr,
int *widthPtr, int *heightPtr, int *basePtr);
-EXTERN void TkTextEmbWinDisplayProc(TkText *textPtr,
+MODULE_SCOPE void TkTextEmbWinDisplayProc(TkText *textPtr,
TkTextDispChunk *chunkPtr, int x, int y,
int lineHeight, int baseline, Display *display,
Drawable dst, int screenY);
-EXTERN TkTextTag * TkTextCreateTag(TkText *textPtr,
+MODULE_SCOPE TkTextTag *TkTextCreateTag(TkText *textPtr,
CONST char *tagName, int *newTag);
-EXTERN void TkTextFreeDInfo(TkText *textPtr);
-EXTERN void TkTextDeleteTag(TkText *textPtr, TkTextTag *tagPtr);
-EXTERN void TkTextFreeTag(TkText *textPtr, TkTextTag *tagPtr);
-EXTERN int TkTextGetIndex(Tcl_Interp *interp, TkText *textPtr,
+MODULE_SCOPE void TkTextFreeDInfo(TkText *textPtr);
+MODULE_SCOPE void TkTextDeleteTag(TkText *textPtr, TkTextTag *tagPtr);
+MODULE_SCOPE void TkTextFreeTag(TkText *textPtr, TkTextTag *tagPtr);
+MODULE_SCOPE int TkTextGetIndex(Tcl_Interp *interp, TkText *textPtr,
CONST char *string, TkTextIndex *indexPtr);
-EXTERN int TkTextGetObjIndex(Tcl_Interp *interp, TkText *textPtr,
+MODULE_SCOPE int TkTextGetObjIndex(Tcl_Interp *interp, TkText *textPtr,
Tcl_Obj *idxPtr, TkTextIndex *indexPtr);
-EXTERN int TkTextSharedGetObjIndex(Tcl_Interp *interp,
+MODULE_SCOPE int TkTextSharedGetObjIndex(Tcl_Interp *interp,
TkSharedText *sharedTextPtr, Tcl_Obj *idxPtr,
TkTextIndex *indexPtr);
-EXTERN CONST TkTextIndex* TkTextGetIndexFromObj(Tcl_Interp *interp,
+MODULE_SCOPE CONST TkTextIndex *TkTextGetIndexFromObj(Tcl_Interp *interp,
TkText *textPtr, Tcl_Obj *objPtr);
-EXTERN TkTextTabArray * TkTextGetTabs(Tcl_Interp *interp,
+MODULE_SCOPE TkTextTabArray *TkTextGetTabs(Tcl_Interp *interp,
TkText *textPtr, Tcl_Obj *stringPtr);
-EXTERN void TkTextFindDisplayLineEnd(TkText *textPtr,
+MODULE_SCOPE void TkTextFindDisplayLineEnd(TkText *textPtr,
TkTextIndex *indexPtr, int end, int *xOffset);
-EXTERN int TkTextIndexBackBytes(CONST TkText *textPtr,
+MODULE_SCOPE int TkTextIndexBackBytes(CONST TkText *textPtr,
CONST TkTextIndex *srcPtr, int count,
TkTextIndex *dstPtr);
-EXTERN void TkTextIndexBackChars(CONST TkText *textPtr,
+MODULE_SCOPE void TkTextIndexBackChars(CONST TkText *textPtr,
CONST TkTextIndex *srcPtr, int count,
TkTextIndex *dstPtr, TkTextCountType type);
-EXTERN int TkTextIndexCmp(CONST TkTextIndex *index1Ptr,
+MODULE_SCOPE int TkTextIndexCmp(CONST TkTextIndex *index1Ptr,
CONST TkTextIndex *index2Ptr);
-EXTERN int TkTextIndexCount(CONST TkText *textPtr,
+MODULE_SCOPE int TkTextIndexCount(CONST TkText *textPtr,
CONST TkTextIndex *index1Ptr,
CONST TkTextIndex *index2Ptr,
TkTextCountType type);
-EXTERN int TkTextIndexForwBytes(CONST TkText *textPtr,
+MODULE_SCOPE int TkTextIndexForwBytes(CONST TkText *textPtr,
CONST TkTextIndex *srcPtr, int count,
TkTextIndex *dstPtr);
-EXTERN void TkTextIndexForwChars(CONST TkText *textPtr,
+MODULE_SCOPE void TkTextIndexForwChars(CONST TkText *textPtr,
CONST TkTextIndex *srcPtr, int count,
TkTextIndex *dstPtr, TkTextCountType type);
-EXTERN void TkTextIndexOfX(TkText *textPtr, int x,
+MODULE_SCOPE void TkTextIndexOfX(TkText *textPtr, int x,
TkTextIndex *indexPtr);
-EXTERN int TkTextIndexYPixels(TkText *textPtr,
+MODULE_SCOPE int TkTextIndexYPixels(TkText *textPtr,
CONST TkTextIndex *indexPtr);
-EXTERN TkTextSegment * TkTextIndexToSeg(CONST TkTextIndex *indexPtr,
+MODULE_SCOPE TkTextSegment *TkTextIndexToSeg(CONST TkTextIndex *indexPtr,
int *offsetPtr);
-EXTERN void TkTextInsertDisplayProc(TkText *textPtr,
+MODULE_SCOPE void TkTextInsertDisplayProc(TkText *textPtr,
TkTextDispChunk *chunkPtr, int x, int y,
int height, int baseline, Display *display,
Drawable dst, int screenY);
-EXTERN void TkTextLostSelection(ClientData clientData);
-EXTERN TkTextIndex * TkTextMakeCharIndex(TkTextBTree tree, TkText *textPtr,
+MODULE_SCOPE void TkTextLostSelection(ClientData clientData);
+MODULE_SCOPE TkTextIndex *TkTextMakeCharIndex(TkTextBTree tree, TkText *textPtr,
int lineIndex, int charIndex,
TkTextIndex *indexPtr);
-EXTERN int TkTextMeasureDown(TkText *textPtr,
+MODULE_SCOPE int TkTextMeasureDown(TkText *textPtr,
TkTextIndex *srcPtr, int distance);
-EXTERN void TkTextFreeElideInfo(TkTextElideInfo *infoPtr);
-EXTERN int TkTextIsElided(CONST TkText *textPtr,
+MODULE_SCOPE void TkTextFreeElideInfo(TkTextElideInfo *infoPtr);
+MODULE_SCOPE int TkTextIsElided(CONST TkText *textPtr,
CONST TkTextIndex *indexPtr,
TkTextElideInfo *infoPtr);
-EXTERN TkTextIndex * TkTextMakeByteIndex(TkTextBTree tree,
+MODULE_SCOPE TkTextIndex *TkTextMakeByteIndex(TkTextBTree tree,
CONST TkText *textPtr, int lineIndex,
int byteIndex, TkTextIndex *indexPtr);
-EXTERN int TkTextMakePixelIndex(TkText *textPtr,
+MODULE_SCOPE int TkTextMakePixelIndex(TkText *textPtr,
int pixelIndex, TkTextIndex *indexPtr);
-EXTERN void TkTextInvalidateLineMetrics(
+MODULE_SCOPE void TkTextInvalidateLineMetrics(
TkSharedText *sharedTextPtr, TkText *textPtr,
TkTextLine *linePtr, int lineCount, int action);
-EXTERN int TkTextUpdateLineMetrics(TkText *textPtr, int lineNum,
+MODULE_SCOPE int TkTextUpdateLineMetrics(TkText *textPtr, int lineNum,
int endLine, int doThisMuch);
-EXTERN int TkTextUpdateOneLine(TkText *textPtr,
+MODULE_SCOPE int TkTextUpdateOneLine(TkText *textPtr,
TkTextLine *linePtr, int pixelHeight,
TkTextIndex *indexPtr, int partialCalc);
-EXTERN int TkTextMarkCmd(TkText *textPtr, Tcl_Interp *interp,
+MODULE_SCOPE int TkTextMarkCmd(TkText *textPtr, Tcl_Interp *interp,
int objc, Tcl_Obj *CONST objv[]);
-EXTERN int TkTextMarkNameToIndex(TkText *textPtr,
+MODULE_SCOPE int TkTextMarkNameToIndex(TkText *textPtr,
CONST char *name, TkTextIndex *indexPtr);
-EXTERN void TkTextMarkSegToIndex(TkText *textPtr,
+MODULE_SCOPE void TkTextMarkSegToIndex(TkText *textPtr,
TkTextSegment *markPtr, TkTextIndex *indexPtr);
-EXTERN void TkTextEventuallyRepick(TkText *textPtr);
-EXTERN void TkTextPickCurrent(TkText *textPtr, XEvent *eventPtr);
-EXTERN void TkTextPixelIndex(TkText *textPtr, int x, int y,
+MODULE_SCOPE void TkTextEventuallyRepick(TkText *textPtr);
+MODULE_SCOPE void TkTextPickCurrent(TkText *textPtr, XEvent *eventPtr);
+MODULE_SCOPE void TkTextPixelIndex(TkText *textPtr, int x, int y,
TkTextIndex *indexPtr, int *nearest);
-EXTERN int TkTextPrintIndex(CONST TkText *textPtr,
+MODULE_SCOPE int TkTextPrintIndex(CONST TkText *textPtr,
CONST TkTextIndex *indexPtr, char *string);
-EXTERN Tcl_Obj* TkTextNewIndexObj(TkText *textPtr,
+MODULE_SCOPE Tcl_Obj* TkTextNewIndexObj(TkText *textPtr,
CONST TkTextIndex *indexPtr);
-EXTERN void TkTextRedrawRegion(TkText *textPtr, int x, int y,
+MODULE_SCOPE void TkTextRedrawRegion(TkText *textPtr, int x, int y,
int width, int height);
-EXTERN void TkTextRedrawTag(TkSharedText *sharedTextPtr,
+MODULE_SCOPE void TkTextRedrawTag(TkSharedText *sharedTextPtr,
TkText *textPtr, TkTextIndex *index1Ptr,
TkTextIndex *index2Ptr, TkTextTag *tagPtr,
int withTag);
-EXTERN void TkTextRelayoutWindow(TkText *textPtr, int mask);
-EXTERN int TkTextScanCmd(TkText *textPtr, Tcl_Interp *interp,
+MODULE_SCOPE void TkTextRelayoutWindow(TkText *textPtr, int mask);
+MODULE_SCOPE int TkTextScanCmd(TkText *textPtr, Tcl_Interp *interp,
int objc, Tcl_Obj *CONST objv[]);
-EXTERN int TkTextSeeCmd(TkText *textPtr, Tcl_Interp *interp,
+MODULE_SCOPE int TkTextSeeCmd(TkText *textPtr, Tcl_Interp *interp,
int objc, Tcl_Obj *CONST objv[]);
-EXTERN int TkTextSegToOffset(CONST TkTextSegment *segPtr,
+MODULE_SCOPE int TkTextSegToOffset(CONST TkTextSegment *segPtr,
CONST TkTextLine *linePtr);
-EXTERN TkTextSegment * TkTextSetMark(TkText *textPtr,
+MODULE_SCOPE TkTextSegment *TkTextSetMark(TkText *textPtr,
CONST char *name, TkTextIndex *indexPtr);
-EXTERN void TkTextSetYView(TkText *textPtr,
+MODULE_SCOPE void TkTextSetYView(TkText *textPtr,
TkTextIndex *indexPtr, int pickPlace);
-EXTERN int TkTextTagCmd(TkText *textPtr, Tcl_Interp *interp,
+MODULE_SCOPE int TkTextTagCmd(TkText *textPtr, Tcl_Interp *interp,
int objc, Tcl_Obj *CONST objv[]);
-EXTERN int TkTextImageCmd(TkText *textPtr, Tcl_Interp *interp,
+MODULE_SCOPE int TkTextImageCmd(TkText *textPtr, Tcl_Interp *interp,
int objc, Tcl_Obj *CONST objv[]);
-EXTERN int TkTextImageIndex(TkText *textPtr,
+MODULE_SCOPE int TkTextImageIndex(TkText *textPtr,
CONST char *name, TkTextIndex *indexPtr);
-EXTERN int TkTextWindowCmd(TkText *textPtr, Tcl_Interp *interp,
+MODULE_SCOPE int TkTextWindowCmd(TkText *textPtr, Tcl_Interp *interp,
int objc, Tcl_Obj *CONST objv[]);
-EXTERN int TkTextWindowIndex(TkText *textPtr, CONST char *name,
+MODULE_SCOPE int TkTextWindowIndex(TkText *textPtr, CONST char *name,
TkTextIndex *indexPtr);
-EXTERN int TkTextXviewCmd(TkText *textPtr, Tcl_Interp *interp,
+MODULE_SCOPE int TkTextXviewCmd(TkText *textPtr, Tcl_Interp *interp,
int objc, Tcl_Obj *CONST objv[]);
-EXTERN int TkTextYviewCmd(TkText *textPtr, Tcl_Interp *interp,
+MODULE_SCOPE int TkTextYviewCmd(TkText *textPtr, Tcl_Interp *interp,
int objc, Tcl_Obj *CONST objv[]);
-EXTERN void TkTextWinFreeClient(Tcl_HashEntry *hPtr,
+MODULE_SCOPE void TkTextWinFreeClient(Tcl_HashEntry *hPtr,
TkTextEmbWindowClient *client);
# undef TCL_STORAGE_CLASS