Bug 146508 table of contents and bookmarks in target report should be saved as expr. correctly
steps to reproduce: - create a report - add a label, and edit a drill through hyperlink to an existing report document on this label - switch to XML Source - notice this drill through hyperlink action definition expected behavior: - table of contents and bookmarks should be saved as expr. correctly actual behavior: - <expression name="targetBookmark">toc</expression>, "" was missing <body> <label id="4"> <text-property name="text">aaaaa</text-property> <structure name="action"> <property name="formatType">html</property> <property name="linkType">drill-through</property> <property name="reportName">../../../20060612/eclipse/plugins/org.eclipse.birt.report.viewer_2.1.0.N20060612-0630/birt/documents/6C07146F1A15E47DE28AEDBD13283C1D/temp/new_report_3.rptdocument</property> <expression name="targetBookmark">toc</expression> <property name="targetBookmarkType">toc</property> <property name="targetWindow">_blank</property> <property name="targetFileType">report-document</property> </structure> </label> </body>
UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/ui/dialogs/HyperlinkBuilder.java
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CLabel;
import org.eclipse.swt.custom.ScrolledComposite;
import org.eclipse.swt.events.KeyAdapter;
import org.eclipse.swt.events.KeyEvent;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Item;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.PlatformUI;
/**