📄 swttexthelper.java
字号:
//
//
public static void generateSetTextCode(
UIDefinition iUIDefinition,
Widget iWidget,
ClassDefinition iClassDefinition )
{
String text = null;
switch (iUIDefinition.getVersion())
{
case UIDefinition.VERSION_2:
if ( iWidget.containsProperty(UI_TEXT) )
{
text = iWidget.getTextProperty(UI_TEXT, "");
}
else if ( iWidget.containsProperty(UI_HTML_2) )
{
text = iWidget.getTextProperty(UI_HTML_2, "");
}
break;
case UIDefinition.VERSION_3:
if ( iWidget.containsProperty(UI_TEXT) )
{
text = iWidget.getTextProperty(UI_TEXT, "");
}
else if ( iWidget.containsProperty(UI_HTML_3) )
{
text = iWidget.getTextProperty(UI_HTML_3, "");
}
break;
case UIDefinition.VERSION_4:
if ( iWidget.containsProperty(UI_TEXT) )
{
text = iWidget.getTextProperty(UI_TEXT, "");
}
else if ( iWidget.containsProperty(UI_HTML_4) )
{
text = iWidget.getTextProperty(UI_HTML_4, "");
}
break;
}
generateSetTextCode(iUIDefinition, iWidget, text, iClassDefinition);
}
public static void generateSetTextCode(
UIDefinition iUIDefinition,
Widget iWidget,
String iText,
ClassDefinition iClassDefinition )
{
if ( iText != null )
{
String widgetVar = iWidget.getProperty(SWT_VAR);
iClassDefinition.getConstructor()
.addMethodCall1(widgetVar, "setText", iText);
}
}
public static void generateSetAlignmentCode(
UIDefinition iUIDefinition,
Widget iWidget,
ClassDefinition iClassDefinition )
{
String widgetVar = iWidget.getProperty(SWT_VAR);
switch (getAlignment(iUIDefinition, iWidget))
{
case SWT_ALIGNMENT_UNKNOWN:
break;
case SWT_ALIGNMENT_LEFT:
iClassDefinition.getConstructor()
.addMethodCall1(widgetVar, "setAlignment", "SWT.LEFT");
break;
case SWT_ALIGNMENT_CENTRE:
iClassDefinition.getConstructor()
.addMethodCall1(widgetVar, "setAlignment", "SWT.CENTER");
break;
case SWT_ALIGNMENT_RIGHT:
iClassDefinition.getConstructor()
.addMethodCall1(widgetVar, "setAlignment", "SWT.RIGHT");
break;
}
}
public static void generateSetFontCode(
UIDefinition iUIDefinition,
Widget iWidget,
ClassDefinition iClassDefinition )
{
if ( iWidget.containsInheritedProperty(UI_FONT_FAMILY) ||
iWidget.containsInheritedProperty(UI_FONT_POINT_SIZE) ||
iWidget.containsInheritedProperty(UI_FONT_BOLD) ||
iWidget.containsInheritedProperty(UI_FONT_ITALIC) )
{
String widgetVar = iWidget.getProperty(SWT_VAR);
String fontFamily = iWidget.getInheritedTextProperty(UI_FONT_FAMILY, UI_FONT_FAMILY_DEFAULT);
int fontPointSize = iWidget.getInheritedIntProperty(UI_FONT_POINT_SIZE, UI_FONT_POINT_SIZE_DEFAULT);
boolean fontBold = getFontBold(iUIDefinition, iWidget);
boolean fontItalic = getFontItalic(iUIDefinition, iWidget);
String fontStyle;
if ( fontBold && fontItalic )
{
fontStyle = "SWT.BOLD|SWT.ITALIC";
}
else if ( fontBold )
{
fontStyle = "SWT.BOLD";
}
else if ( fontItalic )
{
fontStyle = "SWT.ITALIC";
}
else
{
fontStyle = "SWT.NORMAL";
}
iClassDefinition
.addImport("org.eclipse.swt.graphics.Font")
.getConstructor().addMethodCall1(
widgetVar,
"setFont",
"new Font("+widgetVar+".getDisplay(),"+fontFamily+","+fontPointSize+","+fontStyle+")");
}
}
public static void generateEchoCharCode(
UIDefinition iUIDefinition,
Widget iWidget,
ClassDefinition iClassDefinition )
{
String widgetVar = iWidget.getProperty(SWTWidgetHelper.SWT_VAR);
String echoMode = null;
switch (iUIDefinition.getVersion())
{
case UIDefinition.VERSION_2:
echoMode =
iWidget.getStringProperty(
UI_ECHO_MODE,
UI_ECHO_MODE_NORMAL_2);
if ( UI_ECHO_MODE_NO_ECHO_2.equals(echoMode) )
{
iClassDefinition.getConstructor()
.addMethodCall1(widgetVar, "setEchoChar", "' '");
}
break;
case UIDefinition.VERSION_3:
echoMode =
iWidget.getStringProperty(
UI_ECHO_MODE,
UI_ECHO_MODE_NORMAL_3);
if ( UI_ECHO_MODE_NO_ECHO_3.equals(echoMode) )
{
iClassDefinition.getConstructor()
.addMethodCall1(widgetVar, "setEchoChar", "' '");
}
break;
case UIDefinition.VERSION_4:
echoMode =
iWidget.getStringProperty(
UI_ECHO_MODE,
UI_ECHO_MODE_NORMAL_4);
if ( UI_ECHO_MODE_NO_ECHO_4.equals(echoMode) )
{
iClassDefinition.getConstructor()
.addMethodCall1(widgetVar, "setEchoChar", "' '");
}
break;
}
}
public static void generateSelectionCode(
UIDefinition iUIDefinition,
Widget iWidget,
ClassDefinition iClassDefinition )
{
if ( iWidget.containsProperty(UI_CURSOR_POSITION) )
{
int position = iWidget.getIntProperty(UI_CURSOR_POSITION, 0);
String widgetVar = iWidget.getProperty(SWTWidgetHelper.SWT_VAR);
iClassDefinition.getConstructor()
.addMethodCall2(widgetVar, "setSelection", position, position);
}
}
//
//
//
private static boolean getFontBold(
UIDefinition iUIDefinition,
Widget iWidget )
{
boolean fontBold = false;
switch (iUIDefinition.getVersion())
{
case UIDefinition.VERSION_2:
case UIDefinition.VERSION_3:
fontBold = (iWidget.getInheritedIntProperty(UI_FONT_BOLD, 0) > 0);
break;
case UIDefinition.VERSION_4:
fontBold = iWidget.getInheritedBoolProperty(UI_FONT_BOLD, false);
break;
}
return fontBold;
}
private static boolean getFontItalic(
UIDefinition iUIDefinition,
Widget iWidget )
{
boolean fontItalic = false;
int version = iUIDefinition.getVersion();
switch (version)
{
case UIDefinition.VERSION_2:
case UIDefinition.VERSION_3:
fontItalic = (iWidget.getInheritedIntProperty(UI_FONT_ITALIC, 0) > 0);
break;
case UIDefinition.VERSION_4:
fontItalic = iWidget.getInheritedBoolProperty(UI_FONT_ITALIC, false);
break;
}
return fontItalic;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -