Commit 73568818 authored by Ole Streicher's avatar Ole Streicher

New upstream version 3.2

parent 02351586
......@@ -60,7 +60,7 @@ PKG_HEADERS = @PKG_HEADERS@
PKG_LIB_FILE = @PKG_LIB_FILE@
PKG_STUB_LIB_FILE = @PKG_STUB_LIB_FILE@
lib_BINARIES = $(PKG_LIB_FILE)
lib_BINARIES = $(PKG_LIB_FILE) $(PKG_STUB_LIB_FILE)
BINARIES = $(lib_BINARIES)
SHELL = @SHELL@
......@@ -111,14 +111,14 @@ SHLIB_CFLAGS = @SHLIB_CFLAGS@
SHLIB_LD = @SHLIB_LD@
SHLIB_LD_LIBS = @SHLIB_LD_LIBS@
STLIB_LD = @STLIB_LD@
#TCL_DEFS = @TCL_DEFS@
TCL_DEFS = @TCL_DEFS@
TCL_BIN_DIR = @TCL_BIN_DIR@
TCL_SRC_DIR = @TCL_SRC_DIR@
#TK_BIN_DIR = @TK_BIN_DIR@
#TK_SRC_DIR = @TK_SRC_DIR@
# Not used, but retained for reference of what libs Tcl required
#TCL_LIBS = @TCL_LIBS@
TCL_LIBS = @TCL_LIBS@
#========================================================================
# TCLLIBPATH seeds the auto_path in Tcl's init.tcl so we can test our
......@@ -181,7 +181,7 @@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(C
# for the BINARIES that you specified above have already been done.
#========================================================================
all: binaries libraries #doc
all: binaries libraries doc
#========================================================================
# The binaries target builds executable programs, Windows .dll's, unix
......@@ -201,12 +201,12 @@ libraries:
#========================================================================
doc:
@echo "If you have documentation to create, place the commands to"
@echo "build the docs in the 'doc:' target. For example:"
@echo " xml2nroff sample.xml > sample.n"
@echo " xml2html sample.xml > sample.html"
@list='$(srcdir)/doc/*.n'; for i in $$list; do \
echo "Processing $$i"; \
nroff -Tascii -man $$i | man2html > $${i%.n}.html ; \
done
install: all install-binaries install-libraries #install-doc
install: all install-binaries install-libraries install-doc
install-binaries: binaries install-lib-binaries install-bin-binaries
......@@ -241,6 +241,10 @@ test: binaries libraries
-load "package ifneeded ${PACKAGE_NAME} ${PACKAGE_VERSION} \
[list load `@CYGPATH@ $(PKG_LIB_FILE)` $(PACKAGE_NAME)]"
genstubs: $(srcdir)/tools/genStubs.tcl $(srcdir)/src/tkblt.decls
@echo $(TCLSH) $(srcdir)/tools/genStubs.tcl $(srcdir)/src $(srcdir)/src/tkblt.decls
@$(TCLSH) $(srcdir)/tools/genStubs.tcl $(srcdir)/src $(srcdir)/src/tkblt.decls
shell: binaries libraries
@$(TCLSH) $(SCRIPT)
......@@ -421,7 +425,7 @@ install-lib-binaries: binaries
#========================================================================
install-bin-binaries: binaries
@$(INSTALL_DATA_DIR) $(DESTDIR)$(bindir)
@$(INSTALL_DATA_DIR)
@list='$(bin_BINARIES)'; for p in $$list; do \
if test -f $$p; then \
echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p"; \
......
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for tkblt 3.1.
# Generated by GNU Autoconf 2.69 for tkblt 3.2.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
......@@ -577,8 +577,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='tkblt'
PACKAGE_TARNAME='tkblt'
PACKAGE_VERSION='3.1'
PACKAGE_STRING='tkblt 3.1'
PACKAGE_VERSION='3.2'
PACKAGE_STRING='tkblt 3.2'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
......@@ -1309,7 +1309,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures tkblt 3.1 to adapt to many kinds of systems.
\`configure' configures tkblt 3.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
......@@ -1374,7 +1374,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of tkblt 3.1:";;
short | recursive ) echo "Configuration of tkblt 3.2:";;
esac
cat <<\_ACEOF
......@@ -1478,7 +1478,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
tkblt configure 3.1
tkblt configure 3.2
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
......@@ -1843,7 +1843,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by tkblt $as_me 3.1, which was
It was created by tkblt $as_me 3.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
......@@ -5571,6 +5571,8 @@ src/tkbltInt.C
src/tkbltNsUtil.C
src/tkbltParse.C
src/tkbltOp.C
src/tkbltStubInit.c
src/tkbltStubLib.C
src/tkbltSwitch.C
src/tkbltVecCmd.C
src/tkbltVecOp.C
......@@ -5611,7 +5613,10 @@ src/tkbltVector.C
vars="src/tkbltVector.h"
vars="
src/tkbltVector.h
src/tkbltDecls.h
"
for i in $vars; do
# check for existence, be strict because it is installed
if test ! -f "${srcdir}/$i" ; then
......@@ -5644,7 +5649,7 @@ src/tkbltVector.C
vars=""
vars="src/tkbltStubLib.C"
for i in $vars; do
# check for existence - allows for generic/win/unix VPATH
if test ! -f "${srcdir}/$i" -a ! -f "${srcdir}/generic/$i" \
......@@ -5655,7 +5660,7 @@ src/tkbltVector.C
fi
PKG_STUB_SOURCES="$PKG_STUB_SOURCES $i"
# this assumes it is in a VPATH dir
i=`basename $i`
#i=`basename $i`
# handle user calling this before or after TEA_SETUP_COMPILER
if test x"${OBJEXT}" != x ; then
j="`echo $i | sed -e 's/\.[^.]*$//'`.${OBJEXT}"
......@@ -9996,7 +10001,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by tkblt $as_me 3.1, which was
This file was extended by tkblt $as_me 3.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
......@@ -10049,7 +10054,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
tkblt config.status 3.1
tkblt config.status 3.2
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
......
......@@ -19,7 +19,7 @@ dnl to configure the system for the local environment.
# so that we create the export library with the dll.
#-----------------------------------------------------------------------
AC_INIT([tkblt], [3.1])
AC_INIT([tkblt], [3.2])
#--------------------------------------------------------------------
# Call TEA_INIT as the first TEA_ macro to set up initial vars.
......@@ -113,17 +113,22 @@ src/tkbltInt.C
src/tkbltNsUtil.C
src/tkbltParse.C
src/tkbltOp.C
src/tkbltStubInit.c
src/tkbltStubLib.C
src/tkbltSwitch.C
src/tkbltVecCmd.C
src/tkbltVecOp.C
src/tkbltVecMath.C
src/tkbltVector.C
])
TEA_ADD_HEADERS([src/tkbltVector.h])
TEA_ADD_HEADERS([
src/tkbltVector.h
src/tkbltDecls.h
])
TEA_ADD_INCLUDES([-I./src])
TEA_ADD_LIBS([-lstdc++])
TEA_ADD_CFLAGS([])
TEA_ADD_STUB_SOURCES([])
TEA_ADD_STUB_SOURCES([src/tkbltStubLib.C])
TEA_ADD_TCL_SOURCES([library/graph.tcl])
#--------------------------------------------------------------------
......
<HTML>
<BODY>
<PRE>
<!-- Manpage converted by man2html 3.0.1 -->
</PRE>
<H2>DESCRIPTION</H2><PRE>
BLT is a library of extensions to the Tk library. It adds new commands
and variables to the application's interpreter.
</PRE>
<H2>COMMANDS</H2><PRE>
The following commands are added to the interpreter from the BLT
library:
<B>graph</B> A 2D plotting widget. Plots two variable data in a win-
dow with an optional legend and annotations. It has of
several components; coordinate axes, crosshairs, a leg-
end, and a collection of elements and tags.
<B>barchart</B> A barchart widget. Plots two-variable data as rectangu-
lar bars in a window. The x-coordinate values designate
the position of the bar along the x-axis, while the y-
coordinate values designate the magnitude. The <B>barchart</B>
widget has of several components; coordinate axes,
crosshairs, a legend, and a collection of elements and
tags.
<B>vector</B> Creates a vector of floating point values. The vector's
components can be manipulated in three ways: through a
Tcl array variable, a Tcl command, or the C API.
</PRE>
<H2>ADDING BLT TO YOUR APPLICATIONS</H2><PRE>
It's easy to add BLT to an existing Tk application. BLT requires no
patches or edits to the Tcl or Tk libraries. To add BLT, simply add
the following code snippet to your application's tkAppInit.c file.
if (Tkblt_Init(interp) != TCL_OK) {
return TCL_ERROR;
}
Recompile and link with the tkblt library and that's it.
Alternately, you can dynamically load tkblt, simply by invoking the
command
% package require tkblt
from your Tcl script.
</PRE>
<H2>BUGS</H2><PRE>
Send bug reports, requests, suggestions, etc. to wjoye@cfa.harvard.edu
</PRE>
<H2>KEYWORDS</H2><PRE>
BLT
</PRE>
<HR>
<ADDRESS>
Man(1) output converted with
<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
</ADDRESS>
</BODY>
</HTML>
......@@ -21,7 +21,6 @@
'\" tortuous action, arising out of or in connection with the use or performance
'\" of this software.
'\"
.so man.macros
.TH intro n BLT_VERSION BLT "BLT Built-In Commands"
.BS
'\" Note: do not modify the .SH NAME line immediately below!
......@@ -51,6 +50,25 @@ crosshairs, a legend, and a collection of elements and tags.
Creates a vector of floating point values. The vector's components
can be manipulated in three ways: through a Tcl array variable, a Tcl
command, or the C API.
.SH ADDING BLT TO YOUR APPLICATIONS
It's easy to add BLT to an existing Tk application. BLT requires no
patches or edits to the Tcl or Tk libraries. To add BLT, simply add the
following code snippet to your application's tkAppInit.c file.
.PP
if (Tkblt_Init(interp) != TCL_OK) {
.PP
return TCL_ERROR;
.PP
}
.TP 15
Recompile and link with the tkblt library and that's it.
.PP
Alternately, you can dynamically load tkblt, simply by invoking the
command
.PP
% package require tkblt
.PP
from your Tcl script.
.SH BUGS
Send bug reports, requests, suggestions, etc. to
wjoye@cfa.harvard.edu
......
This diff is collapsed.
......@@ -23,7 +23,6 @@
'\"
'\" Barchart widget created by Sani Nassif and George Howlett.
'\"
.so man.macros
.TH barchart n BLT_VERSION BLT "BLT Built-In Commands"
.BS
'\" Note: do not modify the .SH NAME line immediately below!
......@@ -1958,7 +1957,7 @@ on the line. Each number must be between 1 and 255. If
.TP
\fB\-fill \fIcolor\fR
Sets the background color of the line. This color is used with
striped lines (see the \fB\-fdashes\R option). If \fIcolor\fR is
striped lines (see the \fB\-dashes\fR option). If \fIcolor\fR is
the empty string, no background color is drawn (the line will be
dashed, not striped). The default background color is \f(CW""\fR.
.TP
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -23,7 +23,6 @@
'\"
'\" Graph widget created by Sani Nassif and George Howlett.
'\"
.so man.macros
.TH graph n BLT_VERSION BLT "BLT Built-In Commands"
.BS
'\" Note: do not modify the .SH NAME line immediately below!
......
This diff is collapsed.
......@@ -23,7 +23,6 @@
'\"
'\" Vector command created by George Howlett.
'\"
.so man.macros
.TH blt::vector n BLT_VERSION BLT "BLT Built-In Commands"
.BS
'\" Note: do not modify the .SH NAME line immediately below!
......@@ -411,11 +410,12 @@ see the manual entries for the library functions for details on what
they do. The operation is applied to all elements of the vector
returning the results.
.CS
.ta 3c 6c 9c
.ta 2c 4c 6c
\fBacos\fR \fBcos\fR \fBhypot\fR \fBsinh\fR
\fBasin\fR \fBcosh\fR \fBlog\fR \fBsqrt\fR
\fBatan\fR \fBexp\fR \fBlog10\fR \fBtan\fR
\fBceil\fR \fBfloor\fR \fBsin\fR \fBtanh\fR
.sp
.CE
Additional functions are:
.TP 1i
......
library tkblt
interface tkblt
declare 0 generic {
int Blt_CreateVector(Tcl_Interp* interp, const char *vecName,
int size, Blt_Vector** vecPtrPtr)
}
declare 1 generic {
int Blt_CreateVector2(Tcl_Interp* interp, const char *vecName,
const char *cmdName, const char *varName,
int initialSize, Blt_Vector **vecPtrPtr)
}
declare 2 generic {
int Blt_DeleteVectorByName(Tcl_Interp* interp, const char *vecName)
}
declare 3 generic {
int Blt_DeleteVector(Blt_Vector *vecPtr)
}
declare 4 generic {
int Blt_GetVector(Tcl_Interp* interp, const char *vecName,
Blt_Vector **vecPtrPtr)
}
declare 5 generic {
int Blt_GetVectorFromObj(Tcl_Interp* interp, Tcl_Obj *objPtr,
Blt_Vector **vecPtrPtr)
}
declare 6 generic {
int Blt_ResetVector(Blt_Vector *vecPtr, double *dataArr, int n,
int arraySize, Tcl_FreeProc *freeProc)
}
declare 7 generic {
int Blt_ResizeVector(Blt_Vector *vecPtr, int n)
}
declare 8 generic {
int Blt_VectorExists(Tcl_Interp* interp, const char *vecName)
}
declare 9 generic {
int Blt_VectorExists2(Tcl_Interp* interp, const char *vecName)
}
declare 10 generic {
Blt_VectorId Blt_AllocVectorId(Tcl_Interp* interp, const char *vecName)
}
declare 11 generic {
int Blt_GetVectorById(Tcl_Interp* interp, Blt_VectorId clientId,
Blt_Vector **vecPtrPtr)
}
declare 12 generic {
void Blt_SetVectorChangedProc(Blt_VectorId clientId,
Blt_VectorChangedProc *proc,
ClientData clientData)
}
declare 13 generic {
void Blt_FreeVectorId(Blt_VectorId clientId)
}
declare 14 generic {
const char *Blt_NameOfVectorId(Blt_VectorId clientId)
}
declare 15 generic {
const char *Blt_NameOfVector(Blt_Vector *vecPtr)
}
declare 16 generic {
int Blt_ExprVector(Tcl_Interp* interp, char *expr, Blt_Vector *vecPtr)
}
declare 17 generic {
void Blt_InstallIndexProc(Tcl_Interp* interp, const char *indexName,
Blt_VectorIndexProc * procPtr)
}
declare 18 generic {
double Blt_VecMin(Blt_Vector *vPtr)
}
declare 19 generic {
double Blt_VecMax(Blt_Vector *vPtr)
}
/* !BEGIN!: Do not edit below this line. */
#ifdef __cplusplus
extern "C" {
#endif
/*
* Exported function declarations:
*/
/* 0 */
EXTERN int Blt_CreateVector(Tcl_Interp*interp,
const char *vecName, int size,
Blt_Vector**vecPtrPtr);
/* 1 */
EXTERN int Blt_CreateVector2(Tcl_Interp*interp,
const char *vecName, const char *cmdName,
const char *varName, int initialSize,
Blt_Vector **vecPtrPtr);
/* 2 */
EXTERN int Blt_DeleteVectorByName(Tcl_Interp*interp,
const char *vecName);
/* 3 */
EXTERN int Blt_DeleteVector(Blt_Vector *vecPtr);
/* 4 */
EXTERN int Blt_GetVector(Tcl_Interp*interp, const char *vecName,
Blt_Vector **vecPtrPtr);
/* 5 */
EXTERN int Blt_GetVectorFromObj(Tcl_Interp*interp,
Tcl_Obj *objPtr, Blt_Vector **vecPtrPtr);
/* 6 */
EXTERN int Blt_ResetVector(Blt_Vector *vecPtr, double *dataArr,
int n, int arraySize, Tcl_FreeProc *freeProc);
/* 7 */
EXTERN int Blt_ResizeVector(Blt_Vector *vecPtr, int n);
/* 8 */
EXTERN int Blt_VectorExists(Tcl_Interp*interp,
const char *vecName);
/* 9 */
EXTERN int Blt_VectorExists2(Tcl_Interp*interp,
const char *vecName);
/* 10 */
EXTERN Blt_VectorId Blt_AllocVectorId(Tcl_Interp*interp,
const char *vecName);
/* 11 */
EXTERN int Blt_GetVectorById(Tcl_Interp*interp,
Blt_VectorId clientId,
Blt_Vector **vecPtrPtr);
/* 12 */
EXTERN void Blt_SetVectorChangedProc(Blt_VectorId clientId,
Blt_VectorChangedProc *proc,
ClientData clientData);
/* 13 */
EXTERN void Blt_FreeVectorId(Blt_VectorId clientId);
/* 14 */
EXTERN const char * Blt_NameOfVectorId(Blt_VectorId clientId);
/* 15 */
EXTERN const char * Blt_NameOfVector(Blt_Vector *vecPtr);
/* 16 */
EXTERN int Blt_ExprVector(Tcl_Interp*interp, char *expr,
Blt_Vector *vecPtr);
/* 17 */
EXTERN void Blt_InstallIndexProc(Tcl_Interp*interp,
const char *indexName,
Blt_VectorIndexProc *procPtr);
/* 18 */
EXTERN double Blt_VecMin(Blt_Vector *vPtr);
/* 19 */
EXTERN double Blt_VecMax(Blt_Vector *vPtr);
typedef struct TkbltStubs {
int magic;
void *hooks;
int (*blt_CreateVector) (Tcl_Interp*interp, const char *vecName, int size, Blt_Vector**vecPtrPtr); /* 0 */
int (*blt_CreateVector2) (Tcl_Interp*interp, const char *vecName, const char *cmdName, const char *varName, int initialSize, Blt_Vector **vecPtrPtr); /* 1 */
int (*blt_DeleteVectorByName) (Tcl_Interp*interp, const char *vecName); /* 2 */
int (*blt_DeleteVector) (Blt_Vector *vecPtr); /* 3 */
int (*blt_GetVector) (Tcl_Interp*interp, const char *vecName, Blt_Vector **vecPtrPtr); /* 4 */
int (*blt_GetVectorFromObj) (Tcl_Interp*interp, Tcl_Obj *objPtr, Blt_Vector **vecPtrPtr); /* 5 */
int (*blt_ResetVector) (Blt_Vector *vecPtr, double *dataArr, int n, int arraySize, Tcl_FreeProc *freeProc); /* 6 */
int (*blt_ResizeVector) (Blt_Vector *vecPtr, int n); /* 7 */
int (*blt_VectorExists) (Tcl_Interp*interp, const char *vecName); /* 8 */
int (*blt_VectorExists2) (Tcl_Interp*interp, const char *vecName); /* 9 */
Blt_VectorId (*blt_AllocVectorId) (Tcl_Interp*interp, const char *vecName); /* 10 */
int (*blt_GetVectorById) (Tcl_Interp*interp, Blt_VectorId clientId, Blt_Vector **vecPtrPtr); /* 11 */
void (*blt_SetVectorChangedProc) (Blt_VectorId clientId, Blt_VectorChangedProc *proc, ClientData clientData); /* 12 */
void (*blt_FreeVectorId) (Blt_VectorId clientId); /* 13 */
const char * (*blt_NameOfVectorId) (Blt_VectorId clientId); /* 14 */
const char * (*blt_NameOfVector) (Blt_Vector *vecPtr); /* 15 */
int (*blt_ExprVector) (Tcl_Interp*interp, char *expr, Blt_Vector *vecPtr); /* 16 */
void (*blt_InstallIndexProc) (Tcl_Interp*interp, const char *indexName, Blt_VectorIndexProc *procPtr); /* 17 */
double (*blt_VecMin) (Blt_Vector *vPtr); /* 18 */
double (*blt_VecMax) (Blt_Vector *vPtr); /* 19 */
} TkbltStubs;
extern const TkbltStubs *tkbltStubsPtr;
#ifdef __cplusplus
}
#endif
#if defined(USE_TKBLT_STUBS)
/*
* Inline function declarations:
*/
#define Blt_CreateVector \
(tkbltStubsPtr->blt_CreateVector) /* 0 */
#define Blt_CreateVector2 \
(tkbltStubsPtr->blt_CreateVector2) /* 1 */
#define Blt_DeleteVectorByName \
(tkbltStubsPtr->blt_DeleteVectorByName) /* 2 */
#define Blt_DeleteVector \
(tkbltStubsPtr->blt_DeleteVector) /* 3 */
#define Blt_GetVector \
(tkbltStubsPtr->blt_GetVector) /* 4 */
#define Blt_GetVectorFromObj \
(tkbltStubsPtr->blt_GetVectorFromObj) /* 5 */
#define Blt_ResetVector \
(tkbltStubsPtr->blt_ResetVector) /* 6 */
#define Blt_ResizeVector \
(tkbltStubsPtr->blt_ResizeVector) /* 7 */
#define Blt_VectorExists \
(tkbltStubsPtr->blt_VectorExists) /* 8 */
#define Blt_VectorExists2 \
(tkbltStubsPtr->blt_VectorExists2) /* 9 */
#define Blt_AllocVectorId \
(tkbltStubsPtr->blt_AllocVectorId) /* 10 */
#define Blt_GetVectorById \
(tkbltStubsPtr->blt_GetVectorById) /* 11 */
#define Blt_SetVectorChangedProc \
(tkbltStubsPtr->blt_SetVectorChangedProc) /* 12 */
#define Blt_FreeVectorId \
(tkbltStubsPtr->blt_FreeVectorId) /* 13 */
#define Blt_NameOfVectorId \
(tkbltStubsPtr->blt_NameOfVectorId) /* 14 */
#define Blt_NameOfVector \
(tkbltStubsPtr->blt_NameOfVector) /* 15 */
#define Blt_ExprVector \
(tkbltStubsPtr->blt_ExprVector) /* 16 */
#define Blt_InstallIndexProc \
(tkbltStubsPtr->blt_InstallIndexProc) /* 17 */
#define Blt_VecMin \
(tkbltStubsPtr->blt_VecMin) /* 18 */
#define Blt_VecMax \
(tkbltStubsPtr->blt_VecMax) /* 19 */
#endif /* defined(USE_TKBLT_STUBS) */
/* !END!: Do not edit above this line. */
......@@ -255,7 +255,6 @@ void Graph::draw()
// Update cache if needed
if (flags & CACHE) {
// cerr << 'c';
drawMargins(cache_);
switch (legend_->position()) {
......@@ -459,7 +458,7 @@ int Graph::print(const char* ident, PSOutput* psPtr)
void Graph::eventuallyRedraw()
{
if ((flags & GRAPH_DELETED) || !Tk_IsMapped(tkwin_))
if (flags & GRAPH_DELETED)
return;
if (!(flags & REDRAW_PENDING)) {
......
......@@ -39,6 +39,8 @@ Tcl_AppInitProc Tkblt_SafeInit;
Tcl_AppInitProc Blt_VectorCmdInitProc;
Tcl_AppInitProc Blt_GraphCmdInitProc;
#include "tkbltStubInit.c"
int Tkblt_Init(Tcl_Interp* interp)
{
Tcl_Namespace *nsPtr;
......@@ -60,7 +62,7 @@ int Tkblt_Init(Tcl_Interp* interp)
if (Blt_GraphCmdInitProc(interp) != TCL_OK)
return TCL_ERROR;
if (Tcl_PkgProvide(interp, PACKAGE_NAME, PACKAGE_VERSION) != TCL_OK)
if (Tcl_PkgProvideEx(interp, PACKAGE_NAME, PACKAGE_VERSION, (ClientData)&tkbltStubs) != TCL_OK)
return TCL_ERROR;
return TCL_OK;
......
#include <tkbltVector.h>
/* !BEGIN!: Do not edit below this line. */
const TkbltStubs tkbltStubs = {
TCL_STUB_MAGIC,
0,
Blt_CreateVector, /* 0 */
Blt_CreateVector2, /* 1 */
Blt_DeleteVectorByName, /* 2 */
Blt_DeleteVector, /* 3 */
Blt_GetVector, /* 4 */
Blt_GetVectorFromObj, /* 5 */
Blt_ResetVector, /* 6 */
Blt_ResizeVector, /* 7 */
Blt_VectorExists, /* 8 */
Blt_VectorExists2, /* 9 */
Blt_AllocVectorId, /* 10 */
Blt_GetVectorById, /* 11 */
Blt_SetVectorChangedProc, /* 12 */
Blt_FreeVectorId, /* 13 */
Blt_NameOfVectorId, /* 14 */
Blt_NameOfVector, /* 15 */
Blt_ExprVector, /* 16 */
Blt_InstallIndexProc, /* 17 */
Blt_VecMin, /* 18 */
Blt_VecMax, /* 19 */
};
/* !END!: Do not edit above this line. */
#ifndef USE_TCL_STUBS
#define USE_TCL_STUBS
#endif
#include <tcl.h>
ClientData tkbltStubsPtr =NULL;
const char* Tkblt_InitStubs(Tcl_Interp* interp, const char* version, int exact)
{
const char* actualVersion =
Tcl_PkgRequireEx(interp, "tkblt", version, exact, &tkbltStubsPtr);
return (actualVersion && tkbltStubsPtr) ? actualVersion : NULL;
}
......@@ -1533,7 +1533,7 @@ static int SortOp(Vector *vPtr, Tcl_Interp* interp,
static int InstExprOp(Vector *vPtr, Tcl_Interp* interp,
int objc, Tcl_Obj* const objv[])
{
if (ExprVector(interp, Tcl_GetString(objv[2]), (Blt_Vector *)vPtr) != TCL_OK)
if (Blt_ExprVector(interp, Tcl_GetString(objv[2]), (Blt_Vector *)vPtr) != TCL_OK)
return TCL_ERROR;
if (vPtr->flush)
......
......@@ -185,6 +185,7 @@ namespace Blt {
extern size_t *Vec_SortMap(Vector **vectors, int nVectors);
extern double Vec_Max(Vector *vecObjPtr);
extern double Vec_Min(Vector *vecObjPtr);
extern int ExprVector(Tcl_Interp* interp, char *string, Blt_Vector *vector);
extern Tcl_ObjCmdProc Vec_InstCmd;
extern Tcl_VarTraceProc Vec_VarTrace;
......
......@@ -198,6 +198,11 @@ double Blt_VecMin(Blt_Vector *vectorPtr)
return Vec_Min(vPtr);
}
int Blt_ExprVector(Tcl_Interp* interp, char *string, Blt_Vector *vector)
{
return ExprVector(interp,string,vector);
}
static double Product(Blt_Vector *vectorPtr)
{
Vector *vPtr = (Vector *)vectorPtr;
......
......@@ -1151,7 +1151,7 @@ static int VectorDestroyOp(ClientData clientData, Tcl_Interp* interp,
static int VectorExprOp(ClientData clientData, Tcl_Interp* interp,
int objc, Tcl_Obj* const objv[])
{
return ExprVector(interp, Tcl_GetString(objv[2]), (Blt_Vector* )NULL);
return Blt_ExprVector(interp, Tcl_GetString(objv[2]), (Blt_Vector* )NULL);
}
static Blt_OpSpec vectorCmdOps[] =
......
......@@ -87,11 +87,9 @@ typedef enum {
#define Blt_VecSize(v) ((v)->arraySize)
#define Blt_VecDirty(v) ((v)->dirty)
namespace Blt {
extern int ExprVector(Tcl_Interp* interp, char *expr, Blt_Vector *vecPtr);
};
#ifdef __cplusplus
extern "C" {
#endif
int Blt_CreateVector(Tcl_Interp* interp, const char *vecName,
int size, Blt_Vector** vecPtrPtr);
int Blt_CreateVector2(Tcl_Interp* interp, const char *vecName,
......@@ -117,10 +115,15 @@ extern "C" {
void Blt_FreeVectorId(Blt_VectorId clientId);
const char *Blt_NameOfVectorId(Blt_VectorId clientId);
const char *Blt_NameOfVector(Blt_Vector *vecPtr);
int Blt_ExprVector(Tcl_Interp* interp, char *expr, Blt_Vector *vecPtr);
void Blt_InstallIndexProc(Tcl_Interp* interp, const char *indexName,
Blt_VectorIndexProc * procPtr);
double Blt_VecMin(Blt_Vector *vPtr);