?? connectdialog.java
字號:
package com.tanghan.plugin.dbviews.dialog;
//import java.util.ArrayList;
import java.util.ArrayList;
import java.util.List;
import java.util.ResourceBundle;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
//import org.eclipse.swt.widgets.TabFolder;
//import org.eclipse.swt.widgets.TabItem;
import org.eclipse.swt.widgets.Text;
import com.tanghan.plugin.TanghanPlugin;
public class ConnectDialog {
private static ResourceBundle res = TanghanPlugin.getDefault().getResourceBundle();
// private HashMap data = null;
// private HashMap items = null;
private Button okButton;
/**驅(qū)動程序列表*/
private Combo schemasCombo;
private List schemasList;
private Shell shell;
private String selectedSchema = "";
public ConnectDialog(Shell parent) {
shell = new Shell(parent, SWT.TITLE | SWT.BORDER | SWT.PRIMARY_MODAL |SWT.CENTER );
shell.setLayout(new GridLayout());
}
public String open(List schemasList) {
if(schemasList!=null)
this.schemasList = schemasList;
else
this.schemasList = new ArrayList();
createTextWidgets();
initData();
createControlButtons();
shell.pack();
shell.open();
Display display = shell.getDisplay();
while(!shell.isDisposed()){
if(!display.readAndDispatch())
display.sleep();
}
return selectedSchema;
}
private void initData(){
//初始化驅(qū)動程序列表
for(int i =0;i<schemasList.size();i++){
schemasCombo.add((String)schemasList.get(i),i);
}
if(schemasList.size()>0){
schemasCombo.setText(schemasCombo.getItem(0));
selectedSchema = schemasCombo.getItem(0);
}
}
private void createTextWidgets() {
Composite composite = new Composite(shell, SWT.NULL);
composite.getShell().setText(res.getString("TanghanPlugin.ConnectDialog.Title"));
composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
GridLayout layout= new GridLayout();
layout.numColumns = 2;
composite.setLayout(layout);
addSchemaComboLine(composite,res.getString("TanghanPlugin.DB.Schemas"));
}
private void createControlButtons() {
Composite composite = new Composite(shell, SWT.NULL);
composite.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_CENTER));
GridLayout layout = new GridLayout();
layout.numColumns = 1;
composite.setLayout(layout);
okButton = new Button(composite, SWT.PUSH);
okButton.setText(res.getString("OK"));
okButton.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
shell.close();
}
});
/*
Button cancelButton = new Button(composite, SWT.PUSH);
cancelButton.setText(res.getString("Cancel"));
cancelButton.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
shell.close();
}
});
*/
shell.setDefaultButton(okButton);
}
private void addSchemaComboLine(Composite composite,String lableText){
Label label = new Label(composite, SWT.RIGHT);
label.setText(lableText);
schemasCombo = new Combo(composite, SWT.READ_ONLY|SWT.DROP_DOWN);
schemasCombo.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent e){
int select = schemasCombo.getSelectionIndex();
if(select>-1&&select<schemasList.size()){
selectedSchema = schemasCombo.getItem(select);
}
}
});
}
/**添加輸入行*/
private Text addTextLine(Composite composite,String lableText,int textSize){
Label label = new Label(composite, SWT.RIGHT);
label.setText(lableText);
Text text = new Text(composite, SWT.BORDER);
GridData gridData = new GridData();
gridData.widthHint = textSize;
text.setLayoutData(gridData);
return text;
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -