JBrowser Source Code Files

JBrowser Source Code Files are provided in the source package file.

You can download JBrowser source package as described in the previous tutorial and go to the "src" sub-folder to view Source Code files.

You can also browse JBrowser Source Code files below:

✍: FYIcenter

ru/atomation/jbrowser/impl/JTabbedComponentFactory.java

/**
 * No restrictions for this source.
 *
 * Author: CA>>>
 * Site: atomation.ru
 * Mail: Sashusik_EntXXI@Mail.ru
 */
package ru.atomation.jbrowser.impl;

import java.awt.Component;

import javax.swing.JComponent;
import javax.swing.JTabbedPane;

/**
 * Abstract factory for creation browser`s in JTabbedPane
 * <hr>
 * Абстракатная фактори для создания бразуреов в JTabbedPane
 * 
 * <p> See also: <p> {@link LazyManTabbedBrowserSnippet}
 * @author caiiiycuk
 */
public abstract class JTabbedComponentFactory<C extends Component> extends JComponentFactory<C> {

    protected final JTabbedPane tabContainer;

    public JTabbedComponentFactory(JTabbedPane tabContainer, Class<? extends JBrowserComponent<? extends C>> prototype) {
        super(prototype);
        this.tabContainer = tabContainer;
    }

    @Override
	public JBrowserComponent<? extends C> createBrowser(JBrowserComponent<?> parent, boolean attachOnCreation, long flags, boolean displayable) {
        JBrowserComponent<? extends C> browser = super.createBrowser(parent, attachOnCreation, flags, displayable);

        //i don`t know why swing request JPanel, Canvas work wrong
        JComponent browserComponent = createBrowserComponent(browser);
        JComponent tabComponent = createTabComponent(browser, browserComponent);

        tabContainer.addTab("", browserComponent);

        if (tabComponent != null) {
            tabContainer.setTabComponentAt(tabContainer.getTabCount() - 1,
                    tabComponent);
        }

        tabCreated(tabContainer.getTabCount() - 1, browserComponent, tabComponent);

        return browser;
    }

    /**
     * Creating tab component for browser (usually JPanel)
     * @param browser browser for embedding in component
     * @return JComponent
     */
    protected abstract JComponent createBrowserComponent(JBrowserComponent<? extends C> browser);

    /**
     * Create tab component
     * @param browser
     * @param browserComponent (from createBrowserComponent)
     * @return may be null
     */
    protected abstract JComponent createTabComponent(JBrowserComponent<? extends C> browser, JComponent browserComponent);

    /**
     * Post processor for created tabs
     * @param index - index of created tab
     * @param browserComponent (from createBrowserComponent)
     * @param tabComponent (from createTabComponent)
     */
    protected abstract void tabCreated(int index, JComponent browserComponent, JComponent tabComponent);

    public JTabbedPane getTabContainer() {
        return tabContainer;
    }

}

ru/atomation/jbrowser/impl/JTabbedComponentFactory.java

Or download all of them as a single archive file:

File name: jbrowser-1.9-fyi.zip
File size: 625318 bytes
Release date: 2022-11-10
Download 

 

Downloading JBrowser 1.9

Download and Install JBrowser Source Package

Download and Review JBrowser

⇑⇑ FAQ for JBrowser

2017-07-17, 8635👍, 1💬