package net.sf.fast.ibatis.util;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.StyledText;
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.DirectoryDialog;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
public class UIHelper {
public static void updateText(final Shell shell,final Text textfield, String text, boolean isDirectoryDialog, boolean isEditable) {
if (Helper.isNotEmpty(text)) {
textfield.setText(text);
}
textfield.setEditable(isEditable);
if(isDirectoryDialog) {
textfield.addMouseListener(new MouseAdapter() {
@Override
public void mouseDoubleClick(MouseEvent e) {
DirectoryDialog dialog = new DirectoryDialog(shell, SWT.NULL);
String path = dialog.open();
if (Helper.isNotEmpty(path)) {
textfield.setText(path);
}
}
});
}
}
public static void createTextArea(final Shell shell, final Text textfield, String text, int width, int height, int colSpan) {
GridData data = new GridData(GridData.FILL_BOTH);
data.widthHint = width;
data.heightHint = height;
if(colSpan > 1) {
data.horizontalSpan = colSpan;
}
if (Helper.isNotEmpty(text)) {
textfield.setText(text);
}
textfield.setLayoutData(data);
}
public static void createStyledTextArea(final Shell shell, final StyledText textfield, int width, int height, int colSpan) {
GridData data = new GridData(GridData.FILL_BOTH);
data.widthHint = width;
data.heightHint = height;
if(colSpan > 1) {
data.horizontalSpan = colSpan;
}
textfield.setLayoutData(data);
}
}