First stages home screen architecture update (will not affect build at all, should probably be a branch).

This commit is contained in:
Doublestrike
2012-02-22 07:34:00 +00:00
parent c1c8231944
commit 43c518569f
4 changed files with 56 additions and 0 deletions

3
.gitattributes vendored
View File

@@ -11214,6 +11214,7 @@ src/main/java/forge/control/home/ControlQuest.java -text
src/main/java/forge/control/home/ControlSealed.java -text
src/main/java/forge/control/home/ControlSettings.java -text
src/main/java/forge/control/home/ControlUtilities.java -text
src/main/java/forge/control/home/IControlSubmenu.java -text
src/main/java/forge/control/home/package-info.java -text svneol=native#text/plain
src/main/java/forge/control/input/Input.java svneol=native#text/plain
src/main/java/forge/control/input/InputAttack.java svneol=native#text/plain
@@ -11335,6 +11336,7 @@ src/main/java/forge/model/BuildInfo.java -text
src/main/java/forge/model/FMatchState.java svneol=native#text/plain
src/main/java/forge/model/FModel.java svneol=native#text/plain
src/main/java/forge/model/MultipleForgeJarsFoundError.java -text
src/main/java/forge/model/home/MenuGroup.java -text
src/main/java/forge/model/package-info.java svneol=native#text/plain
src/main/java/forge/package-info.java svneol=native#text/plain
src/main/java/forge/properties/ForgePreferences.java svneol=native#text/plain
@@ -11410,6 +11412,7 @@ src/main/java/forge/view/bazaar/ViewStall.java svneol=native#text/plain
src/main/java/forge/view/bazaar/package-info.java svneol=native#text/plain
src/main/java/forge/view/editor/package-info.java svneol=native#text/plain
src/main/java/forge/view/home/ConstructedDeckSelectPanel.java -text
src/main/java/forge/view/home/IViewSubmenu.java -text
src/main/java/forge/view/home/QuestFileLister.java -text
src/main/java/forge/view/home/QuestPreferencesHandler.java -text
src/main/java/forge/view/home/StartButton.java -text

View File

@@ -0,0 +1,16 @@
package forge.control.home;
import forge.Command;
import forge.view.home.IViewSubmenu;
/** Dictates methods required for a submenu controller. */
public interface IControlSubmenu {
/** @return {@link forge.command} */
Command getCommand();
/** @return {@link forge.view.home.IViewSubmenu} */
IViewSubmenu getView();
/** Update whatever content is in the panel. */
void update();
}

View File

@@ -0,0 +1,15 @@
package forge.model.home;
/**
* Submenus each belong to a menu group, which
* is used for several functions, such as expanding
* and collapsing in the menu.
*/
public enum MenuGroup { /** */
CONSTRUCTED, /** */
SEALED, /** */
DRAFT, /** */
QUEST, /** */
SETTINGS, /** */
UTILITIES;
}

View File

@@ -0,0 +1,22 @@
package forge.view.home;
import javax.swing.JPanel;
import forge.control.home.IControlSubmenu;
import forge.model.home.MenuGroup;
/** Dictates methods required for a submenu view. */
public interface IViewSubmenu {
/** @return {@link forge.control.home.IControlSubmenu} */
IControlSubmenu getControl();
/** Allows static factory creation by decoupling UI components.
* @return {@link javax.swing.JPanel} */
JPanel getPanel();
/** Returns parent menu grouping of this submenu, useful for
* functions such as expanding and collapsing in the menu area.
*
* @return {@link javax.swing.JPanel} */
MenuGroup getGroup();
}