/* * 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.plugin.sipaccregwizz; import java.awt.*; import net.java.sip.communicator.service.gui.*; import net.java.sip.communicator.service.protocol.*; import net.java.sip.communicator.plugin.desktoputil.*; /** * The FirstWizardPage is the page, where user could enter the uin * and the password of the account. * * @author Yana Stamcheva * @author Damian Minkov */ @SuppressWarnings("serial") public class FirstWizardPage extends TransparentPanel implements WizardPage { static final String FIRST_PAGE_IDENTIFIER = "FirstPageIdentifier"; private Object nextPageIdentifier = WizardPage.SUMMARY_PAGE_IDENTIFIER; private SIPAccountRegistrationWizard wizard; private final SIPAccountRegistrationForm registrationForm; private boolean isCommitted = false; /** * Creates an instance of FirstWizardPage. * * @param wizard the parent wizard */ public FirstWizardPage(SIPAccountRegistrationWizard wizard) { super(new BorderLayout()); this.wizard = wizard; this.registrationForm = new SIPAccountRegistrationForm(wizard); this.add(registrationForm); } /** * Implements the WizardPage.getIdentifier to return this * page identifier. * @return the page identifier */ public Object getIdentifier() { return FIRST_PAGE_IDENTIFIER; } /** * Implements the WizardPage.getNextPageIdentifier to return * the next page identifier - the summary page. * @return the next page identifier */ public Object getNextPageIdentifier() { return nextPageIdentifier; } /** * Implements the WizardPage.getBackPageIdentifier to return * the back identifier. In this case it's null because this is the first * wizard page. * @return the identifier of the previous wizard page */ public Object getBackPageIdentifier() { return null; } /** * Implements the WizardPage.getWizardForm to return this * panel. * @return the wizard form */ public Object getWizardForm() { registrationForm.init(); return this; } /** * Before this page is displayed enables or disables the "Next" wizard * button according to whether the UIN field is empty. */ public void pageShowing() { wizard.getWizardContainer().setBackButtonEnabled(false); } /** * Saves the user input when the "Next" wizard buttons is clicked. */ public void commitPage() { isCommitted = registrationForm.commitPage(wizard.getRegistration()); nextPageIdentifier = SUMMARY_PAGE_IDENTIFIER; } public void pageHiding() {} public void pageShown() {} public void pageBack() {} /** * Fills the UIN and Password fields in this panel with the data coming from * the given protocolProvider. * * @param protocolProvider The ProtocolProviderService to load * the data from. */ public void loadAccount(ProtocolProviderService protocolProvider) { registrationForm.setModification(wizard.isModification()); // Initialize registration form registrationForm.loadAccount(wizard.getRegistration()); } /** * Returns the simple account registration form. * @return the simple account registration form */ public Object getSimpleForm() { return registrationForm.getSimpleForm(); } /** * Returns true if the page is committed, false - * otherwise. * @return true if the page is committed, false - * otherwise */ public boolean isCommitted() { return isCommitted; } /** * Returns the SIPAccountRegistrationForm used in this page. * * @return the SIPAccountRegistrationForm */ SIPAccountRegistrationForm getRegistrationForm() { return registrationForm; } }