public class com.googlecode.lanterna.gui2.Button$DefaultButtonRenderer implements com.googlecode.lanterna.gui2.Button$ButtonRenderer
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.googlecode.lanterna.gui2.Button$DefaultButtonRenderer
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/googlecode/lanterna/gui2/Button$DefaultButtonRenderer;
public com.googlecode.lanterna.TerminalPosition getCursorLocation(com.googlecode.lanterna.gui2.Button);
descriptor: (Lcom/googlecode/lanterna/gui2/Button;)Lcom/googlecode/lanterna/TerminalPosition;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.googlecode.lanterna.gui2.Button.getThemeDefinition:()Lcom/googlecode/lanterna/graphics/ThemeDefinition;
invokeinterface com.googlecode.lanterna.graphics.ThemeDefinition.isCursorVisible:()Z
ifeq 2
1: new com.googlecode.lanterna.TerminalPosition
dup
iconst_1
aload 0
aload 1
aload 1
invokevirtual com.googlecode.lanterna.gui2.Button.getSize:()Lcom/googlecode/lanterna/TerminalSize;
invokevirtual com.googlecode.lanterna.gui2.Button$DefaultButtonRenderer.getLabelShift:(Lcom/googlecode/lanterna/gui2/Button;Lcom/googlecode/lanterna/TerminalSize;)I
iadd
iconst_0
invokespecial com.googlecode.lanterna.TerminalPosition.<init>:(II)V
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/googlecode/lanterna/gui2/Button$DefaultButtonRenderer;
0 3 1 button Lcom/googlecode/lanterna/gui2/Button;
MethodParameters:
Name Flags
button
public com.googlecode.lanterna.TerminalSize getPreferredSize(com.googlecode.lanterna.gui2.Button);
descriptor: (Lcom/googlecode/lanterna/gui2/Button;)Lcom/googlecode/lanterna/TerminalSize;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new com.googlecode.lanterna.TerminalSize
dup
bipush 8
aload 1
invokevirtual com.googlecode.lanterna.gui2.Button.getLabel:()Ljava/lang/String;
invokestatic com.googlecode.lanterna.TerminalTextUtils.getColumnWidth:(Ljava/lang/String;)I
iconst_2
iadd
invokestatic java.lang.Math.max:(II)I
iconst_1
invokespecial com.googlecode.lanterna.TerminalSize.<init>:(II)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/googlecode/lanterna/gui2/Button$DefaultButtonRenderer;
0 1 1 button Lcom/googlecode/lanterna/gui2/Button;
MethodParameters:
Name Flags
button
public void drawComponent(com.googlecode.lanterna.gui2.TextGUIGraphics, com.googlecode.lanterna.gui2.Button);
descriptor: (Lcom/googlecode/lanterna/gui2/TextGUIGraphics;Lcom/googlecode/lanterna/gui2/Button;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.googlecode.lanterna.gui2.Button.getThemeDefinition:()Lcom/googlecode/lanterna/graphics/ThemeDefinition;
astore 3
start local 3 1: aload 2
invokevirtual com.googlecode.lanterna.gui2.Button.isFocused:()Z
ifeq 4
2: aload 1
aload 3
invokeinterface com.googlecode.lanterna.graphics.ThemeDefinition.getActive:()Lcom/googlecode/lanterna/graphics/ThemeStyle;
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.applyThemeStyle:(Lcom/googlecode/lanterna/graphics/ThemeStyle;)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
3: goto 5
4: StackMap locals: com.googlecode.lanterna.graphics.ThemeDefinition
StackMap stack:
aload 1
aload 3
invokeinterface com.googlecode.lanterna.graphics.ThemeDefinition.getInsensitive:()Lcom/googlecode/lanterna/graphics/ThemeStyle;
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.applyThemeStyle:(Lcom/googlecode/lanterna/graphics/ThemeStyle;)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
5: StackMap locals:
StackMap stack:
aload 1
bipush 32
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.fill:(C)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
6: aload 1
iconst_0
iconst_0
aload 3
ldc "LEFT_BORDER"
bipush 60
invokeinterface com.googlecode.lanterna.graphics.ThemeDefinition.getCharacter:(Ljava/lang/String;C)C
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.setCharacter:(IIC)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
7: aload 1
aload 1
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.getSize:()Lcom/googlecode/lanterna/TerminalSize;
invokevirtual com.googlecode.lanterna.TerminalSize.getColumns:()I
iconst_1
isub
iconst_0
aload 3
ldc "RIGHT_BORDER"
bipush 62
invokeinterface com.googlecode.lanterna.graphics.ThemeDefinition.getCharacter:(Ljava/lang/String;C)C
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.setCharacter:(IIC)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
8: aload 2
invokevirtual com.googlecode.lanterna.gui2.Button.isFocused:()Z
ifeq 11
9: aload 1
aload 3
invokeinterface com.googlecode.lanterna.graphics.ThemeDefinition.getActive:()Lcom/googlecode/lanterna/graphics/ThemeStyle;
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.applyThemeStyle:(Lcom/googlecode/lanterna/graphics/ThemeStyle;)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
10: goto 12
11: StackMap locals:
StackMap stack:
aload 1
aload 3
invokeinterface com.googlecode.lanterna.graphics.ThemeDefinition.getPreLight:()Lcom/googlecode/lanterna/graphics/ThemeStyle;
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.applyThemeStyle:(Lcom/googlecode/lanterna/graphics/ThemeStyle;)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
12: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 1
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.getSize:()Lcom/googlecode/lanterna/TerminalSize;
invokevirtual com.googlecode.lanterna.gui2.Button$DefaultButtonRenderer.getLabelShift:(Lcom/googlecode/lanterna/gui2/Button;Lcom/googlecode/lanterna/TerminalSize;)I
istore 4
start local 4 13: aload 1
iconst_1
iload 4
iadd
iconst_0
aload 2
invokevirtual com.googlecode.lanterna.gui2.Button.getLabel:()Ljava/lang/String;
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.setCharacter:(IIC)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
14: aload 2
invokevirtual com.googlecode.lanterna.gui2.Button.getLabel:()Ljava/lang/String;
invokestatic com.googlecode.lanterna.TerminalTextUtils.getColumnWidth:(Ljava/lang/String;)I
iconst_1
if_icmpne 16
15: return
16: StackMap locals: int
StackMap stack:
aload 2
invokevirtual com.googlecode.lanterna.gui2.Button.isFocused:()Z
ifeq 19
17: aload 1
aload 3
invokeinterface com.googlecode.lanterna.graphics.ThemeDefinition.getSelected:()Lcom/googlecode/lanterna/graphics/ThemeStyle;
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.applyThemeStyle:(Lcom/googlecode/lanterna/graphics/ThemeStyle;)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
18: goto 20
19: StackMap locals:
StackMap stack:
aload 1
aload 3
invokeinterface com.googlecode.lanterna.graphics.ThemeDefinition.getNormal:()Lcom/googlecode/lanterna/graphics/ThemeStyle;
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.applyThemeStyle:(Lcom/googlecode/lanterna/graphics/ThemeStyle;)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
20: StackMap locals:
StackMap stack:
aload 1
iconst_1
iload 4
iadd
iconst_1
iadd
iconst_0
aload 2
invokevirtual com.googlecode.lanterna.gui2.Button.getLabel:()Ljava/lang/String;
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokeinterface com.googlecode.lanterna.gui2.TextGUIGraphics.putString:(IILjava/lang/String;)Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
pop
21: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/googlecode/lanterna/gui2/Button$DefaultButtonRenderer;
0 22 1 graphics Lcom/googlecode/lanterna/gui2/TextGUIGraphics;
0 22 2 button Lcom/googlecode/lanterna/gui2/Button;
1 22 3 themeDefinition Lcom/googlecode/lanterna/graphics/ThemeDefinition;
13 22 4 labelShift I
MethodParameters:
Name Flags
graphics
button
private int getLabelShift(com.googlecode.lanterna.gui2.Button, com.googlecode.lanterna.TerminalSize);
descriptor: (Lcom/googlecode/lanterna/gui2/Button;Lcom/googlecode/lanterna/TerminalSize;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.googlecode.lanterna.TerminalSize.getColumns:()I
iconst_2
isub
istore 3
start local 3 1: iload 3
ifgt 3
2: iconst_0
ireturn
3: StackMap locals: int
StackMap stack:
iconst_0
istore 4
start local 4 4: aload 1
invokevirtual com.googlecode.lanterna.gui2.Button.getLabel:()Ljava/lang/String;
invokestatic com.googlecode.lanterna.TerminalTextUtils.getColumnWidth:(Ljava/lang/String;)I
istore 5
start local 5 5: iload 3
iload 5
if_icmple 7
6: aload 2
invokevirtual com.googlecode.lanterna.TerminalSize.getColumns:()I
iconst_2
isub
iload 5
isub
iconst_2
idiv
istore 4
7: StackMap locals: int int
StackMap stack:
iload 4
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/googlecode/lanterna/gui2/Button$DefaultButtonRenderer;
0 8 1 button Lcom/googlecode/lanterna/gui2/Button;
0 8 2 size Lcom/googlecode/lanterna/TerminalSize;
1 8 3 availableSpace I
4 8 4 labelShift I
5 8 5 widthInColumns I
MethodParameters:
Name Flags
button
size
public com.googlecode.lanterna.TerminalPosition getCursorLocation(com.googlecode.lanterna.gui2.Component);
descriptor: (Lcom/googlecode/lanterna/gui2/Component;)Lcom/googlecode/lanterna/TerminalPosition;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.googlecode.lanterna.gui2.Button
invokevirtual com.googlecode.lanterna.gui2.Button$DefaultButtonRenderer.getCursorLocation:(Lcom/googlecode/lanterna/gui2/Button;)Lcom/googlecode/lanterna/TerminalPosition;
areturn
LocalVariableTable:
Start End Slot Name Signature
public void drawComponent(com.googlecode.lanterna.gui2.TextGUIGraphics, com.googlecode.lanterna.gui2.Component);
descriptor: (Lcom/googlecode/lanterna/gui2/TextGUIGraphics;Lcom/googlecode/lanterna/gui2/Component;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast com.googlecode.lanterna.gui2.Button
invokevirtual com.googlecode.lanterna.gui2.Button$DefaultButtonRenderer.drawComponent:(Lcom/googlecode/lanterna/gui2/TextGUIGraphics;Lcom/googlecode/lanterna/gui2/Button;)V
return
LocalVariableTable:
Start End Slot Name Signature
public com.googlecode.lanterna.TerminalSize getPreferredSize(com.googlecode.lanterna.gui2.Component);
descriptor: (Lcom/googlecode/lanterna/gui2/Component;)Lcom/googlecode/lanterna/TerminalSize;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.googlecode.lanterna.gui2.Button
invokevirtual com.googlecode.lanterna.gui2.Button$DefaultButtonRenderer.getPreferredSize:(Lcom/googlecode/lanterna/gui2/Button;)Lcom/googlecode/lanterna/TerminalSize;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "Button.java"
NestHost: com.googlecode.lanterna.gui2.Button
InnerClasses:
public abstract ButtonRenderer = com.googlecode.lanterna.gui2.Button$ButtonRenderer of com.googlecode.lanterna.gui2.Button
public DefaultButtonRenderer = com.googlecode.lanterna.gui2.Button$DefaultButtonRenderer of com.googlecode.lanterna.gui2.Button