mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-09-08 11:03:28 +02:00
- fixed some layout problems
This commit is contained in:
parent
53e15f64c2
commit
1276c82216
2 changed files with 46 additions and 15 deletions
|
@ -63,6 +63,8 @@ public class CodanPreferencePage extends FieldEditorOverlayPage implements
|
||||||
.getSelection();
|
.getSelection();
|
||||||
if (s.getFirstElement() instanceof IProblem)
|
if (s.getFirstElement() instanceof IProblem)
|
||||||
setSelectedProblem((IProblem) s.getFirstElement());
|
setSelectedProblem((IProblem) s.getFirstElement());
|
||||||
|
else
|
||||||
|
setSelectedProblem(null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -85,14 +87,26 @@ public class CodanPreferencePage extends FieldEditorOverlayPage implements
|
||||||
CheckedTreeEditor checkedTreeEditor = new ProblemsTreeEditor(
|
CheckedTreeEditor checkedTreeEditor = new ProblemsTreeEditor(
|
||||||
getFieldEditorParent(), profile);
|
getFieldEditorParent(), profile);
|
||||||
addField(checkedTreeEditor);
|
addField(checkedTreeEditor);
|
||||||
final TabFolder tabFolder = new TabFolder(getFieldEditorParent(),
|
checkedTreeEditor.getTreeViewer().addSelectionChangedListener(
|
||||||
SWT.TOP);
|
problemSelectionListener);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see
|
||||||
|
* org.eclipse.cdt.codan.internal.ui.preferences.FieldEditorOverlayPage#
|
||||||
|
* createContents(org.eclipse.swt.widgets.Composite)
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
protected Control createContents(Composite parent) {
|
||||||
|
Composite comp = (Composite) super.createContents(parent);
|
||||||
|
final TabFolder tabFolder = new TabFolder(comp, SWT.TOP);
|
||||||
tabFolder.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
|
tabFolder.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
|
||||||
// createMainTab(tabFolder);
|
// createMainTab(tabFolder);
|
||||||
createParamtersTab(tabFolder);
|
createParamtersTab(tabFolder);
|
||||||
createScopeTab(tabFolder);
|
createScopeTab(tabFolder);
|
||||||
checkedTreeEditor.getTreeViewer().addSelectionChangedListener(
|
return comp;
|
||||||
problemSelectionListener);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -108,11 +122,14 @@ public class CodanPreferencePage extends FieldEditorOverlayPage implements
|
||||||
Control control = children[i];
|
Control control = children[i];
|
||||||
control.dispose();
|
control.dispose();
|
||||||
}
|
}
|
||||||
ParametersComposite comp = new ParametersComposite(parametersTab,
|
if (problem != null) {
|
||||||
problem);
|
ParametersComposite comp = new ParametersComposite(parametersTab,
|
||||||
comp.setLayoutData(new GridData(GridData.FILL_BOTH));
|
problem);
|
||||||
parametersTab.pack(true);
|
comp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
|
||||||
parametersTab.layout(true);
|
parametersTab.pack(true);
|
||||||
|
getFieldEditorParent().layout(true);
|
||||||
|
getFieldEditorParent().redraw();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -164,12 +181,14 @@ public class CodanPreferencePage extends FieldEditorOverlayPage implements
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private void saveProblemEdits() {
|
private void saveProblemEdits() {
|
||||||
if (selectedProblem==null) return;
|
if (selectedProblem == null)
|
||||||
|
return;
|
||||||
Control[] children = parametersTab.getChildren();
|
Control[] children = parametersTab.getChildren();
|
||||||
for (int i = 0; i < children.length; i++) {
|
for (int i = 0; i < children.length; i++) {
|
||||||
Control control = children[i];
|
Control control = children[i];
|
||||||
if (control instanceof ParametersComposite) {
|
if (control instanceof ParametersComposite) {
|
||||||
((ParametersComposite) control).save((IProblemWorkingCopy) selectedProblem); // XXX
|
((ParametersComposite) control)
|
||||||
|
.save((IProblemWorkingCopy) selectedProblem); // XXX
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,6 +20,7 @@ import org.eclipse.swt.SWT;
|
||||||
import org.eclipse.swt.layout.GridData;
|
import org.eclipse.swt.layout.GridData;
|
||||||
import org.eclipse.swt.layout.GridLayout;
|
import org.eclipse.swt.layout.GridLayout;
|
||||||
import org.eclipse.swt.widgets.Composite;
|
import org.eclipse.swt.widgets.Composite;
|
||||||
|
import org.eclipse.swt.widgets.Label;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Alena
|
* @author Alena
|
||||||
|
@ -54,6 +55,8 @@ public class ParametersComposite extends Composite {
|
||||||
*/
|
*/
|
||||||
private void createFieldEditorsForParameters(
|
private void createFieldEditorsForParameters(
|
||||||
IProblemParameterInfo info) {
|
IProblemParameterInfo info) {
|
||||||
|
if (info == null)
|
||||||
|
return;
|
||||||
switch (info.getType()) {
|
switch (info.getType()) {
|
||||||
case TYPE_STRING:
|
case TYPE_STRING:
|
||||||
StringFieldEditor fe = new StringFieldEditor(info.getKey(),
|
StringFieldEditor fe = new StringFieldEditor(info.getKey(),
|
||||||
|
@ -67,10 +70,15 @@ public class ParametersComposite extends Composite {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
IProblemParameterInfo info = problem.getParameterInfo();
|
IProblemParameterInfo info = problem.getParameterInfo();
|
||||||
initPrefStore(info);
|
if (info == null) {
|
||||||
page.setPreferenceStore(pref);
|
Label label = new Label(this, 0);
|
||||||
page.createControl(parent);
|
label.setText("No Parameters");
|
||||||
page.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));
|
} else {
|
||||||
|
initPrefStore(info);
|
||||||
|
page.setPreferenceStore(pref);
|
||||||
|
page.createControl(parent);
|
||||||
|
page.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void save(IProblemWorkingCopy problemwc) {
|
public void save(IProblemWorkingCopy problemwc) {
|
||||||
|
@ -85,6 +93,8 @@ public class ParametersComposite extends Composite {
|
||||||
*/
|
*/
|
||||||
private void savePrefStore(IProblemParameterInfo info,
|
private void savePrefStore(IProblemParameterInfo info,
|
||||||
IProblemWorkingCopy problemwc) {
|
IProblemWorkingCopy problemwc) {
|
||||||
|
if (info == null)
|
||||||
|
return;
|
||||||
String key = info.getKey();
|
String key = info.getKey();
|
||||||
Object parameter = problem.getParameter(key);
|
Object parameter = problem.getParameter(key);
|
||||||
if (parameter instanceof String) {
|
if (parameter instanceof String) {
|
||||||
|
@ -98,6 +108,8 @@ public class ParametersComposite extends Composite {
|
||||||
* @param info
|
* @param info
|
||||||
*/
|
*/
|
||||||
private void initPrefStore(IProblemParameterInfo info) {
|
private void initPrefStore(IProblemParameterInfo info) {
|
||||||
|
if (info == null)
|
||||||
|
return;
|
||||||
String key = info.getKey();
|
String key = info.getKey();
|
||||||
Object parameter = problem.getParameter(key);
|
Object parameter = problem.getParameter(key);
|
||||||
if (parameter instanceof String) {
|
if (parameter instanceof String) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue