Re: FruitBasket-MFC

  • From: "Will Pearson" <will@xxxxxxxxxxxxx>
  • To: <programmingblind@xxxxxxxxxxxxx>
  • Date: Mon, 19 Nov 2007 07:59:10 -0000

FruitBasket-MFCHi,

From what I remember the controls on the dialog editor are just graphical 
representations of controls.  These graphical representations lack the 
underlying infrastructure associated with normal controls and are not handled 
by the dialog manager or window manager.  So, concepts such as keyboard focus 
don't apply to the dialog manager, at least not in the strict programatic sense.

The WinForms designer also uses graphical representations of controls; however, 
the WinForms designer has simulated the concept of keyboard focus and its 
associated features by changing the MSAA information in response to the tab 
key.  This gives the appearance that focus has moved when it actually hasn't, 
and it also explains why you get the best results with the WinForms designer if 
you are using AT that makes use of MSAA.

The dialog editor does provide MSAA information for the different controls; 
what it fails to do is to change that information in response to the tab key.  
In other words, the dialog editor fails to simulate a tab sequence through the 
controls.

I did raise this as a bug during the Visual Studio 2005 timeframe.  
Unfortunately, the bug was closed with a status of won't fix during that 
version.  I don't know if any of you were paying attention to what the VC team 
were upto during the Visual Studio 2005 timeframe but they were pretty busy and 
had a lot of IDE features to incorperate.  They were pretty pushed for time and 
even had to drop some key features such as the class designer and IDE support 
for click once deployment.  So, the VC IDE team really had no time to create a 
simulated tab sequence within the dialog editor during the Visual Studio 2005 
timeframe.

As we're now on a different version of Visual Studio then things may have 
changed.  As I'm no longer a Microsoft MVP and I don't really follow industry 
goings on these days I don't know what the VC IDE team are up to during the 
Visual Studio 2008 timeframe.  It's probably worth someone taking a look at 
Visual Studio 2008 to see if the bug I filed was reopened and fixed.

Will
  ----- Original Message ----- 
  From: Ken Perry 
  To: programmingblind@xxxxxxxxxxxxx 
  Sent: Monday, November 19, 2007 6:36 AM
  Subject: RE: FruitBasket-MFC




  Oh yeah same for Jaws and I am betting most screen readers.  Like I said I 
was able to drop the controls but I had to go in and edit their locations 
because the dialog can not be tabbed through like the Form editor with Jaws.  I 
mean when you read tutorials on MFC they say just select the button and hit 
enter and it will give you a list of properties or stuff like that.  Well In my 
case the add button and delete button and edit box were all visible but the 
list box was not on the screen.  I maximized the dialog with Alt-space but that 
didn't seem to help.  I finally just went to the resource file and edited it 
with the source code editor which means you have to sit down and figure out 
where each control should go.  I am not complaining because you can do it and 
it gives you full control over the dialog .  It could be worse as we all know 
because visual c++ 6 and jaws you couldn't even select the controls and drop 
them on the dialog.  At least now you can drop them and arrange them later.

  Ken



------------------------------------------------------------------------------
  From: programmingblind-bounce@xxxxxxxxxxxxx 
[mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of jaffar
  Sent: Sunday, November 18, 2007 10:30 PM
  To: programmingblind@xxxxxxxxxxxxx
  Subject: Re: FruitBasket-MFC


  Hi Ken.  Would agree with you there.  The resource editor is not really 
accessible, although with window eyes, one could use the num pad to read some 
info on the screen.  I wish it were more accessible though.  Cheers!
    ----- Original Message ----- 
    From: Ken Perry 
    To: programmingblind@xxxxxxxxxxxxx 
    Sent: Monday, November 19, 2007 2:09 PM
    Subject: FruitBasket-MFC





    You ask for it you got it.  Here it is the one the only FruitBasket in MFC. 
 The hardest part of writing this was using the resource editor.  It was like 
being back in Visual studio 6.  Why they didn't just make the current dialog 
editor work for the old resources I don't know.  I doubt they will fix this in 
2008 but we can all pray.  Jamal have you tried the MFC resource editor and do 
you think it could be made to be accessible like the forms editor?  

    Anyway even with the problems I was able to make the FruitBasket program in 
little to no time so here it is.  Note most of the guts of the program is in 
FruitBasketDlg.cpp and FruitBasketDlg.h  I am going to try to make a minimalist 
version of this but the trouble I had with a single source version of this was 
the command line options.  Microsoft has not made it easy to just compile an 
MFC application.  Further more a single cpp file would need all the controls 
done dynamically rather than in a resource file.  While that would get around 
the problems I had with the resource editor, I find fighting with the resource 
files easier than writing all the code to create the controls dynamically.  
This doesn't mean I won't make a minimalist version of the MFC FruitBasket it 
just means it is not done yet.  I will most likely make it when I re make the 
win32 version I lost.

    OK here is the link to the two archives of the MFC version.  I made two 
because some people on this list like .rar and some like .zip.  Inthane use 
which ever you want to on the page it is the same file.  The executable is 
under the release directory.

    .rar: 
    http://www.blinksoft.com/~whistler/FruitBasket-MFC.rar 
    .zip 
    http://www.blinksoft.com/~whistler/FruitBasket-MFC.zip 

    Ken 

Other related posts: