diff --git a/src/net/java/sip/communicator/impl/gui/main/account/AccountRegWizardContainerImpl.java b/src/net/java/sip/communicator/impl/gui/main/account/AccountRegWizardContainerImpl.java index 314ee9830..95edf3a4f 100644 --- a/src/net/java/sip/communicator/impl/gui/main/account/AccountRegWizardContainerImpl.java +++ b/src/net/java/sip/communicator/impl/gui/main/account/AccountRegWizardContainerImpl.java @@ -249,7 +249,9 @@ public void setCurrentWizard(AccountRegistrationWizard wizard) { this.currentWizard = wizard; - summaryPage.setPreferredSize(this.currentWizard.getSize()); + if (wizard instanceof DesktopAccountRegistrationWizard) + summaryPage.setPreferredSize( + ((DesktopAccountRegistrationWizard) currentWizard).getSize()); Iterator i = wizard.getPages(); diff --git a/src/net/java/sip/communicator/plugin/aimaccregwizz/AimAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/aimaccregwizz/AimAccountRegistrationWizard.java index 02743ec8f..6c8c62c2d 100644 --- a/src/net/java/sip/communicator/plugin/aimaccregwizz/AimAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/aimaccregwizz/AimAccountRegistrationWizard.java @@ -22,7 +22,7 @@ * @author Yana Stamcheva */ public class AimAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { /** * The logger. diff --git a/src/net/java/sip/communicator/plugin/dictaccregwizz/DictAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/dictaccregwizz/DictAccountRegistrationWizard.java index 9cbad88a0..a1dea949e 100644 --- a/src/net/java/sip/communicator/plugin/dictaccregwizz/DictAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/dictaccregwizz/DictAccountRegistrationWizard.java @@ -23,7 +23,7 @@ * @author LITZELMANN Cedric */ public class DictAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { private final Logger logger = Logger.getLogger(DictAccountRegistrationWizard.class); diff --git a/src/net/java/sip/communicator/plugin/gibberishaccregwizz/GibberishAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/gibberishaccregwizz/GibberishAccountRegistrationWizard.java index b17f95194..f4f69d66e 100644 --- a/src/net/java/sip/communicator/plugin/gibberishaccregwizz/GibberishAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/gibberishaccregwizz/GibberishAccountRegistrationWizard.java @@ -23,7 +23,7 @@ * @author Emil Ivov */ public class GibberishAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { private final Logger logger = Logger.getLogger(GibberishAccountRegistrationWizard.class); diff --git a/src/net/java/sip/communicator/plugin/icqaccregwizz/IcqAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/icqaccregwizz/IcqAccountRegistrationWizard.java index c27b7a936..c28c21f84 100644 --- a/src/net/java/sip/communicator/plugin/icqaccregwizz/IcqAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/icqaccregwizz/IcqAccountRegistrationWizard.java @@ -22,7 +22,7 @@ * @author Yana Stamcheva */ public class IcqAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { /** * The logger. diff --git a/src/net/java/sip/communicator/plugin/ircaccregwizz/IrcAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/ircaccregwizz/IrcAccountRegistrationWizard.java index e1d970872..191638b34 100644 --- a/src/net/java/sip/communicator/plugin/ircaccregwizz/IrcAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/ircaccregwizz/IrcAccountRegistrationWizard.java @@ -23,7 +23,7 @@ * @author Lionel Ferreira & Michael Tarantino */ public class IrcAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { private final Logger logger = Logger.getLogger(IrcAccountRegistrationWizard.class); diff --git a/src/net/java/sip/communicator/plugin/jabberaccregwizz/JabberAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/jabberaccregwizz/JabberAccountRegistrationWizard.java index 5df6b5b44..4e1b19509 100644 --- a/src/net/java/sip/communicator/plugin/jabberaccregwizz/JabberAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/jabberaccregwizz/JabberAccountRegistrationWizard.java @@ -24,7 +24,7 @@ * @author Yana Stamcheva */ public class JabberAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { /** * The logger. diff --git a/src/net/java/sip/communicator/plugin/msnaccregwizz/MsnAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/msnaccregwizz/MsnAccountRegistrationWizard.java index 312f4a8a2..dee438e09 100644 --- a/src/net/java/sip/communicator/plugin/msnaccregwizz/MsnAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/msnaccregwizz/MsnAccountRegistrationWizard.java @@ -22,7 +22,7 @@ * @author Yana Stamcheva */ public class MsnAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { private final Logger logger = Logger.getLogger(MsnAccountRegistrationWizard.class); diff --git a/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistrationWizard.java index a20e231cb..7c15d0f69 100644 --- a/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/rssaccregwizz/RssAccountRegistrationWizard.java @@ -23,7 +23,7 @@ * @author Emil Ivov */ public class RssAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { private final Logger logger = Logger.getLogger(RssAccountRegistrationWizard.class); diff --git a/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationWizard.java index fa952262c..ee0165944 100644 --- a/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationWizard.java @@ -25,7 +25,7 @@ * @author Grigorii Balutsel */ public class SIPAccountRegistrationWizard - extends ExtendedAccountRegistrationWizard + extends ExtendedDesktopAccountRegWizard { /** * The first wizard page. diff --git a/src/net/java/sip/communicator/plugin/sshaccregwizz/SSHAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/sshaccregwizz/SSHAccountRegistrationWizard.java index 73a46df49..7e3f4a686 100644 --- a/src/net/java/sip/communicator/plugin/sshaccregwizz/SSHAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/sshaccregwizz/SSHAccountRegistrationWizard.java @@ -32,7 +32,7 @@ * @author Shobhit Jindal */ public class SSHAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { private final Logger logger = Logger.getLogger(SSHAccountRegistrationWizard.class); diff --git a/src/net/java/sip/communicator/plugin/yahooaccregwizz/YahooAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/yahooaccregwizz/YahooAccountRegistrationWizard.java index 36035fa72..fb3482b95 100644 --- a/src/net/java/sip/communicator/plugin/yahooaccregwizz/YahooAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/yahooaccregwizz/YahooAccountRegistrationWizard.java @@ -22,7 +22,7 @@ * @author Yana Stamcheva */ public class YahooAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { private final Logger logger = Logger.getLogger(YahooAccountRegistrationWizard.class); diff --git a/src/net/java/sip/communicator/plugin/zeroconfaccregwizz/ZeroconfAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/zeroconfaccregwizz/ZeroconfAccountRegistrationWizard.java index 71b5da685..5a5ddaa26 100644 --- a/src/net/java/sip/communicator/plugin/zeroconfaccregwizz/ZeroconfAccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/plugin/zeroconfaccregwizz/ZeroconfAccountRegistrationWizard.java @@ -24,7 +24,7 @@ * @author Maxime Catelin */ public class ZeroconfAccountRegistrationWizard - extends AccountRegistrationWizard + extends DesktopAccountRegistrationWizard { private Logger logger = Logger.getLogger(ZeroconfAccountRegistrationWizard.class); diff --git a/src/net/java/sip/communicator/service/gui/AccountRegistrationWizard.java b/src/net/java/sip/communicator/service/gui/AccountRegistrationWizard.java index 9390e3a21..6fa9c3cc7 100644 --- a/src/net/java/sip/communicator/service/gui/AccountRegistrationWizard.java +++ b/src/net/java/sip/communicator/service/gui/AccountRegistrationWizard.java @@ -6,7 +6,6 @@ */ package net.java.sip.communicator.service.gui; -import java.awt.*; import java.util.*; import net.java.sip.communicator.service.gui.internal.*; @@ -197,13 +196,6 @@ public String getForgotPasswordLink() return null; } - /** - * Returns the preferred dimensions of this wizard. - * - * @return the preferred dimensions of this wizard. - */ - public abstract Dimension getSize(); - /** * Returns a simple account registration form that would be the first form * shown to the user. Only if the user needs more settings she'll choose diff --git a/src/net/java/sip/communicator/service/gui/DesktopAccountRegistrationWizard.java b/src/net/java/sip/communicator/service/gui/DesktopAccountRegistrationWizard.java new file mode 100644 index 000000000..90a917f58 --- /dev/null +++ b/src/net/java/sip/communicator/service/gui/DesktopAccountRegistrationWizard.java @@ -0,0 +1,39 @@ +/* + * Jitsi, the OpenSource Java VoIP and Instant Messaging client. + * + * Distributable under LGPL license. + * See terms of license at gnu.org. + */ +package net.java.sip.communicator.service.gui; + +import java.awt.*; + +/** + * The DesktopAccountRegistrationWizard extends the + * AccountRegistrationWizard to provide a desktop specific account + * registration. It is meant to provide a wizard which will guide the user + * through a protocol account registration. Each + * AccountRegistrationWizard should provide a set of + * WizardPages, an icon, the name and the description of the + * corresponding protocol. + *

+ * Note that the AccountRegistrationWizard is NOT a real wizard, it + * doesn't handle wizard events. Each UI Service implementation should provide + * its own wizard UI control, which should manage all the events, panels and + * buttons, etc. + *

+ * It depends on the wizard implementation in the UI for whether or not a + * summary will be shown to the user before "Finish". + * + * @author Yana Stamcheva + */ +public abstract class DesktopAccountRegistrationWizard + extends AccountRegistrationWizard +{ + /** + * Returns the preferred dimensions of this wizard. + * + * @return the preferred dimensions of this wizard. + */ + public abstract Dimension getSize(); +} diff --git a/src/net/java/sip/communicator/service/gui/ExtendedDesktopAccountRegWizard.java b/src/net/java/sip/communicator/service/gui/ExtendedDesktopAccountRegWizard.java new file mode 100644 index 000000000..587e742fe --- /dev/null +++ b/src/net/java/sip/communicator/service/gui/ExtendedDesktopAccountRegWizard.java @@ -0,0 +1,29 @@ +/* + * Jitsi, the OpenSource Java VoIP and Instant Messaging client. + * + * Distributable under LGPL license. See terms of license at gnu.org. + */ +package net.java.sip.communicator.service.gui; + +/** + * The ExtendedDesktopAccountRegWizard allows to specify if a sign up + * form is supported for a desktop specific account registration. + * + * @author Yana Stamcheva + */ +public abstract class ExtendedDesktopAccountRegWizard + extends DesktopAccountRegistrationWizard +{ + /** + * Indicates if a sign up form is supported by this wizard. + * + * @return true if a sign up form is supported by this wizard, + * false - otherwise + */ + public abstract boolean isSignupSupported(); + + /** + * Sets the create account view of this registration wizard. + */ + public abstract void setCreateAccountView(); +}