Added the initial version of Tibbibl, which Nathaniel Garson of UVa
e-mailed to me. Tibbibl is an editor for XML-based bibliographies of Tibetan texts. All I did was change the package from org.thdl.xml to org.thdl.tib.bibl and add boilerplate; no changes to Than's code were made. Tibbibl features a diacritic input tool which Jskad might want to swipe.
This commit is contained in:
parent
32a08c06c3
commit
72ee4fc7d2
28 changed files with 10248 additions and 3 deletions
91
source/org/thdl/tib/bibl/ElementList.java
Normal file
91
source/org/thdl/tib/bibl/ElementList.java
Normal file
|
@ -0,0 +1,91 @@
|
|||
/*
|
||||
The contents of this file are subject to the THDL Open Community License
|
||||
Version 1.0 (the "License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License on the THDL web site
|
||||
(http://www.thdl.org/).
|
||||
|
||||
Software distributed under the License is distributed on an "AS IS" basis,
|
||||
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
|
||||
License for the specific terms governing rights and limitations under the
|
||||
License.
|
||||
|
||||
The Initial Developer of this software is the Tibetan and Himalayan Digital
|
||||
Library (THDL). Portions created by the THDL are Copyright 2001-2003 THDL.
|
||||
All Rights Reserved.
|
||||
|
||||
Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
package org.thdl.tib.bibl;
|
||||
|
||||
import java.util.*;
|
||||
import org.jdom.*;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* Element List is a list of elements and ranges. The ranges refer to the {@link TextPanel} locations
|
||||
* where the text for that element is found. The {@link #getElement} method takes an integer location
|
||||
* in the TextPanel and returns the <code>org.jdom.Element</code> that is associated with that location
|
||||
* <i>if ther is one</i>! If not, it returns <code>null</code>, indicating there is nothing to edit at
|
||||
* that location. This is created by the TextPanel and given to the {@link TiblEdit} controller so
|
||||
* it can turn on and off menu options and functionality, depending on the position of the cursor in
|
||||
* the TextPane.
|
||||
* </p>
|
||||
*
|
||||
* @author Than Garson, Tibetan and Himalayan Digital Library
|
||||
* @version 1.0
|
||||
*/
|
||||
|
||||
public class ElementList implements TibConstants
|
||||
{
|
||||
//
|
||||
Vector entries;
|
||||
int start, end, leng;
|
||||
org.jdom.Element element;
|
||||
Entry ent, lastEntry;
|
||||
|
||||
public void addEntry(int st, int en, ElementStyle es)
|
||||
{
|
||||
ent = new Entry(st,en,es);
|
||||
entries.add(ent);
|
||||
lastEntry = ent;
|
||||
}
|
||||
|
||||
public org.jdom.Element getElementAt(int pos)
|
||||
{
|
||||
org.jdom.Element returnElement = NO_ELEM;
|
||||
Iterator ents = entries.iterator();
|
||||
while(ents.hasNext()) {
|
||||
Entry ent = (Entry)ents.next();
|
||||
if(ent.start<=pos && ent.end>=pos) {
|
||||
//System.out.println("returning a found element: " + TiblEdit.outputString(ent.element));
|
||||
return ent.element;
|
||||
}
|
||||
}
|
||||
|
||||
return returnElement;
|
||||
}
|
||||
|
||||
// Contructor
|
||||
|
||||
public ElementList()
|
||||
{
|
||||
entries = new Vector();
|
||||
lastEntry = new Entry(-1,-1,new ElementStyle("","",NO_ELEM));
|
||||
}
|
||||
|
||||
|
||||
protected class Entry
|
||||
{
|
||||
//
|
||||
int start, end;
|
||||
org.jdom.Element element;
|
||||
|
||||
protected Entry(int start, int end, ElementStyle es)
|
||||
{
|
||||
this.start = start;
|
||||
this.end = end;
|
||||
element = es.getElement();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue