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