亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? myjxtaview.java

?? Myjxta的源代碼 基于JXTA的P2P即時通信系統
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
/* *  Copyright (c) 2001 Sun Microsystems, Inc.  All rights *  reserved. * *  Redistribution and use in source and binary forms, with or withouta *  modification, are permitted provided that the following conditions *  are met:addjxt * *  1. Redistributions of sourcec code must retain the above copyright *  notice, this list of conditions and the following disclaimer. * *  2. Redistributions in binary form must reproduce the above copyright *  notice, this list of conditions and the following discalimer in *  the documentation and/or other materials provided with the *  distribution.c * *  3. The end-user documentation included with the redistribution, *  if any, must include the following acknowledgment: *  "This product includes softgetware developed by the *  Sun Microsystems, Inc. for Project JXTA." *  Alternately, this acknowledgment may appear in the software itself, *  if and wherever such third-party acknowledgments normally appear. * *  4. The names "Sun", "Sun Microsystems, Inc.", "JXTA" and "Project JXTA" *  must not be used to endorse or promote products derived from this *  software without prior written permission. For written *  permission, please contact Project JXTA at http://www.jxta.org. * *  5. Products derived from this software may not be called "JXTA",s *  nor may "JXTA" appear in their name, without prior written *  permission of Sun. * *  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED *  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES *  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE *  DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR *  ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF *  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND *  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, *  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT *  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF *  SUCH DAMAGE. *  ===================================================tre================= * *  This software consists of voluntary contributions made by many *  individuals on behalf of Project JXTA.  For more *  information on Project JXTA, please see *  <http://www.jxta.org/>. * * *  $Id: MyJXTAView.java,v 1.110 2007/06/10 21:15:13 nano Exp $ */package net.jxta.myjxta.ui;import net.jxta.document.*;import net.jxta.myjxta.MyJXTA;import net.jxta.myjxta.View;import net.jxta.myjxta.dialog.Dialog;import net.jxta.myjxta.dialog.DialogMessage;import net.jxta.myjxta.dialog.OneToOneCommandDialog;import net.jxta.myjxta.dialog.util.Text;import net.jxta.myjxta.plugin.ISelectableNode;import net.jxta.myjxta.plugin.PluginContainer;import net.jxta.myjxta.plugin.PluginView;import net.jxta.myjxta.search.SearchContext;import net.jxta.myjxta.search.SearchManager;import net.jxta.myjxta.search.SearchModifier;import net.jxta.myjxta.search.Searcher;import net.jxta.myjxta.share.IShareManagerProvider;import net.jxta.myjxta.ui.action.ExitAction;import net.jxta.myjxta.ui.action.GroupJoinAction;import net.jxta.myjxta.ui.action.ShareViewAction;import net.jxta.myjxta.ui.model.JxtaTreeModel;import net.jxta.myjxta.util.*;import net.jxta.myjxta.util.exec.ExecFactory;import net.jxta.myjxta.util.objectmodel.GroupNode;import net.jxta.myjxta.util.objectmodel.JxtaNode;import net.jxta.myjxta.util.objectmodel.PeerNode;import net.jxta.myjxta.util.objectmodel.ShareNode;import net.jxta.myjxta.util.preferences.MyPreferencePanel;import net.jxta.peergroup.PeerGroup;import net.jxta.pipe.PipeService;import net.jxta.protocol.PeerGroupAdvertisement;import net.jxta.protocol.PipeAdvertisement;import org.jdesktop.swingx.JXFrame;import org.jdesktop.swingx.JXTreeTable;import javax.swing.*;import javax.swing.border.EmptyBorder;import javax.swing.border.EtchedBorder;import javax.swing.event.ChangeEvent;import javax.swing.event.ChangeListener;import javax.swing.event.ListSelectionEvent;import javax.swing.event.ListSelectionListener;import javax.swing.tree.DefaultTreeCellRenderer;import javax.swing.tree.TreePath;import javax.swing.tree.TreeSelectionModel;import java.awt.*;import java.awt.datatransfer.DataFlavor;import java.awt.datatransfer.StringSelection;import java.awt.datatransfer.Transferable;import java.awt.datatransfer.UnsupportedFlavorException;import java.awt.dnd.*;import java.awt.event.*;import java.io.*;import java.lang.reflect.InvocationTargetException;import java.net.MalformedURLException;import java.net.URI;import java.net.URISyntaxException;import java.net.URL;import java.util.*;import java.util.List;import java.util.logging.Level;import java.util.logging.Logger;/** * @author james todd [gonzo at jxta dot org] * @author joe leach [coconatty at jxta dot org] * @version $Id: MyJXTAView.java,v 1.110 2007/06/10 21:15:13 nano Exp $ * @modified 2005-03-26 jamoore add general PlugInPanel type to removeDialog * @modified 2005-03-27 jamoore add vojxta to menus * @modified 2005-03-27 jamoore add vojxta add/remove dialog support * @modified 2005-04-24 jamoore add vijxta add/remove dialog support * @modified 2005-05-01 jamoore enable video only if system property is set */public final class MyJXTAView        extends JXFrame        implements View, PluginContainer.IPopupProvider {// ------------------------------ FIELDS ------------------------------    static final Logger LOG = Logger.getLogger(MyJXTAView.class.getName());    private static final int STATUS_MAX = 15;    private static final String DOT = ".";    private static final ResourceBundle STRINGS = Resources.getStrings();    private MyJXTA myjxta = null;    private JSplitPane split = null;    private JXTreeTable tree = null;    private JxtaTreeModel treeModel = null;    private JDialog searchDialog = null;    private JTabbedPane search = null;    private JDialog shareDialog = null;    private JTabbedPane share = null;    private JTabbedPane plugins = null;    private JTabbedPane m_navigationPane = null;    private DefaultComboBoxModel status = null;    private Action exitAction = null;    private JPopupMenu popup = null;    private final Object lock = new Object();    private final Dimension m_preferredSize = new Dimension(600, 375);    private ConfigData config = null;    private MenuManager m_menuManager;// --------------------------- CONSTRUCTORS ---------------------------    /**     * Default Constructor     *     * @param p_myjxta     */    public MyJXTAView(MyJXTA p_myjxta) {        super(MyJXTA.NAME);        setControl(p_myjxta);        initialize();    }    private void initialize() {        ui();        pack();    }    private void ui() {        Resources res = Resources.getInstance();        ImageIcon icon = res.getIconResource("Application.Icon");        if (icon != null) {            setIconImage(icon.getImage());        }        buildActions();        buildMenu();        buildUI();    }    private void buildActions() {        this.exitAction = new ExitAction(STRINGS.getString("menu.exit"), this.getControl());    }    private void buildMenu() {        m_menuManager = MenuManager.getInstance(this);        setJMenuBar(m_menuManager.getMenuBar());        //todo: why is it necessary to add the popup menu to the content pane?        getContentPane().add(this.popup =                buildPopupMenu(m_menuManager.getActionMenu().getMenuComponents()));    }    //set up popup menu, and add mouse listener (see internal class popuplistener)    private JPopupMenu buildPopupMenu(Component[] c) {        JPopupMenu jp = new JPopupMenu();        for (Component aC : c) {            jp.add(aC);        }        return jp;    }    private void buildUI() {        GridBagLayout gb = new GridBagLayout();        GridBagConstraints gbc = new GridBagConstraints();        getContentPane().setLayout(gb);        ((JPanel) getContentPane()).setBorder(BorderFactory.createEmptyBorder(3, 3, 3, 3));        //sp.setViewportBorder(BorderFactory.createEmptyBorder(3, 3, 3, 3));        gbc.gridx = 0;        gbc.gridy = 0;        gbc.gridwidth = 1;        gbc.gridheight = 1;        gbc.insets = new Insets(3, 3, 3, 3);        gbc.anchor = GridBagConstraints.NORTHWEST;        gbc.weightx = 1.0;        gbc.weighty = 1.0;        gbc.fill = GridBagConstraints.BOTH;        JPanel newLeftComponent = buildNavigation();        JPanel newRightComponent = buildPlugins();        this.split = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, true,                newLeftComponent, newRightComponent);//        this.split.setDividerLocation(0.3);        this.split.setResizeWeight(0.15);        this.split.setOneTouchExpandable(true);        this.split.setDividerSize(8);        gb.setConstraints(this.split, gbc);        getContentPane().add(this.split);        gbc.gridx = 0;        gbc.gridy++;        gbc.anchor = GridBagConstraints.LINE_START;        gbc.weightx = 0.0;        gbc.weighty = 0.0;        gbc.fill = GridBagConstraints.HORIZONTAL;        JPanel fp = buildFooter();        gb.setConstraints(fp, gbc);        getContentPane().add(fp);        addComponentListener(new ComponentAdapter() {            public void componentMoved(ComponentEvent we) {                componentResized(we);            }            public void componentResized(ComponentEvent we) {//                Rectangle b = getBounds();                MyJXTA myJXTA = MyJXTAView.this.getControl();                //nano: myJXTA can be null during the initial setup, so prevent the NPE here                if (myJXTA != null) {                    // todo: persist app size, location, etc//                    p.putInt(Prefs.UI_WIDTH, b.width);//                    p.putInt(Prefs.UI_HEIGHT, b.height);//                    p.putInt(Prefs.UI_X, b.x);//                    p.putInt(Prefs.UI_Y, b.y);                }            }        });        MyJXTAView.this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);        addWindowListener(new WindowAdapter() {            public void windowClosing(WindowEvent we) {                MyJXTAView.this.getExitAction().actionPerformed(null);            }        });        addFocusListener(new FocusListener() {            public void focusGained(FocusEvent fe) {                toFront();            }            public void focusLost(FocusEvent fe) {                // Do nothing            }        });    }    private JPanel buildNavigation() {        JPanel p = new JPanel();        GridBagLayout gb = new GridBagLayout();        GridBagConstraints gbc = new GridBagConstraints();        p.setLayout(gb);        JScrollPane sp = new JScrollPane(this.tree = buildTree());        tree.getSelectionModel().addListSelectionListener(new ListSelectionListener() {            public void valueChanged(ListSelectionEvent arg0) {                m_menuManager.updateMenuStatus();            }        });        tree.getSelectionModel().addListSelectionListener(new ListSelectionListener() {            public void valueChanged(ListSelectionEvent e) {                m_menuManager.updateMenuStatus();            }        });        gbc.gridx = 0;        gbc.gridy = 0;        gbc.gridwidth = GridBagConstraints.REMAINDER;        gbc.gridheight = GridBagConstraints.RELATIVE;        gbc.insets = new Insets(3, 3, 3, 3);        gbc.anchor = GridBagConstraints.NORTHWEST;        gbc.weightx = 1.0;        gbc.weighty = 1.0;        gbc.fill = GridBagConstraints.BOTH;        gb.setConstraints(sp, gbc);        p.add(sp);        JComboBox quickSearchContext = new JComboBox(new DefaultComboBoxModel(new Object[]{                new SearchContext(STRINGS.getString("label.pipe.name"),                        Searcher.PIPE),                new SearchContext(STRINGS.getString("label.group.name"),                        Searcher.GROUP),                new SearchContext(STRINGS.getString("label.share.name"),                        Searcher.SHARE)        }));        gbc.gridy++;        gbc.gridwidth = GridBagConstraints.RELATIVE;        gbc.gridheight = GridBagConstraints.REMAINDER;        gbc.weightx = 0.0;        gbc.weighty = 0.0;        gbc.fill = GridBagConstraints.NONE;        gb.setConstraints(quickSearchContext, gbc);        p.add(quickSearchContext);        JTextField quickSearch = new JTextField(25);        quickSearch.addKeyListener(new QuickSearchKeyAdapter(quickSearchContext, this));        gbc.gridx++;        gbc.gridwidth = GridBagConstraints.REMAINDER;        gbc.weightx = 1.0;        gbc.fill = GridBagConstraints.HORIZONTAL;        gb.setConstraints(quickSearch, gbc);        p.add(quickSearch);        m_navigationPane = new JTabbedPane();        m_navigationPane.addChangeListener(new ChangeListener() {            public void stateChanged(ChangeEvent e) {                if (m_menuManager != null) {                    m_menuManager.updateMenuStatus();

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美国产精品一区| 国产精品久久久久国产精品日日| 精品久久久久av影院| 亚洲免费观看高清在线观看| 麻豆91在线播放| 色狠狠一区二区| 国产欧美日韩激情| 久久精品国产免费看久久精品| 91在线观看免费视频| 久久综合中文字幕| 日韩成人精品在线观看| 一本一本大道香蕉久在线精品| 26uuu色噜噜精品一区| 日韩不卡一区二区三区| 91老司机福利 在线| 国产精品女主播在线观看| 另类小说一区二区三区| 在线不卡的av| 午夜精品福利一区二区三区av| 99视频超级精品| 中文字幕不卡三区| 国产成人av一区二区三区在线 | 亚洲国产成人高清精品| 不卡视频免费播放| 国产拍欧美日韩视频二区| 韩日av一区二区| 日韩你懂的在线播放| 青椒成人免费视频| 欧美日韩在线播| 亚洲v精品v日韩v欧美v专区| 欧美日韩精品电影| 亚洲国产欧美在线| 欧美日韩一区二区三区免费看| 亚洲图片你懂的| 日本高清不卡视频| 亚洲第一综合色| 欧美日韩成人激情| 蜜桃视频一区二区| 久久综合色婷婷| 成人av免费网站| 亚洲欧洲综合另类| 欧美三级视频在线观看| 日韩在线播放一区二区| 日韩一级片网址| 国内精品伊人久久久久av一坑| 精品日本一线二线三线不卡| 国产美女久久久久| 欧美国产1区2区| 91国偷自产一区二区三区观看 | 欧美在线观看你懂的| 亚洲国产你懂的| 91精品国产综合久久精品麻豆| 蜜臂av日日欢夜夜爽一区| 久久久久久免费| 99久久婷婷国产| 天天色综合成人网| 精品免费国产二区三区| 国产成人在线视频网址| 亚洲欧美国产三级| 91精品国产福利在线观看| 狠狠色丁香久久婷婷综合丁香| 国产欧美日韩三级| 欧美体内she精高潮| 精久久久久久久久久久| **欧美大码日韩| 日韩一区二区中文字幕| 高清不卡在线观看| 午夜精品久久久久久不卡8050| wwwwww.欧美系列| 色先锋资源久久综合| 蜜臀av一区二区| 亚洲图片另类小说| 亚洲精品一区二区三区蜜桃下载 | 黑人巨大精品欧美一区| 亚洲精品国久久99热| 精品福利av导航| 欧美亚洲国产怡红院影院| 九九九久久久精品| 一区二区三区精品在线| 久久久九九九九| 欧美日韩国产天堂| 99久久久久免费精品国产| 美腿丝袜亚洲一区| 亚洲精品视频一区| 国产欧美日韩麻豆91| 日韩一区二区三区四区| 欧美伊人久久大香线蕉综合69| 国产精品一区在线| 免费成人结看片| 亚洲国产精品久久一线不卡| 日韩理论电影院| 亚洲国产精品v| 精品国偷自产国产一区| 欧美精品一级二级| 欧美亚洲禁片免费| 91福利视频网站| 91丨九色丨蝌蚪丨老版| 成人在线综合网站| 国产成人免费视频一区| 黄色日韩网站视频| 激情图区综合网| 久久国产精品99久久久久久老狼| 亚洲午夜视频在线| 一区2区3区在线看| 亚洲天堂av一区| 18涩涩午夜精品.www| 中文字幕在线播放不卡一区| 久久网这里都是精品| 欧美大片一区二区三区| 日韩一区二区在线免费观看| 91精品国产一区二区| 3atv在线一区二区三区| 欧美日韩精品免费| 91精品在线麻豆| 91麻豆精品国产综合久久久久久 | 欧美亚男人的天堂| 欧美视频精品在线观看| 91黄色激情网站| 欧美精品丝袜中出| 欧美一区二区三级| 精品日产卡一卡二卡麻豆| 久久老女人爱爱| 中文在线免费一区三区高中清不卡| 久久久久久久久久久久久女国产乱| 精品日韩欧美一区二区| 国产日本一区二区| 国产精品免费视频一区| 亚洲激情自拍视频| 首页欧美精品中文字幕| 免费高清视频精品| 国产精品一级二级三级| gogogo免费视频观看亚洲一| 99国产一区二区三精品乱码| 91黄色在线观看| 日韩一区二区三区高清免费看看| 欧美mv日韩mv国产网站app| 国产欧美日韩在线视频| 亚洲一区二区在线播放相泽| 日本欧美一区二区三区乱码| 国产在线播放一区三区四| 99v久久综合狠狠综合久久| 欧美视频一区在线| 26uuu精品一区二区三区四区在线| 国产无一区二区| 亚洲成在线观看| 国产精品99精品久久免费| 色呦呦国产精品| 日韩三级电影网址| 亚洲欧美中日韩| 美国毛片一区二区三区| av激情综合网| 日韩丝袜美女视频| 亚洲色图一区二区三区| 蜜臀久久99精品久久久久宅男| 成人网男人的天堂| 日韩视频一区在线观看| 成人欧美一区二区三区视频网页| 偷拍一区二区三区| 91在线视频18| 337p日本欧洲亚洲大胆色噜噜| 亚洲免费观看视频| 国产黄人亚洲片| 欧美日韩成人综合天天影院| 国产精品嫩草久久久久| 日本最新不卡在线| 色综合久久中文综合久久牛| 国产亚洲欧美一区在线观看| 亚洲免费观看高清完整版在线观看 | 欧美一区二区三区色| 国产日产精品一区| 美女脱光内衣内裤视频久久网站 | 国产一区二区三区| 欧美日韩国产高清一区二区 | 日韩精品一二区| 99精品欧美一区| 国产欧美一区二区在线观看| 日韩电影在线看| 色婷婷亚洲一区二区三区| 欧美激情一二三区| 国产一区欧美一区| 日韩欧美中文字幕精品| 亚瑟在线精品视频| 色丁香久综合在线久综合在线观看| 国产欧美一区二区三区在线看蜜臀 | 午夜国产精品影院在线观看| 波多野结衣中文字幕一区| 日韩三级在线观看| 青青草一区二区三区| 欧美巨大另类极品videosbest| 亚洲激情图片一区| 97精品视频在线观看自产线路二| 欧美极品aⅴ影院| 丁香激情综合五月| 国产欧美日韩在线视频| 国产成人免费视| 国产精品女同一区二区三区| 成人av一区二区三区| 中文字幕在线不卡一区二区三区| 成人app在线观看| 亚洲视频一二三|