Changeset db4394f in rtems-eclipse-plug-in


Ignore:
Timestamp:
Dec 1, 2008, 4:49:29 PM (11 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
master
Children:
ae9cd29
Parents:
dbe1bc4
Message:

Updated the wizard page.

Location:
org.rtems.cdt.toolchain2
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • org.rtems.cdt.toolchain2/org/rtems/cdt/Storage.java

    rdbe1bc4 rdb4394f  
    4040       
    4141        private static final int TOOL_COMPLETE = 3;
    42                 ;
     42
     43        public static String getPreference( String key) {
     44                return Activator.getDefault().getPreferenceStore().getString( key);
     45        }
     46       
    4347        public static String getPristineProperty( IProject project, String key) {
    4448                String value = null;
  • org.rtems.cdt.toolchain2/org/rtems/cdt/wizards/BasicSetup.java

    rdbe1bc4 rdb4394f  
    1313package org.rtems.cdt.wizards;
    1414
    15 import java.util.*;
    1615import org.eclipse.cdt.managedbuilder.ui.wizards.MBSCustomPage;
    1716import org.eclipse.cdt.managedbuilder.ui.wizards.MBSCustomPageManager;
     
    2322import org.eclipse.swt.widgets.*;
    2423import org.eclipse.swt.SWT;
     24import org.rtems.cdt.Constants;
     25import org.rtems.cdt.Storage;
    2526
    2627public class BasicSetup extends MBSCustomPage {
    27         public static final String PAGE_ID = "org.rtems.cdt.wizards.basicsetup";
     28        public static final String PAGE_ID = "org.rtems.cdt.wizards.BasicSetup";
    2829       
    29         private SortedMap<String, String> mTargetMap;
     30        public static final String BROWSE = " &Browse... ";
    3031       
    3132        private Composite mComposite;
    3233       
    33         private Text mInstallationPath;
     34        private Text mBasePath;
    3435       
    35         private Text mVersion;
    36        
    37         private Combo mTarget;
     36        private Text mBSPPath;
    3837
    3938        public BasicSetup() {
    4039                pageID = PAGE_ID;
    41                
    42                 mTargetMap = new TreeMap<String, String>();
    43                 mTargetMap.put( new String( "PowerPC"), new String ("powerpc"));
    44                 mTargetMap.put( new String( "ARM"), new String ("arm"));
    45                 mTargetMap.put( new String( "SPARC"), new String ("sparc"));
    46                 mTargetMap.put( new String( "Motorola 68k or Freescale ColdFire"), new String ("m68k"));
    47                 mTargetMap.put( new String( "Intel i386"), new String ("i368"));
    48                 mTargetMap.put( new String( "Intel i686"), new String ("i668"));
    49                 mTargetMap.put( new String( "AVR"), new String ("avr"));
    50                 mTargetMap.put( new String( "Blackfin"), new String ("bfin"));
    51                 mTargetMap.put( new String( "Hitachi H8300"), new String ("h8300"));
    52                 mTargetMap.put( new String( "MIPS"), new String ("mips"));
    53                 mTargetMap.put( new String( "SuperH"), new String ("sh"));
    54                
    55                 //IProject project = ((NewCProjectWizard) getWizard()).getNewProject();
    56                 //MBSCustomPageManager.addPageProperty( PAGE_ID, "project", project);
    5740        }
    5841
     
    6649
    6750        public void createControl( Composite parent) {
    68                 // Create UI elements
    69                 mComposite = new Composite( parent, SWT.NULL);
     51                // Create base widget
     52                mComposite = new Composite( parent, SWT.NONE);
    7053               
    7154                GridData gd = new GridData( GridData.FILL_BOTH);
     
    7659                mComposite.setLayout( layout);
    7760               
     61                // Base path
    7862                Label label = new Label( mComposite, SWT.LEFT);
    79                 label.setText( "Installation path:");
     63                label.setText( "Base path:");
     64               
     65                mBasePath = new Text( mComposite, SWT.LEFT | SWT.BORDER);
     66                mBasePath.setText( Storage.getPreference( Constants.BASE_PATH_KEY));
    8067                gd = new GridData( GridData.FILL_HORIZONTAL);
    81                 gd.horizontalSpan = 3;
    82                 label.setLayoutData( gd);
    83                
    84                 mInstallationPath = new Text( mComposite, SWT.LEFT | SWT.BORDER);
    85                 mInstallationPath.setText( "/opt/rtems-4.10");
    86                 gd = new GridData( GridData.FILL_HORIZONTAL);
    87                 gd.horizontalSpan = 2;
    88                 mInstallationPath.setLayoutData( gd);
     68                mBasePath.setLayoutData( gd);
    8969               
    9070                Button button = new Button( mComposite, SWT.PUSH);
    91                 button.setText( "Browse");
     71                button.setText( BROWSE);
    9272                button.addSelectionListener(
    9373                        new SelectionAdapter() {
    9474                                public void widgetSelected( SelectionEvent e) {
    95                                         browseForInstallationPath();
     75                                        browseForPath( mBasePath);
    9676                                }
    9777                        }
    9878                );
    99 
     79               
     80                // BSP path
    10081                label = new Label( mComposite, SWT.LEFT);
    101                 label.setText( "Version:");
     82                label.setText( "BSP path:");
     83               
     84                mBSPPath = new Text( mComposite, SWT.LEFT | SWT.BORDER);
     85                mBSPPath.setText( Storage.getPreference( Constants.BSP_PATH_KEY));
    10286                gd = new GridData( GridData.FILL_HORIZONTAL);
    103                 gd.horizontalSpan = 3;
    104                 label.setLayoutData( gd);
    105 
    106                 mVersion = new Text( mComposite, SWT.RIGHT | SWT.BORDER);
    107                 mVersion.setText( "4.10");
    108                 gd = new GridData( GridData.FILL_HORIZONTAL);
    109                 gd.horizontalSpan = 2;
    110                 mVersion.setLayoutData( gd);
     87                mBSPPath.setLayoutData( gd);
    11188               
    112                 new Label( mComposite, SWT.NONE);
    113                
    114                 label = new Label( mComposite, SWT.LEFT);
    115                 label.setText( "Target architecture:");
    116                 gd = new GridData( GridData.FILL_HORIZONTAL);
    117                 gd.horizontalSpan = 3;
    118                 label.setLayoutData( gd);
    119                
    120                 mTarget = new Combo( mComposite, SWT.DROP_DOWN | SWT.READ_ONLY);
    121                 Iterator<String> targets = mTargetMap.keySet().iterator();
    122                 while (targets.hasNext()) {
    123                         mTarget.add( (String) targets.next());
    124                 }
    125                 mTarget.select( mTarget.indexOf( "PowerPC"));
    126                 gd = new GridData( GridData.FILL_HORIZONTAL);
    127                 gd.horizontalSpan = 2;
    128                 mTarget.setLayoutData( gd);
    129                
    130                 new Label( mComposite, SWT.NONE);
    131                
    132                 // Connect user input
    133                 mInstallationPath.addModifyListener(
    134                         new ModifyListener() {
    135                                 public void modifyText( ModifyEvent e) {
    136                                         installationPathChanged();
     89                button = new Button( mComposite, SWT.PUSH);
     90                button.setText( BROWSE);
     91                button.addSelectionListener(
     92                        new SelectionAdapter() {
     93                                public void widgetSelected( SelectionEvent e) {
     94                                        browseForPath( mBSPPath);
    13795                                }
    13896                        }
    13997                );
    140                 mVersion.addModifyListener(
     98               
     99                // Connect user input
     100                mBasePath.addModifyListener(
    141101                        new ModifyListener() {
    142102                                public void modifyText( ModifyEvent e) {
    143                                         versionChanged();
     103                                        basePathChanged();
    144104                                }
    145105                        }
    146106                );
    147                 mTarget.addSelectionListener(
    148                         new SelectionAdapter() {
    149                                 public void widgetSelected( SelectionEvent e) {
    150                                         targetChanged();
     107                mBSPPath.addModifyListener(
     108                        new ModifyListener() {
     109                                public void modifyText( ModifyEvent e) {
     110                                        bspPathChanged();
    151111                                }
    152112                        }
     
    154114               
    155115                // Trigger initial setup
    156                 installationPathChanged();
    157                 versionChanged();
    158                 targetChanged();
     116                basePathChanged();
     117                bspPathChanged();
    159118        }
    160119
     
    168127
    169128        public String getDescription() {
    170                 return "WARNING: This page is not useful.";
     129                return "Select the RTEMS base installation path and the board support package (BSP) installation path.";
    171130        }
    172131
     
    184143
    185144        public String getTitle() {
    186                 return "Basic Setup";
     145                return "RTEMS Setup";
    187146        }
    188147
     
    199158        }
    200159
    201         public void setTitle(String title) {
     160        public void setTitle( String title) {
    202161                // Do nothing
    203162        }
     
    211170        }
    212171       
    213         private void browseForInstallationPath() {
     172        private void browseForPath( Text text) {
    214173                DirectoryDialog dialog = new DirectoryDialog( mComposite.getShell(), SWT.NONE);
    215                 dialog.setFilterPath( mInstallationPath.getText());
    216                 String text = dialog.open();
    217                 if (text != null) {
    218                         mInstallationPath.setText( text);
     174                dialog.setFilterPath( text.getText());
     175                String path = dialog.open();
     176                if (path != null) {
     177                        text.setText( path);
    219178                }
    220179        }
    221180       
    222         private void installationPathChanged() {
    223                 MBSCustomPageManager.addPageProperty( pageID, "installationPath", mInstallationPath.getText());
    224         }
     181        private void basePathChanged() {
     182                MBSCustomPageManager.addPageProperty( pageID, Constants.BASE_PATH_KEY, mBasePath.getText());
     183        }       
    225184       
    226         private void versionChanged() {
    227                 MBSCustomPageManager.addPageProperty( pageID, "version", mVersion.getText());
    228         }
    229        
    230         private void targetChanged() {
    231                 MBSCustomPageManager.addPageProperty( pageID, "target", mTarget.getText());
     185        private void bspPathChanged() {
     186                MBSCustomPageManager.addPageProperty( pageID, Constants.BSP_PATH_KEY, mBSPPath.getText());
    232187        }
    233188}
  • org.rtems.cdt.toolchain2/org/rtems/cdt/wizards/FinishSetup.java

    rdbe1bc4 rdb4394f  
    1313package org.rtems.cdt.wizards;
    1414
     15import org.eclipse.cdt.managedbuilder.ui.wizards.MBSCustomPageManager;
     16import org.eclipse.cdt.ui.wizards.CDTCommonProjectWizard;
     17import org.eclipse.core.resources.IProject;
     18import org.eclipse.jface.wizard.IWizardPage;
     19import org.rtems.cdt.Constants;
     20import org.rtems.cdt.Storage;
     21
    1522public class FinishSetup implements Runnable {
    1623        public void run() {
    17                 // TODO
     24                // Get a handle to the wizard
     25                IWizardPage [] pages = MBSCustomPageManager.getPages();
     26               
     27                if (pages != null && pages.length > 0) {
     28                        // Get last project
     29                        CDTCommonProjectWizard wizard = (CDTCommonProjectWizard) pages [0].getWizard();
     30                        IProject project = wizard.getLastProject();
     31                       
     32                        // Get wizard values
     33                        String basePath = (String) MBSCustomPageManager.getPageProperty(
     34                                BasicSetup.PAGE_ID, Constants.BASE_PATH_KEY
     35                        );
     36                        String bspPath = (String) MBSCustomPageManager.getPageProperty(
     37                                BasicSetup.PAGE_ID, Constants.BSP_PATH_KEY
     38                        );
     39                       
     40                        // Set project properties
     41                        Storage.setProperty( project, Constants.BASE_PATH_KEY, basePath);
     42                        Storage.setProperty( project, Constants.BSP_PATH_KEY, bspPath);
     43                       
     44                        // Update tools
     45                        Storage.updateTools( project);
     46                }
    1847        }
    1948}
  • org.rtems.cdt.toolchain2/plugin.xml

    rdbe1bc4 rdb4394f  
    420420         point="org.eclipse.cdt.managedbuilder.ui.newWizardPages">
    421421      <wizardPage
    422             ID="org.rtems.cdt.wizards.basicsetup"
     422            ID="org.rtems.cdt.wizards.BasicSetup"
    423423            operationClass="org.rtems.cdt.wizards.FinishSetup"
    424424            pageClass="org.rtems.cdt.wizards.BasicSetup"/>
Note: See TracChangeset for help on using the changeset viewer.