[accessibleimage] Re: [Blindmath] Using Java Draw2D in an SWT GUI

Carolyn - you wrote: " AWT/Swing have interop with JavaFX, but they are
effectively deprecated,"

I have been unable to locate any information on the Oracle website about
the deprecation of AWT/Swing, and a number of posts on other websites
indicate that it is an unfounded rumor. If true, however, that is very
important information.

Can you please provide a reference to where you obtained this information?

Thanks,
Dick Baldwin

On Sat, Feb 25, 2012 at 5:35 PM, Richard Baldwin <baldwin@xxxxxxxxxxxxxxx>wrote:

> While it may be possible to force the large corporations to adhere to
> accessibility standards through threatened legal action, a large portion of
> the really useful software these days is developed and provided for free
> (or for a nominal charge) by independent programmers like myself who
> develop the software and give it away for free. Threaten these developers
> with legal action, and they will simply stop giving away good software.
>
> It is probably unrealistic to believe that anyone can create software
> development tools that will force independent software developers to
> produce accessible apps. Take for example, the DTD for XHTML 1.0
> Transitional. To be valid, an XHTML document must provide an "alt" field
> for every image. However, there is no way to require the author of the
> document to make the contents of the field meaningful. The easiest thing to
> do is to simply enter an empty string in the field. In other words, hit
> quote quote Enter on the alt field and the requirement is satisfied. I
> myself am guilty of having entered the string "Missing image" -- probably
> thousands of times given the number of documents containing images that I
> have published. While that satisfies the requirement, and is a little
> better than an empty string, it does little for accessibility.
>
> And by the way, let's not forget that largely inaccessible software is
> still being sold or provided for free within the blind community by
> companies whose existence depends on the blind community.
>
> While I don't have an answer to the problem of inaccessible software, it
> is clear that at least two factors will be required to cause a large
> percentage of software that is provided by independent developers to be
> accessible:
>
> 1. Persuasion
> 2. Ease of development
>
> Persuasion - Independent developers of the sort who populate SourceForge
> with free software and who sell cheap apps on the iPhone and Android
> platforms aren't likely to be influenced in a positive way by threatened
> legal action. Those developers are more likely to be influenced through
> persuasion. Again, threaten them and they will simply find other ways to
> spend their time.
>
> Ease of development - Before there will be any large-scale migration
> toward accessibility among independent developers, tools that create
> accessible software must be no more difficult to use and must require no
> more time and effort to use than the alternative tools that don't produce
> accessible software.
>
> There are many very capable blind programmers in the world. Perhaps those
> programmers should devote their efforts to the development of tools that
> will cause sighted independent programmers to be happy to make their free
> software accessible. At this point in history, such software doesn't exist,
> at least not in the Java world with which I am most familiar.
>
> Dick Baldwin
>
>
> On Sat, Feb 25, 2012 at 12:37 PM, John Gardner <john.gardner@xxxxxxxx>wrote:
>
>> The iPhone is an excellent example of my point.  I have an iPhone and
>> admit
>> that
>> Apple has done a pretty good job of adding accessibility where it didn't
>> exist before.  Unfortunately very few app vendors have followed suit.
>> Better original design could have made accessible app programming more or
>> less automatic.  Now I have to rely on the good will of app makers and
>> most
>> don't even seem to know about accessibility.
>> John Gardner
>>
>>
>> -----Original Message-----
>> From: blindmath-bounces@xxxxxxxxxx [mailto:blindmath-bounces@xxxxxxxxxx]
>> On
>> Behalf Of Keith Creasy
>> Sent: Saturday, February 25, 2012 4:05 AM
>> To: 'Blind Math list for those interested in mathematics'
>> Subject: Re: [Blindmath] Using Java Draw2D in an SWT GUI
>>
>> I'm there if there's anything I can do to help get accessibility right in
>> SWT or JavaFX. While it is sad that accessibility historically gets put in
>> as an afterthought it's even sadder that in every one of the cases you
>> cite
>> that it has generally been done badly or incompletely. Ken and I both have
>> recent experience with the very bad accessibility framework in Android.
>> They
>> may get it right eventually. Apple has done somewhat better but the
>> experience is still what I would term as tedious, especially on Mac OS.
>> It's
>> getting better but only slowly. Microsoft, well they were first to make
>> accessibility a part of the UI but dropped the ball at some point and are
>> now playing catch up. Gnome? Great ideas but the reality has fallen far
>> short of the vision.
>>
>> Every one of the efforts mentioned has included some excellent ideas and
>> it
>> should be possible now to use them and get it right at last. There are a
>> lot
>> of great blind programmers out there and some very savvy users. I'd
>> encourage Oracle and others in the Java community to enlist some of them
>> and
>> invest in making the vision a reality.
>>
>> One principle, and this is very important, is that efforts need to
>> continue
>> to make it more trouble for application developers to leave out
>> accessibility features than to include them. I'm not sure exactly how to
>> make this happen above what's already been tried but again, it is
>> important
>> because it is the usability of the apps and not the accessibility features
>> of the tool kit that is key.
>>
>> Off my soap box now. :)
>>
>> Keith
>>
>>
>> We need to be grateful that the effort is made at all and do what we can
>> to
>> encourage it to be done sooner in the development process and that it be
>> done right. One key aspect, and I don't know exactly how to do this, is
>> that
>> developers of UI tool kits need to make it more beneficial for application
>> developers to use the accessibility services than it is to work around
>> them.
>> Not a new thought I know but so far it seems like apps still come out with
>> UI's that somehow circumvent accessibility features.
>>
>>
>>
>>
>> -----Original Message-----
>> From: blindmath-bounces@xxxxxxxxxx [mailto:blindmath-bounces@xxxxxxxxxx]
>> On
>> Behalf Of Ken Perry
>> Sent: Friday, February 24, 2012 9:32 PM
>> To: john.gardner@xxxxxxxx; 'Blind Math list for those interested in
>> mathematics'
>> Subject: Re: [Blindmath] Using Java Draw2D in an SWT GUI
>>
>> Well while I agree with you on one hand I have to point out IPhones did
>> not
>> have accessibility till version IOS 3 and people seem to forget that when
>> they scream about Android and Windows phones.  They seem to forget that
>> Mac
>> operating system didn't build in access till version 10 pretty much.  So
>> Let's dial back the rederict that it can't be built in and work with them
>> to
>> make sure it is built in right.  I feel your pain but I also understand
>> that
>> the market doesn't always allow what we want to happen.  Even if better
>> planning would make this all easier for everyone.
>>
>> Note that we are in a new age where companies are starting to understand
>> that usability and accessibility makes their products better.  Maybe it
>> takes a couple of versions to get there but that is a far cry from how
>> long
>> it has taken in the past.  We are getting to the point that new software
>> comes out and it's just accessible that's great and it should be cheered
>> on
>> but maybe we need to work more with these companies than to set them to
>> the
>> torch.
>>
>> Just my dime.
>>
>> Ken
>>
>>
>> -----Original Message-----
>> From: blindmath-bounces@xxxxxxxxxx [mailto:blindmath-bounces@xxxxxxxxxx]
>> On
>> Behalf Of John Gardner
>> Sent: Friday, February 24, 2012 12:25 PM
>> To: 'Blind Math list for those interested in mathematics'
>> Subject: Re: [Blindmath] Using Java Draw2D in an SWT GUI
>>
>> So JavaFX plans to "add accessibility" in version 3.  You can tell the
>> developers from me that there is no such thing as "adding accessibility".
>> Others have tried and failed.  Take PDF for example.  Either software is
>> developed to be accessible or it isn't.  This is just an insult, and
>> Oracle
>> should be punished severely.  Maybe they are not aware that both the
>> public
>> and the lawyers are now insisting that new electronic
>> information/softwaredevelopments be made accessible "if feasible".  Well
>> it
>> is feasible.
>>
>> Do I sound angry?
>>
>> John Gardner
>>
>>
>> -----Original Message-----
>> From: blindmath-bounces@xxxxxxxxxx [mailto:blindmath-bounces@xxxxxxxxxx]
>> On
>> Behalf Of Carolyn MacLeod
>> Sent: Friday, February 24, 2012 8:28 AM
>> To: Blind Math list for those interested in mathematics
>> Subject: Re: [Blindmath] Using Java Draw2D in an SWT GUI
>>
>> We created SWT because, at the time, Swing was years away from being
>> production-quality, and we needed to ship product.
>> I tripped over this 2002 post recently. It summarizes the climate of the
>> time:
>> http://www.mail-archive.com/jug-discussion@xxxxxxxxxxxxxx/msg00355.html
>> (I do not know who the "undisclosed source close to IBM" is, but much of
>> what he says seems accurate).
>> Please, I am not dredging up the past here to be inflammatory, merely to
>> help explain why there are things that I cannot fix.
>>
>> On the plus side, the designer of SWT is now working at Oracle, so future
>> interop will improve.
>> However, the improvements won't be in AWT/Swing - they will be in JavaFX.
>> Oracle recommends that, moving forward, people use JavaFX to build Java
>> GUIs.
>> The good news is that JavaFX is new, current, designed for both desktop
>> and
>> browser, has cool graphics, a whole bunch of groovy new controls, and all
>> controls can be css styled.
>> The bad news is that JavaFX is a whole new widget set, with its own event
>> model, layouts, and graphics system, and because it is new, some things
>> are
>> not yet implemented, like Mac and Linux support (coming in FX 2.1 and
>> 2.2),
>> and accessibility (promised in FX 3.0, which is currently due to ship
>> sometime around 2013Q4, if I am reading the roadmap correctly).
>> AWT/Swing have interop with JavaFX, but they are effectively deprecated,
>> and
>> the problems inherent in the Swing threading model make interop
>> complicated.
>> SWT and JavaFX both use the same threading model, and apparently SWT
>> embeds
>> nicely in JavaFX and vice-versa.
>>
>> So I think JavaFX might be the way you want to go, but it will be some
>> time
>> before it is fully accessible (I believe) because JavaFX controls are
>> custom
>> drawn, and all of the accessibility will need to be implemented from
>> scratch. I hope that they will fully integrate accessibility into JavaFX
>> and
>> ship it with the JDK... they have surely taken some lessons from the Swing
>> accessibility problems regarding the difficulty of installing the JAB.
>>
>> Here are some links:
>> 1. The JavaFX main page: http://javafx.com/ 2. The JavaFX API Reference:
>> http://docs.oracle.com/javafx/2.0/api/index.html
>> 3. An overview of the FX Controls:
>> http://docs.oracle.com/javafx/2.0/ui_controls/overview.htm
>> 4. A "Visual Effects" tutorial:
>> http://docs.oracle.com/javafx/2.0/visual_effects/jfxpub-visual_effects.htm
>> 5. A Transformations tutorial:
>>
>> http://docs.oracle.com/javafx/2.0/transformations/jfxpub-transformations.htm
>> 6. Oracle's recommendation regarding AWT/Swing:
>> http://www.oracle.com/technetwork/java/javafx/overview/faq-1446554.html#6
>> 7. Accessibility is not yet in JavaFX:
>> https://forums.oracle.com/forums/thread.jspa?messageID=10167036&#10167036
>> 8. The roadmap for JavaFX, including a statement about accessibility
>> support:
>>
>> http://www.oracle.com/technetwork/java/javafx/overview/roadmap-1446331.html
>> (I notice that they don't mention Linux accessibility on the roadmap. I
>> hope
>> that was just an accidental omission.) 9. JavaFX and SWT interoperability:
>>
>> http://docs.oracle.com/javafx/2.0/swt_interoperability/jfxpub-swt_interopera
>> bility.htm<http://docs.oracle.com/javafx/2.0/swt_interoperability/jfxpub-swt_interoperability.htm>
>> 10. An example of folks trying to convert AWT images to FX images, FYI:
>> https://forums.oracle.com/forums/thread.jspa?threadID=2236566
>>
>> Hope this is helpful,
>> Carolyn
>>
>>
>>
>> From:
>> Richard Baldwin <baldwin@xxxxxxxxxxxxxxx>
>> To:
>> Blind Math list for those interested in mathematics <blindmath@xxxxxxxxxx
>> >
>> Date:
>> 23/02/2012 01:18 PM
>> Subject:
>> Re: [Blindmath] Using Java Draw2D in an SWT GUI Sent by:
>> blindmath-bounces@xxxxxxxxxx
>>
>>
>>
>> Michael has provided the answer to your question about the JAB.
>>
>> I can create workarounds.
>>
>> I can write complex code to make things work that don't fit together like
>> they should.
>>
>> I can modify the code in textbooks to make it compatible with the SWT.
>>
>> I can modify the code in existing libraries to make them compatible with
>> the
>> SWT if the source code is available (which is what I am now being forced
>> to
>> do to provide GUI accessibity).
>>
>> However, the great promise of Java is the ability to use class libraries
>> written using standard Java libraries without a requirement to modify
>> those
>> libraries. IBM and SWT have succeeded in breaking that promise. Therefore,
>> IBM should have named their new product IBMJava (or maybe Java#) to make
>> it
>> clear that it is not Java. Once a naive programmer starts down the SWT
>> route, thinking that she is programming in Java, she has just excluded
>> most
>> of the promise of Java from her programming product.
>>
>> Being essentially incompatible with the JFrame class, the standard Image
>> class, and the standard Canvas class, to name just a few, IBM and SWT have
>> made it impossible to use most existing Java graphics libraries without
>> modification. The IBM versions of those classes aren't better, they are
>> simply different and incompatible with standard Java. And the SWT graphics
>> capability is, in my opinion, inferior to the Sun Graphic2D class.
>>
>> That might be a good product strategy for IBM, but it is definitely not
>> good
>> for the majority of Java programmers.
>>
>> Dick Baldwin
>>
>> On Thu, Feb 23, 2012 at 2:59 AM, Michael Whapples <mwhapples@xxxxxxx>
>> wrote:
>>
>> > Regarding your question on how good or bad is the JAB. Personally I
>> > like the concept of the JAB from a development view, one full
>> > accessibility
>> API
>> > across all platforms, rather than one which maps to the native ones
>> > and
>> so
>> > has to cope with the differences of different platforms.
>> >
>> > However in practice as a user things seem to be simpler for SWT than
>> Java
>> > swing and JAB. I had some trouble getting the JAB working on a windows
>> > 7 64-bit system, not sure precisely what the issue was but the JAB
>> > only seemed to start working once I installed the 32-bit JVM,
>> > previously I
>> only
>> > had the 64-bit JVM installed. If the JAB does require the 32-bit JVM
>> > as well as the 64-bit JVM then all I can say is this fact is not
>> > documented anywhere. Even once the JAB is working the quality of
>> > accessibility can differ between platforms, Linux I probably would
>> > give the best rating,
>> on
>> > windows you can even notice some issues with relatively simple
>> applications
>> > such as MathTrax and on the Mac there are definitely issues (eg. the
>> file
>> > dialog for things like opening and saving files has issues on the Mac).
>> >
>> > In comparison SWT applications and certainly more sizable ones such as
>> > eclipse tend to just work straight out of the box. This is not to say
>> their
>> > always perfect but eclipse is mostly accessible and certainly most of
>> its
>> > functionality can be used by a blind user.
>> >
>> > Regarding your comment on reuse, may be accessibility is an example of
>> > what you say. By reusing the native OS controls SWT picks up the
>> > accessibility of those and the screen readers need not support another
>> > accessibility API as they do for swing.
>> >
>> > I think though Richard's comments on reuse related more to do with
>> non-UI
>> > parts of eclipse RCP/SWT and how they just don't work with normal
>> standard
>> > JDK implementations. I think image objects were an example of this.
>> > May
>> be
>> > there is advantages to the Eclipse project versions not found in the
>> > standard JDK classes.
>> >
>> >
>> > Michael Whapples
>> >
>> > -----Original Message----- From: Carolyn MacLeod
>> > Sent: Thursday, February 23, 2012 5:04 AM
>> >
>> > To: Blind Math list for those interested in mathematics
>> > Subject: Re: [Blindmath] Using Java Draw2D in an SWT GUI
>> >
>> > Hi again.
>> >
>> > Sorry to take so long to reply.
>> >
>> > JFrame is not an embeddable component, so SWT (or any other embeddor)
>> > can't embed JFrames.
>> > SWT_AWT.new_Frame() returns a subclass of EmbeddedFrame, which is a
>> > sibling of JFrame but it does not have a root pane.
>> > JApplet is embeddable and it has a root pane. Can you make do with a
>> > JApplet instead of a JFrame?
>> >
>> > I wrote another snippet for you (attached) that takes the root pane
>> > out
>> of
>> > a JFrame and sets it into a JApplet in an SWT GUI.
>> > Hopefully you could do something similar with a JFrame from your
>> > textbook's sample code.
>> > But this won't solve the whole problem, because the Swing controls
>> > from the JFrame still won't be accessible unless you have the JAB
>> > installed
>> and
>> > use an AT that works with it.
>> > (Question for you: Are Swing controls really that inaccessible? Is the
>> JAB
>> > hard to install? Don't AT usually work once the JAB is installed? I
>> don't
>> > know because I don't use Swing.)
>> >
>> > Regarding event integration, this article might be helpful:
>> > http://www.eclipse.org/**articles/Article-Swing-SWT-**
>> > Integration/index.html<
>> http://www.eclipse.org/articles/Article-Swing-SWT-Integration/index.html>
>> > The rule of thumb is to use SwingUtilities.invokeLater() and
>> > Display.asyncExec() to pass work from AWT/Swing to SWT and vice-versa.
>> > This article also discusses the tab traversal "glitch" that I tripped
>> over
>> > in the snippet I sent you earlier, and they show how to fix it in
>> > their example code.
>> >
>> >  I really do believe in the OOP concept of "reuse, don't reinvent,"
>> >>
>> > So do we, which is why we reused the OS controls instead of drawing
>> > our own.  :) We did talk about this with Sun in the beginning, but
>> > unfortunately it didn't work out.
>> >
>> > Also, I happened to trip over these other two snippets that manipulate
>> > BufferedImage and JAI TiledImage from within SWT.
>> > I am including them here in case they are helpful:
>> > https://bugs.eclipse.org/bugs/**show_bug.cgi?id=119363#c13<
>> https://bugs.eclipse.org/bugs/show_bug.cgi?id=119363#c13>
>> > https://bugs.eclipse.org/bugs/**show_bug.cgi?id=119363#c14<
>> https://bugs.eclipse.org/bugs/show_bug.cgi?id=119363#c14>
>> >
>> > Hope this helps,
>> > Carolyn
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > From:
>> > Richard Baldwin <baldwin@xxxxxxxxxxxxxxx>
>> > To:
>> > Blind Math list for those interested in mathematics
>> <blindmath@xxxxxxxxxx>
>> > Date:
>> > 01/31/2012 01:30 PM
>> > Subject:
>> > Re: [Blindmath] Using Java Draw2D in an SWT GUI Sent by:
>> > blindmath-bounces@xxxxxxxxxx
>> >
>> >
>> >
>> > Thanks for responding to my concerns. I will definitely take a look at
>> > your
>> > workabound and see how much it helps. Hopefully, I will be pleased with
>> > the
>> > results.
>> >
>> > I suspect, however, that simply providing compatibility at the AWT
>> Canvas
>> > level won't help much with my main concern. I already knew of one way to
>> > do
>> > that. I also already knew how to embed AWT Frame objects in an SWT
>> object.
>> > Unfortunately, I don't know how to easily integrate events fired by
>> those
>> > AWT components into the SWT event handling system and I don't know how
>> to
>> > embed Swing JFrame objects and/or their events in SWT objects.
>> >
>> > I know how to write new code that will play reasonably well with SWT.
>> That
>> > isn't my main concern. I really do believe in the OOP concept of "reuse,
>> > don't reinvent," and my main concern is the lack of compatibility of SWT
>> > with existing unmodified graphics libraries, which typically produce
>> > graphic outputs in Swing JFrame objects. Until we can successfully embed
>> > JFrame objects in SWT objects, and until we can easily integrate the
>> event
>> > handling mechanisms of the two systems, the use of those libraries
>> without
>> > modification of the libraries will probably be very difficult at best
>> and
>> > off limits at worst.
>> >
>> > Hopefully someone will prove me wrong on this.
>> >
>> > Dick Baldwin
>> >
>> > On Tue, Jan 31, 2012 at 11:03 AM, Carolyn MacLeod <
>> > Carolyn_MacLeod@xxxxxxxxxx> wrote:
>> >
>> >  Thank-you, Michael!
>> >> Carolyn
>> >>
>> >>
>> >>
>> >> From:
>> >> "Michael Whapples" <mwhapples@xxxxxxx>
>> >> To:
>> >> "Blind Math list for those interested in mathematics"
>> >> <blindmath@xxxxxxxxxx>
>> >> Date:
>> >> 31/01/2012 11:30 AM
>> >> Subject:
>> >> Re: [Blindmath] Using Java Draw2D in an SWT GUI
>> >> Sent by:
>> >> blindmath-bounces@xxxxxxxxxx
>> >>
>> >>
>> >>
>> >> Hello,
>> >> Thanks for taking the time to do this. I know you have asked questions
>> >>
>> > on
>> >
>> >> the orca-list about improving accessibility in SWT and eclipse and its
>> >> certainly appreciated. In my oppinion SWT is one of the few, if not the
>> >> best, GUI toolkits for making accessible applications which are also
>> >> cross-platform.
>> >>
>> >> Regards
>> >>
>> >> Michael whapples
>> >>
>> >> -----Original Message-----
>> >> From: Carolyn MacLeod
>> >> Sent: Tuesday, January 31, 2012 4:09 PM
>> >> To: blindmath@xxxxxxxxxx
>> >> Subject: [Blindmath] Using Java Draw2D in an SWT GUI
>> >>
>> >> Hello, list.
>> >>
>> >> My name is Carolyn and I am on the Eclipse SWT Team.
>> >> I am the developer responsible for SWT Accessibility.
>> >>
>> >> Ken Perry of Blinksoft asked me if I could help with an issue brought
>> up
>> >> by Richard Baldwin regarding SWT being accessible but largely
>> >>
>> > incompatible
>> >
>> >> with Swing/AWT.
>> >> I read several posts similar to this one:
>> >>
>> >>
>> >>  http://host.nfbnet.org/**pipermail/blindmath_nfbnet.**
>> > org/2012-January/004693.html<
>>
>> http://host.nfbnet.org/pipermail/blindmath_nfbnet.org/2012-January/004693.ht
>> ml<http://host.nfbnet.org/pipermail/blindmath_nfbnet.org/2012-January/004693.html>
>> >
>> >
>> >
>> >>
>> >> I wrote an SWT Snippet that I hope you will find useful:
>> >>
>> >>
>> >>  http://git.eclipse.org/c/**platform/eclipse.platform.swt.**
>> > git/tree/examples/org.eclipse.**swt.snippets/src/org/eclipse/**
>> > swt/snippets/Snippet361.java<
>>
>> http://git.eclipse.org/c/platform/eclipse.platform.swt.git/tree/examples/org
>> .eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet361.java
>> >
>> >
>> >
>> >> It shows how to host an AWT Canvas inside an SWT GUI, and use the GUI
>> to
>> >> initiate Java2D operations within the Canvas.
>> >> I randomly chose rotation and translation of the image, but you should
>> >>
>> > be
>> >
>> >> able to modify the snippet to do whatever Java2D operations you are
>> >> teaching.
>> >> The "Print Image" button uses SWT to take a screen snapshot of the
>> >>
>> > Canvas
>> >
>> >> and print it to a printer.
>> >> I had not heard of a printer that embosses images before, and I think
>> >>
>> > that
>> >
>> >> is really cool!
>> >>
>> >> I tried this snippet on Windows (XP) with JAWS (13) and on Mac OSX
>> >> (Leopard) with VoiceOver, and on Linux (Ubuntu 10.04) with Orca and it
>> >> worked on all 3 platforms.
>> >> It should work with other platform versions and screen readers as well.
>> >> The only glitch I encountered was on Windows, if the user tabs into the
>> >> Canvas, they can't tab back out.
>> >> They need to use the button mnemonics to traverse out of the Canvas:
>> >>
>> > alt+o
>> >
>> >> for Open, alt+x and alt+y for translating X and Y, alt+r for Rotate,
>> and
>> >> alt+p for Print.
>> >> This was not an issue on Mac or Linux.
>> >>
>> >> I cannot solve the deeper issues, like making SWT and AWT graphics
>> >> interchangeable without performance penalties (there are technical
>> >> issues),
>> >> or improving SWT's graphics support to the level of Java2D or more (we
>> >>
>> > are
>> >
>> >> a very small and very busy team, and we simply do not have the
>> >>
>> > manpower).
>> >
>> >> Hopefully this snippet will give you a work-around that is both
>> >>
>> > accessible
>> >
>> >> and teaches the math you want to teach.
>> >>
>> >> Carolyn
>> >> ______________________________**_________________
>> >> Blindmath mailing list
>> >> Blindmath@xxxxxxxxxx
>> >> http://nfbnet.org/mailman/**listinfo/blindmath_nfbnet.org<
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org>
>> >> To unsubscribe, change your list options or get your account info for
>> >> Blindmath:
>> >>
>> >>  http://nfbnet.org/mailman/**options/blindmath_nfbnet.org/**
>> > mwhapples%40aim.com<
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/mwhapples%40aim.com
>> >
>> >
>> >>
>> >>
>> >>
>> >> ______________________________**_________________
>> >> Blindmath mailing list
>> >> Blindmath@xxxxxxxxxx
>> >> http://nfbnet.org/mailman/**listinfo/blindmath_nfbnet.org<
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org>
>> >> To unsubscribe, change your list options or get your account info for
>> >> Blindmath:
>> >>
>> >>
>> >>  http://nfbnet.org/mailman/**options/blindmath_nfbnet.org/**
>> > carolyn_macleod%40ca.ibm.com<
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/carolyn_macleod%40ca.
>> ibm.com<http://nfbnet.org/mailman/options/blindmath_nfbnet.org/carolyn_macleod%40ca.ibm.com>
>> >
>> >
>> >
>> >>
>> >>
>> >>
>> >> ______________________________**_________________
>> >> Blindmath mailing list
>> >> Blindmath@xxxxxxxxxx
>> >> http://nfbnet.org/mailman/**listinfo/blindmath_nfbnet.org<
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org>
>> >> To unsubscribe, change your list options or get your account info for
>> >> Blindmath:
>> >>
>> >>
>> >>  http://nfbnet.org/mailman/**options/blindmath_nfbnet.org/**
>> > baldwin%40dickbaldwin.com<
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/baldwin%40dickbaldwin
>> .com<http://nfbnet.org/mailman/options/blindmath_nfbnet.org/baldwin%40dickbaldwin.com>
>> >
>> >
>> >
>> >>
>> >
>> >
>> > --
>> > Richard G. Baldwin (Dick Baldwin)
>> > Home of Baldwin's on-line Java Tutorials
>> > http://www.DickBaldwin.com
>> >
>> > Professor of Computer Information Technology
>> > Austin Community College
>> > (512) 223-4758
>> > mailto:Baldwin@xxxxxxxxxxxxxxx
>> > http://www.austincc.edu/**baldwin/ <http://www.austincc.edu/baldwin/>
>> > ______________________________**_________________
>> > Blindmath mailing list
>> > Blindmath@xxxxxxxxxx
>> > http://nfbnet.org/mailman/**listinfo/blindmath_nfbnet.org<
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org>
>> > To unsubscribe, change your list options or get your account info for
>> > Blindmath:
>> > http://nfbnet.org/mailman/**options/blindmath_nfbnet.org/**
>> > carolyn_macleod%40ca.ibm.com<
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/carolyn_macleod%40ca.
>> ibm.com<http://nfbnet.org/mailman/options/blindmath_nfbnet.org/carolyn_macleod%40ca.ibm.com>
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > ______________________________**_________________
>> > Blindmath mailing list
>> > Blindmath@xxxxxxxxxx
>> > http://nfbnet.org/mailman/**listinfo/blindmath_nfbnet.org<
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org>
>> > To unsubscribe, change your list options or get your account info for
>> > Blindmath:
>> > http://nfbnet.org/mailman/**options/blindmath_nfbnet.org/**
>> > mwhapples%40aim.com<
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/mwhapples%40aim.com
>> >
>> >
>> > ______________________________**_________________
>> > Blindmath mailing list
>> > Blindmath@xxxxxxxxxx
>> > http://nfbnet.org/mailman/**listinfo/blindmath_nfbnet.org<
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org>
>> > To unsubscribe, change your list options or get your account info for
>> > Blindmath:
>> > http://nfbnet.org/mailman/**options/blindmath_nfbnet.org/**
>> > baldwin%40dickbaldwin.com<
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/baldwin%40dickbaldwin
>> .com<http://nfbnet.org/mailman/options/blindmath_nfbnet.org/baldwin%40dickbaldwin.com>
>> >
>> >
>>
>>
>>
>> --
>> Richard G. Baldwin (Dick Baldwin)
>> Home of Baldwin's on-line Java Tutorials
>> http://www.DickBaldwin.com
>>
>> Professor of Computer Information Technology
>> Austin Community College
>> (512) 223-4758
>> mailto:Baldwin@xxxxxxxxxxxxxxx
>> http://www.austincc.edu/baldwin/
>> _______________________________________________
>> Blindmath mailing list
>> Blindmath@xxxxxxxxxx
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org
>> To unsubscribe, change your list options or get your account info for
>> Blindmath:
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/carolyn_macleod%40ca.
>> ibm.com<http://nfbnet.org/mailman/options/blindmath_nfbnet.org/carolyn_macleod%40ca.ibm.com>
>>
>>
>>
>>
>> _______________________________________________
>> Blindmath mailing list
>> Blindmath@xxxxxxxxxx
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org
>> To unsubscribe, change your list options or get your account info for
>> Blindmath:
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/john.gardner%40orst.e
>> du
>>
>>
>> _______________________________________________
>> Blindmath mailing list
>> Blindmath@xxxxxxxxxx
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org
>> To unsubscribe, change your list options or get your account info for
>> Blindmath:
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/kperry%40blinksoft.co
>> m<http://nfbnet.org/mailman/options/blindmath_nfbnet.org/kperry%40blinksoft.com>
>>
>>
>> _______________________________________________
>> Blindmath mailing list
>> Blindmath@xxxxxxxxxx
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org
>> To unsubscribe, change your list options or get your account info for
>> Blindmath:
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/keith537%40iglou.com
>>
>>
>> _______________________________________________
>> Blindmath mailing list
>> Blindmath@xxxxxxxxxx
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org
>> To unsubscribe, change your list options or get your account info for
>> Blindmath:
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/john.gardner%40orst.e
>> du
>>
>>
>> _______________________________________________
>> Blindmath mailing list
>> Blindmath@xxxxxxxxxx
>> http://nfbnet.org/mailman/listinfo/blindmath_nfbnet.org
>> To unsubscribe, change your list options or get your account info for
>> Blindmath:
>>
>> http://nfbnet.org/mailman/options/blindmath_nfbnet.org/baldwin%40dickbaldwin.com
>>
>
>
>
> --
> Richard G. Baldwin (Dick Baldwin)
> Home of Baldwin's on-line Java Tutorials
> http://www.DickBaldwin.com
>
> Professor of Computer Information Technology
> Austin Community College
> (512) 223-4758
> mailto:Baldwin@xxxxxxxxxxxxxxx
> http://www.austincc.edu/baldwin/
>



-- 
Richard G. Baldwin (Dick Baldwin)
Home of Baldwin's on-line Java Tutorials
http://www.DickBaldwin.com

Professor of Computer Information Technology
Austin Community College
(512) 223-4758
mailto:Baldwin@xxxxxxxxxxxxxxx
http://www.austincc.edu/baldwin/

Other related posts: