Ignore:
Timestamp:
10/05/11 04:32:06 (13 years ago)
Author:
sherbold
Message:
  • beautification of SWT console output; trace messages are now displayed in blue, errors in red
Location:
trunk/EventBenchConsole/src/de/ugoe/cs/eventbench/swt
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/EventBenchConsole/src/de/ugoe/cs/eventbench/swt/ConsoleTabComposite.java

    r195 r238  
    88import org.eclipse.swt.layout.GridLayout; 
    99import org.eclipse.swt.layout.GridData; 
     10import org.eclipse.swt.custom.StyledText; 
    1011import org.eclipse.swt.events.SelectionAdapter; 
    1112import org.eclipse.swt.events.SelectionEvent; 
     
    2930        protected Text textCommand; 
    3031         
    31         protected Text textConsoleOutput; 
     32        protected StyledText textConsoleOutput; 
    3233         
    3334        /** 
     
    6970                btnEnter.setText("Enter"); 
    7071                 
    71                 textConsoleOutput = new Text(this, SWT.BORDER | SWT.READ_ONLY | SWT.H_SCROLL | SWT.V_SCROLL | SWT.CANCEL); 
     72                textConsoleOutput = new StyledText(this, SWT.BORDER | SWT.READ_ONLY | SWT.H_SCROLL | SWT.V_SCROLL | SWT.CANCEL); 
    7273                GridData gd_textConsoleOutput = new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1); 
    7374                gd_textConsoleOutput.heightHint = 102; 
  • trunk/EventBenchConsole/src/de/ugoe/cs/eventbench/swt/MainWindow.java

    r195 r238  
    77import org.eclipse.swt.widgets.FileDialog; 
    88import org.eclipse.swt.widgets.MenuItem; 
    9 import org.eclipse.swt.widgets.Text; 
    109import org.eclipse.swt.widgets.TabFolder; 
    1110import org.eclipse.swt.widgets.TabItem; 
     
    1716import de.ugoe.cs.util.console.CommandExecuter; 
    1817 
     18/** 
     19 * <p> 
     20 * Main window of the SWT GUI. 
     21 * </p> 
     22 *  
     23 * @author Steffen Herbold 
     24 * @version 1.0 
     25 */ 
    1926public class MainWindow { 
    2027 
    21         protected Shell shell; 
    22          
     28        protected Shell shlEventbenchConsole; 
     29 
    2330        protected TabItem consoleTab; 
    2431        protected TabItem sequencesTab; 
     
    2936        protected ModelsTabComposite modelsTabComposite; 
    3037        protected DataTabComposite dataTabComposite; 
    31          
     38 
    3239        protected CommandHistoryDialog historyDialog; 
    3340 
    34  
    35         /** 
     41        /** 
     42         * <p> 
    3643         * Open the window. 
     44         * </p> 
     45         *  
    3746         * @wbp.parser.entryPoint 
    3847         */ 
     
    4049                Display display = Display.getDefault(); 
    4150                createContents(); 
    42                 new SWTConsole(getTextConsoleOutput()); 
    43                 historyDialog = new CommandHistoryDialog(shell, SWT.NONE); 
    44                 shell.open(); 
    45                 shell.layout(); 
    46                 while (!shell.isDisposed()) { 
     51                new SWTConsole(consoleTabComposite.textConsoleOutput); 
     52                historyDialog = new CommandHistoryDialog(shlEventbenchConsole, SWT.NONE); 
     53                shlEventbenchConsole.open(); 
     54                shlEventbenchConsole.layout(); 
     55                while (!shlEventbenchConsole.isDisposed()) { 
    4756                        if (!display.readAndDispatch()) { 
    4857                                display.sleep(); 
     
    5261 
    5362        /** 
     63         * <p> 
    5464         * Create contents of the window. 
     65         * </p> 
    5566         */ 
    5667        protected void createContents() { 
    57                 shell = new Shell(); 
    58                 shell.setSize(500, 300); 
    59                 shell.setText("SWT Application"); 
    60                 shell.setLayout(new GridLayout(1, false)); 
    61                  
    62                 Menu menu = new Menu(shell, SWT.BAR); 
    63                 shell.setMenuBar(menu); 
    64                  
     68                shlEventbenchConsole = new Shell(); 
     69                shlEventbenchConsole.setSize(500, 300); 
     70                shlEventbenchConsole.setText("EventBench Console"); 
     71                shlEventbenchConsole.setLayout(new GridLayout(1, false)); 
     72 
     73                createMenu(); 
     74                createTabs(); 
     75        } 
     76 
     77        /** 
     78         * </p> Creates the menu of the window. </p> 
     79         */ 
     80        private void createMenu() { 
     81                Menu menu = new Menu(shlEventbenchConsole, SWT.BAR); 
     82                shlEventbenchConsole.setMenuBar(menu); 
     83 
    6584                MenuItem mntmFile = new MenuItem(menu, SWT.CASCADE); 
    6685                mntmFile.setText("File"); 
    67                  
     86 
    6887                Menu menu_1 = new Menu(mntmFile); 
    6988                mntmFile.setMenu(menu_1); 
    70                  
     89 
    7190                MenuItem mntmShowHistory = new MenuItem(menu_1, SWT.NONE); 
    7291                mntmShowHistory.addSelectionListener(new SelectionAdapter() { 
    7392                        @Override 
    7493                        public void widgetSelected(SelectionEvent e) { 
    75                                 if( !historyDialog.isOpen()) { 
     94                                if (!historyDialog.isOpen()) { 
    7695                                        historyDialog.open(); 
    7796                                } 
     
    7998                }); 
    8099                mntmShowHistory.setText("Show History"); 
    81                  
     100 
    82101                MenuItem mntmExecBatchFile = new MenuItem(menu_1, SWT.NONE); 
    83102                mntmExecBatchFile.addSelectionListener(new SelectionAdapter() { 
    84103                        @Override 
    85104                        public void widgetSelected(SelectionEvent e) { 
    86                                 FileDialog fileDialog = new FileDialog(shell, SWT.OPEN); 
     105                                FileDialog fileDialog = new FileDialog(shlEventbenchConsole, 
     106                                                SWT.OPEN); 
    87107                                String filename = fileDialog.open(); 
    88                                 if( filename!=null ) { 
     108                                if (filename != null) { 
    89109                                        String command = "exec '" + filename + "'"; 
    90110                                        CommandExecuter.getInstance().exec(command); 
     
    93113                }); 
    94114                mntmExecBatchFile.setText("Exec. Batch File"); 
    95                  
     115 
    96116                new MenuItem(menu_1, SWT.SEPARATOR); 
    97                  
     117 
    98118                MenuItem mntmLoad = new MenuItem(menu_1, SWT.NONE); 
    99119                mntmLoad.addSelectionListener(new SelectionAdapter() { 
    100120                        @Override 
    101121                        public void widgetSelected(SelectionEvent e) { 
    102                                 FileDialog fileDialog = new FileDialog(shell, SWT.OPEN); 
     122                                FileDialog fileDialog = new FileDialog(shlEventbenchConsole, 
     123                                                SWT.OPEN); 
    103124                                String filename = fileDialog.open(); 
    104                                 if( filename!=null ) { 
     125                                if (filename != null) { 
    105126                                        String command = "load '" + filename + "'"; 
    106127                                        CommandExecuter.getInstance().exec(command); 
     
    109130                }); 
    110131                mntmLoad.setText("Load..."); 
    111                  
     132 
    112133                MenuItem mntmSave = new MenuItem(menu_1, SWT.NONE); 
    113134                mntmSave.addSelectionListener(new SelectionAdapter() { 
    114135                        @Override 
    115136                        public void widgetSelected(SelectionEvent e) { 
    116                                 FileDialog fileDialog = new FileDialog(shell, SWT.SAVE); 
     137                                FileDialog fileDialog = new FileDialog(shlEventbenchConsole, 
     138                                                SWT.SAVE); 
    117139                                String filename = fileDialog.open(); 
    118                                 if( filename!=null ) { 
     140                                if (filename != null) { 
    119141                                        String command = "save '" + filename + "'"; 
    120142                                        CommandExecuter.getInstance().exec(command); 
     
    123145                }); 
    124146                mntmSave.setText("Save..."); 
    125                  
     147 
    126148                new MenuItem(menu_1, SWT.SEPARATOR); 
    127                  
     149 
    128150                MenuItem mntmExit = new MenuItem(menu_1, SWT.NONE); 
    129151                mntmExit.addSelectionListener(new SelectionAdapter() { 
    130152                        @Override 
    131153                        public void widgetSelected(SelectionEvent e) { 
    132                                 shell.dispose(); 
     154                                shlEventbenchConsole.dispose(); 
    133155                        } 
    134156                }); 
    135157                mntmExit.setText("Exit"); 
    136                  
     158 
    137159                MenuItem mntmHelp = new MenuItem(menu, SWT.CASCADE); 
    138160                mntmHelp.setText("Help"); 
    139                  
     161 
    140162                Menu menu_2 = new Menu(mntmHelp); 
    141163                mntmHelp.setMenu(menu_2); 
    142                  
     164 
    143165                MenuItem mntmAbout = new MenuItem(menu_2, SWT.NONE); 
    144166                mntmAbout.addSelectionListener(new SelectionAdapter() { 
    145167                        @Override 
    146168                        public void widgetSelected(SelectionEvent e) { 
    147                                 AboutDialog aboutDialog = new AboutDialog(shell, SWT.NONE); 
     169                                AboutDialog aboutDialog = new AboutDialog(shlEventbenchConsole, 
     170                                                SWT.NONE); 
    148171                                aboutDialog.open(); 
    149172                        } 
    150173                }); 
    151174                mntmAbout.setText("About"); 
    152                  
    153                 TabFolder tabFolder = new TabFolder(shell, SWT.NONE); 
     175        } 
     176 
     177        /** 
     178         * <p> 
     179         * Creates the central TabFolder of the window. 
     180         * </p> 
     181         */ 
     182        private void createTabs() { 
     183                TabFolder tabFolder = new TabFolder(shlEventbenchConsole, SWT.NONE); 
    154184                tabFolder.addSelectionListener(new SelectionAdapter() { 
    155185                        @Override 
    156186                        public void widgetSelected(SelectionEvent e) { 
    157                                 if( e.item == sequencesTab ) { 
     187                                if (e.item == sequencesTab) { 
    158188                                        sequencesTabComposite.updateSequenceList(); 
    159                                 } 
    160                                 else if(e.item == modelsTab ) { 
     189                                } else if (e.item == modelsTab) { 
    161190                                        modelsTabComposite.updateModelList(); 
    162                                 } 
    163                                 else if(e.item == dataTab) { 
     191                                } else if (e.item == dataTab) { 
    164192                                        dataTabComposite.updateDataList(); 
    165193                                } 
    166194                        } 
    167195                }); 
    168                 tabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); 
    169                  
     196                tabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 
     197                                1)); 
     198 
    170199                consoleTab = new TabItem(tabFolder, SWT.NONE); 
    171200                consoleTab.setText("Console"); 
    172                  
    173                 consoleTabComposite = new ConsoleTabComposite(tabFolder, SWT.NO_BACKGROUND); 
     201 
     202                consoleTabComposite = new ConsoleTabComposite(tabFolder, 
     203                                SWT.NO_BACKGROUND); 
    174204                consoleTab.setControl(consoleTabComposite); 
    175                  
     205 
    176206                sequencesTab = new TabItem(tabFolder, SWT.NONE); 
    177207                sequencesTab.setText("Sequences"); 
    178                  
    179                 sequencesTabComposite = new SequencesTabComposite(tabFolder, SWT.NO_BACKGROUND); 
     208 
     209                sequencesTabComposite = new SequencesTabComposite(tabFolder, 
     210                                SWT.NO_BACKGROUND); 
    180211                sequencesTab.setControl(sequencesTabComposite); 
    181                  
     212 
    182213                modelsTab = new TabItem(tabFolder, SWT.NONE); 
    183214                modelsTab.setText("Models"); 
    184                  
    185                 modelsTabComposite = new ModelsTabComposite(tabFolder, SWT.NO_BACKGROUND); 
     215 
     216                modelsTabComposite = new ModelsTabComposite(tabFolder, 
     217                                SWT.NO_BACKGROUND); 
    186218                modelsTab.setControl(modelsTabComposite); 
    187                  
     219 
    188220                dataTab = new TabItem(tabFolder, SWT.NONE); 
    189221                dataTab.setText("Data"); 
    190                  
     222 
    191223                dataTabComposite = new DataTabComposite(tabFolder, SWT.NO_BACKGROUND); 
    192224                dataTab.setControl(dataTabComposite); 
    193                  
    194         } 
    195         public Text getTextConsoleOutput() { 
    196                 return consoleTabComposite.textConsoleOutput; 
    197225        } 
    198226} 
  • trunk/EventBenchConsole/src/de/ugoe/cs/eventbench/swt/SWTConsole.java

    r202 r238  
    11package de.ugoe.cs.eventbench.swt; 
    22 
    3 import org.eclipse.swt.widgets.Text; 
     3import org.eclipse.swt.SWT; 
     4import org.eclipse.swt.custom.StyleRange; 
     5import org.eclipse.swt.custom.StyledText; 
    46 
    57import de.ugoe.cs.util.StringTools; 
     
    1214public class SWTConsole implements IOutputListener, IErrorListener, ITraceListener, ICommandListener { 
    1315 
    14         Text output; 
     16        StyledText output; 
    1517         
    16         public SWTConsole(Text output) { 
     18        public SWTConsole(StyledText styledText) { 
    1719                Console.getInstance().registerOutputListener(this); 
    1820                Console.getInstance().registerErrorListener(this); 
    1921                Console.getInstance().registerTraceListener(this); 
    2022                Console.getInstance().registerCommandListener(this); 
    21                 this.output = output; 
     23                this.output = styledText; 
    2224        } 
    2325         
     
    2931        @Override 
    3032        public void errorMsg(String errMessage) { 
    31                 output.append(errMessage); 
    32  
     33                appendColored(errMessage, SWT.COLOR_RED); 
    3334        } 
    3435 
    3536        @Override 
    3637        public void traceMsg(String traceMessage) { 
    37                 output.append(traceMessage); 
     38                appendColored(traceMessage, SWT.COLOR_BLUE); 
    3839        } 
    3940         
     
    4243                output.append("> " + command + StringTools.ENDLINE);     
    4344        } 
     45         
     46        private void appendColored(String str, int id) { 
     47                StyleRange styleRange = new StyleRange(); 
     48                styleRange.start = output.getText().length(); 
     49                styleRange.length = str.length(); 
     50                styleRange.foreground = output.getDisplay().getSystemColor(id); 
     51                output.append(str); 
     52                output.setStyleRange(styleRange); 
     53        } 
    4454} 
Note: See TracChangeset for help on using the changeset viewer.