package org.csstudio.platform.ui.swt.stringtable;

import org.csstudio.platform.ui.internal.localization.Messages;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.swt.widgets.Shell;

/**The RowEditDialog is the abstract superclass of dialogs
 * that are used to edit a row of items in a table  
 * @author Xihui Chen
 */
public abstract class RowEditDialog extends Dialog {

	protected String[] rowData;
	
	/**Set the rowData which will be initially displayed in the Edit Dialog.
	 * It must be called prior to open(). 
	 * @param rowData the rowData to set
	 */
	public void setRowData(String[] rowData) {
		this.rowData = rowData;
	}

	/**
	 * @return the rowData
	 */
	public String[] getRowData() {
		return rowData;
	}
	
	protected RowEditDialog(Shell parentShell) {
		super(parentShell);		
	}
	
	@Override
	protected void configureShell(Shell newShell) {
		super.configureShell(newShell);
		newShell.setText(Messages.RowEditDialog_ShellTitle);
	}
}

@@ -149,16 +149,44 @@
 Dialog;%0A
+import org.eclipse.swt.SWT;%0A
 import o
@@ -215,16 +215,16 @@
 .Shell;%0A
-
 %0A/**The 
@@ -443,16 +443,200 @@
 ;%0A%09%0A%09/**
+ Initialize Dialog */%0A%09protected RowEditDialog(Shell parentShell) %7B%0A    %09super(parentShell);%0A        // Allow resize%0A        setShellStyle(getShellStyle() %7C SWT.RESIZE);%0A    %7D%0A%0A    /**
 Set the 
@@ -920,16 +920,16 @@
 ata() %7B%0A
+
 %09%09return
@@ -947,83 +947,8 @@
 %7D%0A%09%0A
-%09protected RowEditDialog(Shell parentShell) %7B%0A%09%09super(parentShell);%09%09%0A%09%7D%0A%09%0A
 %09@Ov

allow resize