Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Applied Re: [cdt-patch] fixes for 47571, 48774


Thanks Chris.

Hoda Amer
Staff Software Engineer
Rational Software - IBM Software Group



Chris Wiebe <cwiebe@xxxxxxx>
Sent by: cdt-patch-admin@xxxxxxxxxxx

06/24/2004 11:30 AM

Please respond to
cdt-patch

To
cdt-patch@xxxxxxxxxxx
cc
Subject
[cdt-patch] fixes for 47571, 48774





This patch fixes the "resolved location can be blanked" and "Error if
Create C++ Class with no name" bugs in the class wizard.

-Chris
Index: src/org/eclipse/cdt/internal/ui/wizards/dialogfields/LinkToFileGroup.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/wizards/dialogfields/LinkToFileGroup.java,v
retrieving revision 1.8
diff -u -r1.8 LinkToFileGroup.java
--- src/org/eclipse/cdt/internal/ui/wizards/dialogfields/LinkToFileGroup.java                 24 Jun 2004 13:56:05 -0000                 1.8
+++ src/org/eclipse/cdt/internal/ui/wizards/dialogfields/LinkToFileGroup.java                 24 Jun 2004 15:27:29 -0000
@@ -62,6 +62,7 @@
                 protected Button variablesButton;
                 private Label resolvedPathLabelText;
                 private Label resolvedPathLabelData;
+                 private boolean preventDialogFieldChanged = false;
                 
                 public LinkToFileGroup(IStringButtonAdapter adapter, Listener listener) {
                                  super(adapter);
@@ -124,7 +125,8 @@
                                                                                     resolveVariable();
                                                                                     if (listener != null)
                                                                                                      listener.handleEvent(new Event());
-                                                                                     dialogFieldChanged();
+                                                                                     if (!preventDialogFieldChanged)
+                                                                                                      dialogFieldChanged();
                                                                    }
                                                   };
                                                   linkButton.addSelectionListener(selectionListener);
@@ -139,9 +141,11 @@
                 public void setText(String text) {
                                  fText= text;
                                  if (isOkToUse(linkTargetField)) {
+                                                   preventDialogFieldChanged = true;
                                                   linkTargetField.setText(text);
+                                                   preventDialogFieldChanged = false;
                                  }
-                                  dialogFieldChanged();
+//                                  dialogFieldChanged();
                 }
                 
                 public Text getTextControl(Composite parent){
@@ -155,7 +159,8 @@
                                                                                     resolveVariable();
                                                                                     if (listener != null)
                                                                                                      listener.handleEvent(new Event());
-                                                                                     dialogFieldChanged();
+                                                                                     if (!preventDialogFieldChanged)
+                                                                                                      dialogFieldChanged();
                                                                    }
                                                   });
                                                   if (initialLinkTarget != null)
@@ -279,7 +284,8 @@
                                  }                                                                                    
                                  if (selection != null) {
                                                   linkTargetField.setText(selection);
-                                                   dialogFieldChanged();
+                                                   if (!preventDialogFieldChanged)
+                                                                    dialogFieldChanged();
                                  }
                 }
                 /**
@@ -300,7 +306,8 @@
                                                   if (variableNames != null && variableNames.length == 1)
                                                   {
                                                                    linkTargetField.setText(variableNames[0]);
-                                                                    dialogFieldChanged();
+                                                                    if (!preventDialogFieldChanged)
+                                                                                     dialogFieldChanged();
                                                   }
                                  }
                 }
@@ -338,7 +345,8 @@
                                  initialLinkTarget = target;
                                  if (linkTargetField != null && linkTargetField.isDisposed() == false) {
                                                   linkTargetField.setText(target);
-                                                   dialogFieldChanged();
+                                                   if (!preventDialogFieldChanged)
+                                                                    dialogFieldChanged();
                                  }
                 }
                 /**
Index: src/org/eclipse/cdt/ui/wizards/NewClassWizardPage.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/wizards/NewClassWizardPage.java,v
retrieving revision 1.22
diff -u -r1.22 NewClassWizardPage.java
--- src/org/eclipse/cdt/ui/wizards/NewClassWizardPage.java                 24 Jun 2004 13:56:05 -0000                 1.22
+++ src/org/eclipse/cdt/ui/wizards/NewClassWizardPage.java                 24 Jun 2004 15:27:29 -0000
@@ -189,6 +189,7 @@
                                  linkedResourceGroupForBody.setLabelText(NewWizardMessages.getString("NewClassWizardPage.files.body")); //$NON-NLS-1$

                                  fClassNameStatus=  new StatusInfo();
+                                  ((StatusInfo)fClassNameStatus).setError(NewWizardMessages.getString("NewClassWizardPage.error.EnterClassName")); //$NON-NLS-1$
                                  fBaseClassStatus=  new StatusInfo();
                                  fLinkedResourceGroupForHeaderStatus=  new StatusInfo();
                                  fLinkedResourceGroupForBodyStatus=  new StatusInfo();
@@ -400,9 +401,9 @@

                 IStatus linkedResourceGroupChanged(LinkToFileGroup linkedGroup, boolean isHeader) {
                                  StatusInfo status = new StatusInfo();
-                                  String text = linkedGroup.getText();
                                  if (linkedGroup.linkCreated()) {
                                                   // must not be empty
+                                                   String text = linkedGroup.getText();
                                                   if (text == null || text.length() == 0) {
                                                                    if (isHeader)
                                                                                     status.setError(NewWizardMessages.getString("NewClassWizardPage.error.EnterHeaderFile")); //$NON-NLS-1$
@@ -421,6 +422,21 @@
                                                                                                      status.setError(NewWizardMessages.getString("NewClassWizardPage.error.NoHeaderFile")); //$NON-NLS-1$
                                                                                     else
                                                                                                      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);
                                                                    }
                                                   }
                                  }


Back to the top