1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.impl.wsdl.panels.project;
14
15 import javax.swing.JPanel;
16
17 import com.eviware.soapui.impl.EmptyPanelBuilder;
18 import com.eviware.soapui.impl.wsdl.WsdlProject;
19 import com.eviware.soapui.support.components.JPropertiesTable;
20 import com.eviware.soapui.support.scripting.SoapUIScriptEngineRegistry;
21 import com.eviware.soapui.ui.desktop.DesktopPanel;
22
23 /***
24 * PanelBuilder for WsdlProject. Only builds an overview panel.
25 *
26 * @author Ole.Matzura
27 */
28
29 public class WsdlProjectPanelBuilder extends EmptyPanelBuilder<WsdlProject>
30 {
31 public WsdlProjectPanelBuilder()
32 {
33 }
34
35 public JPanel buildOverviewPanel( WsdlProject project )
36 {
37 JPropertiesTable<WsdlProject> table = new JPropertiesTable<WsdlProject>( "Project Properties", project );
38
39 if( project.isOpen() )
40 {
41 table.addProperty( "Name", "name", true );
42 table.addProperty( "Description", "description", true );
43 table.addProperty( "File", "path" );
44
45 if( !project.isDisabled() )
46 {
47 table.addProperty( "Resource Root", "resourceRoot",
48 new String[] { null, "${projectDir}", "${workspaceDir}" } );
49 table.addProperty( "Cache Definitions", "cacheDefinitions", JPropertiesTable.BOOLEAN_OPTIONS );
50 table.addPropertyShadow( "Project Password", "shadowPassword", true );
51 table.addProperty( "Script Language", "defaultScriptLanguage", SoapUIScriptEngineRegistry
52 .getAvailableEngineIds() );
53 table.addProperty( "Hermes Config", "hermesConfig", true );
54 }
55 }
56 else
57 {
58 table.addProperty( "File", "path" );
59 }
60
61 return table;
62 }
63
64 public boolean hasOverviewPanel()
65 {
66 return true;
67 }
68
69 public boolean hasDesktopPanel()
70 {
71 return true;
72 }
73
74 public DesktopPanel buildDesktopPanel( WsdlProject modelItem )
75 {
76 return new WsdlProjectDesktopPanel( modelItem );
77 }
78 }