📄 xbrowserlayout.java
字号:
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 + -