當前位置: 首頁>>代碼示例>>Java>>正文


Java View.getViewCount方法代碼示例

本文整理匯總了Java中javax.swing.text.View.getViewCount方法的典型用法代碼示例。如果您正苦於以下問題:Java View.getViewCount方法的具體用法?Java View.getViewCount怎麽用?Java View.getViewCount使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在javax.swing.text.View的用法示例。


在下文中一共展示了View.getViewCount方法的11個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: updateIndex

import javax.swing.text.View; //導入方法依賴的package包/類
public int updateIndex(int viewIndex, int offset, View view, FlyView.Parent flyParent) {
    int lastViewIndex = view.getViewCount() - 1;

    while (true) {
        int endOffset = (flyParent != null)
            ? flyParent.getEndOffset(viewIndex)
            : view.getView(viewIndex).getEndOffset();
        if (endOffset != offset) { // view ends after offset
            if (excludeAtOffset) {
                viewIndex--; // return the lower view that ends at offset
            }
            break;
        }
     
        if (viewIndex == lastViewIndex) { // over last view
            break;
        }
        viewIndex++;
    }
    
    return viewIndex;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:23,代碼來源:ViewUtilitiesImpl.java

示例2: testBackwardBias

import javax.swing.text.View; //導入方法依賴的package包/類
@RandomlyFails
public void testBackwardBias() throws Throwable {
    JEditorPane jep = createJep(PYRAMID);
    View rootView = Utilities.getRootView(jep, DrawEngineDocView.class);
    for(int i = 1; i < rootView.getViewCount(); i++) {
        int backwardBiasOffset = rootView.getView(i).getStartOffset();
        int previousLineEOLOffset = rootView.getView(i - 1).getEndOffset() - 1;
        
        Rectangle r1 = jep.getUI().modelToView(jep, backwardBiasOffset, Position.Bias.Backward);
        Rectangle r2 = jep.getUI().modelToView(jep, previousLineEOLOffset, Position.Bias.Forward);
        
        assertEquals("Wrong backward bias offset translation: offset = " + backwardBiasOffset
            + ", previousLineEOLOffset = " + previousLineEOLOffset
            + ", docLen = " + jep.getDocument().getLength(), r2, r1);
    }
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:17,代碼來源:DrawEngineTest.java

示例3: getSingleLineTextBaseline

import javax.swing.text.View; //導入方法依賴的package包/類
/**
   * Returns the baseline for single line text components, like
   * <code>JTextField</code>.
   */
  private static int getSingleLineTextBaseline(JTextComponent textComponent,
                                               int h) {
      View rootView = textComponent.getUI().getRootView(textComponent);
      if (rootView.getViewCount() > 0) {
          Insets insets = textComponent.getInsets();
          int height = h - insets.top - insets.bottom;
          int y = insets.top;
          View fieldView = rootView.getView(0);
   int vspan = (int)fieldView.getPreferredSpan(View.Y_AXIS);
   if (height != vspan) {
int slop = height - vspan;
y += slop / 2;
   }
          FontMetrics fm = textComponent.getFontMetrics(
                               textComponent.getFont());
          y += fm.getAscent();
          return y;
      }
      return -1;
  }
 
開發者ID:fesch,項目名稱:Moenagade,代碼行數:25,代碼來源:Baseline.java

示例4: findViewIndex

import javax.swing.text.View; //導入方法依賴的package包/類
/**
 * Do the actual finding algorithm and use updater
 * in case there is a view starting exactly
 * at the requested offset.
 */
private static int findViewIndex(View view, int offset, OffsetMatchUpdater updater) {
    FlyView.Parent flyParent = (view instanceof FlyView.Parent)
        ? (FlyView.Parent)view
        : null;

    int low = 0;
    int high = view.getViewCount() - 1;
    
    if (high == -1) { // no children => return -1
        return -1;
    }
    
    while (low <= high) {
        int mid = (low + high) / 2;
        int midStartOffset = (flyParent != null)
            ? flyParent.getStartOffset(mid)
            : view.getView(mid).getStartOffset();
        
        if (midStartOffset < offset) {
            low = mid + 1;
        } else if (midStartOffset > offset) {
            high = mid - 1;
        } else { // element starts at offset
            if (updater != null) {
                mid = updater.updateIndex(mid, offset, view, flyParent);
            }
            return mid;
        }
    }

    if (high < 0) {
        high = 0;
    }
    return high;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:41,代碼來源:ViewUtilitiesImpl.java

示例5: checkChildrenParent

import javax.swing.text.View; //導入方法依賴的package包/類
private static void checkChildrenParent(View v) {
    int cnt = v.getViewCount();
    for (int i = 0; i < cnt; i++) {
        View child = v.getView(i);
        View childParent = child.getParent();
        if (childParent != v) {
            throw new IllegalStateException("child=" + child // NOI18N
                + " has parent=" + childParent // NOI18N
                + " instead of " + v // NOI18N
            );
        }
        checkChildrenParent(child);
    }
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:15,代碼來源:ViewUtilitiesImpl.java

示例6: getRootView

import javax.swing.text.View; //導入方法依賴的package包/類
/**
 * Get first view in the hierarchy that is an instance of the given class.
 * It allows to skip various wrapper-views around the doc-view that holds
 * the child views for the lines.
 *
 * @param component component from which the root view is fetched.
 * @param rootViewClass class of the view to return.
 * @return view being instance of the requested class or null if there
 *  is not one.
 */
public static View getRootView(JTextComponent component, Class rootViewClass) {
    View view = null;
    TextUI textUI = component.getUI();
    if (textUI != null) {
        view = textUI.getRootView(component);
        while (view != null && !rootViewClass.isInstance(view)
            && view.getViewCount() == 1 // must be wrapper view
        ) {
            view = view.getView(0); // get the only child
        }
    }
    
    return view;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:25,代碼來源:Utilities.java

示例7: get

import javax.swing.text.View; //導入方法依賴的package包/類
public static DocumentView get(JTextComponent component) {
    TextUI textUI = component.getUI();
    if (textUI != null) {
        View rootView = textUI.getRootView(component);
        if (rootView != null && rootView.getViewCount() > 0) {
            View view = rootView.getView(0);
            if (view instanceof DocumentView) {
                return (DocumentView)view;
            }
        }
    }
    return null;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:14,代碼來源:DocumentView.java

示例8: retrieveGlyphViews

import javax.swing.text.View; //導入方法依賴的package包/類
private static void retrieveGlyphViews(View root) {
    for (int i=0; i<= root.getViewCount()-1; i++) {
        View view = root.getView(i);
        if (view instanceof GlyphView && view.isVisible()) {
            if (!glyphViews.contains(view)) {
                glyphViews.add((GlyphView)view);
            }
        } else {
            retrieveGlyphViews(view);
        }
    }
}
 
開發者ID:lambdalab-mirror,項目名稱:jdk8u-jdk,代碼行數:13,代碼來源:bug8014863.java

示例9: test

import javax.swing.text.View; //導入方法依賴的package包/類
private void test() {
    View root = ((View)label.getClientProperty(BasicHTML.propertyKey))
            .getView(0);
    int n = root.getViewCount();
    View v  = root.getView(n - 1);
    AttributeSet attrs = v.getAttributes();
    StyleSheet ss = ((HTMLDocument) v.getDocument()).getStyleSheet();
    Font font = ss.getFont(attrs);
    System.out.println(font.getSize());
    passed = (font.getSize() == 12);
    if(!passed) {
        throw new RuntimeException("Test failed.");
    }
}
 
開發者ID:AdoptOpenJDK,項目名稱:openjdk-jdk10,代碼行數:15,代碼來源:bug4960629.java

示例10: actionPerformed

import javax.swing.text.View; //導入方法依賴的package包/類
public void actionPerformed(ActionEvent evt, JTextComponent target) {
    AbstractDocument adoc = (AbstractDocument)target.getDocument();

    // Dump fold hierarchy
    FoldHierarchy hierarchy = FoldHierarchy.get(target);
    adoc.readLock();
    try {
        hierarchy.lock();
        try {
            /*DEBUG*/System.err.println("FOLD HIERARCHY DUMP:\n" + hierarchy); // NOI18N
            TokenHierarchy<?> th = TokenHierarchy.get(adoc);
            /*DEBUG*/System.err.println("TOKEN HIERARCHY DUMP:\n" + (th != null ? th : "<NULL-TH>")); // NOI18N

        } finally {
            hierarchy.unlock();
        }
    } finally {
        adoc.readUnlock();
    }

    View rootView = null;
    TextUI textUI = target.getUI();
    if (textUI != null) {
        rootView = textUI.getRootView(target); // Root view impl in BasicTextUI
        if (rootView != null && rootView.getViewCount() == 1) {
            rootView = rootView.getView(0); // Get DocumentView
        }
    }
    if (rootView != null) {
        String rootViewDump = (rootView instanceof DocumentView)
                ? ((DocumentView)rootView).toStringDetail()
                : rootView.toString();
        /*DEBUG*/System.err.println("DOCUMENT VIEW: " + System.identityHashCode(rootView) + // NOI18N
                "\n" + rootViewDump); // NOI18N
        int caretOffset = target.getCaretPosition();
        int caretViewIndex = rootView.getViewIndex(caretOffset, Position.Bias.Forward);
        /*DEBUG*/System.err.println("caretOffset=" + caretOffset + ", caretViewIndex=" + caretViewIndex); // NOI18N
        if (caretViewIndex >= 0 && caretViewIndex < rootView.getViewCount()) {
            View caretView = rootView.getView(caretViewIndex);
            /*DEBUG*/System.err.println("caretView: " + caretView); // NOI18N
        }
        /*DEBUG*/System.err.println(FixLineSyntaxState.lineInfosToString(adoc));
        // Check the hierarchy correctness
        //org.netbeans.editor.view.spi.ViewUtilities.checkViewHierarchy(rootView);
    }
    
    if (adoc instanceof BaseDocument) {
        /*DEBUG*/System.err.println("DOCUMENT:\n" + ((BaseDocument)adoc).toStringDetail()); // NOI18N
    }
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:51,代碼來源:ActionFactory.java

示例11: printView

import javax.swing.text.View; //導入方法依賴的package包/類
private boolean printView(final Graphics2D graphics2D,
                          final Shape allocation, final View view) {
    boolean pageExists = false;
    final Rectangle clipRectangle = new Rectangle(0, 0, (int) (pageFormat
            .getImageableWidth() / SCALE), (int) clientHeight);
    Shape childAllocation;
    View childView;

    if (view.getViewCount() > 0) {
        for (int i = 0; i < view.getViewCount(); i++) {
            childAllocation = view.getChildAllocation(i, allocation);
            if (childAllocation != null) {
                childView = view.getView(i);
                if (printView(graphics2D, childAllocation, childView)) {
                    pageExists = true;
                }
            }
        }
    } else {
        if (allocation.getBounds().getMaxY() >= clipRectangle.getY()) {

            if (allocation.getBounds().getHeight() > clipRectangle
                    .getHeight()
                    && allocation.intersects(clipRectangle)) {
                paintView(graphics2D, view, allocation);
                pageExists = true;
            } else {
                if (allocation.getBounds().getY() >= clipRectangle.getY()) {
                    if (allocation.getBounds().getMaxY() <= clipRectangle
                            .getMaxY()) {
                        paintView(graphics2D, view, allocation);
                        pageExists = true;

                    } else {
                        if (allocation.getBounds().getY() < pageEndY) {
                            pageEndY = allocation.getBounds().getY();
                        }
                    }
                }
            }
        }
    }
    return pageExists;
}
 
開發者ID:Vitaliy-Yakovchuk,項目名稱:ramus,代碼行數:45,代碼來源:HTMLPrintable.java


注:本文中的javax.swing.text.View.getViewCount方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。