[brailleblaster] Re: 6 new revisions pushed by brandon....@xxxxxxxxx on 2014-07-29 16:55 GMT

  • From: "Vic Beckley" <vic.beckley3@xxxxxxxxx>
  • To: <brailleblaster@xxxxxxxxxxxxx>
  • Date: Tue, 29 Jul 2014 13:22:32 -0400

Brandon,

What are boxlines and how do you add them?

Thanks for any info on this.


Best regards from Ohio,

Vic


-----Original Message-----
From: brailleblaster-bounce@xxxxxxxxxxxxx
[mailto:brailleblaster-bounce@xxxxxxxxxxxxx] On Behalf Of
brailleblaster@xxxxxxxxxxxxxx
Sent: Tuesday, July 29, 2014 12:56 PM
To: brailleblaster@xxxxxxxxxxxxx
Subject: [brailleblaster] 6 new revisions pushed by brandon....@xxxxxxxxx on
2014-07-29 16:55 GMT

6 new revisions:

Revision: dd8a9cda2e13
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Wed Jul 23 17:43:09 2014 UTC
Log:      Added ability to dynaimically add boxlines to basic block  
elements suc...
http://code.google.com/p/brailleblaster/source/detail?r=dd8a9cda2e13

Revision: acadcacbef30
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Fri Jul 25 18:18:06 2014 UTC
Log:      Added boxlines to elements with lines before and after are now  
honored
http://code.google.com/p/brailleblaster/source/detail?r=acadcacbef30

Revision: ff7834cb4ac3
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Mon Jul 28 18:33:55 2014 UTC
Log:      Fixed bug with new boxline element not being added to section  
element
http://code.google.com/p/brailleblaster/source/detail?r=ff7834cb4ac3

Revision: c3669c7ebbf3
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Tue Jul 29 13:38:39 2014 UTC
Log:      Fixed bug in opening html based UTD files
http://code.google.com/p/brailleblaster/source/detail?r=c3669c7ebbf3

Revision: 3123a0d696ae
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Tue Jul 29 15:38:12 2014 UTC
Log:      Committing changes before merge
http://code.google.com/p/brailleblaster/source/detail?r=3123a0d696ae

Revision: 73ad8f58eb4a
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Tue Jul 29 15:38:38 2014 UTC
Log:      merged with main branch
http://code.google.com/p/brailleblaster/source/detail?r=73ad8f58eb4a

============================================================================
==
Revision: dd8a9cda2e13
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Wed Jul 23 17:43:09 2014 UTC
Log:      Added ability to dynaimically add boxlines to basic block  
elements such as a paragraph
http://code.google.com/p/brailleblaster/source/detail?r=dd8a9cda2e13

Added:
   
/src/main/org/brailleblaster/perspectives/braille/stylepanel/StylePanel.java
Modified:
  /src/main/org/brailleblaster/document/SemanticFileHandler.java
  /src/main/org/brailleblaster/perspectives/braille/Manager.java
   
/src/main/org/brailleblaster/perspectives/braille/document/BrailleDocument.j
ava
 
/src/main/org/brailleblaster/perspectives/braille/stylepanel/EditPanel.java
   
/src/main/org/brailleblaster/perspectives/braille/stylepanel/StyleManager.ja
va
  /src/main/org/brailleblaster/perspectives/braille/views/tree/XMLTree.java
 
/src/main/org/brailleblaster/perspectives/braille/views/wp/BrailleView.java
  /src/main/org/brailleblaster/perspectives/braille/views/wp/TextView.java

=======================================
--- /dev/null
+++  
/src/main/org/brailleblaster/perspectives/braille/stylepanel/StylePanel.java

Wed Jul 23 17:43:09 2014 UTC
@@ -0,0 +1,102 @@
+package org.brailleblaster.perspectives.braille.stylepanel;
+
+import org.brailleblaster.localization.LocaleHandler;
+import  
org.brailleblaster.perspectives.braille.document.BBSemanticsTable.Styles;
+import  
org.brailleblaster.perspectives.braille.document.BBSemanticsTable.StylesType
;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FormAttachment;
+import org.eclipse.swt.layout.FormData;
+import org.eclipse.swt.layout.FormLayout;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Spinner;
+
+public abstract class StylePanel {
+       static LocaleHandler lh = new LocaleHandler();
+
+       private final static int LEFT_MARGIN = 0;
+       private final static int RIGHT_MARGIN = 15;
+       private final static int TOP_MARGIN = 50;
+       private final static int BOTTOM_MARGIN = 100;
+
+       protected Group group;
+       protected StyleManager sm;
+
+       public StylePanel(StyleManager sm, Group documentWindow){
+               this.sm = sm;
+               this.group = new Group(documentWindow, SWT.FILL |
SWT.BORDER);
+               this.group.setText(lh.localValue("editStyle"));
+               setLayoutData(this.group, LEFT_MARGIN, RIGHT_MARGIN,
TOP_MARGIN,  
BOTTOM_MARGIN);
+               this.group.setLayout(new FormLayout());
+       }
+
+       protected void setLayoutData(Control c, int left, int right, int
top, int  
bottom){
+               FormData location = new FormData();
+
+               location.left = new FormAttachment(left);
+               location.right = new FormAttachment(right);
+               location.top = new FormAttachment(top);
+               location.bottom = new FormAttachment(bottom);
+
+               c.setLayoutData(location);
+       }
+
+       protected void resetLayout(){
+               group.pack();
+               group.getParent().layout();
+       }
+
+       protected Label makeLabel(String text, int left, int right, int top,
int  
bottom){
+               Label l = new Label(group, SWT.BORDER | SWT.CENTER);
+               l.setText(text);
+               setLayoutData(l, left, right, top, bottom);
+
+               return l;
+       }
+
+       protected Spinner makeSpinner(int left, int right, int top, int
bottom){
+               Spinner sp = new Spinner(group, SWT.BORDER);
+               setLayoutData(sp, left, right, top, bottom);
+               return sp;
+       }
+
+       protected void setSpinnerData(Spinner sp, Styles style, StylesType
type){
+               if(style.contains(type))
+
sp.setSelection(Integer.valueOf((String)style.get(type)));
+               else
+                       sp.setSelection(0);
+       }
+
+       protected Combo makeCombo(String [] values, int left, int right, int
top,  
int bottom){
+               Combo cb = new Combo(group, SWT.BORDER);
+               cb.setItems(values);
+               setLayoutData(cb, left, right, top, bottom);
+
+               return cb;
+       }
+
+       protected void showTable(){
+               group.setVisible(true);
+       }
+
+       protected void hideTable(){
+               group.setVisible(false);
+       }
+
+       protected Group getGroup(){
+        return group;
+    }
+
+       protected void dispose(){
+               group.dispose();
+       }
+
+       protected boolean isVisible(){
+        if(!group.isDisposed() && group.isVisible())
+            return true;
+        else
+            return false;
+    }
+}
=======================================
--- /src/main/org/brailleblaster/document/SemanticFileHandler.java      Thu
Jul  
17 11:34:16 2014 UTC
+++ /src/main/org/brailleblaster/document/SemanticFileHandler.java      Wed
Jul  
23 17:43:09 2014 UTC
@@ -6,6 +6,7 @@
  import java.io.FileReader;
  import java.io.IOException;
  import java.util.HashMap;
+import java.util.Map.Entry;

  import org.slf4j.Logger;
  import org.slf4j.LoggerFactory;
@@ -185,4 +186,16 @@
        public String getDefault(String elementName){
                return defaults.get(elementName);
        }
+
+       public String getElementBySemantic(String semantic){
+               return getKeyByValue(semantic);
+       }
+
+       private String getKeyByValue(String sem) {
+               for (Entry<String, String> entry : defaults.entrySet()) {
+                       if (entry.getValue().equals(sem))
+                               return entry.getKey();
+               }
+                       return null;
+       }
  }
=======================================
--- /src/main/org/brailleblaster/perspectives/braille/Manager.java      Thu
Jul  
17 20:03:48 2014 UTC
+++ /src/main/org/brailleblaster/perspectives/braille/Manager.java      Wed
Jul  
23 17:43:09 2014 UTC
@@ -55,6 +55,7 @@
  import  
org.brailleblaster.perspectives.braille.document.BBSemanticsTable.Styles;
  import  
org.brailleblaster.perspectives.braille.document.BBSemanticsTable.StylesType
;
  import org.brailleblaster.perspectives.braille.document.BrailleDocument;
+import  
org.brailleblaster.perspectives.braille.mapping.elements.BrlOnlyMapElement;
  import org.brailleblaster.perspectives.braille.mapping.elements.Range;
  import  
org.brailleblaster.perspectives.braille.mapping.elements.SectionElement;
  import  
org.brailleblaster.perspectives.braille.mapping.elements.TextMapElement;
@@ -742,8 +743,7 @@
            if (arch.getCurrentConfig().equals("epub.cfg")){
                text.insertNewNode(list.get(posList.get(posList.size() -  
1)).end,"aside");
            }
-           else{
-
+           else{
                    text.insertNewNode(list.get(posList.get(posList.size() -

1)).end,"prodnote");
            }

@@ -816,7 +816,7 @@
                        document.changeSemanticAction(message,  
list.getCurrent().parentElement());
                        message.put("style",
styles.get(styles.getKeyFromAttribute(parent)));
                        ArrayList<TextMapElement> itemList =  
list.findTextMapElements(list.getCurrentIndex(), parent, true);
-
+
                        int start = list.indexOf(itemList.get(0));
                        int end = list.indexOf(itemList.get(itemList.size()
- 1));
                        int origPos =
list.get(list.getNodeIndex(itemList.get(0))).start;
@@ -838,6 +838,7 @@
                                message.put("brailleNext", -1);
                        }

+                       //else {
                        text.adjustStyle(message, itemList);
                        braille.adjustStyle(message, itemList);

@@ -847,11 +848,53 @@
                                list.shiftOffsetsFromIndex(end + 1,  
(Integer)message.getValue("linesAfterOffset"),   
(Integer)message.getValue("linesAfterOffset"), origPos);

                        treeView.adjustItemStyle(list.getCurrent());
+                       //}
+
+
if(((Styles)message.getValue("Style")).getName().equals("boxline"))
+                               createBoxline(parent, message, itemList);
+
                        group.setRedraw(true);
                }
                else
                        new Notify(lh.localValue("nothingToApply"));
        }
+
+       private void createBoxline(Element p, Message m,  
ArrayList<TextMapElement> itemList){
+               Element wrapper = document.wrapElement(p, "boxline");
+               if(wrapper != null){
+                       //document.translateElement(wrapper);
+                       int startPos = list.indexOf(itemList.get(0));
+                       BrlOnlyMapElement b1 =  new  
BrlOnlyMapElement(p.getParent().getChild(0), (Element)p.getParent());
+                       b1.setOffsets(list.get(startPos).start,
list.get(startPos).start +  
b1.textLength());
+
b1.setBrailleOffsets(list.get(startPos).brailleList.getFirst().start,  
list.get(startPos).brailleList.getFirst().start + b1.getText().length());
+                       list.add(startPos, b1);
+
+                       text.insertText(itemList.get(0).start,
list.get(startPos).getText()  
+ "\n");
+
braille.insertText(itemList.get(0).brailleList.getFirst().start,  
list.get(startPos).brailleList.getFirst().value() + "\n");
+                       list.shiftOffsetsFromIndex(startPos + 1,  
list.get(startPos).getText().length() + 1,  
list.get(startPos).brailleList.getFirst().value().length() + 1,  
list.get(startPos + 1).start);
+
+                       int endPos =
list.indexOf(itemList.get(itemList.size() - 1)) + 1;
+                       BrlOnlyMapElement b2 =  new  
BrlOnlyMapElement(p.getParent().getChild(p.getParent().getChildCount() -  
1), (Element)p.getParent());
+                       b2.setOffsets(list.get(endPos - 1).end + 1,
list.get(endPos - 1).end +  
1 + b2.textLength());
+                       b2.setBrailleOffsets(list.get(endPos -
1).brailleList.getLast().end +  
1, list.get(endPos - 1).brailleList.getLast().end + 1 +  
b2.getText().length());
+                       list.add(endPos, b2);
+
+                       text.insertText(itemList.get(itemList.size() -
1).end, "\n" +  
list.get(endPos).getText());
+                       braille.insertText(itemList.get(itemList.size() -  
1).brailleList.getLast().end, "\n" +  
list.get(endPos).brailleList.getFirst().value());
+                       list.shiftOffsetsFromIndex(endPos + 1,  
list.get(endPos).getText().length() + 1,  
list.get(endPos).brailleList.getFirst().value().length() + 1,  
list.get(endPos).start);
+
+                       for(int i = 0; i < itemList.size(); i++)
+                               treeView.removeItem(itemList.get(i), new
Message(null));
+
+                       treeView.newTreeItem(list.get(startPos),
treeView.getSelectionIndex(),  
0);
+
handleSetCurrent(Message.createSetCurrentMessage(Sender.TREE,  
list.get(list.getCurrentIndex() + 1).start, false));
+
dispatch(Message.createUpdateCursorsMessage(Sender.TREE));
+
+                       for(int i = 0; i < list.size(); i++){
+                               System.out.println("Start: " +
list.get(i).start + "\tEnd: " +  
list.get(i).end + "\t" +  list.get(i).getClass());
+                       }
+               }
+       }

        public void saveAs(){
                BBFileDialog dialog = new BBFileDialog(wp.getShell(),
SWT.SAVE,  
arch.getFileTypes(), arch.getFileExtensions());
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/document/BrailleDocument.j
ava      
Thu Jul 17 11:34:16 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/document/BrailleDocument.j
ava      
Wed Jul 23 17:43:09 2014 UTC
@@ -12,6 +12,7 @@
  import nu.xom.Element;
  import nu.xom.Elements;
  import nu.xom.Node;
+import nu.xom.ParentNode;
  import nu.xom.ParsingException;
  import nu.xom.Text;

@@ -650,6 +651,32 @@
                        }
                }

+               return null;
+       }
+
+
+       public Element wrapElement(Element e, String type){
+               if(type.equals("boxline")){
+                       Element boxline = new
Element(semHandler.getElementBySemantic(type));
+                       Element sb1 = new Element("brl");
+                       sb1.appendChild(new Text("777777777777777"));
+
+                       Element sb2 = new Element("brl");
+                       sb2.appendChild(new Text("GGGGGGGGGGGGGGG"));
+
+                       boxline.addAttribute(new
Attribute("semantics","style,boxline"));
+                       boxline.appendChild(sb1);
+                       boxline.appendChild(sb2);
+
+                       ParentNode parent = e.getParent();
+                       int index = parent.indexOf(e);
+                       boxline.insertChild(parent.removeChild(e), 1);
+                       //boxline.appendChild(parent.removeChild(e));
+                       parent.insertChild(boxline, index);
+                       addNamespace(boxline);
+                       return boxline;
+               }
+
                return null;
        }
  }
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/stylepanel/EditPanel.java

Fri Apr  4 15:29:56 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/stylepanel/EditPanel.java

Wed Jul 23 17:43:09 2014 UTC
@@ -1,30 +1,18 @@
  package org.brailleblaster.perspectives.braille.stylepanel;

-import org.brailleblaster.localization.LocaleHandler;
  import  
org.brailleblaster.perspectives.braille.document.BBSemanticsTable.Styles;
  import  
org.brailleblaster.perspectives.braille.document.BBSemanticsTable.StylesType
;
  import org.brailleblaster.util.Notify;
  import org.eclipse.swt.SWT;
  import org.eclipse.swt.events.KeyAdapter;
  import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.layout.FormLayout;
  import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Control;
  import org.eclipse.swt.widgets.Group;
  import org.eclipse.swt.widgets.Label;
  import org.eclipse.swt.widgets.Spinner;
  import org.eclipse.swt.widgets.Text;

-public class EditPanel {
-       static LocaleHandler lh = new LocaleHandler();
-
-       private final static int LEFT_MARGIN = 0;
-       private final static int RIGHT_MARGIN = 15;
-       private final static int TOP_MARGIN = 50;
-       private final static int BOTTOM_MARGIN = 100;
-
+public class EditPanel extends StylePanel {
        //For use in making localized UI
        final private String [] emphasisList = {lh.localValue("bold"),  
lh.localValue("italic"), lh.localValue("underline")};
        //For determining combo box position in relation to liblouis value
@@ -38,8 +26,6 @@
        protected static final int RIGHT = 2;

        protected Styles originalStyle;
-       protected Group group;
-       protected StyleManager sm;
        protected Text styleName;

        private Label styleLabel, linesBeforeLabel, linesAfterLabel,
marginLabel,  
indentLabel, alignmentLabel, emphasisLabel;
@@ -47,12 +33,8 @@
        protected Spinner linesBeforeSpinner, linesAfterSpinner,
marginSpinner,  
indentSpinner;

        public EditPanel(StyleManager sm, Group documentWindow, Styles
style){
-               this.sm = sm;
+               super(sm, documentWindow);
                originalStyle = style;
-               this.group = new Group(documentWindow, SWT.FILL |
SWT.BORDER);
-               this.group.setText(lh.localValue("editStyle"));
-               setLayoutData(this.group, LEFT_MARGIN, RIGHT_MARGIN,
TOP_MARGIN,  
BOTTOM_MARGIN);
-               this.group.setLayout(new FormLayout());

                styleLabel = makeLabel(lh.localValue("styleName"), 0, 50, 0,
10);
                styleName = new Text(group, SWT.BORDER);
@@ -96,50 +78,7 @@
 
emphasisCombo.setToolTipText(lh.localValue("emphasisTooltip"));
        }

-       protected void setLayoutData(Control c, int left, int right, int
top, int  
bottom){
-               FormData location = new FormData();
-
-               location.left = new FormAttachment(left);
-               location.right = new FormAttachment(right);
-               location.top = new FormAttachment(top);
-               location.bottom = new FormAttachment(bottom);
-
-               c.setLayoutData(location);
-       }

-       protected void resetLayout(){
-               group.pack();
-               group.getParent().layout();
-       }
-
-       private Label makeLabel(String text, int left, int right, int top,
int  
bottom){
-               Label l = new Label(group, SWT.BORDER | SWT.CENTER);
-               l.setText(text);
-               setLayoutData(l, left, right, top, bottom);
-
-               return l;
-       }
-
-       private Spinner makeSpinner(int left, int right, int top, int
bottom){
-               Spinner sp = new Spinner(group, SWT.BORDER);
-               setLayoutData(sp, left, right, top, bottom);
-               return sp;
-       }
-
-       protected void setSpinnerData(Spinner sp, Styles style, StylesType
type){
-               if(style.contains(type))
-
sp.setSelection(Integer.valueOf((String)style.get(type)));
-               else
-                       sp.setSelection(0);
-       }
-
-       private Combo makeCombo(String [] values, int left, int right, int
top,  
int bottom){
-               Combo cb = new Combo(group, SWT.BORDER);
-               cb.setItems(values);
-               setLayoutData(cb, left, right, top, bottom);
-
-               return cb;
-       }

        protected Styles getNewStyle(){
                Styles newStyle;
@@ -150,7 +89,6 @@
                else
                        newStyle =
sm.getSemanticsTable().getNewStyle(styleName.getText());

-
                int selectionIndex = emphasisCombo.getSelectionIndex();
                if(selectionIndex != -1){
                        if(selectionIndex == BOLD)
@@ -197,27 +135,9 @@
                }
        }

+       @Override
        protected void showTable(){
                group.setVisible(true);
                styleName.setFocus();
        }
-
-       protected void hideTable(){
-               group.setVisible(false);
-       }
-
-       protected Group getGroup(){
-        return group;
-    }
-
-       protected void dispose(){
-               group.dispose();
-       }
-
-       protected boolean isVisible(){
-        if(!group.isDisposed() && group.isVisible())
-            return true;
-        else
-            return false;
-    }
  }
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/stylepanel/StyleManager.ja
va       
Thu Jul  3 16:07:57 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/stylepanel/StyleManager.ja
va       
Wed Jul 23 17:43:09 2014 UTC
@@ -50,7 +50,7 @@
  public class StyleManager{

      private StyleTable table;
-    private EditPanel editor;
+    private StylePanel editor;
      private String configFile;
      Manager dm;
      TextMapElement t;
@@ -83,7 +83,10 @@
        lastSelection = table.getTable().getSelectionIndex();
        String style = table.getTable().getSelection()[0].getText(1);
        this.table.dispose();
-       editor = new EditStyleView(this, dm.getGroup(),  
semanticsTable.get(style));
+       if(semanticsTable.get(style).getName().equals("boxline"))
+               editor = new EditBoxLineView(this, dm.getGroup(),  
semanticsTable.get(style));
+       else
+               editor = new EditStyleView(this, dm.getGroup(),  
semanticsTable.get(style));
        dm.setTabList();
      }

@@ -102,6 +105,7 @@
      public void apply(String item){
        Message m = new Message(BBEvent.UPDATE_STYLE);
        Styles style = semanticsTable.get(item);
+
        if(style != null){
                m.put("Style", style);
                dm.dispatch(m);
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/views/tree/XMLTree.java

Thu Jul 17 19:46:53 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/views/tree/XMLTree.java

Wed Jul 23 17:43:09 2014 UTC
@@ -200,7 +200,7 @@

        @Override
        public void newTreeItem(TextMapElement t, int index, int offset){
-               Element parentElement = (Element)t.n.getParent();
+               Element parentElement = (Element)t.parentElement();
 
while(parentElement.getAttributeValue("semantics").contains("action")){
                        parentElement = (Element)parentElement.getParent();
                }
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/views/wp/BrailleView.java

Mon Jul 21 19:30:53 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/views/wp/BrailleView.java

Wed Jul 23 17:43:09 2014 UTC
@@ -467,22 +467,25 @@
                String textBefore = "";
                Styles style = (Styles)m.getValue("style");
                Styles previousStyle = (Styles)m.getValue("previousStyle");
+               boolean boxline = style.getName().equals("boxline");

+               if(!boxline){
                setListenerLock(true);
-               view.setLineIndent(view.getLineAtOffset(start),
getLineNumber(start,  
view.getTextRange(start, (end - start))), 0);
-               view.setLineAlignment(view.getLineAtOffset(start),
getLineNumber(start,  
view.getTextRange(start, (end - start))), SWT.LEFT);
+                       view.setLineIndent(view.getLineAtOffset(start),
getLineNumber(start,  
view.getTextRange(start, (end - start))), 0);
+                       view.setLineAlignment(view.getLineAtOffset(start),
getLineNumber(start,  
view.getTextRange(start, (end - start))), SWT.LEFT);

-               if(!style.contains(StylesType.linesBefore)  &&  
previousStyle.contains(StylesType.linesBefore))
-                       removeLinesBefore(m);
-
-               if(!style.contains(StylesType.linesAfter) &&   
previousStyle.contains(StylesType.linesAfter))
-                       removeLinesAfter(m);
+                       if(!style.contains(StylesType.linesBefore)  &&  
previousStyle.contains(StylesType.linesBefore))
+                               removeLinesBefore(m);

+                       if(!style.contains(StylesType.linesAfter) &&   
previousStyle.contains(StylesType.linesAfter))
+                               removeLinesAfter(m);
+               }
                start = (Integer)m.getValue("start");
                end = (Integer)m.getValue("end");
                int prev = (Integer)m.getValue("braillePrev");
                int next = (Integer)m.getValue("brailleNext");

+               if(!boxline){
                for (Entry<StylesType, Object> entry : style.getEntrySet())
{
                        switch(entry.getKey()){
                                case linesBefore:
@@ -530,6 +533,7 @@
                        }
                }
                setListenerLock(false);
+               }
        }

        private int getPrev(Message m){
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/views/wp/TextView.java

Mon Jul 21 19:30:53 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/views/wp/TextView.java

Wed Jul 23 17:43:09 2014 UTC
@@ -307,6 +307,8 @@

 
if(view.getLineAtOffset(view.getCaretOffset()) != currentLine)
 
sendStatusBarUpdate(view.getLineAtOffset(view.getCaretOffset()));
+
+                               System.out.println("Pos:\t" +
view.getCaretOffset());
                        }
                });

@@ -501,6 +503,7 @@
                Message message =
Message.createSetCurrentMessage(Sender.TEXT, pos,  
false);
                manager.dispatch(message);
                setViewData(message);
+               System.out.println("Start:\t" + currentStart + "
CurrentEnd:\t" +  
currentEnd);
        }

        private void sendDeleteSpaceMessage(int start, int offset){
@@ -824,7 +827,7 @@
                        handleLineWrap(start, reformattedText, margin,  
style.contains(StylesType.firstLineIndent));
                }

