• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java CloneableTopComponent类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.openide.windows.CloneableTopComponent的典型用法代码示例。如果您正苦于以下问题:Java CloneableTopComponent类的具体用法?Java CloneableTopComponent怎么用?Java CloneableTopComponent使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



CloneableTopComponent类属于org.openide.windows包,在下文中一共展示了CloneableTopComponent类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: addPropertyChangeListeners

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
private void addPropertyChangeListeners() {
    if( null != model ) {
        for (MultiViewDescription mvd : model.getDescriptions()) {
            if( mvd instanceof ContextAwareDescription && ((ContextAwareDescription)mvd).isSplitDescription() )
                continue; //#240371 - don't update name from spit elements
            
            MultiViewElement el = model.getElementForDescription( mvd, false );
            if (el == null) {
                continue;
            }
            if (el.getVisualRepresentation() instanceof Pane) {
                Pane pane = (Pane)el.getVisualRepresentation();
                final CloneableTopComponent tc = pane.getComponent();
                if (!Arrays.asList(tc.getPropertyChangeListeners()).contains(propListener)) {
                    tc.addPropertyChangeListener(propListener);
                }
            }
        }
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:21,代码来源:MultiViewPeer.java


示例2: updateName

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void updateName() {
    // is called before setMultiViewDescriptions() need to check for null.
    if (model != null) {
        for (MultiViewDescription mvd : model.getDescriptions()) {
            if( mvd instanceof ContextAwareDescription && ((ContextAwareDescription)mvd).isSplitDescription() )
                continue; //#240371 - don't update name from spit elements
            
            MultiViewElement el = model.getElementForDescription(
                mvd, MultiViewCloneableTopComponent.isSourceView(mvd)
            );
            if (el == null) {
                continue;
            }
            if (el.getVisualRepresentation() instanceof Pane) {
                Pane pane = (Pane)el.getVisualRepresentation();
                pane.updateName();
                final CloneableTopComponent tc = pane.getComponent();
                peer.setDisplayName(tc.getDisplayName());
                peer.setIcon(tc.getIcon());
                if (!Arrays.asList(tc.getPropertyChangeListeners()).contains(propListener)) {
                    tc.addPropertyChangeListener(propListener);
                }
            }
        }
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:27,代码来源:MultiViewPeer.java


示例3: testLookupInitializedForCloneable

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void testLookupInitializedForCloneable() {
    InstanceContent ic = new InstanceContent();
    Lookup lookup = new AbstractLookup(ic);
    ic.add(10);

    CloneableTopComponent cmv = MultiViews.createCloneableMultiView("text/context", new LP(lookup));
    assertEquals("10 now", Integer.valueOf(10), cmv.getLookup().lookup(Integer.class));
    
    assertNotNull("MultiViewComponent created", cmv);
    TopComponent mvc = cmv.cloneTopComponent();
    
    assertNotNull("MultiViewComponent cloned", mvc);
    MultiViewHandler handler = MultiViews.findMultiViewHandler(mvc);
    assertNotNull("Handler found", handler);
    
    assertEquals("10 now", Integer.valueOf(10), mvc.getLookup().lookup(Integer.class));
    ic.remove(10);
    ic.add(1);
    assertEquals("1 now", Integer.valueOf(1), mvc.getLookup().lookup(Integer.class));
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:21,代码来源:MultiViewProcessorTest.java


示例4: setTopComponent

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
/** This is called by the multiview elements whenever they are created
 * (and given a observer knowing their multiview TopComponent). It is
 * important during deserialization and clonig the multiview - i.e. during
 * the operations we have no control over. But anytime a multiview is
 * created, this method gets called.
 */
private void setTopComponent(TopComponent topComp) {
    multiviewTC = (CloneableTopComponent)topComp;
    updateMVTCName();

    if (topComponentsListener == null) {
        topComponentsListener = new TopComponentsListener();
        TopComponent.getRegistry().addPropertyChangeListener(topComponentsListener);
    }
    opened.add(this);
    try {
        addStatusListener(getDataObject().getPrimaryFile().getFileSystem());
    } catch (FileStateInvalidException fsiex) {
        Exceptions.printStackTrace(fsiex);
    }

}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:23,代码来源:BIEditorSupport.java


示例5: updateMVTCNameInAwt

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
private void updateMVTCNameInAwt() {
    CloneableTopComponent topComp = multiviewTC;
    if (topComp != null) {
        String htmlname = messageHtmlName();
        String name = messageName();
        String tip = messageToolTip();
        for (CloneableTopComponent o : NbCollections.
                iterable(topComp.getReference().getComponents())) {
            
            topComp.setHtmlDisplayName(htmlname);
            topComp.setDisplayName(name);
            topComp.setName(name);
            topComp.setToolTipText(tip);
        }
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:17,代码来源:BIEditorSupport.java


示例6: openView

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
/**
 * Opens the view identified by given <code>index</code>
 * and calls <code>#openDocument()</code>.
 * @param index the index of the view to be opened.
 */
void openView(final int index) {
    Utils.runInAwtDispatchThread(new Runnable() {
        public void run() {
            CloneableTopComponent mvtc = openCloneableTopComponent();
            MultiViewHandler handler = MultiViews.findMultiViewHandler(mvtc);
            handler.requestVisible(handler.getPerspectives()[index < 0 ? xmlMultiViewIndex : index]);
            mvtc.requestActive();
        }
    });
    try {
        openDocument();
    } catch (IOException ex) {
        ErrorManager.getDefault().notify(ex);
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:21,代码来源:XmlMultiViewEditorSupport.java


示例7: canClose

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public boolean canClose() {
    final CloneableTopComponent topComponent = ((CloneableTopComponent) getEditorSupport().getMVTC());
    if (topComponent != null){
        Enumeration enumeration = topComponent.getReference().getComponents();
        if (enumeration.hasMoreElements()) {
            enumeration.nextElement();
            if (enumeration.hasMoreElements()) {
                return true;
            }
        }
    }
    FileLock lock;
    try {
        lock = waitForLock();
    } catch (IOException e) {
        ErrorManager.getDefault().notify(e);
        return !isModified();
    }
    try {
        return !isModified();
    } finally {
        lock.releaseLock();
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:25,代码来源:XmlMultiViewDataObject.java


示例8: testDocumentIsSaved

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void testDocumentIsSaved() throws Exception {
    support.open();
    Document doc = support.openDocument();
    doc.insertString(0, "test", null);

    CloneableTopComponent ctc = (CloneableTopComponent) support.getAllEditors().getComponents().nextElement();
    SQLCloneableEditor editor = ctc.getLookup().lookup(SQLCloneableEditor.class);
    
    editor.componentDeactivated();
    assertTrue(support.saveDocumentCalled);

    support.saveDocumentCalled = false;
    doc.insertString(0, "test", null);
    editor.writeExternal(new ObjectOutputStream(new ByteArrayOutputStream()));
    assertTrue(support.saveDocumentCalled);

    support.close();
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:19,代码来源:SQLEditorSupportConsoleTest.java


示例9: testDocumentIsNotSavedOnComponentDeactivatedOrWriteExternal

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void testDocumentIsNotSavedOnComponentDeactivatedOrWriteExternal() throws Exception {
    support.open();
    Document doc = support.openDocument();
    doc.insertString(0, "test", null);

    CloneableTopComponent ctc = (CloneableTopComponent) support.getAllEditors().getComponents().nextElement();
    SQLCloneableEditor editor = ctc.getLookup().lookup(SQLCloneableEditor.class);
    
    editor.componentDeactivated();
    assertFalse(support.saveDocumentCalled);

    doc.insertString(0, "test", null);
    editor.writeExternal(new ObjectOutputStream(new ByteArrayOutputStream()));
    assertFalse(support.saveDocumentCalled);
    
    // XXX should test support.close() here, but how, since canClose() displays a dialog box?
    //support.close();
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:19,代码来源:SQLEditorSupportNormalTest.java


示例10: reload

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
/** Ask and reload/close image views. */
private void reload(FileEvent evt) {
    // ask if reload?
    // XXX the following is a resource path in NB 3.x and a URL after build system
    // merge; better to produce something nicer (e.g. FileUtil.toFile):
    String msg = NbBundle.getMessage(ImageOpenSupport.class, "MSG_ExternalChange", entry.getFile() );
    NotifyDescriptor nd = new NotifyDescriptor.Confirmation(msg, NotifyDescriptor.YES_NO_OPTION);
    Object ret = DialogDisplayer.getDefault().notify(nd);

    if (NotifyDescriptor.YES_OPTION.equals(ret)) {
        // due to compiler 1.2 bug only
        final ImageDataObject imageObj = (ImageDataObject)entry.getDataObject();
        final CloneableTopComponent.Ref editors = allEditors;

        Enumeration e = editors.getComponents();
        while(e.hasMoreElements()) {
            final Object pane = e.nextElement();
            SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    ((ImageViewer)pane).updateView(imageObj);
                }
            });
        }
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:26,代码来源:ImageOpenSupport.java


示例11: setTopComponent

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
/** This is called by the multiview elements whenever they are created
 * (and given a observer knowing their multiview TopComponent). It is
 * important during deserialization and cloning the multiview - i.e. during
 * the operations we have no control over. But anytime a multiview is
 * created, this method gets called.
 */
void setTopComponent(TopComponent topComp) {
    multiviewTC = (CloneableTopComponent)topComp;
    String[] titles = getMVTCDisplayName(formDataObject);
    multiviewTC.setDisplayName(titles[0]);
    multiviewTC.setHtmlDisplayName(titles[1]);
    multiviewTC.setToolTipText(getMVTCToolTipText(formDataObject));
    opened.add(this);
    registerNodeListener();
    attachTopComponentsListener();
    try {
        addStatusListener(formDataObject.getPrimaryFile().getFileSystem());
    } catch (FileStateInvalidException fsiex) {
        fsiex.printStackTrace();
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:22,代码来源:FormEditorSupport.java


示例12: createCloneableTopComponent

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
@Override
protected CloneableTopComponent createCloneableTopComponent() {
	TLDataObject dataObject = (TLDataObject) entry.getDataObject();
	
	MVTimelineDescription timelineDescription = new MVTimelineDescription(dataObject);
	MVMapDescription mapDescription = new MVMapDescription(dataObject);


	MultiViewDescription[] tcViewDescriptions = new MultiViewDescription[]{
		timelineDescription,
		mapDescription
	};

	
	// Create component representing experiment
	CloneableTopComponent tc = MultiViewFactory.createCloneableMultiView(
		tcViewDescriptions,
		timelineDescription);

	tc.setDisplayName(dataObject.getPrimaryFile().getNameExt());

	return tc;
}
 
开发者ID:kefik,项目名称:Pogamut3,代码行数:24,代码来源:TLOpenSupport.java


示例13: isFromEditorWindow

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
protected boolean isFromEditorWindow(DataObject dobj,
        final TopComponent tc) {
    final EditorCookie editor = dobj.getLookup().lookup(
            EditorCookie.class);
    if (editor != null) {
        return Mutex.EVENT.readAccess(new Action<Boolean>() {
            @Override
            public Boolean run() {
                return (tc instanceof CloneableTopComponent) // #246597
                        || NbDocument.findRecentEditorPane(editor) != null;
            }
        });
    }
    return false;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:16,代码来源:OpenFilesSearchScopeProvider.java


示例14: createClonedObject

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
@Override
   protected CloneableTopComponent createClonedObject() {
       MultiViewCloneableTopComponent tc = new MultiViewCloneableTopComponent();
tc.setMultiViewDescriptions(peer.model.getDescriptions(), getActiveDescription());
       tc.setCloseOperationHandler(peer.closeHandler);
       tc.peer.copyMimeContext(peer);
if(getSplitOrientation() != -1) {
    tc.splitComponent(getSplitOrientation(), -1);
    tc.updateName();
}
       return tc;
   }
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:13,代码来源:MultiViewCloneableTopComponent.java


示例15: testCloneableMultiViewsSerialize

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void testCloneableMultiViewsSerialize() throws Exception {
    InstanceContent ic = new InstanceContent();
    Lookup lookup = new AbstractLookup(ic);
    
    CloneableTopComponent cmv = MultiViews.createCloneableMultiView("text/context", new LP(lookup));
    assertPersistence("Always", TopComponent.PERSISTENCE_ALWAYS, cmv);
    assertNotNull("MultiViewComponent created", cmv);
    NbMarshalledObject mar = new NbMarshalledObject(cmv);
    TopComponent mvc = (TopComponent) mar.get();
    doCheck(mvc, ic);
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:12,代码来源:MultiViewProcessorTest.java


示例16: doToolbarCheck

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
private void doToolbarCheck(int select) throws Exception {
    CloneableTopComponent tc = MultiViews.createCloneableMultiView("text/toolbar", this);
    tc.open();
    assertVisible("MultiView visible", tc);
    
    assertEquals("One toolbar exists: " + MVE.allToolbars, 1, MVE.allToolbars.size());
    
    MultiViewHandler handle = MultiViews.findMultiViewHandler(tc);
    final MultiViewPerspective[] perspectives = handle.getPerspectives();
    assertEquals("Four perspectives", 4, perspectives.length);
    handle.requestVisible(perspectives[2]);
    
    assertEquals("two toolbars exist", 2, MVE.allToolbars.size());
    
    for (int i = 0; i < 2; i++) {
        handle.requestVisible(perspectives[i == 0 ? i : i + 1]);
        assertVisible("Toolbar is showing(" + i +")", MVE.allToolbars.get(i));
    }
    
    handle.requestVisible(perspectives[select]);
    
    W waiter = new W();
    editorSettingsPreferences.addPreferenceChangeListener(waiter);
    editorSettingsPreferences.putBoolean("toolbarVisible", false);
    waiter.waitThree();
    
    for (int i = 0; i < 2; i++) {
        handle.requestVisible(perspectives[i == 0 ? i : i + 1]);
        assertFalse("No Toolbar is showing anymore", MVE.allToolbars.get(i).isShowing());
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:32,代码来源:ToolbarVisibleTest.java


示例17: createPane

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
@Override
protected Pane createPane(CloneableEditorSupport sup) {
    final Lookup lkp = Lookups.fixed(sup);
    class P implements Serializable, Lookup.Provider {
        @Override
        public Lookup getLookup() {
            return lkp;
        }
    }
    CloneableTopComponent pane = MultiViews.createCloneableMultiView("text/x-compat-test", new P());
    return (Pane) pane;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:13,代码来源:MultiViewEditorCreationFinishedTest.java


示例18: testLookupProvidersAreConsistent

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void testLookupProvidersAreConsistent() throws Exception {
    InstanceContent ic = new InstanceContent();
    Lookup context = new AbstractLookup(ic);

    CloneableEditorSupport ces = createSupport(context);
    ic.add(ces);
    ic.add(10);

    final CloneableTopComponent tc = MultiViews.createCloneableMultiView("text/plaintest", new LP(context));
    final CloneableEditorSupport.Pane p = (CloneableEditorSupport.Pane) tc;
    EventQueue.invokeAndWait(new Runnable() {
        @Override
        public void run() {
            tc.open();
            tc.requestActive();
            p.updateName();
        }
    });

    assertNull("No icon yet", tc.getIcon());
    MultiViewHandler handler = MultiViews.findMultiViewHandler(tc);
    final MultiViewPerspective[] one = handler.getPerspectives();
    assertEquals("Two elements only" + Arrays.asList(one), 2, handler.getPerspectives().length);
    assertEquals("First one is source", "source", one[0].preferredID());
    assertEquals("Second one is also source", "source", one[1].preferredID());
    handler.requestVisible(one[0]);
    
    List<Lookup.Provider> arr = new ArrayList<Provider>();
    findProviders(tc, arr);
    assertEquals("Two providers: " + arr, 2, arr.size());

    assertSame("Both return same lookup", arr.get(0).getLookup(), arr.get(1).getLookup());
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:34,代码来源:MultiViewEditorElementTest.java


示例19: propertyChange

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
@Override
public void propertyChange(PropertyChangeEvent evt) {
    if (evt.getPropertyName().equals(EditorCookie.Observable.PROP_OPENED_PANES)) {
        final CloneableTopComponent cmp = support.getRef ().getArbitraryComponent();
        CloneableEditor ed = findEditor(cmp);
        assertNotNull("Editor is found", ed);
        final boolean paneReady = ed.isEditorPaneReady();
        if (eventCounter == 0) {
            assertFalse("First event. isEditorPaneReady must return false", paneReady);
            eventCounter++;
        } else if (eventCounter == 1) {
            assertTrue("Second event. isEditorPaneReady must return true", paneReady);
        }
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:16,代码来源:CloneableEditorCreationFinishedTest.java


示例20: createCloneableTopComponent

import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
/** A method to create a new component. Must be overridden in subclasses.
 * @return the cloneable top component for this support
*/
protected CloneableTopComponent createCloneableTopComponent() {
    // initializes the document if not initialized
    prepareDocument ();
    
    Thread tstThread = new Thread
    (new Runnable() {
        public void run() {
            synchronized (new java.awt.Panel().getTreeLock()) {
            System.out.println(System.currentTimeMillis() + " Thread runs");
            pls.getOriginal(0);
            System.out.println(System.currentTimeMillis() + " Thread finish");
            }
        }
    },"Test"
    );
    
    tstThread.start();

    System.out.println(System.currentTimeMillis() + " Main sleeping");
    try {
        Thread.sleep(500);
    } catch (InterruptedException e) {
    }
    System.out.println(System.currentTimeMillis() + " Main wakeuped");
    
    CloneableEditor ed = createCloneableEditor ();
    initializeCloneableEditor (ed);
    return ed;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:33,代码来源:EmptyCESHidden.java



注:本文中的org.openide.windows.CloneableTopComponent类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java CMSObjectIdentifiers类代码示例发布时间:2022-05-22
下一篇:
Java RequestImpl类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap