tab_list.add(new GeneralTab(settings_tab_panel));
//tab_list.add(new ConnectionTab(settings_tab_panel));
completeList(null, tab_list);
tabs_tree.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
if (tabs_tree.getSelectionCount()==0) return ;
TreeItem item = tabs_tree.getSelection()[0];
AbstractTab selected_tab = (AbstractTab) item.getData(DATA_KEY);
if (selectedTab != null) {
if (!selectedTab.checkFields()) {
e.doit = false;
tabs_tree.setSelection(selectedItem);
return;
}
}
selectedTab = selected_tab;
selectedItem = tabs_tree.getSelection()[0];
settings_tab_panel.setContent(selected_tab.getTabContent());
}
});
Composite button_bar = new Composite(shell,SWT.NONE);
button_bar.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
GridLayout layout = new GridLayout(3,false);
button_bar.setLayout(layout);
Button button_ok = new Button(button_bar,SWT.NONE);
button_ok.setFont(skin.getButtonFont());
button_ok.setText(_._("settingswindow.button.ok"));
button_ok.setImage(SWTImageRepository.getImage("ok.png"));
GridData grid_data = new GridData();
grid_data.horizontalAlignment = GridData.END;
grid_data.widthHint = 60;
grid_data.grabExcessHorizontalSpace = true;
button_ok.setLayoutData(grid_data);
button_ok.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent event) {
if (apply())
shell.close();
}
});
Button button_cancel = new Button(button_bar,SWT.NONE);
button_cancel.setFont(skin.getButtonFont());
button_cancel.setText(_._("settingswindow.button.cancel"));
button_cancel.setImage(SWTImageRepository.getImage("cancel.png"));
grid_data = new GridData();
grid_data.horizontalAlignment = GridData.END;
grid_data.widthHint = 80;
button_cancel.setLayoutData(grid_data);
button_cancel.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent event) {
shell.close();
}
});
Button button_apply = new Button(button_bar,SWT.NONE);
button_apply.setFont(skin.getButtonFont());
button_apply.setText(_._("settingswindow.button.apply"));
button_apply.setImage(SWTImageRepository.getImage("accept.png"));
grid_data = new GridData();
grid_data.horizontalAlignment = GridData.END;
grid_data.widthHint = 80;
button_apply.setLayoutData(grid_data);
button_apply.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent event) {
apply();
}
});