当前位置: 首页>>代码示例>>Java>>正文


Java XNameAccess.getElementNames方法代码示例

本文整理汇总了Java中com.sun.star.container.XNameAccess.getElementNames方法的典型用法代码示例。如果您正苦于以下问题:Java XNameAccess.getElementNames方法的具体用法?Java XNameAccess.getElementNames怎么用?Java XNameAccess.getElementNames使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.sun.star.container.XNameAccess的用法示例。


在下文中一共展示了XNameAccess.getElementNames方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: startsWithSection

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
/**
 * Liefert true gdw der Start von doc mit dem Starter einer Section von doc
 * zusammenfällt.
 * 
 * @author Matthias Benkmann (D-III-ITD 5.1) TESTED
 */
private static boolean startsWithSection(XTextDocument doc)
{
  XTextRange docText = doc.getText();
  XTextRangeCompare compare = UNO.XTextRangeCompare(docText);
  XNameAccess sections = UNO.XTextSectionsSupplier(doc).getTextSections();
  String[] names = sections.getElementNames();
  for (int i = 0; i < names.length; ++i)
  {
    try
    {
      XTextRange range =
        UNO.XTextContent(sections.getByName(names[i])).getAnchor();
      if (compare.compareRegionStarts(docText, range) == 0) return true;
    }
    catch (Exception x)
    {
      Logger.error(x);
    }
  }
  return false;
}
 
开发者ID:WollMux,项目名称:WollMux,代码行数:28,代码来源:PrintIntoFile.java

示例2: removeNonWMBookmarks

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
/**
 * Entfernt alle Bookmarks, die keine WollMux-Bookmarks sind aus dem Dokument doc.
 * 
 * @author Matthias Benkmann (D-III-ITD 5.1)
 */
public synchronized void removeNonWMBookmarks()
{
  model.updateLastTouchedByVersionInfo();

  XBookmarksSupplier bmSupp = UNO.XBookmarksSupplier(model.doc);
  XNameAccess bookmarks = bmSupp.getBookmarks();
  String[] names = bookmarks.getElementNames();
  for (int i = 0; i < names.length; ++i)
  {
    try
    {
      String bookmark = names[i];
      if (!TextDocumentModel.WOLLMUX_BOOKMARK_PATTERN.matcher(bookmark).matches())
      {
        XTextContent bm = UNO.XTextContent(bookmarks.getByName(bookmark));
        bm.getAnchor().getText().removeTextContent(bm);
      }

    }
    catch (Exception x)
    {
      Logger.error(x);
    }
  }
}
 
开发者ID:WollMux,项目名称:WollMux,代码行数:31,代码来源:TextDocumentController.java

示例3: findCitedKeys

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
private List<String> findCitedKeys() throws NoSuchElementException, WrappedTargetException {
    XNameAccess xNamedMarks = getReferenceMarks();
    String[] names = xNamedMarks.getElementNames();
    List<String> keys = new ArrayList<>();
    for (String name1 : names) {
        Object bookmark = xNamedMarks.getByName(name1);
        UnoRuntime.queryInterface(XTextContent.class, bookmark);

        List<String> newKeys = parseRefMarkName(name1);
        for (String key : newKeys) {
            if (!keys.contains(key)) {
                keys.add(key);
            }
        }
    }

    return keys;
}
 
开发者ID:JabRef,项目名称:jabref,代码行数:19,代码来源:OOBibBase.java

示例4: getFilterNames

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
public static List getFilterNames(XMultiComponentFactory xmulticomponentfactory) throws Exception {
    XPropertySet xPropertySet = (XPropertySet)UnoRuntime.queryInterface(XPropertySet.class, xmulticomponentfactory);
    Object oDefaultContext = xPropertySet.getPropertyValue("DefaultContext");
    XComponentContext xComponentContext = (XComponentContext) UnoRuntime.queryInterface(XComponentContext.class, oDefaultContext);


    Object filterFactory = xmulticomponentfactory.createInstanceWithContext("com.sun.star.document.FilterFactory", xComponentContext);
    XNameAccess xNameAccess = (XNameAccess)UnoRuntime.queryInterface(XNameAccess.class, filterFactory);
    String [] filterNames = xNameAccess.getElementNames();

    //String [] serviceNames = filterFactory.getAvailableServiceNames();
    for (int i=0; i < filterNames.length; i++) {
        String s = filterNames[i];
        Debug.logInfo(s, module);
        /*
        if (s.toLowerCase().indexOf("filter") >= 0) {
            Debug.logInfo("FILTER: " + s, module);
        }
        if (s.toLowerCase().indexOf("desktop") >= 0) {
            Debug.logInfo("DESKTOP: " + s, module);
        }
        */
    }

    List filterNameList = UtilMisc.toListArray(filterNames);
    return filterNameList;
}
 
开发者ID:ilscipio,项目名称:scipio-erp,代码行数:28,代码来源:OpenOfficeWorker.java

示例5: dumpInfo

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
/**
 * This method dumps info from the application described by the path.
 * 
 * @param path the path to be dumped, or null to dump from root
 * 
 * @throws Exception if dumping info fails
 * 
 * @author Markus Krüger
 * @date 18.11.2008
 */
public void dumpInfo(String path) throws Exception {
  if (path == null || path.length() == 0)
    path = NODE_ROOT;
  Object configProviderObject = serviceProvider.createService("com.sun.star.comp.configuration.ConfigurationProvider");
  XMultiServiceFactory xConfigServiceFactory = (XMultiServiceFactory) UnoRuntime.queryInterface(XMultiServiceFactory.class,
      configProviderObject);
  String readConfAccess = "com.sun.star.configuration.ConfigurationAccess";
  PropertyValue[] properties = new PropertyValue[1];
  properties[0] = new PropertyValue();
  properties[0].Name = "nodepath";
  properties[0].Value = path;
  Object configReadAccessObject = xConfigServiceFactory.createInstanceWithArguments(readConfAccess,
      properties);
  XNameAccess xConfigNameAccess = (XNameAccess) UnoRuntime.queryInterface(XNameAccess.class,
      configReadAccessObject);
  String[] names = xConfigNameAccess.getElementNames();
  System.out.println(path);
  System.out.println("=======================================");
  for (int i = 0; i < names.length; i++) {
    Object element = xConfigNameAccess.getByName(names[i]);
    if (element instanceof String || element instanceof Boolean
        || element instanceof Number
        || element instanceof Character
        || element instanceof CharSequence) {
      System.out.println(names[i] + ": "
          + element);
    }
    else if (element instanceof String[]) {
      System.out.println(names[i] + ": "
          + Arrays.asList((String[]) element).toString());
    }
    else if (!(element instanceof Any)) {
      dumpInfo(path + "/"
          + names[i]);
    }
  }
}
 
开发者ID:LibreOffice,项目名称:noa-libre,代码行数:48,代码来源:ApplicationInfo.java

示例6: convertLinkedImagesToEmbeded

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
/**
 * Convert linked text images to embedded images.
 * 
 * @throws TextException if conversion fails
 * 
 * @author Markus Krüger
 * @date 07.09.2009
 */
public void convertLinkedImagesToEmbeded() throws TextException {
  try {
    XTextGraphicObjectsSupplier graphicObjSupplier = (XTextGraphicObjectsSupplier) UnoRuntime.queryInterface(XTextGraphicObjectsSupplier.class,
        textDocument.getXTextDocument());
    XNameAccess nameAccess = graphicObjSupplier.getGraphicObjects();
    String[] names = nameAccess.getElementNames();
    for (int i = 0; i < names.length; i++) {
      Any xImageAny = (Any) nameAccess.getByName(names[i]);
      Object xImageObject = xImageAny.getObject();
      XTextContent xImage = (XTextContent) xImageObject;
      XServiceInfo xInfo = (XServiceInfo) UnoRuntime.queryInterface(XServiceInfo.class, xImage);
      if (xInfo.supportsService("com.sun.star.text.TextGraphicObject")) {
        XPropertySet xPropSet = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class,
            xImage);
        String name = xPropSet.getPropertyValue("LinkDisplayName").toString();
        String graphicURL = xPropSet.getPropertyValue("GraphicURL").toString();
        //only ones that are not embedded
        if (graphicURL.indexOf("vnd.sun.") == -1) {
          XMultiServiceFactory multiServiceFactory = (XMultiServiceFactory) UnoRuntime.queryInterface(XMultiServiceFactory.class,
              textDocument.getXTextDocument());
          XNameContainer xBitmapContainer = (XNameContainer) UnoRuntime.queryInterface(XNameContainer.class,
              multiServiceFactory.createInstance("com.sun.star.drawing.BitmapTable"));
          if (!xBitmapContainer.hasByName(name)) {
            xBitmapContainer.insertByName(name, graphicURL);
            String newGraphicURL = xBitmapContainer.getByName(name).toString();
            xPropSet.setPropertyValue("GraphicURL", newGraphicURL);
          }
        }
      }
    }
  }
  catch (Exception exception) {
    TextException textException = new TextException(exception.getMessage());
    textException.initCause(exception);
    throw textException;
  }
}
 
开发者ID:LibreOffice,项目名称:noa-libre,代码行数:46,代码来源:TextContentService.java

示例7: getBookmarks

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
/**
 * Returns all bookmarks.
 * 
 * @return all bookmarks
 * 
 * @author Markus Krüger
 */
public IBookmark[] getBookmarks() {
  try {
    XBookmarksSupplier xBookmarksSupplier = (XBookmarksSupplier) UnoRuntime.queryInterface(XBookmarksSupplier.class,
        textDocument.getXTextDocument());
    if (xBookmarksSupplier == null)
      return new IBookmark[0];
    XNameAccess nameAccess = xBookmarksSupplier.getBookmarks();
    String[] names = nameAccess.getElementNames();
    if (names.length < 1)
      return new IBookmark[0];
    List bookmarks = new ArrayList();
    for (int i = 0; i < names.length; i++) {
      Object bookmark = nameAccess.getByName(names[i]);
      XTextContent xBookmarkContent = (XTextContent) UnoRuntime.queryInterface(XTextContent.class,
          bookmark);
      XNamed xNamed = (XNamed) UnoRuntime.queryInterface(XNamed.class, bookmark);
      if (xBookmarkContent == null)
        continue;
      XTextRange xBookmarkRange = xBookmarkContent.getAnchor();
      if (xBookmarkRange == null)
        continue;
      bookmarks.add(new Bookmark(textDocument, xBookmarkRange, xNamed));
    }
    return (IBookmark[]) bookmarks.toArray(new IBookmark[bookmarks.size()]);
  }
  catch (Exception exception) {
    return new IBookmark[0];
  }
}
 
开发者ID:LibreOffice,项目名称:noa-libre,代码行数:37,代码来源:BookmarkService.java

示例8: rangeStartTouchesNewSection

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
/**
 * Liefert true gdw der Anfang von range mit dem Anfang einer Section aus doc
 * zusammenfällt, deren Name nicht in oldSections ist.
 * 
 * @author Matthias Benkmann (D-III-ITD 5.1) TESTED
 */
private static boolean rangeStartTouchesNewSection(XTextRange range,
    Set<String> oldSectionNames, XTextDocument doc)
{
  XTextRange docText = doc.getText();
  XTextRangeCompare compare = UNO.XTextRangeCompare(docText);
  XNameAccess sections = UNO.XTextSectionsSupplier(doc).getTextSections();
  String[] names = sections.getElementNames();
  for (int i = 0; i < names.length; ++i)
  {
    if (!oldSectionNames.contains(names[i]))
    {
      try
      {
        XTextRange sectionRange =
          UNO.XTextContent(sections.getByName(names[i])).getAnchor();
        if (compare.compareRegionStarts(range, sectionRange) == 0) return true;
      }
      catch (Exception x)
      {
        // keine Logger-Meldung. Dies tritt regulär auf bei Bereichen, die in
        // anderen
        // Rahmen liegen und daher nicht mit einem Cursor im Dokumenthaupttext
        // vergleichbar sind.
      }
    }
  }
  return false;
}
 
开发者ID:WollMux,项目名称:WollMux,代码行数:35,代码来源:PrintIntoFile.java

示例9: deForm

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
/**
 * Entfernt die WollMux-Kommandos "insertFormValue", "setGroups", "setType
 * formDocument" und "form", sowie die WollMux-Formularbeschreibung und Daten aus
 * dem Dokument doc.
 * 
 * @author Matthias Benkmann (D-III-ITD 5.1) TESTED
 */
public synchronized void deForm()
{
  model.updateLastTouchedByVersionInfo();

  XBookmarksSupplier bmSupp = UNO.XBookmarksSupplier(model.doc);
  XNameAccess bookmarks = bmSupp.getBookmarks();
  String[] names = bookmarks.getElementNames();
  for (int i = 0; i < names.length; ++i)
  {
    try
    {
      String bookmark = names[i];
      if (TextDocumentModel.BOOKMARK_KILL_PATTERN.matcher(bookmark).matches())
      {
        XTextContent bm = UNO.XTextContent(bookmarks.getByName(bookmark));
        bm.getAnchor().getText().removeTextContent(bm);
      }

    }
    catch (Exception x)
    {
      Logger.error(x);
    }
  }

  model.getPersistentData().removeData(DataID.FORMULARBESCHREIBUNG);
  model.getPersistentData().removeData(DataID.FORMULARWERTE);
}
 
开发者ID:WollMux,项目名称:WollMux,代码行数:36,代码来源:TextDocumentController.java

示例10: getJabRefReferenceMarks

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
public List<String> getJabRefReferenceMarks(XNameAccess nameAccess) {
    String[] names = nameAccess.getElementNames();
    // Remove all reference marks that don't look like JabRef citations:
    List<String> result = new ArrayList<>();
    if (names != null) {
        for (String name : names) {
            if (CITE_PATTERN.matcher(name).find()) {
                result.add(name);
            }
        }
    }
    return result;
}
 
开发者ID:JabRef,项目名称:jabref,代码行数:14,代码来源:OOBibBase.java

示例11: dumpNode

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
/**
 * Gibt den Inhalt eines Knotens element der OOo-Konfiguration mit dem Knotennamen
 * und allen enthaltenen Properties zurück, wobei die Inhalte pro Zeile um den
 * String spaces eingerückt werden.
 *
 * @param element
 * @param spaces
 * @return
 * @throws Exception
 *
 * @author Christoph Lutz (D-III-ITD-5.1)
 */
public static String dumpNode(Object element, String spaces)
{
  // Properties (Elemente mit Werten) durchsuchen:
  String properties = "";
  if (UNO.XPropertySet(element) != null)
  {
    Property[] props =
      UNO.XPropertySet(element).getPropertySetInfo().getProperties();
    for (int i = 0; i < props.length; i++)
    {
      Object prop = UNO.getProperty(element, props[i].Name);
      if (UNO.XInterface(prop) != null) continue;
      if (AnyConverter.isVoid(prop)) continue;
      String propStr = "'" + prop + "'";
      // arrays anzeigen:
      if (prop instanceof Object[])
      {
        Object[] arr = (Object[]) prop;
        propStr = "[";
        for (int j = 0; j < arr.length; j++)
          propStr += "'" + arr[j] + "'" + ((j == arr.length - 1) ? "" : ", ");
        propStr += "]";
      }
      properties += spaces + "|    " + props[i].Name + ": " + propStr + "\n";
    }
  }

  // Kinder durchsuchen.
  String childs = "";
  XNameAccess xna = UNO.XNameAccess(element);
  if (xna != null)
  {
    String[] elements = xna.getElementNames();
    for (int i = 0; i < elements.length; i++)
    {
      try
      {
        childs += dumpNode(xna.getByName(elements[i]), spaces + "|    ");
      }
      catch (java.lang.Exception e)
      {}
    }
  }

  // Knoten zusammenbauen: Eigener Name + properties + kinder (nur wenn der
  // Knoten auch angezeigte Properties oder Kinder hat):
  if (UNO.XNamed(element) != null
    && (properties.length() > 0 || childs.length() > 0))
    return spaces + "+ " + UNO.XNamed(element).getName() + "\n" + properties
      + childs;

  return "";
}
 
开发者ID:WollMux,项目名称:WollMux,代码行数:66,代码来源:WollMuxFiles.java

示例12: updateTextSections

import com.sun.star.container.XNameAccess; //导入方法依赖的package包/类
private static void updateTextSections(XTextDocument doc)
{
  XTextSectionsSupplier tssupp = UNO.XTextSectionsSupplier(doc);
  XNameAccess textSections = tssupp.getTextSections();
  String[] sectionNames = textSections.getElementNames();

  Pattern groupPattern = Pattern.compile(".* GROUPS(?:\\s\"(.*)\"|\\((.*)\\)\n?)");

  for (String sectionName : sectionNames)
  {
    Matcher matcher = groupPattern.matcher(sectionName);
    if (matcher.matches())
    {
      String res = (matcher.group(1) != null) ? matcher.group(1) : matcher.group(2);
      String groups = res.replaceAll("\"", "");
      String[] groupNames = groups.split("\\s*,\\s*");

      try
      {
        XTextSection section =
          UnoRuntime.queryInterface(XTextSection.class,
            textSections.getByName(sectionName));
        XPropertySet ps = UNO.XPropertySet(section);
        
        XTextRange range = section.getAnchor();
        UNO.setPropertyToDefault(range, "CharHidden");
        
        List<String> conditions = new ArrayList<String>();
        for (String groupName : groupNames)
        {
          conditions.add(String.format("([%s] != \"true\")", COLUMN_PREFIX_TEXTSECTION + groupName));
        }
        
        String condition = StringUtils.join(conditions, " or ");
        ps.setPropertyValue("Condition", condition);
      }
      catch (Exception e)
      {
        Logger.error(e);
      }
    }
  }
}
 
开发者ID:WollMux,项目名称:WollMux,代码行数:44,代码来源:OOoBasedMailMerge.java


注:本文中的com.sun.star.container.XNameAccess.getElementNames方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。