-               if(isFirst(n) && style.contains(StylesType.firstLineIndent))
+               if(!(list.get(listIndex) instanceof BrlOnlyMapElement) &&
isFirst(n) &&  
style.contains(StylesType.firstLineIndent))
                        setFirstLineIndent(start, style);

                if(style.contains(StylesType.format))
@@ -1513,86 +1516,89 @@
                //Get previous style for comparison on adding or removing
lines before  
or after
                Styles style = (Styles)m.getValue("style");
                Styles previousStyle = (Styles)m.getValue("previousStyle");
-
+               boolean boxline = style.getName().equals("boxline");
+
                setListenerLock(true);
                //Reset indent, alignment, and emphasis
-               view.setLineIndent(view.getLineAtOffset(start),
getLineNumber(start,  
view.getTextRange(start, (end - start))), 0);
-               view.setLineAlignment(view.getLineAtOffset(start),
getLineNumber(start,  
view.getTextRange(start, (end - start))), SWT.LEFT);
-               setFontStyleRange(start, end - start, new StyleRange());
+               if(!boxline){
+                       view.setLineIndent(view.getLineAtOffset(start),
getLineNumber(start,  
view.getTextRange(start, (end - start))), 0);
+                       view.setLineAlignment(view.getLineAtOffset(start),
getLineNumber(start,  
view.getTextRange(start, (end - start))), SWT.LEFT);
+                       setFontStyleRange(start, end - start, new
StyleRange());

-               if(!style.contains(StylesType.linesBefore) &&  
previousStyle.contains(StylesType.linesBefore))
-                       removeLinesBefore(m);
+                       if(!style.contains(StylesType.linesBefore) &&  
previousStyle.contains(StylesType.linesBefore))
+                               removeLinesBefore(m);

-               if(!style.contains(StylesType.linesAfter) &&  
previousStyle.contains(StylesType.linesAfter))
-                       removeLinesAfter(m);
+                       if(!style.contains(StylesType.linesAfter) &&  
previousStyle.contains(StylesType.linesAfter))
+                               removeLinesAfter(m);
+               }
+
                start = (Integer)m.getValue("start");
                end = (Integer)m.getValue("end");
                int prev = (Integer)m.getValue("prev");
                int next = (Integer)m.getValue("next");
