Add link to posts because IFTTT really hates feeds without links.
[SquirrelJME.git] / modules / midp-lcdui / build.gradle
blob39788d17b117f6193d89f951045f21d1df214bfa
1 import cc.squirreljme.plugin.swm.JavaMEMidletType
2 import cc.squirreljme.plugin.swm.JavaMEStandard
4 description = "This contains the standard MIDP Limited Capability Device " +
5  "User Interface which uses graphical text, widgets, and images to interact " +
6  "with the user. Unlike the MEEP Line User Interface, this requires a " +
7  "much more capable graphical system."
8 version = rootProject.version
10 squirreljme
12         javaDocErrorCode = "EB"
13         swmType = JavaMEMidletType.API
14         swmName = "LCD UI"
15         swmVendor = "Stephanie Gawroriski"
16         definedStandards += new JavaMEStandard("microedition.lcdui;;")
17         tags += "graphics"
18         tags += "j2me"
19         
20         // ProGuard thinks this method has no side effects so it removes this
21         // however, we really do need to keep this method but we can obfuscate it
22         proGuardOptions += ["-keepclassmembers,allowobfuscation",
23                 "class", "*", "{",
24                         "javax.microedition.lcdui.__CommonWidget__\$__CommonState__",
25                                 "__stateInit", "(",
26                                         "cc.squirreljme.runtime.lcdui.mle.UIBackend",
27                                 ")", ";",
28                 "}"]
29         
30         // Performing optimizations here breaks MLE callbacks
31         proGuardOptions += ["-keep,includecode",
32                 "class", "javax.microedition.lcdui.__MLEUIThread__", "{",
33                         "<methods>", ";",
34                 "}"]
35         
36         // Keep any class members that are marked as serialized events and do not
37         // optimize them
38         proGuardOptions += ["-keepclassmembers,includecode",
39                 "class", "*", "{",
40                         "@cc.squirreljme.runtime.lcdui.SerializedEvent", "*", ";",
41                 "}"]
42         
43         // Buggy when these are optimized
44         proGuardOptions += ["-keep,includecode", "class",
45                 "javax.microedition.lcdui.__NotifyShow__"]
46         proGuardOptions += ["-keep,includecode",
47                 "class", "cc.squirreljme.runtime.lcdui.mle.PencilGraphics", "{",
48                         "<methods>", ";",
49                 "}"]
50         proGuardOptions += ["-keepclassmembers,includecode",
51                 "class", "javax.microedition.lcdui.Canvas", "{",
52                         "cc.squirreljme.runtime.lcdui.mle.UIBackend",
53                                 "__backend", "(", ")", ";",
54                         "void", "__updateFormTitle", "(",
55                                 "boolean", ",",
56                                 "boolean", ")", ";",
57                 "}"]
58         proGuardOptions += ["-keepclassmembers,includecode",
59                 "class", "javax.microedition.lcdui.Displayable", "{",
60                         "void", "__showNotify", "(",
61                                 "javax.microedition.lcdui.Displayable", ")", ";",
62                         "void", "__layoutCommands", "(", ")", ";",
63                         "void", "__layoutDefault", "(",
64                                         "javax.microedition.lcdui.__Layout__",
65                                 ")", ";",
66                         "void", "__layoutExecute", "(",
67                                         "javax.microedition.lcdui.__Layout__",
68                                 ")", ";",
69                         "void", "__layoutExecute", "(",
70                                         "javax.microedition.lcdui.__Layout__", ",",
71                                         "int", ",",
72                                         "int",
73                                 ")", ";",
74                         "void", "__layoutActionSet", "(",
75                                         "javax.microedition.lcdui.__Action__", ",",
76                                         "int",
77                                 ")", ";",
78                 "}"]
81 dependencies
83         api project(":modules:cldc-compact")
85         api project(":modules:meep-midlet")
86         api project(":modules:gcf")
87         api project(":modules:io")
88         api project(":modules:collections")
89         api project(":modules:scritch-ui")