⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xbrowserlayout.java

📁 XBrowser是一个完全免费并且开源的Web浏览器
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
        setVisible(false);
        statusBar.stopTimer();

		XRepository.getConfiguration().save();
		XRepository.getCookieManager().save();
		XRepository.getCacheManager().save();
		XRepository.getPluginManager().save();
		XRepository.getBookmarkManager().save();
		XRepository.getHistoryManager().save();
		System.exit(0);
    }

    private class BackAction extends XDefaultAction
    {
        public BackAction()
        {
            super(XBrowserLayout.this, "Back", null);
        }

        public void actionPerformed(ActionEvent e)
        {
    	    getActiveRenderer().showPreviousPage();
        }
    }

    private class ForwardAction extends XDefaultAction
    {
        public ForwardAction()
        {
            super(XBrowserLayout.this, "Forward", null);
        }

        public void actionPerformed(ActionEvent e)
        {
    	    getActiveRenderer().showNextPage();
        }
    }

    private class ReloadAction extends XDefaultAction
    {
        public ReloadAction()
        {
            super(XBrowserLayout.this, "Reload", KeyStroke.getKeyStroke(KeyEvent.VK_F5,-1));
        }

        public void actionPerformed(ActionEvent e)
        {
    	    getActiveRenderer().reload();
        }
    }

    private class HomeAction extends XDefaultAction
    {
        public HomeAction()
        {
            super(XBrowserLayout.this, "Home", null);
        }

        public void actionPerformed(ActionEvent e)
        {
            showInActiveDocument(XRepository.getConfiguration().getHomeURL());
        }
    }

    private class StopAction extends XDefaultAction
    {
        public StopAction()
        {
            super(XBrowserLayout.this, "Stop", KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE,-1));
        }

        public void actionPerformed(ActionEvent e)
        {
    	    getActiveRenderer().stopRendering();
        }
    }

    private class FindAction extends XDefaultAction
    {
        public FindAction()
        {
            super(XBrowserLayout.this, "Find", KeyStroke.getKeyStroke(KeyEvent.VK_F,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
	        XRepository.getScreenManager().getFindLayout().setVisible(true);
        }
    }

    private class NewPageAction extends XDefaultAction
    {
        public NewPageAction()
        {
            super(XBrowserLayout.this, "NewPage", KeyStroke.getKeyStroke(KeyEvent.VK_N,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
	    	getDocumentContainer().createNewDocument();
        }
    }

    private class PrintAction extends XDefaultAction
    {
        public PrintAction()
        {
            super(XBrowserLayout.this, "Print", KeyStroke.getKeyStroke(KeyEvent.VK_P,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
		    //getActiveDocument().printDocumentImmediately();
		    getActiveDocument().printDocument();
        }
    }

    private class PrintPreviewAction extends XDefaultAction
    {
        public PrintPreviewAction()
        {
            super(XBrowserLayout.this, "PrintPreview", null);
        }

        public void actionPerformed(ActionEvent e)
        {
			if( getActiveDocument()!=null )
				getActiveDocument().showPrintPreview();
        }
    }

    private class CopyAction extends XDefaultAction
    {
        public CopyAction()
        {
            super(XBrowserLayout.this, "Copy", KeyStroke.getKeyStroke(KeyEvent.VK_C,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
		Component focus_owner = getFocusOwner();

			if( focus_owner instanceof JTextComponent )
				((JTextComponent)focus_owner).copy();
			else if( getActiveDocument()!=null )
				getActiveRenderer().copy();
        }
    }

    private class CutAction extends XDefaultAction
    {
        public CutAction()
        {
            super(XBrowserLayout.this, "Cut", KeyStroke.getKeyStroke(KeyEvent.VK_X,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
		Component focus_owner = getFocusOwner();

			if( focus_owner instanceof JTextComponent )
				((JTextComponent)focus_owner).cut();
        }
    }

    private class PasteAction extends XDefaultAction
    {
        public PasteAction()
        {
            super(XBrowserLayout.this, "Paste", KeyStroke.getKeyStroke(KeyEvent.VK_V,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
		Component focus_owner = getFocusOwner();

			if( focus_owner instanceof JTextComponent )
				((JTextComponent)focus_owner).paste();
        }
    }

    private class SelectAllAction extends XDefaultAction
    {
        public SelectAllAction()
        {
            super(XBrowserLayout.this, "SelectAll", KeyStroke.getKeyStroke(KeyEvent.VK_A,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
		Component focus_owner = getFocusOwner();

			if( focus_owner instanceof JTextComponent )
				((JTextComponent)focus_owner).selectAll();
			else if( getActiveDocument()!=null )
				getActiveRenderer().selectAll();
        }
    }

    private class OpenFileAction extends XDefaultAction
    {
        public OpenFileAction()
        {
            super(XBrowserLayout.this, "OpenFile", KeyStroke.getKeyStroke(KeyEvent.VK_I,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
		JFileChooser file_chooser = XRepository.getComponentBuilder().getLoadFileChooser();

			if( file_chooser.showOpenDialog(XBrowserLayout.this)==JFileChooser.APPROVE_OPTION )
			{
			File selected_file = file_chooser.getSelectedFile();

				if( (selected_file!=null) && (selected_file.exists()) )
					showInActiveDocument(selected_file);
			}
        }
    }

    private class OpenURLAction extends XDefaultAction
    {
        public OpenURLAction()
        {
            super(XBrowserLayout.this, "OpenURL", KeyStroke.getKeyStroke(KeyEvent.VK_U,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
		String message = XRepository.getResourceManager().getProperty(XBrowserLayout.this, "OpenURLDescription");
		String title = XRepository.getResourceManager().getProperty(XBrowserLayout.this, "OpenURL");
		String url = JOptionPane.showInputDialog(XBrowserLayout.this, message, title, JOptionPane.QUESTION_MESSAGE);

			if( url!=null )
			{
				try
				{
					new URL( url );
				}
				catch( Exception ex )
				{
					url = XProjectConstants.DEFAULT_PROTOCOL+url;
				}

				showInActiveDocument( url );
			}
        }
    }

    private class AcknowledgementAction extends XDefaultAction
    {
        public AcknowledgementAction()
        {
            super(XBrowserLayout.this, "Acknowledge", null);
        }

        public void actionPerformed(ActionEvent e)
        {
	        showInNewDocument( XBrowserLayout.class.getClassLoader().getResource("docs/Acknowledge.html").toString() );
        }
    }

    private class HelpContentAction extends XDefaultAction
    {
        public HelpContentAction()
        {
            super(XBrowserLayout.this, "HelpContent", KeyStroke.getKeyStroke(KeyEvent.VK_F1,-1));
        }

        public void actionPerformed(ActionEvent e)
        {
	        showInNewDocument( XBrowserLayout.class.getClassLoader().getResource("docs/index.html").toString() );
        }
    }

    private class UserGuideAction extends XDefaultAction
    {
        public UserGuideAction()
        {
            super(XBrowserLayout.this, "UserGuide", null);
        }

        public void actionPerformed(ActionEvent e)
        {
	        showInNewDocument( XProjectConstants.PRODUCT_USER_GUIDE );
        }
    }

    private class AboutAction extends XDefaultAction
    {
        public AboutAction()
        {
            super(XBrowserLayout.this, "About", KeyStroke.getKeyStroke(KeyEvent.VK_F12,-1));
        }

        public void actionPerformed(ActionEvent e)
        {
	        (new XAboutLayout()).setVisible(true);
        }
    }

    private class SaveAsAction extends XDefaultAction
    {
        public SaveAsAction()
        {
            super(XBrowserLayout.this, "Save", KeyStroke.getKeyStroke(KeyEvent.VK_S,Event.CTRL_MASK));
        }

        public void actionPerformed(ActionEvent e)
        {
		JFileChooser file_chooser = XRepository.getComponentBuilder().getSaveFileChooser();
		int result = -1;

			file_chooser.setSelectedFile( new File(getActiveDocument().getPageTitle()) );

			if( file_chooser.showSaveDialog(XBrowserLayout.this)==JFileChooser.APPROVE_OPTION )
			{
			// Add .html prefix if needed...
			File selected_file = file_chooser.getSelectedFile();
			String file_name = selected_file.getName();
			int dot_pos = file_name.lastIndexOf('.');
			String ext = (dot_pos>=0) ? file_name.substring(dot_pos) : null;
			String file_filter_desc = file_chooser.getFileFilter().getDescription();
			int saving_mode;

				if( file_filter_desc.startsWith(XRepository.getResourceManager().getProperty(XRepository.getComponentBuilder(), "XFileChooser.WebPageCompleteDescription")) )
					saving_mode = XRenderer.SAVING_WEB_PAGE_COMPLETELY;
				else
					saving_mode = XRenderer.SAVING_WEB_PAGE_HTML_ONLY;

				if( ext==null || !ext.toLowerCase().startsWith(".htm") )
					file_name += ".html";

				getActiveRenderer().saveContent(new File(selected_file.getParentFile(), file_name), saving_mode);
			}
        }
    }

    private class ExitAction extends XDefaultAction
    {
        public ExitAction()
        {
            super(XBrowserLayout.this, "Exit", null);
        }

        public void actionPerformed(ActionEvent e)
        {
			exit();
        }
    }

    private class FindAgainAction extends XDefaultAction
    {
        public FindAgainAction()
        {
            super(XBrowserLayout.this, "FindAgain", KeyStroke.getKeyStroke(KeyEvent.VK_F3,-1));
        }

        public void actionPerformed(ActionEvent e)
        {
		    XRepository.getScreenManager().getFindLayout().findInDocument();
        }
    }

    private class RefreshAction extends XDefaultAction
    {
        public RefreshAction()
        {
            super(XBrowserLayout.this, "Refresh", null);
        }

        public void actionPerformed(ActionEvent e)
        {
			getActiveRenderer().refresh();
        }
    }

    private class PageSourceAction extends XDefaultAction
    {
        public PageSourceAction()
        {
            super(XBrowserLayout.this, "PageSource", null);
        }

        public void actionPerformed(ActionEvent e)
        {
			if( getActiveDocument()!=null )
				getActiveDocument().showPageSource();
        }
    }

    private class PagePropertiesAction extends XDefaultAction
    {
        public PagePropertiesAction()
        {
            super(XBrowserLayout.this, "PageProperties", null);
        }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -