0,0 → 1,105 |
/* |
* Mylyn Connector for Serena Business Mashups |
* Copyright 2010 Brian Rosenberger (Brutex Network) |
* |
* 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. |
* |
* Serena, TeamTrack and Serena Business Mashup are |
* registered trademarks of SERENA Software Inc. |
*/ |
package net.brutex.mylyn.sbmconnector.ui; |
|
import net.brutex.mylyn.sbmconnector.core.SBMRepositoryConnector; |
|
import org.eclipse.jface.dialogs.Dialog; |
import org.eclipse.jface.layout.GridDataFactory; |
import org.eclipse.mylyn.tasks.core.IRepositoryQuery; |
import org.eclipse.mylyn.tasks.core.TaskRepository; |
import org.eclipse.mylyn.tasks.ui.wizards.AbstractRepositoryQueryPage; |
import org.eclipse.swt.SWT; |
import org.eclipse.swt.layout.GridData; |
import org.eclipse.swt.layout.GridLayout; |
import org.eclipse.swt.widgets.Combo; |
import org.eclipse.swt.widgets.Composite; |
import org.eclipse.swt.widgets.Label; |
import org.eclipse.swt.widgets.Text; |
|
public class SBMRepositoryQueryPage extends AbstractRepositoryQueryPage { |
|
private Combo table = null; |
private Text sql_where_clause = null; |
private Text query_title = null; |
|
public SBMRepositoryQueryPage(String pageName, TaskRepository repository, |
IRepositoryQuery query) { |
super(pageName, repository, query); |
setTitle("SBM Query"); |
setDescription("Please specify table database name."); |
} |
|
@Override |
public void applyTo(IRepositoryQuery query) { |
if (getQueryTitle() != null) { |
query.setSummary(getQueryTitle()); |
} |
query.setAttribute("table", table.getText()); |
query.setAttribute("sql_where", sql_where_clause.getText()); |
query.setAttribute("name", query_title.getText()); |
|
} |
|
@Override |
public String getQueryTitle() { |
if(query_title!=null && !query_title.getText().isEmpty()) return query_title.getText(); |
return "new query"; |
} |
|
@Override |
public void createControl(Composite arg0) { |
Composite control = new Composite(arg0,SWT.BORDER); |
control.setLayout(new GridLayout(2, false)); |
Label query_label = new Label(control, SWT.NONE); |
query_label.setText("Query Name:"); |
query_title = new Text(control, SWT.BORDER); |
if(getQuery()!=null) query_title.setText(getQuery().getAttribute("name")); |
|
Label label = new Label(control, SWT.NONE); |
label.setText("Table:"); |
|
table = new Combo(control, SWT.SINGLE | SWT.BORDER); |
for(String table_name : SBMRepositoryConnector.getClient(getTaskRepository()).getPrimaryTables()) { |
table.add(table_name); |
if(getQuery()!=null && getQuery().getAttribute("table").equals(table_name)) { |
table.setText(table_name); |
} |
} |
|
|
|
|
sql_where_clause = new Text(control, SWT.MULTI | SWT.WRAP | SWT.V_SCROLL | SWT.BORDER); |
GridData gd = new GridData(300, 150); |
gd.horizontalSpan = 2; |
sql_where_clause.setLayoutData(gd); |
if(getQuery()!=null) sql_where_clause.setText(getQuery().getAttribute("sql_where")); |
|
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.TOP).applyTo(table); |
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.TOP).applyTo(query_title); |
Dialog.applyDialogFont(control); |
setControl(control); |
} |
|
|
|
|
} |
Property changes: |
Added: svn:mime-type |
+text/plain |
\ No newline at end of property |