//#############################################################################
//#                                                                           #
//#  Copyright (C) <2015>  <IMS MAXIMS>                                       #
//#                                                                           #
//#  This program is free software: you can redistribute it and/or modify     #
//#  it under the terms of the GNU Affero General Public License as           #
//#  published by the Free Software Foundation, either version 3 of the       #
//#  License, or (at your option) any later version.                          # 
//#                                                                           #
//#  This program is distributed in the hope that it will be useful,          #
//#  but WITHOUT ANY WARRANTY; without even the implied warranty of           #
//#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
//#  GNU Affero General Public License for more details.                      #
//#                                                                           #
//#  You should have received a copy of the GNU Affero General Public License #
//#  along with this program.  If not, see <http://www.gnu.org/licenses/>.    #
//#                                                                           #
//#  IMS MAXIMS provides absolutely NO GUARANTEE OF THE CLINICAL SAFTEY of    #
//#  this program.  Users of this software do so entirely at their own risk.  #
//#  IMS MAXIMS only ensures the Clinical Safety of unaltered run-time        #
//#  software that it builds, deploys and maintains.                          #
//#                                                                           #
//#############################################################################
//#EOH
// This code was generated by Barbara Worwood using IMS Development Environment (version 1.80 build 5589.25814)
// Copyright (C) 1995-2015 IMS MAXIMS. All rights reserved.
// WARNING: DO NOT MODIFY the content of this file

package ims.correspondence.forms.correspondencedetail;

import ims.framework.*;
import ims.framework.controls.*;
import ims.framework.enumerations.*;
import ims.framework.utils.RuntimeAnchoring;

public class GenForm extends FormBridge
{
	private static final long serialVersionUID = 1L;