-
-               for (Entry<StylesType, Object> entry : style.getEntrySet())
{
-                       switch(entry.getKey()){
-                               case linesBefore:
-                                       int linesBeforeOffset;
-                                       if(start != prev){
-                                               view.replaceTextRange(prev,
(start - prev), "");
-                                               length = start - prev;
-                                       }
-                                       spaces =
Integer.valueOf((String)entry.getValue());
+               if(!boxline){
+                       for (Entry<StylesType, Object> entry :
style.getEntrySet()) {
+                               switch(entry.getKey()){
+                                       case linesBefore:
+                                               int linesBeforeOffset;
+                                               if(start != prev){
+
view.replaceTextRange(prev, (start - prev), "");
+                                                       length = start -
prev;
+                                               }
+                                               spaces =
Integer.valueOf((String)entry.getValue());

-                                       textBefore =
makeInsertionString(spaces,'\n');
-                                       linesBeforeOffset = spaces - length;
+                                               textBefore =
makeInsertionString(spaces,'\n');
+                                               linesBeforeOffset = spaces -
length;

-                                       insertBefore(start - (start - prev),
textBefore);
-                                       m.put("linesBeforeOffset",
linesBeforeOffset);
-                                       start += linesBeforeOffset;
-                                       end += linesBeforeOffset;
-                                       if(next != -1)
-                                               next += linesBeforeOffset;
-                                       break;
-                               case linesAfter:
-                                       length = 0;
-                                       int linesAfterOffset;
-                                       if(end != next && next != 0){
-                                               view.replaceTextRange(end,
(next - end), "");
-                                               length = next - end;
-                                       }
+                                               insertBefore(start - (start
- prev), textBefore);
+                                               m.put("linesBeforeOffset",
linesBeforeOffset);
+                                               start += linesBeforeOffset;
+                                               end += linesBeforeOffset;
+                                               if(next != -1)
+                                                       next +=
linesBeforeOffset;
+                                               break;
+                                       case linesAfter:
+                                               length = 0;
+                                               int linesAfterOffset;
+                                               if(end != next && next !=
0){
+
view.replaceTextRange(end, (next - end), "");
+                                                       length = next - end;
+                                               }

-                                       spaces =
Integer.valueOf((String)entry.getValue());
-                                       textBefore =
makeInsertionString(spaces,'\n');
-                                       insertBefore(end, textBefore);
-                                       linesAfterOffset = spaces - length;
-                                       m.put("linesAfterOffset",
linesAfterOffset);
-                                       break;
-                               case format:
-                                       setAlignment(start, end, style);
-                                       break;
-                               case firstLineIndent:
-
if(Integer.valueOf((String)entry.getValue()) > 0 ||  
style.contains(StylesType.leftMargin))
-                                               setFirstLineIndent(start,
style);
-                                       break;
-                               case leftMargin:
-
if(style.contains(StylesType.firstLineIndent))
-                                               handleLineWrap(start,
view.getTextRange(start, (end - start)),  
Integer.valueOf((String)entry.getValue()), true);
-                                       else
-                                               handleLineWrap(start,
view.getTextRange(start, (end - start)),  
Integer.valueOf((String)entry.getValue()), false);
-                                       break;
+                                               spaces =
Integer.valueOf((String)entry.getValue());
+                                               textBefore =
makeInsertionString(spaces,'\n');
+                                               insertBefore(end,
textBefore);
+                                               linesAfterOffset = spaces -
length;
+                                               m.put("linesAfterOffset",
linesAfterOffset);
+                                               break;
+                                       case format:
+                                               setAlignment(start, end,
style);
+                                               break;
+                                       case firstLineIndent:
+
if(Integer.valueOf((String)entry.getValue()) > 0 ||  
style.contains(StylesType.leftMargin))
+
setFirstLineIndent(start, style);
+                                               break;
+                                       case leftMargin:
+
if(style.contains(StylesType.firstLineIndent))
+
handleLineWrap(start, view.getTextRange(start, (end - start)),  
Integer.valueOf((String)entry.getValue()), true);
+                                               else
+
handleLineWrap(start, view.getTextRange(start, (end - start)),  
Integer.valueOf((String)entry.getValue()), false);
+                                               break;
+                                       default:
+                                               break;
+                               }

-                               default:
-                                       break;
-                       }
-
-                       int offset = (Integer)m.getValue("offset");
+                               int offset = (Integer)m.getValue("offset");

-                       //inline elements may have different emphasis, so
all must be check  
seperately
-                       for(int i = 0; i < list.size(); i++){
-                               Styles nodeStyle =  
stylesTable.makeStylesElement(list.get(i).parentElement(), list.get(i).n);
-                               if(nodeStyle.contains(StylesType.emphasis))
-                                       setFontStyleRange(list.get(i).start
+ offset, (list.get(i).end +  
offset) - (list.get(i).start + offset),  
(StyleRange)nodeStyle.get(StylesType.emphasis));
+                               //inline elements may have different
emphasis, so all must be check  
seperately
+                               for(int i = 0; i < list.size(); i++){
+                                       Styles nodeStyle =  
stylesTable.makeStylesElement(list.get(i).parentElement(), list.get(i).n);
+
if(nodeStyle.contains(StylesType.emphasis))
+
setFontStyleRange(list.get(i).start + offset, (list.get(i).end +  
offset) - (list.get(i).start + offset),  
(StyleRange)nodeStyle.get(StylesType.emphasis));
+                               }
                        }
-
+                       setListenerLock(false);
                }
-               setListenerLock(false);
        }

        //private helper method used by adjust style

============================================================================
==
Revision: acadcacbef30
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Fri Jul 25 18:18:06 2014 UTC
Log:      Added boxlines to elements with lines before and after are now  
honored
http://code.google.com/p/brailleblaster/source/detail?r=acadcacbef30

Modified:
  /src/main/org/brailleblaster/perspectives/braille/Manager.java
   
/src/main/org/brailleblaster/perspectives/braille/document/BrailleDocument.j
ava
  /src/main/org/brailleblaster/perspectives/braille/views/wp/TextView.java

=======================================
--- /src/main/org/brailleblaster/perspectives/braille/Manager.java      Wed
Jul  
23 17:43:09 2014 UTC
+++ /src/main/org/brailleblaster/perspectives/braille/Manager.java      Fri
Jul  
25 18:18:06 2014 UTC
@@ -813,7 +813,9 @@
                        Element parent =
document.getParent(list.getCurrent().n, true);

                        message.put("previousStyle",  
styles.get(styles.getKeyFromAttribute(parent)));
-                       document.changeSemanticAction(message,  
list.getCurrent().parentElement());
+
if(!((Styles)message.getValue("Style")).getName().equals("boxline"))
+                               document.changeSemanticAction(message,  
list.getCurrent().parentElement());
+
                        message.put("style",
styles.get(styles.getKeyFromAttribute(parent)));
                        ArrayList<TextMapElement> itemList =  
list.findTextMapElements(list.getCurrentIndex(), parent, true);

@@ -862,25 +864,48 @@
        private void createBoxline(Element p, Message m,  
ArrayList<TextMapElement> itemList){
                Element wrapper = document.wrapElement(p, "boxline");
                if(wrapper != null){
-                       //document.translateElement(wrapper);
+                       Element boxline =
document.translateElement((Element)wrapper.copy());
                        int startPos = list.indexOf(itemList.get(0));
-                       BrlOnlyMapElement b1 =  new  
BrlOnlyMapElement(p.getParent().getChild(0), (Element)p.getParent());
-                       b1.setOffsets(list.get(startPos).start,
list.get(startPos).start +  
b1.textLength());
-
b1.setBrailleOffsets(list.get(startPos).brailleList.getFirst().start,  
list.get(startPos).brailleList.getFirst().start + b1.getText().length());
+
+                       int start, brailleStart;
+                       if(m.contains("previousStyle") &&  
((Styles)m.getValue("previousStyle")).contains(StylesType.linesBefore)){
+                               start = (Integer)m.getValue("prev");
+                               brailleStart =
(Integer)m.getValue("braillePrev");
+                       }
+                       else {
+                               start = itemList.get(0).start;
+                               brailleStart =
itemList.get(0).brailleList.getFirst().start;
+                       }
+
+                       wrapper.insertChild(boxline.removeChild(0), 0);
+                       BrlOnlyMapElement b1 =  new
BrlOnlyMapElement(wrapper.getChild(0),  
(Element)wrapper);
+                       b1.setOffsets(start, start + b1.textLength());
+                       b1.setBrailleOffsets(brailleStart, brailleStart +  
b1.getText().length());
                        list.add(startPos, b1);

-                       text.insertText(itemList.get(0).start,
list.get(startPos).getText()  
+ "\n");
-
braille.insertText(itemList.get(0).brailleList.getFirst().start,  
list.get(startPos).brailleList.getFirst().value() + "\n");
+                       text.insertText(start, list.get(startPos).getText()
+ "\n");
+                       braille.insertText(brailleStart,  
list.get(startPos).brailleList.getFirst().value() + "\n");
                        list.shiftOffsetsFromIndex(startPos + 1,  
list.get(startPos).getText().length() + 1,  
list.get(startPos).brailleList.getFirst().value().length() + 1,  
list.get(startPos + 1).start);

                        int endPos =
list.indexOf(itemList.get(itemList.size() - 1)) + 1;
-                       BrlOnlyMapElement b2 =  new  
BrlOnlyMapElement(p.getParent().getChild(p.getParent().getChildCount() -  
1), (Element)p.getParent());
-                       b2.setOffsets(list.get(endPos - 1).end + 1,
list.get(endPos - 1).end +  
1 + b2.textLength());
-                       b2.setBrailleOffsets(list.get(endPos -
1).brailleList.getLast().end +  
1, list.get(endPos - 1).brailleList.getLast().end + 1 +  
b2.getText().length());
+                       int end, brailleEnd;
+                       if(m.contains("previousStyle") &&  
((Styles)m.getValue("previousStyle")).contains(StylesType.linesAfter)){
+                               end = (Integer)m.getValue("next") +
b1.getText().length() + 1;
+                               brailleEnd =
(Integer)m.getValue("brailleNext") +  
b1.getText().length() + 1;
+                       }
+                       else {
+                               end = list.get(endPos - 1).end;
+                               brailleEnd = itemList.get(itemList.size() -

1).brailleList.getLast().end;
+                       }
+
+
wrapper.appendChild(boxline.removeChild(boxline.getChildCount() - 1));
+                       BrlOnlyMapElement b2 =  new  
BrlOnlyMapElement(wrapper.getChild(wrapper.getChildCount() - 1),  
(Element)wrapper);
+                       b2.setOffsets(end + 1, end + 1 + b2.textLength());
+                       b2.setBrailleOffsets(brailleEnd + 1, brailleEnd + 1
+  
b2.getText().length());
                        list.add(endPos, b2);
-
-                       text.insertText(itemList.get(itemList.size() -
1).end, "\n" +  
list.get(endPos).getText());
-                       braille.insertText(itemList.get(itemList.size() -  
1).brailleList.getLast().end, "\n" +  
list.get(endPos).brailleList.getFirst().value());
+
+                       text.insertText(end, "\n" +
list.get(endPos).getText());
+                       braille.insertText(brailleEnd, "\n" +  
list.get(endPos).brailleList.getFirst().value());
                        list.shiftOffsetsFromIndex(endPos + 1,  
list.get(endPos).getText().length() + 1,  
list.get(endPos).brailleList.getFirst().value().length() + 1,  
list.get(endPos).start);

                        for(int i = 0; i < itemList.size(); i++)
@@ -889,10 +914,6 @@
                        treeView.newTreeItem(list.get(startPos),
treeView.getSelectionIndex(),  
0);
 
handleSetCurrent(Message.createSetCurrentMessage(Sender.TREE,  
list.get(list.getCurrentIndex() + 1).start, false));
 
dispatch(Message.createUpdateCursorsMessage(Sender.TREE));
-
-                       for(int i = 0; i < list.size(); i++){
-                               System.out.println("Start: " +
list.get(i).start + "\tEnd: " +  
list.get(i).end + "\t" +  list.get(i).getClass());
-                       }
                }
        }

=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/document/BrailleDocument.j
ava      
Wed Jul 23 17:43:09 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/document/BrailleDocument.j
ava      
Fri Jul 25 18:18:06 2014 UTC
@@ -393,7 +393,9 @@
                String xml = getXMLString(e.toXML().toString());
                d = getXML(xml);
                Element parent = d.getRootElement();
-               return (Element)parent.removeChild(0);
+               Element transElement =  (Element)parent.removeChild(0);
+               addNamespace(transElement);
+               return transElement;
        }

        private void removeNode(TextMapElement t, Message message){
@@ -657,23 +659,13 @@

        public Element wrapElement(Element e, String type){
                if(type.equals("boxline")){
-                       Element boxline = new
Element(semHandler.getElementBySemantic(type));
-                       Element sb1 = new Element("brl");
-                       sb1.appendChild(new Text("777777777777777"));
-
-                       Element sb2 = new Element("brl");
-                       sb2.appendChild(new Text("GGGGGGGGGGGGGGG"));
-
+                       Element boxline = new
Element(semHandler.getElementBySemantic(type));
                        boxline.addAttribute(new
Attribute("semantics","style,boxline"));
-                       boxline.appendChild(sb1);
-                       boxline.appendChild(sb2);
-
                        ParentNode parent = e.getParent();
                        int index = parent.indexOf(e);
-                       boxline.insertChild(parent.removeChild(e), 1);
-                       //boxline.appendChild(parent.removeChild(e));
+                       boxline.appendChild(parent.removeChild(e));
                        parent.insertChild(boxline, index);
-                       addNamespace(boxline);
+                       addNamespace(boxline);
                        return boxline;
                }

=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/views/wp/TextView.java

Wed Jul 23 17:43:09 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/views/wp/TextView.java

Fri Jul 25 18:18:06 2014 UTC
@@ -307,8 +307,6 @@

 
if(view.getLineAtOffset(view.getCaretOffset()) != currentLine)
 
sendStatusBarUpdate(view.getLineAtOffset(view.getCaretOffset()));
-
-                               System.out.println("Pos:\t" +
view.getCaretOffset());
                        }
                });

