/* * Jitsi, the OpenSource Java VoIP and Instant Messaging client. * * Copyright @ 2015 Atlassian Pty Ltd * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package net.java.sip.communicator.impl.gui.main.account; import java.awt.*; import javax.swing.*; import javax.swing.event.*; import net.java.sip.communicator.impl.gui.*; import net.java.sip.communicator.plugin.desktoputil.*; import net.java.sip.communicator.service.gui.*; /** * The <tt>EmptyAccountRegistrationWizardPage</tt> is the page that users * would see in the NewAccountDialog as a default choice which would make them * pick a new option. * * @author Emil Ivov */ public class EmptyAccountRegistrationWizardPage implements WizardPage { public static final String FIRST_PAGE_IDENTIFIER = "FirstPageIdentifier"; private JPanel mainPanel = new TransparentPanel(new BorderLayout()); /** * Creates an instance of <tt>FirstWizardPage</tt>. * * @param wizard the parent wizard */ public EmptyAccountRegistrationWizardPage( EmptyAccountRegistrationWizard wizard) { mainPanel.setLayout(new BoxLayout(mainPanel, BoxLayout.Y_AXIS)); this.initComponents(); } /** * Initialize the UI for the first account */ private void initComponents() { // Init strategies list this.mainPanel = new TransparentPanel(new BorderLayout()); JPanel infoTitlePanel = new TransparentPanel(new FlowLayout(FlowLayout.CENTER)); JTextArea firstDescription = new JTextArea(GuiActivator.getResources().getI18NString( "impl.gui.main.account.DEFAULT_PAGE_BODY")); JLabel title = new JLabel(GuiActivator.getResources().getI18NString( "impl.gui.main.account.DEFAULT_PAGE_TITLE")); // Title title.setFont(title.getFont().deriveFont(Font.BOLD, 14.0f)); infoTitlePanel.add(title); this.mainPanel.add(infoTitlePanel, BorderLayout.NORTH); // Description firstDescription.setLineWrap(true); firstDescription.setEditable(false); firstDescription.setOpaque(false); firstDescription.setRows(6); firstDescription.setWrapStyleWord(true); firstDescription.setAutoscrolls(false); this.mainPanel.add(firstDescription); } /** * Returns the <tt>JPanel</tt> that contains the message prompting the user * to select a protocol. * * @return the <tt>JPanel</tt> that contains the message prompting the user * to select a protocol. */ public Object getSimpleForm() { return mainPanel; } /** * Implements the <code>WizardPage.getIdentifier</code> to return this * page identifier. * * @return Returns the identifier of the current (the first) page of the * wizard. */ public Object getIdentifier() { return FIRST_PAGE_IDENTIFIER; } /** * Implements <tt> WizardPage.getNextPageIdentifier</tt> to return * the next page identifier - the summary page. * * @return Returns the identifier of the next page of the wizard. */ public Object getNextPageIdentifier() { return WizardPage.SUMMARY_PAGE_IDENTIFIER; } /** * Implements the <code>WizardPage.getBackPageIdentifier</code> to return * the back identifier. In this case it's null because this is the first * wizard page. * * @return the identifier of the previous page of the wizard */ public Object getBackPageIdentifier() { return null; } /** * Implements the <code>WizardPage.getWizardForm</code> to return this * panel. * @return Returns this form of the wizard. */ public Object getWizardForm() { return this; } /** * Empty interface method implementation, unused in the case of the * {@link EmptyAccountRegistrationWizardPage} */ public void pageShowing() { } /** * Empty interface method implementation, unused in the case of the * {@link EmptyAccountRegistrationWizardPage} */ public void commitPage() { } /** * Empty interface method implementation, unused in the case of the * {@link EmptyAccountRegistrationWizardPage} */ public void changedUpdate(DocumentEvent e) { } /** * Empty interface method implementation, unused in the case of the * {@link EmptyAccountRegistrationWizardPage} */ public void pageHiding() { } /** * Empty interface method implementation, unused in the case of the * {@link EmptyAccountRegistrationWizardPage} */ public void pageShown() { } /** * Empty interface method implementation, unused in the case of the * {@link EmptyAccountRegistrationWizardPage} */ public void pageBack() { } }