ftp.nice.ch/Attic/openStep/developer/resources/MiscTableScroll.129.1.mw.s.README

This is the README for MiscTableScroll.129.1.mw.s.tgz [Download] [Browse] [Up]

MiscTableScroll

By Paul S. McCarthy and Eric Sunshine
Copyright (C)1995-1997 by Paul S. McCarthy and Eric Sunshine
July 11, 1997


OVERVIEW
========
This is the source code for the MiscTableScroll framework and palette for 
OPENSTEP.  MiscTableScroll is similar to NeXT's NSTableView class.  This 
version of MiscTableScroll is compatible with OPENSTEP 4.2 for both Mach and 
Windows NT, as well as OPENSTEP 4.1 for Mach.  

User Interface Features
-----------------------
- Column and row titles.
- Resizing of columns and rows.
- Dragging rows and columns to rearrange them.
- Automatic sorting of rows as columns are rearranged.
- A button in column titles to toggle between ascending and descending sort 
  direction.  
- Incremental search.
- In-cell text editing.
- Exporting contents as ASCII, ASCII-delimited or dBASE through the Save Panel.
- Full keyboard and mouse control.
- Interacts with the Pasteboard, Font Panel, and Services.

Programmer Interface Features
-----------------------------
- Each column and row can have its own size.
- Each cell can have its own color and font or inherit them from the 
  MiscTableScroll.  
- Each column can have its own cell type.
- Lazy mode for large or expensive-to-generate data sets.
- Full control over selection.
- Smart memory management -- you don't pay for features you don't use.
- Simple indexed access to rows and columns regardless of visual order.
- Uniform treatment of rows and columns -- referred to generically as slots.
- Support for dragging images directly out of cells.
- Extensive delegate hooks.


INSTALLATION
============
MiscTableScroll is normally distributed with the MiscKit for OPENSTEP.  
However, since it does not use nor rely on any other part of the MiscKit, it 
can be used as a stand-alone framework and palette.  Use this package to 
create a stand-alone framework and palette or to replace an out-of-date copy 
of MiscTableScroll.  

Follow these steps to install the MiscTableScroll package:

- Check version numbers
- Remove previous version
- Unpack
- Compile and install framework and palette
- Compile the example programs (optional)
- Clean up

All of the instructions below assume that the environment variable 
${NEXT_ROOT} is defined.  This variable is defined by default under Windows 
NT.  However under Mach it is not defined so you should define it yourself 
before issuing the commands in the following sections.  

Under Mach, the typical value of ${NEXT_ROOT} is the empty string.  If you are 
using the C-shell then define it by typing: 

% setenv NEXT_ROOT ""

If you are using the Bourne shell then type:

$ NEXT_ROOT=""
$ export NEXT_ROOT


Check Version Numbers
---------------------
If you have a previous version of MiscTableScroll for OPENSTEP, check the 
version number of the MiscTableScroll that you already have by looking in the 
PACKAGE_NUMBER file in the source code directory or inside either the 
installed framework or palette.  Compare that number with the version number 
encoded in the name of the file 
MiscTableScroll-OPENSTEP.v???.?.mw.s.gnutar.gz.  This way you can tell which 
version is newer or older, and decide whether to proceed.  


Remove Previous Version
-----------------------
If you have a previous version of the MiscTableScroll that you want to replace 
with this package, then you need to remove the old version before unpacking 
the new version.  

If you used the standard MiscKit directory structure then these commands will 
remove the previous version.  If you used a different directory structure, 
then you will need to adjust the commands as necessary to match your 
installation.  

# Remove source
% rm -rf ${NEXT_ROOT}/LocalDeveloper/Source/MiscKit2/Palettes/MiscTableScroll \
    ${NEXT_ROOT}/LocalDeveloper/Source/MiscKit2/Examples/LazyScrollDir \
    ${NEXT_ROOT}/LocalDeveloper/Source/MiscKit2/Examples/ScrollDir

# Remove targets
% rm -rf ${NEXT_ROOT}/LocalLibrary/Frameworks/MiscTableScroll.framework \
    ${NEXT_ROOT}/LocalDeveloper/Palettes/MiscTableScroll.palette \
    ${NEXT_ROOT}/LocalDeveloper/Examples/MiscKit2/LazyScrollDir \
    ${NEXT_ROOT}/LocalDeveloper/Examples/MiscKit2/ScrollDir


Unpack
------
Unpack the MiscTableScroll package by choosing a convenient directory, such as 
${NEXT_ROOT}/LocalDeveloper/Source, and performing the following commands: 

% mkdirs ${NEXT_ROOT}/LocalDeveloper/Source
% cd ${NEXT_ROOT}/LocalDeveloper/Source
% gnutar xvfz MiscTableScroll-OPENSTEP.v???.?.mw.s.gnutar.gz

Unpacking the MiscTableScroll package creates the following directory 
structure: 

MiscKit2
    Examples
	LazyScrollDir
	ScrollDir
    Palettes
	MiscTableScroll
	    Framework
		Documentation
	    Notes
	    Palette