@@ -503,7 +501,6 @@
                Message message =
Message.createSetCurrentMessage(Sender.TEXT, pos,  
false);
                manager.dispatch(message);
                setViewData(message);
-               System.out.println("Start:\t" + currentStart + "
CurrentEnd:\t" +  
currentEnd);
        }

        private void sendDeleteSpaceMessage(int start, int offset){

============================================================================
==
Revision: ff7834cb4ac3
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Mon Jul 28 18:33:55 2014 UTC
Log:      Fixed bug with new boxline element not being added to section  
element
http://code.google.com/p/brailleblaster/source/detail?r=ff7834cb4ac3

Modified:
  /src/main/org/brailleblaster/perspectives/braille/Manager.java
   
/src/main/org/brailleblaster/perspectives/braille/mapping/elements/BrlOnlyMa
pElement.java
   
/src/main/org/brailleblaster/perspectives/braille/stylepanel/StyleTable.java
   
/src/main/org/brailleblaster/perspectives/braille/viewInitializer/ViewInitia
lizer.java

=======================================
--- /src/main/org/brailleblaster/perspectives/braille/Manager.java      Fri
Jul  
25 18:18:06 2014 UTC
+++ /src/main/org/brailleblaster/perspectives/braille/Manager.java      Mon
Jul  
28 18:33:55 2014 UTC
@@ -881,7 +881,7 @@
                        BrlOnlyMapElement b1 =  new
BrlOnlyMapElement(wrapper.getChild(0),  
(Element)wrapper);
                        b1.setOffsets(start, start + b1.textLength());
                        b1.setBrailleOffsets(brailleStart, brailleStart +  
b1.getText().length());
-                       list.add(startPos, b1);
+                       vi.addElementToSection(list, b1, startPos);

                        text.insertText(start, list.get(startPos).getText()
+ "\n");
                        braille.insertText(brailleStart,  
list.get(startPos).brailleList.getFirst().value() + "\n");
@@ -902,7 +902,7 @@
                        BrlOnlyMapElement b2 =  new  
BrlOnlyMapElement(wrapper.getChild(wrapper.getChildCount() - 1),  
(Element)wrapper);
                        b2.setOffsets(end + 1, end + 1 + b2.textLength());
                        b2.setBrailleOffsets(brailleEnd + 1, brailleEnd + 1
+  
b2.getText().length());
-                       list.add(endPos, b2);
+                       vi.addElementToSection(list, b2, endPos);

                        text.insertText(end, "\n" +
list.get(endPos).getText());
                        braille.insertText(brailleEnd, "\n" +  
list.get(endPos).brailleList.getFirst().value());
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/mapping/elements/BrlOnlyMa
pElement.java    
Thu Jul 10 17:59:36 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/mapping/elements/BrlOnlyMa
pElement.java    
Mon Jul 28 18:33:55 2014 UTC
@@ -35,9 +35,9 @@
        public Element parentElement(){
                return this.parent;
        }
+
        public void setBrailleOffsets(int start, int end){
                this.brailleList.getFirst().start = start;
                this.brailleList.getFirst().end = end;
        }
-
  }
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/stylepanel/StyleTable.java

