Java base for menu initialization; Add base for deletion of ScritchUI objects.
[SquirrelJME.git] / modules / midp-lcdui / src / main / java / cc / squirreljme / runtime / lcdui / scritchui / MenuLayoutMenu.java
blob87dfddf7c88331032a635cb83f26e775f9d94f3c
1 // -*- Mode: Java; indent-tabs-mode: t; tab-width: 4 -*-
2 // ---------------------------------------------------------------------------
3 // Multi-Phasic Applications: SquirrelJME
4 // Copyright (C) Stephanie Gawroriski <xer@multiphasicapps.net>
5 // ---------------------------------------------------------------------------
6 // SquirrelJME is under the Mozilla Public License Version 2.0.
7 // See license.mkd for licensing and copyright information.
8 // ---------------------------------------------------------------------------
10 package cc.squirreljme.runtime.lcdui.scritchui;
12 import cc.squirreljme.jvm.mle.scritchui.ScritchInterface;
13 import cc.squirreljme.jvm.mle.scritchui.brackets.ScritchMenuBracket;
14 import cc.squirreljme.runtime.cldc.annotation.SquirrelJMEVendorApi;
15 import cc.squirreljme.runtime.cldc.debug.Debugging;
16 import javax.microedition.lcdui.Menu;
17 import org.jetbrains.annotations.Async;
19 /**
20 * Represents the layout state for a menu.
22 * @see ScritchMenuBracket
23 * @since 2024/07/18
25 @SquirrelJMEVendorApi
26 public class MenuLayoutMenu
27 extends MenuLayoutBindableSub<Menu>
29 /**
30 * Initializes the bindable.
32 * @param __scritch The ScritchUI interface.
33 * @param __item The item to bind to.
34 * @throws NullPointerException On null arguments.
35 * @since 2024/07/18
37 protected MenuLayoutMenu(ScritchInterface __scritch, Menu __item)
38 throws NullPointerException
40 super(__scritch, __item);
43 /**
44 * {@inheritDoc}
45 * @since 2024/07/18
47 @Override
48 @SquirrelJMEVendorApi
49 @Async.Execute
50 protected void refreshInLoop()
51 throws IllegalStateException
53 throw Debugging.todo();