Compile and Install Framework and Palette
-----------------------------------------
By default, MiscTableScroll is configured to install its components in the 
following locations: 

${NEXT_ROOT}/LocalLibrary/Frameworks	MiscTableScroll.framework
${NEXT_ROOT}/LocalLibrary/Executables	MCGHTableScroll.dll
${NEXT_ROOT}/LocalDeveloper/Palettes	MiscTableScroll.palette

If these locations are inappropriate for your site, you can adjust them using 
Project Builder's Inspector panel.  The installation directory can be 
configured individually for the framework and the palette.  

To build and install the MiscTableScroll framework and palette using Project 
Builder, follow these steps: 

- Open the project file contained within the top-level MiscTableScroll source 
  directory: Source/MiscKit2/Palettes/MiscTableScroll/PB.project 
- Choose the appropriate architectures from the Build Options panel.
- Select the 'install' target from the Build Options panel.
- Press the Build button.

If you are using Windows NT or 95 then you need to add the framework's 
executable path to your system PATH variable.  For instance, if ${NEXT_ROOT} 
at your site is defined as D:/NeXT, then you should add 
D:\NeXT\LocalLibrary\Executables to your PATH.  Consult the Windows 
documentation if you need help setting the PATH variable.  


Compile Example Programs (optional)
------------------------
You can build the example programs LazyScrollDir and ScrollDir using Project 
Builder, as follows: 

- Open the project file contained within the source directory.
- Choose the appropriate architectures from the Build Options panel.
- Press the Build button.

The project files for the example programs are located in:

${NEXT_ROOT}/LocalDeveloper/Source/MiscKit2/Examples/LazyScrollDir/PB.project
${NEXT_ROOT}/LocalDeveloper/Source/MiscKit2/Examples/ScrollDir/PB.project

Finally, if you would like to have the source code for the example programs 
installed in ${NEXT_ROOT}/LocalDeveloper/Examples/MiscKit2, either copy the 
directories there using NeXT's Workspace or execute the following commands: 

% cd ${NEXT_ROOT}/LocalDeveloper
% rm -rf Examples/MiscKit2/LazyScrollDir Examples/MiscKit2/ScrollDir
% mkdirs Examples/MiscKit2
% cp -r Source/MiscKit2/Examples/LazyScrollDir \
    Source/MiscKit2/Examples/ScrollDir Examples/MiscKit2


Clean Up
--------
At this point the installation is complete.  To reclaim disk space, remove the 
temporary files which were created during the build process by pressing the 
Clean button on Project Builder's Build panel.  Or, if you do not plan to 
refer back to the source code, then you can delete that directory entirely: 

% rm -rf ${NEXT_ROOT}/LocalDeveloper/Source/MiscKit2


CONVERSION
==========
This package comes with a tops script to aid porting of NEXTSTEP 3.x programs 
which use MiscTableScroll to OPENSTEP 4.x.  The script should be run after 
running the standard NeXT-supplied conversion scripts.  It is located within 
the MiscTableScroll framework: 

MiscTableScroll.framework/Resources/MiscTableScroll-3.3-4.x.tops


DOCUMENTATION
=============
Documentation for the public classes is located within the framework and can 
be found in the files: 

- MiscTableScroll.rtf
- MiscTableCell.rtf
- MiscExporter.rtf

The example programs demonstrate how to use the most important features of 
MiscTableScroll: 

- LazyScrollDir
- ScrollDir

The following files also provide valuable information.  Except for 
PACKAGE_NUMBER which is located in the top-level source directory, all of the 
remaining files reside in the Notes subdirectory.  

PACKAGE_NUMBER		MiscTableScroll version.
HISTORY.txt		Description of changes between versions.
OPENSTEP-HISTORY.txt	Description of OPENSTEP-specific changes between
			versions.
TODO.txt		A list of future enhancements.
OPENSTEP-TODO.txt	A list of OPENSTEP-specific future enhancements.
BUGS.txt		A list of known bugs.
OPENSTEP-BUGS.txt	A list of OPENSTEP-specific bugs.
MACH-NT-4.2.txt		Description of issues which arose when porting
			MiscTableScroll from OPENSTEP 4.1 for Mach to
			OPENSTEP 4.2 for both Mach and Windows NT.

Finally, the source code itself is commented and may be consulted as needed.  
It has been formatted with tab-stops of 8 characters and indentation of 4 
spaces.  


CONCLUSION
==========
MiscTableScroll was written by Paul S. McCarthy and Eric Sunshine and is 
copyright (C)1995-1997 by Paul S. McCarthy and Eric Sunshine.  It is included 
in the MiscKit by permission from the authors and is governed by the MiscKit 
license found in the file License.rtf in the MiscKit distribution.  

Please direct comments, questions, and complaints to:

- Paul S. McCarthy <zarnuk@mcgh.org>
- Eric Sunshine <sunshine@mcgh.org>

NeXT, MIME, and ASCII mail accepted.

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.