Thu Jul  3 16:07:57 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/stylepanel/StyleTable.java

Mon Jul 28 18:33:55 2014 UTC
@@ -380,8 +380,7 @@
        disposeFont(editButton);
        disposeFont(deleteButton);
        disposeFont(applyButton);
-       group.dispose();
-
+       group.dispose();
      }

      private void disposeFont(Button b){
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/viewInitializer/ViewInitia
lizer.java       
Thu Jul 17 19:46:53 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/viewInitializer/ViewInitia
lizer.java       
Mon Jul 28 18:33:55 2014 UTC
@@ -278,6 +278,47 @@

                return position;
        }
+
+       /** Adds a new TextMapElement to both the list containing all
element in  
the views and the section map list
+        * @param list: the visible list containing map elements in the text
and  
braille views
+        * @param t: element to insert
+        * @param index: index at which element is being put in visible
MapList,  
also used to determine which section to also add element
+        */
+       public void addElementToSection(MapList list, TextMapElement t, int

index){
+               int sectionIndex;
+               //if index is list size then element is appended and not
inserted
+               if(index == list.size())
+                       sectionIndex = findSectionIndex(list.get(index -
1));
+               else
+                       sectionIndex = findSectionIndex(list.get(index));
+
+               if(sectionIndex != -1){
+                       SectionElement section =
sectionList.get(sectionIndex);
+                       int listIndex;
+                       if(index == list.size())
+
section.getList().indexOf(section.getList().add(t));
+                       else {
+                               listIndex =
section.getList().indexOf(section.getList().get(index));
+                               section.getList().add(listIndex, t);
+                       }
+                       list.add(index, t);
+               }
+       }
+
+       /** Used to find a section element by view initializer methods
+        * @param t: text map element used to find section
+        * @return int with index value of section in the sectionlist
+        */
+       private int findSectionIndex(TextMapElement t){
+               int index = findFirst();
+               for(int i = index; i < sectionList.size(); i++){
+                       if(sectionList.get(i).getList().contains(t))
+                               return i;
+               }
+
+               return -1;
+       }
+

        public ArrayList<SectionElement> getSectionList() {
                return sectionList;

============================================================================
==
Revision: c3669c7ebbf3
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Tue Jul 29 13:38:39 2014 UTC
Log:      Fixed bug in opening html based UTD files
http://code.google.com/p/brailleblaster/source/detail?r=c3669c7ebbf3

Modified:
   
/src/main/org/brailleblaster/perspectives/braille/viewInitializer/ViewFactor
y.java

=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/viewInitializer/ViewFactor
y.java   
Thu Jul  3 16:07:57 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/viewInitializer/ViewFactor
y.java   
Tue Jul 29 13:38:39 2014 UTC
@@ -3,6 +3,7 @@
  import org.brailleblaster.archiver.Archiver;
  import org.brailleblaster.archiver.EPub3Archiver;
  import org.brailleblaster.archiver.TextArchiver;
+import org.brailleblaster.archiver.UTDArchiver;
  import org.brailleblaster.archiver.WebArchiver;
  import org.brailleblaster.perspectives.braille.document.BrailleDocument;
  import org.brailleblaster.perspectives.braille.views.tree.BBTree;
@@ -11,7 +12,7 @@

  public class ViewFactory {
        public static ViewInitializer createUpdater(Archiver arch,  
BrailleDocument doc, TextView text, BrailleView braille, BBTree tree){
-               if(arch instanceof EPub3Archiver)
+               if(arch instanceof EPub3Archiver || (arch instanceof
UTDArchiver &&  
arch.getCurrentConfig().equals("epub.cfg")))
                        return new EPubInitializer(doc, text, braille,
tree);
                else if(arch instanceof WebArchiver || arch instanceof
TextArchiver)
                        return new WebInitializer(doc, text, braille, tree);

============================================================================
==
Revision: 3123a0d696ae
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Tue Jul 29 15:38:12 2014 UTC
Log:      Committing changes before merge
http://code.google.com/p/brailleblaster/source/detail?r=3123a0d696ae

Modified:
  /src/main/org/brailleblaster/perspectives/braille/Manager.java
   
/src/main/org/brailleblaster/perspectives/braille/document/BrailleDocument.j
ava

=======================================
--- /src/main/org/brailleblaster/perspectives/braille/Manager.java      Mon
Jul  
28 18:33:55 2014 UTC
+++ /src/main/org/brailleblaster/perspectives/braille/Manager.java      Tue
Jul  
29 15:38:12 2014 UTC
@@ -861,12 +861,18 @@
                        new Notify(lh.localValue("nothingToApply"));
        }

+       /** Wraps a block level element in the appropriate tag then
translates  
and adds boxline brl top and bottom nodes
+        * @param p: parent of text nodes, the block element to be wrapped
in a  
boxline
+        * @param m: message passed to views containing offset positions
+        * @param itemList: arraylist containing text nodes of the block
element
+        */
        private void createBoxline(Element p, Message m,  
ArrayList<TextMapElement> itemList){
                Element wrapper = document.wrapElement(p, "boxline");
                if(wrapper != null){
                        Element boxline =
document.translateElement((Element)wrapper.copy());
                        int startPos = list.indexOf(itemList.get(0));

+                       //find start position
                        int start, brailleStart;
                        if(m.contains("previousStyle") &&  
((Styles)m.getValue("previousStyle")).contains(StylesType.linesBefore)){
                                start = (Integer)m.getValue("prev");
@@ -877,16 +883,19 @@
                                brailleStart =
itemList.get(0).brailleList.getFirst().start;
                        }

+                       //insert top boxline
                        wrapper.insertChild(boxline.removeChild(0), 0);
                        BrlOnlyMapElement b1 =  new
BrlOnlyMapElement(wrapper.getChild(0),  
(Element)wrapper);
                        b1.setOffsets(start, start + b1.textLength());
                        b1.setBrailleOffsets(brailleStart, brailleStart +  
b1.getText().length());
                        vi.addElementToSection(list, b1, startPos);

+                       //set text
                        text.insertText(start, list.get(startPos).getText()
+ "\n");
                        braille.insertText(brailleStart,  
list.get(startPos).brailleList.getFirst().value() + "\n");
                        list.shiftOffsetsFromIndex(startPos + 1,  
list.get(startPos).getText().length() + 1,  
list.get(startPos).brailleList.getFirst().value().length() + 1,  
list.get(startPos + 1).start);

+                       //find end position
                        int endPos =
list.indexOf(itemList.get(itemList.size() - 1)) + 1;
                        int end, brailleEnd;
                        if(m.contains("previousStyle") &&  
((Styles)m.getValue("previousStyle")).contains(StylesType.linesAfter)){
@@ -898,19 +907,23 @@
                                brailleEnd = itemList.get(itemList.size() -

1).brailleList.getLast().end;
                        }

+                       //insert bottom boxline
 
wrapper.appendChild(boxline.removeChild(boxline.getChildCount() - 1));
                        BrlOnlyMapElement b2 =  new  
BrlOnlyMapElement(wrapper.getChild(wrapper.getChildCount() - 1),  
(Element)wrapper);
                        b2.setOffsets(end + 1, end + 1 + b2.textLength());
                        b2.setBrailleOffsets(brailleEnd + 1, brailleEnd + 1
+  
b2.getText().length());
                        vi.addElementToSection(list, b2, endPos);

+                       //set text
                        text.insertText(end, "\n" +
list.get(endPos).getText());
                        braille.insertText(brailleEnd, "\n" +  
list.get(endPos).brailleList.getFirst().value());
                        list.shiftOffsetsFromIndex(endPos + 1,  
list.get(endPos).getText().length() + 1,  
list.get(endPos).brailleList.getFirst().value().length() + 1,  
list.get(endPos).start);

+                       //remove items from tree
                        for(int i = 0; i < itemList.size(); i++)
                                treeView.removeItem(itemList.get(i), new
Message(null));

+                       //add aside or sidebar to tree
                        treeView.newTreeItem(list.get(startPos),
treeView.getSelectionIndex(),  
0);
 
handleSetCurrent(Message.createSetCurrentMessage(Sender.TREE,  
list.get(list.getCurrentIndex() + 1).start, false));
 
dispatch(Message.createUpdateCursorsMessage(Sender.TREE));
=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/document/BrailleDocument.j
ava      
Fri Jul 25 18:18:06 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/document/BrailleDocument.j
ava      
Tue Jul 29 15:38:12 2014 UTC
@@ -656,7 +656,6 @@
                return null;
        }

-
        public Element wrapElement(Element e, String type){
                if(type.equals("boxline")){
                        Element boxline = new
Element(semHandler.getElementBySemantic(type));

============================================================================
==
Revision: 73ad8f58eb4a
Branch:   default
Author:   Brandon Roller <brandon.r.roller@xxxxxxxxx>
Date:     Tue Jul 29 15:38:38 2014 UTC
Log:      merged with main branch
http://code.google.com/p/brailleblaster/source/detail?r=73ad8f58eb4a

Modified:
  /src/main/org/brailleblaster/perspectives/braille/Manager.java
  /src/main/org/brailleblaster/perspectives/braille/views/wp/TextView.java

=======================================
---  
/src/main/org/brailleblaster/perspectives/braille/views/wp/TextView.java

Fri Jul 25 18:18:06 2014 UTC
+++  
/src/main/org/brailleblaster/perspectives/braille/views/wp/TextView.java

Tue Jul 29 15:38:38 2014 UTC
@@ -103,6 +103,8 @@
        private PaintObjectListener paintObjListener;
        private int originalStart, originalEnd;
        private TextMapElement currentElement;
+       int startSelection;
+       int endSelection;

        public TextView (Manager manager, Group documentWindow,
BBSemanticsTable  
table) {
                super (manager, documentWindow, LEFT_MARGIN, RIGHT_MARGIN,
TOP_MARGIN,  
BOTTOM_MARGIN, table);
@@ -117,7 +119,16 @@
                view.addSelectionListener(selectionListener = new
SelectionAdapter(){
                        @Override
                        public void widgetSelected(SelectionEvent e) {
+
                                selectionArray = view.getSelectionRanges();
+                               //Added this part for start and end of text
selection
+                               for (int i = 0; i < selectionArray.length-1;
i++) {
+                                       startSelection=selectionArray[i];
+
endSelection=selectionArray[i]+selectionArray[i+1];
+
+
+                            }
+                                System.out.println(startSelection+"
"+endSelection);
                                if(selectionArray[1] > 0){
                                        setSelection(selectionArray[0],
selectionArray[1]);
                                        currentChar = ' ';


Other related posts: