import java.awt.BorderLayout;

import javax.swing.JButton;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

import com.webrenderer.BrowserFactory;
import com.webrenderer.*;

public class JInt {
	IBrowserCanvas browser, browser2;
	JPanel p2;

	public JInt() {
		JInternalFrame iframe = new JInternalFrame("WebRenderer", true, true, true, true);
		JInternalFrame iframe2 = new JInternalFrame("Swing Button", true, true, true, true);

		// Set an initial size
		iframe.setSize(300, 300);
		iframe2.setSize(300, 300);

		// Add components to internal frame...
		JPanel p = new JPanel(new BorderLayout());

		//Please insert your License data - this example will not function without a valid 	license key
		BrowserFactory.setLicenseData("30dtrial", "MOQHE25VE6A05EJ912018B40");

		browser = BrowserFactory.spawnInternetExplorer();
		browser.loadURL("www.google.com");

		// Adding WebRenderer Canvas to JPanel for insertion in JInternalFrame
		p.add(BorderLayout.CENTER, browser.getCanvas());

		// Adding the JPanel holding WebRenderer to the JInternalFrame
		iframe.getContentPane().add(p);
		// Adding a Swing JButton to a JInternalFrame
		iframe2.getContentPane().add(new JButton("SWING BUTTON"));

		// Add internal frame to desktop
		JDesktopPane desktop = new JDesktopPane();
		desktop.add(iframe);
		desktop.add(iframe2);
		iframe2.setLocation(310, 50);

		// Function to ensure JInternalFrame compatibility - this must be called after the JInternalFrame has
		// been added to the JDesktopPane
	   	browser.enableJInternalFrame(iframe);

		// Display the internal frames
		iframe.setVisible(true);
		iframe2.setVisible(true);

		// Display the desktop in a top-level frame
		JFrame frame = new JFrame();
		frame.getContentPane().add(desktop, BorderLayout.CENTER);
		frame.setSize(650, 500);
		frame.setVisible(true);
	}

	public static void main(String[] args) {
		new JInt();
	}
}

