Changes since 1.1.1
- n.c.ViewProxy: removed Class.forName. Use Application.application().classForName
- n.a.TextView: Now supports extended key events if available
- n.a.TextView: setBaseURL is now public.
- n.a.View: added keyTyped.
- n.a.TextField: TextField supports extended key events if available
- n.a.KeyEvent: added support for extended key events
- n.u.Unarchiver: use now Application.classForName if application available
- n.a.Application: added keyTyped method.
- n.a.Application: added handleExtendedKeyEvent method.
- n.a.Application: added classForName
Changes since 1.1
- n.a.EventLoop: Added application ivar for valid timer code
- n.a.CommandEvent: Fixed target()
- n.a.InternalWindow: fixed bug in dragging code
- n.a.Timer: Timer will get the TimerQueue from the most proper application
- n.a.FoundationApplet: releasing application reference in destroy()
- n.a.TextView: Paragraphs will be reformated after inserting a string
- n.a.TextView: Caps Lock will not result in a keystroke
- n.a.TextView: MouseEvents under 1.1.x should work slightly more reliably
- n.a.TextField: The Caps Lock key will generate a keystroke under JDK 1.1.x
- n.a.TextField: Handles tab/backtab wiring properly
- n.u.Unarchiver: newInstance to protected
- n.a.Bitmap: references to mediaTracker and bitmapObserver are removed after loading
- n.a.Application: Fixed isPaused()
- n.a.Application: drawAllDirtyViews to protected
- n.a.Application: beginModalSessionForView to protected
- n.a.Application: endModalSessionForView to protected
- n.a.Application: cleanup() does a better job now - Applications can be released now
- n.a.Application: sets application ivar in EventLoop for Timer support
- n.a.Application: Added setHandleJDK11MouseEvents() method.
- n.a.Graphics: drawStringInRect() only does a fontMetrics.stringWidth() when necessary now
- n.a.InternalWindowBorder: images are no longer static
- n.a.DragSession: Fixed destination()
- n.a.TextAttachment: removed invalid void return argument in constructor
- n.a.Alert: minor drawing bug fixed
Changes since 1.0
- n.a.Range: fixed bug in contains()
- n.a.EventLoop: protected code around thread priority switching
- n.a.EventLoop: added internal calls for will/didProcessEvent
- n.a.Button: removed implementation of Component interface
- n.a.Button: Changes for Keyboard UI
- n.a.Button: double click() radio button will no longer deselect them
- n.a.Button: archiving raised/lowered bezel
- n.a.Button: mouseDown now calls containsPoint() before processing Event
- n.a.Button: setHighlighted() and isHighlighted() now protected methods
- n.a.Button: Added FormElement interface for browser needs
- n.u.Serializer: Added several unsafe characters that will always be quoted (fixed problem with archiving the @ symbol)
- n.a.TextParagraphFormat: added toString
- n.a.InternalWindow: internal window document removed
- n.a.InternalWindow: application wide document window support added.
- n.a.InternalWindow: removed InternalWindowOwner
- n.a.InternalWindow: focusing a view inside the window now makes the internal window the main window
- n.a.InternalWindow: focusing a view in a window that cannot become main does not change the focused view in the rootview anymore
- n.a.InternalWindow: remove Component support
- n.a.InternalWindow: added support for Menus
- n.a.InternalWindow: added ignoreWindowClipView layer
- n.a.InternalWindow: rewrote drawing of Windows with layers and transparency
- n.a.InternalWindow: fixed bug with resize windows on incorrect rootView
- n.a.InternalWindow: fixes for coordinate view transforms
- n.a.InternalWindow: archiving changes for focus model and menu
- n.a.InternalWindow: added protected method willMoveTo() to intercept movements
- n.a.ScrollGroup: draw->dirtyrect
- n.a.ScrollGroup: calc of needing bars using the scrollableObject now
- n.a.ScrollGroup: archiving changed
- n.a.Timer: changes to detect and stop dealocking better
- n.a.Timer: calling setDelay() on already running Timer works correctly
- n.a.TextParagraph: changes
- n.a.SystemImages: changes for Keyboard UI
- n.a.Popup: support for Keyboard UI
- n.a.Popup: added enable/disable support, archiving change
- n.a.Popup: updated minSize to do the right thing
- n.a.Popup: new method removeItemAt() taking an index
- n.a.Popup: setPopupWindow() now adds ContainerView to window
- n.a.Popup: Added FormElement interface for browser needs
- n.a.ExternalWindow: application wide document window support added.
- n.a.ExternalWindow: changes for Menu support
- n.a.ExternalWindow: fixed problem with very fast hide/show patterns
- n.a.ExternalWindow: fixed problem with view being resized by showModally()
- n.a.ExternalWindow: center will now use the screen size
- n.a.ExternalWindow: changes for new Window interface and focus model
- n.a.ExternalWindow: added moveToFront/Back
- n.a.TextViewHTMLMarker: changes
- n.a.ScrollView: draws to dirtyRect
- n.a.Menu: completely rewritten
- n.a.Menu: new method addItemAt taking a MenuItem description and index
- n.a.Menu: handleCommandKeyEvent() checks if Control modifier is down
- n.a.TextView: It is now possible to use views as TextAttachments. TextAttachment provides some new notifications so the attachment subclass can know when to add a view to view hierarchy, update it's bounds and remove it from the view hierarchy.
- n.a.TextView: It is now possible to extend HTML parsing so TextView supports new tags when parsing HTML.
- n.a.TextView: Some performance improvements.
- n.a.TextView: Added FormElement interface for browser needs
- n.a.TextView: filterEvents bug fixed.
- n.a.FontChooser: changes for keyboard UI
- n.a.ListView: Keyboard UI support
- n.a.ListView: fix to multipleItemsSelected (returns true when > 1)
- n.a.ListView: archiving transparent flag
- n.a.ListView: fixed transparent drawing bug
- n.a.ListView: Added FormElement interface for browser needs
- n.a.Slider: removed Component
- n.a.Slider: added keyboard ui, archiving changed
- n.a.Slider: didSizeBy() will redraw knob appropriately positioned
- n.a.Slider: Added FormElement interface for browser needs
- n.a.FastStringBuffer: fixes some error by 1 problems in insert() method
- n.a.ContainerView: Removed Component interface
- n.a.ContainerView: minSize is now boundingbox of contained views
- n.a.ContainerView: all draws->dirtyRect
- n.a.ContainerView: layout removes title view before being called
- n.a.ContainerView: Added FormElement interface for browser needs
- n.a.ApplicationEvent: update events with null clip rects will draw alot
- n.a.ApplicationEvent: added PRINT event
- n.a.ApplicationEvent: converted data to object from Rect, added convience methods
- n.a.ListItem: add foreground text color, archiving changed
- n.a.ListItem: archives from 1.1b1 and 1.1b2 are changed
- n.a.Window: added moveToFront/Back
- n.a.Window: added support for Menus
- n.a.Window: added support for focus model
- n.a.MenuItem: completely rewritten
- n.a.MenuItem: added support for MenuShortcuts in JDK 1.1.1
- n.a.TextViewHTMLString: changes
- n.a.TextSelection: changes
- n.a.ApplicationObserver: added notifications when focus changes and when current document changes
- n.a.ScrollBar: draws->dirtyRect
- n.a.ScrollBar: better behavior at small sizes
- n.a.ScrollBar: archiving the owner now
- n.a.ScrollBar: support for keyboard UI
- n.a.View: added support for asian input managers.
- n.a.View: It is now possible to call setFocusedView() on a view that's not connected into the view hierarchy. When the view or it's parent get connected, it gets the focus. If more than one view request the focus, the last view added to view hierarchy get the focus.
- n.a.View: Added keyboard UI api.
- n.a.View: added CENTER as primative layout type
- n.a.View: archiving changed
- n.a.TextStyleRun: changes
- n.a.RootView: RootView now keep track of its focused view when a window become main when there is no longer any main window, the focus resume for the rootview focused view.
- n.a.RootView: lots of changes drawing, keyboard UI, coordinate trns, menus
- n.u.Hashtable: toString() prints as formatted text
- n.a.ColorWell: Changes for keyboard IU, added Target interface
- n.a.BezelBorder: default borders will be used during unarchiving as necessary
- n.u.Archive: Made the binary archive magic number public
- n.a.TimerQueue: changes to detect and stop dealocking better
- n.a.TextField: added drawableCharacter for password purpose.
- n.a.TextField: added isScrollable and all draws to dirtRects
- n.a.TextField: major changes
- n.a.TextField: Added FormElement interface for browser needs
- n.a.ColorChooser: Changes to allow driving with Keyboard
- n.a.KeyEvent: added additional special keys for keyboard UI
- n.u.ClassInfo: Removed builder specific properties, thereby removing dependency upon the BuilderInfo object
- n.a.AWTCompatibility: bitmapForAWT... methods will no longer leak the bitmaps
- n.a.AWTCompatibility: added api to get the frame for a RootView
- n.a.AWTCompatibility: added api to get colors from AWT colors & vice versa
- n.a.AWTCompatibility: added api to get graphics from AWT graphics.
- n.a.Bitmap: added alert images and keyboard arrow images to system images
- n.a.Bitmap: added primative namedBitmap() to take cache flag, changed conviences to call new primative. This will allow users to create images that will be released.
- n.a.Bitmap: getPixels will block until finished instead of 40ms timeout
- n.a.PackLayout: added defaultConstraints
- n.a.PackLayout: better algorithm for determining nested view preferred size
- n.a.PackLayout: defaultConstraints are now archived
- n.a.Application: New methods for Keyboard UI support
- n.a.Application: New methods for Menu support
- n.a.Application: Added internal methods so users can properly override will/did process event.
- n.a.Application: Added support for JDK 1.1 Clipboard
- n.a.Application: Focus model changed because of Keyboard UI
- n.a.Application: added applet() method
- n.a.Application: added setClipboardText(), clipboardText() methods
- n.a.TextViewHTMLContainer: changes
- n.a.ExtendedTarget: defined cut/copy/paste commands
- n.a.TextPositionInfo: changes
- n.a.Graphics: minor fix to catch null object during graphic debugging
- n.a.TextViewHTMLElement: changes
- n.a.InternalWindowBorder: changes to suppoort menus
- n.a.DrawingSequence: stop constant was fixed to 'stop'
- n.u.Sort: upperCaseStrings checks for null element in [] objects
- n.a.MenuView: added support for command key equivalents
- n.a.MenuView: added protected method createMenuWindow
- n.a.DragSession: added private method to support creating the drag view
- n.a.DragSession: mouseDrag/mouseup went public with a private tag
- n.a.DragSession: some point conversion fixes
- n.a.DragSession: added accessor to isAccepting. added private tag
- n.a.TextAttachment: new API for becoming visible
- n.u.Vector: toString() prints as formatted text
- n.a.VectorCache: went from kit private to public tag private
- n.a.Alert: ...image() calls returned cached bitmap instead of new one each time.
- n.a.TargetChain: changes for focus model and keyboard UI
- n.a.WindowContentView: added accessor for color attribute
- n.a.FoundationPanel: added support for JDK 1.1 printing
- n.a.FoundationPanel: requesting focus in keydown because of JDK 1.1 incompatibility with JDK 1.0.2
Changes since 1.0b2
- n.c.ViewProxy: Added setAttributesToReplacingView for easier subclassing
- n.c.TargetProxy: Added setAttributesToReplacingTarget for easier subclassing
- n.c.Plan: If you pass a url in without an extension, we'll try it like that first, if that fails we'll try the url with the binary or the ascii file in an attempt to resolve the proper filename.
- n.c.Plan: Warning messages on viewWithContents removed. Information confused people.
- n.c.Plan: TargetProxies that are replaced with Views during loading are ignored when doing methods that operate on Views.
- n.c.Plan: added archiveObjectsToArchiveData() method
- n.c.Plan: added constructorComponentWasView() method
Changes since 1.0b1
- n.c.Plan: made ASCII_TYPE and BINARY_TYPE publicly documented
- n.c.Plan: changed allComponents() to components()
- n.c.Plan: changed addContentsTo() to addContentsToView()
- n.c.Plan: changed componentForName() to componentNamed()
- n.c.Plan: changed streamFromURL() to try url first, then codeBase+url, then file
- n.c.Plan: TargetProxies replaced with View objects will not be added to the View heirarchy during calls to addContentsToView()
- n.c.Plan: removed Component interface implementation. It was empty and unnecessary.
- n.c.Plan: all streams now using buffered versions