1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672
|
%***********************************************************************
%***********************************************************************
%***********************************************************************
\chapter{Release Notes}
\index{release notes}
\V\ is usually found in one of several archives: \code{v-1.00.tar.gz},
the full distribution of all current versions of V; \code{vx-1.00.tar.gz},
the X only distribution; and \code{vwin100.zip}, the MS-Windows only distribution.
Note the version (1.00) will change as V is updated.
\section {X Window System}
\index{X Window System}
The current X implementation of \V\ uses the Athena widget set with
some modified versions of some widgets from the Xaw3d widget set.
The code has about 95\% of what is needed to work on Motif, but this
effort has been largely abandoned. If someone out there \emph{really} wants
Motif, please work on it.
The latest plan is to port \V to the \code{gtk} tool kit for Linux. Eventually,
the Athena version will be partially abandoned (new features provided by
gtk will not be added to the Athena version), and \code{gtk} will become
the new \V standard.
\subsection*{Directories}
The \V\ directory structure has been designed to allow you to either
install \V\ in a personal directory, or at a higher system level.
By defining an appropriate search path in the \code{Makefile}, your
applications can find the required \V\ files.
You should download the standard distribution file
\code{vx-1.00.tar.gz}\footnote{Or whatever the latest version is...},
which is a \code{gzip} GNU Zipped tar file (or the full combined version,
\code{v-1.00.tar.gz}). After you unzip the file
(with \code{gunzip}, or the -z switch on some versions of \code{tar}),
you can extract the file to wherever you want it. It will build
a \code{/v} subdirectory from the directory containing the \code{vx-1.00.tar}
file. The file hierarchy is:
\begin{description}
\item[/v] The main \V\ directory.
\item[/v/appgen] V application generator program.
\item[/v/bccide] MS-Windows build files for Borland C++. (Not included
in X only distribution.)
\item[/bmp2vbm] Source for a simple MS-Windows and OS/2 \code{.bmp} bitmap
format to \code{.vbm} V bit map format converter.
\item[/v/bin] The \code{/bin} directory is used to hold the binaries
of \V\ sample programs. No binaries are included on the distribution,
but at least the subdirectories \code{/intel} for Linux and \code{/sun4} for
Suns are included. There may be other subdirectories for other architectures.
\item[/v/doc] The sources for \V\ documentation. The documentation
is in \LaTeX format. The standard distribution includes only the source
\LaTeX files. Other versions, including dvi and Postscript, are available from
the \V\ ftp site.
\item[/v/draw] Source for the VDraw example program. Examples that
are identical across platforms use a \code{.cpp} file extension.
\item[/v/drawex] Very simple V draw example from C/C++ Users Journal
article.
\item[/v/examp] Source for a simple \V\ example.
\item[/v/includex/v] Source for the X \code{*.h} \V\ header files.
\item[/v/includew/v] Source for the MS-Windows \code{*.h} \V\ header files.
(Not included on X only version.)
\item[/v/lib] Compiled version of the \V\ library will be placed
under appropriate subdirectories here. No precompiled libraries are
included in the standard distribution.
\item[/v/msvc] Project and make files for Microsoft VC++.
\item[/v/obj] Compile object code is saved under here.
\item[/v/srcx] The full C++ source for the X \V\ library. The files
use a \code{.cxx} extension.
\item[/v/srcwin] The full C++ source for the Ms-Windows \V\ library. The files
use a \code{.cxx} extension. (Not on X only version.)
\item[/v/test] The test program used to test \V\ functionality.
\item[/v/texted] Source for a simple editor based on vTextEdit class.
\item[/v/tutor] The source code for the tutorial example.
\item[/v/vxgl] Source for V canvas class that interfaces to X
version of OpenGL.
\item[/v/watcom] Project and make files for Watcom C++ compiler.
\end{description}
\subsection* {Compilers}
The \code{makefile} provided with \V\ uses the GNU C++ compiler,
\code{g++}. \V\ does not use templates or other C++ features that
can cause portability problems. The current version has been
built and tested using \code{g++} Version 2.7.2.3, although it
did work with Version 2.6.3, but
not earlier versions. There is no inherent reason that \V\ should
not compile with other C++ compilers.
\subsection*{The X Makefile}
\index{makefile}
The \code{Makefile} is the main way to build X versions of \V.
It has comments that should help you to build the X version of \V.
See the file README.TXT for more instructions for installing \V
on a *nix platform. All of the customizations for a given platform
have been isolated into the file \code[Config.mk].
To date, \V\ has successfully been compiled on several platforms,
including Linux, SunOS, Solaris, AIX, SGIs, and DEC Alphas. The standard distribution
includes a \code{Makefile}
that can be easily configured for several platforms. The makefile requires
GNU make! The secret is to examine \code{Config.mk} and add and modify
the definitions at the beginning as needed for your platform. (For Linux,
this will usually be a no op, since Linux is the default configuration.)
Examine the definitions already there, and then add a section with
the locations defined as needed for your platform. Then use an \code{ARCH=}
definition on the \code{make} line (or make your platform the default.)
\subsection*{X Resources}
\index{X Resources}
\V\ makes limited used of X resources. The main use is to define
the basic color schemes for controls and dialogs. The following
resources are used:
\begin{description}
\item[vDialogBG] The color used for the background of dialogs and
command bars.
\item[vStatusBarBG] The color used for the background of the status
bar.
\item[vMenuBarBG] The background color of the menu bar and menu drop
downs.
\item[vControlBG] The background color for some controls, such as
sliders and scroll bars.
\item[vControlFace] The color used for the faces of various
controls such as buttons.
\item[vLightControlShadow] The color used for the light shadow
on 3D controls.
\item[vDarkControlShadow] The color used for the dark shadow on
3D controls.
\end{description}
By varying just the above X resources, you can really change
the visual look of your \V\ app.
The \code{/v/srcx} directory contains several files of the
form \code{vRes*} that contain various color schemes.
The default color scheme is contained in \code{vResDefault}
(but you don't need to load it -- it is the default).
The file \code{vResBlueMtf} contains the color scheme similar
to Motif. This is the contents of \code{vResDefault}:
\begin{verbatim}
*vDialogBG: gray75
*vStatusBarBG: gray80
*vMenuBarBG: gray70
*vControlBG: gray80
*vControlFace: gray70
*vLightControlShadow: gray87
*vDarkControlShadow: gray50
\end{verbatim}
To use one of these, or your own, resource files, you can
use the command \code{xrdb -merge vResColorscheme}. You
can also add the lines to your \code{.Xresources} file.
The X program name is the name you supply to the \code{vApp} constructor.
\subsection* {X Bugs}
The PostScript print driver does not draw shapes with hatched
brushes.
The PostScript drawing canvas does not support \code{CopyFromMemoryDC}.
Source code uses two naming conventions - \code{.cxx} and
\code{.cpp}. Gnu g++ version 2.6 and later support both
file extensions. G++ version 2.5 doesn't like \code{.cpp},
so you might have to rename those files to \code{.cxx},
There seems to be problems with colors on X Pseudocolor systems.
\section{Microsoft Windows}
\index{Microsoft Windows}\index{Windows}
The current implementation of \V\ for MS-Windows is for Windows 3.1
and WIN32 (Windows 95 and NT). We will refer to this version as \code{Vwin} in this
description. Eventually some native Windows 95 controls will
be used, but for now the WIN32 version works fine for Win95.
The Windows version of \V\ is available at as
\code[vwin100.zip] (a MS-Windows Zip format file). on the \V\ ftp
site. You will need a version of \code{ZIP} or \code{gunzip} and
\code{tar} to extract \V. The MS-Windows version does not include
documentation. Documentation is available as both \LaTeX files in
the X distribution, or split into a pair of Postscript or
DVI files on the \V\ ftp directory.
\subsection* {Directories}
The directory structure of \V\ under MS-Windows is similar to the X version.
On the distribution, the MS-Windows hierarchy is found under the \code{/v}
directory. (We will use Unix / notation for files instead of the
usual MS-Windows backslash notation. Most MS-Windows compilers handle
the / correctly, and / is used throughout the \V\ source files.)
When you unzip the archive, a subdirectory \code{/v} will be
built.
Under \code{/v} are \code{/bin/win} for the example \V\ MS-Windows
binaries, \code{/draw} for the VDraw example program, \code{/examp}
for a simple example program, \code{/includew/v} for the \V\
\code{.h} header files, \code{/lib/win} for the MS-Windows compiled
library, \code{/obj/win*} for the object files, \code{/srcwin}
for the MS-Windows version of the source code, \code{/test} for the
test driver program, and \code{/tutor} for the source code to the
tutorial included in this reference manual.
For MS-Windows, the \V\ library source files use a \code{.cpp} extension.
The example programs also use \code{.cpp}. The source for most of the
example programs is identical for the MS-Windows and X versions! However,
the source for the library \code{.cpp} and \code{.h} files are different
for each platform, so you must be careful not to mix the X and MS-Windows
versions of source code and header files.
\subsection* {Compilers}
\V has been successfully been compiled using Borland C++ 4.5 for
Win3.1 and WIN32; Borland C++ 5.02 for WIN32; Watcom 10.6 for Win3.1 and WIN32;
the GNU-WIN32 gnu g++ compiler; and Microsoft VisualC++ under several versions.
Several Borland \code{.ide} files are included on the directory
\code{/vwin/bccide}. The \code{.ide} files assume \V\ is built on
drive C:, so you may have to modify it if you want to build \V\
on your own system. If you are using another compiler, then you
need to compile \emph{every} \code{.cpp} file found on the
\code{/srcwin} directory.
Project files for compiling with Watcom C++ are included in
the directory \code{v/watcom}. Unlike the Borland versions,
the object code and libraries are built directly on these
\code{watcom} directories.
The required changes and makefiles required for the \code{mingw32} compiler
will be made available on the \V web site.
\subsection* {MDI/SDI Models}
\index{MDI model}
\V\ for MS-Windows supports both the MS-Windows MDI and SDI models.
By default, \V\ uses MDI, and will bring up the main MDI window,
and open the first MDI child window. There currently is no way to
have a main MDI window with no active MDI child windows -- when
you exit the last window, the application closes. The menu,
command bar, and status bars will change to the ones defined by
each child window as each child window is activated.
\V\ will automatically append a \code{Window} menu item to the main
menu. The built in \code{Window} menu supports the standard cascade
and tile MDI operations, as well as showing a list of MDI children.
\index{SDI model}
You can also get MS-Windows applications to look like the standard
SDI model. If you want an SDI app, you control this in the
static declaration of the \code{vApp} object:
\begin{verbatim}
static testApp* tApp = new testApp("Vtest",1);
\end{verbatim}
The second parameter controls MDI or SDI. A default parameter
is defined by \V as 0 to indicate the MDI model. If you specify
a 1, then \V will take an SDI look. It actually does this
by using the MDI code, but maximizing the canvas window,
removing the extra buttons from the menu bar, and not
adding the \code{Window} menu. It is impossible for the
user to tell that this is really an MDI application, but
\V does not strictly enforce this. If you create more than
a single \code{vCmdWindow} object, unpredictable things will
happen under the SDI simulation. It is up to you to not do that.
Since X doesn't have an MDI/SDI equivalent, it is harmless
to specify SDI to an X version of your app.
\subsection* {Icons}
As stated in the main part of this manual, \V\ does not use resource files.
This is true for the MS-Windows versions. However, there is one reason you
might want to include a \code{.RC} file with a \V\ MS-Windows application,
and that is to allow you to define the icons used with the application.
(These are MS-Windows icons, and are \emph{not} the same things as
\code{vIcons}.)
Typical MS-Windows MDI applications use two icons - one for when the whole application
is iconized, and one when each child window is iconized. If you don't supply a
\code{.RC} file, you will get the default MS-Windows icons. The \V\ distribution
supplies two default icons of its own, called \code{vapp.ico} and \code{vwindow.ico}.
By including the definitions \code{vAppIcon} \code{ICON} \code{vapp.ico} and
\code{vWindowIcon} \code{ICON} \code{vwindow.ico} in the \code{.RC} file,
\V\ will load and use those icons for the application and each child window
respectively. You can substitute whatever two icons you want for your application
by specifying different \code{.ico} files for
the \code{vAppIcon} and \code{vWindowIcon} names in the \code{.RC} file.
\subsection* {DEF File}
MS-Windows applications are typically compiled using a \code{.DEF} file. You
can modify any of the \code{.DEF} files included with \V\ sample programs.
\subsection* {Bugs on MS-Windows}
\section{V Versions}
\begin{description}
\item[Version 1.00]
This version was local to the University of New Mexico on January 10, 1996.
Versions 1.01, 1.02, and 1.03 were local maintenance releases.
\item[Version 1.04]
This was the first major public release of \V, and was announced
to the world on February 14, 1996.
\item[Version 1.05]
This version had several bug fixes obtained from feedback of the
public release.
\item[Version 1.06]
This was an X only release, and added 3D controls.
\item[Version 1.07]
This release was never formally announced, and included some
of the changes listed for version 1.07.
\item[Version 1.08]
The 4/15/96 release added several significant features to \V:
\begin{itemize}
\item The \code{vMemoryDC} drawing canvas, including new methods
\code{CopyFromMemoryDC} and \code{DrawColorPoints}.
\item Internal revisions for handling of color, including adding
\code{vColor::ResetColor} to allow reuse of color maps, and
\code{vColor::BitsOfColor} to get color capability. These
revisions allow \V apps to make more effective use of default
color maps.
\item \code{vPen::SetColor(r,g,b)} and \code{vBrush::SetColor(r,g,b)}
are being dropped in favor of the \code{vColor} forms. These calls
break the hidden management of color maps, and while still included
in the code, should \emph{not} be used. Support for the \code{(r,g,b)}
form will be dropped entirely in future versions of \V.
\item \code{C\_ToggleIconButton} was added to allow a pressed in
button interface look in place of check boxes and radio buttons.
\item Documentation for \code{ChangeColor} and \code{C\_ColorLabel}
was added, although the functionality has been there for a while.
\item The WIN32 port was finished, and the X and MS-Windows versions
are now in sync.
\end{itemize}
\item[Version 1.09]
Added \code{C\_ToggleButton} and
\code{C\_ToggleFrame} controls. It also includes a large
number of \V icons suitable for building command pane
tool bars.
\item[Version 1.10]
The 5/29/96 release of \V\ includes the following enhancements
and changes:
\begin{itemize}
\item The \V\ Icon Editor - an icon editor to
create icons for various \V\ controls.
\item Inclusion of accelerator key support in menus.
\item Addition of the \code{ChangeListPtr} set type to allow
completely dynamic lists, combo boxes, and spinners.
\item Addition of \code{DrawLines}, \code{DrawPoints}, and
\code{DrawRectangles} to \code{vCanvas}.
\item Several bug fixes for both MS-Windows and X, some relatively
major.
\item The canvas page scroll messages were changed
on the X version to correspond to the behavior of the MS-Windows version.
A page scroll message is sent only at the completion of
a scroll, not continuously as before. It is usually rather
difficult to implement nice continuous scrolling, so this
approach seems more useful to more people. This is the only
known change that might affect compatibility with previous
\V applications.
\item Addition of a directory for outside contributions.
\end{itemize}
\item[Version 1.11]
The 7/4/96 release of \V\ has several minor bug fixes for the
MS-Windows and X versions. It also adds the \code{WorkSlice} methods
to support applications that require computations to continue
even if the user is not entering commands to the application.
\item[Version 1.12]
This was a bug fix release for MS-Windows. The X version was
unchanged, but renumbered for consistency.
\item[Version 1.13]
This 8/24/1996 release of \V\ is a major release with several
new features, and some significant bug fixes that can change
the behavior of existing \V applications. The following includes
a list of changes:
\begin{itemize}
\item The \V\ Application Generator, \code{vgen} is now included
with the standard distribution. It will generate a simple
\V\ application as a starting skeleton for new apps.
\item The values being passed by \V\ to \code{vCanvasPane::VPage} and
\code{HPage} were incorrect on the X version. The documentation states
that the values for \code{Top} should be in the range 0 to 100.
The MS-Windows version worked correctly, but the X version was
passing a range of 0 to (100-Shown). This bug actually has
been in the X version since the switch to 3D Controls. With
version 1.13, both MS-Windows and X work the same.
\item The MS-Windows version of \code{vDC::DrawText} was fixed to
work according to the documentation. It had been drawing text
with the x,y as the upper left corner of the text. Beginning
with 1.13, it now draws at the lower left corner as specified
in the documentation.
\item Two functions, \code{GetHScroll} and \code{GetVScroll},
were added to \code{vCanvasPane} to make dealing with
scroll bars easier.
\item A new standard using \code{enums} for generating IDs for
controls has been adopted beginning with 1.13.
\item \code{C\_TextIn} controls now allow you to specify the
width of the control in characters using the \code{size} field.
This is described in Chapter 6.
\item In \code{vCanvasPane}, new parameters (with default
values for backward compatibility) were added to
\code{CopyFromMemoryDC} to allow subregions to be copied.
\item Using a \code{vTransparent} pen when drawing text
now results in leaving the existing background when drawing, and
a \code{vSolid} pen overwrites with the current background
color.
\item There was a conflict on MS-Windows with using \code{VK\_} for
key names. The MS-Windows version was changed long ago, and now
the X version also uses lower case letters (e.g., \code{vk\_Tab}).
\end{itemize}
\item[Version 1.14]
The major addition to 10/6/96 \V Release 1.14 is the addition of
the \code{vTextEditor} class, which is a very good first pass at
a complete editing canvas. The editor is complete, can be
extended to support custom command sets or file management.
It is missing cut, copy, and paste, which will be implemented
as general support for these is added to \V. The code for
\code{vTextEditor} is based on \code{vTextCanvasPane}, and
is identical for the X and MS-Windows versions.
Also, for the X Version, support for OpenGL has been added.
This support is found in the distribution directory
\code{v/vxgl}. While the \V OpenGL canvas pane seems
very robust, it is still somewhat experimental. I would
like any feedback on its use and design.
Other changes, mostly bug fixes, include:
\begin{itemize}
\item X version: The little close button on the left of the
menu bar has been dropped by popular request. It seems most people
didn't like it. If you do, you can still get it by defining
the symbol USE\_CLOSE\_BUTTON. Instead, \V now supports the
X WM\_DELETE\_WINDOW protocol. This protocol is supported
slightly differently by different window managers, but
accomplishes the same thing as the old close button.
\item X version: There was a minor bug in how the
scroll bars worked when \code{top == 0}.
\item X version: The method used to get the size of a window
was changed, and should now give correct values.
\item X version: There was a bug in drawing radio buttons
that only showed up on some systems.
\item X version: There was a bug in changing the current
selection in combo boxes.
\item X version: There was a bug in setting colors for the
PostScript DC.
\item X and MS-Windows: There were several bugs in
\code{vTextCanvasPane} exposed by the implementation
of \code{vTextEditor}.
\item X version: There was a bug in the key mapping that would
cause a program to terminate if an unrecognized key was pressed.
\item MS-Windows: The method to determine the size of the MDI
frame and client windows was improved (I hope!).
\item MS-Windows: A bug with the work timer was fixed. The interaction
between the work timer, check events, and the MS-Windows message
loop was changed to work better.
\item MS-Windows: The argument order of ClearRect was fixed to correspond
to X and the documentation.
\item MS-Windows: There was a bug that didn't allow SetValue to work
correctly for some controls.
\item MS-Windows: A bug in handling the MS-Windows caret in text
canvases was fixed. This one was a bit subtle, but nasty in
possible side effects. Also, EnterFocus and LeaveFocus did not work correctly.
\item MS-Windows: A bug in setting text colors on NT and Windows 3.1 was fixed.
The bug did not manifest itself on Windows 95.
\end{itemize}
\item[Version 1.15]
Release of V Version 1.15 has some non-backward compatible
changes. In previous versions of V, there were inconsistencies in
the order of width and height parameters. These have all been now
changed to consistently use a width/height order. (Except for
vIcon, which still use height/width.) The decision to fix this
order came from a general consensus of the V mail list.
You will need to change your code to reflect the new changes.
The following things must be changed:
1. Any calls to the constructor of a base or derived vCmdWindow
will need the width and height order swapped.
2. Calls or overrides of vApp::NewAppWin need the
order of width and height swapped.
3. Calls to vCanvasPane::SetHeightWidth(h,w) need to be
changed to vCanvasPane::SetWidthHeight(w,h).
4. Calls or overrides of all versions of Redraw(x,y,h,w)
need to be changed to Redraw(x,y,w,h).
5. Calls or overrides of all versions of Resize(h,w)
need to be changed to Resize(w,h). (The vTextCanvas
row/column versions retain their row/column order.)
Also, the makefiles have been revised for more flexible
building on different *nix platforms.
A new method, vDialog::DialogDisplayed has been added to
allow dynamic setting of dialog control values.
\item[Version 1.16]
Version 1.16 has no significant changes in V functionality.
It mostly has some bug fixes. The only major change is
the release of a completely new set of Makefiles for
the Unix version. These new makefiles were contributed by
a V user, and are much cleaner than the old versions.
A summary of the changes:
\begin{itemize}
\item A small change to the code generated by vAppGen.
\item A fix to scrolling in the V Icon Editor.
\item Some changes to the v\_defs.h file for MS-Windows, including
compatibility changes needed for Microsoft VC++. Project files were
added for MSVC++.
\item The == and != operators for brushes, fonts, pens, and colors were
changed to use reference parameters consistently.
\item Various minor changes to enhance compiler compatibility, both
on MS-Windows and X.
\item VReply was fixed to work over multiple shows.
\item A void* was added to vAppWinfo.
\item Vmemdc had height and width switched.
\item Sizing of buttons on MS-Windows was fixed for Windows 95.
\item A resource leak was fixed for MS-Windows.
\item A major bug that showed up only under Microsoft VC++ was
fixed.
\item Initialization of text in strings was fixed for MS-Windows.
\item Changing the values of radio buttons on MS-Windows now works.
\item Spinners now honor the size specification.
\item A tab keystroke now works correctly on MS-Windows.
\item A bug in
\item Various new tests were added to the test program.
\item A couple of bugs were fixed in the X OpenGL V interface.
\end{itemize}
\item[Version 1.17]
Version 1.16 has proven to be remarkably stable. A few minor bugs
have been reported and corrected for Version 1.17. Some
enhancements have been added, the most significant allows you
to specify the number of rows displayed in a list box.
A summary of the changes:
\begin{itemize}
\item Lists by default display 8 rows, buy you can now specify and
size between 1 and 32 rows.
\item A bug in Windows when closing multiple windows was fixed.
\item The vReply dialog has been changed to allow a default string in
the input field.
\item Direct printing to \code{lpr} has been added to the X version.
\item The PostScript driver was modified to print better lines.
\end{itemize}
\end{description}
\section {Future Plans}
\begin{itemize}
\item An OS/2 Port is currently in Alpha release. Watch the \code{www.objectcentral.com}
home page for news.
\item The major plan is to port \V to \code{gtk} for version 1.18. This version
will not have major enhancements to \V. However, lifting the Athena restriction will
allow many new features to be added. These will be included in \V version 2.0, which
I hope to have done by summer. New functionality planned includes floating help boxes,
multiple list selection, faster graphics, a dialog canvas pane, index tabs in
dialogs, and probably more. I hope to minimize any changes required in the API.
\item \V still needs a class to portably interact with the standard system
clipboards.
\end{itemize}
|