1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-08 10:16:03 +02:00

Patch for Chris W.

This commit is contained in:
Hoda Amer 2004-06-24 16:03:09 +00:00
parent 500eed90e7
commit 54ec4b834f
3 changed files with 33 additions and 7 deletions

View file

@ -1,5 +1,7 @@
2004-06-24 Chris Wiebe 2004-06-24 Chris Wiebe
Fix for PR 48783 : [New Class Wizard] Err Create C++ Class with "Link to File" checkbox selected Fix for PR 48783 : [New Class Wizard] Err Create C++ Class with "Link to File" checkbox selected
Fix for PR 47571 : [New Class Wizard] resolved location can be blanked
Fix for PR 48774 : [New Class Wizard] Error if Create C++ Class with no name
2004-06-23 Tanya Wolff 2004-06-23 Tanya Wolff
Fix for bugs 66134,66145 Fix for bugs 66134,66145

View file

@ -62,6 +62,7 @@ public class LinkToFileGroup extends StringButtonDialogField {
protected Button variablesButton; protected Button variablesButton;
private Label resolvedPathLabelText; private Label resolvedPathLabelText;
private Label resolvedPathLabelData; private Label resolvedPathLabelData;
private boolean preventDialogFieldChanged = false;
public LinkToFileGroup(IStringButtonAdapter adapter, Listener listener) { public LinkToFileGroup(IStringButtonAdapter adapter, Listener listener) {
super(adapter); super(adapter);
@ -124,7 +125,8 @@ public class LinkToFileGroup extends StringButtonDialogField {
resolveVariable(); resolveVariable();
if (listener != null) if (listener != null)
listener.handleEvent(new Event()); listener.handleEvent(new Event());
dialogFieldChanged(); if (!preventDialogFieldChanged)
dialogFieldChanged();
} }
}; };
linkButton.addSelectionListener(selectionListener); linkButton.addSelectionListener(selectionListener);
@ -139,9 +141,11 @@ public class LinkToFileGroup extends StringButtonDialogField {
public void setText(String text) { public void setText(String text) {
fText= text; fText= text;
if (isOkToUse(linkTargetField)) { if (isOkToUse(linkTargetField)) {
preventDialogFieldChanged = true;
linkTargetField.setText(text); linkTargetField.setText(text);
preventDialogFieldChanged = false;
} }
dialogFieldChanged(); // dialogFieldChanged();
} }
public Text getTextControl(Composite parent){ public Text getTextControl(Composite parent){
@ -155,7 +159,8 @@ public class LinkToFileGroup extends StringButtonDialogField {
resolveVariable(); resolveVariable();
if (listener != null) if (listener != null)
listener.handleEvent(new Event()); listener.handleEvent(new Event());
dialogFieldChanged(); if (!preventDialogFieldChanged)
dialogFieldChanged();
} }
}); });
if (initialLinkTarget != null) if (initialLinkTarget != null)
@ -279,7 +284,8 @@ public class LinkToFileGroup extends StringButtonDialogField {
} }
if (selection != null) { if (selection != null) {
linkTargetField.setText(selection); linkTargetField.setText(selection);
dialogFieldChanged(); if (!preventDialogFieldChanged)
dialogFieldChanged();
} }
} }
/** /**
@ -300,7 +306,8 @@ public class LinkToFileGroup extends StringButtonDialogField {
if (variableNames != null && variableNames.length == 1) if (variableNames != null && variableNames.length == 1)
{ {
linkTargetField.setText(variableNames[0]); linkTargetField.setText(variableNames[0]);
dialogFieldChanged(); if (!preventDialogFieldChanged)
dialogFieldChanged();
} }
} }
} }
@ -338,7 +345,8 @@ public class LinkToFileGroup extends StringButtonDialogField {
initialLinkTarget = target; initialLinkTarget = target;
if (linkTargetField != null && linkTargetField.isDisposed() == false) { if (linkTargetField != null && linkTargetField.isDisposed() == false) {
linkTargetField.setText(target); linkTargetField.setText(target);
dialogFieldChanged(); if (!preventDialogFieldChanged)
dialogFieldChanged();
} }
} }
/** /**

View file

@ -189,6 +189,7 @@ public class NewClassWizardPage extends WizardPage implements Listener {
linkedResourceGroupForBody.setLabelText(NewWizardMessages.getString("NewClassWizardPage.files.body")); //$NON-NLS-1$ linkedResourceGroupForBody.setLabelText(NewWizardMessages.getString("NewClassWizardPage.files.body")); //$NON-NLS-1$
fClassNameStatus= new StatusInfo(); fClassNameStatus= new StatusInfo();
((StatusInfo)fClassNameStatus).setError(NewWizardMessages.getString("NewClassWizardPage.error.EnterClassName")); //$NON-NLS-1$
fBaseClassStatus= new StatusInfo(); fBaseClassStatus= new StatusInfo();
fLinkedResourceGroupForHeaderStatus= new StatusInfo(); fLinkedResourceGroupForHeaderStatus= new StatusInfo();
fLinkedResourceGroupForBodyStatus= new StatusInfo(); fLinkedResourceGroupForBodyStatus= new StatusInfo();
@ -400,9 +401,9 @@ public class NewClassWizardPage extends WizardPage implements Listener {
IStatus linkedResourceGroupChanged(LinkToFileGroup linkedGroup, boolean isHeader) { IStatus linkedResourceGroupChanged(LinkToFileGroup linkedGroup, boolean isHeader) {
StatusInfo status = new StatusInfo(); StatusInfo status = new StatusInfo();
String text = linkedGroup.getText();
if (linkedGroup.linkCreated()) { if (linkedGroup.linkCreated()) {
// must not be empty // must not be empty
String text = linkedGroup.getText();
if (text == null || text.length() == 0) { if (text == null || text.length() == 0) {
if (isHeader) if (isHeader)
status.setError(NewWizardMessages.getString("NewClassWizardPage.error.EnterHeaderFile")); //$NON-NLS-1$ status.setError(NewWizardMessages.getString("NewClassWizardPage.error.EnterHeaderFile")); //$NON-NLS-1$
@ -423,6 +424,21 @@ public class NewClassWizardPage extends WizardPage implements Listener {
status.setError(NewWizardMessages.getString("NewClassWizardPage.error.NoBodyFile")); //$NON-NLS-1$ status.setError(NewWizardMessages.getString("NewClassWizardPage.error.NoBodyFile")); //$NON-NLS-1$
} }
} }
} else {
String text = fClassNameDialogField.getText();
if (isHeader) {
if (text.length() > 0) {
linkedGroup.setText(text + HEADER_EXT);
} else {
linkedGroup.setText(text);
}
} else {
if (text.length() > 0) {
linkedGroup.setText(text + BODY_EXT);
} else{
linkedGroup.setText(text);
}
}
} }
return status; return status;
} }