Merged to eclipse-poky master.

Thanks,
Jessica

-----Original Message-----
From: yocto-boun...@yoctoproject.org [mailto:yocto-boun...@yoctoproject.org] On 
Behalf Of Timo Mueller
Sent: Wednesday, February 27, 2013 6:33 AM
To: yocto@yoctoproject.org
Cc: Timo Mueller
Subject: [yocto] [PATCH] plugins/sdk.ide: Remove profile edit buttons from 
property page

From: Timo Mueller <timo.muel...@bmw-carit.de>

The project property page for yocto project settings contains the same edit 
buttons as the preference page. As editing profiles is not allowed in the 
property page these buttons have been permanently disabled.

This removes them completely from the property page. The remaining profile 
drop-down box allows the user to select a cross development profile for the 
project.

Signed-off-by: Timo Mueller <timo.muel...@bmw-carit.de>
---
 .../src/org/yocto/sdk/ide/YoctoProfileSetting.java | 30 ++++++++++++++++------
 .../ide/preferences/YoctoSDKPreferencePage.java    |  2 +-
 .../preferences/YoctoSDKProjectPropertyPage.java   |  3 +--
 3 files changed, 24 insertions(+), 11 deletions(-)

diff --git 
a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/YoctoProfileSetting.java 
b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/YoctoProfileSetting.java
index cc3e167..0f36e99 100644
--- a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/YoctoProfileSetting.java
+++ b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/YoctoProfileSettin
+++ g.java
@@ -49,10 +49,12 @@ public class YoctoProfileSetting {

        private YoctoProfileElement profileElement;
        private PreferencePage preferencePage;
+       private final boolean editable;

-       public YoctoProfileSetting(YoctoProfileElement profileElement, 
PreferencePage preferencePage) {
+       public YoctoProfileSetting(YoctoProfileElement profileElement,
+PreferencePage preferencePage, final boolean editable) {
                this.profileElement = profileElement;
                this.preferencePage = preferencePage;
+               this.editable = editable;
        }

        public void createComposite(Composite composite) { @@ -61,7 +63,11 @@ 
public class YoctoProfileSetting {
                composite.setLayout(layout);

                Group storeYoctoConfigurationsGroup = new Group (composite, 
SWT.NONE);
-               layout = new GridLayout(3, false);
+               layout = new GridLayout(1, false);
+               if (isEditable()) {
+                       layout.numColumns = 3;
+               }
+
                storeYoctoConfigurationsGroup.setLayout(layout);
                gd = new GridData(SWT.FILL, SWT.CENTER, true, false);
                gd.horizontalSpan = 2;
@@ -101,9 +107,11 @@ public class YoctoProfileSetting {
                sdkConfigsCombo.addListener(SWT.Selection, selectionListener);
                sdkConfigsCombo.addListener(SWT.Modify, selectionListener);

-               createSaveAsProfileButton(storeYoctoConfigurationsGroup);
-               createRenameButton(storeYoctoConfigurationsGroup);
-               createRemoveButton(storeYoctoConfigurationsGroup);
+               if (isEditable()) {
+                       
createSaveAsProfileButton(storeYoctoConfigurationsGroup);
+                       createRenameButton(storeYoctoConfigurationsGroup);
+                       createRemoveButton(storeYoctoConfigurationsGroup);
+               }
        }

        private void createSaveAsProfileButton(Group 
storeYoctoConfigurationsGroup) { @@ -225,8 +233,14 @@ public class 
YoctoProfileSetting {
        }

        public void setButtonsEnabledState(boolean isEnabled) {
-               btnConfigRename.setEnabled(isEnabled);
-               btnConfigRemove.setEnabled(isEnabled);
-               btnConfigSaveAs.setEnabled(isEnabled);
+               if (isEditable()) {
+                       btnConfigRename.setEnabled(isEnabled);
+                       btnConfigRemove.setEnabled(isEnabled);
+                       btnConfigSaveAs.setEnabled(isEnabled);
+               }
+       }
+
+       private boolean isEditable() {
+               return editable;
        }
 }
diff --git 
a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/preferences/YoctoSDKPreferencePage.java
 
b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/preferences/YoctoSDKPreferencePage.java
index 4d57b45..3e0fa54 100644
--- 
a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/preferences/YoctoSDKPreferencePage.java
+++ b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/preferences/YoctoS
+++ DKPreferencePage.java
@@ -64,7 +64,7 @@ public class YoctoSDKPreferencePage extends PreferencePage 
implements IWorkbench
                this.yoctoUISetting = new YoctoUISetting(elem);

                YoctoProfileElement profileElement = new 
YoctoProfileElement(profiles, selectedProfile);
-               this.yoctoProfileSetting = new 
YoctoProfileSetting(profileElement, this);
+               this.yoctoProfileSetting = new 
YoctoProfileSetting(profileElement,
+this, true);
        }

        /*
diff --git 
a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/preferences/YoctoSDKProjectPropertyPage.java
 
b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/preferences/YoctoSDKProjectPropertyPage.java
index eef56c1..7f0d25e 100644
--- 
a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/preferences/YoctoSDKProjectPropertyPage.java
+++ b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/preferences/YoctoS
+++ DKProjectPropertyPage.java
@@ -51,7 +51,7 @@ public class YoctoSDKProjectPropertyPage extends PropertyPage 
implements
                }

                yoctoProfileSetting = new YoctoProfileSetting(
-                               new 
YoctoProfileElement(globalProfileElement.getProfilesAsString(), 
selectedProfile), this);
+                               new 
YoctoProfileElement(globalProfileElement.getProfilesAsString(),
+selectedProfile), this, false);
                boolean useProjectSpecificSetting = 
YoctoSDKUtils.getUseProjectSpecificOptionFromProjectPreferences(project);

                if (useProjectSpecificSetting) {
@@ -78,7 +78,6 @@ public class YoctoSDKProjectPropertyPage extends PropertyPage 
implements
                                
yoctoUISetting.validateInput(SDKCheckRequestFrom.Preferences, false);
                        } else {
                                yoctoProfileSetting.setUIFormEnabledState(true);
-                               
yoctoProfileSetting.setButtonsEnabledState(false);
                                
yoctoProjectSpecificSetting.setUseProjectSpecificSettings(false);
                                yoctoUISetting.setUIFormEnabledState(false);
                        }
--
1.7.11.7

_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to