|
|
|
/*
|
|
|
|
* Copyright (c) 2000-2017 TeamDev Ltd. All rights reserved.
|
|
|
|
* TeamDev PROPRIETARY and CONFIDENTIAL.
|
|
|
|
* Use is subject to license terms.
|
|
|
|
*/
|
|
|
|
|
|
|
|
package com.example.jxbrowser;
|
|
|
|
|
|
|
|
import com.teamdev.jxbrowser.chromium.Browser;
|
|
|
|
import com.teamdev.jxbrowser.chromium.swing.BrowserView;
|
|
|
|
import com.teamdev.jxbrowser.chromium.swing.DefaultDialogHandler;
|
|
|
|
import com.teamdev.jxbrowser.chromium.swing.DefaultDownloadHandler;
|
|
|
|
import com.teamdev.jxbrowser.chromium.swing.DefaultPopupHandler;
|
|
|
|
|
|
|
|
import java.beans.PropertyChangeEvent;
|
|
|
|
import java.beans.PropertyChangeListener;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @author TeamDev Ltd.
|
|
|
|
*/
|
|
|
|
public final class TabFactory {
|
|
|
|
|
|
|
|
public static Tab createFirstTab() {
|
|
|
|
return createTab("http://192.168.88.103");
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Tab createTab() {
|
|
|
|
return createTab("about:blank");
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Tab createTab(String url) {
|
|
|
|
Browser browser = new Browser();
|
|
|
|
BrowserView browserView = new BrowserView(browser);
|
|
|
|
TabContent tabContent = new TabContent(browserView);
|
|
|
|
|
|
|
|
browser.setDownloadHandler(new DefaultDownloadHandler(browserView));
|
|
|
|
browser.setDialogHandler(new DefaultDialogHandler(browserView));
|
|
|
|
browser.setPopupHandler(new DefaultPopupHandler());
|
|
|
|
|
|
|
|
final TabCaption tabCaption = new TabCaption();
|
|
|
|
tabCaption.setTitle("about:blank");
|
|
|
|
|
|
|
|
tabContent.addPropertyChangeListener("PageTitleChanged", new PropertyChangeListener() {
|
|
|
|
public void propertyChange(PropertyChangeEvent evt) {
|
|
|
|
tabCaption.setTitle((String) evt.getNewValue());
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
browser.loadURL(url);
|
|
|
|
return new Tab(tabCaption, tabContent);
|
|
|
|
}
|
|
|
|
}
|