# config

name: css
value:
  /* General settings for the entire page */
  html {
    min-height: 100%;
  }
  body {
    margin: 0ex 1ex;
    padding: 0px;
    background-color: white;
    color: #333;
    font-family: Verdana, sans-serif;
    font-size: 0.8em;
  }

  /* The project logo in the upper left-hand corner of each page */
  div.logo {
    display: table-cell;
    text-align: right;
    vertical-align: bottom;
    font-weight: normal;
  }

  /* Widths */
  div.header, div.mainmenu, div.submenu, div.content, div.footer {
    max-width: 900px;
    margin: auto;
    padding: 3px 20px 3px 20px;
    clear: both;
  }

  /* The page title at the top of each page */
  div.title {
    display: table-cell;
    padding-left: 10px;
    font-size: 2em;
    margin: 10px 0 10px -20px;
    vertical-align: bottom;
    text-align: left;
    width: 80%;
    font-family: Verdana, sans-serif;
    font-weight: bold;
    color: #558195;
    text-shadow: 0px 2px 2px #999999;
  }

  /* The login status message in the top right-hand corner */
  div.status {
    display: table-cell;
    text-align: right;
    vertical-align: bottom;
    color: #333;
    margin-right: -20px;
  }

  /* The main menu bar that appears at the top of the page beneath
   ** the header */
  div.mainmenu {
    text-align: center;
    color: white;
    -moz-border-top-right-radius: 5px;
    -moz-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -webkit-border-top-left-radius: 5px;
    -border-top-right-radius: 5px;
    -border-top-left-radius: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    vertical-align: middle;
    padding-top: 8px;
    padding-bottom: 8px;
    background-color: #446979;
    background: -webkit-gradient(linear,left bottom,left top, color-stop(0.02, rgb(51,81,94)),  color-stop(0.76, rgb(85,129,149)));
    background: -moz-linear-gradient(center bottom,rgb(51,81,94) 2%, rgb(85,129,149) 76%);
    -webkit-box-shadow: 0px 3px 4px #333333;
    -moz-box-shadow: 0px 3px 4px #333333;
    box-shadow: 0px 3px 4px #333333;
  }

  /* The submenu bar that *sometimes* appears below the main menu */
  div.submenu {
    padding-top:10px;
    padding-bottom:0;
    text-align: right;
    color: #000;
    background-color: #fff;
    height: 1.5em;
    vertical-align:middle;
    -webkit-box-shadow: 0px 3px 4px #999;
    -moz-box-shadow: 0px 3px 4px #999;
    box-shadow: 0px 3px 4px #999;
  }
  div.mainmenu a, div.mainmenu a:visited {
    padding: 3px 10px 3px 10px;
    color: white;
    text-decoration: none;
  }
  div.submenu a, div.submenu a:visited, a.button,
  div.sectionmenu>a.button:link, div.sectinmenu>a.button:visited {
    padding: 2px 8px;
    color: #000;
    font-family: Arial;
    text-decoration: none;
    margin:auto;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background: -webkit-gradient(linear,left bottom, left top, color-stop(0, rgb(184,184,184)), color-stop(0.75, rgb(214,214,214)));
    background: -moz-linear-gradient(center bottom, rgb(184,184,184) 0%, rgb(214,214,214) 75%);
    background-color: #e0e0e0 ;
    text-shadow: 0px -1px 0px #eee;
    filter: dropshadow(color=#eeeeee, offx=0, offy=-1);
    border: 1px solid #000;
  }

  div.mainmenu a:hover {
    color: #000;
    background-color: white;
  }

  div.submenu a:hover, div.sectionmenu>a.button:hover {
    background: -webkit-gradient(linear,left bottom, left top, color-stop(0, rgb(214,214,214)), color-stop(0.75, rgb(184,184,184)));
    background: -moz-linear-gradient(center bottom, rgb(214,214,214) 0%, rgb(184,184,184) 75%);
    background-color: #c0c0c0 ;
  }

  /* All page content from the bottom of the menu or submenu down to
   ** the footer */
  div.content {
    background-color: #fff;
    -webkit-box-shadow: 0px 3px 4px #999;
    -moz-box-shadow: 0px 3px 4px #999;
    box-shadow: 0px 3px 4px #999;
    -moz-border-bottom-right-radius: 5px;
    -moz-border-bottom-left-radius: 5px;
    -webkit-border-bottom-right-radius: 5px;
    -webkit-border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    padding-bottom: 1em;
    min-height:40%;
  }


  /* Some pages have section dividers */
  div.section {
    margin-bottom: 0.5em;
    margin-top: 1em;
    margin-right: auto;

    padding: 1px 1px 1px 1px;
    font-size: 1.2em;
    font-weight: bold;

    text-align: center;
    color: white;

    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;

    background-color: #446979;
    background: -webkit-gradient(linear,left bottom,left top, color-stop(0.02, rgb(51,81,94)),  color-stop(0.76, rgb(85,129,149)));
    background: -moz-linear-gradient(center bottom,rgb(51,81,94) 2%, rgb(85,129,149) 76%);

    -webkit-box-shadow: 0px 3px 4px #333333;
    -moz-box-shadow: 0px 3px 4px #333333;
    box-shadow: 0px 3px 4px #333333;
  }

  /* The "Date" that occurs on the left hand side of timelines */
  div.divider {
    font-size: 1.2em;
    font-family: Georgia, serif;
    font-weight: bold;
    margin-top: 1em;
    white-space: nowrap;
  }

  /* The footer at the very bottom of the page */
  div.footer {
    font-size: 0.9em;
    text-align: right;
    margin-bottom: 1em;
    color: #666;
  }

  /* Hyperlink colors in the footer */
  div.footer a { color: white; }
  div.footer a:link { color: white; }
  div.footer a:visited { color: white; }
  div.footer a:hover { background-color: white; color: #558195; }

  /* <verbatim> blocks */
  pre.verbatim, blockquote pre {
    font-family: Dejavu Sans Mono, Monaco, Lucida Console, monospace;
    background-color: #f3f3f3;
    padding: 0.5em;
    white-space: pre-wrap;
  }

  blockquote pre {
    border: 1px #000 dashed;
  }

  /* The label/value pairs on (for example) the ci page */
  table.label-value th {
    vertical-align: top;
    text-align: right;
    padding: 0.2ex 2ex;
  }


  table.report {
    border-collapse:collapse;
    border: 1px solid #999;
    margin: 1em 0 1em 0;
  }

  table.report tr th {
    padding: 3px 5px;
    text-transform : capitalize;
  }

  table.report tr td {
    padding: 3px 5px;
  }

  textarea {
    font-size: 1em;
  }

  /* Side-by-side diff */
  table.sbsdiff {
    background-color: white;
    font-family: Dejavu Sans Mono, Monaco, Lucida Console, monospace;
    font-size: 6pt;
    border-collapse:collapse;
    width: 98%;
    border: 1px #000 dashed;
    margin-left: auto;
    margin-right: auto;
  }

  table.sbsdiff th.diffhdr {
    border-bottom: dotted;
    border-width: 1px;
  }

  table.sbsdiff tr td {
    padding-left: 3px;
    padding-right: 3px;
    margin: 0px;
    vertical-align: top;
    white-space: pre-wrap;
  }

  table.sbsdiff tr td.lineno {
    text-align: right;
    /* border-bottom: 1px solid rgb(220, 220, 220); */
  }

  table.sbsdiff tr td.srcline {
    /* max-width: 400px; */
    /* Note: May partially hide long lines without whitespaces */
    /* overflow: hidden; */
    /* border-bottom: 1px solid rgb(220, 220, 220); */
  }

  table.sbsdiff tr td.meta {
    background-color: rgb(170, 160, 255);
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    text-align: center;
    -moz-border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -webkit-border-radius: 5px;
    -border-radius: 5px;
    -border-radius: 5px;
    border-radius: 5px;
    border-radius: 5px;
  }

  table.sbsdiff tr td.added {
    background-color: rgb(180, 250, 180);
    /* border-bottom: 1px solid rgb(160, 230, 160); */
  }

  table.sbsdiff tr td.removed {
    background-color: rgb(250, 130, 130);
    /* border-bottom: 1px solid rgb(230, 110, 110); */
  }

  table.sbsdiff tr td.changed {
    background-color: rgb(210, 210, 200);
    /* border-bottom: 1px solid rgb(190, 190, 180); */
  }


name: header
value:
  <html>
  <head>
  <base href="$baseurl/$current_page" />
  <title>$<project_name>: $<title></title>
  <link rel="alternate" type="application/rss+xml" title="RSS Feed"
        href="$home/timeline.rss">
  <link rel="stylesheet" href="$home/style.css?black2" type="text/css"
        media="screen">
  </head>
  <body>
  <div class="header">
    <div class="logo">
      <img src="$home/logo" alt="logo">
      <br /><nobr>$<project_name></nobr>
    </div>
    <div class="title">$<title></div>
    <div class="status"><nobr><th1>
       if {[info exists login]} {
         puts "Logged in as $login"
       } else {
         puts "Not logged in"
       }
    </th1></nobr></div>
  </div>
  <div class="mainmenu">
  <th1>
  html "<a href='$home$index_page'>Home</a>\n"
  if {[anycap jor]} {
    html "<a href='$home/timeline'>Timeline</a>\n"
  }
  if {[hascap oh]} {
    html "<a href='$home/dir?ci=tip'>Files</a>\n"
  }
  if {[hascap o]} {
    html "<a href='$home/brlist'>Branches</a>\n"
    html "<a href='$home/taglist'>Tags</a>\n"
  }
  if {[hascap r]} {
    html "<a href='$home/reportlist'>Tickets</a>\n"
  }
  if {[hascap j]} {
    html "<a href='$home/wiki'>Wiki</a>\n"
  }
  if {[hascap s]} {
    html "<a href='$home/setup'>Admin</a>\n"
  } elseif {[hascap a]} {
    html "<a href='$home/setup_ulist'>Users</a>\n"
  }
  if {[info exists login]} {
    html "<a href='$home/login'>Logout</a>\n"
  } else {
    html "<a href='$home/login'>Login</a>\n"
  }
  </th1></div>
  <div id="container">


# reportfmt

title: All Tickets
cols:
  #ffffff Key:
  #f2dcdc Active
  #e8e8e8 Review
  #cfe8bd Fixed
  #bde5d6 Tested
  #cacae5 Deferred
  #c8c8c8 Closed

sqlcode:
  SELECT
    CASE WHEN status IN ('Open','Verified') THEN '#f2dcdc'
         WHEN status='Review' THEN '#e8e8e8'
         WHEN status='Fixed' THEN '#cfe8bd'
         WHEN status='Tested' THEN '#bde5d6'
         WHEN status='Deferred' THEN '#cacae5'
         ELSE '#c8c8c8' END AS 'bgcolor',
    substr(tkt_uuid,1,10) AS '#',
    datetime(tkt_mtime) AS 'mtime',
    type,
    status,
    subsystem,
    title
  FROM ticket


# event

type: ci
user: escoffon
comment:
  - added setting of EXPORT to DLLEXPORT if we are building the itcl lib.
  - use EXTERN instead of extern for Itcl_Assert


type: ci
user: stanton
comment:
  changed to reflect new CompiledLocal structure
  changed to reflect changes in resolver api
  changed to use TclInitCompiledLocals interface


type: ci
user: redman
comment:
  Applied patches from David Gravereaux to update Itcl and Itk to
  use Tcl/Tk 8.1 stubs and provide it's own stubs interface, on
  Windows only.

  Changes have not been made to support I18N (if needed) or MT-safety.

  Version number has been changed to 3.1.0 (from 3.0.1) by
  David to coincide with the shift to Tcl/Tk 8.1.

  Building of itclsh31.exe and iwish31.exe have been disabled
  until someone else makes them work properly.  Test suites
  have been modified to work with tclsh81.exe instead.


type: ci
user: redman
comment:
  Fix the makefile and configure files, etc., for Unix
  in order to compile with Tcl/Tk 8.1 with stubs.

  Builds itclsh and itkwish properly.


type: ci
user: redman
comment:
  Fixed the use of Tcl & Tk stubs on Windows.

  Now the extra shells (itclsh31.exe and itkwish31.exe) are being
  created and run properly.


type: ci
user: wart
comment:
  TEA changes.  Itcl now uses the same Makefiles and configure scripts for
  both Windows and Unix.

  Note that static shells are not yet done in this TEA implementation.


type: ci
user: wart
comment:
  configure now searches for tclsh82 shell in exec-prefix, then prefix, then
  relative to tclConfig.sh, then in the users path.


type: ci
user: wart
comment:
  Look for tclsh82d.exe before tclsh82.exe.

  configure scripts for itcl and itk now use the tcl.m4 macro SC_PROG_TCLSH.


type: ci
user: wart
comment:
  Removed Makefiles rules to regenerate the configure scripts.  This was
  causing problems when building on Windows and Unix simultaneoulsy.


type: ci
user: wart
comment:
  Fixed installation of pkgIndex.tcl file.  We have to install a pre-made
  pkgIndex.tcl file since pkg_mkIndex can't seem to make a usable one.


type: ci
user: wart
comment:
  tcl.m4:  Updated to reflect recent TEA changes

  */configure:  Regnereated with new tcl.m4

  iwidgets2.2.0/Makefile.in:  Don't copy nonexistent files


type: ci
user: csmith
comment:
  Patch by Mo Dejong to fix a Windows NT/95 crashing problem where you can
  build with debugging on, load the Itcl package, and press the X in the
  upper right corner.  Note that I'm unable to test this on Windows and
  that this patch introduces a compiler warning.


type: ci
user: csmith
comment:
  Patch submitted by Mo Dejong needed so Itcl will link to the Tcl libs
  when Tcl is compiled with debugging on.


type: ci
user: csmith
comment:
  Patch submitted by Mo Dejong: needed to add "-force" option to the
  namespace import command so fix a bug with 'make test'.


type: ci
user: csmith
comment:
  Duuuuhhhh....

  This is the patch from Mo Dejong regarding the Windows NT/95 crashing
  problem.  My previous checkin of itcl_parse.c did not include all of
  the patch - got in a hurry.  Disregard the compiler warning mentioned
  in my previous checkin.


type: ci
user: csmith
comment:
  Patch for Ticket 4111, submitted by David Cuthbert:

  *** itcl3.1.0/itcl/generic/itcl_cmds.c.orig     Tue Feb  1 16:37:53 2000
  --- itcl3.1.0/itcl/generic/itcl_cmds.c.new      Tue Feb  1
  16:38:06 2000
              ***************
              *** 94,100 ****
                static char safeInitScript[] =
                "proc ::itcl::local {class name args} {\n\
              !     set ptr [uplevel eval [list $class $name] $args]\n\
                    uplevel [list set itcl-local-$ptr $ptr]\n\
                    set cmd [uplevel namespace which -command $ptr]\n\
                    uplevel [list trace variable itcl-local-$ptr u \"::itcl::delete object $cmd; list\"]\n\

              --- 94,100 ----
                static char safeInitScript[] =
                "proc ::itcl::local {class name args} {\n\
              !     set ptr [uplevel [list $class $name] $args]\n\
                    uplevel [list set itcl-local-$ptr $ptr]\n\
                    set cmd [uplevel namespace which -command $ptr]\n\
                    uplevel [list trace variable itcl-local-$ptr u \"::itcl::delete object $cmd; list\"]\n\


type: ci
user: csmith
comment:
  Patch for ticket 4111, submitted by David Cuthbert:

  *** itcl3.1.0/itcl/library/itcl.tcl.orig        Tue Feb  1 16:38:24 2000
  --- itcl3.1.0/itcl/library/itcl.tcl.new Tue Feb  1 16:38:30 2000
              ***************
              *** 27,33 ****
                #  alive until a procedure exits.
                # ----------------------------------------------------------------------
                proc ::itcl::local {class name args} {
              !     set ptr [uplevel eval [list $class $name] $args]
                    uplevel [list set itcl-local-$ptr $ptr]
                    set cmd [uplevel namespace which -command $ptr]
                    uplevel [list trace variable itcl-local-$ptr u \

              --- 27,33 ----
                #  alive until a procedure exits.
                # ----------------------------------------------------------------------
                proc ::itcl::local {class name args} {
              !     set ptr [uplevel [list $class $name] $args]
                    uplevel [list set itcl-local-$ptr $ptr]
                    set cmd [uplevel namespace which -command $ptr]
                    uplevel [list trace variable itcl-local-$ptr u \


type: ci
user: matt
comment:
  Moved #ifndef NDEBUG inside Itcl_Assert routine otherwise it may not get inclued
  BUT it is specified in the Stubs Table.....


type: ci
user: mmc
comment:
  6/26/00 (bug fix)
    Fixed Itcl_ClassVarResolver so that the formal parameters in a
    method/proc take precedence over class data members.

  6/30/00 (bug fix)
    Fixed all itcl/itk/iwidgets3.0.0 tests to run cleanly with the new
    tcltest package.

  7/1/00 (bug fix)
    Fixed "itk_component delete" so that the composite option list is
    cleaned up whenever a component is deleted.  For example, suppose
    a component is the sole contributor of -font.  When that component
    is removed via "itk_component delete", the -font option goes away
    as well.  Also fixed the handling of the itk-delete-* binding for
    the component.  When the component is removed, the binding tag
    is also removed by itk::remove_destroy_hook.

  7/5/00 (bug fix)
    Fixed the check done during object creation to avoid clobbering
    existing commands.  Previously, itcl would look for any command--
    in the local *and* global namespace--that might be clobbered.
    Now, it looks for commands only in the local namespace, since
    those are the only ones that could truly be clobbered.

  7/5/00 (cleanup)
    Removed obsolete Makefile/configure files in the various "unix"
    directories.  Makefiles and configure files now reside one level
    above, in the standard TEA place.


type: ci
user: csmith
comment:
  patch submitted by David Cuthbert, 7/7/00 to fix segfault caused by the
  following code:

      itcl::class X { }
      namespace eval X { info class }


type: ci
user: wart
comment:
  Use INSTALL_PROGRAM instead of INSTALL_DATA to install libraries so
  they get execute permission on HPUX


type: ci
user: welch
comment:
  Added Itcl_InitStubs to the main Itcl library as well as the stubs
  library for those applications (like Itk) that call Itcl_InitStub
  but are linked against the main library.


type: ci
user: davidg
comment:
  Tcl_InitStubs was using the TCL_VERSION macro set by the tcl.h header.
  Changed it to be "8.1" instead as it doesn't matter unless Itcl needs
  special/new features of the core it's header is from.  But it doesn't..  so hard
  code it for an 8.1 minimum.


type: ci
user: davidg
comment:
  9/22/00 (stubs cleanup) <davygrvy@ajubasolutions.com>
    Itcl_InitStub prototype in itcl/generic/itcl.h was getting name mangled
    by c++ compilers.  Fixed with an 'extern "C"' appropriately applied.


type: ci
user: davygrvy
comment:
  4/07/01 (bug fix) <davygrvy@pobox.com>
    Tcl's internal header, tclInt.h, in 8.4a2 got a small change in the Command
    structure that needed 2 changes in Itcl to resolve.  1) #if/#else/#endif blocks
    added in itcl_class.c and itc_ensemble.c allowing Itcl to compile. 2) added
    a global variable called itclCompatFlags that's sets a flag in Itcl_Init()
    that will modify the logic around access to cmdPtr->flags/deleted.  This
    way, any core compile will yeild a fully forward/backward compatible
    binary (correct logic set at runtime).


type: ci
user: davygrvy
comment:
  Added mutex locking around the ItclPreservedList global hash table.  This
  appears to be the only work needed to support multithreading.


type: ci
user: andreas_kupries
comment:
  2001-05-11  Andreas Kupries  <a.kupries@westend.com>

  * itk/generic/itk_archetype.c: Fixed bug 227824 (and several duplicates).


type: ci
user: davygrvy
comment:
  Removing of old cruft.  itclshXX.exe is no longer needed as itclXX.dll is a
  pure extension and loads in a vanilla shell just fine.


type: ci
user: davygrvy
comment:
  Fix for Itcl_ClassCmdResolver() not being of type Tcl_ResolveCmdProc with
  the CONST type added to param 2 in the lastest headers.  I haven't tested
  this with an older tcl.h yet.  Hopefully, this won't get messy.


type: ci
user: davygrvy
comment:
  Fix for Tcl_GetCommandName() now returning a CONST char *
  from the changes Kevein Kenny is doing to the HEAD tcl code.
  This hasn't been tested with older header files, yet.


type: ci
user: davygrvy
comment:
  changed RESOURCE_INCLUDED to RC_INVOKED. The windows resource
  compiler to preset to define this already.


type: ci
user: davygrvy
comment:
  removed #include "tclCompile.h"!
  It wasn't needed.  Those source files made no reference to anything in it.


type: ci
user: davygrvy
comment:
  fixed include paths to make sure paths to itcl.h and itk.h in the source tree
  are mentioned first to avoid a possible bug during building.


type: ci
user: andreas_kupries
comment:
  2001-05-28  Andreas Kupries <andreas_kupries@users.sourceforge.net>

  	* itcl/Makefile.in:
  	* itk/Makefile.in:
  	* iwidgets/Makefile.in: Fixed installation of manpages, added
  	  invocations of "basename" to create the correct paths into the
  	  installation directories. Fixes [#427118].


type: ci
user: davygrvy
comment:
  	* itcl/generic/itcl.h:
  	* itcl/generic/itclDecls.h:
  	* itcl/generic/itclInt.h:
  	* itcl/generic/itclIntDecls.h:
  	* itk/generic/itk.h:
  	* itk/generic/itkDecls.h:  EXTERN macro changed to support TIP#60
  	in draft form.  [Incr Tcl] will be the "successful implementation"
  	part of the TIP.


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_cmds.c (Itcl_FindObjectsCmd): fixed potential
  	crash where cmdName was never initialized


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_ensemble.c (CreateEnsemble, AddEnsemblePart):
  	made the <8.4 Tcl header version changes easier in the code.


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_methods.c (Itcl_GetMemberFuncUsage): corrected
  	casting of CONST char * to prevent compile warnings.


type: ci
user: hobbs
comment:
  	* configure:
  	* itcl/configure:
  	* itk/configure: regen'ed
  	* tcl.m4: changed MSSDK cygpath check to use pipe instead of
  	subshell to only occur at the right point.


type: ci
user: davygrvy
comment:
  	* itcl/generic/itcl.h:
  	* itcl/generic/itclDecls.h:
  	* itcl/generic/itclIntDecls.h:
  	* itk/generic/itk.h:
  	* itk/generic/itkDecls.h:
  	* itk/generic/itk.decls:  Changed redefining the macro EXTERN to making
  	a new macro called TCL_EXTERN to get this Borland problem squashed without
  	breaking all headers included after itcl.h that use the EXTERN macro.


type: ci
user: davygrvy
comment:
  	* itcl/generic/itcl_cmds.c (Itcl_FindObjectsCmd, Itcl_FindClassesCmd):
  	optimized use of Tcl_Objs to remove creation of a new ones that ended
  	just being set to the interp's result.  Let it use the result obj
  	instead.  Changed a few Tcl_GetStringFromObj() calls to Tcl_GetString()
  	when a length int* isn't used.


type: ci
user: andreas_kupries
comment:
  	* itcl/Makefile.in:
  	* itcl/generic/itclInt.decls:
  	* itcl/generic/itcl_bicmds.c:
  	* itcl/generic/itcl_class.c:
  	* itcl/generic/itcl_ensemble.c:
  	* itcl/generic/itcl_methods.c:
  	* itcl/generic/itcl_objects.c:
  	* itcl/generic/itcl_obsolete.c:
  	* itcl/generic/itcl_parse.c:
  	* itcl/generic/itcl_util.c:
  	* itk/Makefile.in:
  	* itk/generic/itk.decls:
  	* itk/generic/itk_archetype.c:
  	* itk/generic/itk_option.c: Applied SF patch #511035 (provided by
  	  Don Porter <dgp@users.sourceforge.net>) to remove warnings
  	  related to TIP 27.


type: ci
user: hobbs
comment:
          * configure:
          * tcl.m4: corrected pointer to ldAix to use Tcl version and add
          -lc for AIX builds

          * itcl/configure:
          * itcl/configure.in:
          * itk/configure:
          * itk/configure.in: corrected to use SHLIB_LD_LIBS instead of
          TCL_SHLIB_LD_LIBS.


type: ci
user: hobbs
comment:
  	* configure:
  	* configure.in:
  	* tcl.m4:
  	* itcl/Makefile.in:
  	* itcl/configure:
  	* itcl/configure.in:
  	* itcl/itclConfig.sh.in:
  	* itcl/pkgIndex.tcl.in:
  	* itcl/generic/itclStubLib.c:
  	* itcl/tests/all.tcl:
  	* itk/Makefile.in:
  	* itk/configure:
  	* itk/configure.in:
  	* itk/pkgIndex.tcl.in:
  	* itk/tests/all.tcl:
  	* config/installFile.tcl (removed):
  	* config/mkinstalldirs (removed): Massive overhaul (and
  	simplification) of the build framework to adapt to TEA 2002
  	specs.  Dynamic libraries now install in the pkglibdir (before it
  	was libdir), itclConfig.sh is properly generated and itk uses it.
  	Stubs libraries are now correctly generated and used.  You can now
  	build and test itcl/itk against built but not installed Tcl/Tk.


type: ci
user: hobbs
comment:
  	* itcl/configure:
  	* itcl/configure.in:
  	* itk/configure:
  	* itk/configure.in: redid generation of itclConfig.sh (making it
  	work on Windows broke Unix).  Retested so that it is happy on
  	Windows and Unix (calls ${CYGPATH} only when necessary).


type: ci
user: hobbs
comment:
  	* itcl/Makefile.in (install-lib-binaries):
  	* itk/Makefile.in (install-lib-binaries): ensure that dynamic
  	library is installed executable


type: ci
user: hobbs
comment:
  	* itcl/Makefile.in:
  	* itk/Makefile.in: updated to use DESTDIR for install everywhere
  	and added shell and gdb targets


type: ci
user: hobbs
comment:
  	* */configure: regend
  	* configure.in: removed prefix default calls
  	* itcl/configure.in:
  	* itk/configure.in:
  	* tcl.m4: updated of TEA base


type: ci
user: hobbs
comment:
  	* itcl/configure:
  	* itk/configure:
  	* tcl.m4: Enabled COFF as well as CV style debug info with
  	--enable-symbols to allow Dr. Watson users to see function info.
  	More info on debugging levels can be obtained at:
  	http://msdn.microsoft.com/library/en-us/dnvc60/html/gendepdebug.asp


type: ci
user: davygrvy
comment:
  Added the itcl::is command from Brett Schwarz.
  Untested by me, but looks great.
  [Patch 546343 546344 546345 546346]


type: ci
user: hobbs
comment:
  	* itcl/itclConfig.sh.in: dupped vars to have both itcl_* and
  	ITCL_* to support apps that used old-style itclConfig.sh.


type: ci
user: davygrvy
comment:
  	* itcl/generic/itclDecls.h:
  	* itcl/generic/itclIntDecls.h:
  	* itcl/generic/itclStubInit.c:  Re-gen from modified genStubs.tcl
  	for the special TCL_EXTERN macro changes that Itcl has.


type: ci
user: davygrvy
comment:
  	* itcl/generic/itcl_class.c (Itcl_ClassVarResolver,
  		Itcl_ClassCompiledVarResolver):
  	* itcl/generic/itcl_object.c (Itcl_ScopedVarResolver,
  		ItclTraceThisVar):
  	* itcl/generic/itcl_parse.c (Itcl_ParseVarResolver):
  	* itcl/generic/itclInt.decls:
  	Signiture changes to match 8.4b2 CONST'ification of the
  	Tcl_ResolveVarProc typedef. Stubs slot positions nor sizes
  	have changed -- just the sigs.


type: ci
user: davygrvy
comment:
  	* itcl/generic/itcl_obsolete.c (deleted):
  	* itcl/generic/itcl_cmds.c:  Removed old [itcl_class] command
  	and old backward support that came with it.


type: ci
user: davygrvy
comment:
  	* itcl/win/makefile.vc:
  	* itcl/Makefile.in: Removed itcl_obsolete.c from the build
  	instructions.


type: ci
user: andreas_kupries
comment:
  	* itcl/generic/itcl_class.c (ItclDestroyClassNamesp): Applied itcl
  	  patch 593112 provided by Reinhard Max
  	  <rmax@users.sourceforge.net>. This fixes the segfault in itcl
  	  bug 577719, reported by Simon White
  	  <s_a_white@users.sourceforge.net>.


type: ci
user: andreas_kupries
comment:
  	* itk/configure.in:
  	* itcl/configure.in: Changed to propagate an initial CFLAGS value
  	  to the final definition. A TEA condition (SHARED_BUILD == 1)
  	  squashed it, causing it the build system to loose the
  	  +DAportable we specify for the AS PA-RISC2.2 build host. This is
  	  a problem for _all_ TEA and TEA 2 based configure files.


type: ci
user: hobbs
comment:
  	* tcl.m4:
  	* itcl/configure:
  	* itcl/configure.in:
  	* itk/configure:
  	* itk/configure.in: move the CFLAGS definition into TEA_ENABLE_SHARED
  	and make it pick up the env CFLAGS at configure time.


type: ci
user: andreas_kupries
comment:
  	* itcl/configure.in:
  	* itk/configure.in:
  	* tclconfig/tcl.m4: Updated to newest tcl.m4, regenerated
  	  configure's.


type: ci
user: davygrvy
comment:
  full brain dump.  All CONST issues fixed except for
  Itcl_DecodeScopedCommand.  Will address this next.


type: ci
user: davygrvy
comment:
  Because the Tcl_Namespace APIs in Tcl have moved to the public space
  in 8.5, the stub slots have shifted.  This now causes Itcl when built against
  8.5 to core when loaded into 8.4.  What genius you developers!  The
  absolute first rule with Stubs is not to EVER move the slots, but now you did.
  Previously, one could build Itcl against 8.4 and load into any core 8.1+.  Now
  we can't do this.  Gee, thank you all for the support...

  Now, what we compile against is the lowest we can load into.. Sorry!  send
  heated complaints to tcl-core@lists.sf.net


type: ci
user: davygrvy
comment:
  Now builds against Tcl 8.0!  Unbeleivable, but true :)  Tcl bug #803489
  now suppressed with grotesque macros in itclInt.h


type: ci
user: davygrvy
comment:
  Uses new features of nmakehlp to get the version strings from header files
  without the use of hardcoded values.


type: ci
user: hobbs
comment:
  	* itcl/mac/MW_ItclHeader.pch (removed)       Removed Mac Classic
  	* itcl/mac/itclMacApplication.r (removed)    sources.  There were
  	* itcl/mac/itclMacLibrary.r (removed)        no longer maintained,
  	* itcl/mac/itclMacResource.r (removed)       and Tcl has dropped
  	* itcl/mac/itclMacTclCode.r (removed)        ongoing Mac Classic
  	* itcl/mac/itclStaticApplication.r (removed) support as well (in
  	* itcl/mac/pkgIndex.tcl (removed)            favor of OS X).
  	* itk/mac/MW_ItkHeader.pch (removed)
  	* itk/mac/itkMacApplication.r (removed)
  	* itk/mac/itkMacLibrary.r (removed)
  	* itk/mac/itkMacResource.r (removed)
  	* itk/mac/itkMacTclCode.r (removed)
  	* itk/mac/itkStaticApplication.r (removed)
  	* itk/mac/pkgIndex.tcl (removed)
  	* itk/mac/tclIndex (removed)


type: ci
user: hobbs
comment:
  	* Makefile.in, configure, configure.in: Update to TEA 3.1
  	* tcl.m4 (removed):              cleanup build system to only
  	* config/config.guess (removed): provide the parts that are
  	* config/config.sub (removed):   necessary to itcl and itk.
  	* config/install-sh (removed):   Update to 3.3.0 as version
  	* tclconfig/install-sh (added):  throughout.
  	* tclconfig/tcl.m4 (added):
  	* itcl/generic/itcl.h:
  	* itcl/Makefile.in, itcl/aclocal.m4, itcl/configure:
  	* itcl/configure.in, itcl/itclConfig.sh.in, itcl/pkgIndex.tcl.in:
  	* itk/Makefile.in, itk/aclocal.m4, itk/configure, itk/configure.in:
  	* itk/itkConfig.sh.in, itk/pkgIndex.tcl.in, itk/generic/itk.h:


type: ci
user: hobbs
comment:
  	* */Makefile.in (VPATH): move $(srcdir)/unix to front (unused) to
  	get around bug in autoconf that strips $(srcdir) from first
  	element when building in the source directory.


type: ci
user: hobbs
comment:
  	* itcl/itclConfig.sh.in:            must be absolute path to
  	* itcl/configure.in (itcl_SRC_DIR): configure in the srcdir.
  	* itcl/configure:                   [Bug 582951]


type: ci
user: davygrvy
comment:
  Updated code examples to use the fully qualified Itcl command names.  A
  few references to the itcl namespace command are still there and need to
  be changed at some point.


type: ci
user: davygrvy
comment:
  Tree name for commands changed from "[Incr Tcl]" to [Incr Tcl] Commands".
  Started to add exported API docs under the new "[Incr Tcl] Library
  Procedures" tree.


type: ci
user: davygrvy
comment:
  * itcl/generic/itcl_cmds.c:  Fix for [Bug 1047544]  Forward loading
  * itcl/generic/itcl_util.c:  from an 8.4 build loading into in 8.5
  is not possible at this time.


type: ci
user: davygrvy
comment:
  better fix for the bug without an ID that was never properly added to the bugDB on SF that relates to object commands created with namespace prefixes not returning the prefix


type: ci
user: hobbs
comment:
  	* itcl/configure, itk/configure: update to TEA 3.1 r1.54, removes
  	* configure, tclconfig/tcl.m4:   DBGX, updates default opt levels


type: ci
user: hobbs
comment:
  	* itcl/generic/itclInt.h:      [Bug 1115085] (dejong) Fix crash
  	* itcl/generic/itcl_bicmds.c:  with TclInitCompiledLocals reliance
  	* itcl/generic/itcl_methods.c: on bytecode ptr type


type: ci
user: hobbs
comment:
  	* itcl/Makefile.in, itk/Makefile.in (AR): use @AR@
  	* tclconfig/tcl.m4, itcl/configure, itk/configure: update to TEA 3.2


type: ci
user: dgp
comment:
  Updates to the itcl module so that it can be configured/built
  independent of the other modules in the incrTcl project.
  Includes TEA updates.


type: ci
user: hobbs
comment:
  	* Makefile.in:                           OS X patches from Steffen
  	* itcl/generic/itcl_cmds.c (initScript):
  	* itk/generic/itk_cmds.c (initScript):


type: ci
user: hobbs
comment:
  	* itcl/tests/methods.test (method-2.1):
  	* itcl/generic/itcl_methods.c (Itcl_DeleteMemberCode): free any
  	compiled local in the no arguments list case.


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_cmds.c (Initialize): remove the exactness
  	requirement on the TCL_VERSION in Tcl_PkgRequire/Tcl_InitStubs.
  	[AS Bug 67068]


type: ci
user: hobbs
comment:
  	* configure, configure.in, itcl/configure, itcl/configure.in:
  	* itk/configure, itk/configure.in, tclconfig/tcl.m4: TEA 3.6 update


type: ci
user: hobbs
comment:
  	* README, itcl/configure, itcl/configure.in: updated to 3.3.1
  	* itcl/generic/itcl.h, itcl/generic/itclInt.decls:
  	* itcl/generic/itclInt.h, itcl/generic/itclIntDecls.h:
  	* itcl/generic/itcl_bicmds.c, itcl/generic/itcl_class.c:
  	* itcl/generic/itcl_cmds.c, itcl/generic/itcl_methods.c:
  	* itcl/generic/itcl_migrate.c, itcl/generic/itcl_objects.c:
  	* itcl/generic/itcl_parse.c, itcl/generic/itcl_util.c:
  	* itk/configure, itk/configure.in, itk/generic/itk.h:
  	* itk/generic/itk_archetype.c, itk/generic/itk_option.c: Fix itcl
  	use of Tcl_CallFrame to allow itcl compiled with pre-8.5 core to
  	work in Tcl 8.5.  [Bug 1725219]


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_bicmds.c, itcl/generic/itcl_class.c:
  	* itcl/generic/itcl_cmds.c, itcl/generic/itcl_ensemble.c:
  	* itcl/generic/itcl_methods.c, itcl/generic/itcl_objects.c:
  	* itcl/generic/itcl_parse.c, itcl/generic/itcl_util.c:
  	* itk/generic/itk_archetype.c, itk/generic/itk_cmds.c:
  	* itk/generic/itk_option.c: Reduce use of potentially dangerous
  	Tcl_AppendStringsToObj for possibly shared interp result obj.
  	[Bug 227814, 1468370]


type: ci
user: hobbs
comment:
  	* README, configure, configure.in:
  	* itcl/configure, itcl/configure.in, itcl/generic/itcl.h:
  	* itk/configure, itk/configure.in, itk/generic/itk.h: updated to
  	3.4 as itcl handles M.m more cleanly


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_class.c (Itcl_FindClassNamespace): harden the
  	lookup to use short-circuit. [Bug 1156352]


type: ci
user: hobbs
comment:
  	* itcl/tests/basic.test:
  	* itcl/generic/itcl_parse.c (Itcl_ClassCmd): handle "" class name
  	properly. [Bug 1156343] (dejong)


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_class.c, itcl/generic/itcl_cmds.c: code cleanup
  	* itcl/generic/itcl_methods.c, itcl/tests/basic.test: [Bug 1156326]


type: ci
user: hobbs
comment:
  	* itcl/library/itcl.tcl: fix for itcl's tclIndex file generation
  	to include "imported" itcl commands, like configbody. (allaert)


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_class.c (Itcl_HandleClass): Make #auto handling
  	* itcl/tests/basic.test:                        code unicode-aware.


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_cmds.c (Initialize):              Resolve
  	* itcl/generic/itcl_util.c (Itcl_DiscardInterpState): [Bug 1047544]
  	(Itcl_RestoreInterpState, Itcl_SaveInterpState):      with fix that
  	* itcl/generic/itclInt.h: has late-8.4 support for stubs x-version
  	support of the state APIs.


type: ci
user: msofer
comment:
  	* itcl/generic/itcl_parse.c (Itcl_ClassCommonCmd): plug leak
  	of pre-existing variables being declared as common


type: ci
user: msofer
comment:
  	* itcl/generic/itclInt.h:
  	* itcl/generic/itcl_class.c:
  	* itcl/generic/itcl_cmds.c:
  	* itcl/generic/itcl_methods.c:
  	* itcl/generic/itcl_migrate.c:
  	* itcl/generic/itcl_objects.c:
  	* itcl/generic/itcl_parse.c:
  	* itcl/generic/itcl_util.c:  Adaptation to Tcl's VarReform. When
  	compiled against 8.4 headers, itcl/itk will also run under 8.5.
  	Patch from [Bug 1766617]


type: ci
user: davygrvy
comment:
  Small change to how compiler flag are built-up.  Stubs library doesn't
  have stuff it doesn't need and now take $(OPTDEFINES) from the top
  rules.vc


type: ci
user: hobbs
comment:
  	* itcl/library/itcl.tcl (itcl_class, itcl_info): create auto_index
  	fallbacks of classic itcl v2 itcl_class and itcl_info calls.  This
  	handles the public/protected change in itcl::class definitions.


type: ci
user: hobbs
comment:
  	* itcl/library/itcl.tcl (::itcl::itcl_class): correct compat
  	definition to use right declaration for public/protected variable.


type: ci
user: hobbs
comment:
  	* itcl/generic/itcl_methods.c (Itcl_CreateMemberCode): ensure that
  	we init all Command structure to 0 for version struct variance.


type: ci
user: msofer
comment:
  	* itcl/library/itcl.tcl: patch Tcl's ::unknown at load time, as
  	Tcl removed the special handling that we need for [namespace code]
  	[Patch 2040295]


type: ci
user: msofer
comment:
  	* itcl/generic/itcl_bicmds.c: replace interp->result with
  	Tcl_GetStringResult (thanks apw)

  Also added missing ChangeLog entry for older commit.


type: ci
user: hobbs
comment:
  	* itcl/library/itcl.tcl (::unknown): correct unknown redefinition
  	to support pre-8.5 interps. [Bug #2040295]


type: ci
user: andreas_kupries
comment:
  	* itcl/generic/itcl_cmds.c: Handle TIP#336 addition of API to access
  	* itcl/generic/itcl_ensemble.c: interp->errorLine.
  	* itcl/generic/itclInt.h:
  	* itcl/generic/itcl_methods.c:
  	* itcl/generic/itcl_parse.c:


type: ci
user: hobbs
comment:
          * itcl/Makefile.in, itcl/configure, itcl/configure.in:
          * itk/Makefile.in, itk/configure, itk/configure.in:
          * configure, configure.in: update to TEA 3.9, regen with ac-2.59


type: ci
user: hobbs
comment:
          * itcl/Makefile.in, itk/Makefile.in (TCL_TOP_DIR_NATIVE): no longer
          necessary for private header builds


type: ci
user: hobbs
ecomment:
  	* itcl/generic/itcl_ensemble.c (HandleEnsemble): fix mem leak in
  	itcl ensemble handling. [AS Bug 86108, SF Bug 1503328]

comment:
  	* itcl/generic/itcl_ensemble.c (HandleEnsemble): fix mem leak in
  	itcl ensemble handling. [AS Bug 86108, SF Bug 1503328]


type: ci
user: wiede
comment:
  fixes for use of tclooConfig.sh (which I have built at the moment by hand). Will ask dkf to provide one


type: ci
user: wiede
comment:
  bracket use of CallFrame resolvers and fix in ensemble WrongNumArgs with #ifdef ITCL_USE_MODIFIED_TCL_H


type: ci
user: wiede
comment:
  removal of some no longer needed functions. Intergration of the last script parts. Again some beautifying. Changing interp.test back to original version, without script files in the package, the changes are no longer needed.


type: ci
user: wiede
comment:
  code for freeing of structures for classes (fixing memory leaks) additional code as well as some beautifying


type: ci
user: wiede
comment:
  new commands ::itcl::struct, ::itcl::nwidget, ::itcl::addoption and ::itcl::addcomponent
  restructuring of some functions for options to be able to use them without ItclWidget package
  these are now also used in ::itcl::struct and ::itcl::nwidget
  ::itcl::struct and ::itcl::nwidget build the base for a prototype implementation
  of NexTk based on megaimage etc. from George Peter Staplin using itcl without using Tk


type: ci
user: wiede
comment:
  rename :.itcl::struct to ::itcl::eclass (extended class). renaming if _IS_ defines to names without _IS_. Fixes for ItclMapProcCmd to use Itcl_ParseNamespPath for correct working.


type: ci
user: wiede
comment:
  fixing of special configure and chain method problems caused by use of Itcl_ParseNamespPath in the fix of yesterday


type: ci
user: wiede
comment:
  use itcl_options instead of options for storing all options of a eclass class.
  a lot of changes to *Configure *Cget and itclObject.c to make that work


type: ci
user: wiede
comment:
  some fixes for configure and cget. Renamed ItclWidgetConfigure to ItclExtendedConfigure,
  ItclWidgetCget to ItclExtendedCget and ::itcl::eclass to ::itcl::extendedclass


type: ci
user: wiede
comment:
  make itcl specific info exists command, set object name before constructor
  so that can be used in the constructor already (needed for nktWidget)


type: ci
user: wiede
comment:
  fix for direct execution of class procs without object and fixes for making tests with new Tcl HEAD working


type: ci
user: wiede
comment:
  fixes for use of less Migrate2Tcl stuff and a fix for calling overloaded functions, with special access handling


type: ci
user: wiede
comment:
  changes for use of ::itcl::intrnal::infos variables. That makes it easy to place all the stuff into a different namespace if necessary without even the need of recompiling.
  That could also be used for having additionally a mostly compatible version to the original itcl syntax.


type: ci
user: wiede
comment:
  changes for use of ::itcl::internal::infos::* variables for initializing the namespaces used and new code for destructor, constructor etc.


type: ci
user: wiede
comment:
  some streamlining for delaying deletion of class/object namespace as long as they are used and code for itcl::body handling (changeClassMemberFunc)


type: ci
user: wiede
comment:
  This is the first NRE enabled version of itcl-ng with TclOO integrated into
  Tcl core.
  It is about revision 8.6.2a of Tcl core.


type: ci
user: wiede
comment:
  reordering in itcl.decls, new files itclResolve2.c itclVCInt.h itclVarsAndCmds.c itclVarsAndCmds.h for NEW_PROTOTYPE_RESOLVER, a lot of small fixes


type: ci
user: wiede
comment:
  remove -DUSE_NON_CONST in CFLAGS, not needed as this will not be compiled against Tcl 8.3 headers. This avoids need for using CONST84 macro.


type: ci
user: wiede
comment:
   fixed C++ style comments, fixes for stubs uses (thanks to Paul Obermeier) in itclBase.c And a lot of changes and new code for ::itcl::type


type: ci
user: wiede
comment:
  rename of hullinstall to installhull and componentinstall to installcomponent
  adding flag fro handling of ITCL_WIDGETADAPTOR and some code for support
  of ::itcl::widgetadaptor


type: ci
user: wiede
comment:
  renaming of hullinstall to install hull and componentinstall to installcomponent
  new code and fixes for ::itcl::widgetadaptor


type: ci
user: wiede
comment:
  again a lot of fixes and new code for ::itcl::widget and ::itcl::widgetadaptor
  to make additional tests running.


type: ci
user: wiede
comment:
  again fixes and new code for making additional tests for :.itcl::widget
  and ::itcl::widgetadaptor running.


type: ci
user: wiede
comment:
  rearranging of tests and now hijacking of object name in widgetadaptors
  works correctly, so no longer a workaround necessary


type: ci
user: wiede
comment:
  fixes and a lot of new code for implementing the first part of the info
  commands for ::itcl::type, ::itcl::widget and ::itcl::widgetadaptor
  (the ones taken over from snit).


type: ci
user: wiede
comment:
  fix for executing uplevel 1 destroy ... if the class has no destroy command.
  This is necessary as itk expects to execute ::destroy when destroy is called.
  So the builtin destroy command cannot be used here but only for snit widgets.


type: ci
user: wiede
comment:
  fixes for making some of the failing tests running in info and handling
  of caching methods, which have succeeded in being called when delegated
  with * delegation.


type: ci
user: wiede
comment:
  new code for instrumention for checking releasing of classes and objects
  as weel as variables, functions, options etc.
  A lot of fixes for cleaning up of classes and objects at the end of their
  life time (first round of memory leak business).


type: ci
user: wiede
comment:
  removed some debugging stuff and added a cleaup call to delete the ensemble
  at the end in ensemble.test


type: ci
user: wiede
comment:
  set namespace for ItclExtendedConfigure validatemethod and check for
  filled stackTrace var in itclParse.c errorMessage output


type: ci
user: wiede
comment:
  new commands createhull and setupcomponent. Moved ::itcl::widget and
  ::itcl::widgetadaptor to itcl from itclWidget using new library file
  library/itclWidget.tcl to initialize package itclWidget.
  Maybe in the long range itclWidget can disappear completely and be
  implemented in library/itclWidget.tcl only.
  New file library/itclHullCmds.tcl for use in itcl::extendedclass
  to support createhull and setupcomponent commands.


type: ci
user: wiede
comment:
  new command keepcomponentoption a la keep command in itk when using
  itk_component add. Needed for itclWidgets package.


type: ci
user: wiede
comment:
  new command widgetDeleted use vi a comamnd trace when the itcl_hull widget
  is destroyed, to delete the appropriate object


type: ci
user: wiede
comment:
  renamed iwidgets strings to itcl::widgets and options don't include clientdata
  in itcl-ng, so the number options is 39 instead of 40


type: ci
user: wiede
comment:
  add constraints to tests which either need a frq implemented in Tcl
  or are failing because of a bug in TclOO


type: ci
user: wiede
comment:
  renamed some test names from basic to delete, make constraints for one test
  which uses a feature only in itcl3.4 (after deletion of object data stays)


type: ci
user: wiede
comment:
  added tests for info method, info typemethod, info typevariable
  info delegated method info delegated typemethod


type: ci
user: wiede
comment:
  fully implemented info method, info typemethod, info typevars,
  info typevariable, info delegated method and info delegated typemethod


type: ci
user: wiede
comment:
  use the objects class for resolving only for the this variable!!
  otherwise use the classes variable for the case that the variable
  is named identical ind different classes of the class hierarchy


type: ci
user: wiede
comment:
  added proc autoload to test 2.5 as test 2.4 is not used because of a constraint
  so there is no proc autoload in that case. Also added bug number to the
  constraint of test 2.4


type: ci
user: dgp
comment:
  Presence of ::tcltest namespace does not imply that ::tcltest::test has
  been [namespace import]ed into ::.  The whole cultish prelude is out
  of date.  Modernizing...


type: ci
user: wiede
comment:
  cleanup constructor stack in case of failure otherwise the next object is
  using these entries additionally with structures no longer existant!!


type: ci
user: wiede
comment:
  split up some code in extended configure to built an own function
  and fixes for plain configure for ::itcl::extendedclass handling
  fix in extendedcget


type: ci
user: wiede
comment:
  finally found the right place to fix a segfault which happened onyly with
  itclWidgets modules when the destructor of an object was called twice,
  which cannot be prevented. There was no correct check on the right place.
  The check on the wrong place is now removed and the correct check on the right
  place is no done.

  fixed some error message texts for traced variables


type: ci
user: wiede
comment:
  check for existance of object when writing to trace vars. In itclWidgets
  there are some places where there is an after idle and sometimes the object
  on a fast machine is already destroyed in a test, when the after idle
  code is executed


type: ci
user: wiede
comment:
  use only the tail of the class name as clas for the widget.
  Try to create itcl_hull and itcl_interior, if not existant.
  That does not yet work because of itclResolve does no more lookup
  for variables it can not determine at compile time.


type: ci
user: wiede
comment:
  added datarootdir = @datarootdir@ and datadir = @datadir@ to Makefile.in
  to satisfy autoconf 2.61 and therefore a new configure


type: ci
user: wiede
comment:
  cannot remove variables from class or object when they are unset. They
  can only be removed when tearing down class or object, otherwise there is
  for example a problem when unsetting an array and using it afterwards again
  as the variable is then no longer known in the class/object.


type: ci
user: wiede
comment:
  at the moment we have to catch setting the options, as the info command
  returns all options and not only the class specific ones


type: ci
user: davygrvy
comment:
  	* win/makefile.vc:     Itcl 4.0 is now closer to building
  	* win/nmakehlp.c:     but the work isn't finished. the
  	* win/rules.vc (new): source apparently has export
  	* win/itcl.rc (new):     collisions with internal declarations
  	* win/rc/itcl.rc (deleted) of the same name.


type: ci
user: davygrvy
comment:
  	* generic/itclBase.c:
  	* generic/itclBuiltin.c:
  	* generic/itclClass.c:
  	* generic/itclCmd.c:
  	* generic/itclEnsemble.c:
  	* generic/itclHelpers.c:
  	* generic/itclInfo.c:
  	* generic/itclMethod.c:
  	* generic/itclMigrate2TclCore.c:
  	* generic/itclObject.c:
  	* generic/itclParse.c:
  	* generic/itclResolve.c
  	* generic/itclStubs.c
  	* generic/itclTclIntStubsFcn.c:
  	* win/makefile.vc:
  		Changes to allow compiling on windows with
  		MSVC++.  Double declaration of internal
  		functions not yet repaired.  DOESN'T
  		BUILD YET with makefile.vc.


type: ci
user: davygrvy
comment:
  	* generic/itclMigrate2TclCore.h:    All build errors squashed
  	* generic/itclStubLib.c:
  	* generic/itclTclIntStubFcn.h:
  	* win/makefile.vc:


type: ci
user: davygrvy
comment:
  	* generic/itcl2TclOO.h:  More cleanups changing the last of the
  	* generic/itclClass.c:     'EXTERN' macros to just be 'extern' as we
  	* win/.cvsignore:       aren't importing the declaration, just sharing it
  	* win/itcl.rc:           internally.  This caused warnings on windows during
  	* win/makefile.vc:   the link stage as it was getting confused about 'why
  	* win/nmakehlp.c:   are you importing an internal function?'
  	* win/rules.vc:


type: ci
user: wiede
comment:
  added dummy functions Itcl_BiInfoHullTypesCmd, Itcl_BiInfoWidgetsCmd,
  Itcl_BiInfoWidgetclassesCmd and Itcl_BiInfoWidgetadaptorsCmd, which are
  overwritten when itclWidget.tcl is sourced when necessary.


type: ci
user: wiede
comment:
  added ItclSetHullWindowName and ItclCheckSetItclHull, needed for final
  integration of itclWidget package. Added dicts variables for use by
  itclWidget classes and for future replacement of itclInfo.c by a tcl script.
  Added a HashTable for the class types.


type: ci
user: wiede
comment:
  this is for adding the missing comments for the last commit.
  Removed ItclWidgetInfo typedef and the function pointers. These are no
  longer necessary as the itclWidget package is now fully integrated.
  New definitions of the *Dict*Info functions for setting the according
  dictionary variables


type: ci
user: wiede
comment:
  added function for setting of dict variables to be used by itclWidget
  classes and in the future for being able to replace itclInfo.c by
  a Tcl script


type: ci
user: wiede
comment:
  added calls to Dict*Info functions for use by itclWidget classes and
  future use by a scripted version (in Tcl) of itclInfo.c
  Added genericclass command to allow easier parsing of a class definition
  in the future (maybe by a scripted version)


type: ci
user: wiede
comment:
  replaced calls to itclWidget packaged by calls to the scripted functions
  in itclWidget.tcl. ItclWidget package is no longer needed.


type: ci
user: wiede
comment:
  itclWidget.tcl has been filled with functions that replace the itclWidget
  package where they where written in C. Therefor the itclWidget package is no
  longer needed.
  itclHullCmds.tcl has similar functions as in itclWidget.tcl but to be used
  by ::itcl::extendedclass, which will be used for a modified version of
  Iwidgets called itclWidgets, which is completely written with itcl-ng
  without the need to use itk.


type: ci
user: wiede
comment:
  bracket include of malloc.h with #ifdef ITCL_PRESERVE_DEBUG, as it is only used
  for debugging and does not work on OSX. Have to find a portable solution
  in the future using memory.h, but I first have to learn how to use that.
  Using #ifdef ITCL_PRESERVE_DEBUG I can again use the malloc and free calls
  in the debugging stuff to not conflict with ckalloc and ckfree, which is
  check in these functions


type: ci
user: davygrvy
comment:
  2009-05-09  David Gravereaux <davygrvy@pobox.com>

  	* generic/itclDecls.h:   Better C++ support.
  	* generic/itclStubLib.c: #define USE_TCL_STUBS is required


type: ci
user: das
comment:
  	* configure.in:		check for intptr_t type and include sys/types.h
  	* generic/itclInt.h:	to make INT2PTR & PTR2INT macros actually work.
  	* itclng/generic/itclngInt.h:


type: ci
user: wiede
comment:
  added Itcl_GetUplevelCallFrame and Itcl_ActivateCallFrame functions
  same as in Itcl3.4. They are needed to call the itk_component command
  with the suitable call frame as this is needed for access to the
  proc local vars. This was the fix for SF bug #2840994


type: ci
user: wiede
comment:
  fixed bug which prevented correct error reporting when there was a problem
  when creating an object, also fixed to use correct NRE calling


type: ci
user: wiede
comment:
  if during call of constructor, when building an object there were multiple
  recursive calls on CallItclObjectCmd and errors have not been propagated. Now
  hadConstructorError field in ItclObject struct is used for that purpose.


type: ci
user: wiede
comment:
  undo initializing startClsPtr, is initialized from caller and makes
  problems, if initialized a second time.


type: ci
user: wiede
comment:
  again a place where a constructor error was not reported.
  allow call of delegated methods in constructor for ::itcl::extendedclass


type: ci
user: wiede
comment:
  call ItclInitExtendedClassOptions a second time after construtor call
  only for extendedclass relevant


type: ci
user: wiede
comment:
  iintegrated patches prepared  by Reinhard Max and a fix for info complete also reported by Reinhard Max


type: ci
user: dgp
comment:
          * itclTclIntStubsFcn.c: Remove attempt to return value from
                                  Itcl_ResetRewriteEnsemle() which is declared
                                  as returning (void).  Thanks to Andreas
                                  Kupried for reporting the compiler errors.


type: ci
user: dgp
comment:
          * itclInt.h:            Add #ifdef guards to attempt inclusion of
                                  a unistd.h header file only where one exists.


type: ci
user: wiede
comment:
  fixes for incr tcl bug #2983809 and better error message for cases like:
  use of public mthod ... instead of public method ... etc.


type: ci
user: msofer
ecomment:
  	* itcl/generic/itcl2TclOO.c (Itcl_NRRunCallbacks):
  	Tcl's [Patch 3072080] (a saner NRE): TclNRRunCallbacks lost one
  	argument.

comment:
  	* itcl/generic/itcl2TclOO.c (Itcl_NRRunCallbacks):
  	Tcl's [Patch 3072080] (a saner NRE): TclNRRunCallbacks lost one
  	argument.


type: ci
bgcolor: #c0c0f0
user: dgp
comment:
  Restore compatibility with the latest TEA 3.9 revisions.
  Make ensemble-1.11 test flexible enough to pass with Tcl 8.4 and 8.5.


type: ci
bgcolor: #c0c0f0
user: dgp
comment:
  3357720 - Prevent body sharing of the "initialization code" of constructors.
  This satisfies the requirements of TclProcCompileProc.  Failure to do that
  has been making tests chain-2.* fail in Tcl 8.6 interps.


type: ci
bgcolor: #c0c0f0
user: dgp
comment:
  Add protection in package index script to prevent [package require Itcl]
  from attempting to [load] into a Tcl interp that has Tcl version too old
  for Itcl_Init() to accept.


type: ci
bgcolor: #c0c0f0
user: dgp
comment:
  3358283 Rewrite of trickery needed to support Tcl changes to its internal
  *CallFrame structs from version to version.


type: ci
user: jan.nijtmans
comment:
  Make stub table symbols and pointers const
  Remove Itcl_(Safe)Init from Stub table
  Remove unnecessary includes, and consistent use of include <file> resp include "file"


type: ci
bgcolor: #c0c0f0
user: jan.nijtmans
comment:
  Fix for bug [ incrtcl-Bugs-3398008 ] incrtcl-Bugs-3398008 Seg. fault accessing itcl var. which name is a proc


type: t
user: wiede
brief: Fixed ticket [36577626c3].
comment:
  Fixed ticket [36577626c3]: <i>can not create objects inside class namespace</i> plus 3 other changes


type: ci
user: arnulf
comment:
  Fix for allowing access to protected class variables not only from top level context.
  Reported by rene zaumseil for his itk emulation.


type: t
user: wiede
brief: Fixed ticket [d4ee728817].
comment:
  Fixed ticket [d4ee728817]: <i>Problems on info command from inside itcl code</i> plus 3 other changes


type: t
user: wiede
brief: Ticket [5775d7979a]: 3 changes
comment:
  Ticket [5775d7979a] <i>IWidget dateentry Calender appears off screen</i> status still Open with 3 other changes


type: ci
user: arnulf
comment:
  make the info command call in clazzUnknownBody a list to avoid problems with class names
  containing spaces


type: ci
bgcolor: #c0c0f0
user: andreask
ecomment:
  Fix heap corruption when an itcl method or proc is replaced by a Tcl proc, by nulling the reference to the removed itcl access command instead of leaving a dangling pointer behind.

comment:
  Fix heap corruption when an itcl method or proc is replaced by a Tcl proc, by nulling the refeence to the removed itcl access command instead of leaving a dangling pointer behind.


type: ci
user: jan.nijtmans
comment:
  Add functions to the (internal) stub table which are used in itclWidgets: First step to make itclWidgets compilable using stubs.


type: ci
user: jan.nijtmans
comment:
  Call the public function Itcl_GetInstanceVar() in stead of the private ItclGetInstanceVar() everywhere, as the latter is not exported from Itcl's stub table


type: ci
user: arnulf
comment:
  moved keepcomponentoption from itclBuiltin.c to here as Tcl code. renaming of removecomponentoption to ignorekomponentoption


type: ci
user: jan.nijtmans
comment:
  update to latest TEA (configure script not re-generated yet). 
  Eliminate deprecated Tcl_DStringTrunc calls.


type: ci
user: arnulf
comment:
  Fixes for compiler warnings. Added 3 internal builtin commands addoptioncomponent,
  removeoptioncomponent, renameoptioncomponent for extendedclass.


type: ci
user: arnulf
comment:
  Removed unused code, added some code for BiInitOptionsCmd also that code seems to be no
  longer used instead a Tcl implementation of that code is used at least on some places.


type: ci
user: dgp
comment:
  Add Preserve/Release protections so that ItclFreeClass isn't called before
  the needs of ItclDeleteFunction are satisfied.  Stops many of the segfaults
  observed in a mem-debug build.


type: ci
user: jan.nijtmans
comment:
  Add support for UnixWare in itclWidgets.
  Don't let itclWidgets 4.0.0 depend on Itcl 4.0.1 only, it should work with Itcl 4.0.0 too.
  In pkgIndex.tcl, check for Tcl8.6/Tk8.6/Itcl4.0 before trying to load itclWidgets shared library.


type: ci
user: dgp
comment:
  Fix remaining segfaults.  Now the lingering question is whether these
  changes have created (new) memory leaks?


type: ci
user: arnulf
comment:
  Fixes for compiler warnings. Added 3 internal  builtin commands addoptioncomponent,
  removeoptioncomponent, renameoptioncomponent for extendedclass.


type: ci
user: arnulf
comment:
  Changed code to avoid some compiler warnings.
  Added code for extendedclass variable itcl_option_components.


type: ci
user: arnulf
comment:
  renaming of removecomponentoption to ignorekomponentoption, removing of addcomponentoption
  move code for keepcomponentoption from itclBuiltin.c as Tcl code to itclHullCmds.tcl.


type: ci
user: arnulf
comment:
  changed code to avoid some compiler warnings. Added code for extendedclass variable itcl_option_components.


type: ci
user: dgp
comment:
  Work in progress tracking down lifetime management issues with
  ProcedureMethods, etc as used by Itcl.


type: ci
user: jan.nijtmans
comment:
  remove macro, which would prevent Itcl-extensions (like Itk/Iwidgets) to run with any other Itcl version. This was meant only for the Beta period.


type: ci
user: dgp
comment:
  Revised the new fix for bug 243 to something gentler and less potentially
  far-reaching.  Testing desired.


type: t
user: dgp
brief: Ticket [be0a32b240]: 3 changes
comment:
  Ticket [be0a32b240] <i>myEnsembles hash table entries memleak</i> status still Closed with 3 other changes


type: t
user: dgp
brief: Ticket [be0a32b240]: 3 changes
comment:
  Ticket [be0a32b240] <i>myEnsembles hash table entries memleak</i> status still Open with 3 other changes


type: t
user: dgp
brief: Ticket [be0a32b240]: 5 changes
comment:
  Ticket [be0a32b240] <i>myEnsembles hash table entries memleak</i> status still Open with 5 other changes


type: ci
user: dgp
comment:
  Completely different fix for SF bug #243 that has the benefit of not
  completely breaking Itk and Iwidgets. :)


type: ci
user: dgp
comment:
  Restrict the workaround for TclOO 1.0.2 bug to only be used when it's
  detected we're actually working with TclOO 1.0.2.  Otherwise, use of
  the workaround when unwarranted leads to a mem leak.


type: ci
user: arnulf
comment:
  Added itclTestRegisterC.c its code is only included, if ITCL_DEBUG_C_INTERFACE is defined in Makefile!


type: ci
user: arnulf
comment:
  use different trace handlers for this, win, type, self and selfns.
  Therefor a lot of additional code and some fixes.


type: t
user: wiede
brief: Closed ticket [5775d7979a].
comment:
  Closed ticket [5775d7979a]: <i>IWidget dateentry Calender appears off screen</i> plus 4 other changes


type: ci
user: jan.nijtmans
comment:
  Use Tcl_EvalEx() in stead of Tcl_Eval(). See: [http://core.tcl.tk/tcl/artifact/35f1f7e18a?ln=137-140]


type: t
user: wiede
brief: Closed ticket [36577626c3].
comment:
  Closed ticket [36577626c3]: <i>can not create objects inside class namespace</i> plus 3 other changes


type: t
user: wiede
brief: Closed ticket [d4ee728817].
comment:
  Closed ticket [d4ee728817]: <i>Problems on info command from inside itcl code</i> plus 3 other changes


type: ci
user: jan.nijtmans
comment:
  Allow (dummy) --enable-64bit on Cygwin64. Add --enable-threads (defaults to TRUE with Tcl 8.6 anyway)


type: ci
user: jan.nijtmans
comment:
  fix for SF bug #249: itclIntStubsPtr' : 'int' differs in levels of indirection from 'const ItclIntStubs *


type: ci
user: jan.nijtmans
comment:
  Revert [bb07fc6f1f408356], it causes crashes (bisected it, the result was this commit! No idea why! Help!). 
  With this revert all test-cases pass again, but I don't know the code good enough to judge what's really going on here.


type: ci
user: jan.nijtmans
comment:
  Fix [http://core.tcl.tk/tcl/info/426679ef7d|426679ef7d]: Having man.macros after .TH breaks rendering on OpenBSD and possibly others.


type: t
user: jan.nijtmans
brief: Ticket [9a1bd507bd]: 3 changes
comment:
  Ticket [9a1bd507bd] <i>Itcl built with --disable-shared is broken</i> status still Closed with 3 other changes


type: ci
user: jan.nijtmans
comment:
  Workaround for [http://sourceforge.net/p/mingw/bugs/2065/|MinGW bug #2065]: "gcc --shared" links with libgcc_s_dw2-1.dll when using 64-bit division in C


type: ci
user: jan.nijtmans
comment:
  Make itclStubsPtr and itclIntStubsPtr in the Itcl stub-library MODULE_SCOPE, so they will not be re-exported when linked into a DLL.


type: t
user: jan.nijtmans
brief: Closed ticket [91511d630d].
comment:
  Closed ticket [91511d630d]: <i>Itcl 4.0 compiled with Tcl 8.6.1 headers doesn't run in Tcl8.6.0</i> plus 5 other changes


type: ci
user: jan.nijtmans
ecomment:
  Update to latest TEA.
  Eliminate use of EXTERN and TCL_STORAGE_CLASS: A tiny step directed at making Itcl compile/run with "novem" (not complete yet)

comment:
  Update to latest TEA.
  Eliminate use of EXTERN and TCL_STORAGE_CLASS: A tiny step directed at maing Itcl compile/run with "novem" (not complete yet)


type: t
user: jan.nijtmans
brief: Ticket [9a1bd507bd]: 7 changes
comment:
  Ticket [9a1bd507bd] <i>Itcl built with --disable-shared is broken</i> status still Open with 7 other changes


type: ci
user: jan.nijtmans
comment:
  Put extern "C" guard around stub table definition: In C++, calling convention on functions through function pointers might be influcenced by that. See for example: [http://en.wikipedia.org/wiki/Compatibility_of_C_and_C++]
  On SUN's C++ compiler this might generate the warning:  Warning (Anachronism): Formal argument fn_ptr of type ..... in call to ... is being passed ....


# ticket

tkt_uuid: 5775d7979aba9a76c9e60babac7eb48f41e7aa54
type: Code_Defect
status: Closed
priority: Immediate
severity: Cosmetic
foundin: 4.0.2
private_contact: 59b8126a5317e750499fddee63d646644f6a1a75
resolution: Rejected
title: IWidget dateentry Calender appears off screen
comment:
  In file: 
  C:\Tcl\lib\teapot\package\tcl\lib\Iwidgets4.0.2\scripts\dateentry.itk  (this is
  the install path of the File)

   In Method
   itcl::body iwidgets::Dateentry::_popup
   
   Right around the following comment
   
       # The icon button will be used as the basis for the position of the
       # popup on the screen.  We'll always attempt to locate the popup
       # off the lower right corner of the button.  If that would put
       # the popup off the screen, then we'll put above the upper left.
      
   
   This chunk of code calculates the position to place the popup calender 
   that is associated to the widget. the logic accounts for the widget going off the screen to the right, by placing above the upper left. If does not check to see if upper left would put the popup off the screen. I am running into that exact scenario. I am using the widget on a laptop with a small screen and low resolution (sad I know :( ) and the application is maximized. This results in no room to the right or top, and I end up with the months being cut off on the calender popup. The widget should check and make sure there is room to place to popup above the upper left and if there is no room place it bottom right (or something like that)

  <hr /><i>wiede added on 2012-03-25 08:51:53 UTC:</i><br />
  IWidget is not part of itcl 4.0 so I think the bug is not in the right bug tracker here


tkt_uuid: 36577626c340ad59615f0a0238d67872c009a8c9
type: Code_Defect
status: Closed
priority: Immediate
severity: Critical
foundin: 4.0b7
private_contact: 9555fa42f4a36780aff7e37d8f4b34c2bbc47faf
resolution: Fixed
title: can not create objects inside class namespace
comment:
  Using version 4.0b7 and the following code snippet:

  package req Itcl
  ::itcl::class ::a {
    constructor args {puts $args}
    destructor {}
  }
  ::a ::a::b

  I got the error message:

    no valid method implementation

  The code was working in itcl 3.4.

  <hr /><i>wiede added on 2012-02-25 16:00:01 UTC:</i><br />
  was a special case when having the object in a child namespace of the class.


tkt_uuid: 900dc81e3a567bae3b1107aaad2592dce5dd43a0
type: Code_Defect
status: Closed
priority: Immediate
severity: Critical
foundin: 4.0b8
private_contact: 9555fa42f4a36780aff7e37d8f4b34c2bbc47faf
resolution: Open
title: itcl chain does not work
comment:
  The chain command is executed but does nothing.
  For an example see the code at: http://wiki.tcl.tk/17161

  itcl3.4 work as expected

  <hr /><i>arnulf added on 2013-02-17 10:59:50 UTC:</i><br />
  seems to be the same as SF bug #237.
  There is a fix in fossil which will go into next version 4.0.1.


tkt_uuid: d4ee728817f951d0b2aa8e8f9b030ea854e92c9f
type: Code_Defect
status: Closed
priority: Immediate
severity: Critical
foundin: 4.0b5
private_contact: 6dcdfb17584a679c524d6281a3ea7a6353e28944
resolution: Fixed
title: Problems on info command from inside itcl code
comment:
  Try this code

  package require Itcl
  itcl::class myclass {
  	proc myproc {} {
  		set a something
  		puts "WHY ? [info exist a]"
  		puts "WHY ? [::info exist a]"
  	}
  	public method run {} {
  		myproc
  	}
  }
  myclass tryme
  tryme run

  <hr /><i>wiede added on 2012-03-25 08:50:02 UTC:</i><br />
  could be fixed with tailcall ::info::exists in the code