	public boolean canProvideData(IReportSeed[] reportSeeds)
	{
		return new ReportDataProvider(reportSeeds, this.getFormReportFields()).canProvideData();
	}
	public boolean hasData(IReportSeed[] reportSeeds)
	{
		return new ReportDataProvider(reportSeeds, this.getFormReportFields()).hasData();
	}
	public IReportField[] getData(IReportSeed[] reportSeeds)
	{
		return getData(reportSeeds, false);
	}
	public IReportField[] getData(IReportSeed[] reportSeeds, boolean excludeNulls)
	{
		return new ReportDataProvider(reportSeeds, this.getFormReportFields(), excludeNulls).getData();
	}
	public static class lyrCorrespondenceDetailLayer extends Layer
	{
		private static final long serialVersionUID = 1L;
		public static class tabRecipientsContainer extends LayerBridge
		{
			private static final long serialVersionUID = 1L;
			public static class qmbEnquiriesToComboBox extends ComboBoxBridge
			{
				private static final long serialVersionUID = 1L;
				
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text)
				{
					super.control.newRow(value, text);
				}
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text, ims.framework.utils.Image image)
				{
					super.control.newRow(value, text, image);
				}
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, textColor);
				}
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text, ims.framework.utils.Image image, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, image, textColor);
				}
				public boolean removeRow(ims.core.vo.MemberOfStaffLiteVo value)
				{
					return super.control.removeRow(value);
				}
				public ims.core.vo.MemberOfStaffLiteVo getValue()
				{
					return (ims.core.vo.MemberOfStaffLiteVo)super.control.getValue();
				}
				public void setValue(ims.core.vo.MemberOfStaffLiteVo value)
				{
					super.control.setValue(value);
				}
				public void setEditedText(String text)
				{
					super.control.setEditedText(text);
				}
				public String getEditedText()
				{
					return super.control.getEditedText();
				}
			}
			public static class qmbTypedByComboBox extends ComboBoxBridge
			{
				private static final long serialVersionUID = 1L;
				
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text)
				{
					super.control.newRow(value, text);
				}
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text, ims.framework.utils.Image image)
				{
					super.control.newRow(value, text, image);
				}
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, textColor);
				}
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text, ims.framework.utils.Image image, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, image, textColor);
				}
				public boolean removeRow(ims.core.vo.MemberOfStaffLiteVo value)
				{
					return super.control.removeRow(value);
				}
				public ims.core.vo.MemberOfStaffLiteVo getValue()
				{
					return (ims.core.vo.MemberOfStaffLiteVo)super.control.getValue();
				}
				public void setValue(ims.core.vo.MemberOfStaffLiteVo value)
				{
					super.control.setValue(value);
				}
				public void setEditedText(String text)
				{
					super.control.setEditedText(text);
				}
				public String getEditedText()
				{
					return super.control.getEditedText();
				}
			}
			public static class qmbDictatedByComboBox extends ComboBoxBridge
			{
				private static final long serialVersionUID = 1L;
				
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text)
				{
					super.control.newRow(value, text);
				}
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text, ims.framework.utils.Image image)
				{
					super.control.newRow(value, text, image);
				}
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, textColor);
				}
				public void newRow(ims.core.vo.MemberOfStaffLiteVo value, String text, ims.framework.utils.Image image, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, image, textColor);
				}
				public boolean removeRow(ims.core.vo.MemberOfStaffLiteVo value)
				{
					return super.control.removeRow(value);
				}
				public ims.core.vo.MemberOfStaffLiteVo getValue()
				{
					return (ims.core.vo.MemberOfStaffLiteVo)super.control.getValue();
				}
				public void setValue(ims.core.vo.MemberOfStaffLiteVo value)
				{
					super.control.setValue(value);
				}
				public void setEditedText(String text)
				{
					super.control.setEditedText(text);
				}
				public String getEditedText()
				{
					return super.control.getEditedText();
				}
			}
			public static class grdAdresseeRow extends GridRowBridge
			{
				private static final long serialVersionUID = 1L;
				
				protected grdAdresseeRow(GridRow row)
				{
					super(row);
				}
				public void showOpened(int column)
				{
					super.row.showOpened(column);
				}
				public void setAdresseeReadOnly(boolean value)
				{
					super.row.setReadOnly(0, value);
				}
				public boolean isAdresseeReadOnly()
				{
					return super.row.isReadOnly(0);
				}
				public void showAdresseeOpened()
				{
					super.row.showOpened(0);
				}
				public String getAdressee()
				{
					return (String)super.row.get(0);
				}
				public void setAdressee(String value)
				{
					super.row.set(0, value);
				}
				public void setCellAdresseeTooltip(String value)
				{
					super.row.setTooltip(0, value);
				}
				public void setAddressReadOnly(boolean value)
				{
					super.row.setReadOnly(1, value);
				}
				public boolean isAddressReadOnly()
				{
					return super.row.isReadOnly(1);
				}
				public void showAddressOpened()
				{
					super.row.showOpened(1);
				}
				public String getAddress()
				{
					return (String)super.row.get(1);
				}
				public void setAddress(String value)
				{
					super.row.set(1, value);
				}
				public void setCellAddressTooltip(String value)
				{
					super.row.setTooltip(1, value);
				}
				public void setGPReadOnly(boolean value)
				{
					super.row.setReadOnly(2, value);
				}
				public boolean isGPReadOnly()
				{
					return super.row.isReadOnly(2);
				}
				public void showGPOpened()
				{
					super.row.showOpened(2);
				}
				public ims.framework.utils.Image getGP()
				{
					return (ims.framework.utils.Image)super.row.get(2);
				}
				public void setGP(ims.framework.utils.Image value)
				{
					super.row.set(2, value);
				}
				public void setCellGPTooltip(String value)
				{
					super.row.setTooltip(2, value);
				}
				public ims.correspondence.vo.RecipientVo getValue()
				{
					return (ims.correspondence.vo.RecipientVo)super.row.getValue();
				}
				public void setValue(ims.correspondence.vo.RecipientVo value)
				{
					super.row.setValue(value);
				}
			}
			public static class grdAdresseeRowCollection extends GridRowCollectionBridge
			{
				private static final long serialVersionUID = 1L;
				
				private grdAdresseeRowCollection(GridRowCollection collection)
				{
					super(collection);
				}
				public grdAdresseeRow get(int index)
				{
					return new grdAdresseeRow(super.collection.get(index));
				}
				public grdAdresseeRow newRow()
				{
					return new grdAdresseeRow(super.collection.newRow());
				}
				public grdAdresseeRow newRow(boolean autoSelect)
				{
					return new grdAdresseeRow(super.collection.newRow(autoSelect));
				}
				public grdAdresseeRow newRowAt(int index)
				{
					return new grdAdresseeRow(super.collection.newRowAt(index));
				}
				public grdAdresseeRow newRowAt(int index, boolean autoSelect)
				{
					return new grdAdresseeRow(super.collection.newRowAt(index, autoSelect));
				}
			}
			public static class grdAdresseeGrid extends GridBridge
			{
				private static final long serialVersionUID = 1L;
				
				private void addStringColumn(String caption, int captionAlignment, int alignment, int width, boolean readOnly, boolean bold, int sortOrder, int maxLength, boolean canGrow, ims.framework.enumerations.CharacterCasing casing)
				{
					super.grid.addStringColumn(caption, captionAlignment, alignment, width, readOnly, bold, sortOrder, maxLength, canGrow, casing);
				}
				private void addImageColumn(String caption, int captionAlignment, int alignment, int width, boolean canGrow, int sortOrder)
				{
					super.grid.addImageColumn(caption, captionAlignment, alignment, width, canGrow, sortOrder);
				}
				public ims.correspondence.vo.RecipientVoCollection getValues()
				{
					ims.correspondence.vo.RecipientVoCollection listOfValues = new ims.correspondence.vo.RecipientVoCollection();
					for(int x = 0; x < this.getRows().size(); x++)
					{
						listOfValues.add(this.getRows().get(x).getValue());
					}
					return listOfValues;
				}
				public ims.correspondence.vo.RecipientVo getValue()
				{
					return (ims.correspondence.vo.RecipientVo)super.grid.getValue();
				}
				public void setValue(ims.correspondence.vo.RecipientVo value)
				{
					super.grid.setValue(value);
				}
				public grdAdresseeRow getSelectedRow()
				{
					return super.grid.getSelectedRow() == null ? null : new grdAdresseeRow(super.grid.getSelectedRow());
				}
				public int getSelectedRowIndex()
				{
					return super.grid.getSelectedRowIndex();
				}
				public grdAdresseeRowCollection getRows()
				{
					return new grdAdresseeRowCollection(super.grid.getRows());
				}
				public grdAdresseeRow getRowByValue(ims.correspondence.vo.RecipientVo value)
				{
					GridRow row = super.grid.getRowByValue(value);
					return row == null?null:new grdAdresseeRow(row);
				}
				public void setAdresseeHeaderTooltip(String value)
				{
					super.grid.setColumnHeaderTooltip(0, value);
				}
				public String getAdresseeHeaderTooltip()
				{
					return super.grid.getColumnHeaderTooltip(0);
				}
				public void setAddressHeaderTooltip(String value)
				{
					super.grid.setColumnHeaderTooltip(1, value);
				}
				public String getAddressHeaderTooltip()
				{
					return super.grid.getColumnHeaderTooltip(1);
				}
				public void setGPHeaderTooltip(String value)
				{
					super.grid.setColumnHeaderTooltip(2, value);
				}
				public String getGPHeaderTooltip()
				{
					return super.grid.getColumnHeaderTooltip(2);
				}
			}
			public void setTabActivatedEvent(ims.framework.delegates.TabActivated delegate)
			{
				super.container.setTabActivatedEvent(delegate);
			}
			public boolean isInitialized()
			{
				return super.container.isInitialized();
			}
			protected void setContext(Form form, ims.framework.interfaces.IAppForm appForm, Control control, FormLoader loader, Images form_images_local, ContextMenus contextMenus, Integer startControlID, ims.framework.utils.SizeInfo designSize, ims.framework.utils.SizeInfo runtimeSize, Integer startTabIndex, boolean skipContextValidation) throws Exception
			{
				if(form == null)
					throw new RuntimeException("Invalid form");
				if(appForm == null)
					throw new RuntimeException("Invalid application form");
				if(control == null); // this is to avoid eclipse warning only.
				if(loader == null); // this is to avoid eclipse warning only.
				if(form_images_local == null); // this is to avoid eclipse warning only.
				if(contextMenus == null); // this is to avoid eclipse warning only.
				if(startControlID == null)
					throw new RuntimeException("Invalid startControlID");
				if(designSize == null); // this is to avoid eclipse warning only.
				if(runtimeSize == null); // this is to avoid eclipse warning only.
				if(startTabIndex == null)
					throw new RuntimeException("Invalid startTabIndex");
		
		
				// Label Controls
				RuntimeAnchoring anchoringHelper1 = new RuntimeAnchoring(designSize, runtimeSize, 390, 145, 186, 17, ims.framework.enumerations.ControlAnchoring.TOPRIGHT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1000), new Integer(anchoringHelper1.getX()), new Integer(anchoringHelper1.getY()), new Integer(anchoringHelper1.getWidth()), new Integer(anchoringHelper1.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPRIGHT, "Typed Without\n     Case Notes:", new Integer(1), null, new Integer(0)}));
				RuntimeAnchoring anchoringHelper2 = new RuntimeAnchoring(designSize, runtimeSize, 16, 144, 78, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1001), new Integer(anchoringHelper2.getX()), new Integer(anchoringHelper2.getY()), new Integer(anchoringHelper2.getWidth()), new Integer(anchoringHelper2.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Enquires To :", new Integer(1), null, new Integer(0)}));
				RuntimeAnchoring anchoringHelper3 = new RuntimeAnchoring(designSize, runtimeSize, 432, 104, 49, 17, ims.framework.enumerations.ControlAnchoring.TOPRIGHT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1002), new Integer(anchoringHelper3.getX()), new Integer(anchoringHelper3.getY()), new Integer(anchoringHelper3.getWidth()), new Integer(anchoringHelper3.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPRIGHT, "Initials:", new Integer(1), null, new Integer(0)}));
				RuntimeAnchoring anchoringHelper4 = new RuntimeAnchoring(designSize, runtimeSize, 432, 64, 49, 17, ims.framework.enumerations.ControlAnchoring.TOPRIGHT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1003), new Integer(anchoringHelper4.getX()), new Integer(anchoringHelper4.getY()), new Integer(anchoringHelper4.getWidth()), new Integer(anchoringHelper4.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPRIGHT, "Initials:", new Integer(1), null, new Integer(0)}));
				RuntimeAnchoring anchoringHelper5 = new RuntimeAnchoring(designSize, runtimeSize, 16, 104, 60, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1004), new Integer(anchoringHelper5.getX()), new Integer(anchoringHelper5.getY()), new Integer(anchoringHelper5.getWidth()), new Integer(anchoringHelper5.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Typed By:", new Integer(1), null, new Integer(0)}));
				RuntimeAnchoring anchoringHelper6 = new RuntimeAnchoring(designSize, runtimeSize, 16, 64, 74, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1005), new Integer(anchoringHelper6.getX()), new Integer(anchoringHelper6.getY()), new Integer(anchoringHelper6.getWidth()), new Integer(anchoringHelper6.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Dictated By:", new Integer(1), null, new Integer(0)}));
				RuntimeAnchoring anchoringHelper7 = new RuntimeAnchoring(designSize, runtimeSize, 376, 24, 110, 17, ims.framework.enumerations.ControlAnchoring.TOPRIGHT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1006), new Integer(anchoringHelper7.getX()), new Integer(anchoringHelper7.getY()), new Integer(anchoringHelper7.getWidth()), new Integer(anchoringHelper7.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPRIGHT, "Date of Discharge:", new Integer(1), null, new Integer(0)}));
				RuntimeAnchoring anchoringHelper8 = new RuntimeAnchoring(designSize, runtimeSize, 16, 24, 84, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1007), new Integer(anchoringHelper8.getX()), new Integer(anchoringHelper8.getY()), new Integer(anchoringHelper8.getWidth()), new Integer(anchoringHelper8.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Date of Clinic:", new Integer(1), null, new Integer(0)}));
		
				// TextBox Controls
				RuntimeAnchoring anchoringHelper9 = new RuntimeAnchoring(designSize, runtimeSize, 488, 104, 100, 20, ims.framework.enumerations.ControlAnchoring.TOPRIGHT);
				super.addControl(factory.getControl(TextBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1008), new Integer(anchoringHelper9.getX()), new Integer(anchoringHelper9.getY()), new Integer(anchoringHelper9.getWidth()), new Integer(anchoringHelper9.getHeight()), new Integer(startTabIndex.intValue() + 15), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.TOPRIGHT,Boolean.FALSE, new Integer(0), Boolean.TRUE, Boolean.FALSE, null, null, Boolean.TRUE, ims.framework.enumerations.CharacterCasing.NORMAL, ims.framework.enumerations.TextTrimming.NONE, "", ""}));
				RuntimeAnchoring anchoringHelper10 = new RuntimeAnchoring(designSize, runtimeSize, 488, 64, 100, 20, ims.framework.enumerations.ControlAnchoring.TOPRIGHT);
				super.addControl(factory.getControl(TextBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1009), new Integer(anchoringHelper10.getX()), new Integer(anchoringHelper10.getY()), new Integer(anchoringHelper10.getWidth()), new Integer(anchoringHelper10.getHeight()), new Integer(startTabIndex.intValue() + 4), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.TOPRIGHT,Boolean.FALSE, new Integer(0), Boolean.TRUE, Boolean.FALSE, null, null, Boolean.TRUE, ims.framework.enumerations.CharacterCasing.NORMAL, ims.framework.enumerations.TextTrimming.NONE, "", ""}));
		
				// Date Controls
				RuntimeAnchoring anchoringHelper11 = new RuntimeAnchoring(designSize, runtimeSize, 488, 24, 200, 20, ims.framework.enumerations.ControlAnchoring.TOPRIGHT);
				super.addControl(factory.getControl(DateControl.class, new Object[] { control, new Integer(startControlID.intValue() + 1010), new Integer(anchoringHelper11.getX()), new Integer(anchoringHelper11.getY()), new Integer(anchoringHelper11.getWidth()), new Integer(anchoringHelper11.getHeight()), new Integer(-1), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPRIGHT,Boolean.TRUE, null, Boolean.FALSE, null, Boolean.FALSE, null}));
				RuntimeAnchoring anchoringHelper12 = new RuntimeAnchoring(designSize, runtimeSize, 120, 24, 200, 20, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				super.addControl(factory.getControl(DateControl.class, new Object[] { control, new Integer(startControlID.intValue() + 1011), new Integer(anchoringHelper12.getX()), new Integer(anchoringHelper12.getY()), new Integer(anchoringHelper12.getWidth()), new Integer(anchoringHelper12.getHeight()), new Integer(-1), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, null, Boolean.FALSE, null, Boolean.FALSE, null}));
		
				// Query ComboBox Controls
				RuntimeAnchoring anchoringHelper13 = new RuntimeAnchoring(designSize, runtimeSize, 120, 144, 200, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				ComboBox m_qmbEnquiriesToTemp = (ComboBox)factory.getControl(ComboBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1012), new Integer(anchoringHelper13.getX()), new Integer(anchoringHelper13.getY()), new Integer(anchoringHelper13.getWidth()), new Integer(anchoringHelper13.getHeight()), new Integer(startTabIndex.intValue() + 3), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, SortOrder.NONE, Boolean.TRUE, new Integer(1), null, Boolean.FALSE, new Integer(-1), Boolean.FALSE});
				addControl(m_qmbEnquiriesToTemp);
				qmbEnquiriesToComboBox qmbEnquiriesTo = (qmbEnquiriesToComboBox)ComboBoxFlyweightFactory.getInstance().createComboBoxBridge(qmbEnquiriesToComboBox.class, m_qmbEnquiriesToTemp);
				super.addComboBox(qmbEnquiriesTo);
				RuntimeAnchoring anchoringHelper14 = new RuntimeAnchoring(designSize, runtimeSize, 120, 104, 200, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				ComboBox m_qmbTypedByTemp = (ComboBox)factory.getControl(ComboBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1013), new Integer(anchoringHelper14.getX()), new Integer(anchoringHelper14.getY()), new Integer(anchoringHelper14.getWidth()), new Integer(anchoringHelper14.getHeight()), new Integer(startTabIndex.intValue() + 2), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.TRUE, SortOrder.NONE, Boolean.TRUE, new Integer(1), null, Boolean.TRUE, new Integer(-1), Boolean.FALSE});
				addControl(m_qmbTypedByTemp);
				qmbTypedByComboBox qmbTypedBy = (qmbTypedByComboBox)ComboBoxFlyweightFactory.getInstance().createComboBoxBridge(qmbTypedByComboBox.class, m_qmbTypedByTemp);
				super.addComboBox(qmbTypedBy);
				RuntimeAnchoring anchoringHelper15 = new RuntimeAnchoring(designSize, runtimeSize, 120, 64, 200, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				ComboBox m_qmbDictatedByTemp = (ComboBox)factory.getControl(ComboBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1014), new Integer(anchoringHelper15.getX()), new Integer(anchoringHelper15.getY()), new Integer(anchoringHelper15.getWidth()), new Integer(anchoringHelper15.getHeight()), new Integer(startTabIndex.intValue() + 1), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.TRUE, SortOrder.NONE, Boolean.TRUE, new Integer(1), null, Boolean.TRUE, new Integer(-1), Boolean.FALSE});
				addControl(m_qmbDictatedByTemp);
				qmbDictatedByComboBox qmbDictatedBy = (qmbDictatedByComboBox)ComboBoxFlyweightFactory.getInstance().createComboBoxBridge(qmbDictatedByComboBox.class, m_qmbDictatedByTemp);
				super.addComboBox(qmbDictatedBy);
		
				// CheckBox Controls
				RuntimeAnchoring anchoringHelper16 = new RuntimeAnchoring(designSize, runtimeSize, 488, 144, 16, 16, ims.framework.enumerations.ControlAnchoring.TOPRIGHT);
				super.addControl(factory.getControl(CheckBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1015), new Integer(anchoringHelper16.getX()), new Integer(anchoringHelper16.getY()), new Integer(anchoringHelper16.getWidth()), new Integer(anchoringHelper16.getHeight()), new Integer(-1), ControlState.DISABLED, ControlState.ENABLED,ims.framework.enumerations.ControlAnchoring.TOPRIGHT ,"", Boolean.FALSE, null}));
		
				// Grid Controls
				RuntimeAnchoring anchoringHelper17 = new RuntimeAnchoring(designSize, runtimeSize, 16, 216, 672, 312, ims.framework.enumerations.ControlAnchoring.ALL);
				Grid m_grdAdresseeTemp = (Grid)factory.getControl(Grid.class, new Object[] { control, new Integer(startControlID.intValue() + 1016), new Integer(anchoringHelper17.getX()), new Integer(anchoringHelper17.getY()), new Integer(anchoringHelper17.getWidth()), new Integer(anchoringHelper17.getHeight()), new Integer(startTabIndex.intValue() + 7), ControlState.READONLY, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.ALL,Boolean.TRUE, Boolean.FALSE, new Integer(24), Boolean.TRUE, contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee, Boolean.FALSE, Boolean.FALSE, new Integer(0), null, Boolean.FALSE, Boolean.TRUE});
				addControl(m_grdAdresseeTemp);
				grdAdresseeGrid grdAdressee = (grdAdresseeGrid)GridFlyweightFactory.getInstance().createGridBridge(grdAdresseeGrid.class, m_grdAdresseeTemp);
				grdAdressee.addStringColumn("Addressee", 0, 0, 200, true, false, 1, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
				grdAdressee.addStringColumn("Address", 0, 0, 400, true, false, 0, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
				grdAdressee.addImageColumn("Type", 0, 0, -1, true, 2);
				super.addGrid(grdAdressee);
			}

			public Label lblEnd()
			{
				return (Label)super.getControl(6);
			}
			public Label lblStart()
			{
				return (Label)super.getControl(7);
			}
			public TextBox txtTypedByInitials()
			{
				return (TextBox)super.getControl(8);
			}
			public TextBox txtDictatedByinitals()
			{
				return (TextBox)super.getControl(9);
			}
			public DateControl dteDisChargeDate()
			{
				return (DateControl)super.getControl(10);
			}
			public DateControl dteStartDate()
			{
				return (DateControl)super.getControl(11);
			}
			public qmbEnquiriesToComboBox qmbEnquiriesTo()
			{
				return (qmbEnquiriesToComboBox)super.getComboBox(0);
			}
			public qmbTypedByComboBox qmbTypedBy()
			{
				return (qmbTypedByComboBox)super.getComboBox(1);
			}
			public qmbDictatedByComboBox qmbDictatedBy()
			{
				return (qmbDictatedByComboBox)super.getComboBox(2);
			}
			public CheckBox chkTypedWithoutCaseNotes()
			{
				return (CheckBox)super.getControl(15);
			}
			public grdAdresseeGrid grdAdressee()
			{
				return (grdAdresseeGrid)super.getGrid(0);
			}
		}
		public static class tabCorrespondenceContainer extends LayerBridge
		{
			private static final long serialVersionUID = 1L;
			public static class cmbTypeComboBox extends ComboBoxBridge
			{
				private static final long serialVersionUID = 1L;
				
				public void newRow(ims.correspondence.vo.lookups.SpecialInterestType value, String text)
				{
					super.control.newRow(value, text);
				}
				public void newRow(ims.correspondence.vo.lookups.SpecialInterestType value, String text, ims.framework.utils.Image image)
				{
					super.control.newRow(value, text, image);
				}
				public void newRow(ims.correspondence.vo.lookups.SpecialInterestType value, String text, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, textColor);
				}
				public void newRow(ims.correspondence.vo.lookups.SpecialInterestType value, String text, ims.framework.utils.Image image, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, image, textColor);
				}
				public boolean removeRow(ims.correspondence.vo.lookups.SpecialInterestType value)
				{
					return super.control.removeRow(value);
				}
				public ims.correspondence.vo.lookups.SpecialInterestType getValue()
				{
					return (ims.correspondence.vo.lookups.SpecialInterestType)super.control.getValue();
				}
				public void setValue(ims.correspondence.vo.lookups.SpecialInterestType value)
				{
					super.control.setValue(value);
				}
			}
			public static class qmbSignedByComboBox extends ComboBoxBridge
			{
				private static final long serialVersionUID = 1L;
				
				public void newRow(ims.core.vo.MedicLiteVo value, String text)
				{
					super.control.newRow(value, text);
				}
				public void newRow(ims.core.vo.MedicLiteVo value, String text, ims.framework.utils.Image image)
				{
					super.control.newRow(value, text, image);
				}
				public void newRow(ims.core.vo.MedicLiteVo value, String text, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, textColor);
				}
				public void newRow(ims.core.vo.MedicLiteVo value, String text, ims.framework.utils.Image image, ims.framework.utils.Color textColor)
				{
					super.control.newRow(value, text, image, textColor);
				}
				public boolean removeRow(ims.core.vo.MedicLiteVo value)
				{
					return super.control.removeRow(value);
				}
				public ims.core.vo.MedicLiteVo getValue()
				{
					return (ims.core.vo.MedicLiteVo)super.control.getValue();
				}
				public void setValue(ims.core.vo.MedicLiteVo value)
				{
					super.control.setValue(value);
				}
				public void setEditedText(String text)
				{
					super.control.setEditedText(text);
				}
				public String getEditedText()
				{
					return super.control.getEditedText();
				}
			}
			public static class grdCategoriesRow extends GridRowBridge
			{
				private static final long serialVersionUID = 1L;
				
				protected grdCategoriesRow(GridRow row)
				{
					super(row);
				}
				public void showOpened(int column)
				{
					super.row.showOpened(column);
				}
				public void setDateReadOnly(boolean value)
				{
					super.row.setReadOnly(0, value);
				}
				public boolean isDateReadOnly()
				{
					return super.row.isReadOnly(0);
				}
				public void showDateOpened()
				{
					super.row.showOpened(0);
				}
				public void setTooltipForDate(String value)
				{
					super.row.setTooltip(0, value);
				}
				public ims.framework.utils.Date getDate()
				{
					return (ims.framework.utils.Date)super.row.get(0);
				}
				public void setDate(ims.framework.utils.Date value)
				{
					super.row.set(0, value);
				}
				public void setCellDateTooltip(String value)
				{
					super.row.setTooltip(0, value);
				}
				public void setTimeReadOnly(boolean value)
				{
					super.row.setReadOnly(1, value);
				}
				public boolean isTimeReadOnly()
				{
					return super.row.isReadOnly(1);
				}
				public void showTimeOpened()
				{
					super.row.showOpened(1);
				}
				public void setTooltipForTime(String value)
				{
					super.row.setTooltip(1, value);
				}
				public ims.framework.utils.Time getTime()
				{
					return (ims.framework.utils.Time)super.row.get(1);
				}
				public void setTime(ims.framework.utils.Time value)
				{
					super.row.set(1, value);
				}
				public void setCellTimeTooltip(String value)
				{
					super.row.setTooltip(1, value);
				}
				public void setRecUserReadOnly(boolean value)
				{
					super.row.setReadOnly(2, value);
				}
				public boolean isRecUserReadOnly()
				{
					return super.row.isReadOnly(2);
				}
				public void showRecUserOpened()
				{
					super.row.showOpened(2);
				}
				public void setTooltipForRecUser(String value)
				{
					super.row.setTooltip(2, value);
				}
				public String getRecUser()
				{
					return (String)super.row.get(2);
				}
				public void setRecUser(String value)
				{
					super.row.set(2, value);
				}
				public void setCellRecUserTooltip(String value)
				{
					super.row.setTooltip(2, value);
				}
				public void setCategoryReadOnly(boolean value)
				{
					super.row.setReadOnly(3, value);
				}
				public boolean isCategoryReadOnly()
				{
					return super.row.isReadOnly(3);
				}
				public void showCategoryOpened()
				{
					super.row.showOpened(3);
				}
				public void setTooltipForCategory(String value)
				{
					super.row.setTooltip(3, value);
				}
				public ims.correspondence.vo.lookups.Header getCategory()
				{
					return (ims.correspondence.vo.lookups.Header)super.row.get(3);
				}
				public void setCategory(ims.correspondence.vo.lookups.Header value)
				{
					super.row.set(3, value, true);
				}
				public void setCellCategoryTooltip(String value)
				{
					super.row.setTooltip(3, value);
				}
				public void setTemplateCategoryIdReadOnly(boolean value)
				{
					super.row.setReadOnly(4, value);
				}
				public boolean isTemplateCategoryIdReadOnly()
				{
					return super.row.isReadOnly(4);
				}
				public void showTemplateCategoryIdOpened()
				{
					super.row.showOpened(4);
				}
				public void setTooltipForTemplateCategoryId(String value)
				{
					super.row.setTooltip(4, value);
				}
				public Integer getTemplateCategoryId()
				{
					return (Integer)super.row.get(4);
				}
				public void setTemplateCategoryId(Integer value)
				{
					super.row.set(4, value);
				}
				public void setCellTemplateCategoryIdTooltip(String value)
				{
					super.row.setTooltip(4, value);
				}
				public void setCategoryTextReadOnly(boolean value)
				{
					super.row.setReadOnly(5, value);
				}
				public boolean isCategoryTextReadOnly()
				{
					return super.row.isReadOnly(5);
				}
				public void showCategoryTextOpened()
				{
					super.row.showOpened(5);
				}
				public void setTooltipForCategoryText(String value)
				{
					super.row.setTooltip(5, value);
				}
				public ims.framework.utils.Image getCategoryText()
				{
					return (ims.framework.utils.Image)super.row.get(5);
				}
				public void setCategoryText(ims.framework.utils.Image value)
				{
					super.row.set(5, value);
				}
				public void setCellCategoryTextTooltip(String value)
				{
					super.row.setTooltip(5, value);
				}
				public ims.correspondence.vo.CategoryNotesVo getValue()
				{
					return (ims.correspondence.vo.CategoryNotesVo)super.row.getValue();
				}
				public void setValue(ims.correspondence.vo.CategoryNotesVo value)
				{
					super.row.setValue(value);
				}
			}
			public static class grdCategoriesRowCollection extends GridRowCollectionBridge
			{
				private static final long serialVersionUID = 1L;
				
				private grdCategoriesRowCollection(GridRowCollection collection)
				{
					super(collection);
				}
				public grdCategoriesRow get(int index)
				{
					return new grdCategoriesRow(super.collection.get(index));
				}
				public grdCategoriesRow newRow()
				{
					return new grdCategoriesRow(super.collection.newRow());
				}
				public grdCategoriesRow newRow(boolean autoSelect)
				{
					return new grdCategoriesRow(super.collection.newRow(autoSelect));
				}
				public grdCategoriesRow newRowAt(int index)
				{
					return new grdCategoriesRow(super.collection.newRowAt(index));
				}
				public grdCategoriesRow newRowAt(int index, boolean autoSelect)
				{
					return new grdCategoriesRow(super.collection.newRowAt(index, autoSelect));
				}
			}
			public static class grdCategoriesGrid extends GridBridge
			{
				private static final long serialVersionUID = 1L;
				
				private void addDateColumn(String caption, int captionAlignment, int alignment, int width, boolean readOnly, boolean canBeEmpty, String validationString, boolean bold, int sortOrder, boolean canGrow)
				{
					super.grid.addDateColumn(caption, captionAlignment, alignment, width, readOnly, canBeEmpty, validationString, bold, sortOrder, canGrow);
				}
				private void addTimeColumn(String caption, int captionAlignment, int alignment, int width, boolean readOnly, boolean canBeEmpty, boolean autoPostBack, String validationString, boolean bold, int sortOrder, boolean canGrow)
				{
					super.grid.addTimeColumn(caption, captionAlignment, alignment, width, readOnly, canBeEmpty, autoPostBack, validationString, bold, sortOrder, canGrow);
				}
				public void setRecUserCaption(String value)
				{
					this.grid.setColumnCaption(2, value);
				}
				private void addStringColumn(String caption, int captionAlignment, int alignment, int width, boolean readOnly, boolean bold, int sortOrder, int maxLength, boolean canGrow, ims.framework.enumerations.CharacterCasing casing)
				{
					super.grid.addStringColumn(caption, captionAlignment, alignment, width, readOnly, bold, sortOrder, maxLength, canGrow, casing);
				}
				private void addComboBoxColumn(String caption, int captionAlignment, int alignment, int width, boolean readOnly, boolean canBeEmpty, boolean autoPostBack, boolean bold, boolean canGrow, int maxDropDownItems)
				{
					super.grid.addComboBoxColumn(caption, captionAlignment, alignment, width, readOnly, canBeEmpty, autoPostBack, bold, canGrow, maxDropDownItems);
				}
				private void addIntColumn(String caption, int captionAlignment, int alignment, int width, boolean readOnly, boolean canBeEmpty, String validationString, boolean bold, int sortOrder, boolean canGrow, int maxLength)
				{
					super.grid.addIntColumn(caption, captionAlignment, alignment, width, readOnly, canBeEmpty, validationString, bold, sortOrder, canGrow, maxLength);
				}
				private void addImageColumn(String caption, int captionAlignment, int alignment, int width, boolean canGrow, int sortOrder)
				{
					super.grid.addImageColumn(caption, captionAlignment, alignment, width, canGrow, sortOrder);
				}
				public ims.correspondence.vo.CategoryNotesVoCollection getValues()
				{
					ims.correspondence.vo.CategoryNotesVoCollection listOfValues = new ims.correspondence.vo.CategoryNotesVoCollection();
					for(int x = 0; x < this.getRows().size(); x++)
					{
						listOfValues.add(this.getRows().get(x).getValue());
					}
					return listOfValues;
				}
				public ims.correspondence.vo.CategoryNotesVo getValue()
				{
					return (ims.correspondence.vo.CategoryNotesVo)super.grid.getValue();
				}
				public void setValue(ims.correspondence.vo.CategoryNotesVo value)
				{
					super.grid.setValue(value);
				}
				public grdCategoriesRow getSelectedRow()
				{
					return super.grid.getSelectedRow() == null ? null : new grdCategoriesRow(super.grid.getSelectedRow());
				}
				public int getSelectedRowIndex()
				{
					return super.grid.getSelectedRowIndex();
				}
				public grdCategoriesRowCollection getRows()
				{
					return new grdCategoriesRowCollection(super.grid.getRows());
				}
				public grdCategoriesRow getRowByValue(ims.correspondence.vo.CategoryNotesVo value)
				{
					GridRow row = super.grid.getRowByValue(value);
					return row == null?null:new grdCategoriesRow(row);
				}
				public void setDateHeaderTooltip(String value)
				{
					super.grid.setColumnHeaderTooltip(0, value);
				}
				public String getDateHeaderTooltip()
				{
					return super.grid.getColumnHeaderTooltip(0);
				}
				public void setTimeHeaderTooltip(String value)
				{
					super.grid.setColumnHeaderTooltip(1, value);
				}
				public String getTimeHeaderTooltip()
				{
					return super.grid.getColumnHeaderTooltip(1);
				}
				public void setRecUserHeaderTooltip(String value)
				{
					super.grid.setColumnHeaderTooltip(2, value);
				}
				public String getRecUserHeaderTooltip()
				{
					return super.grid.getColumnHeaderTooltip(2);
				}
				public void setCategoryHeaderTooltip(String value)
				{
					super.grid.setColumnHeaderTooltip(3, value);
				}
				public String getCategoryHeaderTooltip()
				{
					return super.grid.getColumnHeaderTooltip(3);
				}
				public GridComboBox CategoryComboBox()
				{
					return new GridComboBox(super.grid, 3);
				}
				public void setTemplateCategoryIdHeaderTooltip(String value)
				{
					super.grid.setColumnHeaderTooltip(4, value);
				}
				public String getTemplateCategoryIdHeaderTooltip()
				{
					return super.grid.getColumnHeaderTooltip(4);
				}
				public void setCategoryTextHeaderTooltip(String value)
				{
					super.grid.setColumnHeaderTooltip(5, value);
				}
				public String getCategoryTextHeaderTooltip()
				{
					return super.grid.getColumnHeaderTooltip(5);
				}
			}
			public void setTabActivatedEvent(ims.framework.delegates.TabActivated delegate)
			{
				super.container.setTabActivatedEvent(delegate);
			}
			public boolean isInitialized()
			{
				return super.container.isInitialized();
			}
			protected void setContext(Form form, ims.framework.interfaces.IAppForm appForm, Control control, FormLoader loader, Images form_images_local, ContextMenus contextMenus, Integer startControlID, ims.framework.utils.SizeInfo designSize, ims.framework.utils.SizeInfo runtimeSize, Integer startTabIndex, boolean skipContextValidation) throws Exception
			{
				if(form == null)
					throw new RuntimeException("Invalid form");
				if(appForm == null)
					throw new RuntimeException("Invalid application form");
				if(control == null); // this is to avoid eclipse warning only.
				if(loader == null); // this is to avoid eclipse warning only.
				if(form_images_local == null); // this is to avoid eclipse warning only.
				if(contextMenus == null); // this is to avoid eclipse warning only.
				if(startControlID == null)
					throw new RuntimeException("Invalid startControlID");
				if(designSize == null); // this is to avoid eclipse warning only.
				if(runtimeSize == null); // this is to avoid eclipse warning only.
				if(startTabIndex == null)
					throw new RuntimeException("Invalid startTabIndex");
		
		
				// Panel Controls
				RuntimeAnchoring anchoringHelper18 = new RuntimeAnchoring(designSize, runtimeSize, 8, 480, 680, 48, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT);
				super.addControl(factory.getControl(Panel.class, new Object[] { control, new Integer(startControlID.intValue() + 1017), new Integer(anchoringHelper18.getX()), new Integer(anchoringHelper18.getY()), new Integer(anchoringHelper18.getWidth()), new Integer(anchoringHelper18.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT,"", new Integer(2), ""}));
		
				// Label Controls
				RuntimeAnchoring anchoringHelper19 = new RuntimeAnchoring(designSize, runtimeSize, 16, 280, 60, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1018), new Integer(anchoringHelper19.getX()), new Integer(anchoringHelper19.getY()), new Integer(anchoringHelper19.getWidth()), new Integer(anchoringHelper19.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Note Detail", new Integer(0), null, new Integer(0)}));
				RuntimeAnchoring anchoringHelper20 = new RuntimeAnchoring(designSize, runtimeSize, 136, 496, 39, 17, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1019), new Integer(anchoringHelper20.getX()), new Integer(anchoringHelper20.getY()), new Integer(anchoringHelper20.getWidth()), new Integer(anchoringHelper20.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT, "Type :", new Integer(1), null, new Integer(0)}));
				RuntimeAnchoring anchoringHelper21 = new RuntimeAnchoring(designSize, runtimeSize, 368, 496, 82, 17, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
				super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1020), new Integer(anchoringHelper21.getX()), new Integer(anchoringHelper21.getY()), new Integer(anchoringHelper21.getWidth()), new Integer(anchoringHelper21.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, "To be Signed:", new Integer(1), null, new Integer(0)}));
		
				// ComboBox Controls
				RuntimeAnchoring anchoringHelper22 = new RuntimeAnchoring(designSize, runtimeSize, 176, 496, 192, 20, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT);
				ComboBox m_cmbTypeTemp = (ComboBox)factory.getControl(ComboBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1021), new Integer(anchoringHelper22.getX()), new Integer(anchoringHelper22.getY()), new Integer(anchoringHelper22.getWidth()), new Integer(anchoringHelper22.getHeight()), new Integer(-1), ControlState.DISABLED, ControlState.UNKNOWN,ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT ,Boolean.TRUE, Boolean.FALSE, SortOrder.NONE, Boolean.FALSE, new Integer(1), null, Boolean.FALSE, new Integer(-1)});
				addControl(m_cmbTypeTemp);
				cmbTypeComboBox cmbType = (cmbTypeComboBox)ComboBoxFlyweightFactory.getInstance().createComboBoxBridge(cmbTypeComboBox.class, m_cmbTypeTemp);
				super.addComboBox(cmbType);
		
				// Query ComboBox Controls
				RuntimeAnchoring anchoringHelper23 = new RuntimeAnchoring(designSize, runtimeSize, 456, 496, 216, 20, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
				ComboBox m_qmbSignedByTemp = (ComboBox)factory.getControl(ComboBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1022), new Integer(anchoringHelper23.getX()), new Integer(anchoringHelper23.getY()), new Integer(anchoringHelper23.getWidth()), new Integer(anchoringHelper23.getHeight()), new Integer(startTabIndex.intValue() + 16), ControlState.DISABLED, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT,Boolean.TRUE, Boolean.FALSE, SortOrder.NONE, Boolean.TRUE, new Integer(1), null, Boolean.FALSE, new Integer(-1), Boolean.FALSE});
				addControl(m_qmbSignedByTemp);
				qmbSignedByComboBox qmbSignedBy = (qmbSignedByComboBox)ComboBoxFlyweightFactory.getInstance().createComboBoxBridge(qmbSignedByComboBox.class, m_qmbSignedByTemp);
				super.addComboBox(qmbSignedBy);
		
				// CheckBox Controls
				RuntimeAnchoring anchoringHelper24 = new RuntimeAnchoring(designSize, runtimeSize, 16, 496, 96, 24, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT);
				super.addControl(factory.getControl(CheckBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1023), new Integer(anchoringHelper24.getX()), new Integer(anchoringHelper24.getY()), new Integer(anchoringHelper24.getWidth()), new Integer(anchoringHelper24.getHeight()), new Integer(-1), ControlState.DISABLED, ControlState.UNKNOWN,ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT ,"Special Interest", Boolean.TRUE, null}));
		
				// Grid Controls
				RuntimeAnchoring anchoringHelper25 = new RuntimeAnchoring(designSize, runtimeSize, 16, 24, 672, 240, ims.framework.enumerations.ControlAnchoring.ALL);
				Grid m_grdCategoriesTemp = (Grid)factory.getControl(Grid.class, new Object[] { control, new Integer(startControlID.intValue() + 1024), new Integer(anchoringHelper25.getX()), new Integer(anchoringHelper25.getY()), new Integer(anchoringHelper25.getWidth()), new Integer(anchoringHelper25.getHeight()), new Integer(startTabIndex.intValue() + 6), ControlState.READONLY, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.ALL,Boolean.TRUE, Boolean.FALSE, new Integer(24), Boolean.TRUE, contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategories, Boolean.FALSE, Boolean.FALSE, new Integer(0), null, Boolean.FALSE, Boolean.TRUE});
				addControl(m_grdCategoriesTemp);
				grdCategoriesGrid grdCategories = (grdCategoriesGrid)GridFlyweightFactory.getInstance().createGridBridge(grdCategoriesGrid.class, m_grdCategoriesTemp);
				grdCategories.addDateColumn("Date", 0, 0, 80, true, true, null, false, 1, true);
				grdCategories.addTimeColumn("Time", 0, 0, 50, true, true, false, null, false, 1, true);
				grdCategories.addStringColumn("Recording User", 0, 0, 150, true, false, 0, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
				grdCategories.addComboBoxColumn("Header", 0, 0, 100, true, true, false, false, true, -1);
				grdCategories.addIntColumn("TemplateCategoryId", 0, 0, 0, true, true, null, false, 0, true, 0);
				grdCategories.addImageColumn("Note", 0, 0, -1, true, 2);
				super.addGrid(grdCategories);
		
				// HTML Viewer Controls
				RuntimeAnchoring anchoringHelper26 = new RuntimeAnchoring(designSize, runtimeSize, 16, 296, 672, 168, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT);
				super.addControl(factory.getControl(HTMLViewer.class, new Object[] { control, new Integer(startControlID.intValue() + 1025), new Integer(anchoringHelper26.getX()), new Integer(anchoringHelper26.getY()), new Integer(anchoringHelper26.getWidth()), new Integer(anchoringHelper26.getHeight()), new Integer(startTabIndex.intValue() + 5), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE}));
			}

			public cmbTypeComboBox cmbType()
			{
				return (cmbTypeComboBox)super.getComboBox(0);
			}
			public qmbSignedByComboBox qmbSignedBy()
			{
				return (qmbSignedByComboBox)super.getComboBox(1);
			}
			public CheckBox chkSpecialInterest()
			{
				return (CheckBox)super.getControl(6);
			}
			public grdCategoriesGrid grdCategories()
			{
				return (grdCategoriesGrid)super.getGrid(0);
			}
			public HTMLViewer htmNote()
			{
				return (HTMLViewer)super.getControl(8);
			}
		}

		protected void setContext(Form form, ims.framework.interfaces.IAppForm appForm, Control control, FormLoader loader, Images form_images_local, ContextMenus contextMenus, Integer startControlID, ims.framework.utils.SizeInfo designSize, ims.framework.utils.SizeInfo runtimeSize, Integer startTabIndex, boolean skipContextValidation) throws Exception
		{
			if(form == null)
				throw new RuntimeException("Invalid form");
			if(appForm == null)
				throw new RuntimeException("Invalid application form");
			if(control == null); // this is to avoid eclipse warning only.
			if(loader == null); // this is to avoid eclipse warning only.
			if(form_images_local == null); // this is to avoid eclipse warning only.
			if(contextMenus == null); // this is to avoid eclipse warning only.
			if(startControlID == null)
				throw new RuntimeException("Invalid startControlID");
			if(designSize == null); // this is to avoid eclipse warning only.
			if(runtimeSize == null); // this is to avoid eclipse warning only.
			if(startTabIndex == null)
				throw new RuntimeException("Invalid startTabIndex");
			RuntimeAnchoring anchoringHelper27 = new RuntimeAnchoring(designSize, runtimeSize, 8, 40, 704, 576, ims.framework.enumerations.ControlAnchoring.ALL);
			Container m_tabRecipients = (Container)factory.getControl(Container.class, new Object[] { control, new Integer(startControlID.intValue() + 1026), new Integer(anchoringHelper27.getX()), new Integer(anchoringHelper27.getY()), new Integer(anchoringHelper27.getWidth()), new Integer(anchoringHelper27.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.ALL,"Header Information and Recipients", new Integer(startControlID.intValue() + 0), new Boolean(true), new Boolean(true), new Boolean(true), new Boolean(true), new Boolean(true), new Boolean(false)});
			tabRecipientsContainer m_tabRecipientsContainer = (tabRecipientsContainer)LayerBridgeFlyweightFactory.getInstance().createLayerBridge(tabRecipientsContainer.class, m_tabRecipients, factory);
			super.addContainer(m_tabRecipients, m_tabRecipientsContainer);
			ims.framework.utils.SizeInfo m_tabRecipientsDesignSize = new ims.framework.utils.SizeInfo(704, 576);
			ims.framework.utils.SizeInfo m_tabRecipientsRuntimeSize = new ims.framework.utils.SizeInfo(anchoringHelper27.getWidth(), anchoringHelper27.getHeight());
			m_tabRecipientsContainer.setContext(form, appForm, m_tabRecipients, loader, form_images_local, contextMenus, startControlID, m_tabRecipientsDesignSize, m_tabRecipientsRuntimeSize, startTabIndex, skipContextValidation);
			RuntimeAnchoring anchoringHelper28 = new RuntimeAnchoring(designSize, runtimeSize, 8, 40, 704, 576, ims.framework.enumerations.ControlAnchoring.ALL);
			Container m_tabCorrespondence = (Container)factory.getControl(Container.class, new Object[] { control, new Integer(startControlID.intValue() + 1027), new Integer(anchoringHelper28.getX()), new Integer(anchoringHelper28.getY()), new Integer(anchoringHelper28.getWidth()), new Integer(anchoringHelper28.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.ALL,"Correspondence", new Integer(startControlID.intValue() + 0), new Boolean(false), new Boolean(true), new Boolean(true), new Boolean(true), new Boolean(true), new Boolean(false)});
			tabCorrespondenceContainer m_tabCorrespondenceContainer = (tabCorrespondenceContainer)LayerBridgeFlyweightFactory.getInstance().createLayerBridge(tabCorrespondenceContainer.class, m_tabCorrespondence, factory);
			super.addContainer(m_tabCorrespondence, m_tabCorrespondenceContainer);
			ims.framework.utils.SizeInfo m_tabCorrespondenceDesignSize = new ims.framework.utils.SizeInfo(704, 576);
			ims.framework.utils.SizeInfo m_tabCorrespondenceRuntimeSize = new ims.framework.utils.SizeInfo(anchoringHelper28.getWidth(), anchoringHelper28.getHeight());
			m_tabCorrespondenceContainer.setContext(form, appForm, m_tabCorrespondence, loader, form_images_local, contextMenus, startControlID, m_tabCorrespondenceDesignSize, m_tabCorrespondenceRuntimeSize, startTabIndex, skipContextValidation);
		}
		public void hide()
		{
			tabRecipients().setVisible(false);
			tabCorrespondence().setVisible(false);
		}
		public void settabRecipientsEnabled(boolean value)
		{
			tabRecipients().setEnabled(value);
		}
		public void settabCorrespondenceEnabled(boolean value)
		{
			tabCorrespondence().setEnabled(value);
		}
		public void showtabRecipients()
		{
			tabCorrespondence().setVisible(false);
			tabRecipients().setVisible(true);
		}
		public void showtabCorrespondence()
		{
			tabRecipients().setVisible(false);
			tabCorrespondence().setVisible(true);
		}

		public tabRecipientsContainer tabRecipients()
		{
			return (tabRecipientsContainer)super.layers.get(0);
		}
		public tabCorrespondenceContainer tabCorrespondence()
		{
			return (tabCorrespondenceContainer)super.layers.get(1);
		}
	}
	private void validateContext(ims.framework.Context context)
	{
		if(context == null)
			return;
		if(!context.isValidContextType(ims.core.admin.pas.vo.PASEventRefVo.class))
			throw new ims.framework.exceptions.CodingRuntimeException("The type 'ims.core.admin.pas.vo.PASEventRefVo' of the global context variable 'Core.PasEvent' is not supported.");
		if(!context.isValidContextType(ims.core.vo.PatientShort.class))
			throw new ims.framework.exceptions.CodingRuntimeException("The type 'ims.core.vo.PatientShort' of the global context variable 'Core.PatientShort' is not supported.");
		if(!context.isValidContextType(ims.correspondence.vo.CorrespondenceDetailsRefVo.class))
			throw new ims.framework.exceptions.CodingRuntimeException("The type 'ims.correspondence.vo.CorrespondenceDetailsRefVo' of the global context variable 'Correspondence.CorrespondenceDetails' is not supported.");
	}
	private void validateMandatoryContext(Context context)
	{
		if(new ims.framework.ContextVariable("Core.PasEvent", "_cvp_Core.PasEvent").getValueIsNull(context))
			throw new ims.framework.exceptions.FormMandatoryContextMissingException("The required context data 'Core.PasEvent' is not available.");
		if(new ims.framework.ContextVariable("Core.PatientShort", "_cvp_Core.PatientShort").getValueIsNull(context))
			throw new ims.framework.exceptions.FormMandatoryContextMissingException("The required context data 'Core.PatientShort' is not available.");
		if(new ims.framework.ContextVariable("Correspondence.GenerateFormMode", "_cv_Correspondence.GenerateFormMode").getValueIsNull(context))
			throw new ims.framework.exceptions.FormMandatoryContextMissingException("The required context data 'Correspondence.GenerateFormMode' is not available.");
	}
	public boolean supportsRecordedInError()
	{
		return false;
	}
	public ims.vo.ValueObject getRecordedInErrorVo()
	{
		return null;
	}
	protected void setContext(FormLoader loader, Form form, ims.framework.interfaces.IAppForm appForm, UIFactory factory, Context context) throws Exception
	{
		setContext(loader, form, appForm, factory, context, Boolean.FALSE, new Integer(0), null, null, new Integer(0));
	}
	protected void setContext(FormLoader loader, Form form, ims.framework.interfaces.IAppForm appForm, UIFactory factory, Context context, Boolean skipContextValidation) throws Exception
	{
		setContext(loader, form, appForm, factory, context, skipContextValidation, new Integer(0), null, null, new Integer(0));
	}
	protected void setContext(FormLoader loader, Form form, ims.framework.interfaces.IAppForm appForm, UIFactory factory, ims.framework.Context context, Boolean skipContextValidation, Integer startControlID, ims.framework.utils.SizeInfo runtimeSize, ims.framework.Control control, Integer startTabIndex) throws Exception
	{
		if(loader == null); // this is to avoid eclipse warning only.
		if(factory == null); // this is to avoid eclipse warning only.
		if(runtimeSize == null); // this is to avoid eclipse warning only.
		if(appForm == null)
			throw new RuntimeException("Invalid application form");
		if(startControlID == null)
			throw new RuntimeException("Invalid startControlID");
		if(control == null); // this is to avoid eclipse warning only.
		if(startTabIndex == null)
			throw new RuntimeException("Invalid startTabIndex");
		this.context = context;
		this.componentIdentifier = startControlID.toString();
		this.formInfo = form.getFormInfo();
		this.globalContext = new GlobalContext(context);
	
		if(skipContextValidation == null || !skipContextValidation.booleanValue())
		{
			validateContext(context);
			validateMandatoryContext(context);
		}
	
		super.setContext(form);

		ims.framework.utils.SizeInfo designSize = new ims.framework.utils.SizeInfo(848, 632);
		if(runtimeSize == null)
			runtimeSize = designSize;
		form.setWidth(runtimeSize.getWidth());
		form.setHeight(runtimeSize.getHeight());
		super.setFormReferences(FormReferencesFlyweightFactory.getInstance().create(Forms.class));
		super.setImageReferences(ImageReferencesFlyweightFactory.getInstance().create(Images.class));
		super.setGlobalContext(ContextBridgeFlyweightFactory.getInstance().create(GlobalContextBridge.class, context, false));
		super.setLocalContext(new LocalContext(context, form.getFormInfo(), componentIdentifier));

		// Context Menus
		contextMenus = new ContextMenus();
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee = factory.createMenu(startControlID.intValue() + 1);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeADD_PATIENT_GPItem = factory.createMenuItem(startControlID.intValue() + 1, "Add Patients GP", true, false, new Integer(103128), true, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeADD_PATIENT_GPItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeADD_REFERRER_GPItem = factory.createMenuItem(startControlID.intValue() + 2, "Add Referrering GP", true, false, new Integer(103125), true, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeADD_REFERRER_GPItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeADD_PATIENTItem = factory.createMenuItem(startControlID.intValue() + 3, "Add Patient", true, false, new Integer(103123), true, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeADD_PATIENTItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeAddGpItem = factory.createMenuItem(startControlID.intValue() + 4, "Add GP", true, false, new Integer(103122), false, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeAddGpItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeAddNonGpItem = factory.createMenuItem(startControlID.intValue() + 5, "Add Support Professional", true, false, new Integer(103124), false, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeAddNonGpItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeRemoveRecipientItem = factory.createMenuItem(startControlID.intValue() + 6, "Remove Recipient", true, false, new Integer(102148), true, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeRemoveRecipientItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeMoveUpItem = factory.createMenuItem(startControlID.intValue() + 7, "Move Up", true, false, new Integer(102197), true, true);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeMoveUpItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeMoveDownItem = factory.createMenuItem(startControlID.intValue() + 8, "Move Down", true, false, new Integer(102198), true, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddresseeMoveDownItem);
		form.registerMenu(contextMenus.Correspondence.contextMenuCorrespondenceDetailsAddressee);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategories = factory.createMenu(startControlID.intValue() + 2);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesAddTextItem = factory.createMenuItem(startControlID.intValue() + 9, "Add / Update Header Text", true, false, new Integer(102179), false, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategories.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesAddTextItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesRemoveTextItem = factory.createMenuItem(startControlID.intValue() + 10, "Remove Header Text", true, false, new Integer(102148), true, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategories.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesRemoveTextItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesViewTextItem = factory.createMenuItem(startControlID.intValue() + 11, "View Header Text", true, false, new Integer(102202), true, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategories.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesViewTextItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesUpdateTextItem = factory.createMenuItem(startControlID.intValue() + 12, "Amend Header Text", true, false, null, true, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategories.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesUpdateTextItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesMoveUpItem = factory.createMenuItem(startControlID.intValue() + 13, "Move Up", true, false, new Integer(102197), true, true);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategories.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesMoveUpItem);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesMoveDownItem = factory.createMenuItem(startControlID.intValue() + 14, "Move Down", true, false, new Integer(102198), true, false);
		contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategories.add(contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategoriesMoveDownItem);
		form.registerMenu(contextMenus.Correspondence.contextMenuCorrespondenceDetailsCategories);


		// Panel Controls
		RuntimeAnchoring anchoringHelper29 = new RuntimeAnchoring(designSize, runtimeSize, 8, 0, 832, 16, ims.framework.enumerations.ControlAnchoring.TOPLEFTRIGHT);
		super.addControl(factory.getControl(Panel.class, new Object[] { control, new Integer(startControlID.intValue() + 1028), new Integer(anchoringHelper29.getX()), new Integer(anchoringHelper29.getY()), new Integer(anchoringHelper29.getWidth()), new Integer(anchoringHelper29.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFTRIGHT,"Correspondence Details", new Integer(1), ""}));

		// Layer Clasess
		lyrCorrespondenceDetailLayer m_lyrCorrespondenceDetailLayer = (lyrCorrespondenceDetailLayer)LayerFlyweightFactory.getInstance().createLayer(lyrCorrespondenceDetailLayer.class, this, factory);
		super.addLayer(m_lyrCorrespondenceDetailLayer);
		m_lyrCorrespondenceDetailLayer.setContext(form, appForm, control, loader, this.getImages(), contextMenus, startControlID, designSize, runtimeSize, startTabIndex, skipContextValidation);

		// Button Controls
		RuntimeAnchoring anchoringHelper30 = new RuntimeAnchoring(designSize, runtimeSize, 728, 368, 112, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1029), new Integer(anchoringHelper30.getX()), new Integer(anchoringHelper30.getY()), new Integer(anchoringHelper30.getWidth()), new Integer(anchoringHelper30.getHeight()), new Integer(startTabIndex.intValue() + 8), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, "  Preview", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper31 = new RuntimeAnchoring(designSize, runtimeSize, 728, 400, 112, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1030), new Integer(anchoringHelper31.getX()), new Integer(anchoringHelper31.getY()), new Integer(anchoringHelper31.getWidth()), new Integer(anchoringHelper31.getHeight()), new Integer(startTabIndex.intValue() + 18), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, " Status History", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper32 = new RuntimeAnchoring(designSize, runtimeSize, 728, 336, 112, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1031), new Integer(anchoringHelper32.getX()), new Integer(anchoringHelper32.getY()), new Integer(anchoringHelper32.getWidth()), new Integer(anchoringHelper32.getHeight()), new Integer(startTabIndex.intValue() + 17), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, "ResetTemplate", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper33 = new RuntimeAnchoring(designSize, runtimeSize, 728, 528, 112, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1032), new Integer(anchoringHelper33.getX()), new Integer(anchoringHelper33.getY()), new Integer(anchoringHelper33.getWidth()), new Integer(anchoringHelper33.getHeight()), new Integer(startTabIndex.intValue() + 14), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, "Edit", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper34 = new RuntimeAnchoring(designSize, runtimeSize, 728, 464, 112, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1033), new Integer(anchoringHelper34.getX()), new Integer(anchoringHelper34.getY()), new Integer(anchoringHelper34.getWidth()), new Integer(anchoringHelper34.getHeight()), new Integer(startTabIndex.intValue() + 12), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, " E-Mail Letter", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper35 = new RuntimeAnchoring(designSize, runtimeSize, 728, 432, 112, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1034), new Integer(anchoringHelper35.getX()), new Integer(anchoringHelper35.getY()), new Integer(anchoringHelper35.getWidth()), new Integer(anchoringHelper35.getHeight()), new Integer(startTabIndex.intValue() + 13), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, " Supplementary", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper36 = new RuntimeAnchoring(designSize, runtimeSize, 728, 592, 112, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1035), new Integer(anchoringHelper36.getX()), new Integer(anchoringHelper36.getY()), new Integer(anchoringHelper36.getWidth()), new Integer(anchoringHelper36.getHeight()), new Integer(startTabIndex.intValue() + 10), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, "Cancel", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper37 = new RuntimeAnchoring(designSize, runtimeSize, 728, 560, 112, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1036), new Integer(anchoringHelper37.getX()), new Integer(anchoringHelper37.getY()), new Integer(anchoringHelper37.getWidth()), new Integer(anchoringHelper37.getHeight()), new Integer(startTabIndex.intValue() + 9), ControlState.DISABLED, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, "Save", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper38 = new RuntimeAnchoring(designSize, runtimeSize, 728, 496, 112, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1037), new Integer(anchoringHelper38.getX()), new Integer(anchoringHelper38.getY()), new Integer(anchoringHelper38.getWidth()), new Integer(anchoringHelper38.getHeight()), new Integer(startTabIndex.intValue() + 11), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, "   Print", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
	}



	public Forms getForms()
	{
		return (Forms)super.getFormReferences();
	}

	public Images getImages()
	{
		return (Images)super.getImageReferences();
	}
	public Panel pnlTitle()
	{
		return (Panel)super.getControl(0);
	}
	public lyrCorrespondenceDetailLayer lyrCorrespondenceDetail()
	{
		return (lyrCorrespondenceDetailLayer)super.getLayer(0);
	}
	public Button btnPreview()
	{
		return (Button)super.getControl(3);
	}
	public Button btnDocStatHist()
	{
		return (Button)super.getControl(4);
	}
	public Button btnResetTemplate()
	{
		return (Button)super.getControl(5);
	}
	public Button btnUpdate()
	{
		return (Button)super.getControl(6);
	}
	public Button btnEMail()
	{
		return (Button)super.getControl(7);
	}
	public Button btnSupplementary()
	{
		return (Button)super.getControl(8);
	}
	public Button btnCancel()
	{
		return (Button)super.getControl(9);
	}
	public Button btnSave()
	{
		return (Button)super.getControl(10);
	}
	public Button btnPrintLetter()
	{
		return (Button)super.getControl(11);
	}

	public static class Forms implements java.io.Serializable
	{
		private static final long serialVersionUID = 1L;
		protected final class LocalFormName extends FormName
		{
			private static final long serialVersionUID = 1L;
		
			private LocalFormName(int name)
			{
				super(name);
			}
		}

		private Forms()
		{
			Correspondence = new CorrespondenceForms();
			Core = new CoreForms();
		}
		public final class CorrespondenceForms implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			private CorrespondenceForms()
			{
				TemplateSelect = new LocalFormName(111117);
				DocumentStatusDlg = new LocalFormName(111122);
				NonGPSelect = new LocalFormName(111118);
				HeaderComment = new LocalFormName(111110);
				PrintDishargeLetter = new LocalFormName(111120);
				GPDetails = new LocalFormName(111112);
				CorrespondencePreviewDlg = new LocalFormName(111124);
			}
			public final FormName TemplateSelect;
			public final FormName DocumentStatusDlg;
			public final FormName NonGPSelect;
			public final FormName HeaderComment;
			public final FormName PrintDishargeLetter;
			public final FormName GPDetails;
			public final FormName CorrespondencePreviewDlg;
		}
		public final class CoreForms implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			private CoreForms()
			{
				PatientSearch = new LocalFormName(102100);
				InpatientList = new LocalFormName(102200);
				Demographics = new LocalFormName(102101);
				GPSelection = new LocalFormName(102137);
			}
			public final FormName PatientSearch;
			public final FormName InpatientList;
			public final FormName Demographics;
			public final FormName GPSelection;
		}

		public CorrespondenceForms Correspondence;
		public CoreForms Core;
	}


	public static class Images implements java.io.Serializable
	{
		private static final long serialVersionUID = 1L;
		private final class ImageHelper extends ims.framework.utils.ImagePath
		{
			private static final long serialVersionUID = 1L;
			
			private ImageHelper(int id, String path, Integer width, Integer height)
			{
				super(id, path, width, height);
			}
		}
		private Images()
		{
			Core = new CoreImages();
			Correspondence = new CorrespondenceImages();
			Admin = new AdminImages();
			OCRR = new OCRRImages();
		}
		public final class CoreImages implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			private CoreImages()
			{
				Save = new ImageHelper(102199, "Images/Core/Save.gif", new Integer(18), new Integer(18));
				Remove = new ImageHelper(102300, "Images/Core/remove.gif", new Integer(16), new Integer(16));
				ZoomInDisabled16 = new ImageHelper(102159, "Images/Core/zoom_disabled.png", new Integer(16), new Integer(16));
				ZoomInEnabled16 = new ImageHelper(102158, "Images/Core/zoom.png", new Integer(16), new Integer(16));
				Update = new ImageHelper(102306, "Images/Core/update.gif", new Integer(16), new Integer(16));
				Memo = new ImageHelper(102136, "Images/Core/memo.GIF", new Integer(17), new Integer(17));
				Preview = new ImageHelper(102298, "Images/Core/Preview.gif", new Integer(16), new Integer(16));
			}
			public final ims.framework.utils.Image Save;
			public final ims.framework.utils.Image Remove;
			public final ims.framework.utils.Image ZoomInDisabled16;
			public final ims.framework.utils.Image ZoomInEnabled16;
			public final ims.framework.utils.Image Update;
			public final ims.framework.utils.Image Memo;
			public final ims.framework.utils.Image Preview;
		}
		public final class CorrespondenceImages implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			private CorrespondenceImages()
			{
				Printer = new ImageHelper(111101, "Images/Correspondence/Printer.gif", new Integer(16), new Integer(16));
				LetterDictated = new ImageHelper(111102, "Images/Correspondence/Message.gif", new Integer(16), new Integer(16));
				Contact = new ImageHelper(111105, "Images/Correspondence/Event.gif", new Integer(16), new Integer(16));
				Demographics = new ImageHelper(111106, "Images/Correspondence/ID Card.gif", new Integer(16), new Integer(16));
				Generated = new ImageHelper(111100, "Images/Correspondence/pdf.gif", new Integer(16), new Integer(16));
				LetterRequired = new ImageHelper(111108, "Images/Correspondence/new.gif", new Integer(16), new Integer(16));
				NoLetterDictated = new ImageHelper(111103, "Images/Correspondence/Message-Delete.gif", new Integer(16), new Integer(16));
				NoLetterRequired = new ImageHelper(111104, "Images/Correspondence/cancel.gif", new Integer(16), new Integer(16));
				Signed = new ImageHelper(111107, "Images/Correspondence/Pencil.gif", new Integer(16), new Integer(16));
				Supplementry = new ImageHelper(111109, "Images/Correspondence/Profile.gif", new Integer(16), new Integer(16));
			}
			public final ims.framework.utils.Image Printer;
			public final ims.framework.utils.Image LetterDictated;
			public final ims.framework.utils.Image Contact;
			public final ims.framework.utils.Image Demographics;
			public final ims.framework.utils.Image Generated;
			public final ims.framework.utils.Image LetterRequired;
			public final ims.framework.utils.Image NoLetterDictated;
			public final ims.framework.utils.Image NoLetterRequired;
			public final ims.framework.utils.Image Signed;
			public final ims.framework.utils.Image Supplementry;
		}
		public final class AdminImages implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			private AdminImages()
			{
				StaffYellow = new ImageHelper(103124, "Images/Admin/user_yellow.png", new Integer(16), new Integer(16));
				StaffBlue = new ImageHelper(103122, "Images/Admin/user_blue.png", new Integer(16), new Integer(16));
				StaffBlack = new ImageHelper(103128, "Images/Admin/user_black.png", new Integer(16), new Integer(16));
				StaffGreen = new ImageHelper(103123, "Images/Admin/user_green.png", new Integer(16), new Integer(16));
				StaffRed = new ImageHelper(103125, "Images/Admin/user_red.png", new Integer(16), new Integer(16));
				Edit = new ImageHelper(103102, "Images/Admin/edit.gif", new Integer(16), new Integer(16));
			}
			public final ims.framework.utils.Image StaffYellow;
			public final ims.framework.utils.Image StaffBlue;
			public final ims.framework.utils.Image StaffBlack;
			public final ims.framework.utils.Image StaffGreen;
			public final ims.framework.utils.Image StaffRed;
			public final ims.framework.utils.Image Edit;
		}
		public final class OCRRImages implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			private OCRRImages()
			{
				Reset = new ImageHelper(116109, "Images/OCRR/Reset.gif", new Integer(16), new Integer(16));
				Requested = new ImageHelper(116117, "Images/OCRR/EMail-Forward.gif", new Integer(16), new Integer(16));
			}
			public final ims.framework.utils.Image Reset;
			public final ims.framework.utils.Image Requested;
		}
		public final CoreImages Core;
		public final CorrespondenceImages Correspondence;
		public final AdminImages Admin;
		public final OCRRImages OCRR;
	}
	public GlobalContext getGlobalContext()
	{
		return this.globalContext;
	}
	public static class GlobalContextBridge extends ContextBridge
	{
		private static final long serialVersionUID = 1L;
	}
	public LocalContext getLocalContext()
	{
		return (LocalContext)super.getLocalCtx();
	}
	public class LocalContext extends ContextBridge
	{
		private static final long serialVersionUID = 1L;
		
		public LocalContext(Context context, ims.framework.FormInfo formInfo, String componentIdentifier)
		{
			super.setContext(context);
			String prefix = formInfo.getLocalVariablesPrefix();
			cxl_pasEventVo = new ims.framework.ContextVariable("pasEventVo", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__pasEventVo_" + componentIdentifier + "");
			cxl_ReferrerPractice = new ims.framework.ContextVariable("ReferrerPractice", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__ReferrerPractice_" + componentIdentifier + "");
			cxl_ReferrerGP = new ims.framework.ContextVariable("ReferrerGP", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__ReferrerGP_" + componentIdentifier + "");
			cxl_PatientGP = new ims.framework.ContextVariable("PatientGP", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGP_" + componentIdentifier + "");
			cxl_loggedInMos = new ims.framework.ContextVariable("loggedInMos", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__loggedInMos_" + componentIdentifier + "");
			cxl_supplementaryLetterClicked = new ims.framework.ContextVariable("supplementaryLetterClicked", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__supplementaryLetterClicked_" + componentIdentifier + "");
			cxl_LetterAsPdf = new ims.framework.ContextVariable("LetterAsPdf", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__LetterAsPdf_" + componentIdentifier + "");
			cxl_suplementryLetterVisible = new ims.framework.ContextVariable("suplementryLetterVisible", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__suplementryLetterVisible_" + componentIdentifier + "");
			cxl_lastDocumentStatus = new ims.framework.ContextVariable("lastDocumentStatus", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__lastDocumentStatus_" + componentIdentifier + "");
			cxl_LastDocGenerated = new ims.framework.ContextVariable("LastDocGenerated", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__LastDocGenerated_" + componentIdentifier + "");
			cxl_correspondenceDetails = new ims.framework.ContextVariable("correspondenceDetails", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__correspondenceDetails_" + componentIdentifier + "");
			cxl_PatientGPSurgery = new ims.framework.ContextVariable("PatientGPSurgery", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier + "");
			cxl_LastSignedBy = new ims.framework.ContextVariable("LastSignedBy", prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__LastSignedBy_" + componentIdentifier + "");
		}
		
		public boolean getpasEventVoIsNotNull()
		{
			return !cxl_pasEventVo.getValueIsNull(context);
		}
		public ims.core.vo.PasEventVo getpasEventVo()
		{
			return (ims.core.vo.PasEventVo)cxl_pasEventVo.getValue(context);
		}
		public void setpasEventVo(ims.core.vo.PasEventVo value)
		{
			cxl_pasEventVo.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_pasEventVo = null;
		public boolean getReferrerPracticeIsNotNull()
		{
			return !cxl_ReferrerPractice.getValueIsNull(context);
		}
		public ims.core.vo.LocSiteShortVo getReferrerPractice()
		{
			return (ims.core.vo.LocSiteShortVo)cxl_ReferrerPractice.getValue(context);
		}
		public void setReferrerPractice(ims.core.vo.LocSiteShortVo value)
		{
			cxl_ReferrerPractice.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_ReferrerPractice = null;
		public boolean getReferrerGPIsNotNull()
		{
			return !cxl_ReferrerGP.getValueIsNull(context);
		}
		public ims.core.vo.GpLiteVo getReferrerGP()
		{
			return (ims.core.vo.GpLiteVo)cxl_ReferrerGP.getValue(context);
		}
		public void setReferrerGP(ims.core.vo.GpLiteVo value)
		{
			cxl_ReferrerGP.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_ReferrerGP = null;
		public boolean getPatientGPIsNotNull()
		{
			return !cxl_PatientGP.getValueIsNull(context);
		}
		public ims.core.vo.GpShortVo getPatientGP()
		{
			return (ims.core.vo.GpShortVo)cxl_PatientGP.getValue(context);
		}
		public void setPatientGP(ims.core.vo.GpShortVo value)
		{
			cxl_PatientGP.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_PatientGP = null;
		public boolean getloggedInMosIsNotNull()
		{
			return !cxl_loggedInMos.getValueIsNull(context);
		}
		public ims.core.vo.MemberOfStaffShortVo getloggedInMos()
		{
			return (ims.core.vo.MemberOfStaffShortVo)cxl_loggedInMos.getValue(context);
		}
		public void setloggedInMos(ims.core.vo.MemberOfStaffShortVo value)
		{
			cxl_loggedInMos.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_loggedInMos = null;
		public boolean getsupplementaryLetterClickedIsNotNull()
		{
			return !cxl_supplementaryLetterClicked.getValueIsNull(context);
		}
		public Boolean getsupplementaryLetterClicked()
		{
			return (Boolean)cxl_supplementaryLetterClicked.getValue(context);
		}
		public void setsupplementaryLetterClicked(Boolean value)
		{
			cxl_supplementaryLetterClicked.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_supplementaryLetterClicked = null;
		public boolean getLetterAsPdfIsNotNull()
		{
			return !cxl_LetterAsPdf.getValueIsNull(context);
		}
		public byte[] getLetterAsPdf()
		{
			return (byte[])cxl_LetterAsPdf.getValue(context);
		}
		public void setLetterAsPdf(byte[] value)
		{
			cxl_LetterAsPdf.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_LetterAsPdf = null;
		public boolean getsuplementryLetterVisibleIsNotNull()
		{
			return !cxl_suplementryLetterVisible.getValueIsNull(context);
		}
		public Boolean getsuplementryLetterVisible()
		{
			return (Boolean)cxl_suplementryLetterVisible.getValue(context);
		}
		public void setsuplementryLetterVisible(Boolean value)
		{
			cxl_suplementryLetterVisible.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_suplementryLetterVisible = null;
		public boolean getlastDocumentStatusIsNotNull()
		{
			return !cxl_lastDocumentStatus.getValueIsNull(context);
		}
		public ims.core.vo.lookups.DocumentStatus getlastDocumentStatus()
		{
			return (ims.core.vo.lookups.DocumentStatus)cxl_lastDocumentStatus.getValue(context);
		}
		public void setlastDocumentStatus(ims.core.vo.lookups.DocumentStatus value)
		{
			cxl_lastDocumentStatus.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_lastDocumentStatus = null;
		public boolean getLastDocGeneratedIsNotNull()
		{
			return !cxl_LastDocGenerated.getValueIsNull(context);
		}
		public ims.core.vo.DocumentVo getLastDocGenerated()
		{
			return (ims.core.vo.DocumentVo)cxl_LastDocGenerated.getValue(context);
		}
		public void setLastDocGenerated(ims.core.vo.DocumentVo value)
		{
			cxl_LastDocGenerated.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_LastDocGenerated = null;
		public boolean getcorrespondenceDetailsIsNotNull()
		{
			return !cxl_correspondenceDetails.getValueIsNull(context);
		}
		public ims.correspondence.vo.CorrespondenceDetailsVo getcorrespondenceDetails()
		{
			return (ims.correspondence.vo.CorrespondenceDetailsVo)cxl_correspondenceDetails.getValue(context);
		}
		public void setcorrespondenceDetails(ims.correspondence.vo.CorrespondenceDetailsVo value)
		{
			cxl_correspondenceDetails.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_correspondenceDetails = null;
		public boolean getPatientGPSurgeryIsNotNull()
		{
			return !cxl_PatientGPSurgery.getValueIsNull(context);
		}
		public ims.core.vo.LocSiteShortVo getPatientGPSurgery()
		{
			return (ims.core.vo.LocSiteShortVo)cxl_PatientGPSurgery.getValue(context);
		}
		public void setPatientGPSurgery(ims.core.vo.LocSiteShortVo value)
		{
			cxl_PatientGPSurgery.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_PatientGPSurgery = null;
		public boolean getLastSignedByIsNotNull()
		{
			return !cxl_LastSignedBy.getValueIsNull(context);
		}
		public ims.core.vo.MedicLiteVo getLastSignedBy()
		{
			return (ims.core.vo.MedicLiteVo)cxl_LastSignedBy.getValue(context);
		}
		public void setLastSignedBy(ims.core.vo.MedicLiteVo value)
		{
			cxl_LastSignedBy.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_LastSignedBy = null;
	}

	public final class ContextMenus implements java.io.Serializable
	{
		private static final long serialVersionUID = 1L;
		public CorrespondenceNamespace Correspondence = new CorrespondenceNamespace();
		public final class CorrespondenceNamespace implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			public final class CorrespondenceDetailsAddressee implements java.io.Serializable
			{
				private static final long serialVersionUID = 1L;
				public static final int ADD_PATIENT_GP = 1;
				public static final int ADD_REFERRER_GP = 2;
				public static final int ADD_PATIENT = 3;
				public static final int AddGp = 4;
				public static final int AddNonGp = 5;
				public static final int RemoveRecipient = 6;
				public static final int MoveUp = 7;
				public static final int MoveDown = 8;
			}
			public void disableAllCorrespondenceDetailsAddresseeMenuItems()
			{
				this.contextMenuCorrespondenceDetailsAddresseeADD_PATIENT_GPItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsAddresseeADD_REFERRER_GPItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsAddresseeADD_PATIENTItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsAddresseeAddGpItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsAddresseeAddNonGpItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsAddresseeRemoveRecipientItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsAddresseeMoveUpItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsAddresseeMoveDownItem.setEnabled(false);
			}
			public void hideAllCorrespondenceDetailsAddresseeMenuItems()
			{
				this.contextMenuCorrespondenceDetailsAddresseeADD_PATIENT_GPItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsAddresseeADD_REFERRER_GPItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsAddresseeADD_PATIENTItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsAddresseeAddGpItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsAddresseeAddNonGpItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsAddresseeRemoveRecipientItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsAddresseeMoveUpItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsAddresseeMoveDownItem.setVisible(false);
			}
			private Menu contextMenuCorrespondenceDetailsAddressee;
			public MenuItem getCorrespondenceDetailsAddresseeADD_PATIENT_GPItem()
			{
				return this.contextMenuCorrespondenceDetailsAddresseeADD_PATIENT_GPItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsAddresseeADD_PATIENT_GPItem;
			public MenuItem getCorrespondenceDetailsAddresseeADD_REFERRER_GPItem()
			{
				return this.contextMenuCorrespondenceDetailsAddresseeADD_REFERRER_GPItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsAddresseeADD_REFERRER_GPItem;
			public ReadOnlyMenuItem getCorrespondenceDetailsAddresseeADD_PATIENTItem()
			{
				return this.contextMenuCorrespondenceDetailsAddresseeADD_PATIENTItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsAddresseeADD_PATIENTItem;
			public MenuItem getCorrespondenceDetailsAddresseeAddGpItem()
			{
				return this.contextMenuCorrespondenceDetailsAddresseeAddGpItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsAddresseeAddGpItem;
			public MenuItem getCorrespondenceDetailsAddresseeAddNonGpItem()
			{
				return this.contextMenuCorrespondenceDetailsAddresseeAddNonGpItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsAddresseeAddNonGpItem;
			public MenuItem getCorrespondenceDetailsAddresseeRemoveRecipientItem()
			{
				return this.contextMenuCorrespondenceDetailsAddresseeRemoveRecipientItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsAddresseeRemoveRecipientItem;
			public MenuItem getCorrespondenceDetailsAddresseeMoveUpItem()
			{
				return this.contextMenuCorrespondenceDetailsAddresseeMoveUpItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsAddresseeMoveUpItem;
			public MenuItem getCorrespondenceDetailsAddresseeMoveDownItem()
			{
				return this.contextMenuCorrespondenceDetailsAddresseeMoveDownItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsAddresseeMoveDownItem;
			public final class CorrespondenceDetailsCategories implements java.io.Serializable
			{
				private static final long serialVersionUID = 1L;
				public static final int AddText = 9;
				public static final int RemoveText = 10;
				public static final int ViewText = 11;
				public static final int UpdateText = 12;
				public static final int MoveUp = 13;
				public static final int MoveDown = 14;
			}
			public void disableAllCorrespondenceDetailsCategoriesMenuItems()
			{
				this.contextMenuCorrespondenceDetailsCategoriesAddTextItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsCategoriesRemoveTextItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsCategoriesViewTextItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsCategoriesUpdateTextItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsCategoriesMoveUpItem.setEnabled(false);
				this.contextMenuCorrespondenceDetailsCategoriesMoveDownItem.setEnabled(false);
			}
			public void hideAllCorrespondenceDetailsCategoriesMenuItems()
			{
				this.contextMenuCorrespondenceDetailsCategoriesAddTextItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsCategoriesRemoveTextItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsCategoriesViewTextItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsCategoriesUpdateTextItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsCategoriesMoveUpItem.setVisible(false);
				this.contextMenuCorrespondenceDetailsCategoriesMoveDownItem.setVisible(false);
			}
			private Menu contextMenuCorrespondenceDetailsCategories;
			public MenuItem getCorrespondenceDetailsCategoriesAddTextItem()
			{
				return this.contextMenuCorrespondenceDetailsCategoriesAddTextItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsCategoriesAddTextItem;
			public MenuItem getCorrespondenceDetailsCategoriesRemoveTextItem()
			{
				return this.contextMenuCorrespondenceDetailsCategoriesRemoveTextItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsCategoriesRemoveTextItem;
			public MenuItem getCorrespondenceDetailsCategoriesViewTextItem()
			{
				return this.contextMenuCorrespondenceDetailsCategoriesViewTextItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsCategoriesViewTextItem;
			public MenuItem getCorrespondenceDetailsCategoriesUpdateTextItem()
			{
				return this.contextMenuCorrespondenceDetailsCategoriesUpdateTextItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsCategoriesUpdateTextItem;
			public MenuItem getCorrespondenceDetailsCategoriesMoveUpItem()
			{
				return this.contextMenuCorrespondenceDetailsCategoriesMoveUpItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsCategoriesMoveUpItem;
			public MenuItem getCorrespondenceDetailsCategoriesMoveDownItem()
			{
				return this.contextMenuCorrespondenceDetailsCategoriesMoveDownItem;
			}
			private MenuItem contextMenuCorrespondenceDetailsCategoriesMoveDownItem;
		}
	}

	private ContextMenus contextMenus;
	public ContextMenus getContextMenus()
	{
		return this.contextMenus;
	}

	private IReportField[] getFormReportFields()
	{
		if(this.context == null)
			return null;
		if(this.reportFields == null)
			this.reportFields = new ReportFields(this.context, this.formInfo, this.componentIdentifier).getReportFields();
		return this.reportFields;
	}
	private class ReportFields
	{
		public ReportFields(Context context, ims.framework.FormInfo formInfo, String componentIdentifier)
		{
			this.context = context;
			this.formInfo = formInfo;
			this.componentIdentifier = componentIdentifier;
		}
		public IReportField[] getReportFields()
		{
			String prefix = formInfo.getLocalVariablesPrefix();
			IReportField[] fields = new IReportField[184];
			fields[0] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ID", "ID_Patient");
			fields[1] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-SEX", "Sex");
			fields[2] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-DOB", "Dob");
			fields[3] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-DOD", "Dod");
			fields[4] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-RELIGION", "Religion");
			fields[5] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ISACTIVE", "IsActive");
			fields[6] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ETHNICORIGIN", "EthnicOrigin");
			fields[7] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-MARITALSTATUS", "MaritalStatus");
			fields[8] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-SCN", "SCN");
			fields[9] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-SOURCEOFINFORMATION", "SourceOfInformation");
			fields[10] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-TIMEOFDEATH", "TimeOfDeath");
			fields[11] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ISQUICKREGISTRATIONPATIENT", "IsQuickRegistrationPatient");
			fields[12] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-CURRENTRESPONSIBLECONSULTANT", "CurrentResponsibleConsultant");
			fields[13] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-DEMENTIABREACHDATETIME", "DementiaBreachDateTime");
			fields[14] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-DEMENTIAWORKLISTSTATUS", "DementiaWorklistStatus");
			fields[15] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-MRNSTATUS", "MRNStatus");
			fields[16] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-HASSCANNEDCASENOTEFOLDERS", "HasScannedCaseNoteFolders");
			fields[17] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ISCONFIDENTIAL", "IsConfidential");
			fields[18] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-TIMEOFBIRTH", "TimeOfBirth");
			fields[19] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-PATIENTCATEGORY", "PatientCategory");
			fields[20] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientFilter", "BO-1001100000-ID", "ID_Patient");
			fields[21] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientFilter", "BO-1001100000-SEX", "Sex");
			fields[22] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientFilter", "BO-1001100000-DOB", "Dob");
			fields[23] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-ID", "ID_ClinicalContact");
			fields[24] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-SPECIALTY", "Specialty");
			fields[25] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-CONTACTTYPE", "ContactType");
			fields[26] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-STARTDATETIME", "StartDateTime");
			fields[27] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-ENDDATETIME", "EndDateTime");
			fields[28] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-CARECONTEXT", "CareContext");
			fields[29] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-ISCLINICALNOTECREATED", "IsClinicalNoteCreated");
			fields[30] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ID", "ID_Hcp");
			fields[31] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-HCPTYPE", "HcpType");
			fields[32] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ISACTIVE", "IsActive");
			fields[33] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ISHCPARESPONSIBLEHCP", "IsHCPaResponsibleHCP");
			fields[34] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ISARESPONSIBLEEDCLINICIAN", "IsAResponsibleEDClinician");
			fields[35] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ISHCPAENDOSCOPIST", "IsHCPaEndoscopist");
			fields[36] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-ID", "ID_CareContext");
			fields[37] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-CONTEXT", "Context");
			fields[38] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-ORDERINGHOSPITAL", "OrderingHospital");
			fields[39] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-ESTIMATEDDISCHARGEDATE", "EstimatedDischargeDate");
			fields[40] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-STARTDATETIME", "StartDateTime");
			fields[41] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-ENDDATETIME", "EndDateTime");
			fields[42] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-LOCATIONTYPE", "LocationType");
			fields[43] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-RESPONSIBLEHCP", "ResponsibleHCP");
			fields[44] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-ID", "ID_EpisodeOfCare");
			fields[45] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-CARESPELL", "CareSpell");
			fields[46] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-SPECIALTY", "Specialty");
			fields[47] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-RELATIONSHIP", "Relationship");
			fields[48] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-STARTDATE", "StartDate");
			fields[49] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-ENDDATE", "EndDate");
			fields[50] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-ID", "ID_ClinicalNotes");
			fields[51] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-CLINICALNOTE", "ClinicalNote");
			fields[52] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-NOTETYPE", "NoteType");
			fields[53] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-DISCIPLINE", "Discipline");
			fields[54] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-CLINICALCONTACT", "ClinicalContact");
			fields[55] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-ISDERIVEDNOTE", "IsDerivedNote");
			fields[56] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-FORREVIEW", "ForReview");
			fields[57] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-FORREVIEWDISCIPLINE", "ForReviewDiscipline");
			fields[58] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-REVIEWINGDATETIME", "ReviewingDateTime");
			fields[59] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-ISCORRECTED", "IsCorrected");
			fields[60] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-ISTRANSCRIBED", "IsTranscribed");
			fields[61] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-SOURCEOFNOTE", "SourceOfNote");
			fields[62] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-RECORDINGDATETIME", "RecordingDateTime");
			fields[63] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-INHOSPITALREPORT", "InHospitalReport");
			fields[64] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-CARECONTEXT", "CareContext");
			fields[65] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-NOTECLASSIFICATION", "NoteClassification");
			fields[66] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-ID", "ID_NAESReferral");
			fields[67] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-DATEREFERRALRECEIVED", "DateReferralReceived");
			fields[68] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-DATEOFSURGERY", "DateOfSurgery");
			fields[69] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-REFERRINGHOSPITAL", "ReferringHospital");
			fields[70] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-REFERRINGDOCTOR", "ReferringDoctor");
			fields[71] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-REFERRALREASON", "ReferralReason");
			fields[72] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-SECONDARYSURGERY", "SecondarySurgery");
			fields[73] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-UNDERLYINGREASON", "UnderlyingReason");
			fields[74] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-AFFECTEDEYE", "AffectedEye");
			fields[75] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-IMPLANT", "Implant");
			fields[76] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-IMPLANTTYPE", "ImplantType");
			fields[77] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-INTERPRETERREQUIRED", "InterpreterRequired");
			fields[78] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-LANGUAGE", "Language");
			fields[79] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-LANGUAGEIFOTHER", "LanguageIfOther");
			fields[80] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-REFERREDBY", "ReferredBy");
			fields[81] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-_6WEEKKPI", "SixWeekKPI");
			fields[82] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-_3WEEKKPI", "ThreeWeekKPI");
			fields[83] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-PREFERREDCLINIC", "PreferredClinic");
			fields[84] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-NOTES", "Notes");
			fields[85] = new ims.framework.ReportField(this.context, "_cvp_STHK.AvailableBedsListFilter", "BO-1014100009-ID", "ID_BedSpaceState");
			fields[86] = new ims.framework.ReportField(this.context, "_cvp_STHK.PendingEmergencyAdmissionsFilter", "BO-1014100011-ID", "ID_PendingEmergencyAdmission");
			fields[87] = new ims.framework.ReportField(this.context, "_cvp_STHK.PendingEmergencyAdmissionsFilter", "BO-1014100011-ADMISSIONSTATUS", "AdmissionStatus");
			fields[88] = new ims.framework.ReportField(this.context, "_cvp_STHK.PendingDischargesListFilter", "BO-1014100000-ID", "ID_InpatientEpisode");
			fields[89] = new ims.framework.ReportField(this.context, "_cvp_STHK.PendingDischargesListFilter", "BO-1014100000-ESTDISCHARGEDATE", "EstDischargeDate");
			fields[90] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-ID", "ID_ClinicalNotes");
			fields[91] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-FORREVIEW", "ForReview");
			fields[92] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-FORREVIEWDISCIPLINE", "ForReviewDiscipline");
			fields[93] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-NOTECLASSIFICATION", "NoteClassification");
			fields[94] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-CARECONTEXT", "CareContext");
			fields[95] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientClinicalNotesSearchCriteria", "BO-1011100000-ID", "ID_ClinicalNotes");
			fields[96] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientClinicalNotesSearchCriteria", "BO-1011100000-NOTETYPE", "NoteType");
			fields[97] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientClinicalNotesSearchCriteria", "BO-1011100000-FORREVIEW", "ForReview");
			fields[98] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientClinicalNotesSearchCriteria", "BO-1011100000-FORREVIEWDISCIPLINE", "ForReviewDiscipline");
			fields[99] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-ID", "ID_ObservationForm");
			fields[100] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-FORMTYPE", "FormType");
			fields[101] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-DETAILS", "Details");
			fields[102] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-DATETIMESTART", "DateTimeStart");
			fields[103] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-DATETIMESTOP", "DateTimeStop");
			fields[104] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-ISSTOPPED", "IsStopped");
			fields[105] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-CARECONTEXT", "CareContext");
			fields[106] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-CLINICALCONTACT", "ClinicalContact");
			fields[107] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesAdmSearchCriteia", "BO-1072100034-ID", "ID_MedicationOverview");
			fields[108] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesAdmSearchCriteia", "BO-1072100034-TYPE", "Type");
			fields[109] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesAdmSearchCriteia", "BO-1072100034-CARECONTEXT", "CareContext");
			fields[110] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesDisSearchCriteria", "BO-1072100034-ID", "ID_MedicationOverview");
			fields[111] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesDisSearchCriteria", "BO-1072100034-TYPE", "Type");
			fields[112] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesDisSearchCriteria", "BO-1072100034-CARECONTEXT", "CareContext");
			fields[113] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesOPDSearchCriteria", "BO-1072100034-ID", "ID_MedicationOverview");
			fields[114] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesOPDSearchCriteria", "BO-1072100034-TYPE", "Type");
			fields[115] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesOPDSearchCriteria", "BO-1072100034-CARECONTEXT", "CareContext");
			fields[116] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesPatSearchCriteria", "BO-1072100034-ID", "ID_MedicationOverview");
			fields[117] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesPatSearchCriteria", "BO-1072100034-TYPE", "Type");
			fields[118] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesPatSearchCriteria", "BO-1072100034-CARECONTEXT", "CareContext");
			fields[119] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-ID", "ID_Urinalysis");
			fields[120] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-NOABNORMALITYDETECTED", "NoAbnormalityDetected");
			fields[121] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-LEUCOCYTES", "Leucocytes");
			fields[122] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-PROTEIN", "Protein");
			fields[123] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-BLOOD", "Blood");
			fields[124] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-KETONES", "Ketones");
			fields[125] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-ASCORBICACID", "AscorbicAcid");
			fields[126] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-GLUCOSE", "Glucose");
			fields[127] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-BILIRUBIN", "Bilirubin");
			fields[128] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-UROBILINOGEN", "Urobilinogen");
			fields[129] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-NITRATE", "Nitrate");
			fields[130] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-PH", "PH");
			fields[131] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-SPECIFICGRAVITY", "SpecificGravity");
			fields[132] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-NOSAMPLE", "NoSample");
			fields[133] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-ISACTIVE", "IsActive");
			fields[134] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-CARECONTEXT", "CareContext");
			fields[135] = new ims.framework.ReportField(this.context, "_cvp_Core.PDSPatientFilterSearchCriteria", "BO-1001100000-ID", "ID_Patient");
			fields[136] = new ims.framework.ReportField(this.context, "_cvp_Core.PDSPatientFilterSearchCriteria", "BO-1001100000-SEX", "Sex");
			fields[137] = new ims.framework.ReportField(this.context, "_cvp_Core.PDSPatientFilterSearchCriteria", "BO-1001100000-DOB", "Dob");
			fields[138] = new ims.framework.ReportField(this.context, "_cvp_Core.LocalPatientFilterSearchCriteria", "BO-1001100000-ID", "ID_Patient");
			fields[139] = new ims.framework.ReportField(this.context, "_cvp_Core.LocalPatientFilterSearchCriteria", "BO-1001100000-SEX", "Sex");
			fields[140] = new ims.framework.ReportField(this.context, "_cvp_Core.LocalPatientFilterSearchCriteria", "BO-1001100000-DOB", "Dob");
			fields[141] = new ims.framework.ReportField(this.context, "_cvp_Core.PasEvent", "BO-1014100003-ID", "ID_PASEvent");
			fields[142] = new ims.framework.ReportField(this.context, "_cvp_Correspondence.CorrespondenceDetails", "BO-1052100001-ID", "ID_CorrespondenceDetails");
			fields[143] = new ims.framework.ReportField(this.context, "_cvp_RefMan.CatsReferral", "BO-1004100035-ID", "ID_CatsReferral");
			fields[144] = new ims.framework.ReportField(this.context, "_cv_Correspondence.ReportTemplate", "BO-1004100008-ID", "ID_TemplateBo");
			fields[145] = new ims.framework.ReportField(this.context, "_cv_Correspondence.ReportTemplate", "BO-1004100008-TEMPLATEXML", "TemplateXml");
			fields[146] = new ims.framework.ReportField(this.context, "_cv_Correspondence.ReportTemplate", "BO-1004100008-NAME", "Name");
			fields[147] = new ims.framework.ReportField(this.context, "_cv_Correspondence.ReportTemplate", "BO-1004100008-DESCRIPTION", "Description");
			fields[148] = new ims.framework.ReportField(this.context, "_cv_Correspondence.ReportTemplate", "BO-1004100008-ISACTIVE", "IsActive");
			fields[149] = new ims.framework.ReportField(this.context, "_cv_Correspondence.ExternalPerson", "BO-1002100006-ID", "ID_ExternalPerson");
			fields[150] = new ims.framework.ReportField(this.context, "_cv_Correspondence.ExternalPerson", "BO-1002100006-ISACTIVE", "IsActive");
			fields[151] = new ims.framework.ReportField(this.context, "_cv_Correspondence.DocCategory", "BO-1052100002-ID", "ID_CategoryNotes");
			fields[152] = new ims.framework.ReportField(this.context, "_cv_Correspondence.DocCategory", "BO-1052100002-CATEGORY", "Category");
			fields[153] = new ims.framework.ReportField(this.context, "_cv_Correspondence.DocCategory", "BO-1052100002-CATEGORYTEXT", "CategoryText");
			fields[154] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-ID", "ID_Location");
			fields[155] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-NAME", "Name");
			fields[156] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-ISACTIVE", "IsActive");
			fields[157] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-ISVIRTUAL", "IsVirtual");
			fields[158] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-TYPE", "Type");
			fields[159] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-DISPLAYINEDTRACKING", "DisplayInEDTracking");
			fields[160] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-CASENOTEFOLDERLOCATION", "CaseNoteFolderLocation");
			fields[161] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-SECUREACCOMMODATION", "SecureAccommodation");
			fields[162] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-TREATINGHOSP", "TreatingHosp");
			fields[163] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100007-REFERRINGHOSPITAL", "ReferringHospital");
			fields[164] = new ims.framework.ReportField(this.context, "_cv_Core.GPSurgery", "BO-1007100002-ALLSECUREACCOMMODATION", "AllSecureAccommodation");
			fields[165] = new ims.framework.ReportField(this.context, "_cv_Core.GPDetails", "BO-1006100001-ID", "ID_Gp");
			fields[166] = new ims.framework.ReportField(this.context, "_cv_Core.GPDetails", "BO-1006100001-STATUS", "Status");
			fields[167] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-ID", "ID_Location");
			fields[168] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-NAME", "Name");
			fields[169] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-ISACTIVE", "IsActive");
			fields[170] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-ISVIRTUAL", "IsVirtual");
			fields[171] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-TYPE", "Type");
			fields[172] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-DISPLAYINEDTRACKING", "DisplayInEDTracking");
			fields[173] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-CASENOTEFOLDERLOCATION", "CaseNoteFolderLocation");
			fields[174] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-SECUREACCOMMODATION", "SecureAccommodation");
			fields[175] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-TREATINGHOSP", "TreatingHosp");
			fields[176] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100007-REFERRINGHOSPITAL", "ReferringHospital");
			fields[177] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__PatientGPSurgery_" + componentIdentifier, "BO-1007100002-ALLSECUREACCOMMODATION", "AllSecureAccommodation");
			fields[178] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__LastSignedBy_" + componentIdentifier, "BO-1006100004-ID", "ID_Medic");
			fields[179] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__LastSignedBy_" + componentIdentifier, "BO-1006100004-ISACTIVE", "IsActive");
			fields[180] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__LastSignedBy_" + componentIdentifier, "BO-1006100004-ISHCPARESPONSIBLEHCP", "IsHCPaResponsibleHCP");
			fields[181] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__LastSignedBy_" + componentIdentifier, "BO-1006100004-ISARESPONSIBLEEDCLINICIAN", "IsAResponsibleEDClinician");
			fields[182] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__LastSignedBy_" + componentIdentifier, "BO-1006100004-ISHCPAENDOSCOPIST", "IsHCPaEndoscopist");
			fields[183] = new ims.framework.ReportField(this.context, prefix + "_lv_Correspondence.CorrespondenceDetail.__internal_x_context__LastSignedBy_" + componentIdentifier, "BO-1006100004-SPECIALTY", "Specialty");
			return fields;
		}
		protected Context context = null;
		protected ims.framework.FormInfo formInfo;
		protected String componentIdentifier;
	}
	public String getUniqueIdentifier()
	{
		return null;
	}
	private Context context = null;
	private ims.framework.FormInfo formInfo = null;
	private String componentIdentifier;
	private GlobalContext globalContext = null;
	private IReportField[] reportFields = null;
}
