📄 swttexthelper.java
字号:
/* This file is part of ui2swt.
*
* $Revision: 1.7 $
* $Date: 2007/01/14 10:35:38 $
* $Name: $
*
* Copyright (C) 2006-2007 James Forbes, All Rights Reserved.
*
* This software is provided 'as-is', without any express or implied warranty.
* In no event will the authors be held liable for any damages arising from the
* use of this software.
*
* Permission is granted to anyone to use this software for any purpose,
* including commercial applications, and to alter it and redistribute it
* freely, subject to the following restrictions:
*
* 1. The origin of this software must not be misrepresented; you must not
* claim that you wrote the original software. If you use this software in
* a product, an acknowledgment in the product documentation would be
* appreciated but is not required.
*
* 2. Altered source versions must be plainly marked as such, and must not be
* misrepresented as being the original software.
*
* 3. This notice may not be removed or altered from any source distribution.
*/
package ui2swt.swt;
import ui2swt.ClassDefinition;
import ui2swt.UIDefinition;
import ui2swt.Widget;
public class SWTTextHelper extends SWTHelper
{
public static final int SWT_ALIGNMENT_UNKNOWN = 0;
public static final int SWT_ALIGNMENT_LEFT = 1;
public static final int SWT_ALIGNMENT_CENTRE = 2;
public static final int SWT_ALIGNMENT_RIGHT = 3;
//
//
//
private static final String UI_ALIGNMENT = "alignment.set";
private static final String UI_ALIGNMENT_STRING_VALUE_2[] =
{ "AlignLeft", "AlignCenter", "AlignHCenter", "AlignRight" };
private static final String UI_ALIGNMENT_STRING_VALUE_3[] =
{ "Qt::AlignLeft", "AlignCenter", "AlignHCenter", "AlignRight" };
private static final String UI_ALIGNMENT_STRING_VALUE_4[] =
{ "Qt::AlignLeft", "Qt::AlignCenter", "Qt::AlignHCenter", "Qt::AlignRight" };
private static final int UI_ALIGNMENT_INT_VALUE[] =
{ SWT_ALIGNMENT_LEFT,
SWT_ALIGNMENT_CENTRE,
SWT_ALIGNMENT_CENTRE,
SWT_ALIGNMENT_RIGHT };
private static final String UI_TEXT = "text.string";
private static final String UI_HTML_2 = "text.string";
private static final String UI_HTML_3 = "text.string";
private static final String UI_HTML_4 = "html.string";
private static final String UI_FONT_FAMILY = "font.font.family";
private static final String UI_FONT_POINT_SIZE = "font.font.pointsize";
private static final String UI_FONT_BOLD = "font.font.bold";
private static final String UI_FONT_ITALIC = "font.font.italic";
private static final String UI_FONT_FAMILY_DEFAULT = "TextFont8";
private static final int UI_FONT_POINT_SIZE_DEFAULT = 8;
private static final String UI_READ_ONLY = "readOnly.bool";
private static final String UI_EDITABLE = "editable.bool";
private static final String UI_ECHO_MODE = "echoMode.enum";
private static final String UI_ECHO_MODE_NORMAL_2 = "Normal";
private static final String UI_ECHO_MODE_NORMAL_3 = "Normal";
private static final String UI_ECHO_MODE_NORMAL_4 = "QLineEdit::Normal";
private static final String UI_ECHO_MODE_NO_ECHO_2 = "NoEcho";
private static final String UI_ECHO_MODE_NO_ECHO_3 = "NoEcho";
private static final String UI_ECHO_MODE_NO_ECHO_4 = "QLineEdit::NoEcho";
private static final String UI_ECHO_MODE_PASSWORD_2 = "Password";
private static final String UI_ECHO_MODE_PASSWORD_3 = "Password";
private static final String UI_ECHO_MODE_PASSWORD_4 = "QLineEdit::Password";
private static final String UI_CURSOR_POSITION = "cursorPosition.number";
//
//
//
public static int getAlignment(
UIDefinition iUIDefinition,
Widget iWidget )
{
int result = SWT_ALIGNMENT_UNKNOWN;
switch (iUIDefinition.getVersion())
{
case UIDefinition.VERSION_2:
result =
iWidget.getEnumProperty(
UI_ALIGNMENT,
UI_ALIGNMENT_STRING_VALUE_2,
UI_ALIGNMENT_INT_VALUE,
SWT_ALIGNMENT_UNKNOWN);
break;
case UIDefinition.VERSION_3:
result =
iWidget.getEnumProperty(
UI_ALIGNMENT,
UI_ALIGNMENT_STRING_VALUE_3,
UI_ALIGNMENT_INT_VALUE,
SWT_ALIGNMENT_UNKNOWN);
break;
case UIDefinition.VERSION_4:
result =
iWidget.getEnumProperty(
UI_ALIGNMENT,
UI_ALIGNMENT_STRING_VALUE_4,
UI_ALIGNMENT_INT_VALUE,
SWT_ALIGNMENT_UNKNOWN);
break;
}
return result;
}
public static boolean isPassword(
UIDefinition iUIDefinition,
Widget iWidget )
{
boolean result = false;
switch (iUIDefinition.getVersion())
{
case UIDefinition.VERSION_2:
result =
UI_ECHO_MODE_PASSWORD_2.equals(
iWidget.getStringProperty(
UI_ECHO_MODE,
UI_ECHO_MODE_NORMAL_2));
break;
case UIDefinition.VERSION_3:
result =
UI_ECHO_MODE_PASSWORD_3.equals(
iWidget.getStringProperty(
UI_ECHO_MODE,
UI_ECHO_MODE_NORMAL_3));
break;
case UIDefinition.VERSION_4:
result =
UI_ECHO_MODE_PASSWORD_4.equals(
iWidget.getStringProperty(
UI_ECHO_MODE,
UI_ECHO_MODE_NORMAL_4));
break;
}
return result;
}
public static boolean isReadOnly(
UIDefinition iUIDefinition,
Widget iWidget,
boolean iDefault )
{
boolean result = iDefault;
if ( iWidget.containsProperty(UI_READ_ONLY) )
{
result = iWidget.getBoolProperty(UI_READ_ONLY, iDefault);
}
else if ( iWidget.containsProperty(UI_EDITABLE) )
{
result = !(iWidget.getBoolProperty(UI_EDITABLE, !iDefault));
}
return result;
}
//
//
//
public static void appendPasswordStyle(
UIDefinition iUIDefinition,
Widget iWidget,
StringBuffer iStyle )
{
if ( SWTTextHelper.isPassword(iUIDefinition, iWidget) )
{
appendStyleValue(iStyle, "SWT.PASSWORD");
}
}
public static void appendAlignmentStyle(
UIDefinition iUIDefinition,
Widget iWidget,
StringBuffer iStyle )
{
switch (SWTTextHelper.getAlignment(iUIDefinition, iWidget))
{
case SWTTextHelper.SWT_ALIGNMENT_UNKNOWN:
break;
case SWTTextHelper.SWT_ALIGNMENT_LEFT:
appendStyleValue(iStyle, "SWT.LEFT");
break;
case SWTTextHelper.SWT_ALIGNMENT_CENTRE:
appendStyleValue(iStyle, "SWT.CENTER");
break;
case SWTTextHelper.SWT_ALIGNMENT_RIGHT:
appendStyleValue(iStyle, "SWT.RIGHT");
break;
default:
break;
}
}
public static void appendReadOnlyStyle(
UIDefinition iUIDefinition,
Widget iWidget,
boolean iDefault,
StringBuffer iStyle )
{
if ( SWTTextHelper.isReadOnly(iUIDefinition, iWidget, iDefault) )
{
appendStyleValue(iStyle, "SWT.READ_ONLY");
}
}
//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -