Welcome to Dolphin Smalltalk X6
What's New in Version 6?
Products
Dolphin Community Edition
Dolphin Professional
Development Tools
Editor
Go Search
Idea Space
Source Tracking System
Method Explorer
View Composer
View Browser
Executable Browser
Code Mentor
Rewrite Tool
Compiler and Virtual Machine
True Block Closures
Improved Garbage Collector
Immutability Support
Class Library
Sockets
Literal Filer
Slidey Inney Outey Things
Other New Views
Documentation/Help
Newcomers Start Here
Getting Started
The Dolphin Smalltalk Product Range
Dolphin Community Edition (DCE)
Dolphin Professional (DPRO)
Installation
System Requirements
Setup
Fresh Install: Unlocking the Installation
Installed Files
The Image
Looking after Your Image
Save Your Image Often
Guided Tour
A Note to Those New to Smalltalk
Starting Dolphin
System Folder
System Folder Icons
Additional Tools Icons
Sample Applications Icons
Source Tracking Tools Icons
Workspace
Workspace Operations
Workspace Files
Class Browser
Class Hierarchy Pane
Category Filter Pane
Protocol Filter Pane
Variables Filter Pane
Method List Pane
Method Source Pane
Class Definition Pane
Class Comment Pane
Class Diagram Pane
Views Pane
Code Mentor Pane
Code Rewriter Pane
System Browser
Packages Pane
Class List Pane
Category Filter Pane 
Protocol Filter Pane 
Variables Filter Pane 
Method List Pane
Method Source Pane
Class Definition Pane
Class Comment Pane
Class Diagram Pane
Views Pane
Code Mentor Pane
Code Rewriter Pane
Package Browser
Packages Pane
Package Comment Pane
Classes Pane
Loose Methods Pane
Views Pane
Globals Pane
Package Scripts Pane
Prerequisites Pane
Dependents Pane
View Composer
View Arena Pane
View Hierarchy Pane
Property Inspector Pane
Toolbox Pane
View Browser
View Categories Pane
View List & Preview Pane
Idea Space
Idea Space Cards
Protocol Browser
Protocols Pane
Selectors Pane
Conforming Classes Pane
Method Explorer
History Pane
Method List Pane
Source Pane
Debugger
Stack Pane
Temporaries Pane
Inspector Pane
Source Pane
Inspector
Published Aspects Pane
Instance Variables Pane
Visual Object Finder Pane
System Transcript
Class Diagram
Live Update
Process Monitor
Executable Browser
STS Tools
Source Tracking System
Method Editions Browser
Method Editions Pane
Method Comparison Browser
Class Editions Browser
Class Editions Pane
Class Editions Method List
Package Editions Browser
Package Editions Package Pane
Package Editions Pane
Package Editions History Viewer
Project Editions Browser
Projects Pane
Project Editions Pane
Contained Package Editions Pane
Changes Browser
Changes List Pane
Programming Cookbook
Creating GUI Applications
Model View Presenter Overview
Model
View
Presenter
Component-based Architecture
Pluggability
Flexibility
Pluggable Views
Pluggable Models
Why are Views Observers?
Sharing a Model
Creating MVP Components
Models
Presenters
Views
Elemental MVP Components
Composite MVP Components
Creating Console Applications
Architecture
Accessing Standard I/O Streams
Accessing Command Line Arguments
Calling C Runtime Library Functions
Accessing Environment Variables
Intercepting Console Control Commands
Testing and Debugging Console Applications
Debugging with Command Line Parameters
Error Handling
Deploying Console Applications
Distributing Console Applications
Deploying Applications
Lagoon Deployment Kit
Application Deployment Overview
Deployment Strategy
What to do when things go wrong
Lagoon Deployment Wizard
Initial Screen
Step 1
Step 2
Step 3
Step 4
Step 5
Step 6
Step 7
Final Step
Lagoon Deployment Tutorial
Hello World
Distributing Your Application
Target Machine Requirements
Redistributable Components
Creating a Setup Program
External Interfacing
External Libraries
Parameter Conversion and Wrapper Methods
Caution: Objects may Move or Disappear
Returning Structures
External Methods
External Method Format
Parameter Types, Validation and Conversion
External Call Limitations
Overlapped Calls
Thread Affinity
To Overlap or Not to Overlap
Virtual Calls (C++/OLE COM Interface)
OLE/COM/Active-X Functions
External Structures
ExternalStructure
Dynamic Field Access
Compiled Field Access
External Structure Limitations
External Field Types
Scalar Fields
Pointer Fields
Embedded Fields
Filler Fields
Unions
Restricting Field Access
Structure Packing
External Arrays
Arrays of Scalar Values
Arrays of Structures
COM/.Active-X Array Types
External Memory Management
External Callbacks
ExternalCallback Objects
Callback Lifetime
Unwinding Callbacks
Debugging Callbacks
Callback Entry Points
Inbound Argument Conversion
Closure or User Data Arguments
MessageCallback Objects
Virtual Callbacks
Further Information
Exception Handling
Class vs Instance
Resumable vs Non-resumable Exceptions
General Categories of Exception
Errors
Warnings
Notifications
Raising Exceptions
Catching Exceptions
Catching Multiple Exceptions
Handling Exceptions
Exception Hierarchies
Exceptions vs. Unwinds
Win32 Structured Exceptions
How it works
Guidelines for Use
Weak References and Finalization
And finally??
Weak References
How do Finalization and Mourning Actually Work?
The Rules
Zen and the art of Finalization
Binary Filing Objects
Storing objects
Storing globals
Retrieving objects
Mixing STB with other data
Customising storage
How to use an STB Proxy
Creating an STB Proxy class
Deferred fixup
Overriding a proxy
Making use of the filer context
Converting STB data after instance layout changes
STB Debugging
STB Exceptions
Chunk Files
Dolphin's Chunks
Classes
Methods
Expressions
Importing from other Smalltalks
Database Connectivity
Setting up a Sample Data Source
Connecting to a Data Source
Supplying a Username and Password
Choosing from a list of Data Sources
Querying the Capabilities of a Data Source
Querying the Database Structure
Executing SQL Queries
Navigating through a Result Set
Accessing a Row
Inspecting a Result Set
Executing SQL Statements
Preparing SQL for Later Execution
Preparation
Parameterization and Execution
Preparing Queries
An alternative method for describing columns
Transactions
Commit
Rollback
Read-Only Transactions
ODBC Error handling
Cleaning up
Bypassing finalization
Reinstatement on Image Re-load
Sockets Connectivity
The Socket Connection Interface
Blocking
Blocking the User Interface Main Process
Non-Blocking
Examples
Persistency of Sockets
Internet Addresses
Listening for a Connection with a ServerSocket
Establishing a Client Connection
Examples
Streaming over a Socket Connection
Talking Objects across a Socket Connection
Convenience methods for reading and writing objects
Monitoring Blocking Calls
Talking Bytes across a Socket Connection
Using the Non-Blocking Calls
Exceptions
Additional Samples - Chat
Creating COM Components
Reference Counting
Marshalling
Type-library Marshalling
Standard Marshalling
Dolphins COM Framework
Interfaces
Implementations
COMObjectStub
Class Factories
Building a COM component
Write or Acquire IDL
Build Type Library
Generate Interfaces
Define Implementation Class
Testing & Debugging