[brailleblaster] Re: Proposal: a new class in views package

  • From: Keith Creasy <kcreasy@xxxxxxx>
  • To: "brailleblaster@xxxxxxxxxxxxx" <brailleblaster@xxxxxxxxxxxxx>
  • Date: Thu, 17 Jan 2013 20:43:01 +0000

Hi John.

On item 1: I'll let Brandon work out the specifics but basically when something 
changes in the braille or text view the view notifies the document of the 
change. The document does what it needs to do and then notifies the 
DocumentManager that the views need to update. 

I have specific ideas and would be happy to write them up but really I don't 
want to dictate all this. There are several approaches that would work.


On item 2: The StyledTextView an display images but I don't think the text 
wraps around them. Basically the image gets converted to a glyph and that is 
inserted into the view, much like any other character. For this to work we'd 
probably have to get a library that can convert the images we need to represent 
into the format the StyledTextView can use. I'm thinking we are 6-9 months away 
from seriously looking at this.


-----Original Message-----
From: brailleblaster-bounce@xxxxxxxxxxxxx 
[mailto:brailleblaster-bounce@xxxxxxxxxxxxx] On Behalf Of John J. Boyer
Sent: Thursday, January 17, 2013 2:44 PM
To: brailleblaster@xxxxxxxxxxxxx
Subject: [brailleblaster] Re: Proposal: a new class in views package

Sounds good. How will the text and Braille views be synchronized? How will we 
display both print and tactile images? It would be good to have placeholders 
for images now, even though they will be implemented later.

John

On Thu, Jan 17, 2013 at 06:12:47PM +0000, Keith Creasy wrote:
> Yep.
> 
> One thing in AbstractView needs to be fixed somehow. It has a member that is 
> a "StyledTextView" and one of our views now is a tree view and we plan on 
> having a browser view.
> 
> I'd suggest AbstractView be a bit more generic or that we have a view 
> interface that all the views would implement.
> 
> 
> The interface might be nothing more than...
> 
> 
> public interface IView {
>                 public void initializeView (parent, rect, doc);
>                 public void updateView (); }
> 
> 
> Then a view, such as tree view, might...
> 
> public class TreeView implements IView { }
> 
> Then, in document manager we have an array of references to IView...
> 
> private List<IView> viewList = new ArrayList<IView>();
> 
> 
> 
> When a view is created by DocumentManager an interface to it is added to the 
> list.
> 
> Then, again in DocumentManager, , when the views need to be updated something 
> like...
> 
> Public void updateViews () {
>                 for (v : viewList) {
>                                 v.update ();
>                 }
> }
> 
> Keith Creasy
> Software Developer
> American Printing House for the Blind
> KCreasy@xxxxxxx
> Phone: 502.895.2405
> Skype: keith537
> 
> From: brailleblaster-bounce@xxxxxxxxxxxxx 
> [mailto:brailleblaster-bounce@xxxxxxxxxxxxx] On Behalf Of Brandon 
> Roller
> Sent: Thursday, January 17, 2013 12:46 PM
> To: brailleblaster@xxxxxxxxxxxxx
> Subject: [brailleblaster] Re: Proposal: a new class in views package
> 
> Since each view extends AbstractViews, initialize Views could be an abstract 
> method in the class, then implemented for each View.
> 
> -Brandon
> 
> On Thu, Jan 17, 2013 at 12:20 PM, Keith Creasy 
> <kcreasy@xxxxxxx<mailto:kcreasy@xxxxxxx>> wrote:
> Hi John.
> 
> We could do that. I'm sort of leaving it to Brandon and Chuck but what I had 
> in mind is to just have methods in each view like:
> 
> onInitialUpdate
> 
> and
> 
> onUpdate
> 
> Each view is bound to the document and so in these two methods they would 
> just make whatever calls to the document they needed to initialize and update 
> themselves.
> 
> Since we have several different kinds of views we might also want to define 
> an interface that each view can implement to handle communication with the 
> document.
> 
> This is much cleaner I think than having something that has to know about 
> each view and initialize it.
> 
> 
> Keith Creasy
> Software Developer
> American Printing House for the Blind
> KCreasy@xxxxxxx<mailto:KCreasy@xxxxxxx>
> Phone: 502.895.2405<tel:502.895.2405>
> Skype: keith537
> 
> 
> -----Original Message-----
> From: 
> brailleblaster-bounce@xxxxxxxxxxxxx<mailto:brailleblaster-bounce@freel
> ists.org> 
> [mailto:brailleblaster-bounce@xxxxxxxxxxxxx<mailto:brailleblaster-boun
> ce@xxxxxxxxxxxxx>] On Behalf Of John J. Boyer
> Sent: Thursday, January 17, 2013 12:13 PM
> To: brailleblaster@xxxxxxxxxxxxx<mailto:brailleblaster@xxxxxxxxxxxxx>
> Subject: [brailleblaster] Proposal: a new class in views package
> 
> I think it would be a good idea to have a class in the views package called 
> something like innitializeViews . It would call on methods in DocumentBase to 
> provide the text and Braille associated with elements and would call another 
> method to transmit back the starting and ending positions of the text in the 
> StyledText view. This information would later be used to find the location in 
> the document corresponding to the cursor location. It would be updated when 
> the document is edited.
> 
> John
> 
> --
> John J. Boyer; President, Chief Software Developer Abilitiessoft, Inc.
> http://www.abilitiessoft.com
> Madison, Wisconsin USA
> Developing software for people with disabilities
> 
> 
> 

--
John J. Boyer; President, Chief Software Developer Abilitiessoft, Inc.
http://www.abilitiessoft.com
Madison, Wisconsin USA
Developing software for people with disabilities



Other related posts: