/* * Copyright (C) 2012 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.motorola.studio.android.handset.ui; import java.util.Properties; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.jface.preference.PreferenceDialog; import org.eclipse.sequoyah.device.framework.model.IInstance; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Label; import org.eclipse.ui.IWorkbenchPropertyPage; import org.eclipse.ui.dialogs.PropertyPage; import com.motorola.studio.android.adt.ISerialNumbered; import com.motorola.studio.android.handset.i18n.AndroidHandsetNLS; /** * * * @author xrgc84 */ public class AndroidPropertiesPage extends PropertyPage implements IWorkbenchPropertyPage { // the Android Handset Instance to which this Property Page applies private ISerialNumbered androidIntance; @Override public void setElement(IAdaptable element) { this.androidIntance = (ISerialNumbered) element; super.setElement(element); } /* * (non-Javadoc) * * @see * org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse * .swt.widgets.Composite) */ @Override protected Control createContents(Composite parent) { ((PreferenceDialog) this.getContainer()).getTreeViewer().expandAll(); final Composite parentComposite = new Composite(parent, SWT.NONE); parentComposite.setLayout(new GridLayout(2, false)); parentComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Label serialNumberLabel = new Label(parentComposite, SWT.NONE); serialNumberLabel.setText(AndroidHandsetNLS.AndroidPropertiesPage_SerialNumberLabel); Label serialNumberValue = new Label(parentComposite, SWT.NONE); serialNumberValue.setText(this.androidIntance.getSerialNumber()); Label targetLabel = new Label(parentComposite, SWT.NONE); targetLabel.setText(AndroidHandsetNLS.AndroidPropertiesPage_AndroidVersionLabel); Label targetValue = new Label(parentComposite, SWT.NONE); Label apiLabel = new Label(parentComposite, SWT.NONE); apiLabel.setText(AndroidHandsetNLS.AndroidPropertiesPage_APIVersionLabel); Label apiValue = new Label(parentComposite, SWT.NONE); Properties propValues = ((IInstance) androidIntance).getProperties(); if ((propValues != null) && !propValues.isEmpty()) { apiValue.setText(propValues.getProperty("ro.build.version.sdk")); //$NON-NLS-1$ targetValue.setText(propValues.getProperty("ro.build.version.release")); //$NON-NLS-1$ } else { apiValue.setText(AndroidHandsetNLS.AndroidPropertiesPage_NA); targetValue.setText(AndroidHandsetNLS.AndroidPropertiesPage_NA); } parentComposite.pack(); noDefaultAndApplyButton(); return parentComposite; } }