@@ -26,7 +26,7 @@ open class AndroidMenuItemForward: JavaObject {
2626 self . javaObject = $0
2727 }
2828 }
29-
29+
3030 public var title : String ? {
3131
3232 @inline ( __always)
@@ -170,7 +170,7 @@ public extension AndroidMenuItemForward {
170170 let __return = JNIMethod . CallObjectMethod (
171171 object: javaObject,
172172 methodName: " setIcon " ,
173- methodSig: " (I)V " ,
173+ methodSig: " (I)Landroid/view/MenuItem; " ,
174174 methodCache: & MenuItemJNICache. MethodID. setIcon1,
175175 args: & __args,
176176 locals: & __locals )
@@ -189,7 +189,7 @@ public extension AndroidMenuItemForward {
189189 let __return = JNIMethod . CallObjectMethod (
190190 object: javaObject,
191191 methodName: " setIcon " ,
192- methodSig: " (Landroid/graphics/drawable/Drawable;)V " ,
192+ methodSig: " (Landroid/graphics/drawable/Drawable;)Landroid/view/MenuItem; " ,
193193 methodCache: & MenuItemJNICache. MethodID. setIcon2,
194194 args: & __args,
195195 locals: & __locals )
@@ -264,6 +264,102 @@ public extension AndroidMenuItemForward {
264264
265265 return Int ( __return)
266266 }
267+
268+ public func setShowAsAction( action: ShowAsAction ) {
269+
270+ var __locals = [ jobject] ( )
271+
272+ var __args = [ jvalue] ( repeating: jvalue ( ) , count: 1 )
273+
274+ __args [ 0 ] = jvalue ( i: jint ( action. rawValue) )
275+
276+ JNIMethod . CallVoidMethod (
277+ object: javaObject,
278+ methodName: " setShowAsAction " ,
279+ methodSig: " (I)V " ,
280+ methodCache: & MenuItemJNICache. MethodID. setShowAsAction,
281+ args: & __args,
282+ locals: & __locals )
283+ }
284+ }
285+
286+ internal extension AndroidMenuItemForward {
287+
288+ internal static var SHOW_AS_ACTION_NEVER : Int {
289+
290+ get {
291+
292+ let __value = JNIField . GetStaticIntField (
293+ fieldName: " SHOW_AS_ACTION_NEVER " ,
294+ fieldType: " I " ,
295+ fieldCache: & MenuItemJNICache. FieldID. SHOW_AS_ACTION_NEVER,
296+ className: MenuItemJNICache . className,
297+ classCache: & MenuItemJNICache. jniClass )
298+
299+ return Int ( __value)
300+ }
301+ }
302+
303+ internal static var SHOW_AS_ACTION_IF_ROOM : Int {
304+
305+ get {
306+
307+ let __value = JNIField . GetStaticIntField (
308+ fieldName: " SHOW_AS_ACTION_IF_ROOM " ,
309+ fieldType: " I " ,
310+ fieldCache: & MenuItemJNICache. FieldID. SHOW_AS_ACTION_IF_ROOM,
311+ className: MenuItemJNICache . className,
312+ classCache: & MenuItemJNICache. jniClass )
313+
314+ return Int ( __value)
315+ }
316+ }
317+
318+ internal static var SHOW_AS_ACTION_ALWAYS : Int {
319+
320+ get {
321+
322+ let __value = JNIField . GetStaticIntField (
323+ fieldName: " SHOW_AS_ACTION_ALWAYS " ,
324+ fieldType: " I " ,
325+ fieldCache: & MenuItemJNICache. FieldID. SHOW_AS_ACTION_ALWAYS,
326+ className: MenuItemJNICache . className,
327+ classCache: & MenuItemJNICache. jniClass )
328+
329+ return Int ( __value)
330+ }
331+ }
332+
333+ internal static var SHOW_AS_ACTION_WITH_TEXT : Int {
334+
335+ get {
336+
337+ let __value = JNIField . GetStaticIntField (
338+ fieldName: " SHOW_AS_ACTION_WITH_TEXT " ,
339+ fieldType: " I " ,
340+ fieldCache: & MenuItemJNICache. FieldID. SHOW_AS_ACTION_WITH_TEXT,
341+ className: MenuItemJNICache . className,
342+ classCache: & MenuItemJNICache. jniClass )
343+
344+ return Int ( __value)
345+ }
346+ }
347+
348+ internal static var SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW : Int {
349+
350+ get {
351+
352+ let __value = JNIField . GetStaticIntField (
353+ fieldName: " SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW " ,
354+ fieldType: " I " ,
355+ fieldCache: & MenuItemJNICache. FieldID. SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW,
356+ className: MenuItemJNICache . className,
357+ classCache: & MenuItemJNICache. jniClass )
358+
359+ return Int ( __value)
360+ }
361+ }
362+
267363}
268364
269365internal extension AndroidMenuItemForward {
@@ -279,6 +375,15 @@ internal extension AndroidMenuItemForward {
279375 /// JNI Java class
280376 static var jniClass : jclass ?
281377
378+ struct FieldID {
379+
380+ static var SHOW_AS_ACTION_NEVER : jfieldID ?
381+ static var SHOW_AS_ACTION_IF_ROOM : jfieldID ?
382+ static var SHOW_AS_ACTION_ALWAYS : jfieldID ?
383+ static var SHOW_AS_ACTION_WITH_TEXT : jfieldID ?
384+ static var SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW : jfieldID ?
385+ }
386+
282387 /// JNI Method ID cache
283388 struct MethodID {
284389
@@ -293,6 +398,30 @@ internal extension AndroidMenuItemForward {
293398 static var getGroupId : jmethodID ?
294399 static var setTitleCondensed : jmethodID ?
295400 static var getTitleCondensed : jmethodID ?
401+ static var setShowAsAction : jmethodID ?
402+ }
403+ }
404+ }
405+
406+ public extension AndroidMenuItemForward {
407+
408+ public struct ShowAsAction : RawRepresentable , Equatable {
409+
410+ public let rawValue : Int
411+
412+ public init ( rawValue: Int ) {
413+ self . rawValue = rawValue
296414 }
415+
416+ public static let never = AndroidMenuItemForward . ShowAsAction ( rawValue: AndroidMenuItemForward . SHOW_AS_ACTION_NEVER)
417+
418+ public static let ifRoom = AndroidMenuItemForward . ShowAsAction ( rawValue: AndroidMenuItemForward . SHOW_AS_ACTION_IF_ROOM)
419+
420+ public static let always = AndroidMenuItemForward . ShowAsAction ( rawValue: AndroidMenuItemForward . SHOW_AS_ACTION_ALWAYS)
421+
422+ public static let withText = AndroidMenuItemForward . ShowAsAction ( rawValue: AndroidMenuItemForward . SHOW_AS_ACTION_WITH_TEXT)
423+
424+ public static let collapseActionView = AndroidMenuItemForward . ShowAsAction ( rawValue: AndroidMenuItemForward . SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW)
297425 }
298426}
427+
0 commit comments