You are on page 1of 1667

 var TelespaceDescriptor = TelespaceDescriptorEnum.

OpenNext();
var Disp
layName = TelespaceDescriptor.DisplayName;
var Inde
x;
if (Tele
spaceDescriptor.CanonicalURL == ThisTelespaceURL)
{
DisplayName = g_THIS_SPACE;
Index = LookupTelespaceComboBox.InsertItem(0, DisplayName);
LookupTelespaceComboBox.SetSelectionByIndex(Index);
}
else
Index = LookupTelespaceComboBox.AddItem(DisplayName);
LookupTe
lespaceComboBox.SetItemData(Index, TelespaceDescriptor);
}
LookupToolComboB
ox.ResetContent();
TelespaceDescrip
torEnum = null;
delete Telespace
DescriptorEnum;
CollectGarbage()
;
}

function LookupTelespace
ComboBox_OnSelectionChange(i_Name, i_Item)
{
LookupToolComboB
ox.ResetContent();
}
// Tool ComboBox
function LookupToolCombo
Box_OnDropDown(i_Name)
{
LookupToolComboB
ox.ResetContent();
var TelespaceInd
ex = LookupTelespaceComboBox.GetSelectionIndex();
var TelespaceDes
criptor = LookupTelespaceComboBox.GetItemData(TelespaceIndex);
var ToolsEnum;
if (g_IsRefresh)
ToolsEnu
m = g_CallbackCode.GetToolsListByTemplateName(TelespaceDescriptor);
else
ToolsEnu
m = g_CallbackCode.GetToolsListByVersion(TelespaceDescriptor, g_CallbackCode.Too
lVersion);
var ThisToolName
= PropertyList.OpenProperty(PROPERTY_TOOL_DISPLAY_NAME);
var ThisTool = P
ropertyList.OpenProperty(PROPERTY_TOOL);
var ThisToolCano
nicalURL = ThisTool.CanonicalURL;
while (ToolsEnum
!= null && ToolsEnum.HasMore())
{
var Tool
Pair = ToolsEnum.OpenNextPair();
var Tool
Name = ToolPair.First;
var Tool
Descriptor = ToolPair.Second;
var Tool
Index;
if (Tool
Name == ThisToolName && ThisToolCanonicalURL == ToolDescriptor.CanonicalURL)
{
// Don't show the current tool in the list.
continue;
}
else
ToolIndex = LookupToolComboBox.AddItem(ToolName);
LookupTo
olComboBox.SetItemData(ToolIndex, ToolDescriptor);
}
TelespaceDescrip
tor = null;
delete Telespace
Descriptor;
ToolsEnum = null
;
delete ToolsEnum
;
CollectGarbage()
;
}
function GetHelpProvider
()
{
try
{
var RTFH
elpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCo
mponentByName("RTFHelpProvider");
return R
TFHelpProvider;
}
catch(error)
{
}
finally
{
RTFHelpP
rovider = null;
delete R
TFHelpProvider;
CollectG
arbage();
}
}
c urn:groove.net:Component Name.LookupTeles
eCheckBox  urn:groove.net:ComponentResourced urn:groove.net:PropertyListod  urn:groove.net:C
mponentResourcec URL(http://components.groove.net/Groove/Components/Root.osd?Package=n
et.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=But
ton  urn:groove.net:PropertyListc StyleCheckbox: LabelAllow looking up values in another w
Note: All users are required to be members of the selected workspace.Checkbox
 Truea  _
_Version4,1,0,0  m ,% urn:groove.net:Component Name(PropertyLookupLayoutpo  urn:groove.ne
ce& urn:groove.net:PropertyList &  urn:groove.net:ComponentResource% URL:http://components.g
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList%  _
_Version
ROW ROW 4,1ROW
,0,0 ROW
 _G_Layout
 ROW ROW
 Layout
 ROW CROW
 Layout
 ROW  urn:groove.net:PropertyValue
ROW ROW ROW ROWB ROW CELL E urn:groove.net:P
 CELL CELLp
ypeKeyRadioButton( ROW CELL  CELL NAMECrossSpace <  BottomPad3 HEIGHT43ts Lookup
3ty LookupTelespaceLabelM CELL  BottomPad3 LookupTelespaceComboBox5 ROW CELL CELL
ottomPad3 LookupToolComboBox5 ROW CELL CELLp CELL  BottomPad3 WIDTH80 HEIGHT23ty Lookup
ColumnKeyViewContainerCellt HEIGHT69g LookupColumnKeyViewContainer5 ROW CELL CELLr CELL
umnLabelJ CELL  BottomPad3 LookupColumnComboBoxB ROW CELL CELL CELLx CELL
DTH50g LookupReturnAllRadioButtonh CELL  BottomPad3 WIDTH150 LookupReturnUniqueRadioB
DTH80 HEIGHT23tyK CELL  BottomPad3 LookupNoCacheCheckBox5 ROW CELL CELLF CELL
cludeURLsCheckBox( ROW CELLC CELL HEIGHT18t
 CommentLabel(
LookupCommentB ROW
ROW  CELL
CELL  CELL
 CELL CELL
 NAMECoCELL
mmentHEIGHT
 CELL5RightPad
0g 5 HEIGHT
 BottomPad23ty3TopPad
 RightPad5 NAME
5 Left
entResourcej urn:groove.net:PropertyListoj  urn:groove.net:ComponentResourcei URL(http://com
nts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponen
ts.GrooveCommonComponents_DLL&Version=0&Factory=StaticG urn:groove.net:PropertyListi
 VAlignment
Centerb Label
Space:ne  FontStyleLabelText  __Version4,1,0,0o urn:groove.net:Component Name.Lo
lespaceComboBox  urn:groove.net:ComponentResourcep urn:groove.net:PropertyListsp  urn:groove
net:ComponentResourceo URL,http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=ComboBox   urn:groove.net:PropertyListo SorttrueBu Enable
false  __Version4,1,0,0t urn:groove.net:Component NameLookupToolLabel  urn:groove.net:Com
urceu urn:groove.net:PropertyListou  urn:groove.net:ComponentResourcet URL(http://components
ove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groo
veCommonComponents_DLL&Version=0&Factory=StaticG urn:groove.net:PropertyListt
 VAlignment
Centerb Label
Tool:  FontStyleLabelText  __Version4,1,0,0  urn:groove.net:Component NameLookupViewL
oove.net:ComponentResource  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource
//components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.Too
lComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticG urn:groove.net:Proper
tyList 
 VAlignment
Centerb Label
View:  FontStyleLabelText  __Version4,1,0,0  urn:groove.net:Component Name8LookupColu
wContainer y  urn:groove.net:ComponentResource # urn:groove.net:ComponentConnections {   urn:
.net:ComponentResource  URL6http://components.groove.net/Groove/Components/Root.osd?Pack
age=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factor
y=ViewContainer] # urn:groove.net:ComponentConnections  urn:groove.net:Connection    urn:groo
nection  Name*LookupColumnKeyLayout
 ConnectionID0 . D    x      urn:groove.net:Component Name*LookupColumnKeyLayout  ur
opertyList    urn:groove.net:ComponentResource  URL:http://components.groove.net/Groove/Comp
/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ve
rsion=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList   __Version4,1,0,0  _G_L
tC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  DMULTIROW

belM CELL  BottomPad3 LookupKeyColumnComboBox5 ROW CELL CELLt CELL  BottomPad3 W
upKeyValueComboBox( ROW CELL   CELL  BottomPad3 LeftPad80 HEIGHT23ty! LookupKeyValueIsFie
nent Name(LookupKeyColumnLabelte  urn:groove.net:ComponentResource  urn:groove.net:PropertyLi
groove.net:ComponentResource  URL(http://components.groove.net/Groove/Components/Root.os
d?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&
Factory=StaticG urn:groove.net:PropertyList 
 VAlignment
Centerb LabelKey Column:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:C
okupKeyValueLabel  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groo
t:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Package
=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=S
taticG urn:groove.net:PropertyList
 VAlignment
Centerb LabelKey Value:er  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:C
okupKeyValueIsFieldNameCheckBox  urn:groove.net:ComponentResource urn:groove.net:Propert
yListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=Button urn:groove.net:PropertyList StyleCheckbox: Label2Key value is a field
kbox Truea  __Version4,1,0,0           urn:groove.net:Component Name,LookupKeyValu
ource urn:groove.net:PropertyLists  urn:groove.net:ComponentResource URL,http://component
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=ComboBox y urn:groove.net:PropertyList TooltipEither e
a key value to perform the lookup on, or choose a field to get the key value fro
m.  __Version4,1,0,0 TabStopTruea MultiSelect
FalseEditable
 Truea urn:groove.net:Component Name"LookupColumnLabel  urn:groove.net:Componen
roove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=StaticG urn:groove.net:PropertyList
 VAlignment
Centerb LabelLookup Column:"G  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:C
ponent Name.LookupReturnChoiceLabel  urn:groove.net:ComponentResource urn:groove.net:Propert
isto  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/R
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=StaticG urn:groove.net:PropertyList
 VAlignment
Centerb LabelReturn:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component
okupReturnAllRadioButton  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  ur
oove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=Button urn:groove.net:PropertyList StyleRadiobutton LabelAll RadiobuttonTruea  __Ve
.net:Component Name*LookupNoCacheCheckBox  urn:groove.net:ComponentResource urn:groove.net:P
pertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Compon
s/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&V
ersion=0&Factory=Button urn:groove.net:PropertyList StyleCheckbox: LabelNo Cache
ea  __Version4,1,0,0<    T      8 urn:groove.net:Component Name:LookupReturnUn
ource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=Button urn:groove.net:PropertyList StyleRadiobutton La
Unique1" RadiobuttonTruea  __Version4,1,0,0 urn:groove.net:Component Name2LookupIncl
n:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResour
e URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button urn:groove.net:Prope
rtyList StyleCheckbox: Label:Return URLs as well as valuesCheckbox  Truea  __Version4,1,0,0
.net:Component Name"LookupClearButton  urn:groove.net:ComponentResource urn:groove.net:Prope
yListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=Button urn:groove.net:PropertyList StyleSmallTextButton LabelClear Propertyoo
,1,0,0 urn:groove.net:Component Name"LookupApplyButton  urn:groove.net:ComponentResource
:PropertyList o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Com
nents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_D
LL&Version=0&Factory=Buttonurn:groove.net:PropertyList
  StyleSmallTextButton LabelApply Pro
_Version4,1,0,0 urn:groove.net:Component NameCommentLabelti  urn:groove.net:ComponentResou
net:PropertyList o  urn:groove.net:ComponentResource URL(http://components.groove.ne
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=StaticG  urn:groove.net:PropertyList  BreakTypeSin
e  FontStyleLabelText LabelComment:W>  __Version4,1,0,0  t        urn:groo
omponentResource urn:groove.net:PropertyList
k  urn:groove.net:ComponentResource URL$http://components.groove.net/Groove/Components/Root
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&Factory=Edit</v
 urn:groove.net:PropertyList  __Version4,1,0,0_G_Style   StyleB Style
 urn:groove.net:PropertyValue
l
 urn:groove.net:Item
urn:groove.net:PropertyValue
urn:groove.net:Item d  urn:groove.net:Item
 ValuetrueBu NameMultilinet urn:groove.net:Item
 ValuetrueBu Name"VerticalScrollbar urn:groove.net:Component Name2PropertySubPropertyLayout
:ComponentResource urn:groove.net:PropertyList   urn:groove.net:ComponentResource URL:http://
nts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponen
ts.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:Prop
ertyList  __Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValu
eMULTIROW
 hMULTIROW
  ROW ROW ROW ROW ROW! ROW#5 ROW CELL CELLr CELL  BottomPad5 HEIGHT27p
TH75d StoredValueLabelw CELL TabOrder  1  BottomPad5RightPad  5 PropertyValueEditControl2  CELL R
bOrder1 WIDTH23ty AddOptionButton  CELL TabOrder  1  BottomPad7 TopPad2 WIDTH18t CancelOp
aultButton WIDTH125 DefaultOptionButton  CELL TabOrder  1RightPad
 5 HEIGHT18t WIDTH65St ModifyOpt
OptionButton( ROW CELL    CELL TabOrder  1 TopPad5 WIDTH100%C HEIGHT130 ChoicesListViewViewContai
stButton(# ROW CELL$O$ CELL# TopPad10t PropertyDescriptionLabel
  @ urn:groove.net:Component Name8ChoicesListViewViewContainer   urn:groove.net:Component
net:ComponentConnections{  urn:groove.net:ComponentResource URL6http://components.groove.net/
roove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonC
omponents_DLL&Version=0&Factory=ViewContainer]# urn:groove.net:ComponentConnections urn:gr
oove.net:Connection  urn:groove.net:Connection Name*ChoicesListViewLayout
ConnectionID
urn:groove.net:Component
0  Name*ChoicesListViewLayout  urn:groove.net:ComponentResource urn:g
t:PropertyList%   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Co
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=HTMLTableLayoutx% urn:groove.net:PropertyList  __Version4,1,0,0
G_Layout Layout&C& Layout% urn:groove.net:PropertyValue'B' urn:groove.net:PropertyValue& TABL
AN3 HEIGHT100%C ChoicesListViewg+ TD)  BottomPad5 WIDTH18t HEIGHT23ty UpButton%  , TR( TD-T- T
 DownButton%. TR( TD// TD.* urn:groove.net:Component Name"DisplayValueLabel  urn:groove.net
ve.net:PropertyList0o+  urn:groove.net:ComponentResource* URL(http://components.groove.net/
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=StaticG0 urn:groove.net:PropertyList*  __Version4,1,0,0 Lab
lDisplay Value:am
 VAlignment
Centerb  FontStyleLabelText  BreakTypeSingleLine1 urn:groove.net:Component Name StoredV
belt  urn:groove.net:ComponentResource2 urn:groove.net:PropertyList1o2  urn:groove.net:Compo
nentResource1 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.
groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static
G1 urn:groove.net:PropertyList1  __Version4,1,0,0 LabelStored Value:
 VAlignment
Centerb  FontStyleLabelText  BreakTypeSingleLine  8   5  . 8 urn:groove.net:Componen
net:ComponentResource9 urn:groove.net:PropertyList2o9  urn:groove.net:ComponentResource8 URL(
tp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.
ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button2 urn:groove.net:Prope
rtyList8  __Version4,1,0,0
 ImageWidth16=" StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16="
 ImageIndex89EA urn:groove.net:Component Name$CancelOptionButton  urn:groove.net:ComponentR
groove.net:PropertyList3oB  urn:groove.net:ComponentResourceA URL(http://components.groove.
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=Button3 urn:groove.net:PropertyListA  __Version4,1
 ImageWidth16=" StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16="
 ImageIndex90dJ urn:groove.net:Component Name&DefaultOptionButton  urn:groove.net:Component
:groove.net:PropertyList4oK  urn:groove.net:ComponentResourceJ URL(http://components.groove
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=Button4 urn:groove.net:PropertyListJ StyleSmallTextBu
on Label"Select by default  __Version4,1,0,0O urn:groove.net:Component Name$ModifyOpti
oove.net:ComponentResourceP urn:groove.net:PropertyList5oP  urn:groove.net:ComponentResou
rceO URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button 5 urn:groove.net
:PropertyListO StyleSmallTextButton Label
Modify  __Version4,1,0,0  @   <  4 T urn:groove.net:Component Name$RemoveOptionButton
urceU urn:groove.net:PropertyList6oU  urn:groove.net:ComponentResourceT URL(http://components
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=Button 6 urn:groove.net:PropertyListT StyleSmallT
tButton Label
Deletei  __Version4,1,0,0Y urn:groove.net:Component NameSortListButtona  urn:groove.net:Com
urceZ urn:groove.net:PropertyList7oZ  urn:groove.net:ComponentResourceY URL(http://components
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=Button 7 urn:groove.net:PropertyListY StyleSmallT
tButton LabelSorthe  __Version4,1,0,0^ urn:groove.net:Component NameChoicesListView  urn
nentResource_ urn:groove.net:PropertyList8s_  urn:groove.net:ComponentResource^ URL,http://co
onents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompo
nents.GrooveCommonComponents_DLL&Version=0&Factory=ListVieww08 urn:groove.net:Propert
yList^ MSCCWorkaroundColor#FFFFFF SingleSelectiontrueBu  __Version4,1,0,0
 _G_Columns Columns9D9 Columns8 urn:groove.net:PropertyValue: :  urn:groove.net:PropertyValue9
olumn; urn:groove.net:Column< urn:groove.net:Column=o; urn:groove.net:Column: Width15 Name
eft/c <  urn:groove.net:Column: Width110 NameDisplay Value  AlignmentLeft/c =  urn:groove.
h110 Name  Alignment
Stored VLaelfute/>c h urn:groove.net:Component NameUpButtonw  urn:groove.net:ComponentRe
roove.net:PropertyList>oi  urn:groove.net:ComponentResourceh URL(http://components.groove.n
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=Button[> urn:groove.net:PropertyListh Tooltip6  Move up th
e selected option  __Version4,1,0,0 StyleSmallIconButton
 ImageWidth16="
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex39ve ImageHeight16="h o  ; h    r urn:groove.net:Component NameDownButton
esources urn:groove.net:PropertyList?os  urn:groove.net:ComponentResourcer URL(http://compone
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=Button_? urn:groove.net:PropertyListr Tooltip:  
Move down the selected option  __Version4,1,0,0 StyleSmallIconButton
 ImageWidth16="
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex40 ImageHeight16="| urn:groove.net:Component  Name2PropertySubPropertyLayout  ur
omponentResource} urn:groove.net:PropertyList }  urn:groove.net:ComponentResource| URL:http:
onents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompo
nents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:Pr
opertyList|  __Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyV
rtyValue MULTIROW
 hMULTIROW
  ROW ROW ROW ROW ROW ROW5 ROW CELL CELLr CELL  Bott
IGHT27pe WIDTH75d StoredValueLabelw CELL TabOrder  1  BottomPad5RightPad
 5 PropertyValueEdi
ottomPad7TabOrder 1 WIDTH23ty AddOptionButton  CELL TabOrder  1  BottomPad7 TopPad2 WIDTH18t
rder1 NAMEDefaultButton WIDTH125 DefaultOptionButton  CELL TabOrder  1RightPad
 5 HEIGHT18t WIDT
8t WIDTH60 RemoveOptionButton( ROW CELL  CELL TabOrder  1 TopPad5 WIDTH100%C HEIGHT130 Choic
tton( ROW CELLO CELL TopPad10t PropertyDescriptionLabel@
 w @  urn:groove.net:Component  Name8ChoicesListViewViewContainer   urn:groove.net:Compon
e.net:ComponentConnections {   urn:groove.net:ComponentResource  URL6http://components.groove
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=ViewContainer] # urn:groove.net:ComponentConnection
s  urn:groove.net:Connection    urn:groove.net:Connection  Name*ChoicesListViewLayout
ConnectionID
 urn:groove.net:Component
0  Name*ChoicesListViewLayout  urn:groove.net:ComponentResource  ur
t:PropertyList    urn:groove.net:ComponentResource  URL:http://components.groove.net/Groove/
ents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DL
L&Version=0&Factory=HTMLTableLayoutx urn:groove.net:PropertyList   __Version4,1,0,0
G_Layout LayoutC Layout urn:groove.net:PropertyValueB urn:groove.net:PropertyValue TABL
T23ty UpButton%
  TR TDT TD WIDTH18t HEIGHT18t
 DownButton% TR TD TD urn:groove.net:Component  Name"DisplayValueLabel  urn:groove.ne
yListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Component
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=StaticG urn:groove.net:PropertyList  __Version4,1,0,0 LabelDisplay Value:
 VAlignment
Centerb  FontStyleLabelText  BreakTypeSingleLine urn:groove.net:Component  Name Stored
lt  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:Componen
urce URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gro
ove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticG urn:groove.net
:PropertyList  __Version4,1,0,0 LabelStored Value:
 VAlignment
Centerb  FontStyleLabelText  BreakTypeSingleLine  8   5  .  urn:groove.net:Componen
t:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(ht
nents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompon
ents.GrooveCommonComponents_DLL&Version=0&Factory=Button urn:groove.net:PropertyList  _
_Version4,1,0,0
 ImageWidth16=" StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16="
 ImageIndex89E urn:groove.net:Component  Name$CancelOptionButton  urn:groove.net:Component
ve.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Gr
/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompon
ents_DLL&Version=0&Factory=Button urn:groove.net:PropertyList  __Version4,1,0,0
 ImageWidth16=" StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16="
 ImageIndex90d urn:groove.net:Component  Name&DefaultOptionButton  urn:groove.net:Componen
ove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/G
e/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompo
nents_DLL&Version=0&Factory=Button urn:groove.net:PropertyList StyleSmallTextButton Label
y default  __Version4,1,0,0 urn:groove.net:Component  Name$ModifyOptionButtone  urn:
omponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http:
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=Button  urn:groove.net:PropertyList StyleSm
tButton Label
Modify  __Version4,1,0,0  @   <  4  urn:groove.net:Component  Name$RemoveOptionButto
ce urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.g
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=Button  urn:groove.net:PropertyList StyleSmallTextButton
Deletei  __Version4,1,0,0 urn:groove.net:Component  NameSortListButtona  urn:groove.net:Co
ce urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.g
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=Button  urn:groove.net:PropertyList StyleSmallTextButton
e  __Version4,1,0,0 urn:groove.net:Component  NameChoicesListView  urn:groove.net:Com
ce urn:groove.net:PropertyLists  urn:groove.net:ComponentResource URL,http://components.g
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=ListVieww0 urn:groove.net:PropertyList MSCCWorkaroundColo
FFFFF SingleSelectiontrueBu  __Version4,1,0,0
 _G_Columns ColumnsD Columns urn:groove.net:PropertyValue   urn:groove.net:PropertyValue
net:Column urn:groove.net:Columno urn:groove.net:Column Width15 Name  AlignmentLeft
eDisplay Alignment
Value  LAlignment
eft/c Leurn:groove.net:Component
ft/c   urn:groove.net:Column  Name  UWidth
pButt1o1n0wName
 urn:groove.net:ComponentR
Stored Value>
e.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Gro
Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompone
nts_DLL&Version=0&Factory=Button[ urn:groove.net:PropertyList Tooltip6  Move up the selected
ion  __Version4,1,0,0 StyleSmallIconButton
 ImageWidth16="
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex39ve ImageHeight16="h o  ; h      urn:groove.net:Component  NameDownButton
esource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://compone
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=Button_ urn:groove.net:PropertyList Tooltip:  Move down
e selected option  __Version4,1,0,0 StyleSmallIconButton
 ImageWidth16="
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex40 ImageHeight16=" urn:groove.net:Component NameMonthPopupView   urn
mponentResource# urn:groove.net:ComponentConnections urn:groove.net:PropertyList/{  urn:groove
net:ComponentResource URL6http://components.groove.net/Groove/Components/Root.osd?Packa
ge=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory
=ViewContainer#] urn:groove.net:ComponentConnections urn:groove.net:Connection y  urn
:groove.net:Connection  Name MonthPopupLayoutBo
 ConnectionID0 / urn:groove.net:PropertyList PreferredHeight180 PreferredWidth180  __Ve
 urn:groove.net:Component Name MonthPopupLayoutBo  urn:groove.net:ComponentResource urn:groov
:PropertyList0   urn:groove.net:ComponentResource
 URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx0 urn:g
roove.net:PropertyList
  __Version4,1,0,0  _G_Layout Layout1C1 Layout0 urn:groove.net:PropertyValue2E2
ue1 MULTIROW3
 P3MULTIROW2
  ROW4 ROW6 ROW7 ROW=(4 ROW3 CELL5 5 CELL4 RightPad  8 TopPad6 LeftPad6
7 WIDTH75dOKButton-
 : CELL7 WIDTH5B; CELL7 WIDTH75d
 CancelButton-< CELL7 WIDTH8(= ROW3 CELL>.> CELL= HEIGHT6  @   w p urn:groove.net:Compone
ove.net:ComponentConnections urn:groove.net:PropertyList?{  urn:groove.net:ComponentResourc
e URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn:gro
ove.net:ComponentConnections urn:groove.net:Connectionm urn:groove.net:Connection NameMainLay
 ConnectionID0T? urn:groove.net:PropertyList  __Version4,1,0,0  urn:groove.net:Component
mm  urn:groove.net:ComponentResource! urn:groove.net:PropertyList@ !  urn:groove.net:Componen
Resource  URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellL
ayoutx@ urn:groove.net:PropertyList   __Version4,1,0,0  _G_Layout LayoutACA Layout@
tyValueBEB urn:groove.net:PropertyValueA MULTIROWC  DCMULTIROWB
  ROWD ROWH ROWJBD ROWC CELLE CELL
|F CELLD RightPad
 2 LeftPad2 HEIGHT24fTabOrder  0
 MonthTitleuG CELLD RightPad  2 LeftPad2 WIDTH22esTabOrder3 Next(H ROWC CELLI2I CELLH HEIGHT10tB
 CalendarViewM CELLJ0 urn:groove.net:Component NameMonthTitlea  urn:groove.net:ComponentRes
et:PropertyListNo1  urn:groove.net:ComponentResource0 URL(http://components.groove.net/Groo
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=StaticGN urn:groove.net:PropertyList0  __Version4,1,0,0 Lab
l
 VAlignment
Centerb Style
Normalr
 HAlignment
Centerb _G_Font FontO<O FontN urn:groove.net:FontDescP P urn:groove.net:FontDescO  Styl
00000   >  j   9 urn:groove.net:Component NamePrev="  urn:groove.net:ComponentResource: ur
roove.net:ComponentResource9 URL(http://components.groove.net/Groove/Components/Root.o
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&Factory=ButtonSQ urn:groove.net:PropertyList9   __Version4,1,0,0 Style&SmallIconTextButton
 ImageWidth16="
 ImageMaskURL;Cal_IMU_ARR16MImageURL  ;Cal_IU_ARR16 WantsEventstrueBu
 ImageIndex0 ImageHeight16=" C  urn:groove.net:Component Name Nextx"  urn:groove.net:ComponentR
ve.net:PropertyListRoD  urn:groove.net:ComponentResourceC URL(http://components.groove.net/
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=ButtonSR urn:groove.net:PropertyListC   __Version4,1,0,0 Sty
e&SmallIconTextButton
 ImageWidth16="
 ImageMaskURL;Cal_IMU_ARR16MImageURL  ;Cal_IU_ARR16 WantsEventstrueBu
 ImageIndex1 ImageHeight16=" O  urn:groove.net:Component NameOKButtona  urn:groove.net:Compon
roove.net:PropertyListSoR  urn:groove.net:ComponentResourceO URL(http://components.groove.n
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=ButtonS urn:groove.net:PropertyListO DefaultTruea StyleS
rdButtonB Label;Cal_BL_MOK  __Version4,1,0,0W urn:groove.net:Component NameCancelButto
t:ComponentResourceX urn:groove.net:PropertyListToX  urn:groove.net:ComponentResourceW URL(ht
://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.To
olComponents.GrooveCommonComponents_DLL&Version=0&Factory=ButtonT urn:groove.net:Proper
tyListW CancelTruea StyleStandardButtonB Label;Cal_BL_MCL  __Version4,1,0,0 urn:groo
.LookupTelespaceComboBox  urn:groove.net:ComponentResource urn:groove.net:PropertyLists  u
oove.net:ComponentResource URL,http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=ComboBox   urn:groove.net:PropertyList Sort trueBu Enable
false  __Version4,1,0,0@    d   _  _ 
] urn:groove.net:Component NameMonthPopupGlueTy  urn:groove.net:ComponentResource^# urn:groo
:ComponentConnections_ SCRIPTf SCRIPTg SCRIPThw^  urn:groove.net:ComponentResource] URL2http:
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=ScriptHost2_# urn:groove.net:Component
Connections] urn:groove.net:Connection` urn:groove.net:Connectiona urn:groove.net:Connectionb
:groove.net:Connectionc urn:groove.net:Connectiond urn:groove.net:Connectioneq` urn:groove.ne
t:Connection_ NameCalendarView
 ConnectionID0ma urn:groove.net:Connection_ NameMonthTitlea
 ConnectionID1ab urn:groove.net:Connection_ NamePrev="
 ConnectionID2ac urn:groove.net:Connection_ NameNextx"
 ConnectionID3id urn:groove.net:Connection_ NameOKButtona
 ConnectionID4qe urn:groove.net:Connection_ NameCancelButtonde
 ConnectionID5]f SCRIPT] SRC2http://components.groove.net/Groove/Components/Root.osd?Package=
et.groove.Groove.ToolComponents.GrooveGlobalHelperFunctions_GSL&Version=0,1&Fact
ory=OpenMg SCRIPT] SRC http://components.groove.net/Groove/Components/Root.osd?Package=net.
groove.Groove.ToolComponents.GrooveCalendarHelper_GSL&Version=0&Factory=OpenamRh SCRI
PT]/
var m_Start = 0, m_End = 0;
function OnViewContainerShow()
{
CalendarView.ShowGridHeader = false;
UpdateTitle();
}
function SetSelection(i_Date)
{
CalendarView.SetSelection(i_Date, i_Date
);
CalendarView.ScrollToSelectionStart();
}
function CalendarView_OnDblClickCell(i_Date, i_C
lickedHeader)
{
CloseWindow();
}
function CalendarView_OnGridExtentsChanged(Start
, End)
{
UpdateTitle();
}
function UpdateTitle()
{
MonthTitle.SetText(FormatMonthAndYear(Ca
lendarView));
}
function CalendarView_OnCalendarCommand(i_Comman
d)
{
if (i_Command == GrooveCalendarCommand_N
ewEntry)
CloseWindow();
}
function OKButton_OnCommand(URL, Data)
{
CloseWindow();
}
function CancelButton_OnCommand(URL, Data)
{
var Window = UIPropertyList.OpenProperty
(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(GrooveMessageBoxResultCode_
Cancel);
Window.Destroy(GrooveMessageBoxResultCod
e_Cancel);
}
function CloseWindow()
{
// save the selections..
m_Start = CalendarView.SelectionStart;
m_End = CalendarView.SelectionEnd;
var Window = UIPropertyList.OpenProperty
(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(GrooveMessageBoxResultCode_
OK);
Window.Destroy(GrooveMessageBoxResultCod
e_OK);
}
function Prev_OnCommand(URL, Data)
{
CalendarView.ScrollPrev();
}
function Next_OnCommand(URL, Data)
{
CalendarView.ScrollNext();
}
function GetStartDate()
{
return m_Start;
}
function GetEndDate()
{
return m_End;
}
function GetSelectionSpansDays()
{
return SpansDays(m_Start, m_End);
}
 ,i urn:groove.net:Component. Name(PropertyLookupLayoutpo
ve.net:ComponentResourcej urn:groove.net:PropertyList j  urn:groove.net:ComponentResourcei U
p://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.T
oolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groov
e.net:PropertyListi  __Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:P
et:PropertyValue
ROW ROW ROW ROW  MULTIROW
  ROW ROW MULTIROW
  ROW ROW   ROW ROW ROW ROW ROWB ROW CELL CELL CELLp
ypeKeyRadioButton( ROW CELL  CELL NAMECrossSpace <  BottomPad3 HEIGHT43ts Lookup
3ty LookupTelespaceLabelM CELL  BottomPad3 LookupTelespaceComboBox5 ROW CELL CELL
ottomPad3 LookupToolComboBox5 ROW CELL CELLp CELL  BottomPad3 WIDTH80 HEIGHT23ty Lookup
ColumnKeyViewContainerCellt HEIGHT69g LookupColumnKeyViewContainer5 ROW CELL CELLr CELL
umnLabelJ CELL  BottomPad3 LookupColumnComboBoxB ROW CELL CELL CELLx CELL
DTH50g LookupReturnAllRadioButtonh CELL  BottomPad3 WIDTH150 LookupReturnUniqueRadioB
DTH80 HEIGHT23tyK CELL  BottomPad3 LookupNoCacheCheckBox5 ROW CELL CELLF CELL
cludeURLsCheckBox( ROW CELLC CELL HEIGHT18t
 CommentLabel(
LookupCommentB ROW
ROW  CELL
CELL  CELL
 CELL CELL
 NAMECoCELL
mmentHEIGHT
 CELL5RightPad
0g 5 HEIGHT
 BottomPad23ty3TopPad
 RightPad5 NAME
5 Left
rce  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource  URL(http://components.
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=StaticG urn:groove.net:PropertyList 
 VAlignment
Centerb LabelLookup Type: <  FontStyleLabelText  __Version4,1,0,0  urn:groo
ponent. Name0LookupTypeAllRadioButton  urn:groove.net:ComponentResource  urn:groove.net:Prope
rtyListo   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/Compone
Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ver
sion=0&Factory=Button urn:groove.net:PropertyList  StyleRadiobutton LabelAll RadiobuttonTru
,1,0,0 urn:groove.net:Component. Name0LookupTypeKeyRadioButtonl  urn:groove.net:ComponentR
e urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.gr
roove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonC
omponents_DLL&Version=0&Factory=Button urn:groove.net:PropertyList StyleRadiobutton Label
By Keytt RadiobuttonTruea  __Version4,1,0,0 urn:groove.net:Component. Name.LookupTel
rn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentReso
ce URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button   urn:groove.net:Prope
rtyList StyleCheckbox: LabelAllow looking up values in another workspace. Note: All users a
re required to be members of the selected workspace.Checkbox
 Truea  __Version4,1,0,0
.net:Component. NameLookupToolLabel  urn:groove.net:ComponentResource urn:groove.net:Propert
Listo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=StaticG urn:groove.net:PropertyList
 VAlignment
Centerb Label
Tool:  FontStyleLabelText  __Version4,1,0,0@  d    x    X urn:groove.net:Compo
oove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource
//components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.Too
lComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticG urn:groove.net:Proper
tyList
 VAlignment
Centerb Label
Space:ne  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component. Name$L
oolComboBoxov  urn:groove.net:ComponentResource urn:groove.net:PropertyLists  urn:groove.n
mponentResource URL,http://components.groove.net/Groove/Components/Root.osd?Package=net
.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Combo
Box l urn:groove.net:PropertyList SorttrueBu  __Version4,1,0,0 urn:groove.net:Component
:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResour
tp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.
ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticG urn:groove.net:Pro
pertyList
 VAlignment
Centerb Label
View:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component. Name8LookupCol
ViewContainer y  urn:groove.net:ComponentResource# urn:groove.net:ComponentConnections{  u
ove.net:ComponentResource URL6http://components.groove.net/Groove/Components/Root.osd?P
ackage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fac
tory=ViewContainer]# urn:groove.net:ComponentConnections urn:groove.net:Connection   urn:g
Connection Name*LookupColumnKeyLayout
 ConnectionID0 urn:groove.net:Component. Name(LookupKeyColumnLabelte  urn:groove.net:Compo
rce urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.g
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=StaticG urn:groove.net:PropertyList
 VAlignment
Centerb LabelKey Column:  FontStyleLabelText  __Version4,1,0,0  0 .   x    
nKeyLayout  urn:groove.net:ComponentResource urn:groove.net:PropertyList   urn:groove.net:
ntResource URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellL
ayoutx urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout LayoutC Layout ur
lueE urn:groove.net:PropertyValue MULTIROW  DMULTIROW
  ROW ROW ROW 5 ROW CELL CELLu CELL  Bott
upKeyColumnComboBox5 ROW CELL CELLt CELL  BottomPad3 WIDTH80 HEIGHT23ty LookupKeyValueLabelL CE 
ox(  ROW CELL
 
 CELL   BottomPad3 LeftPad80 HEIGHT23ty! LookupKeyValueIsFieldNameCheckBox urn:gr
ookupKeyValueLabel  urn:groove.net:ComponentResource urn:groove.net:PropertyList
o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&Factory=StaticG
 urn:groove.net:PropertyList
 VAlignment
Centerb LabelKey Value:er  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:C
s,Loourn:groove.net:ComponentResource
kupKeyValueComboBoxF  urn:groove.net:ComponentResource
 URL,http://components.gurn:groove.net:PropertyList
roove.net/Groove/Components/Root
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&urn:groove.net:PropertyList
Factory=ComboBox y   TooltipEither enter a key value to perform the lookup on, or c
hoose a field to get the key value from.  __Version4,1,0,0 TabStopTruea MultiSelect
IFnanlesreLEditable
ayoutwT*w
rue0aPropertyDescriptionLabelv QFieldsListViewv Y2SecondarySortNameCombobox
iptionLabel InnerLayoutw*zFieldsListViewor  LookupExitButtondi7 V2LookupStringGenera
uttonolHslTChoicesListView^$RemoveOptionButtonolHslChoicesListView\        u
ckBox  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:Compon
esource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.
Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button urn:groove.net
:PropertyList StyleCheckbox: Label2Key value is a field nameCheckbox  Truea  __Version4,1
e.net:Component. Name"LookupColumnLabel  urn:groove.net:ComponentResource urn:groove.net:Pro
pertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Compone
nts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL
&Version=0&Factory=StaticG urn:groove.net:PropertyList
 VAlignment
Centerb LabelLookup Column:"G  FontStyleLabelText  __Version4,1,0,0urn:groove.net:Com

ponent. Name.LookupReturnChoiceLabel  urn:groove.net:ComponentResource  urn:groove.net:Prop
ertyListo   urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Com
nts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL
&Version=0&Factory=StaticG urn:groove.net:PropertyList
 VAlignment
Centerb LabelReturn:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component.
4LookupReturnAllRadioButton  urn:groove.net:ComponentResource urn:groove.net:PropertyLi
sto  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=Button urn:groove.net:PropertyList StyleRadiobutton LabelAll RadiobuttonTruea
,1,0,0 urn:groove.net:Component. Name:LookupReturnUniqueRadioButton  urn:groove.net:Compone
ource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.gr
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=Button urn:groove.net:PropertyList StyleRadiobutton Lab
Unique1" RadiobuttonTruea  __Version4,1,0,0  |       P urn:groove.net:Component
ponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://comp
.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.
GrooveCommonComponents_DLL&Version=0&Factory=Button urn:groove.net:PropertyList StyleCheckb
elNo Cache  CheckboxTruea  __Version4,1,0,0  urn:groove.net:Component. Name2L
pIncludeURLsCheckBox  urn:groove.net:ComponentResource! urn:groove.net:PropertyListo!  urn:gr
oove.net:ComponentResource  URL(http://components.groove.net/Groove/Components/Root.os
d?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&
Factory=Button urn:groove.net:PropertyList  StyleCheckbox: Label:Return URLs as well as val
box Truea  __Version4,1,0,0& urn:groove.net:Component. Name"LookupClearButton  urn:groove.net
entResource' urn:groove.net:PropertyListo'  urn:groove.net:ComponentResource& URL(http://comp
nts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponen
ts.GrooveCommonComponents_DLL&Version=0&Factory=Button urn:groove.net:PropertyList& StyleSm
TextButton LabelClear Propertyoo  __Version4,1,0,0+ urn:groove.net:Component. Name"L
tton  urn:groove.net:ComponentResource, urn:groove.net:PropertyListo,  urn:groove.net:Compone
ntResource+ URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.gr
oove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button urn:groov
e.net:PropertyList+ StyleSmallTextButton LabelApply Propertyne  __Version4,1,0,00 urn:groo
omponent. NameCommentLabelti  urn:groove.net:ComponentResource1 urn:groove.net:PropertyListo1
:groove.net:ComponentResource0 URL(http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=StaticG urn:groove.net:PropertyList0  BreakTypeSingleLine  FontStyleLab
belComment:W>  __Version4,1,0,0  h    t      6 urn:groove.net:Component. NameLookupC
groove.net:PropertyListk9  urn:groove.net:ComponentResource6 URL$http://components.groove.ne
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=Edit</v urn:groove.net:PropertyList6  __Version4
,1,0,0_G_Style
  StyleB Style urn:groove.net:PropertyValuel urn:groove.net:PropertyValue urn:gr
et:Itemd urn:groove.net:Item ValuetrueBu NameMultilinet urn:groove.net:Item ValuetrueBu Name"Ve
roove.net:GroupTemplate TemplateDisplayName(GrooveForms4SubForms DefaultGroupDisplayName(
GrooveForms4SubForms Name4GrooveForms4SubForms.Group"/ urn:groove.net:Component urn:groove.n
et:Componentd urn:groove.net:Component  urn:groove.net:ComponentH urn:groove.net:Component urn
ve.net:Component8  urn:groove.net:Component  urn:groove.net:Componentt
 urn:groove.net:Component
 urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component
 urn:groove.net:ComponentA
 urn:groove.net:ComponentW
urn:groove.net:Component5 urn:groove.net:Componentd urn:groove.net:Component, urn:groove.net
Component{ urn:groove.net:Component:ValidationMinChooseDateButton!q
<GroupLabelPlainTextRadioButton($ F ieldsStaticbT4SecondarySortOrderComboboxgr.ColumnP
oxm:FontLabelPg&AddFieldsToViewGlueFn0AddObjectCodeControlViewer o; 0FormsSearchC
tto/9~
:PLroeovkLi
upRetu$rMnaUcnrioqSuceoRpaedCioomBbuotBtooxn Y
fPrev="9:LookupReturnUniqueRadioButton f(PropertyNumberLa
onScriptChoiceLabel%(EditTabViewContainerLiw"!4SecondarySortViewContainer F%SortLabelk
ditStyleNameEdit ! 4 EditScriptFunctionComboBoxM;s$
,FormsSearchInnerLayoutBo ' '
DownButtonED r%
2MVaicerwoSAerlgeOcnteiLoanbCerli.teCriaCodeOX"8
2DocumentPropertiesSubFormj\ !d4LookupReturnAllRadioButton8%DownButton r%r
n r%4LookupReturnAllRadioButton8%X   u  FieldTypeListBox +?Z & PropertyVa
ionMinMaxLabel1IX&FieldPropertiesGlue|Y GroupLabelStaticWX , CreateTabViewContainerR X
tColorButton8dX V iewContainer~ \ V iewContainer~ \
"OperatorsComboboxi Y
.*DLMioasocpkrluoapLyKaQenuygeCuroaylguemCnoCmobmobBoBxo+xXu\&
2]CommentLabelti =].LookupKeyColumnComboBox2]CommentLabelti
edImageUf:ValidationMaxChooseDateButton :d0PropertySizeTypeComboBox6jecDPropertyBackgrou
olorRadioButtone `2ColumnWidthIncrementLabel* a~:ColumnWidthPercentRadioButtonIg HMaint
rchyWithinGroupCheckBoxoo.5lfChoicesLayout$ g6EditScriptCodeViewContainervqg!
InnerMid8dDloecVuimeewnztGTc
a PropMeorteiMeascIrnofLoaLyaoyuotutSev *gn8LookupColumnKeyViewContainer yd 8Looku
KeyViewContainer yd(FPOuterViewContainer uj @FieldTypeGeneralDescriptionLabel T "m 2 FieldT
TF| -o.FieldLabelPositionLabelxhTabOKButton y hHBasicsLayoutiCl.FontPickerViewContainern
criptionLabelPl2EditScriptCodeControlCode ~hY
&PrintAllRadioButton i n:MiddleView.acj"CreateViewSubFormpk
o~FVAiabeloluudetVETadolioutleCLoanytoruotlh#j
e(m . LookupTeleak
space,CAhbeocuktBToxoMlVlc
iew"CLoonotkauipnCeorlFo
umnLabel o.LookupTelespaceChe
okupColumnLabel o$ValidationMinLabelF |TabCancelButtont|N2GroupOptionsViewContainer Uz$Gr
outu z SortTypeLabel \~GroupSortLabel1t~~$FontItalicCheckBoxerrG6x 0 EditStyleCodeControlCo
iddleLayout:P+{$DateTimeUIDelegateet/]|
ORButtonro=x
UpButton
?}
MLaocorkouCpoCdoepCyoBduetutox
nFo}P2PropertySubPropertyLayout{UpButtonw ?}h2PropertySubPropertyLayout
g2NextButtony NBFieldTypeDetailedDescriptionLabel(PropertyBrowseLayout Dx0Validati
lValueTextView##  FontPickerLayoutop K.ColumnHeaderEditControl~:g2VJustifyCenterRadioB
riptCodeLayout%
.PrintInnerViewContainerD CreateViewButtonwCl3
6ViewSelectionCriteriaLayout K
$FieldConditionInfo bf
>DocumentPropertiesViewContainer! g0LookupTypeAllRadioButtonb W"DisplayValueLabelI`*"Dis
alueLabelI`MonthPopupView 0LookupTypeAllRadioButtonb 4 PropertyValueViewC
ticTextLayout!$BFormatDateShortFormatPreviewLabelp9(FieldLabelValueLabelnfEditTabLay
aderLabel!oK`4PropertyValueViewContainerv >AddObjectCodeInnerViewContainer:DR Calen
iewq "MoreMacroCodeCode,DataType h(ReplaceDesignSubFormCo\(PropertyLooku
stViewViewContainer &DefaultOptionButtonJ8ChoicesListViewViewContainer & DefaultO
yLookupLayoutpo1iCancelButton\  iCancelButtons\ jCancelButtonm\   SortTypeCombobox=}
\  " $ModifyObjectButton CancelButtonsp\  C ancelButtonyn\  S
CancelButton \ 
CancelButtonAT\  jCancelButtonDa\  
(CreateViewUIDelegateUMIs:
ANDButton 
CancelButtonret\
d\  &
1CreatedByLabel  @ DocumentPropertiesAdvancedLayoutle Fi
ancelButton \  CancelButtonde\ W
$PropertyVDiaetweLayouteU
VF0ValidationMinEditControltMW(EditGroupOuterLayoutNa$eFWn"GroupTypeC
ombobox T0HJustifyRightRadioButton U,AddedObjectsHelpStaticM Uf AndRadioButtonD;[V
AndRadioButtonng[V
M(aMcarcorPorSocgrriepstsHeaUU dL"aMboedlifGiUeW
dDateLabel VV P | L Y  , FieldPropertiesSubFormrnh= @PropertyIni
dioButtonO TabsListBox >TabTextStaticK @*SortAscendingCheckBox ,AddFieldsToViewSub
SubFormu FormsListLabelyw?
M(oMadocirfeoiMNeadcmDreaoEtCdeoiadtebS
qubFBoLromoekup+KeyValueIsFieldNameCheckBox,% 2LookupIncludeURLsCheckBox ` BLook
ldNameCheckBox,% 2LookupIncludeURLsCheckBox ` DPropertyInstructionsFieldTypeLabelqF 2Pa
eEditControl @FormatDateLongFormatPreviewLabelKB E*ClearViewFilterButton (CPOuterView
ioButton :FormsSearchInnerViewContainerV'[
D8aPtraiTnytpTehLraobueglh^ForrmN$aRmepCloamcbeoDBeosxi2gXW nLabZe(lMiacpxroScr$iLpotoTkauiplVLiaebweCloaa
mboBoxmp  (LookupColumnComboB
iewComboBoxmp  (LookupColumnComboBox<gfI $InnerViewContainerc(5pPFieldTypeGeneralDescri
ContainerbiP7 $ PropertyValueLabelce`5V*PropertyValueComboBoxP40GroupLabelPositionStaticst{
nerViewContainer(5$DateFormatCombobox g7$InnerViewContainer(5s0EditStyleCodeInnerLayout
tCodeControlCodeI4 @EditScriptCodeInnerViewContainer15 PrintLayout#4,DocumentProper
4LPorookpueprAtpypNloyPBruotpteorntyi`6 esLa$yMoudtiDfy3Op>p
tiAodndBTuatbtBountet7onr0O
nW8B<,
$Modi6fCyoOlputminoWniBduthtPoinxee7lRa0di"oLBouotktuopnAZpD:
plyB2uVtJtuosnty`
i
fyBottomRadioButton<7=2EditSystemScriptTailLabel{8?
0CreateLookupStringButton3z :E
DialogTitle<8ViewSelectionCriteriaSubForm39A
,0LCoroekautpeKLeoyoVkaulpuSetCroimnbgoBBuotxtFo<n(8
3z :*ChoicesListViewLayoutI8*ChoicesListViewLayoutI8 , LookupKeyValue
omboBoxF<(8     , PropertyRichTextLayoutt-3&PropertyColorLayout' : FieldLabelRich
Nr(AddedObjectsListViewWEG0 6 EditScriptCodeControlLayout% SearchButtonE
PrintSubForm(eo
TimeLabel 2ViewSelectionCriteriaView+D
 CreatedDateLabel= < DocumentPropertiesFieldsLayoutr t6LookupStringGeneratorLayoutS
KeyRadioButtonl^%>] Sto redValueLabelt1 StoredValueLabelt0LookupTypeKeyRadioButtonl^
6BackNextButtonViewContainer4H#"NoPropertiesLabelK*PropertySizeTypeLabelX<\6EditGroupInn
iewContainerX ApplyToAllButtonj9+$EditScriptNameEdit"; *MoreMacroCodeTextVie
spaceLabele$@(LookupTelespaceLabelt$@iMonthPopupGlueTy$J}](LookupTelespaceLabelt$@ Prop
utPrEH@*PropertyContentLayoutR0PropertyViewFilterLayout}eR EditGroupSubForm :d.EditTabGr
youtj,SortDescendingCheckBox2HJustifyCenterRadioButton{ ,AFTVOuterViewContainerroW<K>E
nerViewContainerM.EditScriptFunctionLabeld
Dat>eVTiemweFSiulbtFeorCmon]\ditMioonntshBTaistilceL;ayoutTd{
MacroLayout?aMacroWindowCode
\MonthTitlea0OuterLayout H(SelectFieldTypeLabel J 2 PropertyInstructionsLabeltNOute
onZ=L
$PrintViewContainer*L
TimeComboBoxne I"FormConditionInfo {J
OrRadioButtonZ=L
RemoveButtonF]H
ToolNameLabel& CN $ LookupToolComboBox?Z L$LookupToolComboBoxovZ Lz$LookupToolComboBoxovZ L
$FontSelectorLayoutR *,ColumnWidthEditControle zTotalCheckBoxO2EditScriptCodeControlV
ViewrQn
AdvancedButtonl
$MacroWindowSubFormt 5*LookupColumnKeyLayout&{W MainLayoutmm ~ *LookupColumnKeyLayout&{W
ldLabelPositionComboBoxo#GroupSeparatorP \.ColumnPropertiesSubFormG} &SecondarySortLa
adioButtoner: ,ValueSubstitutionLabelLi 4AddObjectCodeControlLayoutU ZD .EditScriptLa
$NewPageRadioButton?)@NViewSelectionCriteriaInnerViewContainer;GX
DViewFilterConditionsAdvancedLayoutveU
&$RAedpdlCaocnedDietsiiognnBLuatytount@
(LookupKeyColumnLabelte# A ddOptionButtoni8AddOptionButtoni(Lo
ValueEditControll k8ColumnWidthPointsRadioButton (SortDescriptionLabeluX 0PropertyVa
rS1 $EditStyleNameLabele r
M acroWindowView[X- 8CreatedDate 8 LookupStringGeneratorSubFormnCS ,LookupToolLab
kupKeyValueLabel5_ LookupToolLabel &LookupKeyValueLabel5_ 
(PropertyViewComboBoxC WebBrowserView+m0 2EditFieldGroupInnerLayout'` TabsStatics &We
odeControlSubFormi& WebBrowserView0
W0 ebBr^o$wCsoenrdViiteiwoPnr0
sListO
VSioerwtonLi2stButtona&$ YSortListButtona&$ 
(BackNextButtonLayout#(0ValidationMaxEditControl @FormatDateShortFormatRadioButtonne
atLabel&HJustificationLabelxE$DeleteObjectButtonL,z{3 * FormsSearchOrAndLabel
.LookupReturnChoiceLabeliY.LookupReturnChoiceLabeliY $PropertyDateButtont? GroupSeparat
ficationLabelYKPreviewListView Z$NewLineRadioButtont>GxFDateTimeLayoute P arensButto
."FMiaeclrdoVCaoldueeTVeixetwVCioenwtLaineryA.LookupTelespaceComboBoxg.LookupTelespaceComboBoxgoLookupVi
upTelespaceComboBoxgLookupViewLabel L  = Y,  I`&PropertiesListLabel/"PropertiesL
outt
nPPropertyBackgroundTransparentRadioButton  e2PropertyValueEditControl2-
6AddObjectCodeControlSubForm8 HelpButton b StaticText I*-
LHoeolkpuBpuTtytpoenLabel Q*Lookub pNoCacheCheckBoxsLookupTypeLabel  * LookupNoCacheCheckBoxs @ Prop
tonF :PropertyBackgroundColorButtonF ,VJustifyTopRadioButton <?4EditStyleCodeControlLayou
$nCMdainctcrieolLnOaBpnutgiutoangBeuLDtatboenl0/ / AMR$CancelOptionButton0OKButton ?b,EditGroupViewContainerCdg4GroupL
oxOKButton ?dOKButton ? ColumnWidthLabele  j$ShowTwistyCheckBox.nJOKButton V
el1
OKButton
?M
OKButtone ? OK{Bu?d ttonOoKBu? ttonOpKBu? ttonOSK_Bu?
ttoOnKtBiut?,
tona ?ORTFHelpProvider */bRTFHelpProvider
ovider */3 RTFHelpProvider */ RTFHelpProvider */m
RTFHelpProvider */
RMTaFcHreo(lCpoPdreoVvi(iedw(erf(/Z(*/w
*/~
*/
(R@ToFxoHle(Vlep(rPsrHioov@niLdaebrelha*/U
V/
 RTFHelp!Pr"o#vi$de%r&*/#
'(0L)oo1k@u2pC3om4me5nt6-b.
7X8PL9oo:ku;pHC<o=mm>en?t
3@_@
@k@Iz@YI^@@u~@,2@o@"@l  @>p@9 @E@@^@ @@
@@@H@O@@i @ Dm@7@@!X@}@  @]@@ @   @@
@c
@_K@0Q@1E@
F@/@
@+@).@oO@z@@
@ @  /@& @  > @-@T@|8@Qn@8@@NZ@3@@@O@M@EP@1@P
@!z@0@G9@,.@f@6X@2@w@  @ @  [@~@@i@  @ >*@(@-@*@K@F @;@@^<@s @ @ @#@% @ @  @#
@'m@0'@[p@@3@C-@.oy@:c@4@a@S@,d@@)5/@@o@gj@"@@$#"Q@@#zg@@6@@@@"@bE@@@=h_@~ @@ @a@@@>is@@@@ Ci@@6D@@u@@x!@@`%@L6@JqB@t@p@L_@oy@
@`@[@J;@s@  @  {x@.e@6@ @ C'@n@b @   @ 65@+(@m%h@
|@@b:@#@@"@4g@Hq@@x@@W@@X @ ;@,q@@ @ b@L@0@"$@l8@+@@G@R@P@O@@D@.m@ 0@@@ O@1l@ )@(S@2 @
N@,@4@*r@9 @ \@~
3@*x@ @  @  2 @( @ E @A@[@ @ H@`J@xQ@[@\@@@ @ =@-W@2 @ @ @;@cu@ k @W@@i @  @
@7@$rJ@0G&@k&@D@h^@7\@+@G@/_b@ Y @ 6@@+s@ =7@@c@M@@Gt&@m8@:_@s3b@4N@@+T?@tS@Y@cW@@I@:H@+,@En@>/@Ct@u@L@=HV}@};@@NR@|z@@`
@@R  *@n@  @$@ @D@X(@'=@t@@LF@uY@3~@;@%@@m@=@N
@c@@y@ $@%I@0]@~@g@@R@1 @ @}@
@@@N@@@M@x@l@7@P@{%@&v@ @ @  @@M
[@@a @  @ J@m_@0@y(@@@x2@L@ @ S`@ @'@@ @@=@ @D+@G @J @ @ @ @( @ p@`d@y:@(:
jl@q@U t
:@,nF(@
@$;
@
@@hJ
@@?
@\@e/
)@)@I#:@*@8
`Y*@@7
e@
 @@S
X tN%,@}@
@@\i
+@9a@
W@>\@@!\@" @@D
o@a@\@@x!@W@@  @ B+@c@@@n@K @ @ C+@@df@v7@k @ @ Z@@
@ 8@@@L @ R@@@R@@@pl@[@%@(@
@{@\@@  @@:@h@@ @ ,r@ A@3 @x @ j@`@ (@"@ @ 1\@s@/@n@ ^@W@@ r@w@
@G+@(@N@  @ 6
J@x(@M\@S
jn@@A@!@'@X
i@
@Y@ @F @"@@
 Z b+@
=@.@O @k@@E@qF@=@[@ @@r2@=
K@H @P@W@[
@ 7 @n @ V\@W@Q @:@v@  @
^@_-@,@  @V @q @ VA@@;@9@/ @@O @ 0@h@h@ @@i@ @  @q@;\@
jmo&@-[\@A@@[
@?@(@@= @ ?@ @@ $@
j\@@@K@ @@R@M@ @@@ @|n@@ @  @ (@ K@@r@@i@@@ @Z@@y@@
E@@ @  @@%@
n}@G
6\@t@
 @@[.@$I@@@8@@U@e@
8@ @p
1@@@F @@!n@@'@@mA@@}_@@ $5@ @| @ @@ @ q @h@3"@s@@
H@@Q@X\@\@. @ 5@7@@<v@5@@Gz@@  : @E@x @ N@@
6@I{@
j@L@ @[ @@S@
|$@N@ RP@&@@' :@s @Z`@@@[;@ E@z@@w@@R@( @ @
@@@@@ @ 6\@, @p
@<\@  @ k
@@f @@lD@\@ L@@ @)@y@ @ p @@j@ @@ @g@
@@ H@  @ @ @ @
@@}=@  @' @ .@@@@&@ @a-@z@@L,@{ @@ 7 @@@m@~
6j@3@
B@\@@@@Tt@\5@
^@@>@@ @r @N@`@U@w@@@#@@F
^@ @@!@2@@$@ @ @J
M@ p@@t@ 6 @ql@ @ %@@K @ ]
P@@@
n@I
M@S@O`@@\@
}i@@
SO@@!@B
9x@
b@}@:h@7@@'@@{@@@@O@4
@]@@
$@7t@f@@Y\@ @ =\@F @ I@%@ @  @%@-r@@@4@@
T@ @@Y7@%@[@(@@U@@;
uK@=
#v@
$@@@ @  @ h_@i@ @@ @;@:@
W@ @@@F@R@\@ @@E @@Z@
!@@y @%@\@ @ _@
{@d}~@,
r&@uo0
@@Bq
@
A
@@C@@a
 @@@ @ \@[@ @O@#@ F@@@/\@ \@V@~@& @ x@V@ @@ V @
@\'@
@#T@
$@o@@z<T@@@be]@C@@@'@
1S@@n @j@@n7@l@S@\@ @= @ "@@k@l-@$@3@
F@U`@j@@ @@n@S@ @>@ @ @E
M@5*@r@N\@&@8@g@D`@ @G+@@b@ @ @f@@L @l@rl@ 3@  @ @ H@@ @9 @  @ @  @X@
@@P@3 @
jF@U
&)@@
@E
@p@@  @@@U@b@S@3;@@@ @ ),@@  @B@@m@@@d@@ @@W @7 @ h@8@ @@@'@
@ C @@7@@!@K`@+@P\@I@@S@  @ s
@h
@
L
@m`@@@p
@  <@-@Y@ @ @
@$@\\@\@G@@@ N@- @f@&@@ @%@5t@}@/@L
N@@ @ @d7@@@X@ < @@@  @S@@  @@Q@D@h @L@ @ ]\@\@ @@
 @ 5@6@* @ '@@I\@@@x
Q@ @  @ ll@d^@E@"(@@7@N@1@@-
I@ p@  @T @@G@T@@C@b@6@\@Q@@ @%(@-@* @@_@
 @2@ D @@> @. @ '@]@@
wV@
`7@(
@]
 @ w
Q@ @ @ @+ @  @@ s :@
ej@:@t
  @ p @u:@w@ @@O
V@ @ @_c@
@o @z @ g-@k@  @ @ @ @
@9 @&@@ n @c @ Z
@
f@@
@Ra@
E@
km@+
?@r
@8@F>@@$@ @ *@$@ @~ @  @L\@8 @;*@6@ @

@
Z@  @)@u2@@  @ M@ n @&@@ ? @^
@@ @O@ @@~@%@,@8@!@{@
#@ @@b@
@^@~n@@h@@, @ 6 @o @ k@@@@@y
Q@
#@:@?@ @N@@$(@ @x:@.@@@@
@  @}n@S@@  @
 @ J@T
@ L @5@@*@L,@} @@@?@3@(@Z.@@@P@@S @@@b@8@ @%@@P@>@j @ @2@ @@@ @m@ 
}&@
a{@H
k`@A@@h
@@P
 t2@@@@_@@a@^ @ I @@W@@K@
@m @P@@@\@.@> @Y @
Z@g @@@@,@=@@@ @v@@
"@^b@  @@@Z@l@@4 @-u@:)@f @ T}@}
@!@c@@@ @ 9@@cC@O@{@_@Cy@ @ o0@@
@\,@@Z~@{n@T@@ @ n@\@:u@@@o@&@U@@ G@'@
z@Z@^@
O@
T@V@S@@ @ [@S@%@ J@@~@}@ @  @V @ 'n@,@@^ @ @@]@@]@
@E@[
t@`Y@@@@s2@ M 2`@@@s S@ @ r @%@
}j@@* f
x
6 \9@@
V@=
 @z@@ @>
jQ@
0)@ C @ @&@P @I
@4(@@ @@e0@Y
O@H+@T,@A`@Ey@ @9@@
@ @@ @ @ @b7@@@@e@
D@ @P@s@R@
@}2@o @)@C@  @  @a@ H @x @ r @ J@ n@@F`@{ @P@Fz@f7@\ @@ @  @
 @7

@gf@d
@ 5 @ @ @2 @b@L@@ @ o@ @ -@\@t@Q@V@u @ C@@>@g
@u6@
@@i
q@v@
@=e@@@@@^
u n@U
z @o@:j
o@`@@4B@`
c@7@Y&\@9@u@@n$E@ @;@+@&@ @ff@\@@
@&@8@ @ @d@9@ @|
R@Y@  @g@{
&pR@M
?
@,@@1
@g@@P@@J@7
-\@Q @@1T @@@'2@@@@5 @l@_@@q2@A@@@`@+@n@ @2@`@ H@W7@ @ .@@ @
jmgT@~
,l@}

R 2@}
d pX@
M@d@Cu@@B@!@
O@?@MM&@n<@@@y@;@@@&@t@C@@(@)@~z@G@4Z@2t@
hkS@
0\@P@&]P@
@:
, <@@@q_ 7@@q@?w@Z,@@8@ @ _ @U
}x@@3
-v\@&B@
 @
e-@ 
@v@@o@@@9i@@
 @ @ p @^@ @ @n@J\@A\@ @@@@
y@n@ p@K
,@1@O,@@p@_@I@@C @ *@@@@@R@@@@`@g@@"@B@X@
l!@
5(@U@s@@P@d0@@!@O@\@Y`@X&@zn@))@@ n @a@
E@y2@!@ @$!@?+@@@@0 @H{@%@@ @!@
j@@@
a@@Q @ @ J @
E@X,@\@z @@@1@ @ @n`@3@ @ @@@#@L @
jc@@'% U@\@@k1@@<@@Hz@@=@WA@b @w8@@\@:@@[,@'@:@@4"@C
@')@7@f@6 @@ @@@@@ A @%\@#@R@z2@?@r@@@@_
@c@@i@  @ @ hg@&@ @L@l:@@ B @ @ @P@@ @@< @D@h
@x(@@@4Y\~@ "@\0@q@@p@'u@kD@  @
@A
L@?
qK@@ @b@@
j@n@ <@P@
Y@@ 6 @ @@d@9@
j@n@@A@By@ @n`@@<@@@W@p@n@$]@B@(^@@@G  @c@"@@ r @$@ @~@R@S@ @ @@ @@@ b @$@"@h-@!@J @
@j9
G@%
*z@)
n@@0
'
 @@"@'@@#i@@4
H)@@f@@ @q
S@@
kmE@' O:@?
K:@
`d@E
 @W
],-@G@@@
@@ni@
a:7@ C
p K\@@
4 _@@w @V,@@@3@ @B@ @ @/ @  @ 9@4@:@. @:@
@@ @
%@"@1)@@$@)
t@@ $@
9@@@3b@fr@@a@{e@X@`K@\@H@@C@
 @>x@@@@+\@ @
a@e @@ @ @j@@@]@U}@B@  @@
F@>@ @ O@ @@;)@$@@[\@ @ @@A @ ^7@K@b@
@~@@  @T @ c@  @B@@/r@ @S\@Z\@y @f^@@\@@ @b
@D@c]@@H@ @ \@  @R-@2 @ @@
 @$@C@C @@c@N@[ @ 1 @
_@8w@ @Z@@\@ @=@!@&@ F@  @z@}@ @G@@'@P@n:@@
#@; @ @@-0@M
@R@@  @h@
|@U@k
6@@@@,@@Gn@@@(
@@i@@<@
}pU@ k(Pl@O@3
k):@@[@@,
r\@
{@@2)@@"&)@c@R@
JS@@j@:@n+@r@l @ @b@>@
j@1@ @@M@
@@ @Rm@`-@k1@@ C @M@9@@@o@&@D@@
j@C@`@\@@^-@ @%@8
]@ @@P@:
K@ @}@@
X@g
@]7@
@8@@ @ C @ @@@7@ @ @@;@X@!@
E@1
e@@[ @-@z:@@&@
tjO@3
\@@@@J
@@#@@*@=*@@]@ @ 9\@p
@@@)@p@w y:@$@@@nc/@+@@@@@
VP`@h
<@p(@@n@0
@@"n@=v@[@
j@/@
@4@9w@@E`@@b"@E@ @@3t@s4@3@ef@f @@$\@* @ \@@#n@T@
rY@mc@s@>@I@@ y@'@@_\@&@@_@ '@r:@@&@] @5 @ @@@
W@
@D
M@~?@`&@5@@@  @Aw@!@,@ @ O@
X@M@4@Q@Y@ @ @l
@c@@
i@}sGg@
.
@
#)H@v@t
r@n
3@@@E
$@n@n5
0@1t@J
|+@
0@sc@[@7@p
@@;@) @
|u@N\ @
@@W@  @@@  @)\@@@w@ N@  @ "@  @  @T@P`@ @ 6 @J@\@  @"
@  @ K @ '@+@ @ D@8\@N@
}_@n@FF@\@l @P@@@{:@(+@g@@ @ #@b@@P@@@ N@ @  @R@  @  @m.@9 @@ @  @
H@! @n@@9@^\@ 4@@@@
b@S@!@8@@p@#@ q@ H @ @ @@@
@!@A@)@w@1@m@j@ &@@"@0@@@S@ @q@ @@@a
@N@ @@j-@;u@ 1@@ 
@n@ @P@@  @  @H@@\@2 @  @ @
E@O|@C@@? @ @G`@o@4;@O@@@4@0 @@x
@n@ @
 @S@.@
E@$@Q @ @f@1@` @
@w @*-@@ H @@ p@7*@l@@3@p@ol@!(@  @ @ @@k@ @ @~:@@@P@X
O@h@@j
}m~@@
@ j
P@j@@Zn@@:
R\@@p @@&@@@
W f@`\@5@@@  @ @L@?d@@ @@|N@|@<@@n$@@ @`V @R@@ N @ @ p @$@6*@S@0\@Q@W@ @
@\@
 @%n@
@@(@@@@n
@e@>@@ @H\@\@@#@<
dK@C
L@Z7@<*@,@ @  @F@@F+@
b@p@
 @  @Fz@A*@& @ @V7@~@B@#@@ K@u@.@b@@
@R@@@  @u
@ @ |2@
`@P@b@@ @  @@^
P@I`@'@
U@*@@#'@W@4@8 @n@@
@T`@e@c@~ @ @@@v
u@@fS@
[@
@@:@@@@\@f@E\@ )@ @
@\Kz@
\@!N
0@@ #  @s
#@
#P@*@@U@p@2y@@ez7@@@@v@B
L@
 @ @.1@-@ @@: @s @ N@@[@@i @' @ a@?
@;@P @ A@"@  @ @ D @L@  @@*@@  @(o@
E@@ r@ @
]@ >@  @4@  @9<@$@@Z @ v2@@
E@j
j@@@4@ @ @
?+x@?=@4
%t@n@S@@?O@*q@j@@N@@ @ p @@ G @k@ @P@@ @
}@@Y@@@.\@@@P@m@e^@ @D @  @!@ @ @ @
a@@G @ c@ @ @$@S @ @@,@@ J @F@]
@S@M,@"@  @ @ ii@@ @O@.r@ @ @@ @h@&@ @ [@u@ N @ @ <@@X @  @@g @@2@&
@tF@8t@ @@&@R`@@ 
rg@g @>\@B@@@@ 
E @@@M @M@\@{@'
cs@@f  -@  @S@  @%
n@\@  P@ @@h9@9@a@t@- @&@
@{<@G@ @@
zj}@@
 p$3@*@
:)@@@@@o
\@
D @@@@ H@Nc@f@@m:@D
 M@@@L'@ @
@  @/@ @
jG@
xg@@# @  @;
@@"@@@~@i@-@  @ @$@
@K?@f@,)@$'@ p@2@P@s@<@E

@U-@ @s@Q\@@@_@wn@  @@F+@e
@ > @ @ -)@Q@2)@d-@1t@
w@@R
@@n@ N@ @ >
K@N@|@ @ U@@(\@j9@@W@N@Q,@'@T@@ p @ml@@d@d@ @ d @i
@  @m @+.@@@.
I@r @$@F@}@n@!@@@@@m@!
G@@S @s@E+@
@}@@9@N @ j @R@
[@S@p@6@
f}\@ 

s@Po@w @;@@@
@@
R@\@
@ @#@@ @o@ @@+@

v@a @ @@w@n@l@qw'@2@@'@U@q2@J`@@@
@^@\@!@%@5 @ >@=@@'t@
{"@@ @\@@@]@@ @ n@\@#\@S@ *@ @ @ Y
@ @ oE@'@ @ +@t
vj@@r
O
@ 9@C@2a@e@@@=@@9 @@@K\@|:@>v@#@Y,@b-@ I@5@@@ @d@@ae@ @R @1@@
}@c 
@  @
}@@'+ @~)@36@U @` @ F@
@
@x\@3@sl@@$@t:@ @ 6 @@f
@\@@H @  @ I@"@@I+@J|@S@^/@$@@u@@@%@@U @
@t@'4
{
@@G@ @ @@;@r@>@@+SD,@@y@@w
I
 @H]
@a@c@@)@!,@@@N|@~@ \@`@2a\@@P@  @
 @r@
@v:@/@u@R@w @ @'@  @@"
G@@$@Z@6@P@
E@ @r
j@k@Q -`@R@# (@@!K@
_@/@X@!@rB @
@R%@  @ u @o@|
j@@@/ @ @ C @@?@@l@D@5\@P@m@/@ @g @ ?@ H@  @R
D@&@_&@@g8@@%@M@d@ @A+@ N @
E@I{@ F

@/@ o@N@@@@7@0@I @ @! @@C@3
J@@=@l @ W\@<@ @@@@@<@@|@P@xn@
@@I
@$@>@#K@U@c-@ @ | @ H@H@'*@'@x@$@  @Y@V@@  @ z@@q @ p@ @ %@X@@X7@B@r
}N@d:@%@ @`@
`@$@"'@1@'@&n@Z @@@
jyE@v
+
@t@T @ 
@@U@J
@@W`@i@-@*-@h
h@d MMj@  \@ ""@D   urn:groove.net:Component Name2
tp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.
ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Headerry=He#$~    urn:groo
ve.net:Component Name2GlobalLookupColumnHeaders  urn:groove.net:ComponentResourceo  urn:gro
et:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Packag
e=net.groove.Groove.ToolComponents@?@    &Factory=HeaderrI  8 -  urn:groove.net:Co
.o.  urn:groove.net:ComponentResource- URL(http://components.groove.net/Groove/Components/R
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=Headerr  urn:groove.net:Component  Name$PreviewControlCodea  urn:groove.net:C
rce# urn:groove.net:ComponentConnections SCRIPT SCRIPTINTERFACE SCRIPT urn:groove.net:Pr
e.net:ComponentResource URL2http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=ScriptHost2'# urn:groove.net:ComponentConnections urn:groove.net:Connection urn:groove.
nnection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection ur
t:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection
e.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connec
roove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Co
ion urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:gro
nection urn:groove.net:Connectionu urn:groove.net:Connection NameWebBrowserView
 ConnectionID0u urn:groove.net:Connection NameMoveLeftButton/
 ConnectionID1u urn:groove.net:Connection NameMoveRightButton
 ConnectionID2} urn:groove.net:Connection Name$ShowBorderCheckboxn
 ConnectionID3y urn:groove.net:Connection Name"FormColumnsButton
 ConnectionID4u urn:groove.net:Connection NameFormColumnsMenu
 ConnectionID4u urn:groove.net:Connection NameFieldNameLabele
 ConnectionID5  urn:groove.net:Connection Name*FieldColumnSpanButton
 ConnectionID6} urn:groove.net:Connection Name&FieldColumnSpanMenu
 ConnectionID6} urn:groove.net:Connection Name$FieldRowSpanButton
 ConnectionID7y urn:groove.net:Connection Name FieldRowSpanMenuN
 ConnectionID7q urn:groove.net:Connection NameStylesButtonlo
 ConnectionID8m urn:groove.net:Connection NameStylesMenuoo
 ConnectionID8q urn:groove.net:Connection NameTabTextLabel w
 ConnectionID9} urn:groove.net:Connection Name TabColumnsButtoni
 ConnectionID10nty urn:groove.net:Connection NameTabColumnsMenui
 ConnectionID10nt   urn:groove.net:Connection Name(MorePropertiesButton
 ConnectionID11am   urn:groove.net:Connection Name$MorePropertiesMenuam
 ConnectionID12du urn:groove.net:Connection NamePreviewLayout
 ConnectionID13} urn:groove.net:Connection Name"PreviewSourceTabs
 ConnectionID14   urn:groove.net:Connection Name8SplitterExpandCollapseButtonoo
 ConnectionID15Yq urn:groove.net:Connection NameStyleLabel f
 ConnectionID404q SCRIPT SRCDhttp://components.groove.net/Groove/Components/Root.osd?Packag
.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Version
=5&Factory=Open@ SCRIPTINTERFACE LIBIDL{366DFD51-2C22-438d-9135-5093E3102447}o IIDL{1AA5D42
2BA-4157-A1DD-FBE5E75D49D1}r\
function InitializePrevi
ewSubForm(i_pDesigner, i_pUIDelegate, i_Form, i_pDesign, i_bAdvancedDesign)
{
g_CallbackCode =
i_pDesigner;
g_UIDelegate = i
_pUIDelegate;
g_pDesign = i_pD
esign;
g_pForm = i_Form
;
g_FormColumns =
g_pForm.NumberOfColumns;
if (i_bAdvancedD
esign)
g_IsView
Source = false;
g_IsDirty = fals
e;
InitializeCompon
entStrings();
FillStylesMenu()
;
InitTabs(i_bAdva
ncedDesign);
InitFormPreview(
g_pForm);
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
function OnFormSaved(i_F
orceSave)
{
if (i_ForceSave
|| g_IsDirty)
{
if (g_Fi
elds != null && g_TabGroups != null && g_FieldGroups != null)
{
var Fields = g_Fields;
var FieldReferenceEnum = CreateUnknownEnumFromStringIIDs("{DA555BC0-637F-4043-89
86-C237280D7B02}", "{457B4BA1-FF07-4f90-9E4E-ADDFAF53099F}");
for (var i = 0; i < Fields.length; i++)
{
var Field = Fields[i];
// Create the field reference object and set all properties.
var FieldReference = g_CallbackCode.CreateFieldReference(Field.Name);
FieldReference.ClassName = Field.ClassName;
FieldReference.ColumnSpan = Field.ColumnSpan;
FieldReference.InheritFrom = Field.InheritFrom;
FieldReference.IsHidden = Field.IsHidden;
FieldReference.IsReadOnly = Field.IsReadOnly;
FieldReference.IsRequired = Field.IsRequired;
FieldReference.PropagateUpdates = Field.PropagateUpdates;
FieldReference.RowSpan = Field.RowSpan;
// Add the field reference object to the enum.
FieldReferenceEnum.Add(FieldReference);
}

var FieldGroups = g_FieldGroups;


var FieldGroupsEnum = CreateBSTREnum();
for (var i = 0; i < FieldGroups.length; i++)
{
var FieldGroup = FieldGroups[i];
var FieldsString = "";
for (var j = 0; j < FieldGroup.Fields.length; j++)
{
var Field = FieldGroup.Fields[j];
if (FieldsString != "")
FieldsString += ",";
FieldsString += Field.Name;
}
if (FieldsString == "")
FieldsString = ".";
FieldGroupsEnum.Add(FieldGroup.Name + "|" + FieldsString + "|" + FieldGroup.Colu
mnSpan + "|" + FieldGroup.RowSpan);
}

var TabGroups = g_TabGroups;


var TabGroupsEnum = CreateBSTREnum();
for (var i = 0; i < TabGroups.length; i++)
{
var TabGroup = TabGroups[i];
var TabGroupString = TabGroup.Name + "|" + TabGroup.ColumnSpan + "|" + TabGroup.
RowSpan;
for (var j = 0; j < TabGroup.Tabs.length; j++)
{
var Tab = TabGroup.Tabs[j];
TabGroupString += ":" + Tab.Name + "|";

var FieldsString = "";


for (var k = 0; k < Tab.Fields.length; k++)
{
var Field = Tab.Fields[k];
if (FieldsString != "")
FieldsString += ",";
FieldsString += Field.Name;
}
if (FieldsString == "")
FieldsString = ".";
TabGroupString += FieldsString + "|" + Tab.NumberOfColumns;
}
TabGroupsEnum.Add(TabGroupString);
}

var Columns = parseInt(FormColumnsButton.Label);


if (isNaN(Columns))
Columns = 1;

g_CallbackCode.ApplyLayoutChanges(FieldReferenceEnum.IGrooveUnknownEnum, FieldGr
oupsEnum.IGrooveBSTREnum, TabGroupsEnum.IGrooveBSTREnum, Columns);
}
}
g_IsDirty = fals
e;
}
function OnStylesUpdated
()
{
FillStylesMenu()
;
}
function SetCurrentPrevi
ewField(i_FieldName)
{
if (g_PreviewDoc
ument != null)
g_Previe
wDocument.parentWindow.selectFieldByName(i_FieldName);
}
~ SCRIPTi~
/* #############
##################
### GLOBA
L VARIABLES ###
#############
################## */
var g_CallbackCo
de;
var g_UIDelegate
;
var g_PreviewDoc
ument = null;
var g_CurrentFie
ld;
var g_pDesign;
var g_IsDirty =
false;
var g_IsViewSour
ce = false;
var g_pForm = nu
ll;
var g_Fields;
var g_FieldGroup
s;
var g_TabGroups;
var g_StyleBase;
var g_StyleName;
var g_FormColumn
s = 1;
var g_FieldColum
nSpan = 1;
var g_FieldRowSp
an = 1;
var g_TabColumns
= 1;
var g_IsTabSelec
ted = false;
var g_ImageURL =
"grooveFile:///ToolData\\groove.net\\CommonData\\CommonToolIconImages.jpg";
var g_ImageMaskU
RL ="grooveFile:///ToolData\\groove.net\\CommonData\\CommonToolIconImagesMask.bm
p";
function Initial
izeComponentStrings()
{
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
MoveLeft
Button.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_MOVE_LEFT
_UP);
MoveLeft
Button.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_TOOLTIP_MOV
_LFT_UP);
MoveRigh
tButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_MOVE_RIG
HT_DOWN);
MoveRigh
tButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_TOOLTIP_MO
V_RGT_DWN);
MoreProp
ertiesButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_TOOLT
IP_MORE_PROPS);
ShowBord
erCheckbox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_SHOW_
BORDER);
ShowBord
erCheckbox.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_TOOLTIP
_SH_BORDER);
FieldNam
eLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_NO_F
IELD_SEL));
TabTextL
abel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_NO_TAB
_SEL));
TabTextL
abel.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_NO_T
AB_SEL);
FieldCol
umnSpanButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_
COL_SPAN);
FieldRow
SpanButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_ROW
_SPAN);
TabColum
nsButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_TAB_C
OLS);
FormColu
mnsButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_COLU
MNS);
StyleLab
el.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_STYLE));
Splitter
ExpandCollapseButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_G
RP_FRM_SPL_EX_COL_TOOLTIP);
StylesBu
tton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_STYLE_BUT
TON_TOOLTIP);
// More
Menu
var UICo
mmand;
UIComman
d = MorePropertiesMenu.OpenUICommand("Forms_FormFieldIsHidden");
UIComman
d.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_MORE_MENU
_HIDDEN);
UIComman
d = MorePropertiesMenu.OpenUICommand("Forms_FormFieldIsReadOnly");
UIComman
d.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_MORE_MENU
_READONLY);
UIComman
d = MorePropertiesMenu.OpenUICommand("Forms_FormFieldIsRequired");
UIComman
d.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_MORE_MENU
_REQUIRED);
UIComman
d = MorePropertiesMenu.OpenUICommand("Forms_FormFieldPropagateUpdates");
UIComman
d.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_MORE_MENU
_PUSH_UPDATES);
UIComman
d = MorePropertiesMenu.OpenUICommand("Forms_FormFieldInheritFrom");
UIComman
d.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_MORE_MENU
_INHERIT_FROM);
UIComman
d = MorePropertiesMenu.OpenUICommand("Forms_FormFieldClassName");
UIComman
d.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_MORE_MENU
_CLASS_NAME);
}
/* #############
##################
### OBJEC
T CONTROLS ###
#############
################## */
function Splitte
rExpandCollapseButton_OnCommand(i_UICommand)
{
var IsCl
osed = g_CallbackCode.ToggleFormPreviewSplitter();
if (IsCl
osed)
SplitterExpandCollapseButton.IGrooveUICommand.SetImage(g_ImageURL, g_ImageMaskUR
L, 3360, 16, 16);
else
SplitterExpandCollapseButton.IGrooveUICommand.SetImage(g_ImageURL, g_ImageMaskUR
L, 3344, 16, 16);
}
function MoveLef
tButton_OnCommand(i_UICommand)
{
if (CanM
oveLeft())
{
int_SetIsDirty(true);
g_PreviewDocument.parentWindow.moveLeft();
}
}
function MoveLef
tButton_OnUpdateCommandState(i_UICommand)
{
i_UIComm
and.Enabled = CanMoveLeft();
}
function MoveRig
htButton_OnCommand(i_UICommand)
{
if (CanM
oveRight())
{
int_SetIsDirty(true);
g_PreviewDocument.parentWindow.moveRight();
}
}
function MoveRig
htButton_OnUpdateCommandState(i_UICommand)
{
i_UIComm
and.Enabled = CanMoveRight();
}
function ShowBor
derCheckbox_OnCommand(i_UICommand)
{
g_Previe
wDocument.parentWindow.changeShowBorder(GetShowBorder());
}
function ShowBor
derCheckbox_OnUpdateCommandState(i_UICommand)
{
i_UIComm
and.Enabled = !g_IsViewSource;
}
function FormCol
umnsMenu_OnUpdateCommandState(i_UICommand)
{
if (i_UI
Command.ID == g_FormColumns)
{
i_UICommand.RadioCheck = true;
i_UICommand.CheckState = GrooveCheckState_Checked;
}
else
i_UICommand.CheckState = GrooveCheckState_Unchecked;
}
function FormCol
umnsMenu_OnCommand(i_UICommand)
{
g_FormCo
lumns = i_UICommand.ID;
int_SetI
sDirty(true);
g_Previe
wDocument.parentWindow.changeColumns(g_FormColumns);
g_pForm.
NumberOfColumns = g_FormColumns;
FormColu
mnsButton.Label = g_FormColumns;
}
function StylesM
enu_OnUpdateCommandState(i_UICommand)
{
if (i_UI
Command.ID == 0 && g_StyleBase == "")
{
i_UICommand.RadioCheck = true;
i_UICommand.CheckState = GrooveCheckState_Checked;
}
else if
(i_UICommand.UserData == g_StyleName)
{
i_UICommand.RadioCheck = true;
i_UICommand.CheckState = GrooveCheckState_Checked;
}
else
i_UICommand.CheckState = GrooveCheckState_Unchecked;
}
function StylesM
enu_OnCommand(i_UICommand)
{
g_StyleB
ase = i_UICommand.Label;
g_StyleN
ame = i_UICommand.UserData;
if (g_pF
orm != null)
g_pForm.StyleName = g_StyleName;
OnFormSa
ved();
InitForm
Preview(g_pForm);
int_SetI
sDirty(true);
}
function FieldCo
lumnSpanMenu_OnUpdateCommandState(i_UICommand)
{
if (i_UI
Command.ID == g_FieldColumnSpan)
{
i_UICommand.RadioCheck = true;
i_UICommand.CheckState = GrooveCheckState_Checked;
}
else
i_UICommand.CheckState = GrooveCheckState_Unchecked;
if (i_UI
Command.ID > g_FormColumns && !g_IsTabSelected)
i_UICommand.Enabled = false;
else if
(i_UICommand.ID > g_TabColumns && g_IsTabSelected)
i_UICommand.Enabled = false;
else
i_UICommand.Enabled = true;
}
function FieldCo
lumnSpanMenu_OnCommand(i_UICommand)
{
g_FieldC
olumnSpan = i_UICommand.ID;
int_SetI
sDirty(true);
g_Previe
wDocument.parentWindow.changeColumnSpan(g_FieldColumnSpan);
FieldCol
umnSpanButton.Label = g_FieldColumnSpan;
}
function FieldRo
wSpanMenu_OnUpdateCommandState(i_UICommand)
{
if (i_UI
Command.ID == g_FieldRowSpan)
{
i_UICommand.RadioCheck = true;
i_UICommand.CheckState = GrooveCheckState_Checked;
}
else
i_UICommand.CheckState = GrooveCheckState_Unchecked;
i_UIComm
and.Enabled = true;
}
function FieldRo
wSpanMenu_OnCommand(i_UICommand)
{
g_FieldR
owSpan = i_UICommand.ID;
int_SetI
sDirty(true);
g_Previe
wDocument.parentWindow.changeRowSpan(g_FieldRowSpan);
FieldRow
SpanButton.Label = g_FieldRowSpan;
}
function MorePro
pertiesMenu_OnUpdateCommandState(i_UICommand)
{
var Comm
andURL = i_UICommand.CommandURL;
if (Comm
andURL == "Forms_FormFieldIsHidden" || CommandURL == "Forms_FormFieldIsReadOnly"
|| CommandURL == "Forms_FormFieldIsRequired" || CommandURL == "Forms_FormFieldP
ropagateUpdates")
{
var IsChecked = false;
if (CommandURL == "Forms_FormFieldIsHidden")
IsChecked = g_CurrentField.IsHidden;
else if (CommandURL == "Forms_FormFieldIsReadOnly")
IsChecked = g_CurrentField.IsReadOnly;
else if (CommandURL == "Forms_FormFieldIsRequired")
IsChecked = g_CurrentField.IsRequired;
else if (CommandURL == "Forms_FormFieldPropagateUpdates")
IsChecked = g_CurrentField.PropagateUpdates;

i_UICommand.RadioCheck = true;
i_UICommand.CheckState = IsChecked ? GrooveCheckState_Checked : GrooveCheckState
_Unchecked;
}
if (Comm
andURL == "Forms_FormFieldInheritFrom" || CommandURL == "Forms_FormFieldIsReadOn
ly" || CommandURL == "Forms_FormFieldIsRequired" || CommandURL == "Forms_FormFie
ldPropagateUpdates")
{
var FieldName = g_CurrentField.Name;
if (g_pDesign.Fields.DoesExistByName(FieldName))
{
var Field = g_pDesign.Fields.OpenByName(FieldName);
i_UICommand.Enabled = Field.IsPersistable;

// Disable the required option for attachment fields.


if (CommandURL == "Forms_FormFieldIsRequired" && Field.FieldType == GrooveFormsT
oolFieldType_Attachments)
i_UICommand.Enabled = false;
}
}
}
function MorePro
pertiesMenu_OnCommand(i_UICommand)
{
var Comm
andURL = i_UICommand.CommandURL;
if (Comm
andURL == "Forms_FormFieldIsHidden")
g_PreviewDocument.parentWindow.changeIsHidden();
else if
(CommandURL == "Forms_FormFieldIsReadOnly")
g_PreviewDocument.parentWindow.changeIsReadOnly();
else if
(CommandURL == "Forms_FormFieldIsRequired")
g_PreviewDocument.parentWindow.changeIsRequired();
else if
(CommandURL == "Forms_FormFieldPropagateUpdates")
g_PreviewDocument.parentWindow.changePropagateUpdates();
else if
(CommandURL == "Forms_FormFieldInheritFrom")
{
var InheritFrom = DisplayInheritFromDialog(g_CurrentField.Name, g_CurrentField.I
nheritFrom, g_pDesign);
if (InheritFrom != g_CurrentField.InheritFrom)
g_PreviewDocument.parentWindow.changeInheritFrom(InheritFrom);
else
return;
}
else if
(CommandURL == "Forms_FormFieldClassName")
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
var Window = UIPropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
var Account = PropertyList.OpenPropertyAsIUnknown(PROPERTY_ACCOUNT);
var InputBoxResult = App.GrooveInputBox(Window, Account, Priv.GetResourcedString
(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_ENTER_CLASS_NAME), GrooveInputBoxStyle_All
owEmptyValue, g_CurrentField.ClassName, Priv.GetResourcedString(IDS_FORMS_TOOL_D
ESIGNER_GRP_FRM_PREV_CLASS_NAME));
if (InputBoxResult.Result == GrooveDialogBoxResultCode_OK)
g_PreviewDocument.parentWindow.changeClassName(InputBoxResult.Data);
else
return;
}
// Set t
he dirty bit so the save button is enabled.
int_SetI
sDirty(true);
}

function TabColu
mnsMenu_OnUpdateCommandState(i_UICommand)
{
if (i_UI
Command.ID == g_TabColumns)
{
i_UICommand.RadioCheck = true;
i_UICommand.CheckState = GrooveCheckState_Checked;
}
else
i_UICommand.CheckState = GrooveCheckState_Unchecked;
}
function TabColu
mnsMenu_OnCommand(i_UICommand)
{
g_TabCol
umns = i_UICommand.ID;
int_SetI
sDirty(true);
g_Previe
wDocument.parentWindow.changeTabColumns(g_TabColumns);
TabColum
nsButton.Label = g_TabColumns;
}
function Preview
SourceTabs_OnSelectionChanged(i_ID, i_KeyState)
{
if (i_ID
== "PV")
g_IsViewSource = false;
else if
(i_ID == "HT")
g_IsViewSource = true;
g_Callba
ckCode.EndIMEComposition();
OnFormSa
ved();
InitForm
Preview(g_pForm);
}
function int_Get
StyleName()
{
var Styl
eName = g_StyleName;
return S
tyleName;
}
function int_Set
IsDirty(i_bIsDirty)
{
g_IsDirt
y = i_bIsDirty;
g_Callba
ckCode.SetIsFormPreviewDirty(i_bIsDirty);
g_Callba
ckCode.SetIsDirty(i_bIsDirty);
}
/* #############
##################
### PUBLI
C FUNCTIONS ###
#############
################## */
function GetHelp
Provider()
{
try
{
var RTFHelpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContaine
r.OpenComponentByName("RTFHelpProvider");
return RTFHelpProvider;
}
catch (e
rror)
{
}
finally
{
RTFHelpProvider = null;
delete RTFHelpProvider;
CollectGarbage();
}
}
function InitTab
s(i_bAdvancedDesign)
{
AddRemov
eMultiCellContents("PreviewSourceTabs", PreviewLayout,!i_bAdvancedDesign);
ShowHide
MultiCellContents("PreviewSourceTabs", PreviewLayout, 20, !i_bAdvancedDesign);
if (i_bA
dvancedDesign)
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
PreviewSourceTabs.DeleteAllTabs();
PreviewSourceTabs.AppendTab(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_
FRM_PREVIEW), "PV");
PreviewSourceTabs.AppendTab(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_
FRM_HTML_SOURCE), "HT");
if (g_IsViewSource)
PreviewSourceTabs.SetSelection("HT");
else
PreviewSourceTabs.SetSelection("PV");
}
}
function InitFor
mPreview(i_Form)
{
g_Previe
wDocument = null;
var Form
Columns = i_Form.NumberOfColumns;
if (Form
Columns <= 0)
FormColumns = 1;
FormColu
mnsButton.Label = FormColumns;
g_FormCo
lumns = FormColumns;
DisableC
omboBoxes();
if (type
of WebBrowserView.Control != "undefined" && WebBrowserView.Control != null)
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
var PreviewTemplateFilename = Priv.GetFormsPreviewTemplateFilename();

var FormID = i_Form.IGrooveFormsToolDesignObject.ID;


var Query = "FormID=" + escape(FormID) + "&FormPreview=true";
if (g_IsViewSource)
{
Query += "&ViewSource=true";
}

// Reload the web browser view to the preview template.


var PreviewTemplateURL = BuildPathFromBase("file", PreviewTemplateFilename, Quer
y);
WebBrowserView.Control.Navigate(PreviewTemplateURL);
}
FormColu
mnsButton.Enabled = !g_IsViewSource;
StylesBu
tton.Enabled = !g_IsViewSource;
}
function Display
InheritFromDialog(i_FieldName, i_CurrentInheritFromName, i_Design)
{
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
var Inhe
ritFromSubForm = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.Ope
nComponentByName("InheritFromSubForm");
var Wind
ow = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate.CreateWindowForSubFormPrivat
e(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_INHERIT_FROM_TITL
E), InheritFromSubForm, GROOVE_NULL);
var Inhe
ritFromHost = Window.OpenDelegateComponent();
InheritF
romHost.IGrooveFormsToolInheritFromSubFormPrivate.InitializeDialog(i_FieldName,
i_CurrentInheritFromName, i_Design, g_CallbackCode);
var Resu
lt = Window.DoModal();
if (Resu
lt == GrooveWindowResult_OK)
return InheritFromHost.IGrooveFormsToolInheritFromSubFormPrivate.InheritFromValu
e;
else
return i_CurrentInheritFromName;
}
function SetPrev
iewDocument(i_Document, i_Fields, i_FieldGroups, i_TabGroups)
{
g_Previe
wDocument = i_Document;
g_Fields
= i_Fields;
g_FieldG
roups = i_FieldGroups;
g_TabGro
ups = i_TabGroups;
}
function ClearPr
eviewDocument()
{
g_Previe
wDocument = null;
}
function SetCurr
entField(i_Field, i_bCallback)
{
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
if (type
of i_Field != "undefined" && i_Field != null)
{
if (i_Field.Type == 2) // FormObjectType_Tab defined in form.js.
{
FieldNameLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_P
REV_NO_FIELD_SEL));

FieldColumnSpanButton.Enabled = false;
FieldColumnSpanButton.Label = "";
FieldRowSpanButton.Enabled = false;
FieldRowSpanButton.Label = "";

TabTextLabel.SetText(i_Field.Name);
TabTextLabel.Tooltip = i_Field.Name;
TabColumnsButton.Enabled = true;
TabColumnsButton.Label = i_Field.NumberOfColumns;
g_TabColumns = i_Field.NumberOfColumns;

// Disable the more button for tabs.


MorePropertiesButton.Enabled = false;
}
else
{
TabTextLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PRE
V_NO_TAB_SEL));
TabTextLabel.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_P
REV_NO_TAB_SEL);
TabColumnsButton.Enabled = false;
TabColumnsButton.Label = "";

g_CurrentField = i_Field;
FieldNameLabel.SetText(i_Field.Name);

var Columns = 1;
if (i_Field.Tab != null)
{
Columns = parseInt(i_Field.Tab.NumberOfColumns);
g_IsTabSelected = true;
}
else
{
Columns = g_FormColumns;
g_IsTabSelected = false;
}

if (!isNaN(Columns))
{
if (Columns == 1)
{
FieldColumnSpanButton.Label= 1;
FieldColumnSpanButton.Enabled = false;

FieldRowSpanButton.Label = 1;
FieldRowSpanButton.Enabled = false;
}
else if (Columns > 1)
{
FieldColumnSpanButton.Label = i_Field.ColumnSpan;
FieldColumnSpanButton.Enabled = true;
g_FieldColumnSpan = i_Field.ColumnSpan;

FieldRowSpanButton.Label = i_Field.RowSpan;
FieldRowSpanButton.Enabled = true;
g_FieldRowSpan = i_Field.RowSpan;
}
}
else
{
FieldColumnSpanButton.Enabled = true;
FieldColumnSpanButton.Label = i_Field.ColumnSpan;
FieldRowSpanButton.Enabled = true;
FieldRowSpanButton.Label = i_Field.RowSpan;
}
// Disable the button for field and tab groups.
// FormObjectType_FieldGroup and FormObjectType_TabGroup defined in form.js.
if (i_Field.Type == 0 || i_Field.Type == 1)
MorePropertiesButton.Enabled = false;
else
MorePropertiesButton.Enabled = true;
}

if (i_bCallback)
g_CallbackCode.SetCurrentField(i_Field.Name);
}
else
{
DisableComboBoxes();
g_CurrentField = null;
}
}
function ClearCu
rrentField()
{
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
FieldNam
eLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_NO_F
IELD_SEL));
TabTextL
abel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_NO_TAB
_SEL));
TabTextL
abel.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_NO_T
AB_SEL);
DisableC
omboBoxes();
g_Curren
tField = null;
}
function Disable
ComboBoxes()
{
FieldCol
umnSpanButton.Label = "";
FieldCol
umnSpanButton.Enabled = false;
FieldRow
SpanButton.Label = "";
FieldRow
SpanButton.Enabled = false;
TabColum
nsButton.Label = "";
TabColum
nsButton.Enabled = false;
MoreProp
ertiesButton.Enabled = false;
}

function CanMove
Left()
{
if (g_Pr
eviewDocument != null &&
type
of g_PreviewDocument.parentWindow != "undefined" &&
g_PreviewDocument.parentWindow != null &&
type
of g_PreviewDocument.parentWindow.canMoveLeft != "undefined" &&
g_Pr
eviewDocument.parentWindow.canMoveLeft())
return true;
else
return false;
}
function CanMove
Right()
{
if (g_Pr
eviewDocument != null &&
type
of g_PreviewDocument.parentWindow != "undefined" &&
g_PreviewDocument.parentWindow != null &&
type
of g_PreviewDocument.parentWindow.canMoveRight != "undefined" &&
g_Pr
eviewDocument.parentWindow.canMoveRight())
return true;
else
return false;
}
function GetShow
Border()
{
if (Show
BorderCheckbox.CheckState == GrooveCheckState_Checked)
return true;
else
return false;
}
function FillSty
lesMenu()
{
var UICo
mmandContainer = StylesMenu.IGrooveUICommandContainer;
/*
UIComman
dContainer.RemoveAllUICommands();
var UICo
mmand = UICommandContainer.InsertUICommand("Forms_Styles_Standard", 0)
// Add t
he standard, plain style to the styles menu.
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
var Labe
l = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_ITEM_STANDARD_STYLE);
UIComman
d.ID = 0;
UIComman
d.Label = Label;
// Add a
ll of the default styles to the styles menu.
var inde
x = 1;
var Styl
eNameEnum = g_CallbackCode.OpenStyleNameEnumFromDisk();
while (S
tyleNameEnum.HasMore())
{
var FullName = StyleNameEnum.OpenNext();
var LowerCaseName = FullName.toLowerCase
();
var DisplayName = g_CallbackCode.OpenStyleDisplayNameFromFileName(FullName);
UICommand = UICommandContainer.InsertUICommand("Forms_Styles_"+ DisplayName, ind
ex);
UICommand.Label = DisplayName;
UICommand.ID = index;
UICommand.UserData = FullName;
index++;
}
var Styl
eEnum = g_pDesign.Styles.CreateEnum();
while (S
tyleEnum.HasMore())
{
var pStyle = StyleEnum.OpenNext();
var StyleName = pStyle.IGrooveFormsToolDesignObject.Name;
var BSTREnum = CreateBSTREnum();
BSTREnum.Add(StyleName);
var CustomStyleName = Priv.MessageFormat(IDS_FORMS_TOOL_DESIGNER_GRP_FRM_PREV_CU
STOM_STYLE_SUFFIX, BSTREnum.IGrooveBSTREnum);
UICommand = UICommandContainer.InsertUICommand("Forms_Styles_" + CustomStyleName
, index);
UICommand.Label = CustomStyleName;
UICommand.ID = index;
UICommand.UserData = StyleName;
index++;
}
*/
g_CallbackCode.PopulateStylesMenu(UICommandC
ontainer);
if (g_pF
orm != null)
{
g_StyleName = g_pForm.StyleName;
var LowerCaseName = g_StyleName.toLowerCase();
g_StyleBase = g_CallbackCode.OpenStyleDisplayNameFromFileName(g_StyleName);
if (g_StyleBase == "")
g_StyleBase = g_StyleName;
}
}
/* #############
#######################
### PASST
HROUGH FUNCTIONS ###
#############
####################### */
function GetForm
Style(i_FormID)
{
return g
_CallbackCode.GetFormStylePreview(int_GetStyleName());
}
function GetForm
Scripts(i_FormID)
{
return g
_CallbackCode.GetFormScriptsPreview();
}
function GetForm
HTML(i_FormID)
{
var Colu
mns = parseInt(FormColumnsButton.Label);
if (isNa
N(Columns))
Columns = 1;
return g
_CallbackCode.GetFormHTMLPreview(Columns);
}
function GetBind
ableURLByID(i_DesignObjectID)
{
return g
_CallbackCode.GetBindableURLByIDPreview(i_DesignObjectID);
}
function Display
TextInputDialog(i_Label, i_Title)
{
return g
_UIDelegate.DisplayTextInputDialog(i_Label, i_Title);
}
function Display
OKMessageBox(i_Message, i_Title)
{
g_UIDele
gate.DisplayOKMessageBox(i_Message, i_Title);
}
function OpenTra
nsaction()
{
return g
_UIDelegate.OpenTransaction();
}
function CreateS
andboxedRecord(i_RecordType)
{
return g
_CallbackCode.CreateSandboxedRecord(i_RecordType);
}
function GetRecordTypeFromFormID(i_FormID)
{
return g_UIDelegate.IGrooveFormsToolUIDelegate
Private.GetRecordTypeFromFormID(i_FormID);
}
function GetCurr
entAuthorName()
{
return g
_UIDelegate.CurrentAuthorName;
}
function GetTele
spaceDisplayName()
{
return g
_UIDelegate.TelespaceDisplayName;
}
function GetTool
DisplayName()
{
return g
_UIDelegate.ToolDisplayName;
}
function CreateD
ateFormatStyleFromAttributeValue(i_FormatString)
{
return g
_UIDelegate.IGrooveFormsToolUIDelegateFormPrivate.CreateDateFormatStyleFromAttri
buteValue(i_FormatString);
}
function ParseNu
mber(i_NumberString)
{
return g
_UIDelegate.ParseNumber(i_NumberString);
}
function ParseDa
te(i_DateValue, i_DateStyle)
{
try
{
var DateValue = g_UIDelegate.ParseDate(i_DateTimeValue, i_DateStyle);
return DateValue;
}
catch (e
rror)
{
return Number.NaN;
}
}
function ParseDa
teTime(i_DateTimeValue, i_DateStyle, i_TimeStyle)
{
try
{
var DateTimeValue = g_UIDelegate.ParseDateTime(i_DateTimeValue, i_DateStyle, i_T
imeStyle);
return DateTimeValue;
}
catch (e
rror)
{
return Number.NaN;
}
}
function FormatN
umber(i_Value, i_Precision, i_Symbol)
{
return g
_UIDelegate.FormatNumber(i_Value, i_Precision, i_Symbol);
}
function FormatD
ate(i_Date, i_DateStyle)
{
return g
_UIDelegate.FormatDate(i_Date, i_DateStyle);
}
function FormatD
ateTime(i_Date, i_DateStyle, i_TimeStyle)
{
return g
_UIDelegate.FormatDateTime(i_Date, i_DateStyle, i_TimeStyle);
}
function CreateM
emberNameEnum()
{
return g
_UIDelegate.CreateMemberNameEnum();
}
function CreateM
emberNameURLEnum()
{
return g
_UIDelegate.CreateMemberNameURLEnum();
}
function GetForm
sToolRecordFromRecord(i_Record)
{
return g
_UIDelegate.IGrooveFormsToolUIDelegatePrivate.GetFormsToolRecordFromRecord(i_Rec
ord);
}
// All lookups w
ill return empty values in preview because the
// lookups are a
lways performed on the disseminated design.
function GetLook
upTargetString(i_LookupObjectName)
{
return "
";
}
function LookupV
alues(i_TelespaceCanonicalURL, i_ToolName, i_ViewID, i_KeyColumn, i_KeyValue, i_
ReturnValuesFromColumnName, i_ReturnUnique, i_NoCache)
{
return G
etEmptyBSTREnum();
}
function LookupV
aluesByStringForFormScript(i_LookupString, i_HTMLDocument)
{
return G
etEmptyBSTREnum();
}
function LookupV
aluesByStringForMacro(i_LookupString, i_FormRecord)
{
return G
etEmptyBSTREnum();
}
function LookupV
aluesWithURLsByStringForFormScript(i_LookupString, i_HTMLDocument)
{
return G
etEmptyStringStringEnum();
}
function LookupV
aluesWithURLsByStringForMacro(i_LookupString, i_FormRecord)
{
return G
etEmptyStringStringEnum();
}
function GetEmpt
yBSTREnum()
{
var Empt
yBSTREnum = CreateBSTREnum();
return E
mptyBSTREnum.IGrooveBSTREnum;
}
function GetEmpt
yStringStringEnum()
{
var Empt
yStringStingEnum = CreateStringStringEnum();
return E
mptyStringStringEnum.IGrooveStringStringEnum;
}
function Convert
FromXMLName(i_XMLName)
{
return g
_UIDelegate.IGrooveFormsToolUIDelegateFormPrivate.ConvertFromXMLName(i_XMLName);
}
function GetForm
sToolRecordFromRecord(i_Record)
{
return g
_UIDelegate.IGrooveFormsToolUIDelegatePrivate.GetFormsToolRecordFromRecord(i_Rec
ord);
}
function AddHTML
DocumentForForm(i_Document, i_Record, i_ViewNameEnum)
{
return g
_UIDelegate.IGrooveFormsToolUIDelegateHTMLDocumentPrivate.AddHTMLDocumentForForm
(i_Document, i_Record, i_ViewNameEnum);
}
function RemoveH
TMLDocument(i_Document)
{
return g
_UIDelegate.IGrooveFormsToolUIDelegateHTMLDocumentPrivate.RemoveHTMLDocument(i_D
ocument);
}
function GetReso
urcedString(i_ResourceID)
{
return g
_UIDelegate.IGrooveFormsToolUIDelegatePrivate.GetResourcedString(i_ResourceID);
}
function Message
Format(i_ResourceID, i_pInputStrings)
{
return g
_UIDelegate.IGrooveFormsToolUIDelegatePrivate.MessageFormat(i_ResourceID, i_pInp
utStrings);
}
function GetIntl
IconPath()
{
return g
_UIDelegate.IGrooveFormsToolUIDelegateFormPrivate.GetIntlIconPath();
}
q urn:groove.net:PropertyList Enfor
ceInterfaces0  __Version4,1,0,00   urn:groove.net:Component  NameRTFHelpProvider  urn:gr
Resource    urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Compon
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=RTFHelpProvider  urn:groove.net:Component  NameRTFHelpProvider  urn:groove.ne
tResource   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Compo
Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ver
sion=0&Factory=RTFHelpProvider
  h  urn:groove.net:Component Name Tabs  urn:groove.net:ComponentResourcei urn:groove.net:Pr
ve.net:ComponentResourceh URL2http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=TabControl2TQurn:groove.net:PropertyListh  __Version4,1,0,0 h @W groovedocument:///
s/$userroot/schemas.xss/groovetooltemplateschema.xml,18a00f8a@urn:groove.net:Prop
ertyList,__IDp:urn:groove.net:Component,NameBurn:groove.net:Component,Category WX  urn:g
ponent NameToolNameLabel  urn:groove.net:ComponentResource  urn:groove.net:PropertyListo   u
t:ComponentResource  URL(http://components.groove.net/Groove/Components/Root.osd?Package
=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=S
tatic& urn:groove.net:PropertyList   __Version4,1,0,0 LabelDesign name:fy  BreakTypeWor
 FontStyleLabelText
 VAlignment
Centere l urn:groove.net:Component Name*PreviewInfoPathEditor  urn:groove.net:ComponentResou
oove.net:ComponentResourcel URL@http://components.groove.net/Groove/Components/Root.os
d?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&
Factory=IPXMLEditorWrappery urn:groove.net:Document xmlns:gurn:groove.net Name0GrooveForms5De
signer.grpUR urn:groove.net:GroupTemplateh    x   & urn:groove.net:Component  Name"Prev
onentResource' urn:groove.net:PropertyListhw'  urn:groove.net:ComponentResource& URL2http://c
ponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComp
onents.GrooveCommonComponents_DLL&Version=0&Factory=TabControl2Th urn:groove.net:Pro
pertyList&  __Version4,1,0,0 urn:groove.net:Component Name0PropertyDescriptionLabelma
e.net:ComponentResource  urn:groove.net:PropertyListo urn:groove.net:ComponentResource URL(htt
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCo
mponents.GrooveCommonComponents_DLL&Version=0&Factory=Static&; urn:groove.net:Property
List Label Select the field that contains the value to be inherited by this field.  B
reakTypeWordBreak  FontStyleLabelText  __Version4,1,0,0"MacrosOuterLayout 5$$InnerV
iewContainerw(5,InnerFormViewContainer%md=X BasicsFormLayouto Q7t$MorePropertiesMenu) :$
*tPyrVoapleuretLyaVbaelu`eC5omboBoxP42MaxRowHeightStyleComboBoxu; D o   p  urn:groove.net:Compone
ComponentResource  urn:groove.net:PropertyList# o   urn:groove.net:ComponentResource  URL(http:
nents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompon
ents.GrooveCommonComponents_DLL&Version=0&Factory=Static&#urn:groove.net:PropertyLis
t 
 VAlignment
Centere LabelDefault Sort:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Co
vancedViewLayout  urn:groove.net:ComponentResource urn:groove.net:PropertyList    urn:groove
omponentResource URL:http://components.groove.net/Groove/Components/Root.osd?Package=ne
t.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=HTML
TableLayoutxurn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout LayoutCLa
ertyValue Burn:groove.net:PropertyValue TABLE(TABLE  TR%TR TD>TD NAMEViewFilterToolVersionE
itCo&nCtorloulmnActionsLayouts  TR TD>TD NAMEViewFilterDefault Sort:  FontStyleLabelText
Layout  urn:groove.net:ComponentResource urn:groove.net:PropertyListP   urn:groove.net:Compon
Resource URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=HTMLTableLay
outP urn:groove.net:PropertyList  __Version4,1,0,0 _G_DefaultBackground  _G_Layout La
ckground[CQ LayoutP urn:groove.net:PropertyValueRBR urn:groove.net:PropertyValueQ TABLES~S TA
ckground"DefaultBackground TRT TRW TRY0T TRS TDU TDV U TDT  BottomPad3 ROWSPAN2 HEIGHT40
eationDate%W TRS TDXsX TDW LeftPad15Y TopPad2  BottomPad3 AdvancedDesignCheckbox%Y TRS TDZB
undP urn:groove.net:Color\G\ urn:groove.net:Color[ RGB#000000 urn:groove.net:Component Name
boxN  urn:groove.net:ComponentResource urn:groove.net:PropertyList]o  urn:groove.net:Componen
Resource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button\g ] urn:groo
ve.net:PropertyList  __Version4,1,0,0 Label:Show Advanced Design Features TooltipCheck
to show advanced design features. This preference will apply to all Forms toolsCh

eckbox Truea StyleCheckboxty urn:groove.net:Component Name TreeViewSplitterr  urn:groove.net:
source urn:groove.net:PropertyList^s  urn:groove.net:ComponentResource URL,http://components.
e.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groove
CommonComponents_DLL&Version=0&Factory=Splitter^ urn:groove.net:PropertyList Size
Mediumt OrientationVertical  __Version4,1,0,0  _G_Layout Layout_C_ Layout^ urn:groo
` urn:groove.net:PropertyValue_ PANE1a PANE2b2a PANE1` TreeViewDataListHb PANE2` Size80% Inne
ormLayout^\OKButton ?"PreviewFormLayout|k"n"MaxRowHeightLabelC>u FormSettingLabel6Gri
uterLayout  urn:groove.net:ComponentResource% urn:groove.net:PropertyListc %  urn:groove.net:
omponentResource$ URL:http://components.groove.net/Groove/Components/Root.osd?Package=
net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Mu
ltiCellLayoutc urn:groove.net:PropertyList$  __Version4,1,0,0 _G_BorderBackground  _G_L
td BorderBackgroundqCd Layoutc urn:groove.net:PropertyValueeEe urn:groove.net:PropertyValued M
IROWe ROWg ROWi ROWk ROWm(g ROWf CELLh;h CELLg HEIGHT20g: Tabs(i ROWf CELLj j  CELLi HEIGHT1 C
orderLeft1 CellBorderBottom1 CellBorderRight1 CellBorderBackground BorderBackground  InnerMac
wContainerBm ROWf CELLn CELLo CELLp2n CELLm HEIGHT35{o CELLm WIDTH175 TopPad3  BottomPad3Ri 
 SaveButton|p CELLm WIDTH175 TopPad3  BottomPad3 LeftPad5
 CancelButtonEq BorderBackgroundc urn:groove.net:ColorrGr urn:groove.net:Colorq RGB#919B9C6
ponent Name.InnerMacroViewContainer  urn:groove.net:ComponentResource7# urn:groove.net:Compo
nentConnections8{7  urn:groove.net:ComponentResource6 URL6http://components.groove.net/Groo
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=ViewContainer]8# urn:groove.net:ComponentConnections6 urn:g
roove.net:Connection9q9 urn:groove.net:Connection8
 ConnectionID0 NameMacrosLayout=S: urn:groove.net:Component NameMacrosLayout=S  urn:groove.n
esource; urn:groove.net:PropertyLists ;   urn:groove.net:ComponentResource: URL:http://compone
groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.G
rooveCommonComponents_DLL&Version=0&Factory=HTMLTableLayoutxs urn:groove.net:Propert
yList:  __Version4,1,0,0  _G_Layout LayouttCt Layouts urn:groove.net:PropertyValueuBu
pertyValuet TABLEvLv TABLEu HSPACE7 VSPACE7 TRw%w TRv TDx2x TDw NAME
Macrop        B urn:groove.net:Component Name$OptionsMacroLayout9  urn:groove.net:
net:PropertyListy C   urn:groove.net:ComponentResourceB URL:http://components.groove.net/Groov
e/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompo
nents_DLL&Version=0&Factory=MultiCellLayoutxy urn:groove.net:PropertyListB  __Version4
,1,0,0  _G_Layout LayoutzCz Layouty urn:groove.net:PropertyValue{E{ urn:groove.net:PropertyV
| MULTIROW{ BORDER} ROW~l} BORDER| TopPad5RightPad  7  BottomPad7 LeftPad2(~ ROW| CELL \  C
owWrapper
K urn:groove.net:Component Name$ManagerOuterLayoutt  urn:groove.net:ComponentResourceL urn:g
net:PropertyList  L  urn:groove.net:ComponentResourceK URL:http://components.groove.net/Groov
Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompone
nts_DLL&Version=0&Factory=MultiCellLayoutx  urn:groove.net:PropertyListK  __Version4
,1,0,0  _G_Layout Layout C   Layout  urn:groove.net:PropertyValue E   urn:groove.net:PropertyV
orderBackground BorderBackground (  ROW  CELL    CELL  CellBorderLeft1 CellBorderBottom1 Cell
nd BorderBackground  InnerManagerViewContainerW urn:groove.net:Component Name2InnerManagerV
er  urn:groove.net:ComponentResourceX# urn:groove.net:ComponentConnectionsY urn:groove.net
:Property[{X  urn:groove.net:ComponentResourceW URL6http://components.groove.net/Groove/Com
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=ViewContainer]Y# urn:groove.net:ComponentConnectionsW urn:groove.
net:ConnectionZ}Z urn:groove.net:ConnectionY
 ConnectionID0 Name$ManagerInnerLayout|[ urn:groove.net:PropertyW Name BorderBackground  urn:
et:Color\G\ urn:groove.net:Color[ RGB#919B9C  8   c 0] urn:groove.net:Component Name$Win3
mponentResource^ urn:groove.net:PropertyList  ^  urn:groove.net:ComponentResource] URLRhttp:/
nents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompon
ents.GrooveCommonComponents_DLL&Version=0&Factory=Win32WindowWrapperComponentT  urn:gr
oove.net:PropertyList]  __Version4,1,0,0` urn:groove.net:Component Name$ManagerInnerLayout
ove.net:ComponentResourcea urn:groove.net:PropertyList  a  urn:groove.net:ComponentResource`
tp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.
ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx  urn:groo
ve.net:PropertyList`  __Version4,1,0,0  _G_Layout Layout C   Layout  urn:groove.net:P
et:PropertyValue
h urn:groove.net:Component  MULTIROW ,  Name0 MULTIROW
 ManageROW
rInn(erLROW
ookupCELL
Layou3t CELL
urn:groove.net:ComponentResourcei
 Win32WindowWrapper 
oove.net:PropertyList  i   urn:groove.net:ComponentResourceh URL:http://components.groove.net/
oove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCo
mponents_DLL&Version=0&Factory=MultiCellLayoutx  urn:groove.net:PropertyListh  __Version4
,1,0,0  _G_Layout Layout C   Layout  urn:groove.net:PropertyValue E   urn:groove.net:PropertyV
ottomPad7 LeftPad7B  ROW  CELL  CELL  CELL _  CELL  HEIGHT30I WIDTH185 ResolveLookupButton[ 
tton(  ROW  CELL 8  CELL  GlobalLookupViewDisplay  urn:groove.net:Component NameToolNameEdi
ve.net:PropertyListk   urn:groove.net:ComponentResource  URL$http://components.groove.net/Gr
/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompon
ents_DLL&Version=0&Factory=Editmm urn:groove.net:PropertyList   TextLimit250  __Version4
,1,0,0  8  X    @u urn:groove.net:Component Name,ManagerInnerInfoLayout <  urn:groove
.net:PropertyList  v   urn:groove.net:ComponentResourceu URL:http://components.groove.net/Groo
/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompon
ents_DLL&Version=0&Factory=MultiCellLayoutx  urn:groove.net:PropertyListu  __Version4
,1,0,0  _G_Layout Layout C   Layout  urn:groove.net:PropertyValue E   urn:groove.net:PropertyV
ottomPad
ToolNameLabel(
7 LeftPad  ROW
7( ROW
CELL
 CELL
X CELL
D CELL
 HEIGHT HEIGHT
22 WIDTH
22 300
 ToolNameEdit( ROW  CELL. CELL HEIGHT5( ROW  CELLG CELL HEIGHT22 ToolVersionLabel( R
e.net:Component Name ToolVersionLabel  urn:groove.net:ComponentResource  urn:groove.net:Prope
yListo   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/Component
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=Static& urn:groove.net:PropertyList   __Version4,1,0,0 LabelDesign version
ordBreak  FontStyleLabelText
 VAlignment
Centere  urn:groove.net:Component NameToolVersionEdit  urn:groove.net:ComponentResource ur
opertyListk  urn:groove.net:ComponentResource  URL$http://components.groove.net/Groove/Comp
ts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&
Version=0&Factory=Editmm urn:groove.net:PropertyList   TextLimit250  __Version4,1,0,0 
ent NameAboutToolLabeli  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  ur
:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=
net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=St
atic& urn:groove.net:PropertyList  __Version4,1,0,0 LabelDescription:on  BreakTypeWor
 FontStyleLabelText
 VAlignment
Centere urn:groove.net:Component Name"AboutToolTextView  urn:groove.net:ComponentResource
t:PropertyListk  urn:groove.net:ComponentResource URL$http://components.groove.net/Groove/
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveTextTools_DLL&Ver
sBorderVisible
ion=0,3&FactToruye=aTReadOnlyextView2=   urn:groove.net:PropertyList
False  __Version4,1,0,0 urn:groove.net:Component NameApplyInfoButton  urn:groove.net:Com
ce urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.g
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=Button\g urn:groove.net:PropertyList Tooltip(Apply info s
tings.i StyleStandardButton/ Label
Apply  __Version4,1,0,0 urn:groove.net:Component Name&ResolveLookupButton  urn:groove.ne
Resource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://compon
e.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groove
CommonComponents_DLL&Version=0&Factory=Button\g urn:groove.net:PropertyList Tooltip4Resolv
tStyle
he loSotkaunpdatradrBguett.o>n/ LabelResolve  __Version4,1,0,0 urn:groove.net:Component Name$De
l  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:Component
rce URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groo
ve.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button\g urn:groove.net
:PropertyList Tooltip2Delete the lookup target. StyleStandardButton/ Label
Deletets   __Version
 urn:groove.net:Component
4,1,0,0  d  Name2GlobalLookupTableDataList  urn:groove.net
t:ComponentConnections
FingerprintID  urn:groove.net:PropertyList  urn:groove.net:ComponentResource
Groovee URLFhttp://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveListComponents_DLL&Version=0&Factory=TableDataLis
tDataSource]# urn:groove.net:ComponentConnections urn:groove.net:Connectionm urn:groove.n
ction
 ConnectionID0 NameRDBManagerrov urn:groove.net:PropertyList  __Version4,1,0,0_G_Views
  Vie
opertyValueP urn:groove.net:PropertyValue urn:groove.net:View+ urn:groove.net:View Name M
 DatabaseNameSandboxRDBn  TableNameHFormsToolGlobalLookupReferencesTable?
 InitialQuery*/[@ChangeStatus!='4'] urn:groove.net:Columns urn:groove.net:Columns urn:gro
umn urn:groove.net:Column urn:groove.net:Column urn:groove.net:Column urn:groove.net:Colu
olumn Name,LookupObjectParentNames SourceField,LookupObjectParentNames   urn:groove.net:Colu
kupObjectName  SourceField LookupObjectName   urn:groove.net:Column Name.LookupTargetDispla
Field.LookupTargetDisplayName urn:groove.net:Column Name6LookupObjectTypeDisplayName Sourc
d6LookupObjectTypeDisplayName   urn:groove.net:Column NameLookupStatusig SourceFieldLookupSt
e.net:Component Name0ChangeTargetLookupButton  urn:groove.net:ComponentResource urn:groove.n
:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/C
nents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_D
LL&Version=0&Factory=Button\g urn:groove.net:PropertyList Tooltip2Change the lookup target
leStandardButton/ Label
Modify/>  __Version4,1,0,0 urn:groove.net:Component Name*PropertyValueComboBox  urn
:ComponentResource urn:groove.net:PropertyLists  urn:groove.net:ComponentResource URL,http:/
ents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompone
nts.GrooveCommonComponents_DLL&Version=0&Factory=ComboBoxoT urn:groove.net:PropertyLi
st  __Version4,1,0,0X      urn:groove.net:Component Name.GlobalLookupViewD
ove.net:ComponentConnections urn:groove.net:PropertyListo  urn:groove.net:ComponentResourc
p://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.T
oolComponents.GrooveDataList_DLL&Version=0&Factory=DataListDisplay # urn:groove.net:Co
mponentConnections urn:groove.net:Connection urn:groove.net:Connection   urn:groove.net:Co
 ConnectionID0 Name2GlobalLookupTableDataList   urn:groove.net:Connection
 ConnectionID1 Name2GlobalLookupColumnHeaders urn:groove.net:PropertyList SingleSelectionTr
tColumnSet
Mainen  __Version4,1,0,0
 _G_GridLines
_G_ColumnSets 
 ColumnSets  GridLinesG
 ColumnSets urn:groove.net:PropertyValueU urn:groove.net:PropertyValue urn:groove.net:Col
t:ColumnSet Name Mainen urn:groove.net:Column urn:groove.net:Column urn:groove.net:Column u
lumn urn:groove.net:Column urn:groove.net:Column Name,LookupObjectParentNames Label Widt
e.net:Column Name LookupObjectName  Label AutoFitTrueaReadOnly  Truea urn:groove.net:Column N
playName Label AutoFitTrueaReadOnly  Truea urn:groove.net:Column Name6LookupObjectTypeDisplayN
l= ReadOnlyTruea  urn:groove.net:Column NameLookupStatusig Label Width10%ReadOnly  TrueaF  Grid
t:PropertyValueX urn:groove.net:PropertyValue urn:groove.net:GridLineDesc   urn:groove.ne
Solid Color#DCDCDC DisplayBoth  urn:groove.net:Component NamePageTitle  urn:groove.net:Compo
ve.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Gr
/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompon
ents_DLL&Version=0&Factory=Static& urn:groove.net:PropertyList
 VAlignment
Centere Label  __Version4,1,0,0 _G_Font Font< Font urn:groove.net:FontDesc  urn:groove
tyleBold Trueah v 
` urn:groove.net:Component Name&SandboxCreationDate  urn:groove.net:ComponentResource ur
ertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Compon
/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ve
rsion=0&Factory=Static& urn:groove.net:PropertyList
 VAlignment
Centere Label  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component Name$Inn
ontainer/  urn:groove.net:ComponentResource# urn:groove.net:ComponentConnections urn:groove.
et:PropertyList{  urn:groove.net:ComponentResource URL6http://components.groove.net/Groove/C
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=ViewContainer;# urn:groove.net:ComponentConnectionsT urn:groove.net:
PropertyList
 urn:groove.net:Component
  __Version4Name* ,1,0,T0reeViewTableDataList  urn:groove.net:ComponentResource # urn:g
net:ComponentConnections
FingerprintID  urn:groove.net:PropertyList urn:groove.net:ComponentResource
Groovee URLFhttp://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveListComponents_DLL&Version=0&Factory=TableDataLis
tDataSource]# urn:groove.net:ComponentConnections urn:groove.net:Connectionm urn:groove.net:C
ction
 ConnectionID0 NameRDBManagerro   urn:groove.net:PropertyList AllowSortingInQueriesTruea  __Ve
,1,0,0_G_Views
  ViewsB Views urn:groove.net:PropertyValueP urn:groove.net:PropertyValue
iew NameMainen
 DatabaseNameSandboxRDBn  TableName<FormsToolDesignerTreeViewTable InitialSort*ByIndex
AndDisplayName urn:groove.net:ColumnsL urn:groove.net:Columns urn:groove.net:Column   urn
splayName SourceFieldDisplayName urn:groove.net:SortsH urn:groove.net:Sorts urn:groove.net
t:Sort Name*ByIndexAndDisplayName SourceField
Index OrderAscending
 HierarchicalTruea urn:groove.net:Sort urn:groove.net:Sort
 CaseSensitive
HierarchicalTruea
False OrderAscending Name,SecondaryByDisplayNameu SourceFieldDisplayName p    x urn:gro
aList0  urn:groove.net:ComponentResource# urn:groove.net:ComponentConnections2 urn:groove.n
et:PropertyListo  urn:groove.net:ComponentResource URL*http://components.groove.net/Groove/C
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveDataList_DLL&Ver
sion=0&Factory=DataListDisplay]2# urn:groove.net:ComponentConnections urn:groove.net:Conn
ection3 3  urn:groove.net:Connection2
 ConnectionID0 Name*TreeViewTableDataList urn:groove.net:PropertyList SingleSelectionTruea D
umnSet
_G_ColumnSets
Mainen   __Version4,1,0,0
 ColumnSetsG
 ColumnSets urn:groove.net:PropertyValueU urn:groove.net:PropertyValue urn:groove.net:Col
t:ColumnSet Name Mainen SelectionHighlightingColumnDisplayName
 MaxRowHeight
1 L ine:C urn:groove.net:ColumnB urn:groove.net:Column LabelDisplayName Width100%eReadOnly  Tru
 ShowTwistyTruea Indent19L MinTwistyLevel1 NameDisplayName urn:groove.net:ColumnImages urn:gr
lumnDisplay urn:groove.net:ColumnImages urn:groove.net:Image urn:groove.net:Image urn:gr
ove.net:Image urn:groove.net:Image urn:groove.net:Image urn:groove.net:Image urn:groove.n
ove.net:Image urn:groove.net:Image urn:groove.net:Image urn:groove.net:Image urn:groove.n
ove.net:Image urn:groove.net:Image urn:groove.net:ImageV urn:groove.net:Image File
 ResourceID58:V urn:groove.net:Image File
 ResourceID59V urn:groove.net:Image File
 ResourceID60gV urn:groove.net:Image File
 ResourceID61YV urn:groove.net:Image File
 ResourceID62EV urn:groove.net:Image File
 ResourceID63eV urn:groove.net:Image File
 ResourceID64EV urn:groove.net:Image File
 ResourceID65V urn:groove.net:Image File
 ResourceID66uV urn:groove.net:Image File
 ResourceID67sV urn:groove.net:Image File
 ResourceID68 RV urn:groove.net:Image File
 ResourceID69</V urn:groove.net:Image File
 ResourceID70TV urn:groove.net:Image File
 ResourceID71V urn:groove.net:Image File
 ResourceID72>CV urn:groove.net:Image File
 ResourceID73 t  urn:groove.net:ColumnDisplay TruncationStyle0 urn:groove.net:Disp
tylesX urn:groove.net:DisplayStyles urn:groove.net:DisplayStyle urn:groove.net:DisplayStyle
pe DrawTimeCallback  Style4 Color#0000FF x 4 urn:groove.net:Component NameCheckAllButtone
tResource5 urn:groove.net:PropertyListo5  urn:groove.net:ComponentResource4 URL(http://compon
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=Button\gg urn:groove.net:PropertyList4 Toolti 
p8Check all fields in the listov  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex207 ImageHeight16pe> urn:groove.net:Component NameCheckNoneButton  urn:groove.ne
ource? urn:groove.net:PropertyListo?  urn:groove.net:ComponentResource> URL(http://components
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
oveCommonComponents_DLL&Version=0&Factory=Button\gk urn:groove.net:PropertyList> Tooltip<  Un
check all fields in the list/  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex208 ImageHeight16peX urn:groove.net:Component Name,InnerFormViewContainere  urn:
mponentResourceY urn:groove.net:PropertyZ{Y  urn:groove.net:ComponentResourceX URL6http://com
nents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompon
ents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer|Z urn:groove.net:Pro
pertyX
urn:groove.net:Component
 Name BorderBackgrounName$ d  urn:groove.net:Color[
PropertyValueLabel="G[ urn:groove.net:ComponentResource
urn:groove.net:ColorZ RGB#919B9Curn:gr 
et:PropertyList
URL(http://componenurn:groove.net:ComponentResource
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static& urn:groove.net:Pr
opertyList
 VAlignment
Centere Label2Inherit value from field:  FontStyleLabelText  __Version4,1,0,0    H  
nent Name ModifyFormLayouty  urn:groove.net:ComponentResourceI urn:groove.net:PropertyList I
ove.net:ComponentResourceH URL:http://components.groove.net/Groove/Components/Root.osd
?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&F
actory=MultiCellLayoutx urn:groove.net:PropertyListH  __Version4,1,0,0  _G_Layout La
net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  PMULTIROW
  ROW ROW
 ROW
 ROW(ROW
  CELL ;  CELL  HEIGHT20g: Tabs(
 ROW CELL  CELL
 HEIGHT1 CellBorderBottom0 CellBorderBackground BorderBackground (
CELL
ROW CELL
 CellBorderLeft1 CellBorderBottom1 CellBorderRight1 CellBorderBackground BorderBackground  In
wContainerB ROW CELL CELL CELL2 CELL HEIGHT35  CELL RightPad
 5  BottomPad3 NAME
Secondro WIDTH165 TopPad3
 SaveButton  CELL LeftPad5 NAME
Third WIDTH180 TopPad3  BottomPad3
 CancelButton\ urn:groove.net:Component Name0BasicsInfoPathFormLayout)  urn:groove.net:Comp
ource] urn:groove.net:PropertyList ]  urn:groove.net:ComponentResource\ URL:http://components
ve.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groov
eCommonComponents_DLL&Version=0&Factory=HTMLTableLayoutx urn:groove.net:PropertyList\  _
_Version
FormNameLabel0
4,1,0,0 TR
 _G_Layout
 TD TDp TD
 Layout
 HEIGHT C 2Layout
2 WIDTH
 urn:groove.net:PropertyValue
300 LeftPad5 FormNameEditControl B urn:groove.net:Proper
 TD% TR TDY TD COL
lutionButtonRO  urn:groove.net:ComponentResourceo urn:groove.net:PropertyList oo  urn:groove
.net:ComponentResourcen URL(http://components.groove.net/Groove/Components/Root.osd?Pa
ckage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fact
ory=Button\g%  urn:groove.net:PropertyListn Tooltip^Import the solution again to update it
's design StyleSmallTextButton Label$Re-Import Solution/  __Version4,1,0,0
t urn:groove.net:Component Name BasicsFormLayoutx  urn:groove.net:ComponentResourcew urn:gro
t:PropertyList! w   urn:groove.net:ComponentResourcet URL:http://components.groove.net/Groove/
Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompone
nts_DLL&Version=0&Factory=MultiCellLayoutx! urn:groove.net:PropertyListt  __Version4
,1,0,0  _G_Layout Layout"C" Layout! urn:groove.net:PropertyValue#E# urn:groove.net:PropertyV
$FormNameLabel(
 MULTIROW# ROW%' ROW$ ROW' CELL(
ROW)(%( ROW$
CELL' CELL&
 HEIGHT
W& 2CELL%
5 TopPad
 HEIGHT
5 LeftPad
18L LeftPad
5 WIDTH5 275 FormNameEditControl()
Component Name&PreviewFormSplitter  urn:groove.net:ComponentResource  urn:groove.net:Property
st+s   urn:groove.net:ComponentResource  URL,http://components.groove.net/Groove/Components/R
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=Splitter+ urn:groove.net:PropertyList  Size
Small OrientationHorizontal
 __Version4,1,0,0  _G_Layout Layout,C, Layout+ urn:groove.net:PropertyValue-P-
pertyValue, PANE1. PANE2/M. PANE1- Size150 FormFieldsViewContainer4/ PANE2- PreviewFormSubFor
nox  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:Component
ource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button\g urn:groove.n
et:PropertyList Tooltip"Close the window. StyleStandardButton/ LabelOK  __Version4,1,0,0< 
viewFormSubFormto  urn:groove.net:ComponentResource  urn:groove.net:ComponentGroup o   urn:gr
net:ComponentResource  URL*http://components.groove.net/Groove/Components/Root.osd?Packa
ge=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory
=SubForm  urn:groove.net:ComponentGroup  HelpInfoProviderRTFHelpProviderDelegate$  PreviewContr
ea DefaultView(PreviewViewContainer  urn:groove.net:Component  urn:groove.net:Component  urn
.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component
.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component
.net:Component
 urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component! urn:groove.net:C
ent& urn:groove.net:Component) urn:groove.net:Component0 urn:groove.net:Component; urn:groove
t:ComponentB urn:groove.net:ComponentP urn:groove.net:ComponentW urn:groove.net:Componentc ur
roove.net:Componentt urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Compo
t  urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.n
t urn:groove.net:Component urn:groove.net:Component  urn:groove.net:Component  Name(Prev
ove.net:ComponentResource #  urn:groove.net:ComponentConnections  urn:groove.net:PropertyLis
t0{   urn:groove.net:ComponentResource  URL6http://components.groove.net/Groove/Components/Ro
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=ViewContainer] #  urn:groove.net:ComponentConnections  urn:groove.net:Connection q
ove.net:Connection 
 ConnectionID0 NamePreviewLayoutT0 urn:groove.net:PropertyList   __Version4,1,0,0 urn:groo
ponent  Name8SplitterExpandCollapseButtonoo  urn:groove.net:ComponentResource urn:groove.net
opertyList@o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Comp
ents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DL
L&Version=0&Factory=Button\g/@ urn:groove.net:PropertyList Tooltip    __Version4,1,0,0
 ImageWidth16pe Style$StandardIconButton/
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16pe
 ImageIndex209` k    .   urn:groove.net:Component  NamePreviewLayout  urn:groove.net:Com
tyList1    urn:groove.net:ComponentResource  URL:http://components.groove.net/Groove/Componen
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=MultiCellLayoutx1 urn:groove.net:PropertyList   __Version4,1,0,0  _G_L
t2C2 Layout1 urn:groove.net:PropertyValue3E3 urn:groove.net:PropertyValue2 MULTIROW4  P4MULTIROW

8 CELL96 CELL5  BottomPad5 LeftPad5 HEIGHT75l= WIDTH175 TopPad5 StyleSettingsViewContainer 7
ftPad5! FieldPreviewSettingsViewContainer 8  CELL5 TopPad5  BottomPad5 LeftPad5RightPad  5
sViewContainer 9 CELL5 WIDTH30IRightPad  5 TopPad5  BottomPad45t SplitterExpandCollapseB
reviewSourceTabsCell PreviewSourceTabs(< ROW4 CELL=/= CELL< WebBrowserView(> ROW4 CELL?p? CEL
eckbox urn:groove.net:Component  NameMoveLeftButton/  urn:groove.net:ComponentResource u
ertyListAo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Compon
ts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&
Version=0&Factory=Button\gsA urn:groove.net:PropertyList TooltipD  Move the selected field le
ft or up  __Version4,1,0,0
 ImageWidth16pe Style$StandardIconButton/
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16pe
 ImageIndex215 urn:groove.net:Component NameCancelButton</  urn:groove.net:ComponentResour
:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Com
nents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_D
LL&Version=0&Factory=Button\g urn:groove.net:PropertyList CancelTruea  __Version4,1,0,0 Lab
l&CancelMnemonic

Alt+C StyleStandardButton/,        urn:groove.net:Component  NameMoveRightButton  urn
:PropertyListBo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/C
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=Button\gwB urn:groove.net:PropertyList TooltipJ  Move the selected fie
ld right or down  __Version4,1,0,0
 ImageWidth16pe Style$StandardIconButton/
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16pe
 ImageIndex216 urn:groove.net:Component  Name(MorePropertiesButton   urn:groove.net:Compon
ove.net:PropertyListCo  urn:groove.net:ComponentResource URL(http://components.groove.net/G
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=Button\g C urn:groove.net:PropertyList  Tooltip*More prope
rties menu.ImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImage
s.jpg
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmp  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe Menu$MorePropertiesMenuam
 ImageIndex219 ImageHeight16pe urn:groove.net:Component  Name"FormColumnsButton  urn:groov
esource urn:groove.net:PropertyListNo  urn:groove.net:ComponentResource URL(http://compone
ve.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groov
eCommonComponents_DLL&Version=0&Factory=Button\gN urn:groove.net:PropertyList
 Label1 TooltiprChoose the number of columns the form layout should have.ImageURL  g rooveFil
e:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmp  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe MenuFormColumnsMenu
 ImageIndex214 ImageHeight16pe  P    
 urn:groove.net:Component  Name$MorePropertiesMenuam  urn:groove.net:ComponentResource urn
:PropertyListDk  urn:groove.net:ComponentResource URL$http://components.groove.net/Groove/C
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_ _G_UICommands
DLL&Version=0&Factory=MenuW D urn:groove.net:PropertyList  __Version4,1,0,0
 UICommandsEGE
 UICommandsD urn:groove.net:PropertyValueF$F urn:groove.net:PropertyValueE urn:groove.net:UIC
dG urn:groove.net:UICommandH urn:groove.net:UICommandI urn:groove.net:UICommandJ! urn:groove.
t:UICommandSeparatorK urn:groove.net:UICommandL urn:groove.net:UICommandM G  urn:groove.net:UI
mmandF URL.Forms_FormFieldIsHidden ID1 Label
Hiddene= H urn:groove.net:UICommandF URL2Forms_FormFieldIsReadOnly ID2 LabelRead Only I  urn:g
CommandF URL2Forms_FormFieldIsRequired ID3 LabelRequiredorJ urn:groove.net:UICommandF URL>Fo
ldPropagateUpdates ID4 Label2Push Updates to ResponsesPK! urn:groove.net:UICommandSeparato
rF URLSep1nnL urn:groove.net:UICommandF URL4Forms_FormFieldInheritFromLe ID5 LabelInherit Fro
.net:UICommandF URL0Forms_FormFieldClassNameft ID6 LabelClass Name... urn:groove.net:Compo
onlo  urn:groove.net:ComponentResource urn:groove.net:PropertyList^o  urn:groove.net:Componen
Resource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button\g ^ urn:groo
ve.net:PropertyList  TooltipLChoose the style this form should use."LImageURL g roov
eFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmp  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe MenuStylesMenuoo
 ImageIndex213 ImageHeight16pe$ManagerInnerLayout&!`"PreviewSourceTabs&$InheritFromSubF
tLabeli  ResponseCheckboxF4ModifyCPButtoni82AllowViewToBeLookupTarget;F# FieldGroup
ViewViewContainer S aveButton19 ,   O8 urn:groove.net:Component  NameFormColumnsMe
PropertyListOk  urn:groove.net:ComponentResource URL$http://components.groove.net/Groove/Co
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
D _G_UICommands
LL&Version=0&Factory=MenuW O  urn:groove.net:PropertyList  __Version4,1,0,0
 UICommandsPGP
 UICommandsO urn:groove.net:PropertyValueQQ urn:groove.net:PropertyValueP
 urn:groove.net:UICommandR urn:groove.net:UICommandS urn:groove.net:UICommandT urn:groove.net
ICommandU urn:groove.net:UICommandV urn:groove.net:UICommandW urn:groove.net:UICommandX urn:g
ve.net:UICommandY urn:groove.net:UICommandZ urn:groove.net:UICommand[ urn:groove.net:UIComma
nd\ urn:groove.net:UICommand] R  urn:groove.net:UICommandQ URL&Forms_FormColumns_1 ID1 Label1
UICommandQ URL&Forms_FormColumns_2 ID2 Label2 T  urn:groove.net:UICommandQ URL&Forms_FormColum
ove.net:UICommandQ URL&Forms_FormColumns_4 ID4 Label4 V  urn:groove.net:UICommandQ URL&Forms_F
5 ID5 Label5 W urn:groove.net:UICommandQ URL&Forms_FormColumns_6 ID6 Label6 X  urn:groove.net:
Columns_7 ID7 Label7 Y urn:groove.net:UICommandQ URL&Forms_FormColumns_8 ID8 Label8 Z  urn:gro
rms_FormColumns_9 ID9 Label9 [ urn:groove.net:UICommandQ URL(Forms_FormColumns_10
 ID10nt Label10nt \  urn:groove.net:UICommandQ URL(Forms_FormColumns_11nn ID11am Label11am ]  u
andQ URL(Forms_FormColumns_12om ID12d Label12d
 urn:groove.net:PropertyList_
urn:groove.net:Component
urn:groove.net:ComponentResource
 Name
k StylesMenuoo  urn:groove.net:ComponentResource
 URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MenuW _ urn:groove.net:Pr
opertyList
 _G_UICommands  __Version
 4,1,0,0
 UICommands`G`
 UICommands_ urn:groove.net:PropertyValueaUa urn:groove.net:PropertyValue` urn:groove.net:UIC
ndb b urn:groove.net:UICommanda URL*Forms_Styles_Standard ID0 Label- Standard -alt  
 urn:groove.net:Component  Name$ShowBorderCheckboxn  urn:groove.net:ComponentResource urn
rtyListco  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Component
s/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&V
ersion=0&Factory=Button\g c  urn:groove.net:PropertyList  __Version4,1,0,0 Label4Show border (
review only)  TooltipBy checking this checkbox the table border will be d
isplayed in the form preview.Checkbox
 Truea StyleCheckboxty urn:groove.net:Component  NameSty
groove.net:ComponentResource urn:groove.net:PropertyListdo  urn:groove.net:ComponentResourc
e URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static&d urn:groove.net:
PropertyList ClipEndEllipsis
 VAlignment
Centere Label
Style  __Version4,1,0,0 _G_Font Fonte<e Fontd urn:groove.net:FontDescfqf urn:groove.net:Fon
abelText  StyleBoldTruea! urn:groove.net:Component  DisplayName Web Browser Viewe Nam
rView  urn:groove.net:ComponentResource" urn:groove.net:PropertyListg "   urn:groove.net:Compo
entResource! URLLhttp://components.groove.net/Groove/Components/Root.osd?Package=net.g
roove.Groove.ToolComponents.GrooveWebBrowserTool_DLL&Version=2,6&Factory=WebBrow
serControlWrappercg urn:groove.net:PropertyList! DisableMnemonicsByResourceID:4366,4367,43
68,4369,4370,4371 DisableNavigationSoundTruea  __Version4,1,0,0) urn:groove.net:Component
StyleSettingsViewContaineroo  urn:groove.net:ComponentResource*# urn:groove.net:Compon
entConnections. urn:groove.net:PropertyListi{*  urn:groove.net:ComponentResource) URL6http://
mponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCom
ponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer].# urn:groove.ne
t:ComponentConnections) urn:groove.net:Connection/}/ urn:groove.net:Connection.
 ConnectionID
_G_Background0 Name&StyleSettingsLayout i  urn:groove.net:PropertyList)  __Version4,1,0,0
 BackgroundjIj
 Backgroundi urn:groove.net:BackgroundStylekgk urn:groove.net:BackgroundStylej Style"SectionB
round\ z  Y     0 urn:groove.net:Component  Name&StyleSettingsLayout  urn:groove.net:C
ertyListl 1   urn:groove.net:ComponentResource0 URL:http://components.groove.net/Groove/Compon
ents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DL
L&Version=0&Factory=MultiCellLayoutxl urn:groove.net:PropertyList0  __Version4,1,0,0
G_Layout LayoutmCm Layoutl urn:groove.net:PropertyValuenEn urn:groove.net:PropertyValuem MULTI 
p ROWo CELLq{q CELLp HEIGHT20g: LeftPad5  BottomPad3 TopPad2
 StyleLabel5r ROWo CELLs CELLtUs CELLr WIDTH40u LeftPad5
 StylesButtonZt CELLr WIDTH55 LeftPad5 FormColumnsButton; urn:groove.net:Component  NameBFi
tainer  urn:groove.net:ComponentResource<# urn:groove.net:ComponentConnections@ urn:groove
.net:PropertyListu{<  urn:groove.net:ComponentResource; URL6http://components.groove.net/Gr
oove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCo
mponents_DLL&Version=0&Factory=ViewContainer]@# urn:groove.net:ComponentConnections
; urn:groove.net:ConnectionA A urn:groove.net:Connection@
 ConnectionID
_G_Background0 Name4FieldPreviewSettingsLayout u urn:groove.net:PropertyList;  __Version4,1
 BackgroundvIv
 Backgroundu urn:groove.net:BackgroundStylewgw urn:groove.net:BackgroundStylev Style"SectionB
roundP urn:groove.net:Component  NameFieldNameLabele  urn:groove.net:ComponentResourceQ urn
PropertyList oQ  urn:groove.net:ComponentResourceP URL(http://components.groove.net/Groove/Co
mponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponent
s_DLL&Version=0&Factory=Static&  urn:groove.net:PropertyListP ClipEndEllipsis
 VAlignment
Centere  __Version4,1,0,0 _G_Font Font <  Font  urn:groove.net:FontDesc q   urn:groove.net:Fon
 StyleBoldTruea      pB urn:groove.net:Component  Name4FieldPreviewSettingsLayout  urn:
oove.net:PropertyListx C  urn:groove.net:ComponentResourceB URL:http://components.groove.net/
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=MultiCellLayoutxx urn:groove.net:PropertyListB  _
_Version4,1,0,0  _G_Layout LayoutyCy Layoutx urn:groove.net:PropertyValuezEz urn:groove.net:P
uey MULTIROW{
 8{MULTIROWz
  ROW| ROW~(| ROW{ CELL} } CELL| HEIGHT20g: LeftPad5  BottomPad3 T
ftPad5 MoveRightButton^  CELL~ WIDTH55 LeftPad5 FieldColumnSpanButton[  CELL~ WIDTH55 LeftPad
ertiesButtonW urn:groove.net:Component  Name*FieldColumnSpanButton  urn:groove.net:Componen
ceX urn:groove.net:PropertyList o X  urn:groove.net:ComponentResourceW URL(http://components.g
e.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groove
CommonComponents_DLL&Version=0&Factory=Button\gt  urn:groove.net:PropertyListW
 Label1 Tooltip ImageURL  g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.j
pg
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmp  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe Menu&FieldColumnSpanMenu
 ImageIndex217 ImageHeight16pe urn:groove.net:Component  NameTabTextLabel w  urn:groove.ne
ce urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.g
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=Static& urn:groove.net:PropertyList ClipEndEllipsis
 VAlignment
Centere  __Version4,1,0,0 _G_Font Font< Font urn:groove.net:FontDescq urn:groove.net:Fon
 StyleBoldTrueax  (   H c urn:groove.net:Component  Name&FieldColumnSpanMenu  urn:groove.
ve.net:PropertyList k d  urn:groove.net:ComponentResourcec URL$http://components.groove.net/Gr
oove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCo
m_G_UICommands
ponents_DLL&Version=0&Factory=MenuW   urn:groove.net:PropertyListc  __Version4,1,0,0
 UICommands G  
 UICommands  urn:groove.net:PropertyValue    urn:groove.net:PropertyValue 
 urn:groove.net:UICommand  urn:groove.net:UICommand  urn:groove.net:UICommand  urn:groove.net
nd  urn:groove.net:UICommand  urn:groove.net:UICommand  urn:groove.net:UICommand  urn:groove.
nd  urn:groove.net:UICommand  urn:groove.net:UICommand  urn:groove.net:UICommand  urn:groove.
nd    urn:groove.net:UICommand  URL.Forms_FieldColumnSpan_1 ID1 Label1   urn:groove.net:UICom
pan_2 ID2 Label2   urn:groove.net:UICommand  URL.Forms_FieldColumnSpan_3 ID3 Label3   urn:gro
dColumnSpan_4 ID4 Label4   urn:groove.net:UICommand  URL.Forms_FieldColumnSpan_5 ID5 Label5 
rms_FieldColumnSpan_6 ID6 Label6   urn:groove.net:UICommand  URL.Forms_FieldColumnSpan_7 ID7
Command  URL.Forms_FieldColumnSpan_8 ID8 Label8   urn:groove.net:UICommand  URL.Forms_FieldCo
e.net:UICommand  URL0Forms_FieldColumnSpan_10. ID10nt Label10nt   urn:groove.net:UICommand  U
umnSpan_11r ID11am Label11am   urn:groove.net:UICommand  URL0Forms_FieldColumnSpan_12  ID12d
nent  Name$InheritFromSubForml  urn:groove.net:ComponentResource urn:groove.net:ComponentGro
roove.net:ComponentResource URL*http://components.groove.net/Groove/Components/Root.osd
?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&F
actory=SubForm urn:groove.net:ComponentGroup Delegate  InheritFromCode DefaultView0InheritFro
ontainert\ urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:gr
t:Component
urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Co
t%   G t urn:groove.net:Component  Name$FieldRowSpanButton   urn:groove.net:ComponentRes
rtyList o u  urn:groove.net:ComponentResourcet URL(http://components.groove.net/Groove/Compone
nts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL
&Version=0&Factory=Button\gp  urn:groove.net:PropertyListt
 Label1 Tooltip ImageURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.j
pg
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmp  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe Menu FieldRowSpanMenuN
 ImageIndex218 ImageHeight16pe  urn:groove.net:Component  Name>TabPreviewSettingsViewContai
net:ComponentResource #  urn:groove.net:ComponentConnections  urn:groove.net:PropertyList{  
ove.net:ComponentResource  URL6http://components.groove.net/Groove/Components/Root.osd?P
ackage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fac
tory=ViewContainer] #  urn:groove.net:ComponentConnections  urn:groove.net:Connection    urn:g
Connection 
 ConnectionID
_G_Background0 Name0TabPreviewSettingsLayout <   urn:groove.net:PropertyList   __Ve
 BackgroundI
 Background urn:groove.net:BackgroundStyleg urn:groove.net:BackgroundStyle Style"SectionB
  urn:groove.net:Component  Name0TabPreviewSettingsLayout <  urn:groove.net:ComponentRe
groove.net:PropertyList    urn:groove.net:ComponentResource  URL:http://components.groove.ne
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList   __Version4
,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyV
ottomPad3 TopPad2
 TabTextLabel( ROW CELLY CELL WIDTH50 LeftPad5 TabColumnsButton  P      urn:groove.
groove.net:PropertyList k    urn:groove.net:ComponentResource  URL$http://components.groove.ne
oove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCo
m_G_UICommands
ponents_DLL&Version=0&Factory=MenuW   urn:groove.net:PropertyList   __Version4,1,0,0
 UICommands G  
 UICommands  urn:groove.net:PropertyValue    urn:groove.net:PropertyValue 
 urn:groove.net:UICommand  urn:groove.net:UICommand  urn:groove.net:UICommand  urn:groove.net
nd  urn:groove.net:UICommand  urn:groove.net:UICommand urn:groove.net:UICommand urn:groove.
nd urn:groove.net:UICommand urn:groove.net:UICommand urn:groove.net:UICommand urn:groove.
nd   urn:groove.net:UICommand  URL(Forms_FieldRowSpan_1di ID1 Label1   urn:groove.net:UIComm
2L  ID2 Label2   urn:groove.net:UICommand  URL(Forms_FieldRowSpan_3 ID3 Label3   urn:groove.n
pID
an4_4Label
> 4   urn:groove.net:UICommand  URL(Forms_FieldRowSpan_5  ID5 Label5   urn:groove.ne
an_6Ve ID6 Label6   urn:groove.net:UICommand  URL(Forms_FieldRowSpan_7W> ID7 Label7   urn:gro
dRowSpan_8L  ID8 Label8   urn:groove.net:UICommand  URL(Forms_FieldRowSpan_9  ID9
ommand  URL*Forms_FieldRowSpan_10 ID10nt Label10nt  urn:groove.net:UICommand  URL*Forms_Fiel
1am  urn:groove.net:UICommand  URL*Forms_FieldRowSpan_12 ID12d Label12d urn:groove.net:Co
Containert\  urn:groove.net:ComponentResource# urn:groove.net:ComponentConnections urn:groo
e.net:PropertyList{  urn:groove.net:ComponentResource URL6http://components.groove.net/Gro
Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompone
nts_DLL&Version=0&Factory=ViewContainer]# urn:groove.net:ComponentConnections urn:groove.n
et:Connectiony urn:groove.net:Connection
 ConnectionID0 Name"InheritFromLayout   urn:groove.net:PropertyList PreferredHeight155 Prefe
 __Version4,1,0,0    @ urn:groove.net:Component  Name TabColumnsButtoni  urn:groove.net:
:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/C
nents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_D
LL&Version=0&Factory=Button\gl urn:groove.net:PropertyList
 Label1 Tooltip ImageURL  g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.j
pg
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmp  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe MenuTabColumnsMenui
 ImageIndex214 ImageHeight16pe urn:groove.net:Component  NameTabColumnsMenui  urn:groove.n
rce urn:groove.net:PropertyListk  urn:groove.net:ComponentResource URL$http://components.
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
n_G_UICommands
Components_DLL&Version=0&Factory=MenuW   urn:groove.net:PropertyList  __Version4,1,0,0
 UICommandsG
 UICommands urn:groove.net:PropertyValue urn:groove.net:PropertyValue urn:groove.net:UIC
et:UICommand urn:groove.net:UICommand urn:groove.net:UICommand urn:groove.net:UICommand u
et:UICommand   urn:groove.net:UICommand URL$Forms_TabColumns_1am ID1 Label1   urn:groove.ne
lumns_2nt ID2 Label2  urn:groove.net:UICommand URL$Forms_TabColumns_3 ID3 Label3  urn:groo
lumns_4p; ID4 Label4  urn:groove.net:UICommand URL$Forms_TabColumns_5r ID5 Label5   urn:gro
olumns_6be ID6 Label62 urn:groove.net:Component Name.FormFieldsViewContainer  urn:groove.ne
ource3# urn:groove.net:ComponentConnections4{3  urn:groove.net:ComponentResource2 URL6http://
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCo
mponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]4# urn:groove.n
et:ComponentConnections2 urn:groove.net:Connection5y5 urn:groove.net:Connection4
 ConnectionID0 Name FormFieldsLayoutu  L     urn:groove.net:Component Name"InheritFrom
ource urn:groove.net:PropertyList    urn:groove.net:ComponentResource URL:http://component
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList  __Ve
,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyV
ftPad10nt TopPad10nt HEIGHT65 PropertyDescriptionLabel( ROW CELL` CELL LeftPad10nt HEIGH
0nt PropertyValueComboBox( ROW CELL. CELL HEIGHT6B ROW CELL CELL CELL2 CELL HEIGH
 CancelButton6 urn:groove.net:Component Name FormFieldsLayoutu  urn:groove.net:ComponentRes
roove.net:PropertyList 7   urn:groove.net:ComponentResource6 URL:http://components.groove.net
roove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonC
omponents_DLL&Version=0&Factory=HTMLTableLayoutx urn:groove.net:PropertyList6  __Version4
,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueB urn:groove.net:PropertyV
ghtPad5 TopPad5 CheckAllButton% TR TDj TD HEIGHT30IRightPad  5 TopPad5 CheckNoneButton% T
% urn:groove.net:Component NameInheritFromCode  urn:groove.net:ComponentResource&# urn:groov
omponentConnections) SCRIPT/ SCRIPTINTERFACE0 SCRIPT1 urn:groove.net:PropertyListw&  urn:gro
omponentResource% URL2http://components.groove.net/Groove/Components/Root.osd?Package=
net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Sc
riptHost2)# urn:groove.net:ComponentConnections% urn:groove.net:Connection* urn:groove.net:C
nnection+ urn:groove.net:Connection, urn:groove.net:Connection- urn:groove.net:Connection.i*
groove.net:Connection) NameOKButtonox
 ConnectionID0q+ urn:groove.net:Connection) NameCancelButton</
 ConnectionID1 , urn:groove.net:Connection) Name*PropertyValueComboBox
 ConnectionID2 - urn:groove.net:Connection) Name0PropertyDescriptionLabelma
 ConnectionID404 . urn:groove.net:Connection) Name$PropertyValueLabel="
 ConnectionID404q/ SCRIPT% SRCDhttp://components.groove.net/Groove/Components/Root.osd?Packag
=net.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Ver
sion=5&Factory=Openj0 SCRIPTINTERFACE% LIBIDL{366DFD51-2C22-438d-9135-5093E3102447}o IIDL{1E
2D3AC7-B4E1-40d2-A517-C11025C49DBF}e 
function
InitializeDialog(i_FieldName, i_CurrentInheritFromName, i_Design, i_Designer)
{
g_CurrentInheritFromName = i_CurrentInheritFromName;
g_Design = i_Design;
g_Field = g_Design.Fields.OpenByName(i_FieldName);
g_Designer = i_Designer;
InitializeComponentStrings();
InitCombobox(i_CurrentInheritFromName);
}
function
GetInheritFromValue()
{
var index = PropertyValueComboBox.GetSelectionIndex();
var ItemData = PropertyValueComboBox.GetItemData(index);
return ItemData;
}
J1 SCRIPT%'
var g_Fi
eld = null;
var g_De
sign = null;
var g_Cu
rrentInheritFromName = "";
var g_De
signer = null;
function
InitializeComponentStrings()
{
var Priv = g_Designer;
OKButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
OKButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_TOOLTIP_C
LOSE_WIN);
CancelButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
CancelButton.IGrooveUICommand.Mnemonic = Priv.GetResourcedString(IDS_FORMS_TOOL_
MNEMONIC_ALT_C);
PropertyValueLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_I
NH_FRM_DLG_LABEL));
PropertyDescriptionLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER
_GRP_INH_FRM_DLG_DESC));
}
function
OKButton_OnCommand()
{
var Window = UIPropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(GrooveWindowResult_OK);
Window.Destroy(GrooveWindowResult_OK);
}
function
CancelButton_OnCommand()
{
var Window = UIPropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
 
Window.Close(GrooveWindowResult_Cancel);
Window.Destroy(GrooveWindowResult_Cancel);
}
function
InitCombobox(i_CurrentInheritFromName)
{
var pFields = g_Design.Fields;
var CurrentDataType = g_Field.DataType;
var CurrentFieldName = g_Field.IGrooveFormsToolDesignObject.Name;
var Priv = g_Designer;

PropertyValueComboBox.ResetContent();
// Add a blank option so inheritance can be cleared.
var FieldIndex = PropertyValueComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS
_TOOL_DESIGNER_GRP_INHERIT_FROM_SCRIPT_NONE));
PropertyValueComboBox.SetItemData(FieldIndex, "");
// Add a 'Self' option so it can inherit from the same field.
FieldIndex = PropertyValueComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOO
L_DESIGNER_GRP_INHERIT_FROM_SCRIPT_SELF));
PropertyValueComboBox.SetItemData(FieldIndex, "FormsInheritSelf");
if (i_CurrentInheritFromName == CurrentFieldName || i_CurrentInheritFromName ==
"FormsInheritSelf")
PropertyValueComboBox.SetSelectionByIndex(FieldIndex);
// Get the field name enum from the designer object.
if (pFields != null)
{
var FieldEnum = pFields.CreateEnum();
while (FieldEnum.HasMore())
{
var pIField = FieldEnum.OpenNext();
var FieldName = pIField.IGrooveFormsToolDesignObject.Name;
if ((pIField.IsPersistable || pIField.FieldType == GrooveFormsToolFieldType_Syst
emField) &&
CurrentFieldName != FieldName && CheckForSameDataType(CurrentDataType, pIFie
ld))
{
// Add the field label and name for each option.
var FieldLabelAndName = FieldName + " [" + Priv.GetPlainTextLabelForField(pIFie
ld) + "]";
var FieldIndex = PropertyValueComboBox.AddItem(FieldLabelAndName);
PropertyValueComboBox.SetItemData(FieldIndex, FieldName);
if (i_CurrentInheritFromName == FieldName)
PropertyValueComboBox.SetSelectionByIndex(FieldIndex);
}
}
}

if (PropertyValueComboBox.GetSelectionIndex() == -1)
PropertyValueComboBox.SetSelectionByIndex(0);
}
q urn:groove.net:Prop
ertyList% EnforceInterfaces1  __Version4,1,0,0 V urn:groove.net:Component Name Acce
:groove.net:ComponentResourceW urn:groove.net:PropertyList W   urn:groove.net:ComponentResour
ceV URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gro
ove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:
groove.net:PropertyListV  __Version4,1,0,0  _G_Layout LayoutC Layout urn:groo
et:PropertyValue MULTIROW  ;MULTIROW
  BORDERROW l BORDER
  TopPad5RightPad
 7  BottomPad3 LeftPad7(
ndowWrapper _ ~   G urn:groove.net:Component Name"OptionsFormLayout  urn:groove.net
H urn:groove.net:PropertyList H  urn:groove.net:ComponentResourceG URL:http://components.gro
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyListG  _
_Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:P
Pad7 LeftPad7( ROW CELLG CELL HEIGHT20g: FormSettingLabel( ROW CELLp CELL LeftPad10
mmaticAliasWin32WindowWrapper _ urn:groove.net:Component Name2OptionsInfoPathFormLayout  u
:groove.net:ComponentResource` urn:groove.net:PropertyList`  urn:groove.net:ComponentResour
ce_ URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gro
ove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutxurn:

groove.net:PropertyList_  __Version4,1,0,0  _G_Layout Layout C Layout
  urn:groove.net
et:PropertyValue  MULTIROW  MULTIROW
;   BORDERROW lBORDER
  TopPad5RightPad
 7  BottomPad7 LeftPad7ROW (  CELL
in32WindowWrapperh urn:groove.net:Component NameRDesignObjectPermissionsWin32WindowWrapper
roove.net:ComponentResourcei urn:groove.net:PropertyList
 i  urn:groove.net:ComponentResourceh URLRhttp://components.groove.net/Groove/Components/Roo
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=Win32WindowWrapperComponentT
 urn:groove.net:PropertyListh  __Version4,1,0,0L   o   0k urn:groove.net:Component NameF
indowWrapper  urn:groove.net:ComponentResourcel urn:groove.net:PropertyListl  urn:groove.net:
omponentResourcek URLRhttp://components.groove.net/Groove/Components/Root.osd?Package=
net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Wi
n32WindowWrapperComponentTurn:groove.net:PropertyListk
   __Version4,1,0,0n urn:groove.net:C
omponent Name"PreviewFormLayout  urn:groove.net:ComponentResourceo urn:groove.net:PropertyLis
t
 o  urn:groove.net:ComponentResourcen URL:http://components.groove.net/Groove/Components/Roo
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=HTMLTableLayoutx
CLayout
urn:groove.net:PropertyListn  __Version4,1,0,0  _G_Layout Layout
vTABLE
urn:groove.net:PropertyValue
 urn:groove.net:Component
LTABLE
  HSPACE5 VSPACE5 TR %B TR
Name$
urn:groove.net:PropertyValue
 TD
> ATD
dvNAME
ancePdrFeovrimeLwaFyoorumt  urn:groove.net:ComponentResourcew urn:gr
et:PropertyListw  urn:groove.net:ComponentResourcev URL:http://components.groove.net/Groove/C
omponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponen
ts_DLL&Version=0&Factory=MultiCellLayoutxurn:groove.net:PropertyListv
   __Version4,1,0,0
G_Layout Layout C Layout
  urn:groove.net:PropertyValue E urn:groove.net:PropertyValue
  MULTIROW
  MULTIROW
G  BO
ftPad7BROW  CELLCELLCELLsCELL   WIDTH240 HEIGHT24RightPad  5 AddScriptCodeButtonL CELL
  WIDTH210 ModifyS
ent Name&DefaultSortComboBox  urn:groove.net:ComponentResource  urn:groove.net:PropertyList$s
oove.net:ComponentResource  URL,http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=ComboBoxoT$urn:groove.net:PropertyList   __Version4,1,0,0  X z h      urn:groov
.net:ComponentResource  urn:groove.net:PropertyList o    urn:groove.net:ComponentResource  URL(h
mponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCom
ponents.GrooveCommonComponents_DLL&Version=0&Factory=Static&urn:groove.net:PropertyLi

st 
 VAlignment
Centere LabelForm Name:ve  __Version4,1,0,0 _G_Font Font<Font   urn:groove.net:FontDesc q urn:

ontStyleLabelText  StyleBoldTruea  urn:groove.net:Component NameViewNameLabel  urn:gro
ponentResource  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource  URL(http://c
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=Static& urn:groove.net:PropertyList 
 VAlignment
Centere LabelView Name:tt  __Version4,1,0,0 _G_Font Font!<!Font urn:groove.net:FontDesc" q
ontDesc!  FontStyleLabelText  StyleBoldTruea  urn:groove.net:Component Name"MinRowHeightL
groove.net:ComponentResource  urn:groove.net:PropertyList%o   urn:groove.net:ComponentResourc
e  URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static&%urn:groove.net:
PropertyList 
 VAlignment
Centere LabelMin Row Height:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:C
ponent Name.MinRowHeightEditControl  urn:groove.net:ComponentResource urn:groove.net:Propert
ist& k  urn:groove.net:ComponentResource URL$http://components.groove.net/Groove/Components/R
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=Editm&urn:groove.net:PropertyList  TextLimit4 TooltipdThe minimum size
w appearing in the view.  __Version4,1,0,0
       ` urn:groove.net:Component Name2MinRowHeightStyleComboBox  urn:groove.net:Compo
List' s  urn:groove.net:ComponentResource URL,http://components.groove.net/Groove/Components/
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=ComboBoxo'urn:groove.net:PropertyList TooltipfThe measurement to be used to 
cInitialValues'
alculate row Jhurn:groove.net:PropertyValue)
InitialValues( (eight.  __Version4,1,0,0 _G_InitialValues
 ) urn:groove.net:PropertyValue(
  urn:groove.net:Item
groove.net:Item+ urn:groove.net:Item,C*urn:groove.net:Item)  Name
LinesG+urn:groove.net:Item)  NamePercentG,urn:groove.net:Item) Name
Pixels/ urn:groove.net:Component Name"MaxRowHeightLabel  urn:groove.net:ComponentResource
:PropertyList- o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Co
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=Static&-urn:groove.net:PropertyList
 VAlignment
Centere LabelMax Row Height:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:C
ponent Name.MaxRowHeightEditControl  urn:groove.net:ComponentResource urn:groove.net:Propert
ist. k  urn:groove.net:ComponentResource URL$http://components.groove.net/Groove/Components/R
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=Editm.urn:groove.net:PropertyList  TextLimit4 TooltiplThe maximum size
n row appearing in the view.l  __Version4,1,0,0 urn:groove.net:Component Name&FormNameEd
l  urn:groove.net:ComponentResource urn:groove.net:PropertyList5 k  urn:groove.net:ComponentR
ource URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Editmm5urn:groove.
net:PropertyList  TextLimit250  __Version4,1,0,0t    p     urn:groove.net:Com
roove.net:ComponentResource urn:groove.net:PropertyList/ s  urn:groove.net:ComponentResource
tp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.
ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBoxo/urn:groove.net
:PropertyList TooltipfThe measurement to be used to calculate row height.  __Version4
,InitialValues/
1,0,0 _G_InitialValues
InitialValues0 Jurn:groove.net:PropertyValue1
0   1 urn:groove.net:PropertyValue0 urn:groove.net:Item
groove.net:Item3 urn:groove.net:Item4C2urn:groove.net:Item1  Name
LinesG3urn:groove.net:Item1  NamePercentG4urn:groove.net:Item1 Name
Pixels/ urn:groove.net:Component Name4HiddenFromViewMenuCheckbox   urn:groove.
mponentResource urn:groove.net:PropertyList6 o  urn:groove.net:ComponentResource URL(http://
nts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponen
ts.GrooveCommonComponents_DLL&Version=0&Factory=Button\g]6urn:groove.net:PropertyLis
t  __Version4,1,0,0 LabelNDo not show this view in the View menu. Tooltip\Check to excl
this view from the View menu.eCheckbox
 Truea StyleCheckboxty urn:groove.net:Component Name F
abel_  urn:groove.net:ComponentResource urn:groove.net:PropertyList7 o  urn:groove.net:Compon
tResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groov
e.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static&7urn:gro
ove.net:PropertyList  BreakTypeWordBreak
 VAlignment
Centere LabelForm Settinga  __Version4,1,0,0 _G_Font Font8<8Font7 urn:groove.net:FontDesc9 q
ontDesc8  FontStyleLabelText  StyleBoldTruea urn:groove.net:Component NameModifyCPButton
ve.net:ComponentResource urn:groove.net:PropertyList<o  urn:groove.net:ComponentResource UR
//components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.Too
lComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button\g<urn:groove.net:Pro
pertyList Tooltip4Modify the selected column
 <Style
 pStan
dardBuurn:groove.net:Component
tton/ LabelPropertiesl  Name
__VersionRespo4n,s1e,C0h,e0ckbox_  urn:groove.net:ComponentReso
groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.os
d?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&
Factory=Button\g:urn:groove.net:PropertyList  __Version4,1,0,0 LabelrUse this form to crea
e responses to the selected record. Tooltip C heck to use this form to create response
s to the selected record.Checkbox
 Truea StyleCheckboxty urn:groove.net:Component NameVersion
roove.net:ComponentResource urn:groove.net:PropertyList; o  urn:groove.net:ComponentResource
tp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.
ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button\g;urn:groove.net:P
ropertyList  __Version4,1,0,0 LabelhSave old versions of records created with this
form. Tooltip Check to save a copy of every version of a record created with this fo
rm.Checkbox
 Truea StyleCheckboxty urn:groove.net:Component Name6ModifyCPSelectedColumnLabel
t:ComponentResource urn:groove.net:PropertyList= o  urn:groove.net:ComponentResource URL(htt
ponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComp
onents.GrooveCommonComponents_DLL&Version=0&Factory=Static&=urn:groove.net:PropertyL
ist Label Selected Column:>
 VAlignment
Centere  __Version4,1,0,0 _G_Font Font><>Font= urn:groove.net:FontDesc? q?urn:groove.net:FontDesc
abelText  StyleBoldTruea urn:groove.net:Component Name2ModifyCPColumnHeaderLabel  ur
et:ComponentResource urn:groove.net:PropertyList@o  urn:groove.net:ComponentResource URL(ht
mponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCom
ponents.GrooveCommonComponents_DLL&Version=0&Factory=Static& @urn:groove.net:Property
List
 VAlignment
Centere  __Version4,1,0,0 _G_Font FontA<AFont@ urn:groove.net:FontDescB qBurn:groove.net:FontDesc
abelText  StyleBoldTruea w        urn:groove.net:Component Name$ModifyCPWidthL
e urn:groove.net:PropertyListCo  urn:groove.net:ComponentResource URL(http://components.groove
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=Static& C urn:groove.net:PropertyList
 VAlignment
Centere  FontStyleLabelText  __Version4,1,0,0urn:groove.net:Component
  Name(ModifyCPSort
eltt  urn:groove.net:ComponentResource  urn:groove.net:PropertyListD o   urn:groov
e.net:ComponentResource  URL(http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=Static& Durn:groove.net:PropertyList
 VAlignment
Curn:groove.net:Component
entere  FontStyleLabelTexName" t Vie__Version
wSettings4L,a1b,e0l,0urn:groove.net:ComponentResource
  urn:groove
PropertyListE
URL(http://coompurn:groove.net:ComponentResource
onents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static&Eurn:groove.net:
PropertyList  BreakTypeWordBreak
 VAlignment
Centere LabelView Optionst  __Version4,1,0,0 _G_Font FontF<FFontE urn:groove.net:FontDescG q
ontDescF  FontStyleLabelText  StyleBoldTruea  urn:groove.net:Component NameGridLines  urn:
:ComponentResource urn:groove.net:PropertyListH o  urn:groove.net:ComponentResource URL(http://
onents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompo
nents.GrooveCommonComponents_DLL&Version=0&Factory=Button\g9Hurn:groove.net:Property
List  __Version4,1,0,0 LabelShow grid lines TooltipjCheck to display lines around cells
in the data view.Checkbox
 trueur StyleCheckboxty.InnerMacroViewContainerd 60ManagerInne
kupLayout h .GlobalLookupViewDisplay TreeViewDataList PreviewLayout8 8 SplitterExpandCo
Menu4TabColumnsMenu (ModifyCPSortingLabelQt
& AddScriptCodeButton ,k&TreeViewCont
i  urn:groove.net:ComponentResource urn:groove.net:PropertyListIo  urn:groove.net:ComponentRes
ource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button\g=Iurn:groov
e.net:PropertyList  __Version4,1,0,0 Label"Show unread marks TooltiphCheck to add unread
ks to new or updated records.Checkbox
 trueur StyleCheckboxty# urn:groove.net:Component Name2A
oBeLookupTarget  urn:groove.net:ComponentResource$ urn:groove.net:PropertyListJ o$  urn:groov
e.net:ComponentResource# URL(http://components.groove.net/Groove/Components/Root.osd?P
ackage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fac
tory=Button\gyJurn:groove.net:PropertyList#  __Version4,1,0,0 LabelXAllow view to be a ta
get for remote lookupscr TooltiplAllow this view to be a target for remote lookups i
n other tools. If this is not allowed, lookups from other tools will result in a
message being returned when performing the lookup.?Checkbox
 trueur StyleCheckboxty * urn:groo
net:Component NameTopButton  urn:groove.net:ComponentResource+ urn:groove.net:PropertyListK o+
groove.net:ComponentResource* URL(http://components.groove.net/Groove/Components/Root.
osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=
0&Factory=Button\gsKurn:groove.net:PropertyList* TooltipD  Move the selected field to the t
op  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex181 ImageHeight16peOuterLayout HMacrosLayout,S:ToolNameLabel& CN $DeleteLookupB
ewViewContainerjR "FormColumnsButton2 -R*FieldColumnSpanButton8gYWTabTextLabel_ c].FormFi
wContainer*o^2ViewNameLabelE <] TopButton9\*BottomButtonCJ$AdvancedViewLayout;1G(Previ
s$B-L      U P 4 urn:groove.net:Component NameUpButtono  urn:groove.net:ComponentResour
.net:ComponentResource4 URL(http://components.groove.net/Groove/Components/Root.osd?Pa
ckage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fact
ory=Button\gcLurn:groove.net:PropertyList4 Tooltip4  Move up the selected field/  __Version4
,1,0,0 Style$StandardIconButton/
 ImageWidth16pe
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex39 ImageHeight16pe> urn:groove.net:Component NameDownButton/  urn:groove.net:Co
:groove.net:PropertyListM oA  urn:groove.net:ComponentResource> URL(http://components.groove
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=Button\ggMurn:groove.net:PropertyList> Tooltip8  Move
down the selected fieldro  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex40u ImageHeight16peJ urn:groove.net:Component NameBottomButtono  urn:groove.net:
rceK urn:groove.net:PropertyListNoK  urn:groove.net:ComponentResourceJ URL(http://components.g
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
oveCommonComponents_DLL&Version=0&Factory=Button\gwNurn:groove.net:PropertyListJ TooltipJ  
Move the selected field to the bottom  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex182 ImageHeight16pe  @   w T urn:groove.net:Component Name FieldGroupButton
:groove.net:PropertyListOoU  urn:groove.net:ComponentResourceT URL(http://components.groove
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=Button\g Ourn:groove.net:PropertyListT TooltipZ  Select
fields to be included in a field group  __Version4,1,0,0 Style$StandardIconButton/
 ImageWidth16pe
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex220 ImageHeight16pe^ urn:groove.net:Component NameTabGroupButton  urn:groove.net
urce_ urn:groove.net:PropertyListPo_  urn:groove.net:ComponentResource^ URL(http://components.
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=Button\g P urn:groove.net:PropertyList^ TooltipX  S
elect fields to be included in a tab group.=n  __Version4,1,0,0 Style$StandardIconBu
tton/
 ImageWidth16pe
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex221 ImageHeight16pek urn:groove.net:Component Name&AddScriptCodeButton  urn:groo
entResourcel urn:groove.net:PropertyListR ol  urn:groove.net:ComponentResourcek URL(http://comp
nents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompon
ents.GrooveCommonComponents_DLL&Version=0&Factory=Button\gRurn:groove.net:PropertyLis
tk  TooltipVAdd JavaScript or VBScript code to the form LabelAdd ScriptImageURL  groove
File:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmp  __Version4,1,0,0
 ImageWidth16pe Style$StandardIconButton/ ImageHeight16pe
 ImageIndex21u  \    v urn:groove.net:Component Name,ModifyScriptCodeButtonty  urn:groo
e.net:PropertyListS ow  urn:groove.net:ComponentResourcev URL(http://components.groove.net/G
roove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonC
omponents_DLL&Version=0&Factory=Button\gSurn:groove.net:PropertyListv Tooltip4Modify the 
selected scriptrm StyleStandardButton/ LabelModify...  __Version4,1,0,0| urn:groove.net:C
IncludedScriptsListView  urn:groove.net:ComponentResource} urn:groove.net:PropertyListT s}  u
rn:groove.net:ComponentResource| URL,http://components.groove.net/Groove/Components/Ro
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=ListViewl+Turn:groove.net:PropertyList| MSCCWorkaroundColor#FFFFFF
 ColumnHeaders
CheckBoxesTruea  __Version4,1,0,0
False SingleSelectionTruea ColumnsResizable
False
 _G_Columns ColumnsUDUColumnsT  urn:groove.net:PropertyValueVRVurn:groove.net:PropertyValueU urn:g
:ColumnWaWurn:groove.net:ColumnV  Name NameCAutoSize
 Truea  urn:groove.net:Component Name(ModifyDa
rn:groove.net:ComponentResource  urn:groove.net:PropertyListX     urn:groove.net:ComponentResou
ce  URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutxXurn:
groove.net:PropertyList   __Version4,1,0,0  _G_Layout LayoutYCYLayoutX urn:groove.
Zurn:groove.net:PropertyValueY  MULTIROW[
 PMULTIROWZ
[  ROW\  ROW^  ROW`  ROWb (\ROW[ CELL];]CELL\ HEIGHT20g: Tab
erBackground BorderBackground  NAMETopBorder(`ROW[ CELLaaCELL` CellBorderLeft1 CellBorderBottom
t1 CellBorderBackground BorderBackground  InnerViewViewContainerBbROW[ CELLc CELLd CELLe2cCELLb HE
ottomPad3 NAME
Secondro WIDTH165 TopPad3
 SaveButton e CELLb LeftPad5 NAME
Third WIDTH175 TopPad3  BottomPad3
 CancelButton P  V   h  urn:groove.net:Component Name,InnerViewViewContainer <  ur
n:groove.net:ComponentConnections  urn:groove.net:Property {   urn:groove.net:ComponentResour
tp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.
ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer] # urn:groo
ve.net:ComponentConnections  urn:groove.net:Connection y  urn:groove.net:Connection 
 ConnectionID0 Name BasicsViewLayoutt|  urn:groove.net:Property  Name BorderBackground  urn:g
lor G  urn:groove.net:Color  RGB#919B9C  urn:groove.net:Component Name BasicsViewLayoutt  u
source urn:groove.net:PropertyListf    urn:groove.net:ComponentResource  URL:http://component
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=HTMLTableLayoutxfurn:groove.net:PropertyList   _
_Version4,1,0,0  _G_Layout LayoutgCgLayoutf urn:groove.net:PropertyValuehBhurn:groove.net:Proper
ueg
ViewNameLabel0
 TABLEiiTABLEhlTRi HSPACE
 TDm TDn
5 vVSPACE
mTDl HEIGHT
5 TRj 3TRl
3gTRo
: WIDTH
 TRr TRt300TRv
  TRx TRz TR|
BottomPad
 TR~ TR%j1TRi
0ntTDk
 FormNameEditControl-
UkTDj HEIGHT18L COLSPAN
nT
ottomPad10nt FormFieldsListViewhqTDo WIDTH24 HEIGHT271  BottomPad3  TopButton%rTRi TDsgsTD
tton%tTRi TDuiuTDt WIDTH24 HEIGHT271  BottomPad3
 DownButton%vTRi TDwowTDv WIDTH24 HEIGHT34Im  BottomPad10nt
 BottomButton%xTRi TDymyTDx WIDTH24 HEIGHT271  BottomPad3 CheckAllButton%zTRi TD{Y{TDz WIDTH24
0nt ColumnActionsViewContainer% TRi TDd TD COLSPAN3 HEIGHT100 PreviewDataViewViewContainer z
  ! urn:groove.net:Component Name"OptionsViewLayout  urn:groove.net:ComponentResource
List   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Components/
osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=
0&Factory=MultiCellLayoutx urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout La
net:PropertyValue
BORDER ROW ROW ROW E urn:groove.net:PropertyValue
 ROW  ROW  ROW  ROW  ROW  ROW  MULTIROW
  ROW ROW  MULTIROW
 ROW l  BORDER TopPad5RightPad  7
0 DefaultSortComboBox( ROW CELLy CELL LeftPad10nt TopPad0 HEIGHT28 AllowViewToBeLookupTarget(
GHT24
 ShowUnread( ROW CELLz CELL LeftPad10nt TopPad0 HEIGHT28 HiddenFromViewMenuCheckbox( ROW CELL
ad5 MinRowHeightEditControlO CELL WIDTH200 MinRowHeightStyleComboBox( ROW CELL_ CELL HEIGHT20
tPad5 MaxRowHeightEditControlO CELL WIDTH200 MaxRowHeightStyleComboBox( ROW CELLZCELL HEIGHT
r9 urn:groove.net:Component NameSaveButtont  urn:groove.net:ComponentResource: urn:groove.n
List o:  urn:groove.net:ComponentResource9 URL(http://components.groove.net/Groove/Components
/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ve
rsion=0&Factory=Button\gurn:groove.net:PropertyList9 Tooltip"Save your changes  __Ve
,1,0,0 LabelSave"  StyleStandardButton/ Default
False
  
0  urn:groove.net:Component Name AccessViewLayoutIR  urn:groove.net:ComponentResource
ropertyList     urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Comp
s/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&V
ersion=0&Factory=MultiCellLayoutxurn:groove.net:PropertyList  __Version4,1,0,0  _G_L
tC Layout urn:groove.net:PropertyValueEurn:groove.net:PropertyValue  MULTIROW
 ;MULTIROW
  BORDE
ftPad7(ROW CELL\CELL TopPad5) DesignObjectPermissionsWin32WindowWrapper urn:groove.net:C
ainerpo  urn:groove.net:ComponentResource# urn:groove.net:ComponentConnections urn:groove.n
t:PropertyList {  urn:groove.net:ComponentResource URL6http://components.groove.net/Groove/C
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=ViewContainer]# urn:groove.net:ComponentConnections urn:groove.net:C
onnection} urn:groove.net:Connection
 ConnectionID
_G_Background0 Name&ColumnActionsLayout  urn:groove.net:PropertyList  __Version4,1,0,0
 BackgroundI
 Background urn:groove.net:BackgroundStylesurn:groove.net:BackgroundStyle Style,DetailWindow
ndurn:groove.net:Component
ts  Name&ColumnActionsLayout  urn:groove.net:ComponentResource urn:gro
PropertyList    urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Compo
ts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&
Version=0&Factory=MultiCellLayoutxurn:groove.net:PropertyList  __Version4,1,0,0  _G_L
tC Layout urn:groove.net:PropertyValueEurn:groove.net:PropertyValue  MULTIROW
 DMULTIROW
  ROW R
Label(ROW  CELL`CELL HEIGHT18L LeftPad17e  ModifyCPWidthLabel5ROW CELL CELL{CELL HEIGHT29"
ottomPad5 ModifyCPButtonx  4   _  urn:groove.net:Component Name8PreviewDataViewViewContai
tResource# urn:groove.net:ComponentConnections urn:groove.net:PropertyList {  urn:groove.net:C
mponentResource URL6http://components.groove.net/Groove/Components/Root.osd?Package=net
.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewC
ontainer]# urn:groove.net:ComponentConnections urn:groove.net:Connection  urn:groove.net:Conn
 ConnectionID0 Name*PreviewDataViewLayoutTurn:groove.net:PropertyList  __Version4,1,0,0
 urn:groove.net:Component Name*PreviewDataViewLayout  urn:groove.net:ComponentResource urn:g
t:PropertyList    urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Com
ents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DL
L&Version=0&Factory=MultiCellLayoutxurn:groove.net:PropertyList  __Version4,1,0,0
G_Layout LayoutCLayout urn:groove.net:PropertyValueEurn:groove.net:PropertyValue  MULTIROW
 8MU

wViewDataListDisplay urn:groove.net:Component Name2PreviewColumnHeadersLabel  urn:groove.ne
nentResource urn:groove.net:PropertyList o  urn:groove.net:ComponentResource URL(http://compon
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=Static&urn:groove.net:PropertyList
 HAlignmentLeft
 VAlignment
Centere LabelPreview:  __Version4,1,0,0 _G_Font Font<Font urn:groove.net:FontDesc qurn:gro
ontStyleLabelText  StyleBoldTruea@ urn:groove.net:Component NameCancelButton</  urn:gr
ComponentResourceA urn:groove.net:PropertyList oA  urn:groove.net:ComponentResource@ URL(http:
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCo
mponents.GrooveCommonComponents_DLL&Version=0&Factory=Button\gurn:groove.net:Property
List@ Tooltip&Cancel your changes  __Version4,1,0,0 Label
Cancelnt Cancel
Truea StyleStandardButton/  
  a    % urn:groove.net:Component Name2PreviewColumnInstructions  urn:groove.net:Compon
pertyListo&  urn:groove.net:ComponentResource% URL(http://components.groove.net/Groove/Compo
nents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_D
LL&Version=0&Factory=Static&urn:groove.net:PropertyList%
 HAlignmentLeft
 VAlignment
Centere LabelTSelect the fields to include in this view:43  __Version4,1,0,0 _G_Font Fon
et:FontDescTurn:groove.net:FontDesc   FontStyleLabelText/ urn:groove.net:Component Name4P
aListDisplay   urn:groove.net:ComponentResource0# urn:groove.net:ComponentConnections
7 urn:groove.net:PropertyListo0  urn:groove.net:ComponentResource/ URL*http://components.groo
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveDa
taList_DLL&Version=0&Factory=DataListDisplay]7# urn:groove.net:ComponentConnections
/ urn:groove.net:Connection8 8 urn:groove.net:Connection7
 ConnectionID1 Name(PreviewColumnHeaders=nurn:groove.net:PropertyList/ SingleSelectionTruea
ColumnSet
_G_ColumnSetsMainen  __Version4,1,0,0
 ColumnSetsG
 ColumnSets urn:groove.net:PropertyValueUurn:groove.net:PropertyValue urn:groove.net:ColumnS
net:ColumnSet  NameMainenG urn:groove.net:Component Name&TreeViewContextMenu  urn:groove.net:C
ourceH urn:groove.net:PropertyList kH  urn:groove.net:ComponentResourceG URL$http://components
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
o_G_UICommands
veCommonCompTornueenats_DLL&V__Version
AlwaysEnabled ersion=0&4F,a1c,t0o,r0y=MenuWurn:groove.net:PropertyListG
 UICommandsG
 UICommands urn:groove.net:PropertyValue urn:groove.net:PropertyValue urn:groove.net:UIComma
et:UICommand  urn:groove.net:UICommand  urn:groove.net:UICommand URL0TreeViewContextMenu_Open
 urn:groove.net:UICommand URL4TreeViewContextMenu_Delete/ ID2 Label
Deletetsurn:groove.net:UICommand URL:TreeViewContextMenu_Duplicate ID3 LabelDuplicatel } 
ate TemplateDisplayName(GrooveForms5Designer DefaultGroupDisplayName(GrooveForms5Designer Na
me4GrooveForms5Designer.Groupace urn:groove.net:Component urn:groove.net:Component urn:groove
.net:Component urn:groove.net:Component$ urn:groove.net:Component6 urn:groove.net:Component:
groove.net:ComponentB urn:groove.net:ComponentK urn:groove.net:ComponentW urn:groove.net:Com
ponent] urn:groove.net:Component` urn:groove.net:Componenth urn:groove.net:Componentu urn:gro
.net:Component  urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component
.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component
.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component
.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component
.net:Component urn:groove.net:Component urn:groove.net:Component4 urn:groove.net:Component> u
oove.net:ComponentH urn:groove.net:ComponentX urn:groove.net:Component\ urn:groove.net:Compo
nentl urn:groove.net:Componentn urn:groove.net:Componentt urn:groove.net:Component  urn:groov
:Component  urn:groove.net:Component2 urn:groove.net:Component6 urn:groove.net:ComponentG urn
ve.net:ComponentV urn:groove.net:Component_ urn:groove.net:Componenth urn:groove.net:Compone
ntk urn:groove.net:Componentn urn:groove.net:Componentv urn:groove.net:Component  urn:groove.
omponent  urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component  urn:g
omponent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:g
omponent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:g
omponent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:g
omponent
urn:groove.net:Component
 urn:groove.net:Component  urn:groove.net:Component
 urn:groove.net:Component  urn:groove.net:Component#
 urn:groove.net:Component  urn:groove.net:C
ent* urn:groove.net:Component4 urn:groove.net:Component> urn:groove.net:ComponentJ urn:groove
t:ComponentT urn:groove.net:Component^ urn:groove.net:Componenth urn:groove.net:Componentk ur
roove.net:Componentv urn:groove.net:Component| urn:groove.net:Component  urn:groove.net:Compo
ent  urn:groove.net:Component  urn:groove.net:Component urn:groove.net:Component urn:groove
ent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.n
ent urn:groove.net:Component urn:groove.net:Component% urn:groove.net:Component- urn:groove.n
mponent/ urn:groove.net:Component9 urn:groove.net:Component@ urn:groove.net:ComponentG $Opti
ManagerOuterLayout^}K,ManagerInnerInfoLayout\uToolNameEdit " AboutToolTextView *T
Buttonf0StylesMenu
4FieldPreviewSettingsLayoutyB&FieldColumnSpanMenu Mc0PropertyDescriptionLabel CancelBu
rmLayout -VRDesignObjectPermissionsWin32WindowWrapper xdh.MaxRowHeightEditControl2Prev
InstructionsUP%CancelButton\  @,AdvancedDesignCheckboxan *e2InnerManagerViewContainer@ SgW$W
wWrapper9p]2GlobalLookupColumnHeadersIk *PreviewInfoPathEditorOGtl(MorePropertiesButton
ettingsLayout }00TabPreviewSettingsLayout  TabColumnsButton1 p DefaultSortLabel n .M
olgNt2MinRowHeightStyleComboBoxrg4HiddenFromViewMenuCheckbox yUpButton ?}4"OptionsVie
DataViewViewContainer,k4PreviewViewDataListDisplayh k/ TreeViewSplitterd(2$ ToolVersionLa
ToolLabel\(CheckNoneButton '>4StyleSettingsViewContainerowT+)BFieldPreviewSettingsViewCo
nerM %;RTFHelpProvider */InheritFromCode4 &% FormFieldsLayoutJ^'6"OptionsFormLayout:+G2
thFormLayout ' _&DefaultSortComboBoxS' VersionCheckbox%DownButton r%>2PreviewColumnHea
n  &ResolveLookupButton &SandboxCreationDate

,SRteyilmepsoBruttStoolnu$timIonB$uSthtownBoN8rdenr&CPhrecvkibeowxFormSWpelbiBtrtoewrserViMeowv0eLef!tBFuitetlodnRowSpanMenuc $PreviewCo
SehcotweUdnCroelaudmnL. Lab(eMloD difyD$aMtoadViifeywCLPaWyiodutthLabel Basi"cVsiVeiweSweLtatyionugtsLaB&belTs    2GlobalLookupTableDa
oH$PreviewFormSubForms F ieldNameLabel4P$FieldRowSpanButton it>TabPreviewSettingsViewC
omViewContainer"InheritFromLayout&$AdvancedFormLayout2 v2ModifyCPColumnHeaderLabelUm
fyScriptCodeButton =%v.IncludedScriptsListViewR| AccessViewLayout A'4ColumnActionsViewC
ergsI*PreviewDataViewLayout  7  @0 (

@PPhL@x@30&@@k(@88*@uh@@-X*|p'@@/p[@@'@@H@^@0'!j@"6*@;#s@h@q$-@,&%v'@8.(,@7)"*@+_x@,'(@-g@.*X@/ @10 4p2@,3H@4456@`78(9: ;<= 6 <@{@/V@%@
D@!0@ @ O@@)@S@%6 @ 4@ 6 m@+}@0@
@@ `@(,A@t@-B@\@T@$J@"K@Q@!?6N@+@4@r@,7@
/@@>@G@+ @ 3C@y@.@
c@)@d1@=(@3(@@*@@nW@@+&2@@b3@-(@Y@@&Z~@@'0:@@E2@$!@P@Q @ 3@i@)z@/9@.@f@)!@X@&@@
@I@ #@]@& @ 1R@"w@.5@

@
1@o@+U@%x@a@(e@) @2?@@l@+@
 %@@M@ @ 25@@k8@qJ@`*@ @J@y@1@@ 
L@@o$
@&@J@
g@@ OU@}@
;L@@~@@I@@@ 4@@ @ < @% @ n~@@N@@@Y@ @S@ly@? @@ @ L/@@TRy@
@  @ l~@A@S@@e@@@o%@)`@}{@a-@L@F@b3@R@D@~q@xQ@C@@6@i@Ku@Y1@IpU@@B@`Y@@S1@ @sL@@@@J@ @  @
@P<@h@/'@2@^%@@@ @@ }@@n9Y@@@{@}~@k@ @ ]@ ~ @u?@6*@@f8@^ @ >t@l$@+P@ @@F@C@{W@^w@@
@ @b|@@
@9 @j
@+@'C@I@/@@ 
@F@p@~@a| ;@ @@h@ 
n@@#.@P@@E@@c@g@1PU@@P@ 
@h@#@ < @ @ J@F@a@Nu@u@G @ H!@A@G@$@f@P1@ > @nF@_3@!@c@`
@@h@
!@ ]@@H@ >@ @ @@@J@ ' @0@ @ @t&@@@[+@
@ Y@@0 @!@I@e@<:@ @ E@ @] @ @ F@VT@:g@[@@/@@ @Tv@,`@Z"@\#@c|@E@t?@@@|^@J@j8@G@c>@J@
@;:@ >@ | @D@R1@~{@@~h@@@Vq9@@ @c@@B@R@ @ S@@Wi8@a@ 
X@)@8@
V{F@@#@@nG@J@\@y;@R@ A@ky@j?@f9@@ @ @@ @ H@-@+r@1*@8*@
@Z@R@ @ @@@,'@|\@4@ @ }@iV@ >@o~@@K/@
!@ A@A @X@@]1@v:@@Y@@5@ = @d@!@m$@X@@A:@j@F/@@
@0)@*&@ @ *P@B@S@ <@,P@@@Q@ @i@!@ \@@(&@Mt@ @  @ J@ @ @ 19@s9@S@2*@M@ @ |{@kA@R@ ~ @|`@q@3@@e
X@
@vY@5s@r~@@- @f@E@@ U@[|@ @ S@3Q@@M/@|d@ @5@Y@@E@'U7@ @ z~@F@@@ Z @
@6RU@@
@B@@@`+@@Z  `@ @J@*8@~@@{;@T@R@r@ @ @S@/8@u:@ @ >j@/@ @S@A,@
@
3@J@W1@@ @ .b@Sz@F@oX@s@;h@F@ !@8 @ J@@ 
@B;@R@@w:@_@ @ J@@ 
@ m~@  @3*@ @ o@]|@@l@ ; @N@F@ @ ^2@ ]@&&@@ @ [@@b@#@=jY@@_U@
3@.@'@@@#>\@>@@P
Z@_@
xF@@@&B@P@d@
R@@#+@j~@@1@[!@R@?*@ @~w@ @ m@@@2@F@!@#@@F@k@T@@ @  @ @ @F@
V@J@Z|@6e@0c@nY@@#@7*@O@@@ ( @ >@T@E@@}@@@{T@!@C;@R@M@H @ b@/P@ @ @ ( @@-P@ @  @ i~@ @ ) @ >@B
@$q@Q1@ @ 3c@I@@\B@ '@-'@5*@S@J@n@.T@@@M@%&@X1@F@X@d5@~;@R@2Q@!@ 
@!@~@#@,@r9@"6@@c/@F@#q@9*@ @ Ho@H@F@wz@K@#@ @ C@#@F@R@ @ | @F@4*@&7@@v
@ B @K@L@H/@{U@T@F@F@`@ > @#@ }@2@ >@Kr@@~@z@m@ 
@ C@j@X@nXT@@@mD@8@ @5Q@@
!@@ *@@[?@[@@ @* @@c ]4#@~@#@g@f@7Z@@E@ @ @:@@ ;@ 7
W@=!@X@@v
OB@@F@ %
BP@U@z;@@<*@@)&@:*@U1@4@
@X=@ @p@WT@!&@t9@ @ 0P@ @ A@vz@S@W@#@|Y@I@F@I!@> @@@ @ @`U@!6@|a@Ju@x;@ >@ @ &_@F@N0@ @ @@@ @0
@w&@a3@ @ k~@u
@|@[1@Bk@4Q@ @ @hx@b@J@@x~@
@ @ @ @ R@5@@HS@'&@@
@B-@m@K@@@=*@ @  @ \ @ @ S@~f@ix@ @ En@'`@S@4s@p@At@
@X
|~"@X@|t@@
W@@@ ; @. @ A @  @@(`@$]Y@@N@Q<@["@ B @@
@.@e|@F@F@E@@@@@+@F@   urn:groove.net:Component Name,FieldTypeDetailedImage   u
ntResource URL&http://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Image  urn:groove.ne
t:Component Name,FieldTypeDetailedImage   urn:groove.net:ComponentResourcek  urn:groove.net
onentResource URL&http://components.groove.net/Groove/Components/Root.osd?Package=net.g
roove.Groove.ToolComponents.GroovVW bcdestu            H     J   ww urn
t:GroupTemplated ^  V  J     urn:groove.net:Component NameRTFHelpProvider  urn:groove.ne
onentResource URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.g
roove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=RTFHelp
Provider NAMERightButton TopPad3RightPad  3 WIDTH210 LookupApplyButtonw 
  urn:groove.net:Component Name,EditGroupViewContainer  urn:groove.net:ComponentResour
mponentConnections urn:groove.net:PropertyList
{  urn:groove.net:ComponentResource URL6http://components.groove.net/Groove/Components/Root
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&Factory=ViewContainer]# urn:groove.net:ComponentConnections urn:groove.net:Connection   u
net:Connection
 ConnectionID0 Name(EditGroupOuterLayout=" 
 urn:groove.net:PropertyList PreferredHeight550 PreferredWidth500  __Version4,1,0,0 urn
net:ComponentConnections urn:groove.net:PropertyList
{  urn:groove.net:ComponentResource URL6http://components.groove.net/Groove/Components/Root
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&Factory=ViewContainer]# urn:groove.net:ComponentConnections urn:groove.net:Connection   u
net:Connection
 ConnectionID0 Name(EditGroupOuterLayout="  NAMERightButton TopPad3RightPad  3 WIDTH210 LookupA
,0Uw   0  urn:groove.net:Component NameRTFHelpProvider  urn:groove.net:ComponentResourc
ource URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=RTFHelpProvider
t
 @W groovedocument:///groovexss/$userroot/schemas.xss/groovetooltemplateschema.xml,18a00f8
urn:groove.net:PropertyList,__IDp:urn:groove.net:Component,NameBurn:groove.net:Comp
onent,CategoryW0  urn:groove.net:Component NameRTFHelpProvider  urn:groove.net:ComponentRe
mponentResource  URL:http://components.groove.net/Groove/Components/Root.osd?Package=net
.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=RTFHe
lpProvider
 Xurn:groove.net:Component Name0EditStyleCodeControlViewm  urn:groove.net:ComponentResou
et:ComponentConnections urn:groove.net:PropertyList{ urn:groove.net:ComponentResource URL6h
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCo
mponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn:groove.net
:ComponentConnections urn:groove.net:Connection  urn:groove.net:Connection 
 ConnectionID0 Name4EditStyleCodeControlLayout  urn:groove.net:PropertyList  PreferredHeight5
edWidth750  __Version4,1,0,0  0   urn:groove.net:ComponentB  NameRTFHelpP
ponentResource     urn:groove.net:ComponentResource  URL:http://components.groove
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=RTFHelpProvider
 8 
 urn:groove.net:Component
 Name"FormsListCombobox  urn:groove.net:ComponentResource
s
  urn:groove.net:ComponentResource
 URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
  0   urn:groove.net:Component NameRTFHelpProvider  urn:groove.net:ComponentResource   
ce URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=RTFHelpProvider  urn:groove.
net:Component NameRTFHelpProvider  urn:groove.net:ComponentResource   urn:groove.net:Compon
urce
 URL:http://components.groove.net/,GEditGroupViewContainersd4GroupLabelPositionComboBox
L
in2eIE_
PErrAndWarnViewContainerA)EX 
 urn:groove.net:Component'
0 Z
 URL:
[Name
urn:groove.net:ComponentResourceZ
hRtTtFpH:e/l/pcPormopvoindenrts.urn:groove.net:ComponentResource[
groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=RTFHelpProvider
 URL:

urn:groove.net:Component^
Name
urn:groove.net:ComponentResource
0hRtTtFpH:e/l/pcPormopvoindenrts.urn:groove.net:ComponentResource
groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=RTFHelpProvider`
    urn:groove.net:Componentd NameDataType  urn:groove.net:ComponentResource urn:groove.
ve.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Pa
ckage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fact
ory=StaticyH urn:groove.net:PropertyList  FontStyleLabelText  __Version4,1,0,0 
et:Component% NameRTFHelpProvider  urn:groove.net:ComponentResourcez z  urn:groove.net:Compon
entResourcew URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.
groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=RTFHel
pProvider w urn:groove.net:Component% NameRTFHelpProvider  urn:groove.net:ComponentResourcez
:Component  NameCalendarViewon  urn:groove.net:ComponentResourcek  urn:groove.net:Component
e URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCalendarTool_DLL&Version=0&Factory=Calendarct  
    urn:groove.net:Component Name$LookupViewComboBoxne  urn:groove.net:ComponentResources
entResource URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.gro
ove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
  urn:groove.net:Component Name$LookupViewComboBoxne  urn:groove.net:ComponentResources  urn
mponentResource URL,http://components.groove.net/Groove/Components/Root.osd?Package=net
.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&ApplyButton0a(GroupCla
ssNameStaticN| $RemoveParensButtongC
  8 q  urn:groove.net:Component% Name$LookupViewComboBoxne  urn:groove.net:ComponentResour
mponentResourceq URL,http://components.groove.net/Groove/Components/Root.osd?Package=n
et.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Com
boBox
 BFieldTypeGeneralDescriptionLayout_EditGroupCodewPrecisionLabel  PrintInnerLayo
&LMasctrMooCdoidfeiSeudbBFyoLrambNeal\ ( ErrExplanationLayoutem=     urn:groove.net:Component% Name(
omponentResources  urn:groove.net:ComponentResource URL,http://components.groove.net/Groov
mponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponent
s_DLL&Version=0&Factory=ComboBox
   urn:groove.net:Component% Name(LookupColumnComboBoxro  urn:groove.net:ComponentResources
et:ComponentResource URL,http://components.groove.net/Groove/Components/Root.osd?Packag
e=net.grooBFormatDateShortFormatPreviewLabelpXEditTabLayoutb"E>AddObjectCodeInnerViewCont
ner:DX &DefaultOptionButton&DefaultOptionButtoncx9
   urn:groove.net:Component Name4PropertyValueViewContainer  urn:groove.net:ComponentReso
 urn:groove.net:PropertyList`{
  urn:groove.net:ComponentResource URL6http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=ViewContainerT` urn:groove.net:PropertyList  __Version4,1,0,0 urn:groove.net:Co
lidationScriptLabel  urn:groove.net:ComponentResource urn:groove.net:PropertyList.o  urn:groo
e.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=Static. urn:groove.net:PropertyList LabeldSelect a validation option to apply to this fie
ld.  BreakTypeWordBreak  FontStyleLabelText  __Version4,1,0,20PropertyIniti
alDateLayout x*$ValidationMaxLabel +3(ColumnPropertiesGlue\(2FormsSearchControlSubForm
 AboutToolSubFormth){AboutToolLabelyl\(4ReplaceDesignViewContainerif# ( MonthPopupLay
nt Name0PropertyValueEditControlo  urn:groove.net:ComponentResource  urn:groove.net:PropertyL
tVk   urn:groove.net:ComponentResource  URL$http://components.groove.net/Groove/Components/Ro
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=EditNamV urn:groove.net:PropertyList   TextLimit750  __Version4,1,0,0 u
.net:Component Name$LookupToolComboBox   urn:groove.net:ComponentResource urn:g
roove.net:PropertyLists  urn:groove.net:ComponentResource URL,http://components.groove.net/G
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=ComboBox
l urn:groove.net:PropertyList Sort true  __Version4,1,0,0   urn:groove.net:Component% Name.L
ComboBox  urn:groove.net:ComponentResource s   urn:groove.net:ComponentResource  URL,http://c
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
ropertyList Sorttrue  __Version4,1,0,00,0  T    X urn:groove.net:Component NameGro
rceY urn:groove.net:PropertyListeoY  urn:groove.net:ComponentResourceX URL(http://components.
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
oveCommonComponents_DLL&Version=0&Factory=Static e urn:groove.net:PropertyListX Background
StyleSeparator  __Version4,1,0,0  urn:groove.net:Component Name2GroupOptionsViewContainer
.net:ComponentResource # urn:groove.net:ComponentConnections {   urn:groove.net:ComponentReso
rce  URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groo
ve.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer] #  urn:g
roove.net:ComponentConnections  urn:groove.net:Connection }   urn:groove.net:Connection 
 ConnectionID0 Name$GroupOptionsLayoutx:Compo.PropertyReferenceLayout
(F{$GroupLabelTextViewMD2EditScriptCodeInnerLayout!"E ,FormsSearchControlViewe%C
ResetButton wC
FieldsListBox3jUCIDb@tyListX BackgroundStyleSeparator  __Version4,1,0,0T "    Y
elt  urn:groove.net:ComponentResource urn:groove.net:PropertyListbo  urn:groove.net:Compone
esource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.
Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Staticb urn:groove
.net:PropertyList  __Version4,1,0,0 LabelDecimal Places:
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLeft  urn:groove.net:Component Name$EditStyleNameLabel</  urn:groove.net:C
tResource  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource  URL
(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:Pr
opertyList  LabelStyle Name:  FontStyleLabelText  __Version4,1,0,0es>FormatDat
ongFormatRadioButton V"-^BPropertyValuePlainTextRadioButton , $ GroupContentsLabelZt,h FontB
tlidcChecurn:groove.net:PropertyList
kBox4,MacroNameLabeldS[ \,  LabelStyle Name:  FontStyleLabelText  __Ve
,1,0,0 9    R
 urn:groove.net:Component  Name2EditSystemScriptTailLabel  urn:groove.net:ComponentReso
ceS
 urn:groove.net:PropertyListkoS
  urn:groove.net:ComponentResourceR
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static k urn:groove.net:
PropertyListR
 Label  __Version4,1,0,0 _G_Font Fontl<l Fontk urn:groove.net:FontDescmTm urn:groove.net:Fon
abelTextR
 urn:groove.net:CompoR urn:groove.net:Component Name(PrintViewRadioButton/>  urn:groove.net
ntResourceS urn:groove.net:PropertyListoS  urn:groove.net:ComponentResourceR URL(http://comp
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyListR StyleRa
iobutton LabelPrint viewu RadiobuttonTruea  __Version4,1,0,0ontDescl  FontStyleLab
H   I 
 urn:groove.net:Component'
 NameAndRadioButtonl  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListuo
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttoneu urn:groove.net:
PropertyList
 StyleRadiobutton LabelZAll of the following conditions (logical AND) RadiobuttonTruea  _
_Version4,1,0,0
 urn:groove.net:Component'
 urn:groove.net:PropertyList
URL(
urn:groove.net:Component^
Name
urn:groove.net:ComponentResource
hHAtentldpR:B/u/tctomnponents.groourn:groove.net:ComponentResource
ve.onet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:P
ropertyList
OverrideLabelAlignment
Right Label2Help for writing macro... StyleLinkButton  __Version4,1,0,0X  , ! I urn:g
Lourn:groove.net:ComponentResourceJ
okupExitButton}  urn:groove.net:PropertyList\oJ  urn:groove.net:Compone
ntResourceI URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.g
roove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone\ urn
:groove.net:PropertyListI CancelTruea StyleStandardButtonb LabelExitr  __Version4,1,0,0 6
ve.net:Component Name.LookupKeyColumnComboBox  urn:groove.net:ComponentResource7s7  urn:groov
.net:ComponentResource6 URL,http://components.groove.net/Groove/Components/Root.osd?Pa
ckage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fact
ory=ComboBox
$BackOKButtonLayout C,ValidationScriptLayoute $GroupClassNameEdit
CreateTabLayoutx: -FontFaceName s FontSize0S *FontUnderlineCheckBox#T
AddObjectButton \ t ,EditScriptCodeTextView3& J
"6RPerpilnatcTehDreosuigghnFCoordmeRad~io,
BMuatitnoVniU
ewFp
FMa3c
ronS=c0o&pFeaLcatboerlyg
=ComboBox
1,0,0x p    ~1( urn:groove.net:Component Name&FieldPropertiesGlue urn:groove.net:Component
net:ComponentConnections, SCRIPT SCRIPT SCRIPT SCRIPTINTERFACE SCRIPT urn:groove.net:Pro
net:ComponentResource( URL2http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=ScriptHost2,# urn:groove.net:ComponentConnections(u urn:groove.net:Connection- urn:groove
.net:Connection. urn:groove.net:Connection/ urn:groove.net:Connection0 urn:groove.net:Connec
tion1 urn:groove.net:Connection2 urn:groove.net:Connection3 urn:groove.net:Connection4 urn:gr
e.net:Connection5 urn:groove.net:Connection6 urn:groove.net:Connection7 urn:groove.net:Conne
ction8 urn:groove.net:Connection9 urn:groove.net:Connection: urn:groove.net:Connection; urn:g
ve.net:Connection< urn:groove.net:Connection= urn:groove.net:Connection> urn:groove.net:Conn
ection? urn:groove.net:Connection@ urn:groove.net:ConnectionA urn:groove.net:ConnectionB urn:
ove.net:ConnectionC urn:groove.net:ConnectionD urn:groove.net:ConnectionE urn:groove.net:Con
nectionF urn:groove.net:ConnectionG urn:groove.net:ConnectionH urn:groove.net:ConnectionI urn
oove.net:ConnectionJ urn:groove.net:ConnectionK urn:groove.net:ConnectionL urn:groove.net:Co
nnectionM urn:groove.net:ConnectionN urn:groove.net:ConnectionO urn:groove.net:ConnectionP ur
roove.net:ConnectionQ urn:groove.net:ConnectionR urn:groove.net:ConnectionS urn:groove.net:C
onnectionT urn:groove.net:ConnectionU urn:groove.net:ConnectionV urn:groove.net:ConnectionW u
groove.net:ConnectionX urn:groove.net:ConnectionY urn:groove.net:ConnectionZ urn:groove.net:
Connection[ urn:groove.net:Connection\ urn:groove.net:Connection] urn:groove.net:Connection^
:groove.net:Connection_ urn:groove.net:Connection` urn:groove.net:Connectiona urn:groove.net
:Connectionb urn:groove.net:Connectionc urn:groove.net:Connectiond urn:groove.net:Connection
e urn:groove.net:Connectionf urn:groove.net:Connectiong urn:groove.net:Connectionh urn:groove
t:Connectioni urn:groove.net:Connectionj urn:groove.net:Connectionk urn:groove.net:Connectio
nl urn:groove.net:Connectionm urn:groove.net:Connectionn urn:groove.net:Connectiono urn:groov
et:Connectionp urn:groove.net:Connectionq urn:groove.net:Connectionr urn:groove.net:Connecti
ons urn:groove.net:Connectiont urn:groove.net:Connectionu urn:groove.net:Connectionv urn:groo
net:Connectionw urn:groove.net:Connectionx urn:groove.net:Connectiony urn:groove.net:Connect
ionz urn:groove.net:Connection{ urn:groove.net:Connection| urn:groove.net:Connection} urn:gro
.net:Connection~ urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connect
groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:C
tion  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:gr
nnection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  ur
t:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection
e.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connec
roove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Co
ion  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:gro
nection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn
:Connection urn:groove.net:Connection -  urn:groove.net:Connection, Name(FPOuterViewContaine
 ConnectionID0}. urn:groove.net:Connection, Name$InnerViewContainer
 ConnectionID1m/ urn:groove.net:Connection, NameInnerLayout
 ConnectionID2i0 urn:groove.net:Connection, NamePageTitle
 ConnectionID3m1 urn:groove.net:Connection, NameBackButtonw
 ConnectionID4m2 urn:groove.net:Connection, NameNextButtonne
 ConnectionID5m3 urn:groove.net:Connection, NameApplyButton
 ConnectionID6i4 urn:groove.net:Connection, NameOKButton:
 ConnectionID7q5 urn:groove.net:Connection, NameCancelButton</
 ConnectionID8 6 urn:groove.net:Connection, Name6BackNextButtonViewContainer
 ConnectionID97 urn:groove.net:Connection, NamePFieldTypeGeneralDescriptionViewContainer
 ConnectionID10 8  urn:groove.net:Connection, Name4FieldTypeDetailedNameLabelo
 ConnectionID11 9  urn:groove.net:Connection, Name,FieldTypeDetailedImage 
 ConnectionID12 :  urn:groove.net:Connection, NameBFieldTypeDetailedDescriptionLabel
 ConnectionID13}; urn:groove.net:Connection, Name"FieldTypeListView
 ConnectionID14 <  urn:groove.net:Connection, Name2PropertyInstructionsLabel
 ConnectionID15= urn:groove.net:Connection, NameDPropertyInstructionsFieldTypeLabel
 ConnectionID16 >  urn:groove.net:Connection, Name$PropertiesListView18
 ConnectionID17 ?  urn:groove.net:Connection, Name4PropertyValueViewContainer
 ConnectionID18s @ urn:groove.net:Connection, Name0PropertyDescriptionLabel
 ConnectionID19 A  urn:groove.net:Connection, Name$PropertyValueLabele
 ConnectionID20  B urn:groove.net:Connection, Name(PropertyNumberLayoutLS
 ConnectionID21 C  urn:groove.net:Connection, Name*PropertySizeTypeLabel
 ConnectionID22l D urn:groove.net:Connection, Name0PropertySizeTypeComboBox
 ConnectionID23e E urn:groove.net:Connection, Name0PropertyValueEditControlo
 ConnectionID24 F urn:groove.net:Connection, Name2PropertyValueEditControl2
 ConnectionID25 G  urn:groove.net:Connection, Name:PropertyValueConstantCheckBox
 ConnectionID26 H  urn:groove.net:Connection, Name4PropertyValueMLEditControl
 ConnectionID27e I urn:groove.net:Connection, Name*PropertyValueTextView
 ConnectionID28 J  urn:groove.net:Connection, Name$PropertyDateButton="
 ConnectionID29 K  urn:groove.net:Connection, Name.FieldLabelValueTextView
 ConnectionID30 L  urn:groove.net:Connection, Name4FieldLabelPositionComboBoxo
 ConnectionID31yM urn:groove.net:Connection, NameAddOptionButton
 ConnectionID32Y N urn:groove.net:Connection, Name$CancelOptionButtonEL
 ConnectionID33 O  urn:groove.net:Connection, Name&DefaultOptionButton
 ConnectionID34e P urn:groove.net:Connection, Name$ModifyOptionButtonEL
 ConnectionID35 Q  urn:groove.net:Connection, Name$RemoveOptionButtonIG
 ConnectionID36yR urn:groove.net:Connection, NameChoicesListView
 ConnectionID37 S  urn:groove.net:Connection, Name*ValidationMinMaxLabel
 ConnectionID39 T  urn:groove.net:Connection, Name$ValidationMinLabel
 ConnectionID40y U urn:groove.net:Connection, Name0ValidationMinEditControlt
 ConnectionID41 V  urn:groove.net:Connection, Name$ValidationMaxLabelPr
 ConnectionID42 W  urn:groove.net:Connection, Name0ValidationMaxEditControl
 ConnectionID43 X  urn:groove.net:Connection, Name@FormatDateShortFormatRadioButton
 ConnectionID44 Y  urn:groove.net:Connection, Name>FormatDateLongFormatRadioButton
 ConnectionID45 Z  urn:groove.net:Connection, NameBFormatDateShortFormatPreviewLabel
 ConnectionID46 [  urn:groove.net:Connection, Name@FormatDateLongFormatPreviewLabel
 ConnectionID47I \ urn:groove.net:Connection, Name:ValidationMinChooseDateButton
 ConnectionID48 ]  urn:groove.net:Connection, Name:ValidationMaxChooseDateButton
 ConnectionID49 ^  urn:groove.net:Connection, Name,ValidationMinMaxLayoutl
 ConnectionID50y_ urn:groove.net:Connection, NameSortListButtonHT
 ConnectionID51 `  urn:groove.net:Connection, Name(PropertyBrowseButton
 ConnectionID52 a  urn:groove.net:Connection, Name*PropertyValueComboBox
 ConnectionID54 b  urn:groove.net:Connection, Name(PropertyLookupLayout
 ConnectionID55 c  urn:groove.net:Connection, Name0LookupTypeAllRadioButtonn
 ConnectionID56 d  urn:groove.net:Connection, Name0LookupTypeKeyRadioButton>
 ConnectionID57 e  urn:groove.net:Connection, Name.LookupTelespaceCheckBox
 ConnectionID58 f  urn:groove.net:Connection, Name.LookupTelespaceComboBox
 ConnectionID58 g  urn:groove.net:Connection, Name$LookupToolComboBox
 ConnectionID58 h  urn:groove.net:Connection, Name$LookupViewComboBoxne
 ConnectionID59s i urn:groove.net:Connection, Name*LookupColumnKeyLayout
 ConnectionID60v j urn:groove.net:Connection, Name.LookupKeyColumnComboBox
 ConnectionID61 k  urn:groove.net:Connection, Name,LookupKeyValueComboBoxa
 ConnectionID62 l  urn:groove.net:Connection, Name(LookupColumnComboBoxro
 ConnectionID63 m  urn:groove.net:Connection, Name4LookupReturnAllRadioButton
 ConnectionID64 n  urn:groove.net:Connection, Name:LookupReturnUniqueRadioButton
 ConnectionID65 o  urn:groove.net:Connection, Name*LookupNoCacheCheckBox
 ConnectionID66t}p urn:groove.net:Connection, Name"LookupApplyButton
 ConnectionID67r q urn:groove.net:Connection, Name,ValidationScriptLayoutc
 ConnectionID72g r urn:groove.net:Connection, Name0ValidationScriptComboBoxe
 ConnectionID73e s urn:groove.net:Connection, Name2ParameterValueEditControl
 ConnectionID74ut urn:groove.net:Connection, NameLookupComment
 ConnectionID75d}u urn:groove.net:Connection, Name"LookupClearButton
 ConnectionID76v urn:groove.net:Connection, NameDPropertyBackgroundColorRadioButtonx
 ConnectionID77ew urn:groove.net:Connection, NamePPropertyBackgroundTransparentRadioButtonNa
 ConnectionID78g x urn:groove.net:Connection, Name:PropertyBackgroundColorButton
 ConnectionID79yy urn:groove.net:Connection, NameWebBrowserViewm
 ConnectionID80 z  urn:groove.net:Connection, Name@PropertyInitialValueTypeComboBox
 ConnectionID81 {  urn:groove.net:Connection, Name2PropertyInitialTextLayout
 ConnectionID82 |  urn:groove.net:Connection, Name2PropertyInitialDateLayout
 ConnectionID83e } urn:groove.net:Connection, Name<FieldLabelPlainTextRadioButton
 ConnectionID84e ~ urn:groove.net:Connection, Name:FieldLabelRichTextRadioButton
 ConnectionID85   urn:groove.net:Connection, NameBPropertyValuePlainTextRadioButton
 ConnectionID86e   urn:groove.net:Connection, Name@PropertyValueRichTextRadioButton
 ConnectionID87%   urn:groove.net:Connection, Name(PropertyViewComboBox
 ConnectionID88   urn:groove.net:Connection, Name0PropertyViewFilterButton
 ConnectionID89   urn:groove.net:Connection, Name*ClearViewFilterButton
 ConnectionID90m  urn:groove.net:Connection, NameUpButtonT=
 ConnectionID91q  urn:groove.net:Connection, NameDownButtonon
 ConnectionID92n   urn:groove.net:Connection, NameBLookupKeyValueIsFieldNameCheckBox
 ConnectionID93q  urn:groove.net:Connection, NameOuterLayout
 ConnectionID94v}  urn:groove.net:Connection, Name"DisplayValueLabel
 ConnectionID404}  urn:groove.net:Connection, Name StoredValueLabelo
 ConnectionID404   urn:groove.net:Connection, Name@FieldTypeGeneralDescriptionLabel
 ConnectionID404y  urn:groove.net:Connection, NameLookupTypeLabel
 ConnectionID404   urn:groove.net:Connection, Name(LookupTelespaceLabelCo
 ConnectionID404y  urn:groove.net:Connection, NameLookupToolLabel
 ConnectionID404y  urn:groove.net:Connection, NameLookupViewLabel
 ConnectionID404   urn:groove.net:Connection, Name(LookupKeyColumnLabel.g
 ConnectionID404   urn:groove.net:Connection, Name&LookupKeyValueLabel
 ConnectionID404}  urn:groove.net:Connection, Name"LookupColumnLabel
 ConnectionID404   urn:groove.net:Connection, Name.LookupReturnChoiceLabel
 ConnectionID404u  urn:groove.net:Connection, NameCommentLabel
 ConnectionID404   urn:groove.net:Connection, Name(SelectFieldTypeLabel:P
 ConnectionID404   urn:groove.net:Connection, Name&PropertiesListLabel
 ConnectionID404   urn:groove.net:Connection, Name*ValidationScriptLabel
 ConnectionID404   urn:groove.net:Connection, Name6ValidationScriptChoiceLabel
 ConnectionID404   urn:groove.net:Connection, Name&ParameterValueLabel
 ConnectionID404   urn:groove.net:Connection, Name*ValidationMinMaxLabel
 ConnectionID404   urn:groove.net:Connection, Name$ValidationMinLabel
 ConnectionID404   urn:groove.net:Connection, Name$ValidationMaxLabelPr
 ConnectionID404}  urn:groove.net:Connection, Name"NoPropertiesLabel
 ConnectionID404   urn:groove.net:Connection, Name*PropertySizeTypeLabel
 ConnectionID404   urn:groove.net:Connection, Name(FieldLabelValueLabel <
 ConnectionID404   urn:groove.net:Connection, Name.FieldLabelPositionLabel
 ConnectionID404  urn:groove.net:Connection, Name>FieldTypeChangeWarningImportant
 ConnectionID404  urn:groove.net:Connection, Name,FieldTypeChangeWarninga
 ConnectionID404q SCRIPT( SRCDhttp://components.groove.net/Groove/Components/Root.osd?Packag
et.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Versi
on=5&Factory=Openone SCRIPT( SRC:http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.Tools.Business.GrooveForms.GrooveFormsLookupGlue_GSL&Vers
ion=5&Factory=Openi SCRIPT( SRC<http://components.groove.net/Groove/Components/Root.osd?Pack
age=net.groove.Groove.Tools.Business.GrooveForms.GrooveFormsChoicesGlue_GSL&Vers
ion=5&Factory=Openpo) SCRIPTINTERFACE( LIBIDL{366DFD51-2C22-438d-9135-5093E3102447}ox IIDL{B
727614-DDDB-472b-BFAA-CB15F8A1C434}VaE
function InitializeDialo
g(i_Designer, i_UIDelegate, i_Fields, i_Window, i_pIField, i_bEditable, i_DataDe
legate)
{
g_CallbackCode =
i_Designer;
g_UIDelegate = i
_UIDelegate;
g_pFields = i_Fi
elds;
g_Window = i_Win
dow;
g_DataDelegate =
i_DataDelegate;
InitializeCompon
entStrings();
InitializeGlobal
Strings();
ResetLookupPrope
rty();
AddModifyFieldWi
ndowInit(i_pIField, i_bEditable);
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
B SCRIPT(
var g_CallbackCode;
var g_UIDelegate;
var g_DataDelegate;
var g_PropertyInfoInitia
lized = false;
var g_PropertyArray = ne
w Array();
var g_PropertyLabelInsta
nce;
var g_PropertyLabelPosit
ionInstance;
var g_ValidationScriptIn
stance;
var g_ValidationMinInsta
nce;
var g_ValidationMaxInsta
nce;
var g_ImageContents;
var g_PropertyLabelFound
= false;
var g_bIsNew;
var g_FieldName = "";
var g_MinMaxType = "Numb
er";
var g_ApplyButtonUsed =
false;
var g_FormerFieldTypeNam
e = "";
var g_ValidationLayout =
"";
var g_FieldLabel = "";
var g_PreviousFieldType
= "";
var g_WizardPage = 1;
var g_Account = OpenAcco
untFromPropertyList(PropertyList);
var g_DirtyField = false
;
var g_PropertyInstanceMa
p;
var g_pFields;
var g_Window;
var g_IsClearingLookupSt
ring = false;
var g_SystemFieldPropert
ies;
var g_THIS_SPACE ;
var g_THIS_TOOL;
var g_ShownMaxLabelSizeM
sg = false;
var g_PropertyValueError
= false;
var g_IsReady = false;
var g_Color = "#FFFFFF";
var g_ImageIsReady = fal
se;
var g_ImagePath = "";
var g_IsRichText = false
;
var g_ViewFilter = "";
// Constants use for che
ckstate of radio buttons and check boxes.
var GCS_CHECKED = Groove
CheckState_Checked;
var GCS_UNCHECKED = Groo
veCheckState_Unchecked;
// Array to hold all fie
ld types.
var g_FieldTypes = new A
rray();
// Array to hold all fie
ld property arrays.
var g_FieldTypePropertie
s = new Array();
// Array of validation v
alues.
var g_ValidationScripts
= new Array();
function PropertyInstanc
e(i_Name, i_DisplayName, i_Type, i_ControlLabel, i_Description)
{
this.Name = i_Na
me;
this.Type = i_Ty
pe;
this.DisplayName
= i_DisplayName;
this.ControlLabe
l = i_ControlLabel;
this.Description
= i_Description;
this.PropertyVal
ue;
this.PropertyIni
tialValueType;
this.PropertyIni
tialValueFunction;
this.PropertySiz
eType;
this.PropertyPar
ameter;
}
function InitializeCompo
nentStrings()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
// GrooveForms5C
hoices.grp
DisplayValueLabe
l.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_DISPLAY_VALUE));
StoredValueLabel
.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_STORED_VALUE));
DefaultOptionBut
ton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_SELECT_BY_DEFAULT
);
ModifyOptionButt
on.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_MODIFY);
RemoveOptionButt
on.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_DELETE);
SortListButton.T
ooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_SORT);
UpButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_TOOLTIP_MOVE_UP);
DownButton.Toolt
ip = Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_TOOLTIP_MOVE_UP);
// GrooveForms5L
ookup.grp
LookupTypeLabel.
SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_LOOKUP_TYPE));
LookupTypeAllRad
ioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_ALL);
LookupTypeKeyRad
ioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_BY_KEY);
LookupTelespaceC
heckBox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_CROSS_SPACE);
LookupTelespaceL
abel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_SPACE));
LookupToolLabel.
SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_TOOL));
LookupViewLabel.
SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_VIEW));
LookupKeyColumnL
abel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_KEY_COLUMN));
LookupKeyValueLa
bel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_KEY_VALUE));
LookupKeyValueIs
FieldNameCheckBox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_KEY_
VALUE_IS_FLD_NME);
LookupColumnLabe
l.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_LOOKUP_COLUMN));
LookupReturnChoi
ceLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_RETURN));
LookupReturnAllR
adioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_ALL);
LookupReturnUniq
ueRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_UNIQUE);
LookupNoCacheChe
ckBox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_NO_CACHE);
LookupClearButto
n.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_CLEAR);
LookupApplyButto
n.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_APPLY);
CommentLabel.Set
Text(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_COMMENT));
LookupKeyValueCo
mboBox.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_TOOLTIP_KEY_V
ALUE);
// GrooveForms5S
ubForms.grp
PageTitle.SetTex
t(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CREATE_NEW_FLD));
BackButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BACK);
BackButton.IGroo
veUICommand.Mnemonic = Priv.GetResourcedString(IDS_FORMS_TOOL_MNEMONIC_ALT_B);
NextButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NEXT);
NextButton.IGroo
veUICommand.Mnemonic = Priv.GetResourcedString(IDS_FORMS_TOOL_MNEMONIC_ALT_N);
ApplyButton.Labe
l = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SVE_CRT_ANO);
ApplyButton.IGro
oveUICommand.Mnemonic = Priv.GetResourcedString(IDS_FORMS_TOOL_MNEMONIC_ALT_S);
OKButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_FINISH);
OKButton.IGroove
UICommand.Mnemonic = Priv.GetResourcedString(IDS_FORMS_TOOL_MNEMONIC_ALT_F);
CancelButton.Lab
el = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
CancelButton.IGr
ooveUICommand.Mnemonic = Priv.GetResourcedString(IDS_FORMS_TOOL_MNEMONIC_ALT_C);
SelectFieldTypeL
abel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SEL_FLD
_TYPE));
PropertiesListLa
bel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_PROP_LST
));
ValidationScript
Label.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SEL_VA
L_TYPE));
ValidationScript
ChoiceLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
VALIDATION));
ParameterValueLa
bel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_PARAMETE
R));
ValidationMinMax
Label.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NUM_VA
L_MSG));
ValidationMinLab
el.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MINIMUM))
;
ValidationMaxLab
el.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MAXIMUM))
;
FormatDateShortF
ormatRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD
_WIZ_SHORT_DATE);
FormatDateLongFo
rmatRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_LONG_DATE);
NoPropertiesLabe
l.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NO_PROPERT
IES));
PropertySizeType
Label.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_UNIT))
;
PropertyValuePla
inTextRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FL
D_WIZ_PLAIN_TEXT);
PropertyValueRic
hTextRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD
_WIZ_RICH_TEXT);
PropertyBrowseBu
tton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BROWS
E);
PropertyViewFilt
erButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CRT
_VIEW_FLT);
ClearViewFilterB
utton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CLEAR)
;
PropertyBackgrou
ndColorRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_F
LD_WIZ_COLOR);
PropertyBackgrou
ndColorButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WI
Z_CHOOSE_COLOR);
PropertyBackgrou
ndTransparentRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS
_GRP_FLD_WIZ_TRANSPARENT);
FieldLabelValueL
abel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_ENT_LBL
_FOR_FLD));
FieldLabelPlainT
extRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_W
IZ_PLAIN_TEXT);
FieldLabelRichTe
xtRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WI
Z_RICH_TEXT);
FieldLabelPositi
onLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_LBL_
POS_DESC));
FieldTypeGeneral
DescriptionLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD
_WIZ_SEL_FLD_DESC));
FieldTypeChangeW
arningImportant.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_WARN_IMPORTANT));
FieldTypeChangeW
arning.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_WARN_
TEXT));
// Add the items
to comboboxes and listboxes
PropertySizeType
ComboBox.ResetContent();
PropertySizeType
ComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CHARACTERS));
PropertySizeType
ComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_PIXELS));
PropertySizeType
ComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_PERCENT));
FieldLabelPositi
onComboBox.ResetContent();
FieldLabelPositi
onComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_LEFT
));
FieldLabelPositi
onComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_RIGH
T));
FieldLabelPositi
onComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_TOP)
);
g_THIS_SPACE = P
riv.GetResourcedString(IDS_FORMS_TOOL_COMMON_THIS_WORKSPACE);
g_THIS_TOOL = Pr
iv.GetResourcedString(IDS_FORMS_TOOL_COMMON_THIS_TOOL);
ChoicesListView.
SetColumnHeaderText(1, Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_DISPLA
Y_VALUE));
ChoicesListView.
SetColumnHeaderText(2, Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_STORED
_VALUE));
}
function InitializeGloba
lStrings()
{
// Insert field
types in the global field array.
g_FieldTypes = n
ew Array();
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_TEXT, "0", "TextBox", IDS_FORMS_TOOL_SUBFORMS_GRP_F
LD_WIZ_TEXT_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_MULTI_LINE_TEXT, "1", "TextArea", IDS_FORMS_TOOL_SU
BFORMS_GRP_FLD_WIZ_MULTI_LINE_TEXT_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_NUMBER, "2", "Numeric", IDS_FORMS_TOOL_SUBFORMS_GRP
_FLD_WIZ_NUMBER_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_UNFORMATTED_NUMBER, "20", "UnformattedNumeric", IDS
_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_UNFORMATTED_NUMBER_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_CURRENCY, "3", "Currency", IDS_FORMS_TOOL_SUBFORMS_
GRP_FLD_WIZ_CURRENCY_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_DATE, "4", "Date", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_DATE_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_DATE_TIME, "22", "DateTime", IDS_FORMS_TOOL_SUBFORM
S_GRP_FLD_WIZ_DATE_TIME_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_OPTION_BUTTONS, "5", "Radio", IDS_FORMS_TOOL_SUBFOR
MS_GRP_FLD_WIZ_OPTION_BUTTONS_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_CHECK_BOX, "6", "CheckBox", IDS_FORMS_TOOL_SUBFORMS
_GRP_FLD_WIZ_CHECK_BOX_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_DROP_DOWN_LIST, "7", "ComboBox", IDS_FORMS_TOOL_SUB
FORMS_GRP_FLD_WIZ_DROP_DOWN_LIST_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_LIST_BOX, "8", "ListBox", IDS_FORMS_TOOL_SUBFORMS_G
RP_FLD_WIZ_LIST_BOX_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_PASSWORD, "9", "Password", IDS_FORMS_TOOL_SUBFORMS_
GRP_FLD_WIZ_PASSWORD_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_RICH_TEXT, "10", "TextView", IDS_FORMS_TOOL_SUBFORM
S_GRP_FLD_WIZ_RICH_TEXT_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_ATTACHMENTS, "11", "Attachments", IDS_FORMS_TOOL_SU
BFORMS_GRP_FLD_WIZ_ATTACHMENTS_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_CONTACT, "23", "Contact", IDS_FORMS_TOOL_SUBFORMS_G
RP_FLD_WIZ_CONTACT_DSC);
var AllowEmbedde
dViewField = App.ReadRegistryValue(GrooveRegistryKeyValue_LocalMachine, "SOFTWAR
E\\Microsoft\\Office\\14.0\\Groove\\Development", "AllowFormsToolEmbeddedViewFie
ld");
if (AllowEmbedde
dViewField)
AddGloba
lFieldType(IDS_FORMS_TOOL_FIELD_TYPE_EMBEDDED_VIEW, "24", "EmbeddedView", IDS_FO
RMS_TOOL_SUBFORMS_GRP_FLD_WIZ_EMBEDDED_VIEW_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_FORM_HEADING, "12", "Heading", IDS_FORMS_TOOL_SUBFO
RMS_GRP_FLD_WIZ_FORM_HEADING_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_SECTION_HEADING, "13", "SectionHeading", IDS_FORMS_
TOOL_SUBFORMS_GRP_FLD_WIZ_SECTION_HEADING_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_STATIC_TEXT, "14", "StaticText", IDS_FORMS_TOOL_SUB
FORMS_GRP_FLD_WIZ_STATIC_TEXT_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_HORIZONTAL_LINE, "15", "Line", IDS_FORMS_TOOL_SUBFO
RMS_GRP_FLD_WIZ_HORIZONTAL_LINE_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_NEW_LINE, "16", "Break", IDS_FORMS_TOOL_SUBFORMS_GR
P_FLD_WIZ_NEW_LINE_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_SCRIPT_BUTTON, "17", "Button", IDS_FORMS_TOOL_SUBFO
RMS_GRP_FLD_WIZ_SCRIPT_BUTTON_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_IMAGE, "18", "Image", IDS_FORMS_TOOL_SUBFORMS_GRP_F
LD_WIZ_IMAGE_DSC);
AddGlobalFieldTy
pe(IDS_FORMS_TOOL_FIELD_TYPE_SYSTEM_FIELD, "19", "SystemField", IDS_FORMS_TOOL_S
UBFORMS_GRP_FLD_WIZ_SYSTEM_FIELD_DSC);
// Common field
properties.
var LABEL_PROPER
TY = GetCommonProperty("Label", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_LABEL, "Refe
rence", -1, -1);
var WIDTH_PROPER
TY = GetCommonProperty("Width", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_WIDTH, "Numb
er", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_WIDTH_LABEL, IDS_FORMS_TOOL_SUBFORMS_GR
P_FLD_WIZ_WIDTH_DSC);
var HEIGHT_PROPE
RTY = GetCommonProperty("Height", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HEIGHT, "N
umber", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HEIGHT_LABEL, IDS_FORMS_TOOL_SUBFORM
S_GRP_FLD_WIZ_HEIGHT_DSC);
var MAXLENGTH_PR
OPERTY = GetCommonProperty("MaximumLength", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
MAXIMUM_LENGTH, "Number", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MAXIMUM_LENGTH_LAB
EL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MAXIMUM_LENGTH_DSC);
var INITIALNUMBE
R_PROPERTY = GetCommonProperty("InitialValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_W
IZ_INITIAL_VALUE, "Number", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALUE_LA
BEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALUE_NUMBER_DSC);
var INITIALDATE_
PROPERTY = GetCommonProperty("InitialValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ
_INITIAL_VALUE, "InitialValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALU
E_LABEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALUE_DATE_DSC);
var PRECISION_PR
OPERTY = GetCommonProperty("Precision", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_PREC
ISION, "Number", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_PRECISION, IDS_FORMS_TOOL_S
UBFORMS_GRP_FLD_WIZ_PRECISION_DSC);
var MINVALUE_PRO
PERTY = GetCommonProperty("MinimumValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MI
NIMUM_VALUE, "Value", -1, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MINIMUM_VALUE_DSC)
;
var MAXVALUE_PRO
PERTY = GetCommonProperty("MaximumValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MA
XIMUM_VALUE, "Value", -1, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MAXIMUM_VALUE_DSC)
;
var VALIDATION_P
ROPERTY = GetCommonProperty("Validation", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VA
LIDATION, "Validation", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_PARAMETER, IDS_FORMS
_TOOL_SUBFORMS_GRP_FLD_WIZ_VALIDATION_DSC);
var LOOKUP_PROPE
RTY = GetCommonProperty("Lookup", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_LOOKUP, "L
ookup", -1, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_LOOKUP_DSC);
var HEADINGTEXT_
PROPERTY = GetCommonProperty("HeadingText", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
HEADING_TEXT, "Content", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HEADING_TEXT_LABEL,
IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HEADING_TEXT_DSC);
var OPTIONS_PROP
ERTY = GetCommonProperty("Options", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_OPTIONS,
"SubProperty", -1, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_OPTIONS_DSC);
var NAME_PROPERT
Y = GetCommonProperty("Name", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NAME, "Value",
IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NAME_LABEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD
_WIZ_NAME_DSC);
// Unique field
properties.
var INITIALTEXT_
PROPERTY = GetCommonProperty("InitialValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ
_INITIAL_VALUE, "InitialValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALU
E_LABEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALUE_TEXT_DSC);
var INITIALCONTE
NT_PROPERTY = GetCommonProperty("InitialValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_INITIAL_VALUE, "Content", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALUE_
LABEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALUE_TEXT_DSC);
var SYMBOL_PROPE
RTY = GetCommonProperty("Symbol", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SYMBOL, "V
alue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SYMBOL, IDS_FORMS_TOOL_SUBFORMS_GRP_F
LD_WIZ_SYMBOL_DSC);
var EARLIESTDATE
_PROPERTY = GetCommonProperty("EarliestDate", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WI
Z_EARLIEST_DATE, "Value", -1, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_EARLIEST_DATE_
DSC);
var LATESTDATE_P
ROPERTY = GetCommonProperty("LatestDate", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_LA
TEST_DATE, "Value", -1, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_LATEST_DATE_DSC);
var FORMATDATE_P
ROPERTY = GetCommonProperty("Format", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_FORMAT
TING, "FormatDate", -1, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_FORMATTING_DSC);
var BUTTONS_PROP
ERTY = GetCommonProperty("Buttons", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BUTTONS,
"SubProperty", -1, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BUTTONS_DSC);
var STOREDVALUE_
PROPERTY = GetCommonProperty("StoredValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
STORED_VALUE, "Value", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_STORED_VALUE_LABEL, I
DS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_STORED_VALUE_DSC);
var INITIALCHECK
_PROPERTY = GetCommonProperty("IsCheckedByDefault", IDS_FORMS_TOOL_SUBFORMS_GRP_
FLD_WIZ_INITIAL_STATE, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_S
TATE_LABEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_STATE_DSC);
var INCLUDEBLANK
_PROPERTY = GetCommonProperty("IncludeBlankEntry", IDS_FORMS_TOOL_SUBFORMS_GRP_F
LD_WIZ_INCLUDE_BLANK, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INCLUDE_BL
ANK_LABEL, -1);
var USERDEFINED_
PROPERTY = GetCommonProperty("AllowUserDefinedValues", IDS_FORMS_TOOL_SUBFORMS_G
RP_FLD_WIZ_USER_DEFINED, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_USER_DE
FINED_LABEL, -1);
var MEMBERNAMES_
PROPERTY = GetCommonProperty("IncludeMemberNames", IDS_FORMS_TOOL_SUBFORMS_GRP_F
LD_WIZ_MEMBER_NAMES, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MEMBER_NAME
S_LABEL, -1);
var NUMBERVISIBL
E_PROPERTY = GetCommonProperty("NumberVisible", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_NUMBER_VISIBLE, "Number", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NUMBER_VISIBLE
_LABEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NUMBER_VISIBLE_DSC);
var MULTIPLESELE
CTION_PROPERTY = GetCommonProperty("AllowMultipleSelection", IDS_FORMS_TOOL_SUBF
ORMS_GRP_FLD_WIZ_MULTIPLE_VALUES, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WI
Z_MULTIPLE_VALUES_LABEL, -1);
var INITIALPASSW
ORD_PROPERTY = GetCommonProperty("InitialValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD
_WIZ_INITIAL_VALUE, "Value", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALUE_L
ABEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALUE_TEXT_DSC);
var BORDERHIDDEN
_PROPERTY = GetCommonProperty("IsBorderHidden", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_HIDE_BORDER, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HIDE_BORDER_LAB
EL, -1);
var SEARCHABLE_P
ROPERTY = GetCommonProperty("IsSearchable", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
SEARCHABLE, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SEARCHABLE_LABEL, -1
);
var COMMANDBARHI
DDEN_PROPERTY = GetCommonProperty("IsCommandBarHidden", IDS_FORMS_TOOL_SUBFORMS_
GRP_FLD_WIZ_HIDE_CMDBAR, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HIDE_CM
DBAR_LABEL, -1);
var BACKGROUNDCO
LOR_PROPERTY = GetCommonProperty("BackgroundColor", IDS_FORMS_TOOL_SUBFORMS_GRP_
FLD_WIZ_BG_COLOR, "Color", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BG_COLOR_LABEL, I
DS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BG_COLOR_DSC);
var INITIALRICHT
EXT_PROPERTY = GetCommonProperty("InitialValue", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD
_WIZ_INITIAL_VALUE, "RichText", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALU
E_LABEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INITIAL_VALUE_RICH_TEXT_DSC);
var CENTERFORMHE
ADING_PROPERTY = GetCommonProperty("Center", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ
_CENTER, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CENTER_FH_LABEL, -1);
var CENTERSECTIO
NHEADING_PROPERTY = GetCommonProperty("Center", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_CENTER, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CENTER_SH_LABEL, -1)
;
var STATICTEXT_P
ROPERTY = GetCommonProperty("Text", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_TEXT, "S
taticText", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_TEXT, IDS_FORMS_TOOL_SUBFORMS_GR
P_FLD_WIZ_STATIC_TEXT_DSC);
var CENTERSTATIC
TEXT_PROPERTY = GetCommonProperty("Center", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
CENTER, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CENTER_TXT_LABEL, -1);
var THICKNESS_PR
OPERTY = GetCommonProperty("Thickness", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_THIC
KNESS, "Number", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_THICKNESS, IDS_FORMS_TOOL_S
UBFORMS_GRP_FLD_WIZ_THICKNESS_DSC);
var UNSHADED_PRO
PERTY = GetCommonProperty("IsUnshaded", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SHAD
ING, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SHADING_DSC, -1);
var BUTTONTEXT_P
ROPERTY = GetCommonProperty("ButtonText", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BU
TTON_TEXT, "Content", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BUTTON_TEXT_LABEL, IDS
_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BUTTON_TEXT_DSC);
var ONCLICK_PROP
ERTY = GetCommonProperty("OnClickScript", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_ON
CLICK, "Value", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_ONCLICK, IDS_FORMS_TOOL_SUBF
ORMS_GRP_FLD_WIZ_ONCLICK_DSC);
var IMAGECONTENT
S_PROPERTY = GetCommonProperty("ImageContents", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_SOURCE, "Browse", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SOURCE_LABEL, IDS_FORM
S_TOOL_SUBFORMS_GRP_FLD_WIZ_SOURCE_DSC);
var BORDERSIZE_P
ROPERTY = GetCommonProperty("BorderSize", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BO
RDER, "Number", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_BORDER_LABEL, IDS_FORMS_TOOL
_SUBFORMS_GRP_FLD_WIZ_BORDER_DSC);
var ALTTEXT_PROP
ERTY = GetCommonProperty("AltText", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_ALTTEXT,
"Value", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_ALTTEXT, IDS_FORMS_TOOL_SUBFORMS_G
RP_FLD_WIZ_ALTTEXT_DSC);
var CENTERIMAGE_
PROPERTY = GetCommonProperty("Center", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CENTE
R, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CENTER_IMG_LABEL, -1);
var HIDEAWARENES
S_PROPERTY = GetCommonProperty("IsAwarenessIconHidden", IDS_FORMS_TOOL_SUBFORMS_
GRP_FLD_WIZ_HIDE_AWARENESS, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HIDE
_AWARENESS_LABEL, -1);
var HIDECONTEXTM
ENU_PROPERTY = GetCommonProperty("IsContextMenuHidden", IDS_FORMS_TOOL_SUBFORMS_
GRP_FLD_WIZ_HIDE_CNTXT_MENU, "Constant", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HID
E_CNTXT_MENU_LABEL, -1);
var USEAUTHENTIC
ATIONCOLOR_PROPERTY = GetCommonProperty("UseAuthenticationColor", IDS_FORMS_TOOL
_SUBFORMS_GRP_FLD_WIZ_AUTHENTICATION_COLOR, "Constant", IDS_FORMS_TOOL_SUBFORMS_
GRP_FLD_WIZ_AUTHENTICATION_COLOR_LABEL, -1);
var EMBEDDEDVIEW
ID_PROPERTY = GetCommonProperty("EmbeddedViewID", IDS_FORMS_TOOL_SUBFORMS_GRP_FL
D_WIZ_VIEW, "View", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VIEW, IDS_FORMS_TOOL_SUB
FORMS_GRP_FLD_WIZ_VIEW_DSC);
var EMBEDDEDVIEW
FILTER_PROPERTY = GetCommonProperty("EmbeddedViewFilter", IDS_FORMS_TOOL_SUBFORM
S_GRP_FLD_WIZ_VIEW_FILTER, "ViewFilter", IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VIE
W_FILTER_LABEL, IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VIEW_FILTER_DSC);
// Text field.
var g_TextProper
ties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, MAXLENGTH_PROPERTY, INITIALTEXT
_PROPERTY, LOOKUP_PROPERTY, VALIDATION_PROPERTY, NAME_PROPERTY);
// Multi-line Te
xt field.
var g_MultiLineT
extProperties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, HEIGHT_PROPERTY, INITI
ALCONTENT_PROPERTY, LOOKUP_PROPERTY, VALIDATION_PROPERTY, NAME_PROPERTY);
// Number field.
var g_NumberProp
erties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, MAXLENGTH_PROPERTY, INITIALNU
MBER_PROPERTY, PRECISION_PROPERTY, MINVALUE_PROPERTY, MAXVALUE_PROPERTY, NAME_PR
OPERTY);
// Unformatted N
umber field.
var g_Unformatte
dNumberProperties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, MAXLENGTH_PROPERTY
, INITIALNUMBER_PROPERTY, MINVALUE_PROPERTY, MAXVALUE_PROPERTY, NAME_PROPERTY);
// Currency fiel
d.
var g_CurrencyPr
operties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, MAXLENGTH_PROPERTY, INITIAL
NUMBER_PROPERTY, SYMBOL_PROPERTY, PRECISION_PROPERTY, MINVALUE_PROPERTY, MAXVALU
E_PROPERTY, NAME_PROPERTY);
// Date field.
var g_DateProper
ties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, INITIALDATE_PROPERTY, EARLIESTD
ATE_PROPERTY, LATESTDATE_PROPERTY, FORMATDATE_PROPERTY, NAME_PROPERTY);
// Date Time fie
ld.
var g_DateTimePr
operties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, INITIALDATE_PROPERTY, EARLI
ESTDATE_PROPERTY, LATESTDATE_PROPERTY, FORMATDATE_PROPERTY, NAME_PROPERTY);
// Option Button
s field.
var g_OptionButt
onsProperties = new Array(LABEL_PROPERTY, BUTTONS_PROPERTY, NAME_PROPERTY);
// Check Box fie
ld.
var g_CheckBoxPr
operties = new Array(LABEL_PROPERTY, STOREDVALUE_PROPERTY, INITIALCHECK_PROPERTY
, NAME_PROPERTY);
// Drop-down Lis
t field.
var g_DropDownLi
stProperties = new Array(LABEL_PROPERTY, OPTIONS_PROPERTY, INCLUDEBLANK_PROPERTY
, USERDEFINED_PROPERTY, MEMBERNAMES_PROPERTY, LOOKUP_PROPERTY, NAME_PROPERTY);
// List Box fiel
d.
var g_ListBoxPro
perties = new Array(LABEL_PROPERTY, OPTIONS_PROPERTY, INCLUDEBLANK_PROPERTY, NUM
BERVISIBLE_PROPERTY, MULTIPLESELECTION_PROPERTY, MEMBERNAMES_PROPERTY, LOOKUP_PR
OPERTY, NAME_PROPERTY);
// Password fiel
d.
var g_PasswordPr
operties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, MAXLENGTH_PROPERTY, INITIAL
PASSWORD_PROPERTY, VALIDATION_PROPERTY, NAME_PROPERTY);
// Rich Text fie
ld.
var g_RichTextPr
operties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, HEIGHT_PROPERTY, BORDERHIDD
EN_PROPERTY, SEARCHABLE_PROPERTY, COMMANDBARHIDDEN_PROPERTY, BACKGROUNDCOLOR_PRO
PERTY, INITIALRICHTEXT_PROPERTY, NAME_PROPERTY);
// Attachments f
ield.
var g_Attachment
sProperties = new Array(LABEL_PROPERTY, NAME_PROPERTY);
// Form Heading
field.
var g_FormHeadin
gProperties = new Array(HEADINGTEXT_PROPERTY, CENTERFORMHEADING_PROPERTY, NAME_P
ROPERTY);
// Section Headi
ng field.
var g_SectionHea
dingProperties = new Array(HEADINGTEXT_PROPERTY, CENTERSECTIONHEADING_PROPERTY,
NAME_PROPERTY);
// Static Text f
ield.
var g_StaticText
Properties = new Array(STATICTEXT_PROPERTY, CENTERSTATICTEXT_PROPERTY, LOOKUP_PR
OPERTY, NAME_PROPERTY);
// Horizontal Li
ne field.
var g_Horizontal
LineProperties = new Array(THICKNESS_PROPERTY, UNSHADED_PROPERTY, NAME_PROPERTY)
;
// NewLine field
var g_NewLinePro
perties = new Array();
// Script Button
field.
var g_ScriptButt
onProperties = new Array(BUTTONTEXT_PROPERTY, ONCLICK_PROPERTY, NAME_PROPERTY);
// Image field.
var g_ImagePrope
rties = new Array(IMAGECONTENTS_PROPERTY, BORDERSIZE_PROPERTY, ALTTEXT_PROPERTY,
CENTERIMAGE_PROPERTY, NAME_PROPERTY);
// System field.
g_SystemFieldPro
perties = new Array(LABEL_PROPERTY, NAME_PROPERTY);
// Contact field
.
var g_ContactPro
perties = new Array(LABEL_PROPERTY, HIDEAWARENESS_PROPERTY, HIDECONTEXTMENU_PROP
ERTY, USEAUTHENTICATIONCOLOR_PROPERTY, NAME_PROPERTY);
// Embedded View
field.
var g_EmbeddedVi
ewProperties = new Array(LABEL_PROPERTY, WIDTH_PROPERTY, HEIGHT_PROPERTY, EMBEDD
EDVIEWID_PROPERTY, EMBEDDEDVIEWFILTER_PROPERTY, NAME_PROPERTY);
// Insert field
properties into the global field array.
g_FieldTypePrope
rties = new Array();
g_FieldTypePrope
rties.push(g_TextProperties);
g_FieldTypePrope
rties.push(g_MultiLineTextProperties);
g_FieldTypePrope
rties.push(g_NumberProperties);
g_FieldTypePrope
rties.push(g_UnformattedNumberProperties);
g_FieldTypePrope
rties.push(g_CurrencyProperties);
g_FieldTypePrope
rties.push(g_DateProperties);
g_FieldTypePrope
rties.push(g_DateTimeProperties);
g_FieldTypePrope
rties.push(g_OptionButtonsProperties);
g_FieldTypePrope
rties.push(g_CheckBoxProperties);
g_FieldTypePrope
rties.push(g_DropDownListProperties);
g_FieldTypePrope
rties.push(g_ListBoxProperties);
g_FieldTypePrope
rties.push(g_PasswordProperties);
g_FieldTypePrope
rties.push(g_RichTextProperties);
g_FieldTypePrope
rties.push(g_AttachmentsProperties);
g_FieldTypePrope
rties.push(g_ContactProperties);
if (AllowEmbedde
dViewField)
g_FieldT
ypeProperties.push(g_EmbeddedViewProperties);
g_FieldTypePrope
rties.push(g_FormHeadingProperties);
g_FieldTypePrope
rties.push(g_SectionHeadingProperties);
g_FieldTypePrope
rties.push(g_StaticTextProperties);
g_FieldTypePrope
rties.push(g_HorizontalLineProperties);
g_FieldTypePrope
rties.push(g_NewLineProperties);
g_FieldTypePrope
rties.push(g_ScriptButtonProperties);
g_FieldTypePrope
rties.push(g_ImageProperties);
// Insert valida
tion properties in the global validation array.
g_ValidationScri
pts = new Array();
// GrooveFormsTo
olFieldValidationType_IsSubStringPresent
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SUBSTRING, "true", IDS_FORMS_TOOL_SUBFOR
MS_GRP_FLD_WIZ_SUBSTRING_DSC);
// GrooveFormsTo
olFieldValidationType_IsSubStringNotPresent
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_SUBSTRING_NOT, "true", IDS_FORMS_TOOL_SU
BFORMS_GRP_FLD_WIZ_SUBSTRING_NOT_DSC);
// GrooveFormsTo
olFieldValidationType_AreAllSubStringsPresent
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_ALL_SUBSTRINGS, "true", IDS_FORMS_TOOL_S
UBFORMS_GRP_FLD_WIZ_ALL_SUBSTRINGS_DSC);
// GrooveFormsTo
olFieldValidationType_AreAnySubStringsPresent
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_ANY_SUBSTRINGS, "true", IDS_FORMS_TOOL_S
UBFORMS_GRP_FLD_WIZ_ANY_SUBSTRINGS_DSC);
// GrooveFormsTo
olFieldValidationType_AreNoSubStringsPresent
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NO_SUBSTRINGS, "true", IDS_FORMS_TOOL_SU
BFORMS_GRP_FLD_WIZ_NO_SUBSTRINGS_DSC);
// GrooveFormsTo
olFieldValidationType_IsValidEmailAddress
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VALID_EMAIL, "false", IDS_FORMS_TOOL_SUB
FORMS_GRP_FLD_WIZ_VALID_EMAIL_DSC);
// GrooveFormsTo
olFieldValidationType_IsValidUSZipCode
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VALID_ZIP, "false", IDS_FORMS_TOOL_SUBFO
RMS_GRP_FLD_WIZ_VALID_ZIP_DSC);
// GrooveFormsTo
olFieldValidationType_IsValidPassword
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VALID_PASSWORD, "false", IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_VALID_PASSWORD_DSC);
// GrooveFormsTo
olFieldValidationType_MinimumLength
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MIN_LENGTH, "true", IDS_FORMS_TOOL_SUBFO
RMS_GRP_FLD_WIZ_MIN_LENGTH_DSC);
// GrooveFormsTo
olFieldValidationType_MaximumLength
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MAX_LENGTH, "true", IDS_FORMS_TOOL_SUBFO
RMS_GRP_FLD_WIZ_MAX_LENGTH_DSC);
// GrooveFormsTo
olFieldValidationType_IsAlpha
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_IS_ALPHA, "false", IDS_FORMS_TOOL_SUBFOR
MS_GRP_FLD_WIZ_IS_ALPHA_DSC);
// GrooveFormsTo
olFieldValidationType_HasAlpha
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HAS_ALPHA, "false", IDS_FORMS_TOOL_SUBFO
RMS_GRP_FLD_WIZ_HAS_ALPHA_DSC);
// GrooveFormsTo
olFieldValidationType_IsNumeric
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_IS_NUM, "false", IDS_FORMS_TOOL_SUBFORMS
_GRP_FLD_WIZ_IS_NUM_DSC);
// GrooveFormsTo
olFieldValidationType_HasNumeric
AddGlobalValidat
ion(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_HAS_NUM, "false", IDS_FORMS_TOOL_SUBFORM
S_GRP_FLD_WIZ_HAS_NUM_DSC);
}
function AddGlobalFieldT
ype(i_DisplayNameID, i_FieldType, i_Name, i_DescriptionID)
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var DisplayName
= Priv.GetResourcedString(i_DisplayNameID);
var Description
= Priv.GetResourcedString(i_DescriptionID);
g_FieldTypes.pus
h(DisplayName + "|" + i_FieldType + "|" + i_Name + "|" + Description);
}
function GetCommonProper
ty(i_PropertyName, i_DisplayNameID, i_PropertyType, i_ComponentLabelID, i_Descri
ptionID)
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var DisplayName,
ComponentLabel, Description = "";
if (i_DisplayNam
eID != -1)
DisplayN
ame = Priv.GetResourcedString(i_DisplayNameID);
if (i_ComponentL
abelID != -1)
Componen
tLabel = Priv.GetResourcedString(i_ComponentLabelID);
if (i_Descriptio
nID != -1)
Descript
ion = Priv.GetResourcedString(i_DescriptionID);
return (i_Proper
tyName + "|" + DisplayName + "|" + i_PropertyType + "|" + ComponentLabel + "|" +
Description);
}
function AddGlobalValida
tion(i_DisplayNameID, i_HasParameter, i_DescriptionID)
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var DisplayName
= Priv.GetResourcedString(i_DisplayNameID);
var Description
= Priv.GetResourcedString(i_DescriptionID);
g_ValidationScri
pts.push(DisplayName + "|" + i_HasParameter + "|" + Description);
}
function SubPropertyInst
ance()
{
this.Value;
this.Caption;
this.Selected;
}
function OnViewContainer
Show()
{
if (typeof g_UID
elegate != "undefined")
ResetLoo
kupProperty();
}
function OnViewContainer
Hide()
{
g_IsReady = fals
e;
g_ImageIsReady =
false;
}
function GetHelpProvider
()
{
try
{
var RTFH
elpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCo
mponentByName("RTFHelpProvider");
return R
TFHelpProvider;
}
catch(error)
{
}
finally
{
RTFHelpP
rovider = null;
delete R
TFHelpProvider;
CollectG
arbage();
}
}
function AddModifyFieldW
indowInit(i_pIField, i_bIsNew)
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
g_PreviousFieldT
ype = "";
g_ApplyButtonUse
d = false;
FillFieldTypes()
;
ResetPropertyVar
iables();
ClearFieldProper
tyInstructions();
var FieldName =
"";
if (i_pIField !=
null)
FieldNam
e = i_pIField.IGrooveFormsToolDesignObject.Name;
SetEditableState
(i_bIsNew);
SetFieldType(i_p
IField, i_bIsNew);
SetFieldName(Fie
ldName);
SetFieldLabel(i_
pIField);
LoadProperPage(i
_bIsNew);
// Only load pro
perty info if the field is being modified.
if (!i_bIsNew)
{
GetPrope
rtyInfo();
GetValid
ationValue(false);
SetPrope
rtyLabelValue();
// Load
all properties for the field if it is not new.
for (var
i = 1; i < PropertiesListView.Count; i++)
{
var index = PropertiesListView.GetItemData(i);
if (typeof g_PropertyArray[index] != "undefined")
int_GetPropertyValue(i, false);
}
// Load
the selected property for the field.
Properti
esListView.SetSelectionByIndex(0);
SetPageT
itle(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MOD_FIELD));
// Make
sure the focus is in the correct object.
SetFocus
InProperObject();
}
else
SetPageT
itle(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CREATE_FIELD));
g_DirtyField = f
alse;
}
function SetEditableStat
e(i_bIsNew)
{
g_bIsNew = i_bIs
New;
}
function SetFieldName(i_
Name)
{
g_FieldName = i_
Name;
}
function SetFieldType(i_
pIField, i_bIsNew)
{
if (i_pIField !=
null)
{
var Fiel
dTypeDisplayName = GetFieldTypeDisplayNameByFieldType(i_pIField.FieldType);
if (Fiel
dTypeDisplayName != "")
{
FieldTypeListView.SetSelectionByText(FieldTypeDisplayName);
if (!i_bIsNew)
SetFieldPropertyInstructions(FieldTypeDisplayName);
}
}
}
function SetFieldLabel(i
_pIField)
{
if (i_pIField !=
null)
{
if (!i_p
IField.IsRichTextLabel)
{
FieldLabelPlainTextRadioButton.CheckState = GrooveCheckState_Checked;
FieldLabelRichTextRadioButton.CheckState = GrooveCheckState_Unchecked;

FieldLabelValueTextView.TextContent.PlainText = i_pIField.Label;
}
else
{
FieldLabelPlainTextRadioButton.CheckState = GrooveCheckState_Unchecked;
FieldLabelRichTextRadioButton.CheckState = GrooveCheckState_Checked;

var Label = i_pIField.RichTextLabel;

// Create an empty rich text element to compare the label element to.
var pStorageMgr = GrooveScriptFunctions.CreateNewObject("Groove.StorageManager")
;
var pEmptyElement = pStorageMgr.CreateTemporaryElement("urn:groove.net:RichText"
);
pEmptyElement.SetAttribute("Text", "");

// If the label element is empty, use the old label field for backwards compatib
ility.
if (typeof Label == "undefined" || Label == null || Label.Equals(pEmptyElement))
FieldLabelValueTextView.TextContent.PlainText = i_pIField.Label;
else
FieldLabelValueTextView.CellContent.ReadContentFromElement(Label);
}
g_FieldL
abel = GetPlainTextFieldLabel();
}
else
{
FieldLab
elValueTextView.TextContent.PlainText = "";
g_FieldL
abel = "";
}
}
function SetFieldPropert
yInstructions(i_FieldTypeName)
{
ClearFieldProper
tyInstructions();
PropertyInstruct
ionsLabel.SetText(g_UIDelegate.IGrooveFormsToolUIDelegatePrivate.GetResourcedStr
ing(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_PROP_SETTING));
PropertyInstruct
ionsFieldTypeLabel.SetText(i_FieldTypeName);
}
function ClearFieldPrope
rtyInstructions()
{
PropertyInstruct
ionsLabel.SetText("");
PropertyInstruct
ionsFieldTypeLabel.SetText("");
}
function LoadProperPage(
i_bIsNew)
{
if (i_bIsNew)
{
// Disab
le next and finish buttons.
NextButt
on.Enabled = false;
OKButton
.Enabled = false;
// Do no
t have a default button until a field type is selected.
OKButton
.Default = false;
NextButt
on.Default = false;
g_Wizard
Page = 1;
FieldTyp
eListView.ClearAllSelections();
ShowHide
MultiCellContents("ApplyButtonViewContainer", OuterLayout, 46, true);
BackNext
ButtonViewContainer.LayoutbyName = "BackNextButtonLayout";
FieldTyp
eGeneralDescriptionViewContainer.LayoutByName = "FieldTypeGeneralDescriptionLayo
ut";
InnerVie
wContainer.LayoutByName = "InnerLayout";
}
else
{
// Enabl
e finish button and set it as default.
OKButton
.Enabled = true;
OKButton
.Default = true;
NextButt
on.Default = false;
g_Wizard
Page = 2;
InnerVie
wContainer.LayoutByName = "PropertiesLayout";
ShowHide
MultiCellContents("ApplyButtonViewContainer", OuterLayout, 46, false);
BackNext
ButtonViewContainer.LayoutbyName = "BackOKButtonLayout";
}
BackButton.Enabl
ed = false;
}
function SetPageTitle(i_
Title)
{
PageTitle.SetTex
t(i_Title);
}
function GetCurrentField
TypeDisplayName()
{
return FieldType
ListView.GetSelectionText();
}
function GetCurrentField
TypeIndex()
{
return FieldType
ListView.SelectionIndex;
}
function GetCurrentField
Type()
{
var FieldTypeInd
ex = GetCurrentFieldTypeIndex();
if (FieldTypeInd
ex == -1)
return G
rooveFormsToolFieldType_SystemField;
else
return F
ieldTypeListView.GetItemData(FieldTypeIndex);
}
function GetFieldTypeDis
playNameByIndex(i_Index)
{
if (i_Index == -
1)
{
return g
_UIDelegate.IGrooveFormsToolUIDelegatePrivate.GetResourcedString(IDS_FORMS_TOOL_
FIELD_TYPE_SYSTEM_FIELD);
}
else
{
var Fiel
dTypeArray = g_FieldTypes[i_Index].split("|");
return F
ieldTypeArray[0];
}
}
function GetFieldTypeNam
eByIndex(i_Index)
{
if (i_Index == -
1)
{
return "
SystemField";
}
else
{
var Fiel
dTypeArray = g_FieldTypes[i_Index].split("|");
return F
ieldTypeArray[2];
}
}
function GetDescriptionF
orFieldTypeByIndex(i_Index)
{
var FieldTypeArr
ay = g_FieldTypes[i_Index].split("|");
return FieldType
Array[3];
}
function GetFieldTypeDis
playNameByFieldType(i_FieldType)
{
for (var i = 0;
i < g_FieldTypes.length; i++)
{
var Fiel
dTypeArray = g_FieldTypes[i].split("|");
if (i_Fi
eldType == FieldTypeArray[1])
return FieldTypeArray[0];
}
}
function GetFieldName()
{
return g_FieldNa
me;
}
function GetFieldLabel()
{
return g_FieldLa
bel;
}
function GetPlainTextPro
pertyValue()
{
var PropertyValu
e = PropertyValueTextView.TextContent.PlainText;
PropertyValue =
PropertyValue.replace("\r", "");
PropertyValue =
PropertyValue.replace("\n", " ");
return TrimEnds(
PropertyValue);
}
function GetPlainTextFie
ldLabel()
{
var FieldLabel =
FieldLabelValueTextView.TextContent.PlainText;
FieldLabel = Fie
ldLabel.replace("\r", "");
FieldLabel = Fie
ldLabel.replace("\n", " ");
return TrimEnds(
FieldLabel);
}
function GetFieldLabelPo
sition()
{
var PositionInde
x = FieldLabelPositionComboBox.GetSelectionIndex();
if (PositionInde
x == 0)
return G
rooveFormsToolFieldLabelPosition_Left;
else if (Positio
nIndex == 1)
return G
rooveFormsToolFieldLabelPosition_Right;
else if (Positio
nIndex == 2)
return G
rooveFormsToolFieldLabelPosition_Top;
}
function ApplyButton_OnC
ommand(i_UICommand)
{
g_CallbackCode.E
ndIMEComposition();
g_ShownMaxLabelSizeMsg = false;
AcceptChangesApp
ly();
}
function OKButton_OnComm
and(i_UICommand)
{
g_CallbackCode.E
ndIMEComposition();
g_ShownMaxLabelSizeMsg = false;
ResetLookupPrope
rty();
LookupTelespaceC
omboBox.ResetContent();
CollectGarbage()
;
AcceptChangesOK(
);
}
function CancelButton_On
Command(i_UICommand)
{
g_ShownMaxLabelS
izeMsg = false;
ResetLookupPrope
rty();
LookupTelespaceC
omboBox.ResetContent();
CollectGarbage()
;
CancelChanges();
}
// LookupApply Button
function LookupApplyButt
on_OnCommand(i_UICommand)
{
SetPropertyValue
();
}
// LookupClear Button
function LookupClearButt
on_OnCommand(i_UICommand)
{
RemoveLookupProp
erty();
}
function AcceptChangesAp
ply()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
try
{
Validate
Field();
g_ApplyB
uttonUsed = true;
g_Wizard
Page = 1;
g_Proper
tyInfoInitialized = false;
g_ShownM
axLabelSizeMsg = false;
UpdateFi
eldInfo();
// Redis
play the form preview to get the new field info.
g_Callba
ckCode.IGrooveFormsToolDesignerPrivate.ShowFormPreview();
// Reset
all saved data for adding a new field.
SetEdita
bleState(true);
SetField
Name("");
SetField
Label(null);
ResetPro
pertyVariables();
ClearFie
ldPropertyInstructions();
// Reset
the page title because you are creating a new field.
SetPageT
itle(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_CREATE_FIELD));
// Set p
roper layouts for adding a new field.
FieldTyp
eGeneralDescriptionViewContainer.LayoutByName = "FieldTypeGeneralDescriptionLayo
ut";
ShowHide
MultiCellContents("ApplyButtonViewContainer", OuterLayout, 46, true);
BackNext
ButtonViewContainer.LayoutbyName = "BackNextButtonLayout";
InnerVie
wContainer.LayoutByName = "InnerLayout";
// Show
the previously selected field type.
var Fiel
dTypeIndex = FieldTypeListView.SelectionIndex;
if (Fiel
dTypeIndex <= -1)
FieldTypeIndex = 0;
ShowFiel
dTypePreview(FieldTypeIndex);
// Disab
le the back button.
BackButt
on.Enabled = false;
// Set n
ext button as the default.
OKButton
.Default = false;
NextButt
on.Default = true;
// Set t
he focus to the next button.
BackNext
ButtonViewContainer.SetFocus("NextButton");
}
catch (error)
{
DisplayO
KMessageBox(error.description, Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_G
RP_FLD_WIZ_INV_LABEL));
Properti
esListView.SetSelectionByIndex(0);
Property
ValueViewContainer.SetFocus("FieldLabelValueTextView");
}
}
function AcceptChangesOK
()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
try
{
if (!g_A
pplyButtonUsed)
{
ValidateField();
}
else if
(g_WizardPage == 1 || (g_WizardPage == 2 && GetFieldLabel() == "" && g_PropertyL
abelFound))
{
CancelChanges();
return;
}
g_Previo
usFieldType = "";
g_Wizard
Page = 1;
g_Proper
tyInfoInitialized = false;
g_ShownM
axLabelSizeMsg = false;
UpdateFi
eldInfo();
ResetPro
pertyVariables();
// Close
the field wizard window.
var Wind
ow = UIPropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.C
lose(GrooveWindowResult_OK);
Window.D
estroy(GrooveWindowResult_OK);
}
catch (error)
{
DisplayO
KMessageBox(error.description, Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_G
RP_FLD_WIZ_INV_LABEL));
Properti
esListView.SetSelectionByIndex(0);
Property
ValueViewContainer.SetFocus("FieldLabelValueTextView");
}
}
function CancelChanges()
{
g_PropertyInfoIn
itialized = false;
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_Cancel);
Window.Destroy(G
rooveWindowResult_Cancel);
}
function ThrowError(i_De
scription)
{
var objError = n
ew Error(-213546871, i_Description);
throw objError;
}
function ValidateField()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
// Validate that
an image has been selected for an image field.
if (GetCurrentFi
eldType() == GrooveFormsToolFieldType_Image && g_bIsNew && g_ImageContents == nu
ll)
ThrowErr
or(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_IMG_ERROR));
// Validate that
a view has been selected for an embedded view field.
if (GetCurrentFi
eldType() == GrooveFormsToolFieldType_EmbeddedView)
{
var Prop
ertyCount = PropertiesListView.Count;
for (var
i = 0; i < PropertyCount; i++)
{
var PropertyIndex = PropertiesListView.GetItemData(i);
var PropertyType = g_PropertyArray[i].Type;
if (PropertyType == "View")
{
if (typeof g_PropertyArray[i].PropertyValue != "undefined" && g_PropertyArray[i]
.PropertyValue != null && g_PropertyArray[i].PropertyValue != -1)
break;
else
ThrowError(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VIEW_ERRO
R));
}
}
}
}
function FieldTypeListVi
ew_OnListViewSelectionChanged(i_Name, i_Index, i_Selected)
{
if (i_Index > -1
)
{
var Item
Text = FieldTypeListView.GetItemText(i_Index);
if (Item
Text != g_PreviousFieldType)
{
ResetPropertyVariables();
ShowFieldTypePreview(i_Index);
SetFieldLabel(null);
}
g_Previo
usFieldType = ItemText;
}
}
function FieldTypeListVi
ew_OnListViewItemDblClick(i_Name, i_Index)
{
if (i_Index > -1
)
{
var Item
Text = FieldTypeListView.GetItemText(i_Index);
if (Item
Text != "")
SelectedFieldType();
}
}
function NextButton_OnCo
mmand(i_UICommand)
{
SelectedFieldTyp
e();
}
function SelectedFieldTy
pe()
{
// Set the field
property instructions.
var FieldTypeDis
playName = GetCurrentFieldTypeDisplayName();
SetFieldProperty
Instructions(FieldTypeDisplayName);
// Clean used va
riables and load new properties for selected field type.
g_ApplyButtonUse
d = false;
// Get the prope
rty list info for the selected field type.
GetPropertyInfo(
);
// Switch the la
yout to select the field properties.
g_WizardPage = 2
;
InnerViewContain
er.LayoutByName = "PropertiesLayout";
ShowHideMultiCel
lContents("ApplyButtonViewContainer", OuterLayout, 46, false);
BackNextButtonVi
ewContainer.LayoutbyName = "BackOKButtonLayout";
// Enable back a
nd finish buttons.
BackButton.Enabl
ed = true;
OKButton.Enabled
= true;
// Set finish bu
tton as default.
NextButton.Defau
lt = false;
OKButton.Default
= true;
// Select the fi
rst item in the properties list.
PropertiesListVi
ew.SetSelectionByIndex(0);
// Make sure the
focus is in the correct object.
SetFocusInProper
Object();
}
function SetFocusInPrope
rObject()
{
if (PropertiesLi
stView.Count > 0)
{
var Prop
ertiesIndex = PropertiesListView.GetItemData(0);
var Valu
eType = g_PropertyArray[PropertiesIndex].Type;
// Set t
he focus in the appropriate control.
if (Valu
eType == "Value" || ValueType == "Number" || ValueType == "Date" || ValueType ==
"SubProperty")
PropertyValueViewContainer.SetFocus("PropertyValueEditControl");
else if
(ValueType == "Content")
PropertyValueViewContainer.SetFocus("PropertyValueMLEditControl");
else if
(ValueType == "StaticText" || ValueType == "RichText")
PropertyValueViewContainer.SetFocus("PropertyValueTextView");
else if
(ValueType == "Constant")
PropertyValueViewContainer.SetFocus("PropertyValueConstantCheckBox");
else if
(ValueType == "View")
PropertyValueViewContainer.SetFocus("PropertyViewComboBox");
else if
(ValueType == "ViewFilter")
PropertyValueViewContainer.SetFocus("PropertyViewFilterButton");
else if
(ValueType == "Reference")
PropertyValueViewContainer.SetFocus("FieldLabelValueTextView");
else if
(ValueType == "Browse")
PropertyValueViewContainer.SetFocus("PropertyBrowseButton");
else if
(ValueType == "InitialText" || ValueType == "InitialDate")
PropertyValueViewContainer.SetFocus("PropertyInitialValueTypeComboBox");
else if
(ValueType == "Lookup")
PropertyValueViewContainer.SetFocus("LookupTypeAllRadioButton");
else if
(ValueType == "FormatDate")
PropertyValueViewContainer.SetFocus("FormatDateShortFormatRadioButton");
else if
(ValueType == "Color")
{
var ColorChartURL = BuildPathFromBase("file", "FormsColorChart.html", "");
WebBrowserView.Control.Navigate(ColorChartURL);

PropertyValueViewContainer.SetFocus("PropertyBackgroundColorRadioButton");
}
else if
(ValueType == "ValidationScript")
PropertyValueViewContainer.SetFocus("ValidationScriptComboBox");
else if
(ValueType == "ValidationMinMax")
PropertyValueViewContainer.SetFocus("ValidationMinEditControl");
}
}
function BackButton_OnCo
mmand(i_UICommand)
{
ClearFieldProper
tyInstructions();
// Clear out the
name property.
SetFieldName("")
;
g_WizardPage = 1
;
g_ImageContents
= null;
InnerViewContain
er.LayoutByName = "InnerLayout";
ShowHideMultiCel
lContents("ApplyButtonViewContainer", OuterLayout, 46, true);
BackNextButtonVi
ewContainer.LayoutByName = "BackNextButtonLayout";
// Disable finis
h button if apply button has not been used.
if (!g_ApplyButt
onUsed)
OKButton
.Enabled = false;
// Disable back
button and enable next button.
BackButton.Enabl
ed = false;
NextButton.Enabl
ed = true;
// Set next butt
on as default.
OKButton.Default
= false;
NextButton.Defau
lt = true;
// Set the focus
to the next button.
BackNextButtonVi
ewContainer.SetFocus("NextButton");
}
function ShowFieldTypePr
eview(i_Index)
{
if (i_Index > -1
)
{
// Set t
he name of the field type.
var Fiel
dTypeDisplayName = GetCurrentFieldTypeDisplayName();
FieldTyp
eDetailedNameLabel.SetText(FieldTypeDisplayName);
// Set t
he description of the field type.
var Desc
ription = GetDescriptionForFieldTypeByIndex(i_Index);
if (Desc
ription != "")
FieldTypeDetailedDescriptionLabel.SetText(Description);
// Set t
he preview image of the field type.
var Fiel
dTypeName = GetFieldTypeNameByIndex(i_Index);
if (Fiel
dTypeName != "")
FieldTypeDetailedImage.ImageURL = "grooveFile:///ToolData\\groove.net\\GrooveFor
ms\\FieldTypePreview\\" + FieldTypeName + ".jpg";
// Switc
h the layout to show the preview.
FieldTyp
eGeneralDescriptionViewContainer.LayoutByName = "FieldTypeDetailedDescriptionLay
out";
// Enabl
e the next button since the user has selected a type.
NextButt
on.Enabled = true;
// Set t
he next button as the default.
OKButton
.Default = false;
NextButt
on.Default = true;
}
}
function PropertySizeTyp
eComboBox_OnSelectionChange(i_Name, i_Item)
{
SetPropertyValue
();
}
function PropertyInitial
ValueTypeComboBox_OnSelectionChange(i_Name, i_Item)
{
SetInitialValueT
ype();
PropertyValueEdi
tControl.Text = "";
SetPropertyValue
();
}
function PropertyValueEd
itControl_OnChange(i_Name)
{
if (PropertyValu
eEditControl.Text != "")
{
var inde
x = PropertiesListView.SelectionIndex;
var i =
PropertiesListView.GetItemData(index);
var Valu
eType = g_PropertyArray[i].Type;
if (Valu
eType == "SubProperty")
{
AddOptionButton.Enabled = true;
CancelOptionButton.Enabled = true;
}
else if
(ValueType == "Number")
{
var PropertyValue = PropertyValueEditControl.Text;
var ValueNumber = g_UIDelegate.ParseNumber(PropertyValue);
if (isNaN(ValueNumber) || (PropertyValue != "" && PropertyValue != "0" && Proper
tyValue !="-" && ValueNumber == 0))
{
var MsgFormatEnum = CreateBSTREnum();
MsgFormatEnum.Add(g_PropertyArray[i].DisplayName);
MsgFormatEnum.Add(PropertyValueEditControl.Text);
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
g_PropertyValueError = true;
DisplayOKMessageBox(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NUM_E
RROR, MsgFormatEnum.IGrooveBSTREnum), Priv.GetResourcedString(IDS_FORMS_TOOL_SUB
FORMS_GRP_FLD_WIZ_NUM_ERROR_TITLE));
g_PropertyValueError = false;
GetPropertyValue();
PropertyValueViewContainer.SetFocus("PropertyValueEditControl");
}
}
}
}
function PropertyValueEd
itControl_OnKillFocus(i_Name)
{
g_CallbackCode.E
ndIMEComposition();
if (PropertyValueEditControl.Text != "")
{
var inde
x = PropertiesListView.SelectionIndex;
var i =
PropertiesListView.GetItemData(index);
var Valu
eName = g_PropertyArray[i].Name;
if (Valu
eName == "NumberVisible")
{
var ValueNumber = g_UIDelegate.ParseNumber(PropertyValueEditControl.Text);
if (ValueNumber <= 1)
{
var MsgFormatEnum = CreateBSTREnum();
MsgFormatEnum.Add(ValueNumber);
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
DisplayOKMessageBox(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MIN_V
AL_ERR, MsgFormatEnum.IGrooveBSTREnum), Priv.GetResourcedString(IDS_FORMS_TOOL_S
UBFORMS_GRP_FLD_WIZ_INV_PROP_VAL));
GetPropertyValue();
PropertyValueViewContainer.SetFocus("PropertyValueEditControl");
}
}
}
SetPropertyValue
();
}
function ParameterValueE
ditControl_OnKillFocus(i_Name)
{
g_CallbackCode.E
ndIMEComposition();
SetValidationScriptValue();
}
function ParameterValueE
ditControl_OnChange(i_Name)
{
var ParameterVal
ue = ParameterValueEditControl.Text;
if (ParameterVal
ue != "")
{
var Scri
ptIndex = ValidationScriptComboBox.GetSelectionIndex();
if (Scri
ptIndex >= 0)
{
var ItemData = ValidationScriptComboBox.GetItemData(ScriptIndex);
var ValidationScriptArray = ItemData.split("|");
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
if (ValidationScriptArray[0] == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_
GRP_FLD_WIZ_MIN_LENGTH) ||
ValidationScriptArray[0] == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_
FLD_WIZ_MAX_LENGTH))
{
var ValueNumber = g_UIDelegate.ParseNumber(ParameterValue);
if (isNaN(ValueNumber) || (ParameterValue != "" && ParameterValue != "0" && Para
meterValue !="-" && ValueNumber == 0))
{
var MsgFormatEnum = CreateBSTREnum();
MsgFormatEnum.Add(ValidationScriptArray[0]);
MsgFormatEnum.Add(ParameterValue);
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
DisplayOKMessageBox(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NUM_E
RROR, MsgFormatEnum.IGrooveBSTREnum), Priv.GetResourcedString(IDS_FORMS_TOOL_SUB
FORMS_GRP_FLD_WIZ_NUM_ERROR_TITLE));
ParameterValueEditControl.Text = "";
PropertyValueViewContainer.SetFocus("ParameterValueEditControl");
}
}
}
}
}
function PropertyValueML
EditControl_OnKillFocus(i_Name)
{
g_CallbackCode.E
ndIMEComposition();
SetPropertyValue();
}
function PropertyValueTe
xtView_OnKillFocus()
{
g_CallbackCode.E
ndIMEComposition();
SetPropertyValue();
}
function PropertyBackgro
undColorRadioButton_OnCommand(i_UICommand)
{
PropertyBackgrou
ndColorRadioButton.CheckState = GCS_CHECKED;
PropertyBackgrou
ndTransparentRadioButton.CheckState = GCS_UNCHECKED;
PropertyValueEdi
tControl.Text = "#FFFFFF";
PropertyBackgrou
ndColorButton.Enabled = true;
PreviewColor("#F
FFFFF");
SetPropertyValue
();
}
function PropertyBackgro
undTransparentRadioButton_OnCommand(i_UICommand)
{
PropertyBackgrou
ndColorRadioButton.CheckState = GCS_UNCHECKED;
PropertyBackgrou
ndTransparentRadioButton.CheckState = GCS_CHECKED;
PropertyValueEdi
tControl.Text = "";
PropertyBackgrou
ndColorButton.Enabled = false;
PreviewColor("#F
FFFFF");
SetPropertyValue
();
}
function PropertyBackgro
undColorButton_OnCommand(i_UICommand)
{
var pCommonDialo
gs = GrooveScriptFunctions.CreateNewObject("Groove.CommonDialogs2");
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
var Color = Prop
ertyValueEditControl.Text;
var NewColor = p
CommonDialogs.DisplayColorSelectorDialog(Window, Color);
if (NewColor !=
Color)
{
PreviewC
olor(NewColor);
Property
ValueEditControl.Text = NewColor;
SetPrope
rtyValue();
}
}
function PreviewColor(i_
Color)
{
try
{
g_Color
= i_Color;
if (g_Is
Ready)
WebBrowserView.Control.Document.body.style.backgroundColor = i_Color;
}
catch(error)
{
}
}
function DocumentReady(i
_IsReady)
{
g_IsReady = i_Is
Ready;
if (i_IsReady)
PreviewC
olor(g_Color);
}
function SetImagePath(i_
Path)
{
try
{
if (g_Im
ageIsReady)
WebBrowserView.Control.Document.parentWindow.setImagePath(i_Path);
else
g_ImagePath = i_Path;
}
catch (error) {
}
}
function ImageDocumentRe
ady(i_IsReady)
{
g_ImageIsReady =
i_IsReady;
if (i_IsReady)
SetImage
Path(g_ImagePath);
}
function GetResourcedStr
ing(i_ResourceID)
{
return g_UIDeleg
ate.IGrooveFormsToolUIDelegatePrivate.GetResourcedString(i_ResourceID);
}
function FormatDateShort
FormatRadioButton_OnCommand(i_UICommand)
{
FormatDateShortF
ormatRadioButton.CheckState = GCS_CHECKED;
FormatDateLongFo
rmatRadioButton.CheckState = GCS_UNCHECKED;
ApplyFormattingC
hanges();
}
function FormatDateLongF
ormatRadioButton_OnCommand(i_UICommand)
{
FormatDateLongFo
rmatRadioButton.CheckState = GCS_CHECKED;
FormatDateShortF
ormatRadioButton.CheckState = GCS_UNCHECKED;
ApplyFormattingC
hanges();
}
function ApplyFormatting
Changes()
{
SetPropertyValue
();
GetPropertyValue
();
}
function PropertyValueCo
nstantCheckBox_OnCommand(i_UICommand)
{
SetPropertyValue
();
}
function PropertyBrowseB
utton_OnCommand(i_UICommand)
{
var FilePath = B
rowseForFile();
if (FilePath !=
null)
Property
ValueEditControl.Text = FilePath;
}
function PropertyViewFil
terButton_OnCommand(i_UICommand)
{
g_ViewFilter = g
_UIDelegate.IGrooveFormsToolUIDelegatePrivate.LoadViewFilterDialog(g_ViewFilter)
;
SetViewFilterUI(
g_ViewFilter);
}
function ClearViewFilter
Button_OnCommand(i_UICommand)
{
g_ViewFilter = "
";
SetViewFilterUI(
g_ViewFilter);
}
function PropertyValueCo
mboBox_OnSelectionChange(i_Name, i_Item)
{
SetPropertyValue
();
}
function PropertyViewCom
boBox_OnSelectionChange(i_Name, i_Item)
{
SetPropertyValue
();
}
function PropertyValuePl
ainTextRadioButton_OnCommand(i_UICommand)
{
PropertyValuePla
inTextRadioButton.CheckState = GrooveCheckState_Checked;
PropertyValueRic
hTextRadioButton.CheckState = GrooveCheckState_Unchecked;
SetPropertyValue
();
}
function PropertyValueRi
chTextRadioButton_OnCommand(i_UICommand)
{
PropertyValuePla
inTextRadioButton.CheckState = GrooveCheckState_Unchecked;
PropertyValueRic
hTextRadioButton.CheckState = GrooveCheckState_Checked;
SetPropertyValue
();
}
function FieldLabelValue
TextView_OnKillFocus(i_Name)
{
g_FieldLabel = G
etPlainTextFieldLabel();
if (g_ShownMaxLa
belSizeMsg == false)
SetPrope
rtyLabelValue();
}
function FieldLabelPlain
TextRadioButton_OnCommand(i_UICommand)
{
FieldLabelPlainT
extRadioButton.CheckState = GrooveCheckState_Checked;
FieldLabelRichTe
xtRadioButton.CheckState = GrooveCheckState_Unchecked;
g_FieldLabel = G
etPlainTextFieldLabel();
SetPropertyLabel
Value();
}
function FieldLabelRichT
extRadioButton_OnCommand(i_UICommand)
{
FieldLabelPlainT
extRadioButton.CheckState = GrooveCheckState_Unchecked;
FieldLabelRichTe
xtRadioButton.CheckState = GrooveCheckState_Checked;
g_FieldLabel = G
etPlainTextFieldLabel();
SetPropertyLabel
Value();
}
function FieldLabelPosit
ionCombobox_OnSelectionChange(i_Name, i_Item)
{
SetPropertyLabel
Value();
}
function PropertyDateBut
ton_OnCommand(i_UICommand)
{
var DateTime;
if (PropertyValu
eEditControl.Text != "")
DateTime
= ParseDateOrDateTime(PropertyValueEditControl.Text, GrooveIntlDateFormatStyle_
Short, GrooveIntlDateFormatStyle_Short);
var FieldType =
GetCurrentFieldType();
var bShowTime =
false;
if (FieldType ==
GrooveFormsToolFieldType_DateTime)
bShowTim
e = true;
var DateResult =
g_UIDelegate.IGrooveFormsToolUIDelegatePrivate.DisplayDatePickerDialogPrivate(D
ateTime, GrooveIntlDateFormatStyle_Short, bShowTime, g_Window);
if (DateResult.R
esult == GrooveDialogBoxResultCode_OK)
{
Property
ValueEditControl.Text = DateResult.Data;
SetPrope
rtyValue();
}
}
function ValidationScrip
tComboBox_OnSelectionChange(i_Name, i_Item)
{
SetValidationScr
iptOptions();
SetValidationScr
iptValue();
SetValidValidati
onParameter(ParameterValueEditControl.Text);
}
function SetValidationSc
riptOptions()
{
var ScriptIndex
= ValidationScriptComboBox.GetSelectionIndex();
if (ScriptIndex
> 0)
{
var Item
Data = ValidationScriptComboBox.GetItemData(ScriptIndex);
var Vali
dationScriptArray = ItemData.split("|");
RemoveAd
dParameter(ValidationScriptArray[1]);
SetParam
eterOptions(ValidationScriptArray[0], ValidationScriptArray[1]);
Property
DescriptionLabel.SetText(ValidationScriptArray[2]);
}
else
{
RemoveAd
dParameter("false");
Property
DescriptionLabel.SetText("");
}
}
function SetValidValidat
ionParameter(i_ParameterValue)
{
var ScriptIndex
= ValidationScriptComboBox.GetSelectionIndex();
if (ScriptIndex
> 0)
{
var Item
Data = ValidationScriptComboBox.GetItemData(ScriptIndex);
var Vali
dationScriptArray = ItemData.split("|");
if (Vali
dationScriptArray[1] == "true")
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
if (ValidationScriptArray[0] == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_
GRP_FLD_WIZ_MIN_LENGTH) ||
ValidationScriptArray[0] == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_
FLD_WIZ_MAX_LENGTH))
{
// Make sure that the length of the numeric parameters is no more than three.
if (i_ParameterValue.length > 3)
i_ParameterValue = i_ParameterValue.substring(0, 3);
}

ParameterValueEditControl.Text = i_ParameterValue;
}
}
}
function ValidationMinEd
itControl_OnKillFocus(i_Name)
{
CorrectMinValue(
);
}
function ValidationMaxEd
itControl_OnKillFocus(i_Name)
{
CorrectMaxValue(
);
}
function ValidationMinEd
itControl_OnChange(i_Name)
{
var MinValue = V
alidationMinEditControl.Text;
ValidateMinMaxCh
aracters(MinValue, g_MinMaxType, ValidationMinEditControl, "Min");
}
function ValidationMaxEd
itControl_OnChange(i_Name)
{
var MaxValue = V
alidationMaxEditControl.Text;
ValidateMinMaxCh
aracters(MaxValue, g_MinMaxType, ValidationMaxEditControl, "Max");
}
function ValidateMinMaxC
haracters(i_Value, i_Type, i_EditControl, i_MinMaxType)
{
if (i_Type == "N
umber")
{
var Valu
eNumber = g_UIDelegate.ParseNumber(i_Value);
if (isNa
N(ValueNumber) || (i_Value != "" && i_Value != "0" && i_Value !="-" && ValueNumb
er == 0))
{
var MsgFormatEnum = CreateBSTREnum();
if (i_MinMaxType == "Min")
MsgFormatEnum.Add(g_ValidationMinInstance.DisplayName);
else
MsgFormatEnum.Add(g_ValidationMaxInstance.DisplayName);
MsgFormatEnum.Add(i_Value);
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
DisplayOKMessageBox(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_NUM_E
RROR, MsgFormatEnum.IGrooveBSTREnum), Priv.GetResourcedString(IDS_FORMS_TOOL_SUB
FORMS_GRP_FLD_WIZ_NUM_ERROR_TITLE));
i_EditControl.Text = "";
}
}
}
function ValidationMinCh
ooseDateButton_OnCommand(i_UICommand)
{
var DateTime;
if (ValidationMi
nEditControl.Text != "")
DateTime
= ParseDateOrDateTime(ValidationMinEditControl.Text, GrooveIntlDateFormatStyle_
Short, GrooveIntlDateFormatStyle_Short);
var FieldType =
GetCurrentFieldType();
var bShowTime =
false;
if (FieldType ==
GrooveFormsToolFieldType_DateTime)
bShowTim
e = true;
var DateResult =
g_UIDelegate.IGrooveFormsToolUIDelegatePrivate.DisplayDatePickerDialogPrivate(D
ateTime, GrooveIntlDateFormatStyle_Short, bShowTime, g_Window);
if (DateResult.R
esult == GrooveDialogBoxResultCode_OK)
{
Validati
onMinEditControl.Text = DateResult.Data;
CorrectM
inValue();
}
}
function ValidationMaxCh
ooseDateButton_OnCommand(i_UICommand)
{
var DateTime;
if (ValidationMa
xEditControl.Text != "")
DateTime
= ParseDateOrDateTime(ValidationMaxEditControl.Text, GrooveIntlDateFormatStyle_
Short, GrooveIntlDateFormatStyle_Short);
var FieldType =
GetCurrentFieldType();
var bShowTime =
false;
if (FieldType ==
GrooveFormsToolFieldType_DateTime)
bShowTim
e = true;
var DateResult =
g_UIDelegate.IGrooveFormsToolUIDelegatePrivate.DisplayDatePickerDialogPrivate(D
ateTime, GrooveIntlDateFormatStyle_Short, bShowTime, g_Window);
if (DateResult.R
esult == GrooveDialogBoxResultCode_OK)
{
Validati
onMaxEditControl.Text = DateResult.Data;
CorrectM
axValue();
}
}
function CorrectMinValue
()
{
if (CheckMinValu
e())
SetValid
ationMinValue();
else
ClearVal
idationMinValue();
}
function CorrectMaxValue
()
{
if (CheckMaxValu
e())
SetValid
ationMaxValue();
else
ClearVal
idationMaxValue();
}
function FieldLabelPosit
ionComboBox_OnSelectionChange(i_Name, i_Item)
{
SetPropertyValue
();
}
function AddFieldType(i_
Name, i_ItemData, i_ObjectType)
{
if (i_Name != "H
TMLBase"
&& i_Nam
e != "FieldBase"
&& i_Nam
e != "ToolBase"
&& i_Nam
e != "ToolBase2"
&& i_Nam
e != "HTMLComponent"
&& i_Nam
e != "OSDBase"
&& i_Nam
e != "SubmitBase"
&& i_Nam
e != "ViewScriptBase"
&& i_Nam
e != "FormScriptBase"
&& i_Nam
e != "ScriptBase"
&& i_Nam
e != "GridLinesBase"
&& i_Nam
e != "SystemField"
&& i_Obj
ectType != "S"
&& i_Obj
ectType != "V")
{
var inde
x = FieldTypeListView.AddItem(i_Name);
FieldTyp
eListView.SetItemData(index, i_ItemData);
}
}
function FillFieldTypes(
)
{
ResetFieldTypes(
);
for (var i = 0;
i < g_FieldTypes.length; i++)
{
var Fiel
dTypeArray = g_FieldTypes[i].split("|");
// Don't
display system fields in the list box, as they can't be created.
if (Fiel
dTypeArray[2] != "SystemField")
{
var FieldTypeIndex = FieldTypeListView.AddItem(FieldTypeArray[0]);
FieldTypeListView.SetItemData(FieldTypeIndex, Number(FieldTypeArray[1]));
}
}
}
function ResetFieldTypes
()
{
FieldTypeListVie
w.ResetContent();
}
function SetInitialSelec
tion()
{
FieldTypeListVie
w.SetSelectionByIndex(0);
}
function ResetPropertyVa
riables()
{
// Reset propert
y and validation values as they will be different for different types.
g_PropertyInfoIn
itialized = false;
g_PropertyLabelI
nstance = null;
g_PropertyLabelP
ositionInstance = null;
g_ValidationScri
ptInstance = null;
g_ValidationMinI
nstance = null;
g_ValidationMaxI
nstance = null;
g_ImageContents
= null;
g_IsRichText = f
alse;
g_ViewFilter = "
";
delete g_Propert
yArray;
g_PropertyArray
= new Array();
}
function GetPropertyInfo
()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
if (!g_PropertyI
nfoInitialized)
{
var Fiel
dTypeIndex = GetCurrentFieldTypeIndex();
var Fiel
dTypeName = GetFieldTypeNameByIndex(FieldTypeIndex);
var Fiel
dTypeDisplayName = GetFieldTypeDisplayNameByIndex(FieldTypeIndex);
Properti
esListView.ResetContent();
g_Proper
tyLabelFound = false;
// Varia
bles for setting up validation display.
var Vali
dationScriptFound = false;
var Vali
dationMinFound = false;
var Vali
dationMaxFound = false;
var Vali
dationMinMaxLabelDisplay = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_F
LD_WIZ_NUM_RANGE);
var Vali
dationMinLabelDisplay = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_MIN_LABEL);
var Vali
dationMaxLabelDisplay = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_
WIZ_MAX_LABEL);
var Prop
ertiesArray;
if (Fiel
dTypeIndex != -1)
PropertiesArray = g_FieldTypeProperties[FieldTypeIndex];
else
PropertiesArray = g_SystemFieldProperties;
if (Prop
ertiesArray.length <= 0)
{
// If no field properties were found then load the "NoProperties" layout.
PropertiesListView.Enabled = false;
ValueType = "NoProperties";
LoadUIForType(ValueType);
}
else
{
for (var i = 0; i < PropertiesArray.length; i++)
{
var TypePropertiesArray = PropertiesArray[i].split("|");
var pProperty = new PropertyInstance
(
TypePropertiesArray[0],
TypePropertiesArray[1],
TypePropertiesArray[2],
TypePropertiesArray[3],
TypePropertiesArray[4]
);

if (pProperty.Name == "Validation")
{
g_ValidationScriptInstance = pProperty;
ValidationScriptFound = true;
}
else if (pProperty.Name == "MinimumValue" || pProperty.Name == "EarliestDate")
{
if (FieldTypeName == "Date" || FieldTypeName == "DateTime")
{
ValidationMinLabelDisplay = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_
FLD_WIZ_EARLIEST_LABEL);
ValidationMinMaxLabelDisplay = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_G
RP_FLD_WIZ_DATE_RANGE);
g_MinMaxType = "Date";
}
else
g_MinMaxType = "Number";
g_ValidationMinInstance = pProperty;
ValidationMinFound = true;
}
else if (pProperty.Name == "MaximumValue" || pProperty.Name == "LatestDate")
{
if (FieldTypeName == "Date" || FieldTypeName == "DateTime")
{
ValidationMaxLabelDisplay = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_
FLD_WIZ_LATEST_LABEL);
ValidationMinMaxLabelDisplay = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_G
RP_FLD_WIZ_DATE_RANGE);
g_MinMaxType = "Date";
}
else
g_MinMaxType = "Number";
g_ValidationMaxInstance = pProperty;
ValidationMaxFound = true;
}
else
{
g_PropertyArray[i] = pProperty;
var index = PropertiesListView.AddItem(pProperty.DisplayName);
PropertiesListView.SetItemData(index, i);
if (pProperty.Name == "Label")
{
g_PropertyLabelInstance = pProperty;
// Duplicate the label property instance for the label location.
// Have to create a new instance because setting just sets a pointer.
g_PropertyLabelPositionInstance = new PropertyInstance
(
"LabelPosition",
g_PropertyLabelInstance.DisplayName,
g_PropertyLabelInstance.Type,
g_PropertyLabelInstance.ControlLabel,
g_PropertyLabelInstance.Description
);
g_PropertyIsRichTextLabelInstance = new PropertyInstance
(
"IsRichTextLabel",
g_PropertyLabelInstance.DisplayName,
g_PropertyLabelInstance.Type,
g_PropertyLabelInstance.ControlLabel,
g_PropertyLabelInstance.Description
);

var FieldName = GetFieldName();


if (g_bIsNew || FieldName == "")
{
FieldLabelPositionComboBox.SetSelectionByIndex(0);
SetObjectPropertyValueClean(g_PropertyLabelPositionInstance, GrooveFormsToolFiel
dLabelPosition_Left);

FieldLabelPlainTextRadioButton.CheckState = GrooveCheckState_Checked;
FieldLabelRichTextRadioButton.CheckState = GrooveCheckState_Unchecked;
SetObjectPropertyValueClean(g_PropertyIsRichTextLabelInstance, false);
}
else
{
var LabelPosition = GrooveFormsToolFieldLabelPosition_Left;
var IsRichTextLabel = false;
if (g_pFields.DoesExistByName(FieldName))
{
var pIField = g_pFields.OpenByName(FieldName);
LabelPosition = pIField.LabelPosition;
switch (LabelPosition)
{
case GrooveFormsToolFieldLabelPosition_Top:
FieldLabelPositionComboBox.SetSelectionByIndex(2);
break;
case GrooveFormsToolFieldLabelPosition_Right:
FieldLabelPositionComboBox.SetSelectionByIndex(1);
break;
case GrooveFormsToolFieldLabelPosition_Left:
default:
FieldLabelPositionComboBox.SetSelectionByIndex(0);
}

IsRichTextLabel = pIField.IsRichTextLabel;
if (!IsRichTextLabel)
{
FieldLabelPlainTextRadioButton.CheckState = GrooveCheckState_Checked;
FieldLabelRichTextRadioButton.CheckState = GrooveCheckState_Unchecked;
}
else
{
FieldLabelPlainTextRadioButton.CheckState = GrooveCheckState_Unchecked;
FieldLabelRichTextRadioButton.CheckState = GrooveCheckState_Checked;
}
}
SetObjectPropertyValueClean(g_PropertyLabelPositionInstance, LabelPosition);
SetObjectPropertyValueClean(g_PropertyIsRichTextLabelInstance, IsRichTextLabel);
}
g_PropertyLabelFound = true;
}
else if (pProperty.Name == "InitialValue")
{
PropertyInitialValueTypeComboBox.ResetContent();
if (FieldTypeName == "TextBox")
{
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_STATIC));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_UNIQUE));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_USER_NAME));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_WS_NAME));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_TOOL_NAME));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_FUNCTION));
}
else if (FieldTypeName == "Date")
{
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_STATIC));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_TODAY));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_TOMORROW));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_FUNCTION));
}
else if (FieldTypeName == "DateTime")
{
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_STATIC));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_NOW));
PropertyInitialValueTypeComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_IV_FUNCTION));
}
}
else if (pProperty.Name == "EmbeddedViewID")
{
PropertyViewComboBox.ResetContent();
// Get the enum of views to fill in the combo box.
var pSandboxedDesign = g_DataDelegate.IGrooveFormsToolDesigns.SandboxedDesign;
var pViewEnum = pSandboxedDesign.IGrooveFormsToolDesign.CreateEnum(GrooveFormsTo
olDesignObjectType_View);
while (pViewEnum.HasMore())
{
var pView = pViewEnum.OpenNext();
var ViewIndex = PropertyViewComboBox.AddItem(pView.IGrooveFormsToolDesignObject.
Name);
PropertyViewComboBox.SetItemData(ViewIndex, pView.IGrooveFormsToolDesignObject.I
D);
}
}
}
}

// Add a validation option to the property list if it is found.


if (ValidationScriptFound || (ValidationMinFound && ValidationMaxFound))
{
var index = PropertiesListView.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SU
BFORMS_GRP_FLD_WIZ_VALIDATION));
PropertiesListView.SetItemData(index, i);
}

// Now changes settings depending on what was found in the property array.
if (ValidationScriptFound)
g_ValidationLayout = "ValidationScript";
else if (ValidationMinFound && ValidationMaxFound)
g_ValidationLayout = "ValidationMinMax";

// Set up the validation script combo box.


if (ValidationScriptFound)
{
ValidationScriptComboBox.ResetContent();
ValidationScriptComboBox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS
_GRP_FLD_WIZ_VAL_NONE));

for (var i = 0; i < g_ValidationScripts.length; i++)


{
var ValidationScriptArray = g_ValidationScripts[i].split("|");
var ScriptIndex = ValidationScriptComboBox.AddItem(ValidationScriptArray[0]);
ValidationScriptComboBox.SetItemData(ScriptIndex, g_ValidationScripts[i]);
}

ValidationScriptComboBox.SetSelectionByIndex(0);
RemoveAddParameter("false");
}

// Set the label text depending on date or number.


if (ValidationMinFound && ValidationMaxFound)
{
ValidationMinMaxLabel.SetText(ValidationMinMaxLabelDisplay);
ValidationMinLabel.SetText(ValidationMinLabelDisplay);
ValidationMaxLabel.SetText(ValidationMaxLabelDisplay);
}
}
}
}
function RemoveAddSizeTy
pe(i_Name)
{
var RemoveCells
= true;
if (i_Name == "W
idth" || i_Name == "Height")
RemoveCe
lls = false;
// Show or hide
label and edit control for Field Label depending on passed in boolean value.
AddRemoveMultiCe
llContents("PropertySizeTypeLabel", PropertyNumberLayout, RemoveCells);
AddRemoveMultiCe
llContents("PropertySizeTypeComboBox", PropertyNumberLayout, RemoveCells);
if (!RemoveCells
)
Property
SizeTypeComboBox.SetSelectionByIndex(0);
}
function RemoveAddChoose
Date()
{
var RemoveCells
= true;
if (g_MinMaxType
== "Date")
RemoveCe
lls = false;
// Show or hide
choose date buttons for min and max date.
AddRemoveMultiCe
llContents("ValidationMinChooseDateButton", ValidationMinMaxLayout, RemoveCells)
;
AddRemoveMultiCe
llContents("ValidationMaxChooseDateButton", ValidationMinMaxLayout, RemoveCells)
;
}
function RemoveAddParame
ter(i_AddParameter)
{
var RemoveParame
ter = true;
if (i_AddParamet
er == "true")
RemovePa
rameter = false;
// Show or hide
parameter edit control.
AddRemoveMultiCe
llContents("ParameterValueLabel", ValidationScriptLayout, RemoveParameter);
AddRemoveMultiCe
llContents("ParameterValueEditControl", ValidationScriptLayout, RemoveParameter)
;
}
function SetParameterOpt
ions(i_ValidationName, i_AddParameter)
{
var RemoveParame
ter = true;
if (i_AddParamet
er == "true")
RemovePa
rameter = false;
if (!RemoveParam
eter)
{
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
if (i_Va
lidationName == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MIN_
LENGTH) ||
i_Va
lidationName == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MAX_
LENGTH))
{
ParameterValueEditControl.TextLimit = 3;
}
else
ParameterValueEditControl.TextLimit = 250;
}
}
function ParseDateOrDate
Time(i_DateString, i_DateStyle, i_TimeStyle)
{
var FieldType =
GetCurrentFieldType();
if (FieldType ==
GrooveFormsToolFieldType_DateTime)
return g
_UIDelegate.ParseDateTime(i_DateString, i_DateStyle, i_TimeStyle);
else
return g
_UIDelegate.ParseDate(i_DateString, i_DateStyle);
}
function FormatDateOrDat
eTime(i_DateValue, i_DateStyle, i_TimeStyle)
{
var FieldType =
GetCurrentFieldType();
if (FieldType ==
GrooveFormsToolFieldType_DateTime)
return g
_UIDelegate.FormatDateTime(i_DateValue, i_DateStyle, i_TimeStyle);
else
return g
_UIDelegate.FormatDate(i_DateValue, i_DateStyle);
}
function ShowErrorWindow
(i_Error)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
App.GrooveMessag
eBox(Window, g_Account, i_Error, Priv.GetResourcedString(IDS_FORMS_TOOL_SHOW_ERR
OR_TITLE), GrooveMessageBoxStyle_OK, GrooveMessageBoxIcon_Error);
}
function DisplayOKMessag
eBox(i_Message, i_Title)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
App.GrooveMessag
eBox(Window, g_Account, i_Message, i_Title, GrooveMessageBoxStyle_OK, GrooveMess
ageBoxIcon_Information);
}
function PropertiesListV
iew_OnListViewSelectionChanged(i_Name, i_Index, i_Selected)
{
if (i_Index > -1
)
SetPrope
rtiesListViewSelection(i_Index);
}
function SetFieldTypeLis
tViewSelection(i_Index)
{
if (typeof i_Ind
ex != "undefined")
FieldTyp
eListView.SetSelectionByIndex(i_Index);
}
function SetPropertiesLi
stViewSelection(i_Index)
{
g_CallbackCode.E
ndIMEComposition();
var ValueType = "";
var ValueName =
"";
PropertiesListVi
ew.Enabled = true;
// Reset the dat
a entry controls so they don't persist from other properties.
FieldLabelValueT
extView.TextContent.PlainText = "";
FieldLabelPositi
onComboBox.SetSelectionByIndex(0);
PropertyValueEdi
tControl.Text = "";
PropertyValueEdi
tControl2.Text = "";
// Reset modify
option in case it wasn't cleared before.
g_ModifyOption =
false;
// Set the OK bu
tton as the default.
OKButton.Default
= true;
NextButton.Defau
lt = false;
var i = Properti
esListView.GetItemData(i_Index);
// Validation is
a special case, so check for it.
var DisplayName
= PropertiesListView.GetItemText(i_Index);
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
if (DisplayName
== Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VALIDATION))
{
ValueTyp
e = "Validation";
// Load
the validation layout.
LoadUIFo
rType(ValueType);
// Reset
the property description.
Property
DescriptionLabel.SetText("");
// Get t
he values for validation property type.
GetValid
ationValue(true);
// Remov
e or add the date select combobox depending on if they are needed or not.
RemoveAd
dChooseDate();
}
else
{
ValueTyp
e = g_PropertyArray[i].Type;
ValueNam
e = g_PropertyArray[i].Name;
// Load
the appropriate layout.
LoadUIFo
rType(ValueType);
var Valu
eDescription = g_PropertyArray[i].Description;
var Valu
eControlLabel = g_PropertyArray[i].ControlLabel;
// Disab
le editing of the browse value.
if (Valu
eType == "Browse" || (ValueName == "Name" && !g_bIsNew))
PropertyValueEditControl.Enabled = false;
else
PropertyValueEditControl.Enabled = true;
if (Valu
eName == "Name" && ValueType == "Value")
PropertyValueEditControl.TextLimit = 250;
else if
(ValueName == "Width" && ValueType == "Number")
PropertyValueEditControl.TextLimit = 5;
else if
(ValueName == "MaximumLength" && ValueType == "Number")
{
var FieldType = GetCurrentFieldType();
if (FieldType == GrooveFormsToolFieldType_Number ||
FieldType == GrooveFormsToolFieldType_Currency ||
FieldType == GrooveFormsToolFieldType_UnformattedNumber)
PropertyValueEditControl.TextLimit = 3;
else if (FieldType == GrooveFormsToolFieldType_MultiLineText)
PropertyValueEditControl.TextLimit = 4;
else
PropertyValueEditControl.TextLimit = 3;
}
else if
(ValueName == "InitialValue" && ValueType == "Number")
PropertyValueEditControl.TextLimit = 128;
else if
(ValueName == "Precision" && ValueType == "Number")
PropertyValueEditControl.TextLimit = 1; // NumberFormat has a max of 9
else if
(ValueName == "Symbol" && ValueType == "Value")
PropertyValueEditControl.TextLimit = 5;
else if
(ValueName == "InitialValue" && ValueType == "InitialValue")
PropertyValueEditControl.TextLimit = 128;
else if
(ValueName == "NumberVisible" && ValueType == "Number")
PropertyValueEditControl.TextLimit = 3;
else if
(ValueName == "Height" && ValueType == "Number")
PropertyValueEditControl.TextLimit = 5;
else if
(ValueName == "HeadingText" && ValueType == "Content")
PropertyValueEditControl.TextLimit = 250;
else
PropertyValueEditControl.TextLimit = 750;
// Add t
he control label for certain types.
if (Valu
eType == "Constant")
{
PropertyValueConstantCheckBox.Label = ValueControlLabel;
if (ValueName == "Center" && g_IsRichText)
{
ValueDescription = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_D
IS_CENTER);
PropertyValueConstantCheckBox.Enabled = false;
}
else
{
PropertyValueConstantCheckBox.Enabled = true;
}
}
else if
(ValueType == "SubProperty")
OKButton.Default = false;
else
{
var MsgFormatEnum = CreateBSTREnum();
MsgFormatEnum.Add(ValueControlLabel);
PropertyValueLabel.SetText(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WI
Z_CTRL_LABEL, MsgFormatEnum.IGrooveBSTREnum));
}
// Set t
he description text for the selected property.
Property
DescriptionLabel.SetText(ValueDescription);
// Remov
e or add the units combobox depending on if it is needed or not.
RemoveAd
dSizeType(ValueName);
// Get t
he values for the selected property type.
GetPrope
rtyValue();
}
}
function LoadUIForType(i
_Type)
{
// Put the layou
t in the view container for the selected property.
if (i_Type == "V
alidation" && g_ValidationLayout != "")
{
i_Type =
g_ValidationLayout;
Property
ValueViewContainer.LayoutByName = g_ValidationLayout + "Layout";
}
else
{
if (i_Ty
pe == "InitialValue")
{
var FieldType = GetCurrentFieldType();
if (FieldType == GrooveFormsToolFieldType_Text)
i_Type = "InitialText";
else if (FieldType == GrooveFormsToolFieldType_Date || FieldType == GrooveFormsT
oolFieldType_DateTime)
i_Type = "InitialDate";
}
Property
ValueViewContainer.LayoutByName = "Property" + i_Type + "Layout";
}
if (i_Type == "C
olor")
{
var Colo
rChartURL = BuildPathFromBase("file", "FormsColorChart.html", "");
WebBrows
erView.Control.Navigate(ColorChartURL);
}
}
function SetPropertyLabe
lValue()
{
if (g_PropertyLa
belInstance != null && g_PropertyLabelPositionInstance != null && g_PropertyIsRi
chTextLabelInstance != null)
{
g_FieldL
abel = GetPlainTextFieldLabel();
if (g_Fi
eldLabel.length > 750)
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
g_ShownMaxLabelSizeMsg = true;
DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
MAX_LABEL_SIZE_MSG), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ
_INV_LABEL));
return;
}
g_ShownM
axLabelSizeMsg = false;
var Fiel
dLabel = "";
var IsRi
chTextLabel = false;
if (Fiel
dLabelPlainTextRadioButton.CheckState == GrooveCheckState_Checked)
{
FieldLabel = g_FieldLabel;
}
else
{
IsRichTextLabel = true;

var pStorageMgr = GrooveScriptFunctions.CreateNewObject("Groove.StorageManager")


;
FieldLabel = pStorageMgr.CreateTemporaryElement("urn:groove.net:RichText");
FieldLabelValueTextView.CellContent.WriteContentToElement(FieldLabel);
}
SetObjec
tPropertyValueDirty(g_PropertyLabelInstance, FieldLabel);
SetObjec
tPropertyValueDirty(g_PropertyLabelPositionInstance, GetFieldLabelPosition());
SetObjec
tPropertyValueDirty(g_PropertyIsRichTextLabelInstance, IsRichTextLabel);
}
}
function SetValidationSc
riptValue()
{
if (typeof g_Val
idationScriptInstance != "undefined" && g_ValidationScriptInstance != null)
{
var Para
meterValue = "";
var Scri
ptIndex = ValidationScriptComboBox.GetSelectionIndex();
if (Scri
ptIndex > 0)
{
var ItemData = ValidationScriptComboBox.GetItemData(ScriptIndex);
var ValidationScriptArray = ItemData.split("|");
if (ValidationScriptArray[1] == "true")
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
if (ValidationScriptArray[0] == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_
GRP_FLD_WIZ_MIN_LENGTH) ||
ValidationScriptArray[0] == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_
FLD_WIZ_MAX_LENGTH))
{
var ValueNumber = g_UIDelegate.ParseNumber(ParameterValueEditControl.Text);
if (isNaN(ValueNumber) || (ParameterValue != "" && ParameterValue != "0" && Valu
eNumber == 0))
ParameterValue = "";
else
{
ParameterValue = ValueNumber.toString();
if (ParameterValue.length > 3)
ParameterValue = ParameterValue.substring(0, 3);
}
}
else
ParameterValue = ParameterValueEditControl.Text;
}
}
else if
(ScriptIndex == 0)
ParameterValueEditControl.Text = "";
g_Valida
tionScriptInstance.PropertyValue = ScriptIndex;
g_Valida
tionScriptInstance.PropertyParameter = ParameterValue;
g_DirtyF
ield = true;
}
}
function SetValidationMi
nValue()
{
if (g_MinMaxType
== "Date")
{
var MinV
alue = ValidationMinEditControl.Text;
if (MinV
alue != "")
{
var MinDate = ParseDateOrDateTime(MinValue, GrooveIntlDateFormatStyle_Short, Gro
oveIntlDateFormatStyle_Short);
SetObjectPropertyValueDirty(g_ValidationMinInstance, MinDate);
}
else
SetObjectPropertyValueDirty(g_ValidationMinInstance, INVALID_DATE);
}
else
{
var Stor
edNumberValue = "";
var Numb
erValueStr = TrimEnds(ValidationMinEditControl.Text);
if (Numb
erValueStr.toString() != "")
{
var NumberValue = g_UIDelegate.ParseNumber(NumberValueStr);
if (!isNaN(NumberValue))
StoredNumberValue = NumberValue;
}
SetObjec
tPropertyValueDirty(g_ValidationMinInstance, StoredNumberValue);
}
}
function SetValidationMa
xValue()
{
if (g_MinMaxType
== "Date")
{
var MaxV
alue = ValidationMaxEditControl.Text;
if (MaxV
alue != "")
{
var MaxDate = ParseDateOrDateTime(MaxValue, GrooveIntlDateFormatStyle_Short, Gro
oveIntlDateFormatStyle_Short);
SetObjectPropertyValueDirty(g_ValidationMaxInstance, MaxDate);
}
else
SetObjectPropertyValueDirty(g_ValidationMaxInstance, INVALID_DATE);
}
else
{
var Stor
edNumberValue = "";
var Numb
erValueStr = TrimEnds(ValidationMaxEditControl.Text);
if (Numb
erValueStr.toString() != "")
{
var NumberValue = g_UIDelegate.ParseNumber(NumberValueStr);
if (!isNaN(NumberValue))
StoredNumberValue = NumberValue;
}
SetObjec
tPropertyValueDirty(g_ValidationMaxInstance, StoredNumberValue);
}
}
function ClearValidation
MinValue()
{
ValidationMinEdi
tControl.Text = ValidationMaxEditControl.Text;
if (g_MinMaxType
== "Date")
{
var MinV
alue = ValidationMinEditControl.Text
if (MinV
alue == "")
SetObjectPropertyValueDirty(g_ValidationMinInstance, INVALID_DATE);
else
{
var MinDate = ParseDateOrDateTime(MinValue, GrooveIntlDateFormatStyle_Short, Gro
oveIntlDateFormatStyle_Short);
SetObjectPropertyValueDirty(g_ValidationMinInstance, MinDate);
}
}
else
SetObjec
tPropertyValueDirty(g_ValidationMinInstance, "");
}
function ClearValidation
MaxValue()
{
ValidationMaxEdi
tControl.Text = ValidationMinEditControl.Text;
if (g_MinMaxType
== "Date")
{
var MaxV
alue = ValidationMaxEditControl.Text;
if (MaxV
alue == "")
SetObjectPropertyValueDirty(g_ValidationMaxInstance, INVALID_DATE);
else
{
var MaxDate = ParseDateOrDateTime(MaxValue, GrooveIntlDateFormatStyle_Short, Gro
oveIntlDateFormatStyle_Short);
SetObjectPropertyValueDirty(g_ValidationMaxInstance, MaxDate);
}
}
else
SetObjec
tPropertyValueDirty(g_ValidationMaxInstance, ValidationMaxEditControl.Text);
}
function CheckMinValue()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var MinValue = V
alidationMinEditControl.Text;
var MaxValue = V
alidationMaxEditControl.Text;
if (MinValue !=
"")
{
if (g_Mi
nMaxType == "Number")
{
var MinNumber = g_UIDelegate.ParseNumber(MinValue);
var MaxNumber = g_UIDelegate.ParseNumber(MaxValue);
if (MaxValue != "" && (MinNumber > MaxNumber))
{
DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
MINMAX_VAL_ERR), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MIN
_VAL_ERR_TITLE));
return false;
}
else
return true;
}
else if
(g_MinMaxType == "Date")
{
if (ValidateDate(MinValue))
{
if (MaxValue != "")
{
var MinDate = ParseDateOrDateTime(MinValue, GrooveIntlDateFormatStyle_Short, Gro
oveIntlDateFormatStyle_Short);
var MaxDate = ParseDateOrDateTime(MaxValue, GrooveIntlDateFormatStyle_Short, Gro
oveIntlDateFormatStyle_Short);
if (MaxValue != "" && (MinDate > MaxDate))
{
DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
MIN_DATE_ERR), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MIN_D
ATE_ERR_TITLE));
return false;
}
else
return true;
}
return true;
}
else
{
var MsgFormatEnum = CreateBSTREnum();
MsgFormatEnum.Add(MinValue);
DisplayOKMessageBox(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INV_M
IN_DATE_ERR, MsgFormatEnum.IGrooveBSTREnum), Priv.GetResourcedString(IDS_FORMS_T
OOL_SUBFORMS_GRP_FLD_WIZ_INV_DATE_ERR_TITLE));
return false;
}
}
}
return true;
}
function CheckMaxValue()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var MinValue = V
alidationMinEditControl.Text;
var MaxValue = V
alidationMaxEditControl.Text;
if (MaxValue !=
"")
{
if (g_Mi
nMaxType == "Number")
{
var MinNumber = g_UIDelegate.ParseNumber(MinValue);
var MaxNumber = g_UIDelegate.ParseNumber(MaxValue);
if (MinValue != "" && (MinNumber > MaxNumber))
{
DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
MINMAX_VAL_ERR), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MAX
_VAL_ERR_TITLE));
return false;
}
else
return true;
}
else if
(g_MinMaxType == "Date")
{
if (ValidateDate(MaxValue))
{
if (MinValue != "")
{
var MinDate = ParseDateOrDateTime(MinValue, GrooveIntlDateFormatStyle_Short, Gro
oveIntlDateFormatStyle_Short);
var MaxDate = ParseDateOrDateTime(MaxValue, GrooveIntlDateFormatStyle_Short, Gro
oveIntlDateFormatStyle_Short);
if (MinValue != "" && (MinDate > MaxDate))
{
DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
MIN_DATE_ERR), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_MAX_D
ATE_ERR_TITLE));
return false;
}
else
return true;
}
return true;
}
else
{
var MsgFormatEnum = CreateBSTREnum();
MsgFormatEnum.Add(MaxValue);
DisplayOKMessageBox(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INV_M
AX_DATE_ERR, MsgFormatEnum.IGrooveBSTREnum), Priv.GetResourcedString(IDS_FORMS_T
OOL_SUBFORMS_GRP_FLD_WIZ_INV_DATE_ERR_TITLE));
return false;
}
}
}
return true;
}
function ValidateDate(i_
Date)
{
var DateTime = P
arseDateOrDateTime(i_Date, GrooveIntlDateFormatStyle_Short, GrooveIntlDateFormat
Style_Short);
if (isNaN(DateTi
me))
return f
alse;
else
return t
rue;
}
function GetValidationVa
lue(i_bSetControl)
{
if (g_Validation
ScriptInstance != null)
{
if (type
of g_ValidationScriptInstance.PropertyValue != "undefined")
{
if (i_bSetControl)
{
ValidationScriptComboBox.SetSelectionByIndex(g_ValidationScriptInstance.Property
Value);
SetValidationScriptOptions();
SetValidValidationParameter(g_ValidationScriptInstance.PropertyParameter);
}
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
{
ValidationScriptComboBox.SetSelectionByIndex(0);
SetValidationScriptOptions();
ParameterValueEditControl.Text = "";
}
}
else
{
var ValidationObject = GetFieldProperties(GetFieldName(), g_ValidationScriptInst
ance.Name);
if (i_bSetControl)
{
ValidationScriptComboBox.SetSelectionByIndex(ValidationObject.Type);
SetValidationScriptOptions();
SetValidValidationParameter(ValidationObject.Parameter);
}
g_ValidationScriptInstance.PropertyValue = ValidationObject.Type;
g_ValidationScriptInstance.PropertyParameter = ValidationObject.Parameter;
}
}
}
else
{
if (i_bS
etControl)
{
ValidationScriptComboBox.SetSelectionByIndex(0);
SetValidationScriptOptions();
ParameterValueEditControl.Text = "";
}
if (type
of g_ValidationScriptInstance != "undefined" && g_ValidationScriptInstance != nu
ll)
{
g_ValidationScriptInstance.PropertyValue = 0;
g_ValidationScriptInstance.PropertyParameter = "";
}
}
var ValidationMi
nValue = "";
if (g_Validation
MinInstance != null)
{
if (type
of g_ValidationMinInstance.PropertyValue != "undefined")
{
if (g_ValidationMinInstance.PropertyValue != null)
ValidationMinValue = g_ValidationMinInstance.PropertyValue;
}
else if
(!g_bIsNew)
ValidationMinValue = GetFieldProperties(GetFieldName(), g_ValidationMinInstance.
Name);
}
if (g_MinMaxType
== "Date")
{
if (Vali
dationMinValue != INVALID_DATE && ValidationMinValue.toString() != "")
{
var Milliseconds = parseInt(ValidationMinValue);
if (!isNaN(Milliseconds) && Milliseconds != INVALID_DATE)
{
ValidationMinValue = FormatDateOrDateTime(Milliseconds, GrooveIntlDateFormatStyl
e_Short, GrooveIntlDateFormatStyle_Short);
SetObjectPropertyValueClean(g_ValidationMinInstance, Milliseconds);
}
else
SetObjectPropertyValueClean(g_ValidationMinInstance, INVALID_DATE);
if (i_bSetControl)
ValidationMinEditControl.Text = ValidationMinValue;
}
else
{
SetObjectPropertyValueClean(g_ValidationMinInstance, INVALID_DATE);

if (i_bSetControl)
ValidationMinEditControl.Text = "";
}
}
else
{
if (!isN
aN(ValidationMinValue) && ValidationMinValue != -1 && ValidationMinValue.toStrin
g() != "")
{
SetObjectPropertyValueClean(g_ValidationMinInstance, ValidationMinValue);

if (i_bSetControl)
ValidationMinEditControl.Text = ValidationMinValue;
}
else
{
SetObjectPropertyValueClean(g_ValidationMinInstance, null);

if (i_bSetControl)
ValidationMinEditControl.Text = "";
}
}
var ValidationMa
xValue = "";
if (g_Validation
MaxInstance != null)
{
if (type
of g_ValidationMaxInstance.PropertyValue != "undefined")
{
if (g_ValidationMaxInstance.PropertyValue != null)
ValidationMaxValue = g_ValidationMaxInstance.PropertyValue;
}
else if
(!g_bIsNew)
ValidationMaxValue = GetFieldProperties(GetFieldName(), g_ValidationMaxInstance.
Name);
}
if (g_MinMaxType
== "Date")
{
if (Vali
dationMaxValue != INVALID_DATE && ValidationMaxValue.toString() != "")
{
var Milliseconds = parseInt(ValidationMaxValue);
if (!isNaN(Milliseconds) && Milliseconds != INVALID_DATE)
{
ValidationMaxValue = FormatDateOrDateTime(Milliseconds, GrooveIntlDateFormatStyl
e_Short, GrooveIntlDateFormatStyle_Short);
SetObjectPropertyValueClean(g_ValidationMaxInstance, Milliseconds);
}
else
SetObjectPropertyValueClean(g_ValidationMaxInstance, INVALID_DATE);

if (i_bSetControl)
ValidationMaxEditControl.Text = ValidationMaxValue;
}
else
{
SetObjectPropertyValueClean(g_ValidationMaxInstance, INVALID_DATE);

if (i_bSetControl)
ValidationMaxEditControl.Text = "";
}
}
else
{
if (!isN
aN(ValidationMaxValue) && ValidationMaxValue != -1 && ValidationMaxValue.toStrin
g() != "")
{
SetObjectPropertyValueClean(g_ValidationMaxInstance, ValidationMaxValue);

if (i_bSetControl)
ValidationMaxEditControl.Text = ValidationMaxValue;
}
else
{
SetObjectPropertyValueClean(g_ValidationMaxInstance, null);
if (i_bSetControl)
ValidationMaxEditControl.Text = "";
}
}
}
function SetObjectProper
tyValueDirty(i_Object, i_Value)
{
if (typeof i_Obj
ect != "undefined" && i_Object != null)
{
i_Object
.PropertyValue = i_Value;
g_DirtyF
ield = true;
}
}
function SetObjectProper
tyValueClean(i_Object, i_Value)
{
if (typeof i_Obj
ect != "undefined" && i_Object != null)
i_Object
.PropertyValue = i_Value;
}
function SetPropertyValu
e()
{
if (g_PropertyVa
lueError)
return;
g_ApplyButtonUse
d = false;
var index = Prop
ertiesListView.SelectionIndex;
if (index >= 0)
int_SetP
ropertyValue(index);
}
function int_SetProperty
Value(i_Index)
{
var i = Properti
esListView.GetItemData(i_Index);
var ValueType =
g_PropertyArray[i].Type;
var ValueName =
g_PropertyArray[i].Name;
if (ValueType ==
"Constant")
{
if (Prop
ertyValueConstantCheckBox.CheckState == GCS_CHECKED)
SetObjectPropertyValueDirty(g_PropertyArray[i], true);
else if
(PropertyValueConstantCheckBox.CheckState == GCS_UNCHECKED)
SetObjectPropertyValueDirty(g_PropertyArray[i], false);
}
// Sets the prop
erty value for number properties, including initial value for number and currenc
y fields.
else if (ValueTy
pe == "Number")
{
var Stor
edNumberValue = "";
var Stor
edTypeValue = 0;
var Numb
erValueStr = TrimEnds(PropertyValueEditControl.Text);
if (Numb
erValueStr.toString() != "")
{
var NumberValue = g_UIDelegate.ParseNumber(NumberValueStr);
if (!isNaN(NumberValue))
{
StoredNumberValue = NumberValue;
if (ValueName == "Width" || ValueName == "Height")
StoredTypeValue = PropertySizeTypeComboBox.GetSelectionIndex();
}
}
SetObjec
tPropertyValueDirty(g_PropertyArray[i], StoredNumberValue);
if (Valu
eName == "Width" || ValueName == "Height")
g_PropertyArray[i].PropertySizeType = StoredTypeValue;
}
else if (ValueTy
pe == "Value")
{
if (Valu
eName == "Name")
SetFieldName(PropertyValueEditControl.Text);
else
SetObjectPropertyValueDirty(g_PropertyArray[i], PropertyValueEditControl.Text);
}
else if (ValueTy
pe == "Date")
{
var Date
Value = PropertyValueEditControl.Text;
if (Date
Value != "")
{
var Milliseconds = ParseDateOrDateTime(DateValue, GrooveIntlDateFormatStyle_Shor
t, GrooveIntlDateFormatStyle_Short);
if (isNaN(Milliseconds))
SetObjectPropertyValueDirty(g_PropertyArray[i], INVALID_DATE);
else
SetObjectPropertyValueDirty(g_PropertyArray[i], Milliseconds);
}
else
SetObjectPropertyValueDirty(g_PropertyArray[i], INVALID_DATE);
}
else if (ValueTy
pe == "Content")
{
SetObjec
tPropertyValueDirty(g_PropertyArray[i], PropertyValueMLEditControl.Text);
}
else if (ValueTy
pe == "StaticText")
{
var Prop
ertyValue = null;
if (Prop
ertyValuePlainTextRadioButton.CheckState == GrooveCheckState_Checked)
{
g_IsRichText = false;

PropertyValue = GetPlainTextPropertyValue();
}
else
{
g_IsRichText = true;

var pStorageMgr = GrooveScriptFunctions.CreateNewObject("Groove.StorageManager")


;
PropertyValue = pStorageMgr.CreateTemporaryElement("urn:groove.net:RichText");
PropertyValueTextView.IGrooveTextContent.WriteToElement(PropertyValue, GrooveTex
tContentFlag_All);
}
SetObjec
tPropertyValueDirty(g_PropertyArray[i], PropertyValue);
}
else if (ValueTy
pe == "RichText")
{
var pSto
rageMgr = GrooveScriptFunctions.CreateNewObject("Groove.StorageManager");
var pEle
ment = pStorageMgr.CreateTemporaryElement("urn:groove.net:RichText");
Property
ValueTextView.IGrooveTextContent.WriteToElement(pElement, GrooveTextContentFlag_
All);
SetObjec
tPropertyValueDirty(g_PropertyArray[i], pElement);
}
else if (ValueTy
pe == "Reference")
{
SetObjec
tPropertyValueDirty(g_PropertyArray[i], "Referenced");
g_FieldL
abel = GetPlainTextFieldLabel();
if (g_Fi
eldLabel.length > 750)
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_
MAX_LABEL_SIZE_MSG), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ
_INV_LABEL));
return;
}
var Fiel
dLabel = "";
var IsRi
chTextLabel = false;
if (Fiel
dLabelPlainTextRadioButton.CheckState == GrooveCheckState_Checked)
{
FieldLabel = g_FieldLabel;
}
else
{
IsRichTextLabel = true;

var pStorageMgr = GrooveScriptFunctions.CreateNewObject("Groove.StorageManager")


;
FieldLabel = pStorageMgr.CreateTemporaryElement("urn:groove.net:RichText");
FieldLabelValueTextView.IGrooveTextContent.WriteToElement(FieldLabel, GrooveText
ContentFlag_All);
}
g_Proper
tyLabelInstance.PropertyValue = FieldLabel;
g_Proper
tyLabelPositionInstance.PropertyValue = GetFieldLabelPosition();
g_Proper
tyIsRichTextLabelInstance.PropertyValue = IsRichTextLabel;
}
else if (ValueTy
pe == "SubProperty")
{
// If th
is is a subproperty, the PropertyValue will be
// set t
o an array of JavaScript objects which will contain
// infor
mation to describe the values which need to be set.
var SubP
ropertyArray = new Array();
var j =
0;
var jCou
nt = ChoicesListView.Count;
while (j
< jCount)
{
var SPInstance = new SubPropertyInstance;
SPInstance.Value = ChoicesListView.GetItemText(j, 2);
SPInstance.Caption = ChoicesListView.GetItemText(j, 1);
if (ChoicesListView.GetItemText(j, 0) == "*")
SPInstance.Selected = true;
else
SPInstance.Selected = false;
SubPropertyArray[j] = SPInstance;
j++;
}
SetObjec
tPropertyValueDirty(g_PropertyArray[i], SubPropertyArray);
}
else if (ValueTy
pe == "FormatDate")
{
if (Form
atDateShortFormatRadioButton.CheckState == GCS_CHECKED)
SetObjectPropertyValueDirty(g_PropertyArray[i], GrooveIntlDateFormatStyle_Short)
;
else if
(FormatDateLongFormatRadioButton.CheckState == GCS_CHECKED)
SetObjectPropertyValueDirty(g_PropertyArray[i], GrooveIntlDateFormatStyle_Long);
}
else if (ValueTy
pe == "Lookup")
{
var Look
upString = "";
if (!g_I
sClearingLookupString)
LookupString = GetLookupString();
else
{
var FieldName = GetFieldName();
if (FieldName != "")
g_CallbackCode.RemoveGlobalLookupRecord(FieldName);
}
SetObjec
tPropertyValueDirty(g_PropertyArray[i], LookupString);
g_IsClea
ringLookupString = false;
}
else if (ValueTy
pe == "Color")
{
var Back
groundColor = "#FFFFFF";
if (Prop
ertyBackgroundTransparentRadioButton.CheckState == GCS_CHECKED)
BackgroundColor = "Transparent";
else if
(PropertyBackgroundColorRadioButton.CheckState == GCS_CHECKED)
BackgroundColor = PropertyValueEditControl.Text;
SetObjec
tPropertyValueDirty(g_PropertyArray[i], BackgroundColor);
}
else if (ValueTy
pe == "InitialValue")
{
var Init
ialValueType = PropertyInitialValueTypeComboBox.GetSelectionIndex();
var Fiel
dType = GetCurrentFieldType();
if (Fiel
dType == GrooveFormsToolFieldType_Text)
{
if (InitialValueType == GrooveFormsToolTextFieldInitialValueType_Static)
SetObjectPropertyValueDirty(g_PropertyArray[i], PropertyValueEditControl.Text);
else if (InitialValueType == GrooveFormsToolTextFieldInitialValueType_Function)
g_PropertyArray[i].PropertyInitialValueFunction = PropertyValueEditControl.Text;
}
else if
(FieldType == GrooveFormsToolFieldType_Date)
{
var InitialValue = PropertyValueEditControl.Text;
if (InitialValueType == GrooveFormsToolDateFieldInitialValueType_Static)
{
if (InitialValue != "")
{
var InitialDate = g_UIDelegate.ParseDate(InitialValue, GrooveIntlDateFormatStyle
_Short);
if (isNaN(InitialDate))
SetObjectPropertyValueDirty(g_PropertyArray[i], INVALID_DATE);
else
SetObjectPropertyValueDirty(g_PropertyArray[i], InitialDate);
}
else
SetObjectPropertyValueDirty(g_PropertyArray[i], INVALID_DATE);
}
else if (InitialValueType == GrooveFormsToolDateFieldInitialValueType_Function)
g_PropertyArray[i].PropertyInitialValueFunction = InitialValue;
}
else if
(FieldType == GrooveFormsToolFieldType_DateTime)
{
var InitialValue = PropertyValueEditControl.Text;
if (InitialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Static)
{
if (InitialValue != "")
{
var InitialDateTime = ParseDateTime(InitialValue, GrooveIntlDateFormatStyle_Shor
t, GrooveIntlDateFormatStyle_Short);
if (isNaN(InitialDateTime))
SetObjectPropertyValueDirty(g_PropertyArray[i], INVALID_DATE);
else
SetObjectPropertyValueDirty(g_PropertyArray[i], InitialDateTime);
}
else
SetObjectPropertyValueDirty(g_PropertyArray[i], INVALID_DATE);
}
else if (InitialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Functi
on)
g_PropertyArray[i].PropertyInitialValueFunction = InitialValue;
}
g_Proper
tyArray[i].PropertyInitialValueType = InitialValueType;
}
else if (ValueTy
pe == "View")
{
var View
Index = PropertyViewComboBox.GetSelectionIndex();
var View
ID = -1;
if (View
Index >= 0)
ViewID = PropertyViewComboBox.GetItemData(ViewIndex);
SetObjec
tPropertyValueDirty(g_PropertyArray[i], ViewID);
}
}
function SetInitialValue
Type()
{
var InitialValue
Type = PropertyInitialValueTypeComboBox.GetSelectionIndex();
var FieldType =
GetCurrentFieldType();
if (FieldType ==
GrooveFormsToolFieldType_Text)
{
if (Init
ialValueType == GrooveFormsToolTextFieldInitialValueType_Static || InitialValueT
ype == GrooveFormsToolTextFieldInitialValueType_Function)
AddRemoveMultiCellContents("PropertyValueEditControl", PropertyInitialTextLayout
, false);
else
AddRemoveMultiCellContents("PropertyValueEditControl", PropertyInitialTextLayout
, true);
}
else if (FieldTy
pe == GrooveFormsToolFieldType_Date)
{
if (Init
ialValueType == GrooveFormsToolDateFieldInitialValueType_Static || InitialValueT
ype == GrooveFormsToolDateFieldInitialValueType_Function)
{
AddRemoveMultiCellContents("PropertyValueEditControl", PropertyInitialDateLayout
, false);
if (InitialValueType == GrooveFormsToolDateFieldInitialValueType_Static)
AddRemoveMultiCellContents("PropertyDateButton", PropertyInitialDateLayout, fals
e);
else
AddRemoveMultiCellContents("PropertyDateButton", PropertyInitialDateLayout, true
);
}
else
{
AddRemoveMultiCellContents("PropertyValueEditControl", PropertyInitialDateLayout
, true);
AddRemoveMultiCellContents("PropertyDateButton", PropertyInitialDateLayout, true
);
}
}
else if (FieldTy
pe == GrooveFormsToolFieldType_DateTime)
{
if (Init
ialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Static || InitialVa
lueType == GrooveFormsToolDateTimeFieldInitialValueType_Function)
{
AddRemoveMultiCellContents("PropertyValueEditControl", PropertyInitialDateLayout
, false);
if (InitialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Static)
AddRemoveMultiCellContents("PropertyDateButton", PropertyInitialDateLayout, fals
e);
else
AddRemoveMultiCellContents("PropertyDateButton", PropertyInitialDateLayout, true
);
}
else
{
AddRemoveMultiCellContents("PropertyValueEditControl", PropertyInitialDateLayout
, true);
AddRemoveMultiCellContents("PropertyDateButton", PropertyInitialDateLayout, true
);
}
}
}
function GetPropertyValu
e()
{
var index = Prop
ertiesListView.SelectionIndex;
if (index >= 0)
int_GetP
ropertyValue(index, true);
}
function int_GetProperty
Value(i_Index, i_bSetControl)
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var i = Properti
esListView.GetItemData(i_Index);
var FieldName =
GetFieldName();
var FieldType =
GetCurrentFieldType();
var ValueType =
g_PropertyArray[i].Type;
var ValueName =
g_PropertyArray[i].Name;
if (ValueType ==
"Constant")
{
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
if (i_bSetControl)
{
if (g_PropertyArray[i].PropertyValue == true)
PropertyValueConstantCheckBox.CheckState = GCS_CHECKED;
else
PropertyValueConstantCheckBox.CheckState = GCS_UNCHECKED;
}
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
PropertyValueConstantCheckBox.CheckState = GCS_UNCHECKED;
}
else
{
Value = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
if (i_bSetControl)
PropertyValueConstantCheckBox.CheckState = GCS_CHECKED;
SetObjectPropertyValueClean(g_PropertyArray[i], Value);
}
}
}
else if (ValueTy
pe == "Value")
{
var Prop
ertyValue = "";
if (Valu
eName == "Name")
{
PropertyValue = GetFieldName();
}
else if
(typeof g_PropertyArray[i].PropertyValue != "undefined")
{
PropertyValue = g_PropertyArray[i].PropertyValue;
}
else
{
if (g_bIsNew)
PropertyValue = "";
else
{
PropertyValue = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
SetObjectPropertyValueClean(g_PropertyArray[i], PropertyValue);
}
}
if (i_bS
etControl)
PropertyValueEditControl.Text = PropertyValue;
}
else if (ValueTy
pe == "Number")
{
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
if (i_bSetControl)
{
var NumberValue = g_PropertyArray[i].PropertyValue;
if (NumberValue != -1 && NumberValue.toString() != "")
{
if (ValueName == "Width" || ValueName == "Height")
{
PropertyValueEditControl.Text = NumberValue;

var ValueSizeType = g_PropertyArray[i].PropertySizeType;


if (typeof ValueSizeType != "undefined")
PropertySizeTypeComboBox.SetSelectionByIndex(ValueSizeType);
else
PropertySizeTypeComboBox.SetSelectionByIndex(0);
}
else if (ValueName == "MaximumLength" || ValueName == "Precision" || ValueName =
= "InitialValue" ||
ValueName == "NumberVisible")
PropertyValueEditControl.Text = NumberValue;
else
PropertyValueEditControl.Text = g_UIDelegate.FormatNumber(NumberValue, 2, "");
}
else
{
PropertyValueEditControl.Text = "";
if (ValueName == "Width" || ValueName == "Height")
PropertySizeTypeComboBox.SetSelectionByIndex(0);
}
}
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
{
PropertyValueEditControl.Text = "";
PropertySizeTypeComboBox.SetSelectionByIndex(0);
}
}
else
{
var NumberValue = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
var ValueSizeType = GetFieldProperties(FieldName, g_PropertyArray[i].Name + "Typ
e");
if (i_bSetControl)
{
if (NumberValue != -1 && NumberValue.toString() != "")
{
//if (ValueName == "Width" || ValueName == "Height")
PropertyValueEditControl.Text = NumberValue;
/*
else
{
debugger;
PropertyValueEditControl.Text = g_UIDelegate.FormatNumber(NumberValue, 2, "");
}
*/
if (typeof ValueSizeType != "undefined")
PropertySizeTypeComboBox.SetSelectionByIndex(ValueSizeType);
else
PropertySizeTypeComboBox.SetSelectionByIndex(0);
}
else
{
PropertyValueEditControl.Text = "";
PropertySizeTypeComboBox.SetSelectionByIndex(0);
}
}

SetObjectPropertyValueClean(g_PropertyArray[i], NumberValue);
if (ValueName == "Width" || ValueName == "Height")
g_PropertyArray[i].PropertySizeType = ValueSizeType;
}
}
}
else if (ValueTy
pe == "Date")
{
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
if (i_bSetControl)
{
var Milliseconds = g_PropertyArray[i].PropertyValue;
if (Milliseconds != null && !isNaN(Milliseconds) && Milliseconds != INVALID_DATE
&& Milliseconds.toString() != "")
PropertyValueEditControl.Text = FormatDateOrDateTime(Milliseconds, GrooveIntlDat
eFormatStyle_Short, GrooveIntlDateFormatStyle_Short);
}
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
PropertyValueEditControl.Text = "";
}
else
{
var Milliseconds = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
if (!isNaN(Milliseconds) && Milliseconds != INVALID_DATE && Milliseconds.toStrin
g() != "")
{
if (i_bSetControl)
PropertyValueEditControl.Text = FormatDateOrDateTime(Milliseconds, GrooveIntlDat
eFormatStyle_Short, GrooveIntlDateFormatStyle_Short);
SetObjectPropertyValueClean(g_PropertyArray[i], Milliseconds);
}
else
SetObjectPropertyValueClean(g_PropertyArray[i], null);
}
}
}
else if (ValueTy
pe == "Content")
{
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
if (i_bSetControl)
PropertyValueMLEditControl.Text = g_PropertyArray[i].PropertyValue;
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
PropertyValueMLEditControl.Text = "";
}
else
{
var ContentValue = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
ContentValue.replace(/&amp;/g, "&");
ContentValue.replace(/&lt;/g, "<");
ContentValue.replace(/&gt;/g, ">");
if (i_bSetControl)
PropertyValueMLEditControl.Text = ContentValue;
SetObjectPropertyValueClean(g_PropertyArray[i], ContentValue);
}
}
}
else if (ValueTy
pe == "StaticText")
{
var IsRi
chText = g_IsRichText;
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
if (i_bSetControl)
{
if (!g_IsRichText)
PropertyValueTextView.TextContent.PlainText = g_PropertyArray[i].PropertyValue;
else
PropertyValueTextView.CellContent.ReadContentFromElement(g_PropertyArray[i].Prop
ertyValue);
}
}
else
{
if (g_bIsNew)
{
IsRichText = false;

if (i_bSetControl)
PropertyValueTextView.TextContent.PlainText = "";
}
else
{
IsRichText = GetFieldProperties(FieldName, "IsRichText");
var TextValue = "";
if (!IsRichText)
TextValue = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
else
TextValue = GetFieldProperties(FieldName, "RichText");

if (i_bSetControl)
{
if (typeof TextValue != "undefined")
{
if (!IsRichText)
PropertyValueTextView.TextContent.PlainText = TextValue;
else
PropertyValueTextView.CellContent.ReadContentFromElement(TextValue);
}
else
PropertyValueTextView.TextContent.PlainText = "";
}

SetObjectPropertyValueClean(g_PropertyArray[i], TextValue);
}
}
if (i_bS
etControl)
SetIsRichTextUI(IsRichText);
g_IsRich
Text = IsRichText;
}
else if (ValueTy
pe == "RichText")
{
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
if (i_bSetControl)
{
PropertyValueTextView.IGrooveTextContent.ReadFromElement(g_PropertyArray[i].Prop
ertyValue, GrooveTextContentFlag_All);
}
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
PropertyValueTextView.RTFContent = "";
}
else
{
var ContentElement = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
if (i_bSetControl)
PropertyValueTextView.IGrooveTextContent.ReadFromElement(ContentElement, GrooveT
extContentFlag_All);
SetObjectPropertyValueClean(g_PropertyArray[i], ContentElement);
}
}
}
else if (ValueTy
pe == "Reference")
{
var IsRi
chTextLabel = false;
if (type
of g_PropertyIsRichTextLabelInstance.PropertyValue != "undefined")
{
IsRichTextLabel = g_PropertyIsRichTextLabelInstance.PropertyValue;
if (i_bSetControl)
SetIsRichTextLabelUI(IsRichTextLabel);
}
else
{
if (g_bIsNew && i_bSetControl)
SetIsRichTextLabelUI(false);
}
if (type
of g_PropertyLabelPositionInstance.PropertyValue != "undefined")
{
if (i_bSetControl)
SetLabelPositionUI(g_PropertyLabelPositionInstance.PropertyValue);
}
else
{
if (g_bIsNew && i_bSetControl)
SetLabelPositionUI(null);
}
if (type
of g_PropertyLabelInstance.PropertyValue != "undefined")
{
if (i_bSetControl)
{
if (!IsRichTextLabel)
FieldLabelValueTextView.TextContent.PlainText = g_PropertyLabelInstance.Property
Value;
else
FieldLabelValueTextView.CellContent.ReadContentFromElement(g_PropertyLabelInstan
ce.PropertyValue);
}
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
FieldLabelValueTextView.TextContent.PlainText = "";
}
else
{
var Prop = GetFieldProperties(FieldName, g_PropertyLabelInstance.Name);
if (i_bSetControl)
{
if (typeof Prop != "undefined")
{
if (!IsRichTextLabel)
FieldLabelValueTextView.TextContent.PlainText = Prop;
else
FieldLabelValueTextView.CellContent.ReadContentFromElement(Prop);
}
else
FieldLabelValueTextView.TextContent.PlainText = "";
}
}
}
}
else if (ValueTy
pe == "SubProperty")
{
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
SubPropertyArray = g_PropertyArray[i].PropertyValue;
if (i_bSetControl)
{
ChoicesListView.ResetContent();
for (var j = 0; j < SubPropertyArray.length; j++)
{
var SPInstance = SubPropertyArray[j];
if (SPInstance.Selected)
FirstColumnValue = "*";
else
FirstColumnValue = "";
AddOption(FirstColumnValue, SPInstance.Caption, SPInstance.Value);
}
}
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
ChoicesListView.ResetContent();
}
else
{
if (i_bSetControl)
ChoicesListView.ResetContent();
var SubPropertyEnum = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
var DefaultSelection = GetFieldProperties(FieldName, "DefaultSelection");
var SubPropertyArray = new Array();
if (SubPropertyEnum != null)
{
while (SubPropertyEnum.HasMore())
{
var SubPropertyPair = SubPropertyEnum.OpenNextPair();
// Create the sub property instance to be stored
// in the global property array.
var SPInstance = new SubPropertyInstance();
SPInstance.Caption = SubPropertyPair.First;
SPInstance.Value = SubPropertyPair.Second;
if (DefaultSelection == SPInstance.Caption)
{
FirstColumnValue = "*";
SPInstance.Selected = true;
}
else
{
FirstColumnValue = "";
SPInstance.Selected = false;
}
SubPropertyArray[SubPropertyArray.length] = SPInstance;
if (i_bSetControl)
AddOption(FirstColumnValue, SPInstance.Caption, SPInstance.Value);
}
}
SetObjectPropertyValueClean(g_PropertyArray[i], SubPropertyArray);
}
}
if (i_bS
etControl)
{
// Disable option buttons by default.
AddOptionButton.Enabled = false;
CancelOptionButton.Enabled = false;
DefaultOptionButton.Enabled = false;
DefaultOptionButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_
FLD_WIZ_SEL_BY_DEFAULT);
ModifyOptionButton.Enabled = false;
RemoveOptionButton.Enabled = false;
}
}
else if (ValueTy
pe == "FormatDate")
{
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
if (i_bSetControl)
GetFormatDatePropertyValue(g_PropertyArray[i].PropertyValue);
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
GetFormatDatePropertyValue(GrooveIntlDateFormatStyle_Short);
}
else
{
var FormatDateStyle = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
if (i_bSetControl)
GetFormatDatePropertyValue(FormatDateStyle);
SetObjectPropertyValueDirty(g_PropertyArray[i], FormatDateStyle);
}
}
if (i_bS
etControl)
{
var DateValue = new Date().valueOf();
var ShortPreviewEnum = CreateBSTREnum();
ShortPreviewEnum.Add(FormatDateOrDateTime(DateValue, GrooveIntlDateFormatStyle_S
hort, GrooveIntlDateFormatStyle_Short));
FormatDateShortFormatPreviewLabel.SetText(Priv.MessageFormat(IDS_FORMS_TOOL_SUBF
ORMS_GRP_FLD_WIZ_DATE_PREVIEW, ShortPreviewEnum.IGrooveBSTREnum));
var LongPreviewEnum = CreateBSTREnum();
LongPreviewEnum.Add(FormatDateOrDateTime(DateValue, GrooveIntlDateFormatStyle_Lo
ng, GrooveIntlDateFormatStyle_Short));
FormatDateLongFormatPreviewLabel.SetText(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFO
RMS_GRP_FLD_WIZ_DATE_PREVIEW, LongPreviewEnum.IGrooveBSTREnum));
}
}
else if (ValueTy
pe == "Lookup")
{
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
if (i_bSetControl)
GetLookupPropertyValue(g_PropertyArray[i].PropertyValue, FieldName);
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
ResetLookupProperty();
}
else
{
var LookupString = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
SetObjectPropertyValueClean(g_PropertyArray[i], LookupString);
if (i_bSetControl)
GetLookupPropertyValue(LookupString, FieldName);
}
}
}
else if (ValueTy
pe == "Color")
{
var Prop
ertyColor = "";
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
PropertyColor = g_PropertyArray[i].PropertyValue;
}
else
{
if (g_bIsNew)
PropertyColor = "#FFFFFF";
else
{
PropertyColor = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
SetObjectPropertyValueClean(g_PropertyArray[i], PropertyColor);
}
}
if (i_bS
etControl)
{
if (PropertyColor == "")
PropertyColor = "#FFFFFF";

if (PropertyColor == "Transparent")
{
PropertyBackgroundTransparentRadioButton.CheckState = GCS_CHECKED;
PropertyBackgroundColorRadioButton.CheckState = GCS_UNCHECKED;
PropertyBackgroundColorButton.Enabled = false;

PreviewColor("#FFFFFF");
PropertyValueEditControl.Text = "";
}
else
{
PropertyBackgroundTransparentRadioButton.CheckState = GCS_UNCHECKED;
PropertyBackgroundColorRadioButton.CheckState = GCS_CHECKED;
PropertyBackgroundColorButton.Enabled = true;

PreviewColor(PropertyColor);
PropertyValueEditControl.Text = PropertyColor;
}
}
}
else if (ValueTy
pe == "InitialValue")
{
if (type
of g_PropertyArray[i].PropertyValue != "undefined" ||
type
of g_PropertyArray[i].PropertyInitialValueType != "undefined" ||
type
of g_PropertyArray[i].PropertyInitialValueFunction != "undefined")
{
if (i_bSetControl)
{
var InitialValueType = g_PropertyArray[i].PropertyInitialValueType;
if (typeof InitialValueType != "undefined")
PropertyInitialValueTypeComboBox.SetSelectionByIndex(InitialValueType);
else
PropertyInitialValueTypeComboBox.SetSelectionByIndex(0);

if (FieldType == GrooveFormsToolFieldType_Text)
{
var InitialValue = g_PropertyArray[i].PropertyValue;
if (InitialValueType == GrooveFormsToolTextFieldInitialValueType_Function)
InitialValue = g_PropertyArray[i].PropertyInitialValueFunction;
PropertyValueEditControl.Text = InitialValue;
}
else if (FieldType == GrooveFormsToolFieldType_Date)
{
if (InitialValueType == GrooveFormsToolDateFieldInitialValueType_Static)
{
var InitialValue = g_PropertyArray[i].PropertyValue;
if (InitialValue != null && !isNaN(InitialValue) && InitialValue != INVALID_DATE
&& InitialValue.toString() != "")
PropertyValueEditControl.Text = g_UIDelegate.FormatDate(InitialValue, GrooveIntl
DateFormatStyle_Short);
}
else if (InitialValueType == GrooveFormsToolDateFieldInitialValueType_Function)
{
var InitialValueFunction = g_PropertyArray[i].PropertyInitialValueFunction;
PropertyValueEditControl.Text = InitialValueFunction;
}
}
else if (FieldType == GrooveFormsToolFieldType_DateTime)
{
if (InitialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Static)
{
var InitialValue = g_PropertyArray[i].PropertyValue;
if (InitialValue != null && !isNaN(InitialValue) && InitialValue != INVALID_DATE
&& InitialValue.toString() != "")
PropertyValueEditControl.Text = g_UIDelegate.FormatDateTime(InitialValue, Groove
IntlDateFormatStyle_Short, GrooveIntlDateFormatStyle_Short);
}
else if (InitialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Functi
on)
{
var InitialValueFunction = g_PropertyArray[i].PropertyInitialValueFunction;
PropertyValueEditControl.Text = InitialValueFunction;
}
}
SetInitialValueType();
}
}
else
{
if (g_bIsNew)
{
if (i_bSetControl)
{
PropertyInitialValueTypeComboBox.SetSelectionByIndex(0);
PropertyValueEditControl.Text = "";

SetInitialValueType();
}
}
else
{
var InitialValue = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
var InitialValueType = GetFieldProperties(FieldName, g_PropertyArray[i].Name + "
Type");
g_PropertyArray[i].PropertyInitialValueType = InitialValueType;

if (FieldType == GrooveFormsToolFieldType_Text)
{
if (InitialValueType == GrooveFormsToolTextFieldInitialValueType_Static)
SetObjectPropertyValueClean(g_PropertyArray[i], InitialValue);
else if (InitialValueType == GrooveFormsToolTextFieldInitialValueType_Function)
{
InitialValue = GetFieldProperties(FieldName, g_PropertyArray[i].Name + "Function
");
g_PropertyArray[i].PropertyInitialValueFunction = InitialValue;
}

if (i_bSetControl)
PropertyValueEditControl.Text = InitialValue;
}
else if (FieldType == GrooveFormsToolFieldType_Date)
{
if (InitialValueType == GrooveFormsToolDateFieldInitialValueType_Static)
{
SetObjectPropertyValueClean(g_PropertyArray[i], InitialValue);

if (i_bSetControl && InitialValue != null && !isNaN(InitialValue) && InitialValu


e != INVALID_DATE && InitialValue.toString() != "")
PropertyValueEditControl.Text = g_UIDelegate.FormatDateTime(InitialValue, Groove
IntlDateFormatStyle_Short, GrooveIntlDateFormatStyle_Short);
}
else if (InitialValueType == GrooveFormsToolDateFieldInitialValueType_Function)
{
InitialValue = GetFieldProperties(FieldName, g_PropertyArray[i].Name + "Function
");
g_PropertyArray[i].PropertyInitialValueFunction = InitialValue;

if (i_bSetControl)
PropertyValueEditControl.Text = InitialValue;
}
}
else if (FieldType == GrooveFormsToolFieldType_DateTime)
{
if (InitialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Static)
{
SetObjectPropertyValueClean(g_PropertyArray[i], InitialValue);

if (i_bSetControl && InitialValue != null && !isNaN(InitialValue) && InitialValu


e != INVALID_DATE && InitialValue.toString() != "")
PropertyValueEditControl.Text = g_UIDelegate.FormatDateTime(InitialValue, Groove
IntlDateFormatStyle_Short, GrooveIntlDateFormatStyle_Short);
}
else if (InitialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Functi
on)
{
InitialValue = GetFieldProperties(FieldName, g_PropertyArray[i].Name + "Function
");
g_PropertyArray[i].PropertyInitialValueFunction = InitialValue;

if (i_bSetControl)
PropertyValueEditControl.Text = InitialValue;
}
}

if (i_bSetControl)
{
if (typeof InitialValueType != "undefined")
PropertyInitialValueTypeComboBox.SetSelectionByIndex(InitialValueType);
else
PropertyInitialValueTypeComboBox.SetSelectionByIndex(0);

SetInitialValueType();
}
}
}
}
else if (ValueTy
pe == "Browse")
{
if (g_Im
ageContents == null)
{
if (g_bIsNew)
g_ImageContents = null;
else
g_ImageContents = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
}
if (i_bS
etControl)
PreviewImage();
}
else if (ValueTy
pe == "View")
{
var View
ID = -1;
if (type
of g_PropertyArray[i].PropertyValue != "undefined")
{
ViewID = g_PropertyArray[i].PropertyValue;
}
else
{
if (g_bIsNew)
ViewID = -1;
else
{
ViewID = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
SetObjectPropertyValueClean(g_PropertyArray[i], ViewID);
}
}
if (i_bS
etControl)
{
var Count = PropertyViewComboBox.Count;
for (var i = 0; i < Count; i++)
{
if (PropertyViewComboBox.GetItemData(i) == ViewID)
{
PropertyViewComboBox.SetSelectionByIndex(i);
break;
}
}
}
}
else if (ValueTy
pe == "ViewFilter")
{
if (g_bI
sNew)
g_ViewFilter = "";
else
g_ViewFilter = GetFieldProperties(FieldName, g_PropertyArray[i].Name);
if (i_bS
etControl)
SetViewFilterUI(g_ViewFilter);
}
}
function GetLookupProper
tyValue(i_LookupString, i_FieldName)
{
if (i_LookupStri
ng != null && i_LookupString != "")
{
var Wind
owMgr = GrooveScriptFunctions.CreateNewObject("Groove.WindowManager");
WindowMg
r.ShowWaitCursor();
// Get t
he variable values from the lookup string.
var Tele
spaceURL = GetValueFromQueryString("TelespaceURL", i_LookupString);
var Tool
Name = GetValueFromQueryString("ToolName", i_LookupString);
var View
ID = GetValueFromQueryString("ViewID", i_LookupString);
var KeyC
olumn = GetValueFromQueryString("KeyColumn", i_LookupString);
var KeyV
alue = GetValueFromQueryString("KeyValue", i_LookupString);
var KeyV
alueIsFieldName = GetValueFromQueryString("KeyValueIsFieldName", i_LookupString)
;
var Look
upColumn = GetValueFromQueryString("LookupColumn", i_LookupString);
var Retu
rnUnique = GetValueFromQueryString("ReturnUnique", i_LookupString);
var NoCa
che = GetValueFromQueryString("NoCache", i_LookupString);
var Comm
ent = GetValueFromQueryString("Comment", i_LookupString);
var Tele
spaceDescriptor = ResetTelespaceList(TelespaceURL);
if (Tele
spaceDescriptor != null)
{
var ToolDescriptor = null;
// Get the tools list in order to set the correct tool descriptor.
var IsLocal = false;
if (ToolName == "Local")
{
IsLocal = true;
ToolName = PropertyList.OpenProperty(PROPERTY_TOOL_NAME);
}
var ToolsEnum = g_CallbackCode.GetToolsList(TelespaceDescriptor);
while (ToolsEnum.HasMore())
{
var tmpToolPair = ToolsEnum.OpenNextPair();
var tmpToolDescriptor = tmpToolPair.Second;
if (tmpToolDescriptor.Name == ToolName)
{
ToolDescriptor = tmpToolDescriptor;
break;
}
}

// If the tool could not be found, the lookup is invalid.


if (ToolDescriptor == null)
return;

// Initialize the tool and view combo boxes.


var ToolDisplayName;
if (IsLocal)
ToolDisplayName = g_THIS_TOOL;
else
ToolDisplayName = ToolDescriptor.DisplayName;
InitializeComboBox(LookupToolComboBox, ToolDisplayName, ToolDescriptor);

var ViewName = g_CallbackCode.GetViewNameFromViewID(TelespaceDescriptor, ToolDes


criptor, ViewID);
InitializeComboBox(LookupViewComboBox, ViewName, ViewID);
LookupViewComboBox.Enabled = true;

// Set the UI depending on the values returned.


if (KeyColumn != "" && KeyValue != "")
{
ShowHideMultiCellContents("LookupColumnKeyViewContainer", PropertyLookupLayout,
102, false);
LookupTypeAllRadioButton.CheckState = GCS_UNCHECKED;
LookupTypeKeyRadioButton.CheckState = GCS_CHECKED;
InitializeComboBox(LookupKeyColumnComboBox, KeyColumn);
LookupKeyValueComboBox.Text = KeyValue;
LookupKeyValueComboBox.Enabled = true;

if (KeyValueIsFieldName.toLowerCase() == "true")
LookupKeyValueIsFieldNameCheckBox.CheckState = GCS_CHECKED;
else
LookupKeyValueIsFieldNameCheckBox.CheckState = GCS_UNCHECKED;
}
else
{
ShowHideMultiCellContents("LookupColumnKeyViewContainer", PropertyLookupLayout,
102, true);
LookupTypeAllRadioButton.CheckState = GCS_CHECKED;
LookupTypeKeyRadioButton.CheckState = GCS_UNCHECKED;
}

InitializeComboBox(LookupColumnComboBox, LookupColumn);
LookupColumnComboBox.Enabled = true;
if (ReturnUnique.toLowerCase() == "true")
{
LookupReturnAllRadioButton.CheckState = GCS_UNCHECKED;
LookupReturnUniqueRadioButton.CheckState = GCS_CHECKED;
}
else
{
LookupReturnAllRadioButton.CheckState = GCS_CHECKED;
LookupReturnUniqueRadioButton.CheckState = GCS_UNCHECKED;
}

if (NoCache.toLowerCase() == "true")
LookupNoCacheCheckBox.CheckState = GCS_CHECKED;
else
LookupNoCacheCheckBox.CheckState = GCS_UNCHECKED;
}
LookupCo
mment.Text = Comment;
Telespac
eDescriptor = null;
delete T
elespaceDescriptor;
ToolsEnu
m = null;
delete T
oolsEnum;
CollectG
arbage();
WindowMg
r.ShowWaitCursor(false);
}
else
{
ResetLoo
kupProperty();
}
}
function RemoveLookupPro
perty()
{
g_IsClearingLook
upString = true;
ResetLookupPrope
rty();
SetPropertyValue
();
}

function InitializeCombo
Box(i_ComboBox, i_Text, i_ItemData)
{
i_ComboBox.Reset
Content();
var NewIndex = i
_ComboBox.AddItem(i_Text);
if (typeof i_Ite
mData != "undefined")
i_ComboB
ox.SetItemData(NewIndex, i_ItemData);
i_ComboBox.SetSe
lectionByIndex(NewIndex);
}
function GetFormatDatePr
opertyValue(i_FormatDateStyle)
{
if (i_FormatDate
Style == GrooveIntlDateFormatStyle_Short || i_FormatDateStyle == GrooveIntlDateF
ormatStyle_Medium)
{
FormatDa
teShortFormatRadioButton.CheckState = GCS_CHECKED;
FormatDa
teLongFormatRadioButton.CheckState = GCS_UNCHECKED;
}
else if (i_Forma
tDateStyle == GrooveIntlDateFormatStyle_Long || i_FormatDateStyle == GrooveIntlD
ateFormatStyle_Full)
{
FormatDa
teShortFormatRadioButton.CheckState = GCS_UNCHECKED;
FormatDa
teLongFormatRadioButton.CheckState = GCS_CHECKED;
}
}
function SetupComboboxVa
lues(i_Combobox, i_Value, i_DefaultArray, i_OptionalValue)
{
i_Combobox.Reset
Content();
var i = 0;
var iCount = i_D
efaultArray.length;
while (i < iCoun
t)
{
var NewV
alue = i_DefaultArray[i].replace(/,/g, i_Value);
if (i_Op
tionalValue)
NewValue = NewValue.replace(/\$/g, i_OptionalValue);
i_Combob
ox.AddItem(NewValue);
i++;
}
i_Combobox.Redra
w();
}
function SetLabelPositio
nUI(i_Position)
{
switch (i_Positi
on)
{
case Gro
oveFormsToolFieldLabelPosition_Right:
FieldLabelPositionComboBox.SetSelectionByIndex(1);
break;
case Gro
oveFormsToolFieldLabelPosition_Top:
FieldLabelPositionComboBox.SetSelectionByIndex(2);
break;
case Gro
oveFormsToolFieldLabelPosition_Top:
default:
FieldLabelPositionComboBox.SetSelectionByIndex(0);
}
}
function SetIsRichTextUI
(i_IsRichText)
{
if (!i_IsRichTex
t)
{
Property
ValuePlainTextRadioButton.CheckState = GrooveCheckState_Checked;
Property
ValueRichTextRadioButton.CheckState = GrooveCheckState_Unchecked;
}
else
{
Property
ValuePlainTextRadioButton.CheckState = GrooveCheckState_Unchecked;
Property
ValueRichTextRadioButton.CheckState = GrooveCheckState_Checked;
}
}
function SetIsRichTextLa
belUI(i_IsRichTextLabel)
{
if (!i_IsRichTex
tLabel)
{
FieldLab
elPlainTextRadioButton.CheckState = GrooveCheckState_Checked;
FieldLab
elRichTextRadioButton.CheckState = GrooveCheckState_Unchecked;
}
else
{
FieldLab
elPlainTextRadioButton.CheckState = GrooveCheckState_Unchecked;
FieldLab
elRichTextRadioButton.CheckState = GrooveCheckState_Checked;
}
}
function SetViewFilterUI
(i_ViewFilter)
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
if (i_ViewFilter
!= "")
{
Property
ViewFilterButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD
_WIZ_EDIT_FILTER);
ClearVie
wFilterButton.Enabled = true;
}
else
{
Property
ViewFilterButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD
_WIZ_CREATE_FILTER);
ClearVie
wFilterButton.Enabled = false;
}
}
function BrowseForFile()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
try
{
var File
Title = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_ADD_IMG);
var File
Filter = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_IMG_FILTER)
;
var File
Directory = "";
if (Prop
ertyList.PropertyExists("GrooveForms_ImageDirectory"))
var FileDirectory = PropertyList.OpenProperty("GrooveForms_ImageDirectory");
// Show
the open file dialog to import the image file.
var File
Result = App.OpenFileDialog(FileTitle, FileFilter, FileDirectory, "", g_Account,
1, false);
if (File
Result.Result == 1)
{
var FilePath = FileResult.Data;
var FileRoot = LeftBack(FilePath, "\\");
var FileName = RightBack(FilePath, "\\");
var FileExtension = RightBack(FileName, ".").toLowerCase();

PropertyList.SetProperty("GrooveForms_ImageDirectory", FileRoot, GroovePropertyF


lag_Private);

if (FileExtension != "jpg" && FileExtension != "gif" && FileExtension != "png")


{
var MsgFormatEnum = CreateBSTREnum();
MsgFormatEnum.Add(FileName);
DisplayOKMessageBox(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_INV_I
MG_FILE, MsgFormatEnum.IGrooveBSTREnum), Priv.GetResourcedString(IDS_FORMS_TOOL_
SUBFORMS_GRP_FLD_WIZ_INV_IMG_FILE_TITLE));
return null;
}

// Get the contents of the image.


g_ImageContents = CreateByteInputStreamFromFile(FilePath);
PreviewImage();

return FileName;
}
else
return null;
}
catch (error)
{
ShowErro
rWindow(error.description);
return n
ull;
}
}
function PreviewImage()
{
var ImageTemplat
eURL = BuildPathFromBase("file", "FormsImageTemplate.html", "");
WebBrowserView.C
ontrol.Navigate(ImageTemplateURL);
g_ImagePath = ""
;
if (g_ImageConte
nts != null)
{
var Byte
Array = g_ImageContents.Duplicate().ReadArray(-1);
if (Byte
Array != null)
{
var pITemporaryFileServices = GrooveScriptFunctions.CreateNewObject("Groove.Temp
oraryFileServices");
var FilePath = pITemporaryFileServices.CreateTemporaryFile("tmp", "image");
g_ImagePath = FilePath;

var pBOS = CreateByteOutputStreamFromFile(FilePath);


pBOS.WriteArray(ByteArray, 0, -1);

pITemporaryFileServices.TemporaryFileServices2.DeleteTemporaryPath(FilePath, Gro
oveTemporaryFileDeleteFlag_TimerDelay, PropertyList.OpenProperty(PROPERTY_ACCOUN
T_GUID), true);
}
}
SetImagePath(g_I
magePath);
}
function UpdateFieldInfo
()
{
var pIField = nu
ll;
var FieldType =
GetCurrentFieldType();
var FieldName =
GetFieldName();
if (g_bIsNew)
{
var Fiel
dLabel = GetFieldLabel();
if (Fiel
dName == "" && FieldLabel != "")
FieldName = FieldLabel;
var NewF
ieldName = FieldName;
var Fiel
dNameIndex = 0;
while (g
_CallbackCode.DoesNameExistInCurrentForm(NewFieldName))
{
NewFieldName = FieldName + FieldNameIndex;
FieldNameIndex++;
}
// Creat
e the new field.
pIField
= g_pFields.IGrooveFormsToolFieldFactory.Create(FieldType, NewFieldName);
}
else
{
// Open
the existing field.
var pIOl
dField = g_pFields.OpenByName(FieldName);
pIField
= pIOldField.CreateCopyForEdit();
}
// Set all of th
e properties on the field.
SetFieldProperti
es(pIField);
// Add or update
the field in the fields collection object.
if (g_bIsNew)
g_pField
s.Add(pIField);
else
pIOldFie
ld.Update(pIField);
// Add the field
to the session list, for adding to views.
if (g_bIsNew)
g_Callba
ckCode.AddFieldToSessionList(pIField);
// Update the li
st box with the appropriate info.
g_CallbackCode.U
pdateFormFieldsListViewItem(pIField, g_bIsNew);
}
function GetFieldPropert
ies(i_FieldName, i_PropertyName)
{
// Open the fiel
d to get the property from.
var pIField = g_
pFields.OpenByName(i_FieldName);
// These propert
ies are directly on the field object.
if (i_PropertyNa
me == "Label")
return p
IField.RichTextLabel;
else if (i_Prope
rtyName == "LabelPosition")
return p
IField.LabelPosition;
// The lookup pr
operty has to be special cased.
if (i_PropertyNa
me == "Lookup")
return C
onvertToEscapedLookupString(g_CallbackCode.GetLookupTargetString(pIField.IGroove
FormsToolDesignObject.Name));
// All of the ot
her field types are on the specific type interface.
var FieldType =
pIField.FieldType;
switch (FieldTyp
e)
{
case Gro
oveFormsToolFieldType_Text:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForText", i_Pro
pertyName);
case Gro
oveFormsToolFieldType_MultiLineText:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForMultiLineTex
t", i_PropertyName);
case Gro
oveFormsToolFieldType_Number:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForNumber", i_P
ropertyName);
case Gro
oveFormsToolFieldType_UnformattedNumber:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForUnformattedN
umber", i_PropertyName);
case Gro
oveFormsToolFieldType_Currency:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForCurrency", i
_PropertyName);
case Gro
oveFormsToolFieldType_Date:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForDate", i_Pro
pertyName);
case Gro
oveFormsToolFieldType_DateTime:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForDateTime", i
_PropertyName);
case Gro
oveFormsToolFieldType_OptionButtons:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForOptionButton
s", i_PropertyName);
case Gro
oveFormsToolFieldType_CheckBox:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForCheckBox", i
_PropertyName);
case Gro
oveFormsToolFieldType_DropDownList:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForDropDownList
", i_PropertyName);
case Gro
oveFormsToolFieldType_ListBox:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForListBox", i_
PropertyName);
case Gro
oveFormsToolFieldType_Password:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForPassword", i
_PropertyName);
case Gro
oveFormsToolFieldType_RichText:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForRichText", i
_PropertyName);
case Gro
oveFormsToolFieldType_Attachments:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForAttachments"
, i_PropertyName);
case Gro
oveFormsToolFieldType_FormHeading:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForFormHeading"
, i_PropertyName);
case Gro
oveFormsToolFieldType_SectionHeading:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForSectionHeadi
ng", i_PropertyName);
case Gro
oveFormsToolFieldType_StaticText:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForStaticText",
i_PropertyName);
case Gro
oveFormsToolFieldType_HorizontalLine:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForHorizontalLi
ne", i_PropertyName);
case Gro
oveFormsToolFieldType_ScriptButton:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForScriptButton
", i_PropertyName);
case Gro
oveFormsToolFieldType_Image:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForImage", i_Pr
opertyName);
case Gro
oveFormsToolFieldType_NewLine:
case Gro
oveFormsToolFieldType_SystemField:
// These field types have no properties.
case Gro
oveFormsToolFieldType_Contact:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForContact", i_
PropertyName);
case Gro
oveFormsToolFieldType_EmbeddedView:
return GetFieldProperty(pIField, "IGrooveFormsToolFieldPropertiesForEmbeddedView
", i_PropertyName);
}
}
function ConvertToEscape
dLookupString(i_LookupString)
{
var QueryString
= "";
var NameValueArr
ay = i_LookupString.split("&");
for (var i = 0;
i < NameValueArray.length; i++)
{
var Name
ValuePair = NameValueArray[i].split("=");
if (Name
ValuePair != "")
{
var Name = ConvertToOriginalName(NameValuePair[0]);
var Value = ConvertToOriginalName(NameValuePair[1]);

if (QueryString != "")
QueryString += "&";

QueryString += escape(Name) + "=" + escape(Value);


}
}
return QueryStri
ng;
}
function ConvertToXMLLoo
kupString(i_LookupString)
{
var QueryString
= "";
var NameValueArr
ay = i_LookupString.split("&");
for (var i = 0;
i < NameValueArray.length; i++)
{
var Name
ValuePair = NameValueArray[i].split("=");
if (Name
ValuePair != "")
{
var Name = unescape(NameValuePair[0]);
var Value = unescape(NameValuePair[1]);

if (QueryString != "")
QueryString += "&";

QueryString += CreateValidXMLName(Name) + "=" + CreateValidXMLName(Value);


}
}
return QueryStri
ng;
}
function GetFieldPropert
y(i_pIField, i_QI, i_PropertyName)
{
if (i_PropertyNa
me == "Validation")
i_Proper
tyName = "OpenValidation()";
if (typeof eval(
"i_pIField." + i_QI) != "undefined")
return e
val("i_pIField." + i_QI + "." + i_PropertyName);
}
function SetFieldPropert
ies(i_pIField)
{
try
{
if (g_Pr
opertyLabelInstance && g_PropertyLabelPositionInstance && g_PropertyIsRichTextLa
belInstance)
{
var IsRichTextLabel = g_PropertyIsRichTextLabelInstance.PropertyValue;
if (!IsRichTextLabel)
{
var LabelValue = g_PropertyLabelInstance.PropertyValue;
if (LabelValue != null)
i_pIField.Label = String(LabelValue).replace(/[\n\r]/g, "");
else
i_pIField.Label = "";
}
else
i_pIField.RichTextLabel = g_PropertyLabelInstance.PropertyValue;

i_pIField.LabelPosition = g_PropertyLabelPositionInstance.PropertyValue;
i_pIField.IsRichTextLabel = IsRichTextLabel;
}
var Fiel
dType = GetCurrentFieldType();
switch (
FieldType)
{
case GrooveFormsToolFieldType_Text:
var pITextField = i_pIField.IGrooveFormsToolFieldPropertiesForText;

var InitialValueType = GetInitialValueTypePropertyValueByName(g_PropertyArray, "


InitialValue");
if (InitialValueType == GrooveFormsToolTextFieldInitialValueType_Static)
pITextField.InitialValue = GetPropertyValueByName(g_PropertyArray, "InitialValue
");
else if (InitialValueType == GrooveFormsToolTextFieldInitialValueType_Function)
pITextField.InitialValueFunction = GetInitialValueFunctionPropertyValueByName(g_
PropertyArray, "InitialValue");
pITextField.InitialValueType = InitialValueType;
var MaxLength = GetValidNumberPropertyValue(GetPropertyValueByName(g_PropertyArr
ay, "MaximumLength"));
if (MaxLength > 750)
MaxLength = 750;
pITextField.MaximumLength = MaxLength;
pITextField.Width = GetValidNumberPropertyValue(GetPropertyValueByName(g_Propert
yArray, "Width"));
pITextField.WidthType = GetValidNumberPropertyValue(GetSizeTypePropertyValueByNa
me(g_PropertyArray, "Width"));
pITextField.SetValidation(g_ValidationScriptInstance.PropertyValue, g_Validation
ScriptInstance.PropertyParameter);
SetLookupFieldProperty(pITextField, g_PropertyArray);
break;
case GrooveFormsToolFieldType_MultiLineText:
var pIMultiLineTextField = i_pIField.IGrooveFormsToolFieldPropertiesForMultiLine
Text;
pIMultiLineTextField.Height = GetValidNumberPropertyValue(GetPropertyValueByName
(g_PropertyArray, "Height"));
pIMultiLineTextField.HeightType = GetValidNumberPropertyValue(GetSizeTypePropert
yValueByName(g_PropertyArray, "Height"));
pIMultiLineTextField.InitialValue = GetPropertyValueByName(g_PropertyArray, "Ini
tialValue");
pIMultiLineTextField.Width = GetValidNumberPropertyValue(GetPropertyValueByName(
g_PropertyArray, "Width"));
pIMultiLineTextField.WidthType = GetValidNumberPropertyValue(GetSizeTypeProperty
ValueByName(g_PropertyArray, "Width"));
pIMultiLineTextField.SetValidation(g_ValidationScriptInstance.PropertyValue, g_V
alidationScriptInstance.PropertyParameter);
SetLookupFieldProperty(pIMultiLineTextField, g_PropertyArray);
break;
case GrooveFormsToolFieldType_Number:
var pINumberField = i_pIField.IGrooveFormsToolFieldPropertiesForNumber;
pINumberField.InitialValue = GetValidInitialNumberPropertyValue(GetPropertyValue
ByName(g_PropertyArray, "InitialValue"));
var MaxLength = GetValidNumberPropertyValue(GetPropertyValueByName(g_PropertyArr
ay, "MaximumLength"));
if (MaxLength > 128)
MaxLength = 128;
pINumberField.MaximumLength = MaxLength;
pINumberField.MaximumValue = GetValidNumberPropertyValue(g_ValidationMaxInstance
.PropertyValue);
pINumberField.MinimumValue = GetValidNumberPropertyValue(g_ValidationMinInstance
.PropertyValue);
pINumberField.Precision = GetValidNumberPropertyValue(GetPropertyValueByName(g_P
ropertyArray, "Precision"));
pINumberField.Width = GetValidNumberPropertyValue(GetPropertyValueByName(g_Prope
rtyArray, "Width"));
pINumberField.WidthType = GetValidNumberPropertyValue(GetSizeTypePropertyValueBy
Name(g_PropertyArray, "Width"));
break;
case GrooveFormsToolFieldType_UnformattedNumber:
var pIUnformattedNumberField = i_pIField.IGrooveFormsToolFieldPropertiesForUnfor
mattedNumber;
pIUnformattedNumberField.InitialValue = GetValidInitialNumberPropertyValue(GetPr
opertyValueByName(g_PropertyArray, "InitialValue"));
var MaxLength = GetValidNumberPropertyValue(GetPropertyValueByName(g_PropertyArr
ay, "MaximumLength"));
if (MaxLength > 128)
MaxLength = 128;
pIUnformattedNumberField.MaximumLength = MaxLength;
pIUnformattedNumberField.MaximumValue = GetValidNumberPropertyValue(g_Validation
MaxInstance.PropertyValue);
pIUnformattedNumberField.MinimumValue = GetValidNumberPropertyValue(g_Validation
MinInstance.PropertyValue);
pIUnformattedNumberField.Width = GetValidNumberPropertyValue(GetPropertyValueByN
ame(g_PropertyArray, "Width"));
pIUnformattedNumberField.WidthType = GetValidNumberPropertyValue(GetSizeTypeProp
ertyValueByName(g_PropertyArray, "Width"));
break;
case GrooveFormsToolFieldType_Currency:
var pICurrencyField = i_pIField.IGrooveFormsToolFieldPropertiesForCurrency;
pICurrencyField.InitialValue = GetValidInitialNumberPropertyValue(GetPropertyVal
ueByName(g_PropertyArray, "InitialValue"));
var MaxLength = GetValidNumberPropertyValue(GetPropertyValueByName(g_PropertyArr
ay, "MaximumLength"));
if (MaxLength > 128)
MaxLength = 128;
pICurrencyField.MaximumLength = MaxLength;
pICurrencyField.MaximumValue = GetValidNumberPropertyValue(g_ValidationMaxInstan
ce.PropertyValue);
pICurrencyField.MinimumValue = GetValidNumberPropertyValue(g_ValidationMinInstan
ce.PropertyValue);
pICurrencyField.Precision = GetValidNumberPropertyValue(GetPropertyValueByName(g
_PropertyArray, "Precision"));
pICurrencyField.Symbol = GetPropertyValueByName(g_PropertyArray, "Symbol");
pICurrencyField.Width = GetValidNumberPropertyValue(GetPropertyValueByName(g_Pro
pertyArray, "Width"));
pICurrencyField.WidthType = GetValidNumberPropertyValue(GetSizeTypePropertyValue
ByName(g_PropertyArray, "Width"));
break;
case GrooveFormsToolFieldType_Date:
var pIDateField = i_pIField.IGrooveFormsToolFieldPropertiesForDate;

var InitialValueType = GetInitialValueTypePropertyValueByName(g_PropertyArray, "


InitialValue");
if (typeof InitialValueType == "undefined" || InitialValueType == null)
{
pIDateField.InitialValue = INVALID_DATE;
pIDateField.InitialValueType = GrooveFormsToolDateFieldInitialValueType_Static;
}
else if (new Date(GetPropertyValueByName(g_PropertyArray, "InitialValue")).value
Of() != INVALID_DATE)
{
if (InitialValueType == GrooveFormsToolDateFieldInitialValueType_Static)
{
// Set the time to noon to hopefully handle time zones a little better.
var InitialDate = new Date(GetPropertyValueByName(g_PropertyArray, "InitialValue
"));
InitialDate.setHours(12);
InitialDate.setMinutes(0);
InitialDate.setSeconds(0);
pIDateField.InitialValue = InitialDate.valueOf();
}
else if (InitialValueType == GrooveFormsToolDateFieldInitialValueType_Function)
pIDateField.InitialValueFunction = GetInitialValueFunctionPropertyValueByName(g_
PropertyArray, "InitialValue");
else
pIDateField.InitialValue = INVALID_DATE;
pIDateField.InitialValueType = InitialValueType;
}

pIDateField.EarliestDate = GetValidDatePropertyValue(g_ValidationMinInstance.Pro
pertyValue);
pIDateField.LatestDate = GetValidDatePropertyValue(g_ValidationMaxInstance.Prope
rtyValue);
var Format = GetValidNumberPropertyValue(GetPropertyValueByName(g_PropertyArray,
"Format"));
pIDateField.Format = Format == -1 ? 3 : Format;
pIDateField.Width = GetValidNumberPropertyValue(GetPropertyValueByName(g_Propert
yArray, "Width"));
pIDateField.WidthType = GetValidNumberPropertyValue(GetSizeTypePropertyValueByNa
me(g_PropertyArray, "Width"));
break;
case GrooveFormsToolFieldType_DateTime:
var pIDateTimeField = i_pIField.IGrooveFormsToolFieldPropertiesForDateTime;

var InitialValueType = GetInitialValueTypePropertyValueByName(g_PropertyArray, "


InitialValue");
if (typeof InitialValueType == "undefined" || InitialValueType == null)
{
pIDateTimeField.InitialValue = INVALID_DATE;
pIDateTimeField.InitialValueType = GrooveFormsToolDateTimeFieldInitialValueType_
Static;
}
else
{
if (InitialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Static)
pIDateTimeField.InitialValue = GetPropertyValueByName(g_PropertyArray, "InitialV
alue");
else if (InitialValueType == GrooveFormsToolDateTimeFieldInitialValueType_Functi
on)
pIDateTimeField.InitialValueFunction = GetInitialValueFunctionPropertyValueByNam
e(g_PropertyArray, "InitialValue");
else
pIDateTimeField.InitialValue = INVALID_DATE;
pIDateTimeField.InitialValueType = InitialValueType;
}

pIDateTimeField.EarliestDate = GetValidDatePropertyValue(g_ValidationMinInstance
.PropertyValue);
pIDateTimeField.LatestDate = GetValidDatePropertyValue(g_ValidationMaxInstance.P
ropertyValue);
var Format = GetValidNumberPropertyValue(GetPropertyValueByName(g_PropertyArray,
"Format"));
pIDateTimeField.Format = Format == -1 ? 3 : Format;
pIDateTimeField.Width = GetValidNumberPropertyValue(GetPropertyValueByName(g_Pro
pertyArray, "Width"));
pIDateTimeField.WidthType = GetValidNumberPropertyValue(GetSizeTypePropertyValue
ByName(g_PropertyArray, "Width"));
break;
case GrooveFormsToolFieldType_OptionButtons:
var pIOptionButtonsField = i_pIField.IGrooveFormsToolFieldPropertiesForOptionBut
tons;
pIOptionButtonsField.Buttons = GetPropertyValueEnumByName(g_PropertyArray, "Butt
ons");
pIOptionButtonsField.DefaultSelection = GetDefaultSelectionPropertyValue(g_Prope
rtyArray, "Buttons");
break;
case GrooveFormsToolFieldType_CheckBox:
var pICheckBoxField = i_pIField.IGrooveFormsToolFieldPropertiesForCheckBox;
pICheckBoxField.IsCheckedByDefault = GetPropertyValueByName(g_PropertyArray, "Is
CheckedByDefault");
pICheckBoxField.StoredValue = GetPropertyValueByName(g_PropertyArray, "StoredVal
ue");
break;
case GrooveFormsToolFieldType_DropDownList:
var pIDropDownListField = i_pIField.IGrooveFormsToolFieldPropertiesForDropDownLi
st;
pIDropDownListField.AllowUserDefinedValues = GetPropertyValueByName(g_PropertyAr
ray, "AllowUserDefinedValues");
pIDropDownListField.IncludeBlankEntry = GetPropertyValueByName(g_PropertyArray,
"IncludeBlankEntry");
pIDropDownListField.IncludeMemberNames = GetPropertyValueByName(g_PropertyArray,
"IncludeMemberNames");
pIDropDownListField.Options = GetPropertyValueEnumByName(g_PropertyArray, "Optio
ns");
pIDropDownListField.DefaultSelection = GetDefaultSelectionPropertyValue(g_Proper
tyArray, "Options");
SetLookupFieldProperty(pIDropDownListField, g_PropertyArray);
break;
case GrooveFormsToolFieldType_ListBox:
var pIListBoxField = i_pIField.IGrooveFormsToolFieldPropertiesForListBox;
pIListBoxField.AllowMultipleSelection = GetPropertyValueByName(g_PropertyArray,
"AllowMultipleSelection");
pIListBoxField.IncludeBlankEntry = GetPropertyValueByName(g_PropertyArray, "Incl
udeBlankEntry");
pIListBoxField.IncludeMemberNames = GetPropertyValueByName(g_PropertyArray, "Inc
ludeMemberNames");
pIListBoxField.NumberVisible = GetValidNumberPropertyValue(GetPropertyValueByNam
e(g_PropertyArray, "NumberVisible"));
pIListBoxField.Options = GetPropertyValueEnumByName(g_PropertyArray, "Options");
pIListBoxField.DefaultSelection = GetDefaultSelectionPropertyValue(g_PropertyArr
ay, "Options");
SetLookupFieldProperty(pIListBoxField, g_PropertyArray);
break;
case GrooveFormsToolFieldType_Password:
var pIPasswordField = i_pIField.IGrooveFormsToolFieldPropertiesForPassword;
pIPasswordField.InitialValue = GetPropertyValueByName(g_PropertyArray, "InitialV
alue");
var MaxLength = GetValidNumberPropertyValue(GetPropertyValueByName(g_PropertyArr
ay, "MaximumLength"));
if (MaxLength > 750)
MaxLength = 750;
pIPasswordField.MaximumLength = MaxLength;
pIPasswordField.Width = GetValidNumberPropertyValue(GetPropertyValueByName(g_Pro
pertyArray, "Width"));
pIPasswordField.WidthType = GetValidNumberPropertyValue(GetSizeTypePropertyValue
ByName(g_PropertyArray, "Width"));
pIPasswordField.SetValidation(g_ValidationScriptInstance.PropertyValue, g_Valida
tionScriptInstance.PropertyParameter);
break;
case GrooveFormsToolFieldType_RichText:
var pIRichTextField = i_pIField.IGrooveFormsToolFieldPropertiesForRichText;
pIRichTextField.Height = GetValidNumberPropertyValue(GetPropertyValueByName(g_Pr
opertyArray, "Height"));
pIRichTextField.HeightType = GetValidNumberPropertyValue(GetSizeTypePropertyValu
eByName(g_PropertyArray, "Height"));
pIRichTextField.IsBorderHidden = GetPropertyValueByName(g_PropertyArray, "IsBord
erHidden");
pIRichTextField.IsSearchable = GetPropertyValueByName(g_PropertyArray, "IsSearch
able");
pIRichTextField.IsCommandBarHidden = GetPropertyValueByName(g_PropertyArray, "Is
CommandBarHidden");
pIRichTextField.BackgroundColor = GetPropertyValueByName(g_PropertyArray, "Backg
roundColor");
var RichTextInitialValue = GetPropertyValueByName(g_PropertyArray, "InitialValue
");
if (typeof RichTextInitialValue != "undefined")
pIRichTextField.InitialValue = RichTextInitialValue;
pIRichTextField.Width = GetValidNumberPropertyValue(GetPropertyValueByName(g_Pro
pertyArray, "Width"));
pIRichTextField.WidthType = GetValidNumberPropertyValue(GetSizeTypePropertyValue
ByName(g_PropertyArray, "Width"));
break;
case GrooveFormsToolFieldType_Contact:
var pIContactField = i_pIField.IGrooveFormsToolFieldPropertiesForContact;
pIContactField.IsAwarenessIconHidden = GetPropertyValueByName(g_PropertyArray, "
IsAwarenessIconHidden");
pIContactField.IsContextMenuHidden = GetPropertyValueByName(g_PropertyArray, "Is
ContextMenuHidden");
pIContactField.UseAuthenticationColor = GetPropertyValueByName(g_PropertyArray,
"UseAuthenticationColor");
break;
case GrooveFormsToolFieldType_EmbeddedView:
var pIEmbeddedViewField = i_pIField.IGrooveFormsToolFieldPropertiesForEmbeddedVi
ew;
pIEmbeddedViewField.EmbeddedViewID = GetPropertyValueByName(g_PropertyArray, "Em
beddedViewID");
pIEmbeddedViewField.EmbeddedViewFilter = g_ViewFilter;
pIEmbeddedViewField.Height = GetValidNumberPropertyValue(GetPropertyValueByName(
g_PropertyArray, "Height"));
pIEmbeddedViewField.HeightType = GetValidNumberPropertyValue(GetSizeTypeProperty
ValueByName(g_PropertyArray, "Height"));
pIEmbeddedViewField.Width = GetValidNumberPropertyValue(GetPropertyValueByName(g
_PropertyArray, "Width"));
pIEmbeddedViewField.WidthType = GetValidNumberPropertyValue(GetSizeTypePropertyV
alueByName(g_PropertyArray, "Width"));
break;
case GrooveFormsToolFieldType_FormHeading:
var pIFormHeadingField = i_pIField.IGrooveFormsToolFieldPropertiesForFormHeading
;
pIFormHeadingField.Center = GetPropertyValueByName(g_PropertyArray, "Center");
pIFormHeadingField.HeadingText = GetPropertyValueByName(g_PropertyArray, "Headin
gText");
break;
case GrooveFormsToolFieldType_SectionHeading:
var pISectionHeadingField = i_pIField.IGrooveFormsToolFieldPropertiesForSectionH
eading;
pISectionHeadingField.Center = GetPropertyValueByName(g_PropertyArray, "Center")
;
pISectionHeadingField.HeadingText = GetPropertyValueByName(g_PropertyArray, "Hea
dingText");
break;
case GrooveFormsToolFieldType_StaticText:
var pIStaticTextField = i_pIField.IGrooveFormsToolFieldPropertiesForStaticText;
pIStaticTextField.Center = GetPropertyValueByName(g_PropertyArray, "Center");

if (!g_IsRichText)
{
var TextValue = GetPropertyValueByName(g_PropertyArray, "Text");
if (TextValue != null)
pIStaticTextField.Text = String(TextValue).replace(/[\n\r]/g, "");
else
pIStaticTextField.Text = "";
}
else
pIStaticTextField.RichText = GetPropertyValueByName(g_PropertyArray, "Text");

pIStaticTextField.IsRichText = g_IsRichText;
SetLookupFieldProperty(pIStaticTextField, g_PropertyArray);
break;
case GrooveFormsToolFieldType_HorizontalLine:
var pIHorizontalLineField = i_pIField.IGrooveFormsToolFieldPropertiesForHorizont
alLine;
pIHorizontalLineField.IsUnshaded = GetPropertyValueByName(g_PropertyArray, "IsUn
shaded");
pIHorizontalLineField.Thickness = GetValidNumberPropertyValue(GetPropertyValueBy
Name(g_PropertyArray, "Thickness"));
break;
case GrooveFormsToolFieldType_ScriptButton:
var pIScriptButtonField = i_pIField.IGrooveFormsToolFieldPropertiesForScriptButt
on;
pIScriptButtonField.ButtonText = GetPropertyValueByName(g_PropertyArray, "Button
Text");
pIScriptButtonField.OnClickScript = GetPropertyValueByName(g_PropertyArray, "OnC
lickScript");
break;
case GrooveFormsToolFieldType_Image:
var pIImageField = i_pIField.IGrooveFormsToolFieldPropertiesForImage;
pIImageField.AltText = GetPropertyValueByName(g_PropertyArray, "AltText");
pIImageField.BorderSize = GetValidNumberPropertyValue(GetPropertyValueByName(g_P
ropertyArray, "BorderSize"));
pIImageField.Center = GetPropertyValueByName(g_PropertyArray, "Center");
if (g_ImageContents != null)
{
pIImageField.ImageContents = g_ImageContents;
g_ImageContents = null;
}
break;
case GrooveFormsToolFieldType_NewLine:
case GrooveFormsToolFieldType_SystemField:
case GrooveFormsToolFieldType_Attachments:
// These field types have no properties.
}
}
catch (error)
{
GrooveDe
bugFunctions.DisplayAssert(0, g_UIDelegate.IGrooveFormsToolUIDelegatePrivate.Get
ResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_FLD_PROP_ERR));
}
}
function SetLookupFieldP
roperty(i_Field, i_PropertyArray)
{
var LookupString
= GetPropertyValueByName(i_PropertyArray, "Lookup");
if (typeof Looku
pString != "undefined" && LookupString != null && LookupString != "")
{
LookupSt
ring = ConvertToXMLLookupString(LookupString);
var Look
upTargetDisplayName = GenerateLookupTargetDisplayName(LookupString);
var Comm
ent = GetValueFromQueryString("Comment", LookupString);
i_Field.
SetViewColumnLookupSettings(i_Field.IGrooveFormsToolDesignObject.Name, LookupStr
ing, LookupTargetDisplayName, Comment);
}
else
i_Field.
RemoveViewColumnLookupSettings();
}
function GetValidInitial
NumberPropertyValue(i_Value)
{
if (typeof i_Val
ue != "undefined" && i_Value != null && i_Value.toString() != "")
return i
_Value;
else
return 0
;
}
function GetValidNumberP
ropertyValue(i_Value)
{
if (typeof i_Val
ue != "undefined" && i_Value != null && i_Value.toString() != "")
return i
_Value;
else
return -
1;
}
function GetValidDatePro
pertyValue(i_Value)
{
if (typeof i_Val
ue != "undefined" && i_Value != null && i_Value.toString() != "")
return i
_Value;
else
return I
NVALID_DATE;
}
function GetPropertyValu
eByName(i_PropertyArray, i_Name)
{
for (var i = 0;
i < i_PropertyArray.length; i++)
{
var Prop
erty = i_PropertyArray[i];
if (type
of Property != "undefined" && Property != null && Property.Name == i_Name)
{
var PropertyValue = i_PropertyArray[i].PropertyValue;
if (typeof PropertyValue == "undefined" || PropertyValue == null || (typeof Prop
ertyValue.toString != "undefined" && PropertyValue.toString() == ""))
return;
else
return PropertyValue;
}
}
}
function GetInitialValue
TypePropertyValueByName(i_PropertyArray, i_Name)
{
for (var i = 0;
i < i_PropertyArray.length; i++)
{
var Prop
erty = i_PropertyArray[i];
if (type
of Property != "undefined" && Property != null && Property.Name == i_Name)
{
var PropertyInitialValueType = i_PropertyArray[i].PropertyInitialValueType;
if (typeof PropertyInitialValueType == "undefined" || PropertyInitialValueType =
= null || (typeof PropertyInitialValueType.toString != "undefined" && PropertyIn
itialValueType.toString() == ""))
return;
else
return PropertyInitialValueType;
}
}
}
function GetInitialValue
FunctionPropertyValueByName(i_PropertyArray, i_Name)
{
for (var i = 0;
i < i_PropertyArray.length; i++)
{
var Prop
erty = i_PropertyArray[i];
if (type
of Property != "undefined" && Property != null && Property.Name == i_Name)
{
var PropertyInitialValueFunction = i_PropertyArray[i].PropertyInitialValueFuncti
on;
if (typeof PropertyInitialValueFunction == "undefined" || PropertyInitialValueFu
nction == null || (typeof PropertyInitialValueFunction.toString != "undefined" &
& PropertyInitialValueFunction.toString() == ""))
return;
else
return PropertyInitialValueFunction;
}
}
}
function GetSizeTypeProp
ertyValueByName(i_PropertyArray, i_Name)
{
for (var i = 0;
i < i_PropertyArray.length; i++)
{
var Prop
erty = i_PropertyArray[i];
if (type
of Property != "undefined" && Property != null && Property.Name == i_Name)
{
var PropertySizeType = i_PropertyArray[i].PropertySizeType;
if (typeof PropertySizeType == "undefined" || PropertySizeType == null || (typeo
f PropertySizeType.toString != "undefined" && PropertySizeType.toString() == "")
)
return;
else
return PropertySizeType;
}
}
}
function GetPropertyValu
eBoolean(i_Value)
{
if (typeof i_Val
ue != "undefined" && i_Value != null && i_Value != "")
return i
_Value;
else
return f
alse;
}
function GetPropertyValu
eEnumByName(i_PropertyArray, i_Name)
{
var ValueEnum =
CreateStringStringEnum(false);
var ValueArray =
GetPropertyValueByName(i_PropertyArray, i_Name);
if (typeof Value
Array != "undefined" && ValueArray != null)
{
for (var
i = 0; i < ValueArray.length; i++)
{
ValueEnum.Add(ValueArray[i].Caption, ValueArray[i].Value);
}
}
return ValueEnum
.StringStringEnum;
}
function GetDefaultSelec
tionPropertyValue(i_PropertyArray, i_Name)
{
var SubPropertyA
rray = GetPropertyValueByName(i_PropertyArray, i_Name);
if (typeof SubPr
opertyArray != "undefined" && SubPropertyArray != null)
{
for (var
i = 0; i < SubPropertyArray.length; i++)
{
if (SubPropertyArray[i].Selected)
return SubPropertyArray[i].Caption;
}
}
}
function NeedToAddOption
()
{
if (PropertyValu
eEditControl.Text != "")
{
var inde
x = PropertiesListView.SelectionIndex;
var i =
PropertiesListView.GetItemData(index);
var Valu
eType = g_PropertyArray[i].Type;
if (Valu
eType == "SubProperty")
{
AddOption("", PropertyValueEditControl.Text, PropertyValueEditControl2.Text);
ResetOption();
}
}
}
function AddOptionButton
_OnCommand(i_UICommand)
{
if (PropertyValu
eEditControl.Text != "")
{
AddOptio
n("", PropertyValueEditControl.Text, PropertyValueEditControl2.Text);
ResetOpt
ion();
}
}
function AddOption(i_Fir
stColumn, i_SecondColumn, i_ThirdColumn)
{
var index;
if (!g_ModifyOpt
ion)
index =
ChoicesListView.AddItem(i_FirstColumn);
else
index =
ChoicesListView.SelectionIndex;
ChoicesListView.
SetItemText(index, 1, i_SecondColumn);
if (i_ThirdColum
n == "")
ChoicesL
istView.SetItemText(index, 2, i_SecondColumn);
else
ChoicesL
istView.SetItemText(index, 2, i_ThirdColumn);
g_ModifyOption =
false;
SetPropertyValue
();
}
function ModifyChoices()
{
var SelectionInd
ex = ChoicesListView.SelectionIndex;
if (SelectionInd
ex >= 0)
{
Property
ValueEditControl.Text = ChoicesListView.GetItemText(SelectionIndex, 1);
Property
ValueEditControl2.Text = ChoicesListView.GetItemText(SelectionIndex, 2);
}
g_ModifyOption =
true;
}
function ListObject()
{
this.Display;
this.Value;
this.Default;
}
function SortListButton_
OnCommand(i_UICommand)
{
var ListArray =
new Array();
var i = 0;
var iCount = Cho
icesListView.Count;
while (i < iCoun
t)
{
var List
Obj = new ListObject;
ListObj.
Display = ChoicesListView.GetItemText(i, 1);
ListObj.
Value = ChoicesListView.GetItemText(i, 2);
ListObj.
Default = ChoicesListView.GetItemText(i, 0);
ListArra
y[i] = ListObj;
i++;
}
ListArray.sort(C
ompareList);
ChoicesListView.
ResetContent();
var i = 0;
var iCount = Lis
tArray.length;
while (i < iCoun
t)
{
var Inde
x = ChoicesListView.AddItem(ListArray[i].Default);
ChoicesL
istView.SetItemText(Index, 1, ListArray[i].Display);
ChoicesL
istView.SetItemText(Index, 2, ListArray[i].Value);
i++;
}
SetPropertyValue
();
}
function CompareList(Lis
tObjA, ListObjB)
{
return g_Callbac
kCode.CompareStringsWithLocale(ListObjA.Display, ListObjB.Display);
}
qu urn:groove.net:PropertyList( EnforceIn
terfaces0  __Version4,1,0,0($Surn:groove.net:Component
  Name(FPOuterViewContainer  u
ponentResource # urn:groove.net:ComponentConnections
 urn:groove.net:PropertyList{   urn:groove.net:ComponentResource URL6http://components.groov
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=ViewContainer]
# urn:groove.net:ComponentConnections urn:groove.net:Connectionm urn:groove.net:Connection

 ConnectionID0 NameOuterLayout  urn:groove.net:PropertyList PreferredHeight675 PreferredWidth
_Version4,1,0,0 urn:groove.net:Component NameOuterLayout  urn:groove.net:ComponentResource
t:PropertyList   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Co
nents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_D
LL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList  __Version4,1,0,0
G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTI 
ageTitle5 ROW CELL CELL| CELL WIDTH310 HEIGHT18s LeftPad10 PropertyInstructionsLabelC
iewContainer( ROW CELL   CELL HEIGHT41 NAME8ApplyButtonViewContainerCellr ApplyButtonView
ontainer- CELL WIDTH5   CELL WIDTH195 TopPad5  BottomPad10TabOrder
 2
 CancelButton1 CELL WIDTH10 Q urn:groove.net:Component Name(LookupColumnComboBoxro  urn:gr
rceRsR  urn:groove.net:ComponentResourceQ URL,http://components.groove.net/Groove/Component
s/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&V
ersion=0&Factory=ComboBox
 
  
  urn:groove.net:Component Name,FieldPropertiesSubFormr  urn:groove.net:ComponentResource u
omponentGroupo  urn:groove.net:ComponentResource URL*http://components.groove.net/Groove/Comp
nents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_D
LL&Version=0&Factory=SubForm urn:groove.net:ComponentGroup HelpInfoProviderRTFHelpProviderDel 
te&FieldPropertiesGlue DefaultView(FPOuterViewContainer  urn:groove.net:Component  urn:groove.
net:Component urn:groove.net:Component$ urn:groove.net:Component( urn:groove.net:Component4 u
groove.net:Component9 urn:groove.net:ComponentC urn:groove.net:ComponentM urn:groove.net:Com
ponentS urn:groove.net:ComponentZ urn:groove.net:Componenta urn:groove.net:Componenth urn:gro
.net:Componento urn:groove.net:Componentv urn:groove.net:Componentz urn:groove.net:Component
groove.net:Component  urn:groove.net:Component  urn:groove.net:Component urn:groove.net:Comp
groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Comp
groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Comp
groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Comp
groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Compone
( urn:groove.net:Component5 urn:groove.net:Component? urn:groove.net:ComponentO urn:groove.ne
omponent[ urn:groove.net:Componentd urn:groove.net:Componentn urn:groove.net:Component{ urn:g
ve.net:Component  urn:groove.net:Component  urn:groove.net:Component urn:groove.net:Componen
ve.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Componen
ve.net:Component
urn:groove.net:Component  urn:groove.net:Component
 urn:groove.net:Component urn:groove.net:Component urn:groove.net:Co
t  urn:groove.net:Component& urn:groove.net:Component* urn:groove.net:Component3 urn:groove.n
Component9 urn:groove.net:Component= urn:groove.net:ComponentF urn:groove.net:ComponentR urn:
ove.net:ComponentX urn:groove.net:Component^ urn:groove.net:Componentd urn:groove.net:Compon
entj urn:groove.net:Componentp urn:groove.net:Componentu urn:groove.net:Component{ urn:groove
t:Component  urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component  ur
t:Component  urn:groove.net:Component  urn:groove.net:Component urn:groove.net:Component ur
t:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component ur
t:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component ur
t:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component ur
t:Component urn:groove.net:Component
 urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Co
t( urn:groove.net:Component urn:groove.net:Component urn:groove.net:Com pponent urn:groov
groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Comp
groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Componen
groove.net:Component urn:groove.net:Component  urn:groove.net:Component0 urn:groove.net:Compo
nent6 urn:groove.net:Component8 urn:groove.net:Component> urn:groove.net:ComponentE urn:groov
et:ComponentK urn:groove.net:ComponentQ urn:groove.net:ComponentS urn:groove.net:ComponentY u
groove.net:Component_ urn:groove.net:Componente urn:groove.net:Componentk urn:groove.net:Com
ponentq urn:groove.net:Componentv urn:groove.net:Component{ urn:groove.net:Component  urn:gro
et:Component  urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component u
et:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component u
et:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component u
et:Component urn:groove.net:Component$ urn:groove.net:Component Name0ApplyButtonViewContain
e.net:ComponentResource%# urn:groove.net:ComponentConnections&{%  urn:groove.net:Compone
ntResource$ URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.gr
oove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewCont
ainer]&# urn:groove.net:ComponentConnections$ urn:groove.net:Connection'y' urn:groove.net:Con
nection&
 ConnectionID0 Name"ApplyButtonLayout
( urn:groove.net:Component Name"ApplyButtonLayout  urn:groove.net:ComponentResource) urn:gro
t:PropertyList )   urn:groove.net:ComponentResource( URL:http://components.groove.net/Groove/
mponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponent
s_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList(  __Version4,1,0,0
G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  8M
0( ROW CELLT CELL HEIGHT7 TopPad3 ButtonSeparator@    S  4 urn:groove.net:Component Name6
esource5# urn:groove.net:ComponentConnections6 urn:groove.net:PropertyList {5  urn:groov
e.net:ComponentResource4 URL6http://components.groove.net/Groove/Components/Root.osd?P
ackage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fac
tory=ViewContainer]6# urn:groove.net:ComponentConnections4 urn:groove.net:Connection7 7  urn:g
ove.net:Connection6
 ConnectionID0 Name(BackNextButtonLayout/cT  urn:groove.net:PropertyList4  __Version4,1
9 urn:groove.net:Component Name(BackNextButtonLayout/c  urn:groove.net:ComponentResource: ur
ve.net:PropertyList
 :  urn:groove.net:ComponentResource9 URL:http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=MultiCellLayoutx
 urn:groove.net:PropertyList9  __Version4,1,0,0  _G_Layout LayoutC Layout
 urn:groove.net:PropertyValue
E
 MULTIROW
,urn:groove.net:PropertyValue MULTIROW

 ROW CELLB CELL
ROW  CELL  CELL WIDTH200 TopPad5  BottomPad10TabOrder  2
 BackButton- CELL WIDTH5  CELL WIDTH200 TopPad5  BottomPad10TabOrder  2
 NextButton
C urn:groove.net:Component Name$BackOKButtonLayoutck  urn:groove.net:ComponentResourceD urn:
.net:PropertyList D   urn:groove.net:ComponentResourceC URL:http://components.groove.net/Groov
/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompon
ents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyListC  __Version4
,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue M
0TabOrder
 2
 BackButton- CELL WIDTH5} CELL WIDTH200 TopPad5  BottomPad10TabOrder  2OKButton
 }  urn:groove.n
net:ComponentResource o    urn:groove.net:ComponentResource  URL*http://components.groove.net/
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=ListBox  D       M urn:groove.net:Component NamePageTitle
:groove.net:PropertyListoN  urn:groove.net:ComponentResourceM URL(http://components.groove.n
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=Static urn:groove.net:PropertyListM
 VAlignment
Centere Label Create New Fieldu  FontStyleDialogTitleText  __Version4,1,0,0S urn:groo
omponent NameBackButtonw  urn:groove.net:ComponentResourceT urn:groove.net:PropertyListoT  ur
e.net:ComponentResourceS URL(http://components.groove.net/Groove/Components/Root.osd?P
ackage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fac
tory=Buttone urn:groove.net:PropertyListS Enabled
False  __Version4,1,0,0 Label< &BackMnemonic 
Alt+B StyleStandardButtonbZ urn:groove.net:Component NameNextButtonne  urn:groove.net:Compo
e[ urn:groove.net:PropertyListo[  urn:groove.net:ComponentResourceZ URL(http://components.gro
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyListZ Enabled
False  __Version4,1,0,0 Label&Next >Mnemonic 
Alt+N StyleStandardButtonba urn:groove.net:Component NameApplyButton  urn:groove.net:Compon
b urn:groove.net:PropertyListob  urn:groove.net:ComponentResourcea URL(http://components.groo
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyLista EnabledTruea  _
_Version4,1,0,0 Label(&Save/Create anotherio Mnemonic
Alt+S StyleStandardButtonb h  urn:groove.net:Component NameOKButton:  urn:groove.net:Componen
groove.net:PropertyListoi  urn:groove.net:ComponentResourceh URL(http://components.groove.ne
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyListh Enabled
False  __Version4,1,0,0 Label&FinishMnemonic 
Alt+F StyleStandardButtonb  l    |    o urn:groove.net:Component NameCancelB
ove.net:PropertyListop  urn:groove.net:ComponentResourceo URL(http://components.groove.net/G
roove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonC
omponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyListo CancelTruea  __Ve
,1,0,0 Label&CancelMnemonic

Alt+C StyleStandardButtonbv urn:groove.net:Component NameButtonSeparator  urn:groove.net:Co
urcew urn:groove.net:PropertyList ow  urn:groove.net:ComponentResourcev URL(http://components
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=Static   urn:groove.net:PropertyListv Backgroun
dStyleSeparator  __Version4,1,0,0z urn:groove.net:Component Name$InnerViewContainer  urn:gr
ComponentResource{# urn:groove.net:ComponentConnections| urn:groove.net:PropertyList!{{  urn
:groove.net:ComponentResourcez URL6http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=ViewContainer]|# urn:groove.net:ComponentConnectionsz urn:groove.net:Connecti
on}m} urn:groove.net:Connection|
 ConnectionID
_G_Background0 NameInnerLayout ! urn:groove.net:PropertyListz  __Version4,1,0,0
 Background"I"
 Background! urn:groove.net:BackgroundStyle#g# urn:groove.net:BackgroundStyle" Style DialogBa
oundt  urn:groove.net:Component Name(SelectFieldTypeLabel:P  urn:groove.net:ComponentResour
.net:PropertyList1o   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groo
/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompon
ents_DLL&Version=0&Factory=Static1 urn:groove.net:PropertyList   BreakTypeSingleLine
ontStyleLabelText Label$Select Field Type:e  __Version4,1,0,0  urn:groove.net:Component
lueComboBox  urn:groove.net:ComponentResources  urn:groove.net:ComponentResource URL,http:
nents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompon
ents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox

    Z |      urn:groove.net:Component NameInnerLayout  urn:groove.net:ComponentResource
omponentResource  URL:http://components.groove.net/Groove/Components/Root.osd?Package=ne
t.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=HTML
TableLayoutx$ urn:groove.net:PropertyList   __Version4,1,0,0  _G_Layout Layout%C%
t:PropertyValue&B& urn:groove.net:PropertyValue% TABLE'I' TABLE& TR( TR* TR- TR/%( TR' TD) )
l0* TR' TD+ TD,~+ TD* WIDTH180 LeftPad5 TopPad5TabOrder  1 FieldTypeListView , TD* TopPad10Righ 
scriptionViewContainer%- TR' TD. . TD- HEIGHT23e COLSPAN2 TopPad5 LeftPad5 FieldTypeChangeWar
d5 HEIGHT34e  BottomPad5 FieldTypeChangeWarning  urn:groove.net:Component Name"FieldType
:ComponentResource  urn:groove.net:PropertyList2s   urn:groove.net:ComponentResource  URL,htt
onents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompo
2neurn:groove.net:PropertyList
nts.GrooveCommonComponents_DLMSCCWorkaroundColor
L&Version=0&Factory#=FLFiFsFtFVFiew5  __Version4,1,0,0 SingleSelec
lumnsResizable
FColumnHeaders
alse
False
 _G_Columns Columns3D3 Columns2 urn:groove.net:PropertyValue4R4 urn:groove.net:PropertyValue3
:Column5b5 urn:groove.net:Column4 NameFieldType Width300   urn:groove.net:Component Na
iptionViewContainer   urn:groove.net:ComponentResource# urn:groove.net:Comp
onentConnections urn:groove.net:PropertyList6{  urn:groove.net:ComponentResource URL6http:
ents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompone
nts.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn:groove.net:Comp
onentConnections urn:groove.net:Connection  urn:groove.net:Connection NameBFieldTypeGener
nLayout
 ConnectionID0T6 urn:groove.net:PropertyList  __Version4,1,0,0|  d -   P urn:groove.ne
lDescriptionLayout  urn:groove.net:ComponentResource urn:groove.net:PropertyList7   urn:gro
et:ComponentResource URL:http://components.groove.net/Groove/Components/Root.osd?Packag
e=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=
MultiCellLayoutx7 urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout Layout8C8
t:PropertyValue9E9 urn:groove.net:PropertyValue8 MULTICOL:  ,:MULTICOL9
  COL;(; COL: CELL<A< CELL
ptionLabel urn:groove.net:Component Name@FieldTypeGeneralDescriptionLabel  urn:groove.net:
tResource urn:groove.net:PropertyList=o  urn:groove.net:ComponentResource URL(http://compo
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
oveCommonComponents_DLL&Version=0&Factory=Static= urn:groove.net:PropertyList  BreakTypeW
ordBreak  FontStyleDescriptionText LabelSelect the type of field you want to add 
to the form. A preview image of the selected field type displays along with a us
age description.  __Version4,1,0,0 urn:groove.net:Component Name>FieldTypeChangeWar
rtant  urn:groove.net:ComponentResource urn:groove.net:PropertyList>o  urn:groove.net:Compo
tResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groov
e.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static >  urn:groo
ve.net:PropertyList
 VAlignmentTop  __Version4,1,0,0 _G_Font Font?<? Font> urn:groove.net:FontDesc@ @ urn:groove
ontStyleDescriptionText  StyleBoldTruea Color#FF0000 urn:groove.net:Component Name,FieldTyp
inga  urn:groove.net:ComponentResource urn:groove.net:PropertyListAo  urn:groove.net:Compon
Resource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticA urn:groov
e.net:PropertyList  BreakTypeWordBreak  FontStyleDescriptionText  __Version4,1
 urn:groove.net:Component NameDFieldTypeDetailedDescriptionLayout:  urn:groove.net:Componen
ource urn:groove.net:PropertyListB    urn:groove.net:ComponentResource URL:http://component
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=MultiCellLayoutxB urn:groove.net:PropertyList  _
_Version4,1,0,0  _G_Layout LayoutCCC LayoutB urn:groove.net:PropertyValueDED urn:groove.net:P
ueC MULTICOLE
 ,EMULTICOLD
  COLF\F COLE CELLG CELLH CELLI CELLJ CELLKQG CELLF HEIGHT22l FieldType
ledImage2J CELLF HEIGHT10BK CELLF! FieldTypeDetailedDescriptionLabel urn:groove.net:Compon
edNameLabelo  urn:groove.net:ComponentResource urn:groove.net:PropertyListLo  urn:groove.ne
omponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=ne
t.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Stat
icL urn:groove.net:PropertyList
 VAlignment
Centere  BreakTypeSingleLine Label  __Version4,1,0,0 _G_Font FontM<M FontL urn:groove.ne
ve.net:FontDescM  FontStyleLabelText  StyleBoldTruea urn:groove.net:Component Na
ailedDescriptionLabel  urn:groove.net:ComponentResource urn:groove.net:PropertyListOo  urn:
ove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?P
ackage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fac
tory=StaticO urn:groove.net:PropertyList  BreakTypeWordBreak  FontStyleDescripti
onText Label  __Version4,1,0,0 urn:groove.net:Component Name2PropertyInstructionsLabel
.net:ComponentResource urn:groove.net:PropertyListYo  urn:groove.net:ComponentResource URL
components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolC
omponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticY urn:groove.net:Propert
yList  BreakTypeSingleLine  FontStyleLabelText  __Version4,1,0,0  t     $ 
rtiesLayouto  urn:groove.net:ComponentResource urn:groove.net:PropertyListP   urn:groove.ne
ponentResource URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.
groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=HTMLTa
bleLayoutxP urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout LayoutQCQ
t:PropertyValueRBR urn:groove.net:PropertyValueQ TABLES3S TABLER TRT TRV%T TRS TDU U TDT HEIG
0V TRS TDW TDX W TDV LeftPad5TabOrder  1 WIDTH180 TopPad5  BottomPad5 PropertiesListView X TDV
Container urn:groove.net:Component NameDPropertyInstructionsFieldTypeLabel   urn:groove.n
Resource urn:groove.net:PropertyListZo  urn:groove.net:ComponentResource URL(http://compon
ove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groo
veCommonComponents_DLL&Version=0&Factory=StaticZ urn:groove.net:PropertyList  BreakTypeS
ingleLine  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component Name&Pr
ListLabel  urn:groove.net:ComponentResource urn:groove.net:PropertyList[o  urn:groove.net:C
onentResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.g
roove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static[ urn:
groove.net:PropertyList  BreakTypeSingleLine  FontStyleLabelText Label Properties
ist:u  __Version4,1,0,0  urn:groove.net:Component Name4PropertyNoPropertiesLayout  urn:gro
mponentResource  urn:groove.net:PropertyList    urn:groove.net:ComponentResource  URL:http:/
groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.G
rooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyL
ist   __Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE
ROW, MULTIROW ROW( ROW CELL2 CELL NoPropertiesLabel  ,     ^ P urn:groove.net
PropertyList\s  urn:groove.net:ComponentResource URL,http://components.groove.net/Groove/Comp
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
\DLurn:groove.net:PropertyList
L&Version=0&Factory=ListViewMSCCWorkaroundColor
5 #FFFFFF  __Version4,1,0,0 SingleSelec
lumnsResizable
FColumnHeaders
alse
False
 _G_Columns Columns]D] Columns\ urn:groove.net:PropertyValue^R^ urn:groove.net:PropertyValue]
:Column_j_ urn:groove.net:Column^ NameFieldProperty Width300
 urn:groove.net:Component Name&PropertyValueLayout  urn:groove.net:ComponentResource urn:gro
:PropertyLista   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Com
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=MultiCellLayoutxa urn:groove.net:PropertyList  __Version4,1,0,0
G_Layout LayoutbCb Layouta urn:groove.net:PropertyValuecEc urn:groove.net:PropertyValueb MULTI 
d CELLf CELLg CELLhIf CELLe HEIGHT18s PropertyValueLabelcg CELLe HEIGHT22lTabOrder  1 PropertyV
ionLabel
 ( urn:groove.net:Component
  Name$PropertyDateLayout  urn:groove.net:ComponentResource) urn:gr
et:PropertyListw )  urn:groove.net:ComponentResource( URL:http://components.groove.net/Groove
/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompon
ents_DLL&Version=0&Factory=MultiCellLayoutxw urn:groove.net:PropertyList(  __Version4
,1,0,0  _G_Layout LayoutxCx Layoutw urn:groove.net:PropertyValueyEy urn:groove.net:PropertyV
z MULTIROWy ROW{ ROW} ROW ( { ROWz CELL|I| CELL{ HEIGHT22l PropertyValueLabel5} ROWz CELL~ CEL
ottomPad2 LeftPad4 WIDTH22lTabOrder  1 TopPad2 PropertyDateButton(  ROWz CELL O   CELL  TopPad10
GroupCode  urn:groove.net:ComponentResource# urn:groove.net:ComponentConnections SCRIPT SC
INTERFACE urn:groove.net:PropertyList w  urn:groove.net:ComponentResource URL2http://compo
ve.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groov
eCommonComponents_DLL&Version=0&Factory=ScriptHost2# urn:groove.net:ComponentConnectio
ns urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groo
ction urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:g
onnection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection u
et:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connectio
ve.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Conne
groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:C
tion urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:gr
nnection} urn:groove.net:Connection Name$GroupLabelTextViewt.
 ConnectionID0  urn:groove.net:Connection Name4GroupLabelPositionComboBox
 ConnectionID1} urn:groove.net:Connection Name$GroupClassNameEditou
 ConnectionID2  urn:groove.net:Connection Name*GroupIsHiddenCheckBox
 ConnectionID3  urn:groove.net:Connection Name6EditGroupInnerViewContainer
 ConnectionID4q urn:groove.net:Connection NameAddTabButton
 ConnectionID5u urn:groove.net:Connection NameModifyTabButton
 ConnectionID6u urn:groove.net:Connection NameDeleteTabButton
 ConnectionID7m urn:groove.net:Connection NameTabsListBox
 ConnectionID8m urn:groove.net:Connection NameTabTextEdit
 ConnectionID9q urn:groove.net:Connection NameTabOKButton
 ConnectionID10y urn:groove.net:Connection NameTabCancelButton
 ConnectionID11u urn:groove.net:Connection NameFieldsStaticne
 ConnectionID12y urn:groove.net:Connection NameFieldsListViewu
 ConnectionID13m urn:groove.net:Connection NameOKButton:
 ConnectionID14u urn:groove.net:Connection NameCancelButton</
 ConnectionID15   urn:groove.net:Connection Name(EditTabViewContainerLa
 ConnectionID16   urn:groove.net:Connection Name<GroupLabelPlainTextRadioButtonx
 ConnectionID17   urn:groove.net:Connection Name:GroupLabelRichTextRadioButton
 ConnectionID18s} urn:groove.net:Connection Name GroupLabelStaticn
 ConnectionID404  urn:groove.net:Connection Name0GroupLabelPositionStatic
 ConnectionID404  urn:groove.net:Connection Name(GroupClassNameStaticom
 ConnectionID404  urn:groove.net:Connection Name$GroupContentsLabel5"
 ConnectionID404q urn:groove.net:Connection NameTabsStaticCo
 ConnectionID404u urn:groove.net:Connection NameTabTextStatic
 ConnectionID404} urn:groove.net:Connection Name GroupLabelStaticn
 ConnectionID404} urn:groove.net:Connection Name GroupLabelStaticn
 ConnectionID404q SCRIPT SRCDhttp://components.groove.net/Groove/Components/Root.osd?Packag
.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Version
=5&Factory=OpenonZ SCRIPTY
var g_Group;
var g_Designer;
var g_UIDelegate;
var g_Form;
var g_Design;
var g_IsEditingTab = false;
var g_IsNewTab = false;
var g_FormObjectArray = new Arra
y();
/* #############################
###
### STATE HANDLERS
###
#############################
### */
function AddTabButton_OnUpdateCo
mmandState(i_UICommand)
{
if (g_IsEditingTab)
i_UICommand.Enab
led = false;
else
i_UICommand.Enab
led = true;
}
function ModifyTabButton_OnUpdat
eCommandState(i_UICommand)
{
if (g_IsEditingTab || Ta
bsListBox.GetSelectionIndex() == -1)
i_UICommand.Enab
led = false;
else
i_UICommand.Enab
led = true;
}
function DeleteTabButton_OnUpdat
eCommandState(i_UICommand)
{
if (g_IsEditingTab || Ta
bsListBox.GetSelectionIndex() == -1)
i_UICommand.Enab
led = false;
else
i_UICommand.Enab
led = true;
}
function TabOKButton_OnUpdateCom
mandState(i_UICommand)
{
if (g_IsEditingTab)
i_UICommand.Enab
led = true;
else
i_UICommand.Enab
led = false;
}
function TabCancelButton_OnUpdat
eCommandState(i_UICommand)
{
if (g_IsEditingTab)
i_UICommand.Enab
led = true;
else
i_UICommand.Enab
led = false;
}
function OKButton_OnUpdateComman
dState(i_UICommand)
{
if (g_IsEditingTab)
{
i_UICommand.Enab
led = false;
i_UICommand.Tool
tip = "Disabled while a tab is currently being edited.";
}
else
{
i_UICommand.Enab
led = true;
i_UICommand.Tool
tip = "";
}
}
/* #############################
###
### EVENT HANDLERS
###
#############################
### */
function GroupLabelPlainTextRadi
oButton_OnCommand(i_UICommand)
{
GroupLabelPlainTextRadio
Button.CheckState = GrooveCheckState_Checked;
GroupLabelRichTextRadioB
utton.CheckState = GrooveCheckState_Unchecked;
}
function GroupLabelRichTextRadio
Button_OnCommand(i_UICommand)
{
GroupLabelPlainTextRadio
Button.CheckState = GrooveCheckState_Unchecked;
GroupLabelRichTextRadioB
utton.CheckState = GrooveCheckState_Checked;
}
function AddTabButton_OnCommand(
i_UICommand)
{
AddTab();
}
function ModifyTabButton_OnComma
nd(i_UICommand)
{
ModifyTab();
}
function DeleteTabButton_OnComma
nd(i_UICommand)
{
DeleteTab();
}
function TabsListBox_OnListBoxDb
lClick(i_Name, i_Item)
{
ModifyTab();
}
function TabsListBox_OnSelection
Change(i_Name, i_Item)
{
PreviewTab();
}
function TabTextEdit_OnReturn(i_
Name)
{
SaveTab();
}
function TabOKButton_OnCommand(i
_UICommand)
{
SaveTab();
}
function TabCancelButton_OnComma
nd(i_UICommand)
{
CancelTab();
}
function OKButton_OnCommand(i_UI
Command)
{
// Verify that there are
valid items selected for the group.
var Priv = g_UIDelegate.
IGrooveFormsToolUIDelegatePrivate;
if (g_Group.IGrooveForms
ToolDesignObject.Type == GrooveFormsToolDesignObjectType_FieldGroup)
{
var FieldsEnum =
FieldsListView.OpenCheckedEnum();
if (!FieldsEnum.
HasMore())
{
g_UIDele
gate.DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_FIELD_GROUP_ERRO
R), Priv.GetResourcedString(IDS_FORMS_TOOL_FIELD_GROUP_ERROR_TITLE));
return;
}
}
else if (g_Group.IGroove
FormsToolDesignObject.Type == GrooveFormsToolDesignObjectType_TabGroup)
{
if (TabsListBox.
Count == 0)
{
g_UIDele
gate.DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_TAB_GROUP_ERROR)
, Priv.GetResourcedString(IDS_FORMS_TOOL_TAB_GROUP_ERROR_TITLE));
return;
}
}
var Window = UIPropertyL
ist.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(GrooveWindo
wResult_OK);
Window.Destroy(GrooveWin
dowResult_OK);
}
function CancelButton_OnCommand(
i_UICommand)
{
var Window = UIPropertyL
ist.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(GrooveWindo
wResult_Cancel);
Window.Destroy(GrooveWin
dowResult_Cancel);
}
/* #############################
###
### PRIVATE METHODS
###
#############################
### */
function InitializeDialog(i_pGro
up, i_pDesigner, i_pUIDelegate, i_pForm, i_pDesign)
{
g_Group = i_pGroup;
g_Designer = i_pDesigner
;
g_UIDelegate = i_pUIDele
gate;
g_Form = i_pForm;
g_Design = i_pDesign;
g_IsEditingTab = false;
InitializeComponentStrin
gs();
ResetUI();
InitUI();
}
function InitializeComponentStri
ngs()
{
var Priv = g_UIDelegate.
IGrooveFormsToolUIDelegatePrivate;
GroupLabelStatic.SetText
(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_LABEL));
GroupLabelPlainTextRadio
Button.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_PLAIN
_TEXT);
GroupLabelRichTextRadioB
utton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_RICH_T
EXT);
GroupLabelPositionStatic
.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_LABEL_POS))
;
GroupClassNameStatic.Set
Text(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_CLASS_NAME));
GroupIsHiddenCheckBox.La
bel = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_GROUP_IS_HIDDE
N);
GroupContentsLabel.SetTe
xt(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_GROUP_CONTENTS));
TabsStatic.SetText(Priv.
GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_TABS_IN_GROUP));
//AddTabButton.Label = P
riv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_NEW_TAB);
AddTabButton.Tooltip = P
riv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_ADD_TAB_GRP);
//ModifyTabButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_MODIFY);
ModifyTabButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_MOD_SEL_TAB);
//DeleteTabButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_DELETE);
DeleteTabButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_DEL_SEL_TAB);
TabTextStatic.SetText(Pr
iv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_TAB_LABEL));
//TabOKButton.Label = Pr
iv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_DONE);
TabOKButton.Tooltip = Pr
iv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_ADD_CUR_TAB_TO_GRP);
//TabCancelButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
TabCancelButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_CANCEL_TAB);
OKButton.Label = Priv.Ge
tResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
CancelButton.Label = Pri
v.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
// Comboboxes and listbo
xes
GroupLabelPositionComboB
ox.ResetContent();
GroupLabelPositionComboB
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_LEFT));
GroupLabelPositionComboB
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_RIGHT));
GroupLabelPositionComboB
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_TOP));
}
function ResetUI()
{
GroupLabelTextView.TextC
ontent.PlainText = "";
GroupLabelPositionComboB
ox.SetSelectionByIndex(1);
GroupClassNameEdit.Text
= "";
GroupIsHiddenCheckBox.Ch
eckState = GrooveCheckState_Unchecked;
TabsListBox.ResetContent
();
TabTextEdit.Text = "";
FieldsListView.ResetCont
ent();
TabTextEdit.Enabled = fa
lse;
FieldsListView.Enabled =
false;
FieldsListView.DisableAl
lChecks();
TabOKButton.Enabled = fa
lse;
TabCancelButton.Enabled
= false;
}
function InitUI()
{
var Priv = g_UIDelegate.
IGrooveFormsToolUIDelegatePrivate;
// Set the tabs label an
d label position.
if (g_Group.IsRichTextLa
bel)
{
GroupLabelPlainT
extRadioButton.CheckState = GrooveCheckState_Unchecked;
GroupLabelRichTe
xtRadioButton.CheckState = GrooveCheckState_Checked;
var Label = g_Gr
oup.RichTextLabel;
// Create an emp
ty rich text element to compare the label element to.
var pStorageMgr
= GrooveScriptFunctions.CreateNewObject("Groove.StorageManager");
var pEmptyElemen
t = pStorageMgr.CreateTemporaryElement("urn:groove.net:RichText");
pEmptyElement.Se
tAttribute("Text", "");
// If the label
element is empty, use the old label field for backwards compatibility.
if (typeof Label
== "undefined" || Label == null || Label.Equals(pEmptyElement))
GroupLab
elTextView.TextContent.PlainText = g_Group.Label;
else
GroupLab
elTextView.CellContent.ReadContentFromElement(Label);
}
else
{
GroupLabelPlainT
extRadioButton.CheckState = GrooveCheckState_Checked;
GroupLabelRichTe
xtRadioButton.CheckState = GrooveCheckState_Unchecked;
GroupLabelTextVi
ew.TextContent.PlainText = g_Group.Label;
}
switch (g_Group.LabelPos
ition)
{
case GrooveForms
ToolFieldLabelPosition_Right:
GroupLab
elPositionComboBox.SetSelectionByIndex(1);
break;
case GrooveForms
ToolFieldLabelPosition_Top:
GroupLab
elPositionComboBox.SetSelectionByIndex(2);
break;
case GrooveForms
ToolFieldLabelPosition_Left:
default:
GroupLab
elPositionComboBox.SetSelectionByIndex(0);
}
GroupClassNameEdit.Text
= g_Group.ClassName;
if (g_Group.IsHidden)
GroupIsHiddenChe
ckBox.CheckState = GrooveCheckState_Checked;
else
GroupIsHiddenChe
ckBox.CheckState = GrooveCheckState_Unchecked;
// Get the fields and fi
eld groups objects for later use.
var pFields = g_Design.I
GrooveFormsToolDesign.Fields;
var pFieldGroups = g_For
m.FieldGroups;
g_FormObjectArray = new
Array();
// Set all of the fields
in the list view from the designer.
var FieldNameEnum = g_De
signer.CreateFieldsToAddEnum();
while (FieldNameEnum.Has
More())
{
var FieldName =
FieldNameEnum.OpenNext();
var pObject;
if (pFields.Does
ExistByName(FieldName))
pObject
= pFields.OpenByName(FieldName);
else if (pFieldG
roups.DoesExistByName(FieldName) && g_Group.IGrooveFormsToolDesignObject.Type ==
GrooveFormsToolDesignObjectType_TabGroup)
pObject
= pFieldGroups.OpenByName(FieldName);
else
continue
;
if (g_Group.IGro
oveFormsToolDesignObject.Type == GrooveFormsToolDesignObjectType_TabGroup)
g_FormOb
jectArray.push(pObject);
else
{
var Obje
ctIndex = FieldsListView.AddItem(FieldName);
FieldsLi
stView.SetItemData(ObjectIndex, pObject);
}
}
if (g_Group.IGrooveForms
ToolDesignObject.Type == GrooveFormsToolDesignObjectType_FieldGroup)
{
EditGroupInnerVi
ewContainer.LayoutByName = "EditFieldGroupInnerLayout";
FieldsStatic.Set
Text(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_SEL_FLDS_GRP));
var FieldNameEnu
m = g_Group.GroupReferences.CreateNameEnum();
var FieldCount =
FieldsListView.Count;
while (FieldName
Enum.HasMore())
{
var Fiel
dName = FieldNameEnum.OpenNext();
var Fiel
dIndex = FieldsListView.FindStringExact(FieldName);
FieldsLi
stView.SetCheckByText(FieldName);
}
EnableFieldsList
ViewChecks();
}
else if (g_Group.IGroove
FormsToolDesignObject.Type == GrooveFormsToolDesignObjectType_TabGroup)
{
EditGroupInnerVi
ewContainer.LayoutByName = "EditTabGroupInnerLayout";
FieldsStatic.Set
Text(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_SEL_FLDS_TAB));
// Set all of th
e tabs in the list box from the tab data.
var TabEnum = g_
Group.CreateEnum();
while (TabEnum.H
asMore())
{
var pTab
= TabEnum.OpenNext();
var pTab
Copy = pTab.CreateCopyForAdd();
var TabI
ndex = TabsListBox.AddItem(pTabCopy.Text);
TabsList
Box.SetItemData(TabIndex, pTabCopy);
}
// Make sure the
tabs list box is enabled.
TabsListBox.Enab
led = true;
FieldsListView.E
nabled = false;
FieldsListView.D
isableAllChecks();
// Make sure the
UI is in the correct state on startup.
CancelTab();
}
}
function AddTab()
{
g_IsEditingTab = true;
g_IsNewTab = true;
// Disable the tabs list
box while editing.
TabsListBox.Enabled = fa
lse;
// Enable the tab contro
ls for adding.
TabTextEdit.Enabled = tr
ue;
EnableFieldsListViewChec
ks();
// Clear the controls fo
r new user input.
TabTextEdit.Text = "";
FieldsListView.ClearAllC
hecks();
// Set the focus on the
tab text edit control.
EditTabViewContainer.Set
Focus("TabTextEdit");
}
function ModifyTab()
{
g_IsEditingTab = true;
g_IsNewTab = false;
// Disable the tabs list
box while editing.
TabsListBox.Enabled = fa
lse;
// Preview filled in fie
lds, just enable them for edit.
TabTextEdit.Enabled = tr
ue;
EnableFieldsListViewChec
ks();
// Set the focus on the
tab text edit control.
EditTabViewContainer.Set
Focus("TabTextEdit");
}
function DeleteTab()
{
var TabIndex = TabsListB
ox.GetSelectionIndex();
TabsListBox.RemoveItemBy
Index(TabIndex);
TabsListBox.SetSelection
ByIndex(-1);
}
function PreviewTab()
{
// Clear the checked fie
lds in the list view.
FieldsListView.ClearAllC
hecks();
// Set the selected fiel
ds in the list view.
var TabIndex = TabsListB
ox.GetSelectionIndex();
if (TabIndex != -1)
{
// Set the tab t
ext in the edit control.
TabTextEdit.Text
= TabsListBox.GetSelectionText();
// Make sure all
of the fields are in the list view in the correct order.
PrepareFieldsLis
tView();
}
else
{
TabTextEdit.Text
= "";
}
// Disable the tab contr
ols for preview.
TabTextEdit.Enabled = fa
lse;
FieldsListView.Enabled =
false;
FieldsListView.DisableAl
lChecks();
}
function SaveTab()
{
var Priv = g_UIDelegate.
IGrooveFormsToolUIDelegatePrivate;
var TabText = TabTextEdi
t.Text;
if (TabText == "")
{
g_UIDelegate.Dis
playOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_GRP_TAB_TEXT_ERROR), Pri
v.GetResourcedString(IDS_FORMS_TOOL_GRP_TAB_TEXT_TITLE));
return;
}
var FieldsEnum = FieldsL
istView.OpenCheckedEnum();
if (!FieldsEnum.HasMore(
))
{
g_UIDelegate.Dis
playOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_GRP_TAB_FIELD_ERROR), Pr
iv.GetResourcedString(IDS_FORMS_TOOL_GRP_TAB_FIELD_TITLE));
return;
}
var TabIndex = TabsListB
ox.GetSelectionIndex();
var pTab;
if (!g_IsNewTab)
pTab = TabsListB
ox.GetItemData(TabIndex);
else
{
var NewTabText =
TabText;
var TabTextIndex
= 0;
while (DoesTabEx
ist(NewTabText))
{
NewTabTe
xt = TabText + TabTextIndex;
TabTextI
ndex++;
}
pTab = g_Group.I
GrooveFormsToolTabFactory.Create(NewTabText);
}
pTab.Text = TabText;
pTab.GroupReferences.Rem
oveAll();
var FieldsArray = new Ar
ray();
while (FieldsEnum.HasMor
e())
{
var FieldIndex =
FieldsEnum.OpenNext();
var pObject = Fi
eldsListView.GetItemData(FieldIndex);
pTab.GroupRefere
nces.Add(pObject.IGrooveFormsToolDesignObject.ID);
}
if (!g_IsNewTab)
{
TabsListBox.Remo
veItemByIndex(TabIndex);
TabsListBox.Inse
rtItem(TabIndex, TabText);
}
else
TabIndex = TabsL
istBox.AddItem(TabText);
TabsListBox.SetItemData(
TabIndex, pTab);
g_IsEditingTab = false;
// Enable the tabs list
box when done editing.
TabsListBox.Enabled = tr
ue;
// Preview the tab that
was just saved.
TabsListBox.SetSelection
ByIndex(TabIndex);
PreviewTab();
}
function DoesTabExist(i_TabText)
{
for (var i = 0; i < Tabs
ListBox.Count; i++)
{
var TabText = Ta
bsListBox.GetItemText(i);
if (TabText == i
_TabText)
return t
rue;
}
return false;
}
function CancelTab()
{
PreviewTab();
g_IsEditingTab = false;
// Enable the tabs list
box when done editing.
TabsListBox.Enabled = tr
ue;
}
function PrepareFieldsListView()
{
if (g_Group.IGrooveForms
ToolDesignObject.Type == GrooveFormsToolDesignObjectType_TabGroup)
{
FieldsListView.R
esetContent();
if (g_IsNewTab)
{
for (var
i = 0; i < g_FormObjectArray.length; i++)
{
var pObject = g_FormObjectArray[i];
var ObjectName = pObject.IGrooveFormsToolDesignObject.Name;
var ObjectIndex = FieldsListView.AddItem(ObjectName);
FieldsListView.SetItemData(ObjectIndex, pObject);
}
}
else
{
var TabI
ndex = TabsListBox.GetSelectionIndex();
var pTab
= TabsListBox.GetItemData(TabIndex);
var Obje
ctNameEnum = pTab.GroupReferences.CreateNameEnum();
while (O
bjectNameEnum.HasMore())
{
var ObjectName = ObjectNameEnum.OpenNext();
for (var i = 0; i < g_FormObjectArray.length; i++)
{
var pObject = g_FormObjectArray[i];
if (pObject.IGrooveFormsToolDesignObject.Name == ObjectName)
{
var ObjectIndex = FieldsListView.AddItem(ObjectName);
FieldsListView.SetItemData(ObjectIndex, pObject);
FieldsListView.SetCheckByIndex(ObjectIndex);
break;
}
}
}
// Inser
t the rest of the form objects that are not in the selected tab.
for (var
i = 0; i < g_FormObjectArray.length; i++)
{
var pObject = g_FormObjectArray[i];
var ObjectName = pObject.IGrooveFormsToolDesignObject.Name;
if (FieldsListView.FindStringExact(ObjectName) < 0)
{
var ObjectIndex = FieldsListView.AddItem(ObjectName);
FieldsListView.SetItemData(ObjectIndex, pObject);
}
}
}
}
}
function EnableFieldsListViewChe
cks()
{
PrepareFieldsListView();
FieldsListView.EnableAll
Checks();
// Don't allow fields in
a field group to be selected.
var FieldGroupEnum = g_F
orm.FieldGroups.CreateEnum();
while (FieldGroupEnum.Ha
sMore())
{
var pFieldGroup
= FieldGroupEnum.OpenNext();
if (pFieldGroup.
IGrooveFormsToolDesignObject.Name != g_Group.IGrooveFormsToolDesignObject.Name)
{
var Fiel
dNameEnum = pFieldGroup.GroupReferences.CreateNameEnum();
while (F
ieldNameEnum.HasMore())
{
var FieldName = FieldNameEnum.OpenNext();
FieldsListView.SetCheckEnabledByText(FieldName, false);
}
}
}
// Don't allow fields in
a tab group to be selected.
var TabGroupEnum = g_For
m.TabGroups.CreateEnum();
while (TabGroupEnum.HasM
ore())
{
var pTabGroup =
TabGroupEnum.OpenNext();
if (pTabGroup.IG
rooveFormsToolDesignObject.Name != g_Group.IGrooveFormsToolDesignObject.Name)
{
var TabE
num = pTabGroup.CreateEnum();
while (T
abEnum.HasMore())
{
var CurrentTabName = "";
if (g_Group.IGrooveFormsToolDesignObject.Type == GrooveFormsToolDesignObjectType
_TabGroup && !g_IsNewTab)
{
var TabIndex = TabsListBox.GetSelectionIndex();
var pSelectedTab = TabsListBox.GetItemData(TabIndex);
CurrentTabName = pSelectedTab.IGrooveFormsToolDesignObject.Name;
}

var pTab = TabEnum.OpenNext();


if (CurrentTabName == "" || CurrentTabName != pTab.IGrooveFormsToolDesignObject.
Name)
{
var FieldNameEnum = pTab.GroupReferences.CreateNameEnum();
while (FieldNameEnum.HasMore())
{
var FieldName = FieldNameEnum.OpenNext();
FieldsListView.SetCheckEnabledByText(FieldName, false);
}
}
}
}
}
// Don't allow fields th
at are in other tabs in the current tab group to be selected.
for (var i = 0; i < Tabs
ListBox.Count; i++)
{
if (g_IsNewTab |
| (!g_IsNewTab && i != TabsListBox.GetSelectionIndex()))
{
var pTab
= TabsListBox.GetItemData(i);
var Fiel
dNameEnum = pTab.GroupReferences.CreateNameEnum();
while (F
ieldNameEnum.HasMore())
{
var FieldName = FieldNameEnum.OpenNext();
FieldsListView.SetCheckEnabledByText(FieldName, false);
}
}
}
}
function GetLabelPosition()
{
var LabelPosition;
var LabelPositionIndex =
GroupLabelPositionComboBox.GetSelectionIndex();
if (LabelPositionIndex =
= 1)
LabelPosition =
GrooveFormsToolFieldLabelPosition_Right;
else if (LabelPositionIn
dex == 2)
LabelPosition =
GrooveFormsToolFieldLabelPosition_Top;
else
LabelPosition =
GrooveFormsToolFieldLabelPosition_Left
return LabelPosition;
}
function GetPlainTextGroupLabel(
)
{
var GroupLabel = GroupLa
belTextView.TextContent.PlainText;
GroupLabel = GroupLabel.
replace("\r", "");
GroupLabel = GroupLabel.
replace("\n", " ");
return TrimEnds(GroupLab
el);
}
 SCRIPTINTERFACE LIBIDL{366DFD51-2C22-438d-9135-50
E3102447}ox IIDL{E1E1E0DA-AAAE-42c9-8435-E372CEBFE448}nc
/* #############################
###
### PUBLIC METHODS
###
#############################
### */
function InitializeFieldGroupDia
log(i_pGroup, i_pDesigner, i_pUIDelegate, i_pForm, i_pDesign)
{
InitializeDialog(i_pGrou
p, i_pDesigner, i_pUIDelegate, i_pForm, i_pDesign);
var RTFHelpProvider = Pr
opertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenComponentByName("R
TFHelpProvider");
RTFHelpProvider.SetHelpI
D(4, 2314, 0);
}
function InitializeTabGroupDialo
g(i_pGroup, i_pDesigner, i_pUIDelegate, i_pForm, i_pDesign)
{
InitializeDialog(i_pGrou
p, i_pDesigner, i_pUIDelegate, i_pForm, i_pDesign);
var RTFHelpProvider = Pr
opertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenComponentByName("R
TFHelpProvider");
RTFHelpProvider.SetHelpI
D(4, 91724, 0);
}
function GetUpdatedFieldGroup()
{
if (GroupLabelPlainTextR
adioButton.CheckState == GrooveCheckState_Checked)
{
g_Group.Label =
GetPlainTextGroupLabel();
g_Group.IsRichTe
xtLabel = false;
}
else
{
var pStorageMgr
= GrooveScriptFunctions.CreateNewObject("Groove.StorageManager");
var pLabelElemen
t = pStorageMgr.CreateTemporaryElement("urn:groove.net:RichText");
GroupLabelTextVi
ew.CellContent.WriteContentToElement(pLabelElement);
g_Group.RichText
Label = pLabelElement;
g_Group.IsRichTe
xtLabel = true;
}
g_Group.LabelPosition =
GetLabelPosition();
g_Group.ClassName = Grou
pClassNameEdit.Text;
if (GroupIsHiddenCheckBo
x.CheckState == GrooveCheckState_Checked)
g_Group.IsHidden
= true;
else
g_Group.IsHidden
= false;
g_Group.GroupReferences.
RemoveAll();
var CheckedEnum = Fields
ListView.OpenCheckedEnum();
while (CheckedEnum.HasMo
re())
{
var FieldIndex =
CheckedEnum.OpenNext();
var pField = Fie
ldsListView.GetItemData(FieldIndex);
g_Group.GroupRef
erences.Add(pField.IGrooveFormsToolDesignObject.ID);
}
// Add the field group t
o the collection on save.
var pFieldGroups = g_For
m.FieldGroups;
var GroupName = g_Group.
IGrooveFormsToolDesignObject.Name;
if (!pFieldGroups.DoesEx
istByName(GroupName))
{
pFieldGroups.Add
(g_Group);
// Make sure the
new groups name is unique.
GroupName = g_Gr
oup.IGrooveFormsToolDesignObject.Name;
var NewGroupName
= GroupName;
var GroupNameInd
ex = 0;
var pTabGroups =
g_Form.TabGroups;
while (pTabGroup
s.DoesExistByName(NewGroupName))
{
NewGroup
Name = GroupName + GroupNameIndex;
GroupNam
eIndex++;
}
if (NewGroupName
!= GroupName)
g_Group.
Rename(NewGroupName);
}
else
{
var pFieldGroup
= g_Group.CreateCopyForEdit();
g_Group.Update(p
FieldGroup);
}
return g_Group;
}
function GetUpdatedTabGroup()
{
if (GroupLabelPlainTextR
adioButton.CheckState == GrooveCheckState_Checked)
{
g_Group.Label =
GetPlainTextGroupLabel();
g_Group.IsRichTe
xtLabel = false;
}
else
{
var pStorageMgr
= GrooveScriptFunctions.CreateNewObject("Groove.StorageManager");
var pLabelElemen
t = pStorageMgr.CreateTemporaryElement("urn:groove.net:RichText");
GroupLabelTextVi
ew.CellContent.WriteContentToElement(pLabelElement);
g_Group.RichText
Label = pLabelElement;
g_Group.IsRichTe
xtLabel = true;
}
g_Group.LabelPosition =
GetLabelPosition();
g_Group.ClassName = Grou
pClassNameEdit.Text;
if (GroupIsHiddenCheckBo
x.CheckState == GrooveCheckState_Checked)
g_Group.IsHidden
= true;
else
g_Group.IsHidden
= false;
g_Group.DeleteAllTabs();
for (var i = 0; i < Tabs
ListBox.Count; i++)
{
var TabText = Ta
bsListBox.GetItemText(i);
var pTab = TabsL
istBox.GetItemData(i);
var TabName = pT
ab.IGrooveFormsToolDesignObject.Name;
var NameCount =
0;
var TabWasRename
d = false;
var NewTabName =
TabName;
var pFieldGroups
= g_Form.FieldGroups;
while (pFieldGro
ups.DoesExistByName(NewTabName))
{
NewTabNa
me = TabName + NameCount;
TabWasRe
named = true;
NameCoun
t++;
}
var pTabGroups =
g_Form.TabGroups;
while (pTabGroup
s.DoesExistByName(NewTabName))
{
NewTabNa
me = TabName + NameCount;
TabWasRe
named = true;
NameCoun
t++;
}
if (TabWasRename
d)
pTab.Ren
ame(NewTabName);
g_Group.AppendTa
b(pTab);
}
// Add the field group t
o the collection on save.
var pTabGroups = g_Form.
TabGroups;
var GroupName = g_Group.
IGrooveFormsToolDesignObject.Name;
if (!pTabGroups.DoesExis
tByName(GroupName))
{
pTabGroups.Add(g
_Group);
// Make sure the
new groups name is unique.
GroupName = g_Gr
oup.IGrooveFormsToolDesignObject.Name;
var NewGroupName
= GroupName;
var GroupNameInd
ex = 0;
var pFieldGroups
= g_Form.FieldGroups;
while (pFieldGro
ups.DoesExistByName(NewGroupName))
{
NewGroup
Name = GroupName + GroupNameIndex;
GroupNam
eIndex++;
}
if (NewGroupName
!= GroupName)
g_Group.
Rename(NewGroupName);
}
else
{
var pTabGroup =
g_Group.CreateCopyForEdit();
g_Group.Update(p
TabGroup);
}
return g_Group;
}
q  urn:groove.net:PropertyList EnforceInterfaces1
_Version4,1,0,0   urn:groove.net:Component Name(PropertyNumberLayoutLS  urn:groove.net:Compo
roove.net:PropertyListi   urn:groove.net:ComponentResource URL:http://components.groove.net/G
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=MultiCellLayoutxi urn:groove.net:PropertyList  __Version4
,1,0,0  _G_Layout LayoutjCj Layouti urn:groove.net:PropertyValuekEk urn:groove.net:PropertyV
l MULTIROWk ROWm ROWo ROWq ROWs ROWu(m ROWl CELLnIn CELLm HEIGHT18s PropertyValueLabel(o ROWl
ol(q ROWl CELLr r  CELLq HEIGHT18s NAME2PropertySizeTypeLabelCell PropertySizeTypeLabel(s ROWl
bOrder1 NAME8PropertySizeTypeComboBoxCell PropertySizeTypeComboBox(u ROWl CELLvOv CELLu TopPa
onLabel
5 urn:groove.net:Component Name*PropertyContentLayout  urn:groove.net:ComponentResource6 urn
e.net:PropertyList  6  urn:groove.net:ComponentResource5 URL:http://components.groove.net/Gro
e/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompo
nents_DLL&Version=0&Factory=MultiCellLayoutx  urn:groove.net:PropertyList5  __Version4
,1,0,0  _G_Layout Layout C   Layout  urn:groove.net:PropertyValue E   urn:groove.net:PropertyV
le  CELL  HEIGHT60vTabOrder  1 PropertyValueMLEditControlO  CELL  TopPad10 PropertyDescriptionL
onScriptChoiceLabel  urn:groove.net:ComponentResource  urn:groove.net:PropertyList/o urn:groov
e.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=Static/ urn:groove.net:PropertyList
 VAlignment
Centere LabelValidationy  FontStyleLabelText  __Version4,1,0,0  d    ? urn:
aticTextLayout  urn:groove.net:ComponentResource@ urn:groove.net:PropertyList  @   urn:groove.
:ComponentResource? URL:http://components.groove.net/Groove/Components/Root.osd?Packag
e=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=
MultiCellLayoutx  urn:groove.net:PropertyList?  __Version4,1,0,0  _G_Layout Layout C  
ertyValue E   urn:groove.net:PropertyValue MULTIROW  \ MULTIROW  ROW  ROW  ROW  ROW  ROW (  ROW
ValuePlainTextRadioButton(  ROW  CELL i   CELL  HEIGHT22l TopPad5  PropertyValueRichTextRadioB
O urn:groove.net:Component Name,PropertyRichTextLayoutl  urn:groove.net:ComponentResourceR u
ove.net:PropertyList  R  urn:groove.net:ComponentResourceO URL:http://components.groove.net/G
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=MultiCellLayoutx  urn:groove.net:PropertyListO  __Version4
,1,0,0  _G_Layout Layout C   Layout  urn:groove.net:PropertyValue E   urn:groove.net:PropertyV
l`  CELL  HEIGHT120TabOrder  1 PropertyValueTextViewO  CELL  TopPad10 PropertyDescriptionLabel
pertyConstantLayoutB  urn:groove.net:ComponentResource\ urn:groove.net:PropertyList \  urn:g
ve.net:ComponentResource[ URL:http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=MultiCellLayoutx urn:groove.net:PropertyList[  __Version4,1,0,0  _G_Layout La
net:PropertyValueE urn:groove.net:PropertyValue MULTICOL  ,MULTICOL
  COL5 COL CELL CELL
yDescriptionLabelt X    3 
d urn:groove.net:Component Name$PropertyViewLayout  urn:groove.net:ComponentResourcee urn:gr
et:PropertyList e  urn:groove.net:ComponentResourced URL:http://components.groove.net/Groove
omponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponen
ts_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyListd  __Version4,1,0,0
G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTI 
der
n urn:groove.net:Component
1 PropertyViewComboBoxO Name0 CELLPrTopPad
operty1V0iePropertyDescriptionLabel
wFilterLayoutt  urn:groove.net:ComponentResourceo

roove.net:PropertyList o   urn:groove.net:ComponentResourcen URL:http://components.groove.net
roove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonC
omponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyListn  __Version4
,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyV
rder
urn:groove.net:Component
1 PropertyViewFilterButton^  Name0ValCELL
idatioWIDTH
nScri1p0t5CoLeftPad
mboBoxe5 ClearViewFilterButton(
urn:groove.net:ComponentResource
 ROW CELL  ur
O
ove.net:PropertyList0
URL,http://components.grurn:groove.net:ComponentResource
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
T0 urn:groove.net:PropertyList
 __Version4,1,0,0 urn:groove.net:Component Name2ParameterValueEditControl  urn:groo
source urn:groove.net:PropertyList2k  urn:groove.net:ComponentResource URL$http://components.
e.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groove
CommonComponents_DLL&Version=0&Factory=EditNam2 urn:groove.net:PropertyList  TextLimit2
50  __Version4,1,0,0P    T f   { urn:groove.net:Component Name.PropertyReferenceLay
ource~ urn:groove.net:PropertyList ~   urn:groove.net:ComponentResource{ URL:http://component
ve.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groov
eCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList{  _
_Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:P
eLabel( ROW CELLb CELL HEIGHT50TabOrder  1 FieldLabelValueTextView( ROW CELLg CELL HE
tRadioButton( ROW CELLy CELL HEIGHT43 TopPad10  BottomPad3 FieldLabelPositionLabel(
boBox  urn:groove.net:Component Name(PropertyBrowseLayoutTo  urn:groove.net:ComponentResour
e.net:PropertyList    urn:groove.net:ComponentResource  URL:http://components.groove.net/Gro
mponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponent
s_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList   __Version4,1,0,0
G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTI 
yValueEditControl] CELL WIDTH27e LeftPad5 PropertyBrowseButton( ROW CELLe CELL HEIGHT4
iew  urn:groove.net:Component Name(PropertyViewComboBox
  urn:groove.net:ComponentResources  urn:groove.net:ComponentResource URL,http://c
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox

      urn:groove.net:Component Name&PropertyColorLayout  urn:groove.net:ComponentResour
oove.net:ComponentResource URL:http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=MultiCellLayoutx urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout La
net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  \MULTIROW
  ROW ROW ROW ROW RO
ColorRadioButtonB ROW CELL CELL CELLt CELL HEIGHT25 WIDTH0TabOrder  1 PropertyValueEditC
lorButtonW CELL WIDTH80 LeftPad5 WebBrowserView( ROW CELLu CELL HEIGHT32Y TopPad10( Pr
ptionLabel urn:groove.net:Component Name2PropertyInitialTextLayout  urn:groove.net:Compone
ce urn:groove.net:PropertyList   urn:groove.net:ComponentResource URL:http://components.g
oove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCo
mponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList  __Version4
,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyV
l   CELL HEIGHT30  BottomPad10TabOrder
 0  PropertyInitialValueTypeComboBox CELL HEIGH
tControlCell PropertyValueEditControlO CELL TopPad10 PropertyDescriptionLabel& urn:groove
ionMinEditControlt  urn:groove.net:ComponentResource' urn:groove.net:PropertyList5k'  urn:gr
oove.net:ComponentResource& URL$http://components.groove.net/Groove/Components/Root.os
d?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&
Factory=EditNam5 urn:groove.net:PropertyList&  TextLimit128  __Version4,1,0,0T      
ertyInitialDateLayout  urn:groove.net:ComponentResource urn:groove.net:PropertyList    urn:
net:ComponentResource URL:http://components.groove.net/Groove/Components/Root.osd?Packa
ge=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory
=MultiCellLayoutx urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout LayoutC La
opertyValueE urn:groove.net:PropertyValue MULTIROW  PMULTIROW
  ROW ROW ROW ROW
( ROW CELLI CELL HEIGHT18s PropertyValueLabel( ROW CELL  CELL HEIGHT27e  BottomPad5TabOrder  0
tyValueEditControlCell PropertyValueEditControl  CELL  BottomPad2 LeftPad4TabOrder  1
tyDateButtonCella WIDTH22l PropertyDateButton(
 ROW CELLO CELL
 TopPad10 PropertyDescriptionLabel urn:groove.net:Component Name,ValidationScriptLayoutc 
onentResource urn:groove.net:PropertyList
   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Components/Root
?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&F
actory=MultiCellLayoutx
CLayout
urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout Layout
 MULTIROW
urn:groove.net:PropertyValue
hMULTIROW
  ROW ROW ROWEROW  urn:groove.net:PropertyValue
 ROW ROW( ROW CELLL CELL HEIGHT42 ValidationScriptLabel( ROW
ox( ROW CELLn CELL HEIGHT18s NAME.ParameterValueLabelCell( ROW CELL CELL HEIGHT32Y  Bott
DescriptionLabelp    ( urn:groove.net:Component Name,ValidationMinMaxLayoutl  urn:groove
groove.net:PropertyList    urn:groove.net:ComponentResource URL:http://components.groove.net
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList  __Version4
,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue M
0y ValidationMinMaxLabel(" ROW CELL#I# CELL" HEIGHT18s ValidationMinLabel5$ ROW CELL% CELL&c%
$  BottomPad2 LeftPad4TabOrder  1 TopPad2 NAMEBValidationMinChooseDateButtonCell WIDTH22l
ateButton(' ROW CELL(.( CELL' HEIGHT5() ROW CELL*I* CELL) HEIGHT18s ValidationMaxLabel5+ ROW
ottomPad2 LeftPad4TabOrder  1 TopPad2 NAMEBValidationMaxChooseDateButtonCell WIDTH22l Validatio
ateButton urn:groove.net:Component Name&ParameterValueLabel  urn:groove.net:ComponentResour
e.net:PropertyList1o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groov
e/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompo
nents_DLL&Version=0&Factory=Static1 urn:groove.net:PropertyList
 VAlignment
Centere LabelParameter  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component
lidationMinMaxLabel  urn:groove.net:ComponentResource urn:groove.net:PropertyList3o  urn:groo
e.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=Static<3 urn:groove.net:PropertyList
 VAlignment
Centere Label O nly numbers between this range are valid:
(leave blank if no limitation)  FontStyleLabelText  __Version4,1,0,0 h 8   f    urn:g
nt Name$ValidationMinLabel   urn:groove.net:ComponentResource! urn:groove.net:Pr
ertyList4o!  urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/Comp
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=Static4 urn:groove.net:PropertyList 
 VAlignment
Centere LabelMinimum  FontStyleLabelText  __Version4,1,0,0* urn:groove.net:Component
ValidationMinChooseDateButton  urn:groove.net:ComponentResource+ urn:groove.net:Propert
yList6o+  urn:groove.net:ComponentResource* URL(http://components.groove.net/Groove/Compone
nts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL
&Version=0&Factory=Buttone6 urn:groove.net:PropertyList*  __Version4,1,0,0
 ImageWidth16 StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\Calendar\CalendarToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\Calendar\CalendarToolIconImages.jpg Image
Height16
 ImageIndex03 urn:groove.net:Component Name$ValidationMaxLabelPr  urn:groove.net:ComponentR
groove.net:PropertyList7o4  urn:groove.net:ComponentResource3 URL(http://components.groove.
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=Static7 urn:groove.net:PropertyList3
 VAlignment
Centere LabelMaximum:B  FontStyleLabelText  __Version4,1,0,09 urn:groove.net:Component
ValidationMaxEditControl  urn:groove.net:ComponentResource: urn:groove.net:PropertyList
8k:  urn:groove.net:ComponentResource9 URL$http://components.groove.net/Groove/Components/R
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=EditNam8 urn:groove.net:PropertyList9  TextLimit128  __Version4,1,0,0
 urn:groove.net:PropertyList6
urn:groove.net:Component
urn:groove.net:ComponentResource
 Name$
k GroupClassNameEditou  urn:groove.net:ComponentResource
 URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=EditNam6 urn:groove.net
:PropertyList
  TextLimit250  __Version4,1,0,0`      t L   = urn:groove.net:Component Name
omponentResource> urn:groove.net:PropertyList9o>  urn:groove.net:ComponentResource= URL(http:
components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolC
omponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone9 urn:groove.net:Propert
yList=  __Version4,1,0,0
 ImageWidth16 StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\Calendar\CalendarToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\Calendar\CalendarToolIconImages.jpg Image
Height16
 ImageIndex0
F urn:groove.net:Component Name0PropertyFormatDateLayoutl  urn:groove.net:ComponentResourceG
roove.net:PropertyList: G   urn:groove.net:ComponentResourceF URL:http://components.groove.net
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=MultiCellLayoutx: urn:groove.net:PropertyListF  _
_Version4,1,0,0  _G_Layout Layout;C; Layout: urn:groove.net:PropertyValue<E< urn:groove.net:P
ue; MULTICOL=
 ,=MULTICOL<
  COL>\> COL= CELL? CELL@ CELLA CELLB CELLCk? CELL> HEIGHT18sTabOrder  1
ad20 ! FormatDateShortFormatPreviewLabel2A CELL> HEIGHT10jB CELL> HEIGHT18sTabOrde 
rmatRadioButtonnC CELL> HEIGHT22l LeftPad20   FormatDateLongFormatPreviewLabelR
omponent Name@FormatDateShortFormatRadioButton  urn:groove.net:ComponentResourceS urn:groove.
net:PropertyListDoS  urn:groove.net:ComponentResourceR URL(http://components.groove.net/Gro
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=ButtoneD urn:groove.net:PropertyListR StyleRadiobutton Label"S
rt date format RadiobuttonTruea  __Version4,1,0,0  urn:groove.net:Component
 NameRTFHelpProvider  urn:groove.net:ComponentResource
 
  urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=RTFHelpProvider
 ,   L PX urn:groove.net:Component NameBFormatDateShortFormatPreviewLabel  urn:groove.net:
groove.net:PropertyListEoY  urn:groove.net:ComponentResourceX URL(http://components.groove.
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=Static E  urn:groove.net:PropertyListX
 VAlignment
Centere  __Version4,1,0,0 _G_Font FontF<F FontE urn:groove.net:FontDescG}G urn:groove.net:Fon
escriptionText Color#999999^ urn:groove.net:Component Name>FormatDateLongFormatRadioButton
e.net:ComponentResource_ urn:groove.net:PropertyListHo_  urn:groove.net:ComponentResource
^ URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ButtoneH urn:groove.net
:PropertyList^ StyleRadiobutton Label Long date formate= RadiobuttonTruea  __Version4,1
ve.net:Component Name@FormatDateLongFormatPreviewLabel  urn:groove.net:ComponentResourcee urn
:groove.net:PropertyListIoe  urn:groove.net:ComponentResourced URL(http://components.groove
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=Static I urn:groove.net:PropertyListd
 VAlignment
Centere  __Version4,1,0,0 _G_Font FontJ<J FontI urn:groove.net:FontDescK}K urn:groove.net:Fon
escriptionText Color#999999j urn:groove.net:Component Name"NoPropertiesLabel  urn:groove.ne
tResourcek urn:groove.net:PropertyListLok  urn:groove.net:ComponentResourcej URL(http://compo
nts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponen
ts.GrooveCommonComponents_DLL&Version=0&Factory=StaticL urn:groove.net:PropertyListj Labeld
There are no properties associated with this type.  BreakTypeWordBreak  F
ontStyleDescriptionText  __Version4,1,0,0$ C X      p urn:groove.net:Component Nam
roove.net:ComponentResourceq urn:groove.net:PropertyListMoq  urn:groove.net:ComponentReso
urcep URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.G
roove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static M urn:groove.
net:PropertyListp  BreakTypeWordBreak  FontStyleLabelText  __Version4,1,0,0u
ve.net:Component Name$PropertyValueLabele  urn:groove.net:ComponentResourcev urn:groove.net:P
ropertyListNov  urn:groove.net:ComponentResourceu URL(http://components.groove.net/Groove/C
omponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponen
ts_DLL&Version=0&Factory=StaticN urn:groove.net:PropertyListu
 VAlignment
Centere Label  FontStyleLabelText  __Version4,1,0,0{ urn:groove.net:Component Name*Pr
SizeTypeLabel  urn:groove.net:ComponentResource| urn:groove.net:PropertyListOo|  urn:groove.
net:ComponentResource{ URL(http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=StaticO urn:groove.net:PropertyList{
 VAlignment
Centere Label
Unit:  FontStyleLabelText  __Version4,1,0,0  urn:groove.net:Component Name0PropertySiz
mboBox  urn:groove.net:ComponentResource  urn:groove.net:PropertyListPs   urn:groove.net:Comp
ntResource  URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
 InitialValuesP
P urn:groove.net:PropertyList
InitialValuesQ Jurn:groove.net:PropertyValueR
Q   __Version4,1,R0,urn:groove.net:PropertyValueQ
0 _G_InitialValues  urn:groove.net:
groove.net:ItemT urn:groove.net:ItemUOS urn:groove.net:ItemR NameCharactersooGT urn:groove.ne
R Name
PixelsiGU urn:groove.net:ItemR NamePercent   urn:groove.net:Component NameCalendarViewon  u
entResourcek  urn:groove.net:ComponentResource URL$http://components.groove.net/Groove/Com
nts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCalendarTool_DLL&Ver
sion=0&Factory=Calendarct  L m   p       urn:groove.net:Component Name2PropertyValueE
ource  urn:groove.net:PropertyListWk   urn:groove.net:ComponentResource  URL$http://component
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=EditNamW urn:groove.net:PropertyList   TextLimit7
50  __Version4,1,0,0  urn:groove.net:Component Name4PropertyValueMLEditControl  urn:gr
mponentResource  urn:groove.net:PropertyListXk   urn:groove.net:ComponentResource  URL$http:/
nts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponen
ts.GrooveCommonComponents_DLL&Version=0&Factory=EditNa X urn:groove.net:PropertyList   T
extLimit 2048  __Version4,1,0,0_G_Style
  StyleYBY StyleX urn:groove.net:PropertyValueZlZ urn
ropertyValueY urn:groove.net:Item[ urn:groove.net:Item\d[ urn:groove.net:ItemZ NameMultiline
:groove.net:ItemZ Name"VerticalScrollbar Valuetrue  urn:groove.net:Component Name*PropertyVa
:groove.net:ComponentResource  urn:groove.net:PropertyList]k   urn:groove.net:ComponentResour
ce  URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveTextTools_DLL&Version=0,3&Factory=TextView2ve] urn:groove.net:
PropertyList
BorderVisibleTrIgnoreLinksueaReadOnly
 Truea
False  __Version4,1,0,0  urn:groove.net:Component NameBPropertyValuePlainTextRadioButton
.net:ComponentResource urn:groove.net:PropertyList^o  urn:groove.net:ComponentResource  URL
components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolC
omponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone^ urn:groove.net:Proper
tyList  StyleRadiobutton LabelPlain Textn RadiobuttonTruea  __Version4,1,0,0 + urn:groo
bst   urn:groove.net:ComponentResource. urn:groove.net:PropertyList w .  urn:groove.net:Compon
ntResource+ URL2http://components.groove.net/Groove/Components/Root.osd?Package=net.gr
oove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=TabContr
ol2T  urn:groove.net:PropertyList+  __Version4,1,0,0l h   |  T M   X urn:groove.ne
oButton  urn:groove.net:ComponentResource urn:groove.net:PropertyList_o  urn:groove.net:Com
entResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.gro
ove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone_ urn:g
roove.net:PropertyList StyleRadiobutton LabelRich Text RadiobuttonTruea  __Version4,1,0,0
.net:Component Name:PropertyValueConstantCheckBox  urn:groove.net:ComponentResource urn:groo
.net:PropertyList`o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groo
/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompon
ents_DLL&Version=0&Factory=Buttone` urn:groove.net:PropertyList StyleCheckboxw Label Checkbo 
_Version4,1,0,0 urn:groove.net:Component Name$PropertyDateButton="  urn:groove.net:Compone
e urn:groove.net:PropertyListao  urn:groove.net:ComponentResource URL(http://components.gr
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=Buttonea urn:groove.net:PropertyList  __Version4,1,0,0
 ImageWidth16 StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\Calendar\CalendarToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\Calendar\CalendarToolIconImages.jpg Image
Height16
 ImageIndex0 urn:groove.net:Component Name(PropertyBrowseButton  urn:groove.net:ComponentR
ve.net:PropertyListbo  urn:groove.net:ComponentResource URL(http://components.groove.net/Gr
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=Buttone7b urn:groove.net:PropertyList Enabled  Truea  __Version4
,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex20  ImageHeight16 c  8      urn:groove.net:Component Name0Proper
ponentResource urn:groove.net:PropertyListco  urn:groove.net:ComponentResource URL(http://
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=Buttonec urn:groove.net:PropertyList EnabledT
ruea Label*Create view filter... StyleStandardButtonb  __Version4,1,0,0 urn:groove.net:C
earViewFilterButton  urn:groove.net:ComponentResource urn:groove.net:PropertyListdo  urn:gr
e.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=Buttoned urn:groove.net:PropertyList EnabledTruea Label
Clear StyleStandardButtonb  __Version4,1,0,0 urn:groove.net:Component NameDPropertyBa
ioButtonx  urn:groove.net:ComponentResource urn:groove.net:PropertyListeo  urn:groove.net:C
onentResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.g
roove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttonee urn
:groove.net:PropertyList StyleRadiobutton Label
Color RadiobuttonTruea  __Version4,1,0,0 urn:groove.net:Component Name:PropertyBackground
ton  urn:groove.net:ComponentResource urn:groove.net:PropertyListfo  urn:groove.net:Compone
esource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.
Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttonef urn:groov
e.net:PropertyList EnabledTruea StyleStandardButtonb LabelChoose color...  __Version4,1
.net:Component NamePPropertyBackgroundTransparentRadioButtonNa  urn:groove.net:ComponentR
esource urn:groove.net:PropertyListho  urn:groove.net:ComponentResource URL(http://compone
ve.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groov
eCommonComponents_DLL&Version=0&Factory=Buttoneh urn:groove.net:PropertyList StyleRadiobutt
n LabelTransparent RadiobuttonTruea  __Version4,1,0,0             urn:groove.net:
BrowserViewm  urn:groove.net:ComponentResource urn:groove.net:PropertyListg   urn:groove.ne
ponentResource URLLhttp://components.groove.net/Groove/Components/Root.osd?Package=net.
groove.Groove.ToolComponents.GrooveWebBrowserTool_DLL&Version=2,6&Factory=WebBro
wserControlWrapperpog urn:groove.net:PropertyList ReturnSafeForScriptingExternal
False DisableMnemonicsByResourceID:4366,4367,4368,4369,4370,4371 DisableNavigationSoun
Tdruea  __Version4,1,0,0 urn:groove.net:Component Name@PropertyInitialValueTypeComboBox 
net:ComponentResource urn:groove.net:PropertyListis  urn:groove.net:ComponentResource URL,
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCo
mponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
Ti urn:groove.net:PropertyList  __Version4,1,0,0 urn:groove.net:Component Name(FieldLabel
<  urn:groove.net:ComponentResource urn:groove.net:PropertyListjo  urn:groove.net:Component
ource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Staticj urn:groove.n
et:PropertyList
 VAlignment
Centere Label:Enter a label for this field:  FontStyleLabelText  __Version4
,1,0,0 urn:groove.net:Component Name<FieldLabelPlainTextRadioButton  urn:groove.net:Compone
rce urn:groove.net:PropertyListko  urn:groove.net:ComponentResource URL(http://components.gro
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=Buttonek urn:groove.net:PropertyList StyleRadiobutton La
lain Textn RadiobuttonTruea  __Version4,1,0,0
 urn:groove.net:Component Name:FieldLabelRichTextRadioButton  urn:groove.net:ComponentResourc
e urn:groove.net:PropertyListlo  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttonel urn:groove.net:
PropertyList
 StyleRadiobutton LabelRich Text RadiobuttonTruea  __Version4,1,0,0$          H
:groove.net:ComponentResource urn:groove.net:PropertyListmk  urn:groove.net:ComponentResour
ce URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveTextTools_DLL&Version=0,3&Factory=TextView2vem urn:groove.net:
PropertyList
BorderVisible  Truea__Version
 IgnoreLinks 4,1T,r0u,e0aReadOnly

False  IgnoreTabTruea urn:groove.net:Component Name.FieldLabelPositionLabel  urn:groove.ne
ntResource urn:groove.net:PropertyListno  urn:groove.net:ComponentResource URL(http://compone
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=Static!n urn:groove.net:PropertyList  __Version4
,1,0,0 LabelRPosition the label relative to the field:  BreakTypeWordBreak  F
ontStyleLabelText
 VAlignment
Bottomn urn:groove.net:Component Name4FieldLabelPositionComboBoxo  urn:groove.net:ComponentR
e urn:groove.net:PropertyListos  urn:groove.net:ComponentResource URL,http://components.groov
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=ComboBox
 InitialValueso
o urn:groove.net:PropertyList
InitialValuesp Jurn:groove.net:PropertyValueq
p   __Version4,1,q0,urn:groove.net:PropertyValuep
0 _G_InitialValues  urn:groove.net:
groove.net:Items urn:groove.net:ItemtCr urn:groove.net:Itemq Name LeftCs urn:groove.net:Itemq N
Right?t urn:groove.net:Itemq NameTop urn:groove.net:Component Name GroupLabelStaticn  urn
ntResource urn:groove.net:PropertyList*o  urn:groove.net:ComponentResource URL(http://comp
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=Static* urn:groove.net:PropertyList
 VAlignmentTop Label
Label:L  FontStyleLabelText  __Version4,1,0,0`  0 Y  Q   @ urn:groove.net:Component
ve.net:ComponentResource urn:groove.net:ComponentGroupo  urn:groove.net:ComponentResource
//components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.Too
lComponents.GrooveCommonComponents_DLL&Version=0&Factory=SubForm  urn:groove.net:Compone
ntGroup HelpInfoProviderRTFHelpProviderDelegate  EditGroupCode DefaultView,EditGroupViewContai
er$ urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.
onent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groo
onent urn:groove.net:Component urn:groove.net:Component
 urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Co
t urn:groove.net:Component) urn:groove.net:Component- urn:groove.net:Component> urn:groove.ne
mponentE urn:groove.net:ComponentX urn:groove.net:Component\ urn:groove.net:Componenth urn:gr
e.net:Componento urn:groove.net:Componentv urn:groove.net:Component  urn:groove.net:Component
roove.net:Component  urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Compo
roove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Compo
roove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Co
belTextViewt.  urn:groove.net:ComponentResource urn:groove.net:PropertyList+k  urn:groove.n
ComponentResource URL$http://components.groove.net/Groove/Components/Root.osd?Package=n
et.groove.Groove.ToolComponents.GrooveTextTools_DLL&Version=0,3&Factory=TextView
2BorderVisible
ve+ urn:groove.net:PropertyList
Truea IgnoreLinksTrueaReadOnly   __Version4,1,0,0
False  IgnoreTabTruea urn:groove.net:Component Name<GroupLabelPlainTextRadioButtonx  urn
:ComponentResource urn:groove.net:PropertyList,o  urn:groove.net:ComponentResource URL(htt
onents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompo
nents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone, urn:groove.net:PropertyLi
st StyleRadiobutton LabelPlain Textn RadiobuttonTruea  __Version4,1,0,0T      ! urn
ut="  urn:groove.net:ComponentResource urn:groove.net:PropertyList    urn:groove.net:Compone
urce URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gro
ove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:
groove.net:PropertyList  __Version4,1,0,0  _G_Layout Layout
C
Eurn:groove.net:PropertyValue
Layout urn:groove.net:PropertyValue
 MULTIROW
ROW ROWROW
  ROW ROW ROW ROW ROW ROW  ROW" ROW$( ROW CELL  CELL HEIGHT28 TopPad10 LeftPad10Ri
MULTIROW 
RadioButtonP CELL TopPad5 GroupLabelRichTextRadioButton( ROW CELL  CELL HEIGHT23e TopPad5 Lef
htPad10 GroupLabelPositionComboBox( ROW CELL  CELL HEIGHT23e TopPad5 LeftPad10RightPad
 10 Grou
NameEdit( ROW CELLu CELL HEIGHT27e TopPad5 LeftPad10 GroupIsHiddenCheckBox(  ROW CELL!t! CELL
roupInnerViewContainer\$ ROW CELL% CELL& CELL' CELL( CELL)2% CELL$ HEIGHT40yW& CELL$ WIDTH140
ottomPad10
 CancelButton1) CELL$ WIDTH10 urn:groove.net:Component Name:GroupLabelRichTextRadioButton
onentResource urn:groove.net:PropertyList-o  urn:groove.net:ComponentResource URL(http://c
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=Buttone- urn:groove.net:PropertyList StyleRad
obutton LabelRich Text RadiobuttonTruea  __Version4,1,0,0$   ?
   urn:groove.net:Component Name0GroupLabelPositionStatic  urn:groove.net:ComponentResour
PropertyList.o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Co
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=Static. urn:groove.net:PropertyList
 VAlignment
Centere LabelLabel Position:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Co
ponent Name4GroupLabelPositionComboBox  urn:groove.net:ComponentResource urn:groove.net:Pro
tyList/s  urn:groove.net:ComponentResource URL,http://components.groove.net/Groove/Componen
/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ve
rsion=0&Factory=ComboBox
 InitialValues/
/ urn:groove.net:PropertyList
InitialValues0 Jurn:groove.net:PropertyValue1
0   __Version4,1,10,urn:groove.net:PropertyValue0
0 _G_InitialValues  urn:groove.net:
groove.net:Item3 urn:groove.net:Item4C2 urn:groove.net:Item1 Name LeftC3 urn:groove.net:Item1 N
Right?4 urn:groove.net:Item1 NameTop urn:groove.net:Component Name(GroupClassNameStaticom
mponentResource urn:groove.net:PropertyList5o  urn:groove.net:ComponentResource URL(http://co
nts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponen
ts.GrooveCommonComponents_DLL&Version=0&Factory=Static5 urn:groove.net:PropertyList
 VAlignment
Centere LabelClass Name:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Co
oupIsHiddenCheckBox  urn:groove.net:ComponentResource urn:groove.net:PropertyList7o  urn:groo
e.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Pac
kage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Facto
ry=Buttone7 urn:groove.net:PropertyList StyleCheckboxw LabelGroup Is HiddenCheckbox  true  __Ve
,1,0,0
$FontSelectorLayout ,ColumnWidthEditControl TotalCheckBox2EditScriptCodeControlView
AdvancedButtonl
$MacroWindowSubFormt 2*LookupColumnKeyLayout&{W MainLayoutpo ~*LookupColumnKeyLayout&{W
tors  urn:groove.net:ComponentResource urn:groove.net:PropertyList8o  urn:groove.net:Componen
Resource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static 8 urn:groov
e.net:PropertyList BackgroundStyleSeparator  __Version4,1,0,0 urn:groove.net:Component
nnerViewContainer  urn:groove.net:ComponentResource# urn:groove.net:ComponentConnection
s{  urn:groove.net:ComponentResource URL6http://components.groove.net/Groove/Components/Root.
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&Factory=ViewContainer]# urn:groove.net:ComponentConnections urn:groove.net:Connection  urn:g
net:Connection
 ConnectionID0 Name.EditTabGroupInnerLayout urn:groove.net:Component Name.EditTabGroupInne
roove.net:ComponentResource urn:groove.net:PropertyList9   urn:groove.net:ComponentResource U
://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.To
olComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx9 urn:groo
ve.net:PropertyList  __Version4,1,0,0  _G_Layout Layout:C: Layout9 urn:groove.net:P
; urn:groove.net:PropertyValue: MULTIROW<  8<MULTIROW;
  ROW= ROW?(= ROW< CELL>u> CELL= HEIGHT23e
sLabel5? ROW< CELL@ CELLA @  CELL? WIDTH225 LeftPad10RightPad  5  BottomPad10 CreateTabViewCon
ottomPad10 EditTabViewContainer) urn:groove.net:Component Name,CreateTabViewContainer  urn
omponentResource*# urn:groove.net:ComponentConnections+{*  urn:groove.net:ComponentResou
rce) URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]+# u
rn:groove.net:ComponentConnections) urn:groove.net:Connection,u, urn:groove.net:Connection
+
 ConnectionID0 NameCreateTabLayout   S T .   XJ urn:groove.net:Component Name(ColumnPrope
onentResource# urn:groove.net:ComponentConnections SCRIPT SCRIPT SCRIPTINTERFACE  SCRIPT urn:g
rtyList urn:groove.net:PropertyListw  urn:groove.net:ComponentResource URL2http://component
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=ScriptHost2
# urn:groove.net:ComponentConnectionsO urn:groove.net:Connection urn:groove.net:Connection ur
ve.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connecti
groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Conn
tion urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove
nnection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:gr
t:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection ur
e.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connectio
roove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Conne
ion  urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.
nection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:gro
:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn
.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection
oove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connec
on  urn:groove.net:Connection urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.n
ection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groo
Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:
net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection 
ove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connect
n urn:groove.net:Connection urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.n
ection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groo
Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:
net:Connection } urn:groove.net:Connection Name$InnerViewContainer
 ConnectionID0q urn:groove.net:Connection NameBasicsLayoutom
 ConnectionID1i urn:groove.net:Connection NameOKButton:
 ConnectionID2q urn:groove.net:Connection NameCancelButton</
 ConnectionID3  urn:groove.net:Connection Name.ColumnHeaderEditControl
 ConnectionID4  urn:groove.net:Connection Name,ColumnWidthEditControl
 ConnectionID5  urn:groove.net:Connection Name6ColumnWidthPixelRadioButton
 ConnectionID6  urn:groove.net:Connection Name:ColumnWidthPercentRadioButton
 ConnectionID7  urn:groove.net:Connection Name*SortAscendingCheckBox
 ConnectionID8  urn:groove.net:Connection Name,SortDescendingCheckBox
 ConnectionID9  urn:groove.net:Connection Name$ShowTwistyCheckBoxac
 ConnectionID10  urn:groove.net:Connection Name.ColumnPrecisionCombobox
 ConnectionID11u urn:groove.net:Connection NameTotalCheckBox
 ConnectionID12  urn:groove.net:Connection Name<IncludeChildrenInTotalCheckBox
 ConnectionID13} urn:groove.net:Connection Name SortTypeCombobox
 ConnectionID13  urn:groove.net:Connection Name$AutoFitRadioButtonpo
 ConnectionID14  urn:groove.net:Connection Name*CustomSizeRadioButton
 ConnectionID15  urn:groove.net:Connection Name.HJustifyLeftRadioButton
 ConnectionID16  urn:groove.net:Connection Name2HJustifyCenterRadioButton
 ConnectionID17  urn:groove.net:Connection Name0HJustifyRightRadioButton
 ConnectionID18s} urn:groove.net:Connection Name FontBoldCheckBoxro
 ConnectionID20   urn:groove.net:Connection Name$FontItalicCheckBoxyl
 ConnectionID21  urn:groove.net:Connection Name*FontUnderlineCheckBox
 ConnectionID22lu urn:groove.net:Connection NameFontFaceNameer
 ConnectionID23em urn:groove.net:Connection NameFontSizeR
 ConnectionID24yurn:groove.net:Connection NameFontColorButton
 ConnectionID25yurn:groove.net:Connection NameWebBrowserViewm
 ConnectionID26  urn:groove.net:Connection Name,VJustifyTopRadioButton
 ConnectionID27e urn:groove.net:Connection Name2VJustifyCenterRadioButton
 ConnectionID28  urn:groove.net:Connection Name2VJustifyBottomRadioButton
 ConnectionID29  urn:groove.net:Connection Name$DateFormatComboboxnd
 ConnectionID30}urn:groove.net:Connection Name ApplyToAllButtonb
 ConnectionID31  urn:groove.net:Connection Name0SortTypeDescriptionLabel
 ConnectionID32Yeurn:groove.net:Connection NameTabst
 ConnectionID33}urn:groove.net:Connection Name"GroupTypeCombobox
 ConnectionID34eurn:groove.net:Connection NameHMaintainHierarchyWithinGroupCheckBox
 ConnectionID35  urn:groove.net:Connection Name&SecondarySortLayout
 ConnectionID36  urn:groove.net:Connection Name8IncludeSecondarySortCheckbox
 ConnectionID37uurn:groove.net:Connection NameSortingLayout
 ConnectionID39  urn:groove.net:Connection Name4SecondarySortOrderCombobox
 ConnectionID40y urn:groove.net:Connection Name2SecondarySortNameCombobox
 ConnectionID41qurn:groove.net:Connection NameFontButtonom
 ConnectionID42  urn:groove.net:Connection Name0PropertyValueEditControlo
 ConnectionID43  urn:groove.net:Connection Name2PropertyValueEditControl2
 ConnectionID44  urn:groove.net:Connection Name0PropertyDescriptionLabel
 ConnectionID45}urn:groove.net:Connection Name"DisplayValueLabel
 ConnectionID46}urn:groove.net:Connection Name StoredValueLabelo
 ConnectionID47I urn:groove.net:Connection Name2PropertySubPropertyLayout
 ConnectionID48yurn:groove.net:Connection NameChoicesListView
 ConnectionID49yurn:groove.net:Connection NameAddOptionButton
 ConnectionID50  urn:groove.net:Connection Name$CancelOptionButtonEL
 ConnectionID51  urn:groove.net:Connection Name$ModifyOptionButtonEL
 ConnectionID51  urn:groove.net:Connection Name$RemoveOptionButtonIG
 ConnectionID51  urn:groove.net:Connection Name4PropertyValueViewContainer
 ConnectionID52  urn:groove.net:Connection Name&DefaultOptionButton
 ConnectionID53ueyurn:groove.net:Connection NameSortListButtonHT
 ConnectionID54  urn:groove.net:Connection Name8ColumnWidthPointsRadioButton
 ConnectionID55murn:groove.net:Connection NameUpButtonT=
 ConnectionID56qurn:groove.net:Connection NameDownButtonon
 ConnectionID57murn:groove.net:Connection NamePageTitle
 ConnectionID404}urn:groove.net:Connection Name"ColumnHeaderLabel
 ConnectionID404}urn:groove.net:Connection Name ColumnWidthLabel
 ConnectionID404qurn:groove.net:Connection NameWidthLabelTo
 ConnectionID404uurn:groove.net:Connection NameSortTypeLabel
 ConnectionID404murn:groove.net:Connection NameSortLabel
 ConnectionID404 urn:groove.net:Connection Name(SortDescriptionLabelro
 ConnectionID404yurn:groove.net:Connection NameGroupTypeLabele
 ConnectionID404yurn:groove.net:Connection NameGroupSortLabelm
 ConnectionID404yurn:groove.net:Connection NameDateFormatLabel
 ConnectionID404yurn:groove.net:Connection NamePrecisionLabelt
 ConnectionID404murn:groove.net:Connection NameFontLabel
 ConnectionID404murn:groove.net:Connection NameSizeLabel
 ConnectionID404 urn:groove.net:Connection Name&HJustificationLabel
 ConnectionID404 urn:groove.net:Connection Name&VJustificationLabel
 ConnectionID404 urn:groove.net:Connection Name,ValueSubstitutionLabel
 ConnectionID404yurn:groove.net:Connection NameCannotSortLabel
 ConnectionID404}urn:groove.net:Connection Name"DisplayValueLabel
 ConnectionID404}urn:groove.net:Connection Name StoredValueLabelo
 ConnectionID404yurn:groove.net:Connection NameFontStyleLabele
 ConnectionID404qSCRIPT SRCDhttp://components.groove.net/Groove/Components/Root.osd?Package=
.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Version
=5&Factory=OpenoniSCRIPT SRC<http://components.groove.net/Groove/Components/Root.osd?Package
=net.groove.Groove.Tools.Business.GrooveForms.GrooveFormsChoicesGlue_GSL&Version
=5&Factory=OpenpoSCRIPTINTERFACE LIBIDL{366DFD51-2C22-438d-9135-5093E3102447}ox IIDL{FEB7FF1
B6F2-47c5-B59B-372BB474D508}l NAMEZIGrooveFormsToolColumnPropertiesDialogPrivate
function InitializeDialo
g(i_Account, i_CP, i_pDesigner, i_pUIDelegate, i_pIFields, i_pIViewColumns, i_Ca
nSortOnColumn, i_CanGroupOnColumn)
{
g_Account = i_Ac
count;
g_CallbackCode =
i_pDesigner;
g_UIDelegate = i
_pUIDelegate;
g_Fields = i_pIF
ields;
g_Columns = i_pI
ViewColumns;
g_CanSort = i_Ca
nSortOnColumn;
g_CanGroup = i_C
anGroupOnColumn;
Priv = g_Callbac
kCode;
GroupedString =
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_GROUPED);
HierarchicalStri
ng = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_HIERARCHICAL);
FlatString = Pri
v.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_FLAT);
NoneString = Pri
v.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_FLD_WIZ_VAL_NONE);
g_IsInfoPathTool
= g_CallbackCode.IsInfoPathTool;
InitializeCompon
entStrings();
SetCP(i_CP);
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
function GetModifiedView
Column()
{
return g_CP;
}
function GetIsDirty()
{
return g_DirtyCP
;
}
E#SCRIPT"#
// Constants use for checkstate
of radio buttons and check boxes.
var GCS_CHECKED = GrooveCheckSta
te_Checked;
var GCS_UNCHECKED = GrooveCheckS
tate_Unchecked;
var g_CP = null;
var g_Account;
var g_CallbackCode;
var g_UIDelegate;
var g_Fields;
var g_Columns;
var g_DirtyCP = false;
var g_IsReady = false;
var g_Color = "#000000";
var g_TypeComboClosed = true;
var g_CurrentFontDesc;
var Priv = g_CallbackCode;
var g_CanSort = true;
var g_CanGroup = true;
var g_IsInfoPathTool = false;
var SHORT;
var MEDIUM;
var LONG;
var FULL;
var HOUR_12;
var HOUR_24;
var DAY_IN_MONTH;
var DAY_IN_WEEK_FULL;
var DAY_IN_WEEK_ABBREV;
var DAY_IN_YEAR;
var WEEK_IN_MONTH;
var WEEK_IN_YEAR;
var MONTH_AS_TEXT_FULL;
var MONTH_AS_TEXT_ABBREV;
var MONTH_AS_NUM_FULL;
var MONTH_AS_NUM_SHORT;
var YEAR_AS_FULL;
var YEAR_AS_SHORT;

var BASICS_TAB_NAME;
var BASIC_TAB_URL = "B";
var OPTIONS_TAB_NAME;
var OPTIONS_TAB_URL = "O";
var SORTS_TAB_NAME;
var SORTS_TAB_URL = "S";
var CHOICES_TAB_NAME;
var CHOICES_TAB_URL = "C";
var g_CurrentTabURL;
var MultiCellSizeObj = GrooveScr
iptFunctions.CreateNewObject("Groove.MultiCellLayoutControlInfo");
var MultiCellCellObj = MultiCell
SizeObj.Cell();
MultiCellCellObj.Name = "GroupOp
tions";
var GroupedString;
var HierarchicalString;
var FlatString;
var NoneString;
function Initialize()
{
}
function OnSetUIProperties()
{
InnerViewContainer.SetFo
cus("ColumnHeaderEditControl");
}
function OnViewContainerShow()
{
}
function OnViewContainerHide()
{
g_IsReady = false;
}
function OnPostedEvent(i_Event)
{
if (i_Event == 8899)
{
SetColor(g_CP.Fo
ntColor);
}
}
function InitializeComponentStri
ngs()
{
// variables
SHORT = Priv.GetResource
dString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_SHORT);
MEDIUM = Priv.GetResourc
edString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MEDIUM);
LONG = Priv.GetResourced
String(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_LONG);
FULL = Priv.GetResourced
String(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_FULL);
HOUR_12 = Priv.GetResour
cedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_HOUR_12_HOUR);
HOUR_24 = Priv.GetResour
cedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_HOUR_24_HOUR);
DAY_IN_MONTH = Priv.GetR
esourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DAY_IN_MONTH);
DAY_IN_WEEK_FULL = Priv.
GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DAY_OF_WEEK);
DAY_IN_WEEK_ABBREV = Pri
v.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DAY_OF_WEEK_ABBR);
DAY_IN_YEAR = Priv.GetRe
sourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DAY_IN_YEAR);
WEEK_IN_MONTH = Priv.Get
ResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_WEEK_IN_MONTH);
WEEK_IN_YEAR = Priv.GetR
esourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_WEEK_IN_YEAR);
MONTH_AS_TEXT_FULL = Pri
v.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MONTH_FULL);
MONTH_AS_TEXT_ABBREV = P
riv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MONTH_ABBR);
MONTH_AS_NUM_FULL = Priv
.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MONTH_FULL_NUM);
MONTH_AS_NUM_SHORT = Pri
v.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MONTH_SHRT_NUM);
YEAR_AS_FULL = Priv.GetR
esourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_YEAR_FULL_NUM);
YEAR_AS_SHORT = Priv.Get
ResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_YEAR_SHRT_NUM);

BASICS_TAB_NAME = Priv.G
etResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_BASICS_TAB_NAME);
OPTIONS_TAB_NAME = Priv.
GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_OPTIONS_TAB_NAME);
SORTS_TAB_NAME = Priv.Ge
tResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SORTS_TAB_NAME);
CHOICES_TAB_NAME = Priv.
GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_VALUES_OPTIONS_TAB_NAME)
;
// setup the tabs
Tabs.DeleteAllTabs();
Tabs.AppendTab(BASICS_TA
B_NAME, BASIC_TAB_URL);
Tabs.AppendTab(OPTIONS_T
AB_NAME, OPTIONS_TAB_URL);
Tabs.AppendTab(SORTS_TAB
_NAME, SORTS_TAB_URL);
// Components
PageTitle.SetText(Priv.G
etResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_COL_PROPS));
OKButton.Label = Priv.Ge
tResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
CancelButton.Label = Pri
v.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
ColumnHeaderLabel.SetTex
t(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_COL_HEADER));
ColumnWidthLabel.SetText
(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_COL_WIDTH));
WidthLabel.SetText(Priv.
GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_WIDTH));
ColumnWidthPixelRadioBut
ton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_PIXELS)
;
ColumnWidthPointsRadioBu
tton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_POINTS
);
ColumnWidthPercentRadioB
utton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_PERCE
NT);
AutoFitRadioButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_AUTOFIT);
CustomSizeRadioButton.La
bel = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_CUSTOM_SIZE);
SortTypeLabel.SetText(Pr
iv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SORT_TYPE));
SortLabel.SetText(Priv.G
etResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SORTING));
SortDescriptionLabel.Set
Text(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SORTING_DESC))
;
SortAscendingCheckBox.La
bel = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_ASCENDING);
SortDescendingCheckBox.L
abel = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_DESCENDING);
GroupTypeLabel.SetText(P
riv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_GROUPED));
MaintainHierarchyWithinG
roupCheckBox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PRO
P_MAINT_HIER);
GroupSortLabel.SetText(P
riv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SORT_GROUP_FLD));
IncludeSecondarySortChec
kbox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SECOND
ARY_SORT);
ShowTwistyCheckBox.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SHOW_TWISTY);
DateFormatLabel.SetText(
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_DATE_FORMAT));
PrecisionLabel.SetText(P
riv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_DECIMAL_PLACES));
TotalCheckBox.Label = Pr
iv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_TOTAL_VALUES);
IncludeChildrenInTotalCh
eckBox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_INC_
ALL_LEVELS);
IncludeChildrenInTotalCh
eckBox.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_TOT
AL_RESP_TIP);
FontStyleLabel.SetText(P
riv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_FONT_STYLE));
//FontButton.Label = Pri
v.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SPACE_FONT);
FontButton.Tooltip = Pri
v.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_FONT_FOR_COL);
FontLabel.SetText(Priv.G
etResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_FONT));
SizeLabel.SetText(Priv.G
etResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SIZE));
//FontColorButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_FONT_COLOR);
FontColorButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_COL_FONT_COLOR);
FontBoldCheckBox.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_BOLD);
FontItalicCheckBox.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_ITALIC);
FontUnderlineCheckBox.La
bel = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_UNDERLINE);
HJustificationLabel.SetT
ext(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_HORZ_JUST));
HJustifyLeftRadioButton.
Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_LEFT);
HJustifyCenterRadioButto
n.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_CENTER);
HJustifyRightRadioButton
.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_RIGHT);
VJustificationLabel.SetT
ext(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_VERT_JUST));
VJustifyTopRadioButton.L
abel = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_TOP);
VJustifyCenterRadioButto
n.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_CENTER);
VJustifyBottomRadioButto
n.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_BOTTOM);
ApplyToAllButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_APPLY_TO_ALL);
ApplyToAllButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_APPLY_TO_ALL);
ValueSubstitutionLabel.S
etText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_VALUE_SUBST)
);
CannotSortLabel.SetText(
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_CANNOT_SORT));
// Comboboxes and list b
oxes
SortTypeCombobox.ResetCo
ntent();
SortTypeCombobox.AddItem
(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_FLAT));
if (!g_IsInfoPathTool)
SortTypeCombobox
.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_HIERARCHICAL))
;
SortTypeCombobox.AddItem
(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_GROUPED));
GroupTypeCombobox.ResetC
ontent();
GroupTypeCombobox.AddIte
m(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_UNIQUE_VALUES));
GroupTypeCombobox.AddIte
m(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_HOURS));
GroupTypeCombobox.AddIte
m(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DAYS));
GroupTypeCombobox.AddIte
m(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_WEEKS));
GroupTypeCombobox.AddIte
m(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MONTHS));
GroupTypeCombobox.AddIte
m(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_YEARS));
SecondarySortOrderCombob
ox.ResetContent();
SecondarySortOrderCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_ASCENDING));
SecondarySortOrderCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DESCENDING))
;
var Index;
DateFormatCombobox.Reset
Content();
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_SHORT));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_ShortDate);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_LONG));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_LongDate);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_HOUR_12_HOUR
));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_Hour);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_HOUR_24_HOUR
));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_HourInDay);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DAY_IN_MONTH
));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_DayInMonth);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DAY_OF_WEEK)
);
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_DayOfWeek);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DAY_OF_WEEK_
ABBR));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_ShortDayOfWeek);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DAY_IN_YEAR)
);
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_DayInYear);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_WEEK_IN_MONT
H));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_WeekInMonth);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_WEEK_IN_YEAR
));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_WeekInYear);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MONTH_FULL))
;
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_Month);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MONTH_ABBR))
;
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_ShortMonth);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MONTH_FULL_N
UM));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_MonthInYear);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_MONTH_SHRT_N
UM));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_ShortMonthInYear);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_YEAR_FULL_NU
M));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_Year);
Index = DateFormatCombob
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_YEAR_SHRT_NU
M));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_ShortYear);
// Add the dynamic local
e centric items (3.0f or later)
// Need to call message
format for all of these
var BSTREnum = CreateBST
REnum();
BSTREnum.Add(g_UIDelegat
e.FormatDateTime((new Date).valueOf(), GrooveIntlDateFormatStyle_Short, GrooveIn
tlDateFormatStyle_Short));
Index = DateFormatCombob
ox.AddItem(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DATE_TIME_SHT, BS
TREnum.IGrooveBSTREnum));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_ShortDateShortTime);
BSTREnum = CreateBSTREnu
m();
BSTREnum.Add(g_UIDelegat
e.FormatDateTime((new Date).valueOf(), GrooveIntlDateFormatStyle_Long, GrooveInt
lDateFormatStyle_Long));
Index = DateFormatCombob
ox.AddItem(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_DATE_TIME_MED , B
STREnum.IGrooveBSTREnum));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_LongDateLongTime);
BSTREnum = CreateBSTREnu
m();
BSTREnum.Add(FormatTime(
(new Date).valueOf(), GrooveIntlDateFormatStyle_Short));
Index = DateFormatCombob
ox.AddItem(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_TIME_AS_SHT , BST
REnum.IGrooveBSTREnum));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_ShortTime);
BSTREnum = CreateBSTREnu
m();
BSTREnum.Add(FormatTime(
(new Date).valueOf(), GrooveIntlDateFormatStyle_Long));
Index = DateFormatCombob
ox.AddItem(Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_TIME_AS_MED , BST
REnum.IGrooveBSTREnum));
DateFormatCombobox.SetIt
emData(Index, GrooveDataListDateTimeFormat_MediumTime);
ColumnPrecisionCombobox.
ResetContent();
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_ZERO));
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_ONE));
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_TWO));
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_THREE));
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_FOUR));
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_FIVE));
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_SIX));
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_SEVEN));
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_EIGHT));
ColumnPrecisionCombobox.
AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_NINE));
// GrooveForms5Choices.g
rp
DisplayValueLabel.SetTex
t(Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_DISPLAY_VALUE));
StoredValueLabel.SetText
(Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_STORED_VALUE));
DefaultOptionButton.Labe
l = Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_SELECT_BY_DEFAULT);
ModifyOptionButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_MODIFY);
RemoveOptionButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_DELETE);
SortListButton.Tooltip =
Priv.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_SORT);
UpButton.Tooltip = Priv.
GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_TOOLTIP_MOVE_UP);
DownButton.Tooltip = Pri
v.GetResourcedString(IDS_FORMS_TOOL_CHOICES_GRP_TOOLTIP_MOVE_UP);
ChoicesListView.SetColum
nHeaderText(ChoicesListView.ColumnCount > 2 ? 1 : 0, Priv.GetResourcedString(IDS
_FORMS_TOOL_CHOICES_GRP_DISPLAY_VALUE));
ChoicesListView.SetColum
nHeaderText(ChoicesListView.ColumnCount > 2 ? 2 : 1, Priv.GetResourcedString(IDS
_FORMS_TOOL_CHOICES_GRP_STORED_VALUE));
}
// Tab Control Sink
function Tabs_OnSelectionChanged
(i_URL, i_KeyStates)
{
if (i_URL != g_CurrentTa
bURL)
{
g_CallbackCode.E
ndIMEComposition();
SelectTab(i_URL)
;
}
}
function SelectTab(i_URL)
{
Tabs.SetSelection(i_URL)
;
SetTabContents(i_URL);
}
function SetTabContents(i_URL)
{
// Setup our layout cont
rol objects
if (i_URL == BASIC_TAB_U
RL)
InnerViewContain
er.LayoutByName = "BasicsLayout";
else if (i_URL == OPTION
S_TAB_URL)
{
InnerViewContain
er.LayoutByName = "FontSelectorLayout";
var ColorChartUR
L = BuildPathFromBase("file", "FormsColorChart.html", "");
WebBrowserView.C
ontrol.Navigate(ColorChartURL);
PostEvent(8899,
0);
GrooveDebugFunct
ions.OutputString("\nFORMS TOOL: Color chart navigation started.\n");
}
else if (i_URL == SORTS_
TAB_URL)
{
if (g_CanSort ||
g_CanGroup)
{
InnerVie
wContainer.LayoutByName = "SortingLayout";
InitSort
Type();
}
else
{
InnerVie
wContainer.LayoutByName = "NoSortLayout";
}
}
else if (i_URL == CHOICE
S_TAB_URL)
{
InnerViewContain
er.LayoutByName = "ChoicesLayout";
}
g_CurrentTabURL = i_URL;
}
function InitSortType()
{
if (g_CP != null)
{
var ViewHasGroup
edColumn = false;
var ColumnEnum =
g_Columns.CreateEnum();
while(ColumnEnum
.HasMore())
{
var Colu
mn = ColumnEnum.OpenNext();
if (Colu
mn.SortType == GrooveFormsToolViewColumnSortType_Grouped &&
Column.Name != g_CP.Name)
{
ViewHasGroupedColumn = true;
break;
}
}
if (g_CanSort &&
(ViewHasGroupedColumn || (g_CP.DisplayType == GrooveFormsToolViewColumnDisplayT
ype_Number &&
TotalChe
ckBox.CheckState == GCS_CHECKED)))
{
if (Sort
TypeCombobox.FindStringExact(0, GroupedString) != -1)
SortTypeCombobox.RemoveItemByText(GroupedString);
}
else if (g_CanGr
oup && !g_CanSort && !ViewHasGroupedColumn)
{
if (g_CP.Dis
playType != GrooveFormsToolViewColumnDisplayType_Number || (g_CP.DisplayType ==
GrooveFormsToolViewColumnDisplayType_Number && TotalCheckBox.CheckState == GCS_U
NCHECKED))
{
if (Sort
TypeCombobox.FindStringExact(0, HierarchicalString) != -1)
Sort
TypeCombobox.RemoveItemByText(HierarchicalString);
if (Sort
TypeCombobox.FindStringExact(0, FlatString) != -1)
Sort
TypeCombobox.RemoveItemByText(FlatString);
if (Sort
TypeCombobox.FindStringExact(0, NoneString) == -1)
Sort
TypeCombobox.InsertItem(0, NoneString);
}
else
g_CanGro
up = false;
}
else
{
if (Sort
TypeCombobox.FindStringExact(0, GroupedString) == -1)
SortTypeCombobox.AddItem(GroupedString);
if (!g_I
sInfoPathTool)
{
if (SortTypeCombobox.FindStringExact(0, HierarchicalString) == -1)
SortTypeCombobox.AddItem(HierarchicalString);
}
if (SortType
Combobox.FindStringExact(0, FlatString) == -1)
SortType
Combobox.AddItem(FlatString);
}
}
}
function FillChoicesListView()
{
InitChoices();
// Now that the ListView
is setup correctly
// add any necessary ite
ms to the list view
// First reset
ChoicesListView.ResetCon
tent();
if (g_CP.ValueSubstituti
ons !="")
{
// The ValueSubs
titutions string looks like this:
// storedvalue=d
isplayvalue|storedvalue=displayvalue...
// so we first h
ave to split the string into an array of
// stored=displa
y strings
var TokenStrings
Array = g_CP.ValueSubstitutions.split("|");
for (var i = 0;
i < TokenStringsArray.length; i++)
{
var Toke
n = TokenStringsArray[i];
// now f
or each token get the right and left of the =
var Stor
edValue = ConvertToOriginalName(Left(Token, "="));
var Disp
layValue = ConvertToOriginalName(Right(Token, "="));
// Now a
dd the items to the list view.
var inde
x = ChoicesListView.AddItem(DisplayValue);
ChoicesL
istView.SetItemText(index, 1, StoredValue);
}
}
}
function CreateValueSubstitution
sString()
{
var SubstituteString = "
";
var Count = ChoicesListV
iew.Count;
for (var i = 0; i < Coun
t; i++)
{
var StoredValue
= CreateValidXMLName(ChoicesListView.GetItemText(i, 1));
var DisplayValue
= CreateValidXMLName(ChoicesListView.GetItemText(i, 0));
var Token = Stor
edValue + "=" + DisplayValue;
if (Count > 1 &&
i < (Count - 1))
Token +=
"|";
SubstituteString
+= Token;
}
return SubstituteString;
}
function InitChoices()
{
ResetOption();
// fill in the choices h
ere.
// setup the UI first
// Disable option button
s by default.
AddOptionButton.Enabled
= false;
CancelOptionButton.Enabl
ed = false;
ModifyOptionButton.Enabl
ed = false;
RemoveOptionButton.Enabl
ed = false;
if (PropertySubPropertyL
ayout.IsControlInLayout("DefaultOptionButton"))
PropertySubPrope
rtyLayout.RemoveControl("DefaultOptionButton");
var ColumnCount = Choice
sListView.ColumnCount;
if (ColumnCount > 2)
ChoicesListView.
RemoveColumn(0);
ChoicesListView.FitLastC
olumnToWidth = true;
}
function ShowHideChoicesTab()
{
if (Tabs.FindTabPosition
(CHOICES_TAB_URL) > -1)
Tabs.DeleteTab(C
HOICES_TAB_URL);
if (g_CP != null)
{
var pField = g_F
ields.OpenByName(g_CP.Name);
var Type = pFiel
d.FieldType;
if (Type == Groo
veFormsToolFieldType_DropDownList ||
Type ==
GrooveFormsToolFieldType_CheckBox ||
Type ==
GrooveFormsToolFieldType_ListBox ||
Type ==
GrooveFormsToolFieldType_OptionButtons)
Tabs.App
endTab(CHOICES_TAB_NAME, CHOICES_TAB_URL);
}
}
function ShowHideOptionsTab()
{
if (g_CP != null)
{
var pField = g_F
ields.OpenByName(g_CP.Name);
var Type = pFiel
d.FieldType;
if (Type == Groo
veFormsToolFieldType_RichText ||
Type ==
GrooveFormsToolFieldType_Attachments)
{
if (Tabs
.FindTabPosition(OPTIONS_TAB_URL) > -1)
Tabs.DeleteTab(OPTIONS_TAB_URL);
}
else
{
if (Tabs
.FindTabPosition(OPTIONS_TAB_URL) == -1)
Tabs.AppendTab(OPTIONS_TAB_NAME, OPTIONS_TAB_URL);
}
}
}
function NeedToAddOption()
{
if (PropertyValueEditCon
trol.Text != "")
{
AddOption(Proper
tyValueEditControl.Text, PropertyValueEditControl2.Text);
ResetOption();
g_DirtyCP = true
;
}
}
function AddOptionButton_OnComma
nd(i_UICommand)
{
if (PropertyValueEditCon
trol.Text != "")
{
AddOption(Proper
tyValueEditControl.Text, PropertyValueEditControl2.Text);
ResetOption();
g_DirtyCP = true
;
}
}
function AddOption(i_SecondColum
n, i_ThirdColumn)
{
if (!g_ModifyOption)
var index = Choi
cesListView.AddItem(i_SecondColumn);
else
{
var index = Choi
cesListView.SelectionIndex;
ChoicesListView.
SetItemText(index, 0, i_SecondColumn);
}
if (i_ThirdColumn == "")
ChoicesListView.
SetItemText(index, 1, i_SecondColumn);
else
ChoicesListView.
SetItemText(index, 1, i_ThirdColumn);
g_ModifyOption = false;
}
function ModifyChoices()
{
var SelectionIndex = Cho
icesListView.SelectionIndex;
if (SelectionIndex >= 0)
{
PropertyValueEdi
tControl.Text = ChoicesListView.GetItemText(SelectionIndex, 0);
PropertyValueEdi
tControl2.Text = ChoicesListView.GetItemText(SelectionIndex, 1);
}
g_ModifyOption = true;
g_DirtyCP = true;
}
function ListObject()
{
this.Display;
this.Value;
}
function SortListButton_OnComman
d(i_UICommand)
{
var ListArray = new Arra
y();
var i = 0;
var iCount = ChoicesList
View.Count;
while (i < iCount)
{
var ListObj = ne
w ListObject;
ListObj.Display
= ChoicesListView.GetItemText(i, 1);
ListObj.Value =
ChoicesListView.GetItemText(i, 0);
ListArray[i] = L
istObj;
i++;
}
ListArray.sort(CompareLi
st);
ChoicesListView.ResetCon
tent();
var i = 0;
var iCount = ListArray.l
ength;
while (i < iCount)
{
var Index = Choi
cesListView.AddItem(ListArray[i].Value);
ChoicesListView.
SetItemText(Index, 1, ListArray[i].Display);
i++;
}
g_DirtyCP = true;
}
function CompareList(ListObjA, L
istObjB)
{
return g_CallbackCode.Co
mpareStringsWithLocale(ListObjA.Display, ListObjB.Display);
}
function SetPropertyValue()
{
g_DirtyCP = true;
}
function PropertyValueEditContro
l_OnChange(i_Name)
{
if (PropertyValueEditCon
trol.Text != "")
{
AddOptionButton.
Enabled = true;
CancelOptionButt
on.Enabled = true;
}
}
function SetColor(i_Color)
{
try
{
if (g_IsReady)
WebBrows
erView.Control.Document.body.style.backgroundColor = i_Color;
else
g_Color
= i_Color;
}
catch(error)
{
}
}
function DocumentReady(i_IsReady
)
{
g_IsReady = i_IsReady;
if (i_IsReady)
SetColor(g_Color
);
}
function GetHelpProvider()
{
try
{
var RTFHelpProvi
der = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenComponentB
yName("RTFHelpProvider");
return RTFHelpPr
ovider;
}
catch(error)
{
}
finally
{
RTFHelpProvider
= null;
delete RTFHelpPr
ovider;
CollectGarbage()
;
}
}
function SetCP(i_CP)
{
g_CP = i_CP;
g_CurrentFontDesc = g_CP
.IGrooveFormsToolViewColumnPrivate.FontSettings;
ResetUI();
InitUI();
g_DirtyCP = false;
}
function ResetUI()
{
// Reset all input contr
ol in the sub form.
ColumnHeaderEditControl.
Text = "";
ColumnWidthEditControl.T
ext = "";
ColumnWidthPixelRadioBut
ton.CheckState = GCS_CHECKED;
ColumnWidthPointsRadioBu
tton.CheckState = GCS_UNCHECKED;
ColumnWidthPercentRadioB
utton.CheckState = GCS_UNCHECKED;
SortAscendingCheckBox.Ch
eckState = GCS_UNCHECKED;
SortDescendingCheckBox.C
heckState = GCS_UNCHECKED;
ShowTwistyCheckBox.Check
State = GCS_UNCHECKED;
FontBoldCheckBox.CheckSt
ate = GCS_UNCHECKED;
FontItalicCheckBox.Check
State = GCS_UNCHECKED;
FontUnderlineCheckBox.Ch
eckState = GCS_UNCHECKED;
MaintainHierarchyWithinG
roupCheckBox.CheckState = GCS_CHECKED;
TotalCheckBox.CheckState
= GCS_UNCHECKED;
IncludeChildrenInTotalCh
eckBox.CheckState = GCS_UNCHECKED;
SecondarySortNameCombobo
x.ResetContent();
if (SecondarySortLayout.
IsControlInLayout("GroupOptionsViewContainer"))
SecondarySortLay
out.RemoveCellContents(MultiCellCellObj);
SecondarySortOrderCombob
ox.SetSelectionByIndex(0);
AddRemoveSecondarySort()
;
ChoicesListView.ResetCon
tent();
FontBoldCheckBox.Enabled
= true;
FontItalicCheckBox.Enabl
ed = true;
FontUnderlineCheckBox.En
abled = true;
FontButton.Enabled = tru
e;
FontColorButton.Enabled
= true;
}
function InitUI()
{
SelectTab(BASIC_TAB_URL)
;
ShowHideChoicesTab();
ShowHideOptionsTab();
FillChoicesListView();
// set the default for t
he secondary sort name.
SecondarySortNameCombobo
x.SetSelectionByIndex(-1);
var FieldEnum = g_Fields
.CreateEnum();
var HasSetSpecificSelection = false;
while (FieldEnum.HasMore
())
{
var Field = Fiel
dEnum.OpenNext();
if ((Field.IsPer
sistable || Field.FieldType == GrooveFormsToolFieldType_SystemField) &&
Field.IG
rooveFormsToolDesignObject.Name != g_CP.Name &&
Field.Fi
eldType != GrooveFormsToolFieldType_Attachments &&
Field.Fi
eldType != GrooveFormsToolFieldType_Contact &&
Field.Fi
eldType != GrooveFormsToolFieldType_EmbeddedView &&
(g_CanSo
rt || g_CanGroup))
{
var Item
Name = Field.IGrooveFormsToolDesignObject.Name;
if (g_Ca
llbackCode.IsColumnSortable(ItemName))
{
index = SecondarySortNameCombobox.AddItem(ItemName);
SecondarySortNameCombobox.SetItemData(index, Field.IGrooveFormsToolDesignObject.
Name);

if (g_CP.SecondarySortColumnName == Field.IGrooveFormsToolDesignObject.Name)
{
SecondarySortNameCombobox.SetSelectionByIndex(index);
HasSetSpecificSelection = true;
}
else if (g_CP.SortType == GrooveFormsToolViewColumnSortType_Grouped &&
g_CP.SecondarySortColumnName == "" &&
Field.IGrooveFormsToolDesignObject.Name == "_Created")
{
SecondarySortNameCombobox.SetSelectionByIndex(index);
HasSetSpecificSelection = true;
}
else if (!HasSetSpecificSelection)
SecondarySortNameCombobox.SetSelectionByText("_Created");
}
}
}
if (g_CP.GroupSortType =
= GrooveFormsToolViewColumnSortType_Hierarchical)
MaintainHierarch
yWithinGroupCheckBox.CheckState = GCS_CHECKED;
else
MaintainHierarch
yWithinGroupCheckBox.CheckState = GCS_UNCHECKED;

if (g_CP.DisplayType !=
GrooveFormsToolViewColumnDisplayType_Date)
{
GroupTypeCombobo
x.SetSelectionByIndex(0);
GroupTypeCombobo
x.Enabled = false;
}
else
{
var index = 0;
if (g_CP.GroupTy
pe == GrooveDataListGroupType_UniqueFieldValues)
index =
0;
else if (g_CP.Gr
oupType == GrooveDataListGroupType_Hours)
index =
1;
else if (g_CP.Gr
oupType == GrooveDataListGroupType_Days)
index =
2;
else if (g_CP.Gr
oupType == GrooveDataListGroupType_Weeks)
index =
3;
else if (g_CP.Gr
oupType == GrooveDataListGroupType_Months)
index =
4;
else if (g_CP.Gr
oupType == GrooveDataListGroupType_Years)
index =
5;
GroupTypeCombobo
x.SetSelectionByIndex(index);
GroupTypeCombobo
x.Enabled = true;
}
ColumnHeaderEditControl.
Text = g_CP.HeaderText;
ColumnWidthEditControl.T
ext = g_CP.Width;
// Select the appropriat
e width style in the radio buttons.
if (g_CP.WidthStyle == G
rooveFormsToolViewColumnWidthStyle_Percent)
{
ColumnWidthPixel
RadioButton.CheckState = GCS_UNCHECKED;
ColumnWidthPoint
sRadioButton.CheckState = GCS_UNCHECKED;
ColumnWidthPerce
ntRadioButton.CheckState = GCS_CHECKED;
}
else if (g_CP.WidthStyle
== GrooveFormsToolViewColumnWidthStyle_Pixels)
{
ColumnWidthPixel
RadioButton.CheckState = GCS_CHECKED;
ColumnWidthPoint
sRadioButton.CheckState = GCS_UNCHECKED;
ColumnWidthPerce
ntRadioButton.CheckState = GCS_UNCHECKED;
}
else
{
ColumnWidthPixel
RadioButton.CheckState = GCS_UNCHECKED;
ColumnWidthPoint
sRadioButton.CheckState = GCS_CHECKED;
ColumnWidthPerce
ntRadioButton.CheckState = GCS_UNCHECKED;
}
if (g_CP.AutoFit)
{
AutoFitRadioButt
on.CheckState = GCS_CHECKED;
CustomSizeRadioB
utton.CheckState = GCS_UNCHECKED;
ShowWidthControl
s(false);
}
else
{
AutoFitRadioButt
on.CheckState = GCS_UNCHECKED;
CustomSizeRadioB
utton.CheckState = GCS_CHECKED;
ShowWidthControl
s(true);
}
// Select the appropriat
e sort order in the check boxes.
switch (g_CP.SortOrder)
{
case GrooveForms
ToolViewColumnSortOrder_Ascending:
SortAsce
ndingCheckBox.CheckState = GCS_CHECKED;
break;
case GrooveForms
ToolViewColumnSortOrder_Descending:
SortDesc
endingCheckBox.CheckState = GCS_CHECKED;
break;
case GrooveForms
ToolViewColumnSortOrder_Both:
SortAsce
ndingCheckBox.CheckState = GCS_CHECKED;
SortDesc
endingCheckBox.CheckState = GCS_CHECKED;
break;
}
if (SortAscendingCheckBo
x.CheckState == GCS_UNCHECKED &&
SortDescendingCh
eckBox.CheckState == GCS_UNCHECKED)
{
SecondarySortNam
eCombobox.Enabled = false;
SecondarySortOrd
erCombobox.Enabled = false;
}
// Need to init the sort
type first to make sure that
// Grouped is in the lis
t prior to setting the selection
InitSortType();
var SortTypeText;
if (g_CP.SortType == Gro
oveFormsToolViewColumnSortType_Hierarchical)
SortTypeText = Hiera
rchicalString;
else if (g_CP.SortType =
= GrooveFormsToolViewColumnSortType_Flat)
SortTypeText = FlatS
tring;
else if (g_CP.SortType =
= GrooveFormsToolViewColumnSortType_Grouped)
SortTypeText = Group
edString;
if (SortTypeCombobox.Fin
dStringExact(0, SortTypeText) != -1)
SortTypeCombobox.Set
SelectionByText(SortTypeText);
else
{
SortTypeCombobox.Set
SelectionByIndex(0); // The None case
SortAscendingChe
ckBox.Enabled = false;
SortAscendingChe
ckBox.CheckState = GCS_UNCHECKED;
SortDescendingCh
eckBox.Enabled = false;
SortDescendingCh
eckBox.CheckState = GCS_UNCHECKED;
IncludeSecondary
SortCheckbox.CheckState = GCS_UNCHECKED;
IncludeSecondary
SortCheckbox.Enabled = false;
SecondarySortNam
eCombobox.SetSelectionByText("_Created");
SecondarySortNam
eCombobox.Enabled = false;
}
DisplaySortTypeDescripti
on();
AddRemoveGroupOptions();
if (g_CP.SecondarySortCo
lumnName == "" && g_CP.SortType != GrooveFormsToolViewColumnSortType_Grouped)
IncludeSecondary
SortCheckbox.CheckState = GCS_UNCHECKED;
else
IncludeSecondary
SortCheckbox.CheckState = GCS_CHECKED;
if (g_CP.SecondarySortOr
der == GrooveFormsToolViewColumnSortOrder_Ascending)
SecondarySortOrd
erCombobox.SetSelectionByText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GR
P_ITEM_ASCENDING));
else if (g_CP.SecondaryS
ortOrder == GrooveFormsToolViewColumnSortOrder_Descending)
SecondarySortOrd
erCombobox.SetSelectionByText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GR
P_ITEM_DESCENDING));

AddRemoveSecondarySort()
;

// Check the Twisty box


if the ShowTwisty propertie is true.
if (g_CP.ShowTwisty)
ShowTwistyCheckB
ox.CheckState = GCS_CHECKED;
else
ShowTwistyCheckB
ox.CheckState = GCS_UNCHECKED;

// Remove the precision


combo box and label, and the Total if the field is not a number.
if (g_CP.DisplayType !=
GrooveFormsToolViewColumnDisplayType_Number &&
g_CP.DisplayType
!= GrooveFormsToolViewColumnDisplayType_Date)
{
if (BasicsLayout
.IsControlInLayout("PrecisionLabel"))
BasicsLa
yout.RemoveControl("PrecisionLabel");
if (BasicsLayout
.IsControlInLayout("ColumnPrecisionCombobox"))
BasicsLa
yout.RemoveControl("ColumnPrecisionCombobox");
if (BasicsLayout
.IsControlInLayout("TotalCheckBox"))
BasicsLa
yout.RemoveControl("TotalCheckBox");
if (BasicsLayout
.IsControlInLayout("IncludeChildrenInTotalCheckBox"))
BasicsLa
yout.RemoveControl("IncludeChildrenInTotalCheckBox");
ColumnPrecisionC
ombobox.SetSelectionByIndex(-1);
if (BasicsLayout
.IsControlInLayout("DateFormatLabel"))
BasicsLa
yout.RemoveControl("DateFormatLabel");
if (BasicsLayout
.IsControlInLayout("DateFormatCombobox"))
BasicsLa
yout.RemoveControl("DateFormatCombobox");
DateFormatCombob
ox.SetSelectionByIndex(-1);
}
else if (g_CP.DisplayTyp
e == GrooveFormsToolViewColumnDisplayType_Number)
{
if (BasicsLayout
.IsControlInLayout("DateFormatLabel"))
BasicsLa
yout.RemoveControl("DateFormatLabel");
if (BasicsLayout
.IsControlInLayout("DateFormatCombobox"))
BasicsLa
yout.RemoveControl("DateFormatCombobox");
DateFormatCombob
ox.SetSelectionByIndex(-1);
var TableSizeObj
= GrooveScriptFunctions.CreateNewObject("Groove.MultiCellLayoutControlInfo");
var TableCellObj
= TableSizeObj.Cell();
if (!BasicsLayou
t.IsControlInLayout("PrecisionLabel"))
{
TableCel
lObj.Name = "PrecisionLabel";
BasicsLa
yout.AddControlByName("PrecisionLabel", TableCellObj);
}
if (!BasicsLayou
t.IsControlInLayout("ColumnPrecisionCombobox"))
{
TableCel
lObj.Name = "ColumnPrecisionCombobox";
BasicsLa
yout.AddControlByName("ColumnPrecisionCombobox", TableCellObj);
}
if (!BasicsLayou
t.IsControlInLayout("TotalCheckBox"))
{
TableCel
lObj.Name = "TotalCheckBox";
BasicsLa
yout.AddControlByName("TotalCheckBox", TableCellObj);
}
if (!BasicsLayou
t.IsControlInLayout("IncludeChildrenInTotalCheckBox"))
{
TableCel
lObj.Name = "TotalCheckBox2";
BasicsLa
yout.AddControlByName("IncludeChildrenInTotalCheckBox", TableCellObj);
}
// Select the ap
propriate precision value in the combo box.
if (g_CP.Precisi
on)
{
if (g_CP
.Precision > 9)
g_CP.Precision = 9;
ColumnPr
ecisionCombobox.SetSelectionByText(g_CP.Precision);
}
else
ColumnPr
ecisionCombobox.SetSelectionByIndex(-1);
// Set the total
state
if (g_CP.TotalTy
pe != GrooveDataListViewColumnSummaryType_None)
TotalChe
ckBox.CheckState = GCS_CHECKED;
else
TotalChe
ckBox.CheckState = GCS_UNCHECKED;
if (g_CP.TotalTy
pe == GrooveDataListViewColumnSummaryType_FieldValuesSumIncludingChildren)
IncludeC
hildrenInTotalCheckBox.CheckState = GCS_CHECKED;
else
{
IncludeC
hildrenInTotalCheckBox.CheckState = GCS_UNCHECKED;
if (Tota
lCheckBox.CheckState == GCS_CHECKED)
IncludeChildrenInTotalCheckBox.Enabled = true;
else
IncludeChildrenInTotalCheckBox.Enabled = false;
}
}
else if (g_CP.DisplayTyp
e == GrooveFormsToolViewColumnDisplayType_Date)
{
if (BasicsLayout
.IsControlInLayout("PrecisionLabel"))
BasicsLa
yout.RemoveControl("PrecisionLabel");
if (BasicsLayout
.IsControlInLayout("ColumnPrecisionCombobox"))
BasicsLa
yout.RemoveControl("ColumnPrecisionCombobox");
if (BasicsLayout
.IsControlInLayout("TotalCheckBox"))
BasicsLa
yout.RemoveControl("TotalCheckBox");
if (BasicsLayout
.IsControlInLayout("IncludeChildrenInTotalCheckBox"))
BasicsLa
yout.RemoveControl("IncludeChildrenInTotalCheckBox");
ColumnPrecisionC
ombobox.SetSelectionByIndex(-1);

var TableSizeObj
= GrooveScriptFunctions.CreateNewObject("Groove.MultiCellLayoutControlInfo");
var TableCellObj
= TableSizeObj.Cell();
if (!BasicsLayou
t.IsControlInLayout("DateFormatLabel"))
{
TableCel
lObj.Name = "PrecisionLabel";
BasicsLa
yout.AddControlByName("DateFormatLabel", TableCellObj);
}
if (!BasicsLayou
t.IsControlInLayout("DateFormatCombobox"))
{
TableCel
lObj.Name = "ColumnPrecisionCombobox";
BasicsLa
yout.AddControlByName("DateFormatCombobox", TableCellObj);
}
// Select the ap
propriate format value in the combo box.
if (g_CP.DateFor
mat != -1)
SetSelec
tionByItemData(DateFormatCombobox, g_CP.DateFormat);
else
SetSelec
tionByItemData(DateFormatCombobox, GrooveDataListDateTimeFormat_LongDate);
}
else if (g_CP.DisplayTyp
e == GrooveFormsToolViewColumnDisplayType_RichText ||
g_CP.Dis
playType == GrooveFormsToolViewColumnDisplayType_Attachments)
{
// Disable the F
ontButton/ColorButton/Bold,Italic and Underline checkboxes
FontBoldCheckBox
.Enabled = false;
FontItalicCheckB
ox.Enabled = false;
FontUnderlineChe
ckBox.Enabled = false;
FontButton.Enabl
ed = false;
FontColorButton.
Enabled = false;
}
if (g_CP.FontStyleOption
s & GrooveFormsToolFontStyleOption_Bold)
FontBoldCheckBox
.CheckState = GCS_CHECKED;
if (g_CP.FontStyleOption
s & GrooveFormsToolFontStyleOption_Italics)
FontItalicCheckB
ox.CheckState = GCS_CHECKED;
if (g_CP.FontStyleOption
s & GrooveFormsToolFontStyleOption_Underline)
FontUnderlineChe
ckBox.CheckState = GCS_CHECKED;

SetFontControls(g_Curren
tFontDesc);
SetColor(g_CurrentFontDe
sc.RGBColor);
if (g_CP.HorizontalJusti
fication == GrooveFormsToolHorizontalJustification_Left)
{
HJustifyLeftRadi
oButton.CheckState = GCS_CHECKED;
HJustifyCenterRa
dioButton.CheckState = GCS_UNCHECKED;
HJustifyRightRad
ioButton.CheckState = GCS_UNCHECKED;
}
else if (g_CP.Horizontal
Justification == GrooveFormsToolHorizontalJustification_Center)
{
HJustifyLeftRadi
oButton.CheckState = GCS_UNCHECKED;
HJustifyCenterRa
dioButton.CheckState = GCS_CHECKED;
HJustifyRightRad
ioButton.CheckState = GCS_UNCHECKED;
}
else if (g_CP.Horizontal
Justification == GrooveFormsToolHorizontalJustification_Right)
{
HJustifyLeftRadi
oButton.CheckState = GCS_UNCHECKED;
HJustifyCenterRa
dioButton.CheckState = GCS_UNCHECKED;
HJustifyRightRad
ioButton.CheckState = GCS_CHECKED;
}
if (g_CP.VerticalJustifi
cation == GrooveFormsToolVerticalJustification_Top)
{
VJustifyTopRadio
Button.CheckState = GCS_CHECKED;
VJustifyCenterRa
dioButton.CheckState = GCS_UNCHECKED;
VJustifyBottomRa
dioButton.CheckState = GCS_UNCHECKED;
}
else if (g_CP.VerticalJu
stification == GrooveFormsToolVerticalJustification_Center)
{
VJustifyTopRadio
Button.CheckState = GCS_UNCHECKED;
VJustifyCenterRa
dioButton.CheckState = GCS_CHECKED;
VJustifyBottomRa
dioButton.CheckState = GCS_UNCHECKED;
}
else if (g_CP.VerticalJu
stification == GrooveFormsToolVerticalJustification_Bottom)
{
VJustifyTopRadio
Button.CheckState = GCS_UNCHECKED;
VJustifyCenterRa
dioButton.CheckState = GCS_UNCHECKED;
VJustifyBottomRa
dioButton.CheckState = GCS_CHECKED;
}
}
function ApplyCurrentProperties(
)
{
var ColumnWidth = Number
(ColumnWidthEditControl.Text);
// Verify that the colum
n width entered is a valid number.
if (AutoFitRadioButton.C
heckState == GCS_UNCHECKED && (isNaN(ColumnWidth) || ColumnWidthEditControl.Text
== ""))
return Propertie
sError(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_ERR_WDTH_MST
_BE_NUM));
// Verify that the colum
n width entered is not a negative number.
if (AutoFitRadioButton.C
heckState == GCS_UNCHECKED && ColumnWidth < 0)
return Propertie
sError(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_ERR_WDTH_MST
_BE_GRTR_ZERO));
var WidthStyle;
// Get the width style f
or the column property object.
if (ColumnWidthPercentRa
dioButton.CheckState == GCS_CHECKED)
WidthStyle = Gro
oveFormsToolViewColumnWidthStyle_Percent;
else if (ColumnWidthPoin
tsRadioButton.CheckState == GCS_CHECKED)
WidthStyle = Gro
oveFormsToolViewColumnWidthStyle_Points;
else
WidthStyle = Gro
oveFormsToolViewColumnWidthStyle_Pixels;
// If this was an auto-f
it column, and the user changed either
// the width, or the wid
th style, turn off auto-fit
if (AutoFitRadioButton.C
heckState == GCS_UNCHECKED && g_CP.AutoFit &&
(ColumnWidth !=
g_CP.Width || WidthStyle != g_CP.WidthStyle))
g_CP.AutoFit = f
alse;
else if (AutoFitRadioBut
ton.CheckState == GCS_CHECKED)
g_CP.AutoFit = t
rue;
else if (AutoFitRadioBut
ton.CheckState == GCS_UNCHECKED)
g_CP.AutoFit = f
alse;
// Set the width style
g_CP.WidthStyle = WidthS
tyle;
// Set the total
if (TotalCheckBox.CheckS
tate == GCS_CHECKED)
{
if (IncludeChild
renInTotalCheckBox.CheckState == GCS_CHECKED)
g_CP.Tot
alType = GrooveDataListViewColumnSummaryType_FieldValuesSumIncludingChildren;
else
g_CP.Tot
alType = GrooveDataListViewColumnSummaryType_FieldValuesSum;
}
else
g_CP.TotalType =
GrooveDataListViewColumnSummaryType_None;

// Set the sort type for


the column property
var SortTypeText = SortT
ypeCombobox.GetSelectionText();
if (SortTypeText == Flat
String)
g_CP.SortType =
GrooveFormsToolViewColumnSortType_Flat;
else if (SortTypeText ==
HierarchicalString)
g_CP.SortType =
GrooveFormsToolViewColumnSortType_Hierarchical;
else if (SortTypeText ==
GroupedString)
g_CP.SortType =
GrooveFormsToolViewColumnSortType_Grouped;
else if (SortTypeText ==
NoneString)
g_CP.SortType =
GrooveFormsToolViewColumnSortType_Hierarchical;
if (IncludeSecondarySort
Checkbox.CheckState == GCS_CHECKED)
{
if (SecondarySor
tNameCombobox.GetSelectionIndex() != -1)
{
g_CP.Sec
ondarySortColumnName = SecondarySortNameCombobox.GetSelectionText();
var strS
econdarySortOrder = SecondarySortOrderCombobox.GetSelectionText();
var Seco
ndarySortOrder;
if (strS
econdarySortOrder == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_AS
CENDING))
SecondarySortOrder = GrooveFormsToolViewColumnSortOrder_Ascending;
else if
(strSecondarySortOrder == Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_IT
EM_DESCENDING))
SecondarySortOrder = GrooveFormsToolViewColumnSortOrder_Descending;
g_CP.Sec
ondarySortOrder = SecondarySortOrder;
}
}
else
g_CP.SecondarySo
rtColumnName = "";
if (g_CP.SortType == Gro
oveFormsToolViewColumnSortType_Grouped)
{
// Set the Group
Options
// GroupType
var index = Grou
pTypeCombobox.GetSelectionIndex();
if (index == 0)
g_CP.Gro
upType = GrooveDataListGroupType_UniqueFieldValues;
else if (index =
= 1)
g_CP.Gro
upType = GrooveDataListGroupType_Hours;
else if (index =
= 2)
g_CP.Gro
upType = GrooveDataListGroupType_Days;
else if (index =
= 3)
g_CP.Gro
upType = GrooveDataListGroupType_Weeks;
else if (index =
= 4)
g_CP.Gro
upType = GrooveDataListGroupType_Months;
else if (index =
= 5)
g_CP.Gro
upType = GrooveDataListGroupType_Years;
// GroupSortType
if (MaintainHier
archyWithinGroupCheckBox.CheckState == GCS_CHECKED)
g_CP.Gro
upSortType = GrooveFormsToolViewColumnSortType_Hierarchical;
else
g_CP.Gro
upSortType = GrooveFormsToolViewColumnSortType_Flat;
}
else
g_CP.GroupType =
GrooveDataListGroupType_None;
// Set the header text a
nd column width for the column property object.
g_CP.HeaderText = Column
HeaderEditControl.Text;
g_CP.Width = ColumnWidth
;
// Set the sort order fo
r the column property object.
if (SortAscendingCheckBo
x.CheckState == GCS_CHECKED && SortDescendingCheckBox.CheckState == GCS_CHECKED)
g_CP.SortOrder =
GrooveFormsToolViewColumnSortOrder_Both;
else if (SortAscendingCh
eckBox.CheckState == GCS_CHECKED)
g_CP.SortOrder =
GrooveFormsToolViewColumnSortOrder_Ascending;
else if (SortDescendingC
heckBox.CheckState == GCS_CHECKED)
g_CP.SortOrder =
GrooveFormsToolViewColumnSortOrder_Descending;
else
g_CP.SortOrder =
GrooveFormsToolViewColumnSortOrder_Ordinal;
// Set the show Twisty f
or the column property object.
if (ShowTwistyCheckBox.C
heckState == GCS_CHECKED)
g_CP.ShowTwisty
= true;
else
g_CP.ShowTwisty
= false;
// Set the precision for
the column property object.
if (ColumnPrecisionCombo
box.GetSelectionIndex() != -1)
g_CP.Precision =
ColumnPrecisionCombobox.GetSelectionText();

if (DateFormatCombobox.G
etSelectionIndex() != -1)
{
var Index = Date
FormatCombobox.GetSelectionIndex();
g_CP.DateFormat
= DateFormatCombobox.GetItemData(Index);
}
else
g_CP.DateFormat
= GrooveDataListDateTimeFormat_LongDate;
// Check to see if the f
ont attributes changed. If they did,
// set them, otherwise l
eave them alone
var ExistingFontDesc = g
_CP.IGrooveFormsToolViewColumnPrivate.FontSettings;
if (ExistingFontDesc.Typ
eface != g_CurrentFontDesc.Typeface ||
ExistingFontDesc
.PointSize != g_CurrentFontDesc.PointSize ||
ExistingFontDesc
.RGBColor != g_CurrentFontDesc.RGBColor ||
ExistingFontDesc
.Bold != g_CurrentFontDesc.Bold ||
ExistingFontDesc
.Italic != g_CurrentFontDesc.Italic ||
ExistingFontDesc
.Underline != g_CurrentFontDesc.Underline)
{
g_CP.IGrooveForm
sToolViewColumnPrivate.FontSettings = g_CurrentFontDesc;
}
if (HJustifyLeftRadioBut
ton.CheckState == GCS_CHECKED)
g_CP.HorizontalJ
ustification = GrooveFormsToolHorizontalJustification_Left;
else if (HJustifyCenterR
adioButton.CheckState == GCS_CHECKED)
g_CP.HorizontalJ
ustification = GrooveFormsToolHorizontalJustification_Center;
else if (HJustifyRightRa
dioButton.CheckState == GCS_CHECKED)
g_CP.HorizontalJ
ustification = GrooveFormsToolHorizontalJustification_Right;
if (VJustifyTopRadioButt
on.CheckState == GCS_CHECKED)
g_CP.VerticalJus
tification = GrooveFormsToolVerticalJustification_Top;
else if (VJustifyCenterR
adioButton.CheckState == GCS_CHECKED)
g_CP.VerticalJus
tification = GrooveFormsToolVerticalJustification_Center;
else if (VJustifyBottomR
adioButton.CheckState == GCS_CHECKED)
g_CP.VerticalJus
tification = GrooveFormsToolVerticalJustification_Bottom;
g_CP.ValueSubstitutions
= CreateValueSubstitutionsString();
return true;
}
function PropertiesError(i_Error
)
{
var Window = UIPropertyL
ist.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
App.GrooveMessageBox(Win
dow, g_Account, i_Error, Priv.GetResourcedString(IDS_FORMS_TOOL_SHOW_ERROR_TITLE
), GrooveMessageBoxStyle_OK, GrooveMessageBoxIcon_Stop);
InnerViewContainer.SetFo
cus("ColumnWidthEditControl");
return false;
}
function DisplaySortTypeDescript
ion()
{
var SortTypeText = SortT
ypeCombobox.GetSelectionText();
if (SortTypeText == Flat
String)
SortTypeDescript
ionLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SO
RT_TYPE_FLAT_DESC));
else if (SortTypeText ==
HierarchicalString)
SortTypeDescript
ionLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SO
RT_TYPE_HIER_DESC));
else if (SortTypeText ==
GroupedString)
SortTypeDescript
ionLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_COL_PROP_SO
RT_TYPE_GRPED_DESC));
else if (SortTypeText ==
NoneString)
SortTypeDescript
ionLabel.SetText("");
}
function OKButton_OnCommand(i_UI
Command)
{
if (ApplyCurrentProperti
es())
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_OK);
Window.Destroy(G
rooveWindowResult_OK);
}
}
function CancelButton_OnCommand(
i_UICommand)
{
var Window = UIPropertyL
ist.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(GrooveWindo
wResult_Cancel);
Window.Destroy(GrooveWin
dowResult_Cancel);
}
function ApplyToAllButton_OnComm
and(i_UICommand)
{
if (ApplyCurrentProperti
es())
{
g_CallbackCode.A
pplyFontPropertiesToAllColumns(g_CP);
g_DirtyCP = true
;
}
}
function ColumnHeaderEditControl
_OnChange(i_Name)
{
g_DirtyCP = true;
}
function ColumnWidthEditControl_
OnChange(i_Name)
{
g_DirtyCP = true;
}
function AutoFitRadioButton_OnCo
mmand(i_UICommand)
{
CustomSizeRadioButton.Ch
eckState = GCS_UNCHECKED;
AutoFitRadioButton.Check
State = GCS_CHECKED;
ShowWidthControls(false)
;
g_DirtyCP = true;
}
function CustomSizeRadioButton_O
nCommand(i_UICommand)
{
CustomSizeRadioButton.Ch
eckState = GCS_CHECKED;
AutoFitRadioButton.Check
State = GCS_UNCHECKED;
ShowWidthControls(true);
g_DirtyCP = true;
}
function AddRemoveGroupOptions()
{
if (SortTypeCombobox.Get
SelectionText() == GroupedString)
{
MultiCellSizeObj
.SetHeight(75, GrooveLayoutSizeType_Pixels);
SecondarySortLay
out.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
if (!SecondarySo
rtLayout.IsControlInLayout("GroupOptionsViewContainer"))
Secondar
ySortLayout.AddControlByName("GroupOptionsViewContainer", MultiCellCellObj);
}
else
{
if (SecondarySor
tLayout.IsControlInLayout("GroupOptionsViewContainer"))
Secondar
ySortLayout.RemoveCellContents(MultiCellCellObj);
MultiCellSizeObj
.SetHeight(0, GrooveLayoutSizeType_Pixels);
SecondarySortLay
out.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
}
}
function AddRemoveSecondarySort(
)
{
var MultiCellSizeObj = G
rooveScriptFunctions.CreateNewObject("Groove.MultiCellLayoutControlInfo");
var MultiCellCellObj = M
ultiCellSizeObj.Cell();
if (IncludeSecondarySort
Checkbox.CheckState == GCS_CHECKED)
{
MultiCellCellObj
.Name = "SSName";
if (!SecondarySo
rtLayout.IsControlInLayout("SecondarySortNameCombobox"))
Secondar
ySortLayout.AddControlByName("SecondarySortNameCombobox", MultiCellCellObj);
MultiCellCellObj
.Name = "SSOrder";
if (!SecondarySo
rtLayout.IsControlInLayout("SecondarySortOrderCombobox"))
Secondar
ySortLayout.AddControlByName("SecondarySortOrderCombobox", MultiCellCellObj);
if (SortAscendin
gCheckBox.CheckState == GCS_CHECKED || SortDescendingCheckBox.CheckState == GCS_
CHECKED)
{
Secondar
ySortNameCombobox.Enabled = true;
Secondar
ySortOrderCombobox.Enabled = true;
}
else
{
Secondar
ySortNameCombobox.Enabled = false;
Secondar
ySortOrderCombobox.Enabled = false;
}
}
else
{
MultiCellCellObj
.Name = "SSName";
SecondarySortLay
out.RemoveCellContents(MultiCellCellObj);
MultiCellCellObj
.Name = "SSOrder";
SecondarySortLay
out.RemoveCellContents(MultiCellCellObj);
// If the the ch
eckbox is unchecked, make sure that the SecondarySortColumnName is reset
SecondarySortOrd
erCombobox.SetSelectionByText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GR
P_ITEM_ASCENDING));
}
if (SortAscendingCheckBo
x.CheckState == GCS_CHECKED || SortDescendingCheckBox.CheckState == GCS_CHECKED)
{
MultiCellCellObj
.Name = "SSCheck";
if (!SecondarySo
rtLayout.IsControlInLayout("IncludeSecondarySortCheckbox"))
Secondar
ySortLayout.AddControlByName("IncludeSecondarySortCheckbox", MultiCellCellObj);
}
else
{
MultiCellCellObj
.Name = "SSCheck";
SecondarySortLay
out.RemoveCellContents(MultiCellCellObj);
}
}
function ShowWidthControls(i_Sho
w)
{
if (!i_Show)
{
if (BasicsLayout
.IsControlInLayout("WidthLabel"))
BasicsLa
yout.RemoveControl("WidthLabel");
if (BasicsLayout
.IsControlInLayout("ColumnWidthEditControl"))
BasicsLa
yout.RemoveControl("ColumnWidthEditControl");
if (BasicsLayout
.IsControlInLayout("ColumnWidthPixelRadioButton"))
BasicsLa
yout.RemoveControl("ColumnWidthPixelRadioButton");
if (BasicsLayout
.IsControlInLayout("ColumnWidthPointsRadioButton"))
BasicsLa
yout.RemoveControl("ColumnWidthPointsRadioButton");
if (BasicsLayout
.IsControlInLayout("ColumnWidthPercentRadioButton"))
BasicsLa
yout.RemoveControl("ColumnWidthPercentRadioButton");
}
else
{
var TableSizeObj
= GrooveScriptFunctions.CreateNewObject("Groove.MultiCellLayoutControlInfo");
var TableCellObj
= TableSizeObj.Cell();
if (!BasicsLayou
t.IsControlInLayout("WidthLabel"))
{
TableCel
lObj.Name = "WidthLabel";
BasicsLa
yout.AddControlByName("WidthLabel", TableCellObj);
}
if (!BasicsLayou
t.IsControlInLayout("ColumnWidthEditControl"))
{
TableCel
lObj.Name = "ColumnWidthEditControl";
BasicsLa
yout.AddControlByName("ColumnWidthEditControl", TableCellObj);
}
if (!BasicsLayou
t.IsControlInLayout("ColumnWidthPixelRadioButton"))
{
TableCel
lObj.Name = "ColumnWidthPixelRadioButton";
BasicsLa
yout.AddControlByName("ColumnWidthPixelRadioButton", TableCellObj);
}
if (!BasicsLayou
t.IsControlInLayout("ColumnWidthPointsRadioButton"))
{
TableCel
lObj.Name = "ColumnWidthPointsRadioButton";
BasicsLa
yout.AddControlByName("ColumnWidthPointsRadioButton", TableCellObj);
}
if (!BasicsLayou
t.IsControlInLayout("ColumnWidthPercentRadioButton"))
{
TableCel
lObj.Name = "ColumnWidthPercentRadioButton";
BasicsLa
yout.AddControlByName("ColumnWidthPercentRadioButton", TableCellObj);
}
}
}
function ColumnWidthPixelRadioBu
tton_OnCommand(i_UICommand)
{
ColumnWidthPixelRadioBut
ton.CheckState = GCS_CHECKED;
ColumnWidthPointsRadioBu
tton.CheckState = GCS_UNCHECKED;
ColumnWidthPercentRadioB
utton.CheckState = GCS_UNCHECKED;
g_DirtyCP = true;
}
function ColumnWidthPointsRadioB
utton_OnCommand(i_UICommand)
{
ColumnWidthPixelRadioBut
ton.CheckState = GCS_UNCHECKED;
ColumnWidthPointsRadioBu
tton.CheckState = GCS_CHECKED;
ColumnWidthPercentRadioB
utton.CheckState = GCS_UNCHECKED;
g_DirtyCP = true;
}
function ColumnWidthPercentRadio
Button_OnCommand(i_UICommand)
{
ColumnWidthPixelRadioBut
ton.CheckState = GCS_UNCHECKED;
ColumnWidthPointsRadioBu
tton.CheckState = GCS_UNCHECKED;
ColumnWidthPercentRadioB
utton.CheckState = GCS_CHECKED;
g_DirtyCP = true;
}

function GroupTypeCombobox_OnSel
ectionChange(i_Name, i_Item)
{
g_DirtyCP = true;
}
function IncludeSecondarySortChe
ckbox_OnUpdateCommandState(i_UICommand)
{
if (SortTypeCombobox.Get
SelectionText() == GroupedString)
{
IncludeSecondary
SortCheckbox.CheckState = GCS_CHECKED;
IncludeSecondary
SortCheckbox.Enabled = false;
}
else if (SortAscendingCh
eckBox.CheckState == GCS_CHECKED || SortDescendingCheckBox.CheckState == GCS_CHE
CKED)
IncludeSecondary
SortCheckbox.Enabled = true;
else
{
IncludeSecondary
SortCheckbox.Enabled = false;
IncludeSecondary
SortCheckbox.CheckState = GCS_UNCHECKED;
}
}
function IncludeSecondarySortChe
ckbox_OnCommand(i_UICommand)
{
g_DirtyCP = true;
AddRemoveSecondarySort()
;
}
function SecondarySortNameCombob
ox_OnSelectionChange(i_Name, i_Item)
{
g_DirtyCP = true;
}
function SecondarySortOrderCombo
box_OnSelectionChange(i_Name, i_Item)
{
g_DirtyCP = true;
}
function TotalCheckBox_OnCommand
(i_UICommand)
{
g_DirtyCP = true;
if (TotalCheckBox.CheckS
tate == GCS_CHECKED)
IncludeChildrenI
nTotalCheckBox.Enabled = true;
else
{
IncludeChildrenI
nTotalCheckBox.Enabled = false;
IncludeChildrenI
nTotalCheckBox.CheckState = GCS_UNCHECKED;
}
}
function TotalCheckBox_OnUpdateC
ommandState(i_UICommand)
{
if (g_CP != null)
{
if (g_CP.Display
Type == GrooveFormsToolViewColumnDisplayType_Number &&
SortType
Combobox.GetSelectionText() == GroupedString)
{
TotalChe
ckBox.Enabled = false;
TotalChe
ckBox.CheckState = GCS_UNCHECKED;
}
else
TotalChe
ckBox.Enabled = true;
}
}
function IncludeChildrenInTotalC
heckBox_OnCommand(i_UICommand)
{
g_DirtyCP = true;
}
function SortTypeCombobox_OnDrop
Down(i_Name)
{
g_TypeComboClosed = fals
e;
}
function SortTypeCombobox_OnComb
oBoxCloseUp(i_Name)
{
g_TypeComboClosed = true
;
}
function SortTypeCombobox_OnSele
ctionChange(i_Name, i_Item)
{
g_DirtyCP = true;
DisplaySortTypeDescripti
on();
AddRemoveGroupOptions();
SortAscendingCheckBox.En
abled = true;
SortDescendingCheckBox.E
nabled = true;
IncludeSecondarySortChec
kbox.Enabled = true;
SecondarySortNameCombobo
x.Enabled = true;
if (SortTypeCombobox.Get
SelectionText() == GroupedString)
{
ShowTwistyCheckB
ox.CheckState = GCS_CHECKED;
SortAscendingChe
ckBox.CheckState = GCS_CHECKED;
IncludeSecondary
SortCheckbox.CheckState = GCS_CHECKED;
IncludeSecondary
SortCheckbox.Enabled = false;
if (SecondarySor
tNameCombobox.GetSelectionIndex() == -1)
Secondar
ySortNameCombobox.SetSelectionByText("_Created");
}
else if (SortTypeCombobo
x.GetSelectionText() == NoneString)
{
SortAscendingChe
ckBox.Enabled = false;
SortAscendingChe
ckBox.CheckState = GCS_UNCHECKED;
SortDescendingCh
eckBox.Enabled = false;
SortDescendingCh
eckBox.CheckState = GCS_UNCHECKED;
IncludeSecondary
SortCheckbox.CheckState = GCS_UNCHECKED;
IncludeSecondary
SortCheckbox.Enabled = false;
SecondarySortNam
eCombobox.SetSelectionByText("_Created");
SecondarySortNam
eCombobox.Enabled = false;
}
else
{
IncludeSecondary
SortCheckbox.Enabled = true;
if (g_CP.Seconda
rySortColumnName != "")
IncludeS
econdarySortCheckbox.CheckState = GCS_CHECKED;
else
{
IncludeS
econdarySortCheckbox.CheckState = GCS_UNCHECKED;
if (Seco
ndarySortNameCombobox.GetSelectionIndex() == -1)
SecondarySortNameCombobox.SetSelectionByText("_Created");
}
}
AddRemoveSecondarySort()
;
}
function SortAscendingCheckBox_O
nUpdateCommandState(i_UICommand)
{
if (SortTypeCombobox.Get
SelectionText() == GroupedString && g_TypeComboClosed == true)
{
if (SortAscendin
gCheckBox.CheckState != GCS_CHECKED &&
SortDesc
endingCheckBox.CheckState!= GCS_CHECKED)
{
SortAsce
ndingCheckBox.CheckState = GCS_CHECKED;
IncludeS
econdarySortCheckbox.CheckState = GCS_CHECKED;
Secondar
ySortNameCombobox.Enabled = true;
Secondar
ySortOrderCombobox.Enabled = true;
AddRemov
eSecondarySort();
}
}
}
function SortAscendingCheckBox_O
nCommand(i_UICommand)
{
g_DirtyCP = true;
if (SortAscendingCheckBo
x.CheckState == GCS_CHECKED)
{
SecondarySortNam
eCombobox.Enabled = true;
SecondarySortOrd
erCombobox.Enabled = true;
}
else if (SortDescendingC
heckBox.CheckState == GCS_UNCHECKED)
{
SecondarySortNam
eCombobox.Enabled = false;
SecondarySortOrd
erCombobox.Enabled = false;
IncludeSecondary
SortCheckbox.CheckState = GCS_UNCHECKED;
}
AddRemoveSecondarySort()
;
}
function SortDescendingCheckBox_
OnCommand(i_UICommand)
{
g_DirtyCP = true;
if (SortDescendingCheckB
ox.CheckState == GCS_CHECKED)
{
SecondarySortNam
eCombobox.Enabled = true;
SecondarySortOrd
erCombobox.Enabled = true;
}
else if (SortAscendingCh
eckBox.CheckState == GCS_UNCHECKED)
{
SecondarySortNam
eCombobox.Enabled = false;
SecondarySortOrd
erCombobox.Enabled = false;
IncludeSecondary
SortCheckbox.CheckState = GCS_UNCHECKED;
}
AddRemoveSecondarySort()
;
}
function ShowTwistyCheckBox_OnCo
mmand(i_UICommand)
{
g_DirtyCP = true;
}
function MaintainHierarchyWithin
GroupCheckBox_OnCommand(i_UICommand)
{
g_DirtyCP = true;
}
function ColumnPrecisionCombobox
_OnSelectionChange(i_Name, i_Item)
{
g_DirtyCP = true;
}
function DateFormatCombobox_OnSe
lectionChange(i_Name, i_Item)
{
g_DirtyCP = true;
}
function FontColorButton_OnComma
nd(i_pIUICommand)
{
// Get the current color
var Color = g_CP.FontCol
or;
var pCommonDialogs = Gro
oveScriptFunctions.CreateNewObject("Groove.CommonDialogs2");
var Window = UIPropertyL
ist.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
var NewColor = pCommonDi
alogs.DisplayColorSelectorDialog(Window, Color);
// Set the new color
SetColor(NewColor);
g_CurrentFontDesc.RGBCol
or = NewColor;
g_DirtyCP = true;
}
function FontButton_OnCommand(i_
pIUICommand)
{
g_DirtyCP = true;
// Get the current font
descriptor for the column
var pCommonDialogs = Gro
oveScriptFunctions.CreateNewObject("Groove.CommonDialogs2");
var Window = UIPropertyL
ist.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
g_CurrentFontDesc = pCom
monDialogs.DisplayFontSelectorDialog(Window, g_CurrentFontDesc, false);
SetFontControls(g_Curren
tFontDesc);
}
function FontBoldCheckBox_OnComm
and(i_UICommand)
{
g_DirtyCP = true;
if (FontBoldCheckBox.Che
ckState == GCS_CHECKED)
g_CurrentFontDes
c.Bold = true;
else
g_CurrentFontDes
c.Bold = false;
}
function FontItalicCheckBox_OnCo
mmand(i_UICommand)
{
g_DirtyCP = true;
if (FontItalicCheckBox.C
heckState == GCS_CHECKED)
g_CurrentFontDes
c.Italic = true;
else
g_CurrentFontDes
c.Italic = false;
}
function FontUnderlineCheckBox_O
nCommand(i_UICommand)
{
g_DirtyCP = true;
if (FontUnderlineCheckBo
x.CheckState == GCS_CHECKED)
g_CurrentFontDes
c.Underline = true;
else
g_CurrentFontDes
c.Underline = false;
}
function HJustifyLeftRadioButton
_OnCommand(i_UICommand)
{
HJustifyLeftRadioButton.
CheckState = GCS_CHECKED;
HJustifyCenterRadioButto
n.CheckState = GCS_UNCHECKED;
HJustifyRightRadioButton
.CheckState = GCS_UNCHECKED;
g_DirtyCP = true;
}
function HJustifyCenterRadioButt
on_OnCommand(i_UICommand)
{
HJustifyLeftRadioButton.
CheckState = GCS_UNCHECKED;
HJustifyCenterRadioButto
n.CheckState = GCS_CHECKED;
HJustifyRightRadioButton
.CheckState = GCS_UNCHECKED;
g_DirtyCP = true;
}
function HJustifyRightRadioButto
n_OnCommand(i_UICommand)
{
HJustifyLeftRadioButton.
CheckState = GCS_UNCHECKED;
HJustifyCenterRadioButto
n.CheckState = GCS_UNCHECKED;
HJustifyRightRadioButton
.CheckState = GCS_CHECKED;
g_DirtyCP = true;
}

function VJustifyTopRadioButton_
OnCommand(i_UICommand)
{
VJustifyTopRadioButton.C
heckState = GCS_CHECKED;
VJustifyCenterRadioButto
n.CheckState = GCS_UNCHECKED;
VJustifyBottomRadioButto
n.CheckState = GCS_UNCHECKED;
g_DirtyCP = true;
}
function VJustifyCenterRadioButt
on_OnCommand(i_UICommand)
{
VJustifyTopRadioButton.C
heckState = GCS_UNCHECKED;
VJustifyCenterRadioButto
n.CheckState = GCS_CHECKED;
VJustifyBottomRadioButto
n.CheckState = GCS_UNCHECKED;
g_DirtyCP = true;
}
function VJustifyBottomRadioButt
on_OnCommand(i_UICommand)
{
VJustifyTopRadioButton.C
heckState = GCS_UNCHECKED;
VJustifyCenterRadioButto
n.CheckState = GCS_UNCHECKED;
VJustifyBottomRadioButto
n.CheckState = GCS_CHECKED;
g_DirtyCP = true;
}
function SetFontControls(i_FontD
esc)
{
FontFaceName.SetText(i_F
ontDesc.Typeface);
FontSize.SetText(i_FontD
esc.PointSize);
if (i_FontDesc.Bold)
FontBoldCheckBox
.CheckState = GCS_CHECKED;
else
FontBoldCheckBox
.CheckState = GCS_UNCHECKED;
if (i_FontDesc.Italic)
FontItalicCheckB
ox.CheckState = GCS_CHECKED;
else
FontItalicCheckB
ox.CheckState = GCS_UNCHECKED;
if (i_FontDesc.Underline
)
FontUnderlineChe
ckBox.CheckState = GCS_CHECKED;
else
FontUnderlineChe
ckBox.CheckState = GCS_UNCHECKED;
}
q urn:groove.net:PropertyList EnforceInterf
aces0  __Version4,1,0,0T urn:groove.net:PropertyList  __Version4,1,0,00- urn:groove.net:
teTabLayout  urn:groove.net:ComponentResource. urn:groove.net:PropertyListB .   urn:groove.net
ComponentResource- URL:http://components.groove.net/Groove/Components/Root.osd?Package
=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=H
TMLTableLayoutxB urn:groove.net:PropertyList-  __Version4,1,0,0  _G_Layout LayoutCCC
t:PropertyValueDBD urn:groove.net:PropertyValueC TABLEETE TABLED TRF TRH TRK TRM TRO%F TRE TD
 TabsStatic0H TRE TDI TDJjI TDH ROWSPAN4  BottomPad10RightPad
 5 TabsListBoxoJ TDH WIDTH
 AddTabButton%K TRE TDLYL TDK HEIGHT27e  BottomPad5 ModifyTabButton%M TRE TDNDN TDM HEIGHT22l
ditTabViewContainerLa  urn:groove.net:ComponentResource?# urn:groove.net:ComponentConn
ections@ urn:groove.net:PropertyListQ{?  urn:groove.net:ComponentResource> URL6http://compone
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]@# urn:groove.net:Compo
nentConnections> urn:groove.net:ConnectionAqA urn:groove.net:Connection@
 ConnectionID
_G_Background0 NameEditTabLayout Q urn:groove.net:PropertyList>  __Version4,1,0,0
 BackgroundRIR
 BackgroundQ urn:groove.net:BackgroundStyleSsS urn:groove.net:BackgroundStyleR Style,DetailWi
Backgroundh urn:groove.net:Component Name$GroupContentsLabel5"  urn:groove.net:ComponentRe
:groove.net:PropertyListpoi  urn:groove.net:ComponentResourceh URL(http://components.groove
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=Staticp urn:groove.net:PropertyListh  __Version4
,1,0,0 LabelGroup Contents
 BreakTypeWordBreak  FontStyleLabelText
 VAlignment
CentereP   n  ' E urn:groove.net:Component NameEditTabLayout  urn:groove.net:ComponentRes
tyListT F   urn:groove.net:ComponentResourceE URL:http://components.groove.net/Groove/Componen
ts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&
Version=0&Factory=HTMLTableLayoutxT urn:groove.net:PropertyListE  __Version4,1,0,0
G_Layout LayoutUCU LayoutT urn:groove.net:PropertyValueVBV urn:groove.net:PropertyValueU TABL
HTTabTextStatic%
18s COLSPAN2 Z TRW TD[l[ TDZ HEIGHT32Y COLSPAN2  BottomPad10 TabTextEdit%\ TRW TD]T]
 FieldsStatic0^ TRW TD_ TD`T_ TD^ ROWSPAN3RightPad
 5 FieldsListViewj` TD^ WIDTH22l HEIGHT27e
n%c TRW TDdd TDc
\ urn:groove.net:Component Name2EditFieldGroupInnerLayout  urn:groove.net:ComponentResource
roove.net:PropertyListf ]   urn:groove.net:ComponentResource\ URL:http://components.groove.net
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=MultiCellLayoutxf urn:groove.net:PropertyList\  _
_Version4,1,0,0  _G_Layout LayoutgCg Layoutf urn:groove.net:PropertyValuehEh urn:groove.net:P
ueg MULTIROWi
 DiMULTIROWh
  ROWj ROWl ROWn(j ROWi CELLkuk CELLj HEIGHT25 LeftPad10  BottomPad5 G
htPad10
 FieldsStatic(n ROWi CELLowo CELLn LeftPad10  BottomPad10RightPad
 10 FieldsListViewo urn:
:groove.net:ComponentResourcep urn:groove.net:PropertyListqop  urn:groove.net:ComponentRe
sourceo URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Staticq urn:groov
e.net:PropertyListo  __Version4,1,0,0 LabelTabs in group:o  BreakTypeWordBreak  F
ontStyleLabelText
 VAlignment
Centere  l ^    v urn:groove.net:Component NameAddTabButton   urn:groove.net:Comp
net:PropertyListrow  urn:groove.net:ComponentResourcev URL(http://components.groove.net/Gro
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=Buttoneor urn:groove.net:PropertyListv Tooltip@  Add a new tab
to the tabs group.  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex10 ImageHeight16  urn:groove.net:Component NameModifyTabButton  urn:groove.net:
groove.net:PropertyListso   urn:groove.net:ComponentResource  URL(http://components.groove.ne
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=Buttoness urn:groove.net:PropertyList TooltipDModify the c
urrently selected tab.  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex21 ImageHeight16  urn:groove.net:Component NameDeleteTabButton  urn:groove.net:
groove.net:PropertyListto   urn:groove.net:ComponentResource  URL(http://components.groove.ne
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=Buttonest urn:groove.net:PropertyList TooltipDDelete the c
urrently selected tab.  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex16 ImageHeight16  L    P  urn:groove.net:Component NameTabTextStatic  urn:g
PropertyListuo   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/Co
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=Staticu urn:groove.net:PropertyList 
 VAlignment
Centere LabelTab Label:
 FontStyleLabelText  __Version4,1,0,0  urn:groove.net:Component NameTabTextEdi
.net:ComponentResource  urn:groove.net:PropertyListvk   urn:groove.net:ComponentResource  URL
components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolC
omponents.GrooveCommonComponents_DLL&Version=0&Factory=EditNamv urn:groove.net:Prope
rtyList   TextLimit250  __Version4,1,0,0 urn:groove.net:Component NameTabOKButto
ponentResource urn:groove.net:PropertyListwo  urn:groove.net:ComponentResource URL(http://
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=Buttoneww urn:groove.net:PropertyList Toolti 
pJAdd the current tab to the tab group.  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex89 ImageHeight16 urn:groove.net:Component NameTabCancelButton  urn:groove.net:
groove.net:PropertyListxo  urn:groove.net:ComponentResource URL(http://components.groove.ne
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=Buttoneox urn:groove.net:PropertyList Tooltip@  Cancel creat
ing the current tab.  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex90 ImageHeight16    t       urn:groove.net:Component NameFieldsStaticne  u
opertyListyo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Comp
ents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DL
L&Version=0&Factory=Staticy urn:groove.net:PropertyList  BreakTypeWordBreak
 VAlignment
Centere  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component NameFieldsList
oove.net:ComponentResource urn:groove.net:PropertyListzs  urn:groove.net:ComponentResource
p://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.T
oolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ListView5+z urn:groove.net
:PropertyList MSCCWorkaroundColor#FFFFFF
 ColumnHeaders
CheckBoxesTruea  __Version4,1,0,0
False SingleSelectionTruea ColumnsResizable
False
 _G_Columns Columns{D{ Columnsz urn:groove.net:PropertyValue|R| urn:groove.net:PropertyValue{
:Column}m} urn:groove.net:Column| NameField NametAutoSize  Truea  urn:groove.net:Component Na
.net:ComponentResource urn:groove.net:PropertyList~o  urn:groove.net:ComponentResource URL
components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolC
omponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone~ urn:groove.net:Proper
tyList DefaultTruea StyleStandardButtonb LabelOKg:  __Version4,1,0,0 urn:groove.net:C
</  urn:groove.net:ComponentResource urn:groove.net:PropertyList o   urn:groove.net:Componen
urce URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gro
ove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net
:PropertyList Cancel Truea StyleStandardButtonb Label
Cancelo  __Version4,1,0,0
(PropertyViewComboBox WebBrowserView0 2EditFieldGroupInnerLayout'` \TabsStaticos oWeb
deControlSubForm& WebBrowserView0
WebBrowserView 0 K |S$oCrotnLdisttiBountstLoinsHtVT&$
iew SortListButtonH2T&$
 p Y    t R    ur
ove.net:ComponentResource urn:groove.net:ComponentGroupo  urn:groove.net:ComponentResource U
tp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.
ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=SubForm
 urn:groove.net:ComponentGroup HelpInfoProviderRTFHelpProviderDelegate(  ColumnPropertiesGluet
aultView(CPOuterViewContainermp[ urn:groove.net:Component urn:groove.net:Component  urn
:groove.net:Component urn:groove.net:Component! urn:groove.net:Component& urn:groove.net:Comp
onent+ urn:groove.net:Component0 urn:groove.net:Component7 urn:groove.net:Componentb urn:groo
net:Component} urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component 
e.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component
e.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component
e.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component ur
e.net:Component urn:groove.net:Component urn:groove.net:Component% urn:groove.net:Component+
roove.net:Component3 urn:groove.net:Component; urn:groove.net:ComponentA urn:groove.net:Comp
onentG urn:groove.net:ComponentM urn:groove.net:ComponentS urn:groove.net:ComponentZ urn:groo
net:Component] urn:groove.net:Componentc urn:groove.net:Componentj urn:groove.net:Componentr
:groove.net:Componentu urn:groove.net:Component~ urn:groove.net:Component  urn:groove.net:Com
onent  urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groo
onent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groo
onent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groo
onenturn:groove.net:Component
 urn:groove.net:Componenturn:groove.net:Componenturn:groove.net:Componenturn:groove.net:Compo
nt$  urn:groove.net:Component* urn:groove.net:Component0 urn:groove.net:Component7 urn:groove.net
:Component=  urn:groove.net:ComponentC urn:groove.net:ComponentI urn:groove.net:ComponentO urn:gr
oove.net:ComponentS  urn:groove.net:Component] urn:groove.net:Componenta urn:groove.net:Compo
nente  urn:groove.net:Componentk urn:groove.net:Componentp urn:groove.net:Componentu urn:groove.n
et:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component0 urn:
.net:Component4 urn:groove.net:ComponentC urn:groove.net:ComponentJ urn:groove.net:Component
Q urn:groove.net:ComponentZ urn:groove.net:Componentc urn:groove.net:Componenth urn:groove.ne
omponentm urn:groove.net:Componentr urn:groove.net:Component| urn:groove.net:Component  urn:g
.net:Component    urn:groove.net:Component Name(CPOuterViewContainermp  urn:groove.net:Co
ve.net:ComponentConnections urn:groove.net:PropertyList {   urn:groove.net:ComponentResource U
://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.To
olComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn:groove
.net:ComponentConnections urn:groove.net:Connectionm urn:groove.net:Connection
 ConnectionID0 NameOuterLayout   urn:groove.net:PropertyList PreferredHeight530 PreferredWidt
_Version4,1,0,0  urn:groove.net:Component NameOuterLayout  urn:groove.net:ComponentRe
 urn:groove.net:PropertyList  
  urn:groove.net:ComponentResource  URL:http://components.groove.net/Groove/Components/R
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=MultiCellLayout  urn:groove.net:PropertyList   __Version4,1,0,0 _G_
kground  _G_Layout Layout  BorderBackground C   Layout  urn:groove.net:PropertyValue E   urn:gr
OW  BORDER  ROW  ROW  ROW |   BORDER  LeftPad10 TopPad10RightPad  10  BottomPad10(  ROW  C
t1 CellBorderBackground BorderBackgroundr InnerViewContainer\  ROW  CELL  CELL  CELL  CELL  C
 CancelButton-  CELL  WIDTH5E  BorderBackground  urn:groove.net:Color G   urn:groove.net:Color
le  urn:groove.net:ComponentResource urn:groove.net:PropertyList o  urn:groove.net:ComponentR
urce URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gro
ove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:
PropertyList Label"Column Properties  FontStyleDialogTitleText  __Version4,1,0,0 
utton:  urn:groove.net:ComponentResource" urn:groove.net:PropertyList o "  urn:groove.net:Comp
nentResource! URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.
groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Button
e   urn:groove.net:PropertyList! StyleStandardButtonb LabelOKg:  __Version4,1,0,0& urn:groo
ncelButton</  urn:groove.net:ComponentResource' urn:groove.net:PropertyList o '  urn:groove.ne
:ComponentResource& URL(http://components.groove.net/Groove/Components/Root.osd?Packag
e=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=
Buttone   urn:groove.net:PropertyList& StyleStandardButtonb Label
Cancelo  __Version4,1,0,00 urn:groove.net:Component Name$InnerViewContainer  urn:groove.net
tResource1# urn:groove.net:ComponentConnections2 urn:groove.net:PropertyList {1  urn:groove.n
t:ComponentResource0 URL6http://components.groove.net/Groove/Components/Root.osd?Packa
ge=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory
=ViewContainer]2# urn:groove.net:ComponentConnections0 urn:groove.net:Connection3q3 urn:groov
e.net:Connection2
 ConnectionID
_G_Background0 NameBasicsLayoutom   urn:groove.net:PropertyList0  __Version4,1,0,0
 Background I  
 Background  urn:groove.net:BackgroundStyle    urn:groove.net:BackgroundStyle  Style8Standard
ground} urn:groove.net:Component Name4SecondarySortViewContainer  urn:groove.net:ComponentR
e~# urn:groove.net:ComponentConnections  urn:groove.net:PropertyList{~  urn:groove.net:Compo
tResource} URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.gro
ove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewConta
iner] #  urn:groove.net:ComponentConnections} urn:groove.net:Connection }  urn:groove.net:Conn
 ConnectionID
_G_Background0 Name&SecondarySortLayout   urn:groove.net:PropertyList}  __Version4,1,0,0
 BackgroundI
 Background urn:groove.net:BackgroundStyleg urn:groove.net:BackgroundStyle Style"SectionB
.net:ComponentB  Name0AddObjectCodeControlCodet  urn:groove.net:ComponentResource 
# urn:groove.net:ComponentConnections  SCRIPT  SCRIPTINTERFACE  SCRIPT
.net:PropertyList&w   urn:groove.net:ComponentResource  URL2http://components.groove
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=ScriptHost2  # urn:groove.net:ComponentConnecti
ons 
 urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection
.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:
nection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.n
n:groove.net:Connection  Name4AddObjectCodeControlLayout
 ConnectionID0   urn:groove.net:Connection  Name0AddObjectCodeInnerLayouti
 ConnectionID1u  urn:groove.net:Connection  NameAddObjectButton
 ConnectionID2}  urn:groove.net:Connection  Name$BrowseObjectButtonla
 ConnectionID3}  urn:groove.net:Connection  Name$ModifyObjectButton
 ConnectionID4}  urn:groove.net:Connection  Name$DeleteObjectButton">
 ConnectionID5   urn:groove.net:Connection  Name(AddedObjectsListViewW>
 ConnectionID6   urn:groove.net:Connection  Name,AddedObjectsHelpStaticm
 ConnectionID7i  urn:groove.net:Connection  NameOKButton:
 ConnectionID8q  urn:groove.net:Connection  NameCancelButton</
 ConnectionID9q  SCRIPT  SRCDhttp://components.groove.net/Groove/Components/R
Package=net.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_
GSL&Version=5&Factory=Openon  SCRIPTINTERFACE  LIBIDL{366DFD51-2C22-438d-9135-5093
E3102447}ox IIDL{F3A6480B-DD54-4987-A6F2-A8004EDB565A}l;
function InitializeDialo
g(i_Account, i_pIDesigner, i_Design, i_Type, i_pIObjectEnum, i_pIWindow)
{
g_Account = i_Ac
count;
g_CallbackCode =
i_pIDesigner;
g_Design = i_Des
ign;
g_Window = i_pIW
indow;
InitializeCompon
entStrings();
InitObjectManage
r(i_pIObjectEnum, i_Type);
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
function GetUpdatedObjec
ts()
{
var DesignObjEnu
m = CreateUnknownEnumFromStringIIDs("{6863EB0B-5CF1-419d-B72D-D8BB5E55DB8A}", "{
D624EBAC-D7A6-406f-9978-FA9B841EDED5}");
for (var i = 0;
i < g_UpdatedObjects.length; i++)
{
DesignOb
jEnum.Add(g_UpdatedObjects[i]);
}
return DesignObj
Enum.UnknownEnum;
}
fP  SCRIPT CP
/* #####################
##########
### GLOBAL VARIAB
LES ###
#####################
########## */
var g_CallbackCode;
var g_ObjectType;
var g_Account;
var g_Design;
var g_Window;
var g_IsEditingObject =
false;
// Arrays to hold return
values.
var g_UpdatedObjects = n
ew Array();
/* #####################
###########
### PRIVATE FUNCT
IONS ###
#####################
########### */
function InitializeCompo
nentStrings()
{
var Priv = g_Cal
lbackCode;
AddObjectButton.
Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_NEW);
AddObjectButton.
IGrooveUICommand.Mnemonic = Priv.GetResourcedString(IDS_FORMS_TOOL_MNEMONIC_ALT_
N);
BrowseObjectButt
on.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_BROWSE);
BrowseObjectButt
on.IGrooveUICommand.Mnemonic = Priv.GetResourcedString(IDS_FORMS_TOOL_MNEMONIC_A
LT_B);
//ModifyObjectBu
tton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_MODIFY_
DOTS);
//DeleteObjectBu
tton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_DELETE);
OKButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
CancelButton.Lab
el = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
}
function NewObjectInstan
ceFromFile(i_Path)
{
// Load file fro
m disk and create new instance.
var BIS = Create
ByteInputStreamFromFile(i_Path);
var CIS = BIS.Op
enCharInputStream(GrooveCharEncodingType_UTF8);
var FileCode = C
IS.ReadChars(-1);
BIS.Close();
var FileName = R
ightBack(i_Path, "\\");
var ObjectInstan
ce = null;
if (g_ObjectType
== GrooveFormsToolDesignObjectType_Script)
{
// Get f
ile name and language from file on disk.
var File
Extension = RightBack(i_Path, ".").toLowerCase();
var File
Language = "JavaScript";
if (File
Extension == "vbs")
FileLanguage = "VBScript";
ObjectIn
stance = g_Design.Scripts.IGrooveFormsToolScriptFactory.Create(FileName);
ObjectIn
stance.Language = FileLanguage;
ObjectIn
stance.ScriptCode = FileCode;
}
else if (g_Objec
tType == GrooveFormsToolDesignObjectType_Style)
{
// Remov
e the '.css' extension if it exists.
if (File
Name.substring(FileName.length-4, FileName.length) == ".css")
FileName = FileName.substring(0, FileName.length-4);
// Set t
he name and style code in the new object instance.
ObjectIn
stance = g_Design.Styles.IGrooveFormsToolStyleFactory.Create(FileName);
ObjectIn
stance.StyleCode = FileCode;
}
if (GetObjectIns
tanceByName(FileName) != null)
{
var BSTR
Enum = CreateBSTREnum();
BSTREnum
.Add(FileName);
var Priv
= g_CallbackCode;
var Wind
ow = UIPropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
var AddO
bjectResult = App.GrooveMessageBox(Window, g_Account, Priv.MessageFormat(IDS_FOR
MS_TOOL_SUBFORMS_GRP_ADD_OBJ_FILE_EXISTS, BSTREnum.IGrooveBSTREnum), Priv.GetRes
ourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_FILE_EXISTS_TITLE), GrooveMessa
geBoxStyle_OKCancel, GrooveMessageBoxIcon_Information);
if (AddO
bjectResult == GrooveMessageBoxResultCode_OK)
ReplaceObjectInstance(FileName, ObjectInstance);
}
else
{
AddObjec
tInstance(ObjectInstance);
}
}
function ReplaceObjectIn
stance(i_Name, i_Instance)
{
for (var i = 0;
i < AddedObjectsListView.Count; i++)
{
var Obje
ct = AddedObjectsListView.GetItemData(i);
if (Obje
ct.IGrooveFormsToolDesignObject.Name == i_Name)
{
// Update the item text and data from the new instance.
var ObjectLabel = "";
if (g_ObjectType == GrooveFormsToolDesignObjectType_FieldGroup)
ObjectLabel = g_CallbackCode.IGrooveFormsToolDesignerPrivate.GetPlainTextLabelFo
rFieldGroup(i_Instance);
else if (g_ObjectType == GrooveFormsToolDesignObjectType_TabGroup)
ObjectLabel = g_CallbackCode.IGrooveFormsToolDesignerPrivate.GetPlainTextLabelFo
rTabGroup(i_Instance);

if (ObjectLabel == "")
ObjectLabel = i_Instance.IGrooveFormsToolDesignObject.Name;

AddedObjectsListView.SetItemText(i, 0, ObjectLabel);

AddedObjectsListView.SetItemData(i, i_Instance);
AddUpdatedObjectInstance(i_Instance);
break;
}
}
}
function AddObjectInstan
ce(i_Instance)
{
var cNull = Groo
veScriptFunctions.CreateNewObject("");
var Index = -1;
var ObjectLabel
= "";
if (g_ObjectType
== GrooveFormsToolDesignObjectType_FieldGroup)
ObjectLa
bel = g_CallbackCode.IGrooveFormsToolDesignerPrivate.GetPlainTextLabelForFieldGr
oup(i_Instance);
else if (g_Objec
tType == GrooveFormsToolDesignObjectType_TabGroup)
ObjectLa
bel = g_CallbackCode.IGrooveFormsToolDesignerPrivate.GetPlainTextLabelForTabGrou
p(i_Instance);
if (ObjectLabel
== "")
ObjectLa
bel = i_Instance.IGrooveFormsToolDesignObject.Name;
Index = AddedObj
ectsListView.AddItem2(ObjectLabel, i_Instance, cNull, -1);
AddedObjectsList
View.SetSelectionByIndex(Index);
AddedObjectsList
View.SetCheckByIndex(Index, true);
AddUpdatedObject
Instance(i_Instance);
}
function AddUpdatedObjec
tInstance(i_Instance)
{
var bIsFound = f
alse;
var InstanceName
= i_Instance.IGrooveFormsToolDesignObject.Name;
for (var i = 0;
i < g_UpdatedObjects.length; i++)
{
if (Inst
anceName == g_UpdatedObjects[i].IGrooveFormsToolDesignObject.Name)
{
// Update the instance if it is already in the array.
g_UpdatedObjects[i] = i_Instance;
bIsFound = true;
break;
}
}
// Add the insta
nce to the array if it was not found.
if (!bIsFound)
g_Update
dObjects[g_UpdatedObjects.length] = i_Instance;
}
function GetObjectInstan
ceByName(i_Name)
{
for (var i = 0;
i < AddedObjectsListView.Count; i++)
{
var Obje
ct = AddedObjectsListView.GetItemData(i);
if (Obje
ct.IGrooveFormsToolDesignObject.Name == i_Name)
return AddedObjectsListView.GetItemData(i);
}
return null;
}
function FixInstanceName
(i_Instance)
{
var InstanceName
= i_Instance.IGrooveFormsToolDesignObject.Name;
var NewInstanceN
ame = InstanceName;
var intTotalCoun
t = 0;
var Priv = g_Cal
lbackCode;
while (GetObject
InstanceByName(NewInstanceName) != null)
{
intTotal
Count++;
if (intT
otalCount == 1)
{
var BSTREnum = CreateBSTREnum();
BSTREnum.Add(InstanceName);
NewInstanceName = Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_COPY_OF
, BSTREnum.IGrooveBSTREnum);
}
else if
(intTotalCount > 1)
{
var BSTREnum = CreateBSTREnum();
BSTREnum.Add(intTotalCount);
BSTREnum.Add(InstanceName);
NewInstanceName = Priv.MessageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_COPY_OF
_MULTIPLE, BSTREnum.IGrooveBSTREnum);
}
}
if (NewInstanceN
ame != InstanceName)
i_Instan
ce.Rename(NewInstanceName);
return i_Instanc
e;
}
function ModifyObjectIns
tance()
{
var ObjectIndex
= AddedObjectsListView.SelectionIndex;
var ObjectInstan
ce = AddedObjectsListView.GetItemData(ObjectIndex);
// Disable all o
bjects in the window so user can't switch back.
g_IsEditingObjec
t = true;
AddedObjectsList
View.Enabled = false;
if (g_ObjectType
== GrooveFormsToolDesignObjectType_FieldGroup)
ObjectIn
stance = g_CallbackCode.LoadEditFieldGroupControl(ObjectInstance, g_Window);
else if (g_Objec
tType == GrooveFormsToolDesignObjectType_TabGroup)
ObjectIn
stance = g_CallbackCode.LoadEditTabGroupControl(ObjectInstance, g_Window);
g_IsEditingObjec
t = false;
AddedObjectsList
View.Enabled = true;
if (ObjectInstan
ce != null)
{
AddUpdat
edObjectInstance(ObjectInstance);
// Updat
e the item text and data from the new instance.
var Obje
ctLabel = "";
if (g_Ob
jectType == GrooveFormsToolDesignObjectType_FieldGroup)
ObjectLabel = g_CallbackCode.IGrooveFormsToolDesignerPrivate.GetPlainTextLabelFo
rFieldGroup(ObjectInstance);
else if
(g_ObjectType == GrooveFormsToolDesignObjectType_TabGroup)
ObjectLabel = g_CallbackCode.IGrooveFormsToolDesignerPrivate.GetPlainTextLabelFo
rTabGroup(ObjectInstance);
if (Obje
ctLabel == "")
ObjectLabel = ObjectInstance.IGrooveFormsToolDesignObject.Name;
AddedObj
ectsListView.SetItemText(ObjectIndex, 0, ObjectLabel);
AddedObj
ectsListView.SetItemData(ObjectIndex, ObjectInstance);
}
}
function DeleteObjectIns
tance()
{
var Priv = g_Cal
lbackCode;
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
var Result = App
.GrooveMessageBox(Window, g_Account, Priv.GetResourcedString(IDS_FORMS_TOOL_SUBF
ORMS_GRP_ADD_OBJ_DELETE), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_AD
D_OBJ_DELETE_TITLE), GrooveMessageBoxStyle_YesNo, GrooveMessageBoxIcon_Warning);
if (Result == Gr
ooveMessageBoxResultCode_Yes)
{
var Obje
ctIndex = AddedObjectsListView.SelectionIndex;
var Obje
ctInstance = AddedObjectsListView.GetItemData(ObjectIndex);
if (g_Ob
jectType == GrooveFormsToolDesignObjectType_FieldGroup)
g_CallbackCode.DeleteFieldGroup(ObjectInstance.IGrooveFormsToolDesignObject.ID);
else if
(g_ObjectType == GrooveFormsToolDesignObjectType_TabGroup)
g_CallbackCode.DeleteTabGroup(ObjectInstance.IGrooveFormsToolDesignObject.ID);
// Remov
e the object from the list view.
AddedObj
ectsListView.RemoveItemByIndex(ObjectIndex);
AddedObj
ectsListView.SetSelectionByIndex(-1);
}
}
function ResetGlobals()
{
// Reset list vi
ew content.
AddedObjectsList
View.ResetContent();
// Reset global
arrays.
g_UpdatedObjects
= new Array();
}
function DismissWindow(i
_Result)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(i_R
esult);
Window.Destroy(i
_Result);
}
/* #####################
#########
### OBJECT COMMAN
DS ###
#####################
######### */
function AddedObjectsLis
tView_OnListViewItemDblClick(i_Name, i_Index)
{
if (i_Index > -1
)
{
if (g_Ob
jectType == GrooveFormsToolDesignObjectType_FieldGroup || g_ObjectType == Groove
FormsToolDesignObjectType_TabGroup)
ModifyObjectInstance();
}
}
function AddObjectButton
_OnCommand(i_UICommand)
{
var cNull = Groo
veScriptFunctions.CreateNewObject("");
var ReturnInstan
ce = null;
// Disable all o
bjects in the window so user can't switch back.
g_IsEditingObjec
t = true;
AddedObjectsList
View.Enabled = false;
if (g_ObjectType
== GrooveFormsToolDesignObjectType_Script)
ReturnIn
stance = g_CallbackCode.LoadEditScriptCodeControl(cNull, g_Window);
else if (g_Objec
tType == GrooveFormsToolDesignObjectType_Style)
ReturnIn
stance = g_CallbackCode.LoadEditStyleCodeControl(cNull, g_Window);
else if (g_Objec
tType == GrooveFormsToolDesignObjectType_FieldGroup)
ReturnIn
stance = g_CallbackCode.LoadEditFieldGroupControl(cNull, g_Window);
else if (g_Objec
tType == GrooveFormsToolDesignObjectType_TabGroup)
ReturnIn
stance = g_CallbackCode.LoadEditTabGroupControl(cNull, g_Window);
g_IsEditingObjec
t = false;
AddedObjectsList
View.Enabled = true;
if (ReturnInstan
ce != null)
{
ReturnIn
stance = FixInstanceName(ReturnInstance);
AddObjec
tInstance(ReturnInstance);
}
}
function BrowseObjectBut
ton_OnCommand(i_UICommand)
{
var FilesEnum =
g_CallbackCode.AddScriptOrStyleCodeFromFile(g_ObjectType);
var FilesArray =
new Array();
while (FilesEnum
.HasMore())
{
FilesArr
ay[FilesArray.length] = FilesEnum.OpenNext();
}
if (FilesArray.l
ength == 1)
NewObjec
tInstanceFromFile(FilesArray[0]);
else if (FilesAr
ray.length > 1)
{
for (var
i = 1; i < FilesArray.length; i++)
{
if (FilesArray[0].charAt(FilesArray[0].length - 1) == "\\")
NewObjectInstanceFromFile(FilesArray[0] + FilesArray[i]);
else
NewObjectInstanceFromFile(FilesArray[0] + "\\" + FilesArray[i]);
}
}
}
function ModifyObjectBut
ton_OnCommand(i_UICommand)
{
ModifyObjectInst
ance();
}
function DeleteObjectBut
ton_OnCommand(i_UICommand)
{
DeleteObjectInst
ance();
}
function OKButton_OnComm
and(i_UICommand)
{
DismissWindow(Gr
ooveWindowResult_OK);
}
function CancelButton_On
Command(i_UICommand)
{
DismissWindow(Gr
ooveWindowResult_Cancel);
}
/* #####################
#########
### OBJECT UPDATE
S ###
#####################
######### */
function AddObjectButton
_OnUpdateCommandState(i_UICommand)
{
if (g_IsEditingO
bject)
i_UIComm
and.Enabled = false;
else
i_UIComm
and.Enabled = true;
}
function BrowseObjectBut
ton_OnUpdateCommandState(i_UICommand)
{
if (g_IsEditingO
bject)
i_UIComm
and.Enabled = false;
else
i_UIComm
and.Enabled = true;
}
function ModifyObjectBut
ton_OnUpdateCommandState(i_UICommand)
{
if (!g_IsEditing
Object && AddedObjectsListView.SelectionIndex >= 0)
i_UIComm
and.Enabled = true;
else
i_UIComm
and.Enabled = false;
}
function DeleteObjectBut
ton_OnUpdateCommandState(i_UICommand)
{
if (!g_IsEditing
Object && AddedObjectsListView.SelectionIndex >= 0)
i_UIComm
and.Enabled = true;
else
i_UIComm
and.Enabled = false;
}
function OKButton_OnUpda
teCommandState(i_UICommand)
{
if (g_IsEditingO
bject)
i_UIComm
and.Enabled = false;
else
i_UIComm
and.Enabled = true;
}
function CancelButton_On
UpdateCommandState(i_UICommand)
{
if (g_IsEditingO
bject)
i_UIComm
and.Enabled = false;
else
i_UIComm
and.Enabled = true;
}
/* #####################
##########
### PUBLIC FUNCTI
ONS ###
#####################
########## */
function GetHelpProvider
()
{
try
{
var RTFH
elpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCo
mponentByName("RTFHelpProvider");
return R
TFHelpProvider;
}
catch(error)
{
}
finally
{
RTFHelpP
rovider = null;
delete R
TFHelpProvider;
CollectG
arbage();
}
}
function InitObjectManag
er(i_pIObjectEnum, i_Type)
{
ResetGlobals();
g_ObjectType = i
_Type;
var blnHideGroup
Buttons = true;
var Priv = g_Cal
lbackCode;
// Set the corre
ct labels and tooltips for the object type.
if (g_ObjectType
== GrooveFormsToolDesignObjectType_Script)
{
AddObjec
tButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_AD
D_SCRIPT_TOOLTIP);
BrowseOb
jectButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ
_BROWSE_SCRIPT_TOOLTIP);
AddedObj
ectsHelpStatic.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_O
BJ_ADD_SCRIPT_HELP));
}
else if (g_Objec
tType == GrooveFormsToolDesignObjectType_Style)
{
AddObjec
tButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_AD
D_STYLE_TOOLTIP);
BrowseOb
jectButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ
_BROWSE_STYLE_TOOLTIP);
AddedObj
ectsHelpStatic.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_O
BJ_ADD_STYLE_HELP));
}
else if (g_Objec
tType == GrooveFormsToolDesignObjectType_FieldGroup)
{
AddObjec
tButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_AD
D_FIELD_GROUP_TOOLTIP);
ModifyOb
jectButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ
_MOD_FIELD_GROUP_TOOLTIP);
DeleteOb
jectButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ
_DEL_FIELD_GROUP_TOOLTIP);
AddedObj
ectsHelpStatic.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_O
BJ_ADD_FIELD_GROUP_HELP));
blnHideG
roupButtons = false;
}
else if (g_Objec
tType == GrooveFormsToolDesignObjectType_TabGroup)
{
AddObjec
tButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ_AD
D_TAB_GROUP_TOOLTIP);
ModifyOb
jectButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ
_MOD_TAB_GROUP_TOOLTIP);
DeleteOb
jectButton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_OBJ
_DEL_TAB_GROUP_TOOLTIP);
AddedObj
ectsHelpStatic.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ADD_O
BJ_ADD_TAB_GROUP_HELP));
blnHideG
roupButtons = false;
}
// Display the c
orrect buttons depending on the type of object.
AddRemoveCellCon
tents("BrowseObjectButton", AddObjectCodeInnerLayout, !blnHideGroupButtons);
AddRemoveCellCon
tents("ModifyObjectButton", AddObjectCodeInnerLayout, blnHideGroupButtons);
AddRemoveCellCon
tents("DeleteObjectButton", AddObjectCodeInnerLayout, blnHideGroupButtons);
AddRemoveMultiCe
llContents("OKButton", AddObjectCodeControlLayout, !blnHideGroupButtons);
if (blnHideGroup
Buttons)
CancelBu
tton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
else
CancelBu
tton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_GRP_DONE);
// Add all exist
ing objects to the list view.
while (i_pIObjec
tEnum != null && i_pIObjectEnum.HasMore())
{
var pIFo
rmsToolObject = i_pIObjectEnum.OpenNext();
var Obje
ctName = pIFormsToolObject.IGrooveFormsToolDesignObject.Name;
if (g_Ob
jectType == GrooveFormsToolDesignObjectType_Script)
{
if (!IsSystemScript(ObjectName))
{
var ScriptLanguage = pIFormsToolObject.Language;
var ScriptCode = pIFormsToolObject.ScriptCode;

AddedObjectsListView.AddItem2(ObjectName, pIFormsToolObject, GROOVE_NULL, -1);


}
}
else
{
var ObjectLabel = "";
if (g_ObjectType == GrooveFormsToolDesignObjectType_FieldGroup)
ObjectLabel = g_CallbackCode.IGrooveFormsToolDesignerPrivate.GetPlainTextLabelFo
rFieldGroup(pIFormsToolObject);
else if (g_ObjectType == GrooveFormsToolDesignObjectType_TabGroup)
ObjectLabel = g_CallbackCode.IGrooveFormsToolDesignerPrivate.GetPlainTextLabelFo
rTabGroup(pIFormsToolObject);

if (ObjectLabel == "")
ObjectLabel = ObjectName;

AddedObjectsListView.AddItem2(ObjectLabel, pIFormsToolObject, GROOVE_NULL, -1);


}
}
}
q& urn:groove.net:PropertyLi
st  EnforceInterfaces1  __Version4,1,0,0  +7 urn:groove.net:Component NameBasicsLay
:ComponentResource8 urn:groove.net:PropertyList  8   urn:groove.net:ComponentResource7 URL:htt
mponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCom
ponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx  urn:groove.net:
PropertyList7  __Version4,1,0,0  _G_Layout Layout C   Layout  urn:groove.net:PropertyV
rtyValue MULTIROW   MULTIROW   ROW  ROW ROW ROW ROW ROW ROW ROW ROW ROW ROW ROW ROW
dioButton( ROW  CELL_ CELL HEIGHT18s LeftPad5 CustomSizeRadioButton( ROW  CELLx CELL
 WidthLabel5 ROW  CELL CELL CELL HEIGHT18s WIDTH35 LeftPad5 NAME,ColumnWidthEditControl
RadioButton ColumnWidthPixelRadioButton( ROW  CELL CELL HEIGHT18s LeftPad40y NAME8Column
intsRadioButton( ROW  CELL CELL HEIGHT18s LeftPad40y NAME:ColumnWidthPercentRadioButton
d5 NAMEPrecisionLabelt PrecisionLabel( ROW  CELL CELL HEIGHT20  LeftPad5Righ 
PrecisionCombobox(
TotalCheckBox( ROW  ROW
 CELL
 CELL
u CELL
. CELL
 HEIGHT
 HEIGHT
18s5LeftPad
( ROW 25CELL
 NAME TotCELL
alChecHEIGHT
kBox2t1(8s ROW
LeftPad
 CELL
5 NAME
. CE
To
t  urn:groove.net:ComponentResourcee urn:groove.net:PropertyList e   urn:groove.net:Component
ourceb URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.
Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayo
utx urn:groove.net:PropertyListb  __Version4,1,0,0  _G_Layout LayoutC Layout
eSortTypeLabel5
E urn:groove.net:PropertyValue
 ROW CELL CELL MULTIROW  CELL HEIGHT  MULTIROW
 30RightPad
   ROW5  ROW  BottomPad
 ROW ROW 5 LeftPad
 ROW ROW
10 SortTyp
 ROW R
abel( ROW CELLh CELL HEIGHT20  WIDTH200 LeftPad5  SortLabel( ROW CEL
 LeftPad10 SortDescendingCheckBox( ROW CELL  CELL HEIGHT70poRightPad5  BottomPad5 L
IGHT180 LeftPad5 SecondarySortViewContainer
  urn:groove.net:Component Name$GroupOptionsLayoutx  urn:groove.net:ComponentResource  urn:g
PropertyList    urn:groove.net:ComponentResource  URL:http://components.groove.net/Groove/Co
ts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&
Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList   __Version4,1,0,0
tC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  DMULTIROW

( ROW CELL   CELL HEIGHT30 LeftPad10 TopPad5RightPad  10 GroupTypeCombobox( ROW CELL   C
ponent Name&SecondarySortLayout  urn:groove.net:ComponentResource  urn:groove.net:PropertyLis
ove.net:ComponentResource  URL:http://components.groove.net/Groove/Components/Root.osd?P
ackage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fac
tory=MultiCellLayoutx urn:groove.net:PropertyList   __Version4,1,0,0  _G_Layout La
net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  PMULTIROW
  ROW ROW ROW ROW(
ck IncludeSecondarySortCheckbox( ROW CELL  CELL HEIGHT25 LeftPad10RightPad  250 NAME
SSNamem SecondarySortNameCombobox( ROW CELL CELL RightPad  250 NAMESSOrder HEIGHT30 LeftPa
:Component Name.FontPickerViewContainer  urn:groove.net:ComponentResource# urn:groove.net:Co
ponentConnections{  urn:groove.net:ComponentResource URL6http://components.groove.net/Groo
omponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponen
ts_DLL&Version=0&Factory=ViewContainer]# urn:groove.net:ComponentConnections urn:groove.ne
t:Connectiony urn:groove.net:Connection
 ConnectionID0 Name FontPickerLayoute urn:groove.net:Component DisplayName Web Browser Vie
rViewm  urn:groove.net:ComponentResource urn:groove.net:PropertyList+   urn:groove.net:Comp
Resource URLLhttp://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveWebBrowserTool_DLL&Version=2,6&Factory=WebBrowserCo
ntrolWrapperpo+ urn:groove.net:PropertyList ReturnSafeForScriptingExternal
False DisableMnemonicsByResourceID:4366,4367,4368,4369,4370,4371 DisableNavigationSoun
Tdruea  __Version4,1,0,0 @ PropertyValueRichTextRadioButtonFt:PropertyBackgroundColorBu
R$teMtcaoDcnerFfoNLamn,egV.uJGau$gs"etLi$afCbyaeTnlocRpeRPlaOMR
dpitoiBountBtuotnt<o?nE74L0
EditS$tCyalnecCeoldOepCtoinotnrBoultLtaoynoEutL0
 }Z*Update8Condbitio$nButurn:groove
tonD
net:ComponentResource urn:groove.net:PropertyList    urn:groove.net:ComponentResource URL:
nents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompon
ents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:Pro
pertyList  __Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyV
ROWMULTIROW   ROW ROW ROW ROW ROW ROW
 ROW
 ROW ROW ROW ROW ROW ROW ROW ROW( ROW CELLj CELL HEIGHT30 TopPad5 LeftPad5 FontStyleLabel( R
 CELL HEIGHT25 LeftPad10 FontUnderlineCheckBox(
 ROW CELLo CELL
 HEIGHT30 TopPad5 LeftPad5 HJustificationLabel(
eCELL
ROW CELL
 HEIGHT18s LeftPad10 HJustifyLeftRadioButton( ROW CELLg CELL HEIGHT18s LeftPad10 HJustifyCen
Button( ROW CELLo CELL HEIGHT30 TopPad5 LeftPad5 VJustificationLabel( ROW CELLd CELL HEIGHT
ton( ROW CELLg CELL HEIGHT18s LeftPad10 VJustifyBottomRadioButton( ROW CELL  CELL RightPad  3
umnHeaderLabel  urn:groove.net:ComponentResource urn:groove.net:PropertyList,o  urn:groove.
:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=
net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=St
atic, urn:groove.net:PropertyList  __Version4,1,0,0 LabelColumn Header:
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLeft0
  U
 urn:groove.net:Component Name FontPickerLayoute  urn:groove.net:ComponentResource urn:
tyList   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Component
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=HTMLTableLayoutx urn:groove.net:PropertyList  __Version4,1,0,0  _G_L
tC Layout urn:groove.net:PropertyValue B  urn:groove.net:PropertyValue TABLE!3! TABLE  TR" TR
 FontButtonf$ TD" HEIGHT15 WIDTH165 LeftPad5  FontLabelP% TD" WIDTH165 LeftPad5  Size
tColorButton ' TD"  BottomPad2 TopPad2 ROWSPAN2 WIDTH80 LeftPad5 WebBrowserView0( TR! TD
 FontFaceNameO* TD( WIDTH165 LeftPad5FontSize   urn:groove.net:Component Name.ColumnHeaderEd
mponentResource urn:groove.net:PropertyList-k  urn:groove.net:ComponentResource URL$http:/
nts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponen
ts.GrooveCommonComponents_DLL&Version=0&Factory=EditNam- urn:groove.net:PropertyList  T
extLimit250  __Version4,1,0,0 urn:groove.net:Component Name ColumnWidthLabel
  urn:groove.net:ComponentResource urn:groove.net:PropertyList.o  urn:groove.net:Co
nentResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.gr
oove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static. urn:g
roove.net:PropertyList  __Version4,1,0,0 LabelColumn Width:
 HAlignmentLeft  FontStyleLabelText
 VAlignment
Centere urn:groove.net:Component Name,ColumnWidthEditControl  urn:groove.net:ComponentResou
ve.net:PropertyList0k  urn:groove.net:ComponentResource URL$http://components.groove.net/Groo
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=EditNai0 urn:groove.net:PropertyList  TextLimit4  _
_Version4,1,0,0H    t      urn:groove.net:Component NameWidthLabelTo  urn:groove.net:C
List/o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=Static/ urn:groove.net:PropertyList  __Version4,1,0,0 Label
Width:n
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLeft urn:groove.net:Component Name6ColumnWidthPixelRadioButton  urn:groove.net:Co
source urn:groove.net:PropertyList1o  urn:groove.net:ComponentResource URL(http://components.
e.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groove
CommonComponents_DLL&Version=0&Factory=Buttone1 urn:groove.net:PropertyList StyleRadiobutton
bel
Pixelsi RadiobuttonTruea  __Version4,1,0,0 urn:groove.net:Component Name8ColumnWidthPointsRa
on  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList2o
  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=Buttone2 urn:groove.net:PropertyList StyleRadiobutton Label
Pointsro RadiobuttonTruea  __Version4,1,0,0 urn:groove.net:Component Name:ColumnWidth
ton  urn:groove.net:ComponentResource urn:groove.net:PropertyList3o  urn:groove.net:Component
esource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.
Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone3 urn:groov
e.net:PropertyList StyleRadiobutton LabelPercent RadiobuttonTruea  __Version4,1,0,0 u
ponent Name$AutoFitRadioButtonpo  urn:groove.net:ComponentResource urn:groove.net:PropertyLis
4o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.
osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=
0&Factory=Buttone4 urn:groove.net:PropertyList StyleRadiobutton LabelAutoFit RadiobuttonTruea
_Version4,1,0,0  p    |     urn:groove.net:Component Name*CustomSizeRadioButton  ur
PropertyList5o   urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Co
mponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponent
s_DLL&Version=0&Factory=Buttone5 urn:groove.net:PropertyList StyleRadiobutton LabelCustom Si
obutton Truea  __Version4,1,0,0% urn:groove.net:Component NameSortTypeLabel  urn:groove.n
ntResource& urn:groove.net:PropertyList6o&  urn:groove.net:ComponentResource% URL(http://comp
ents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompone
nts.GrooveCommonComponents_DLL&Version=0&Factory=Static6 urn:groove.net:PropertyList%
 HAlignmentLeft LabelSort type:t  FontStyleLabelText  __Version4,1,0,0+ urn:groove.net:C
omponent Name0SortTypeDescriptionLabel  urn:groove.net:ComponentResource. urn:groove.net:Prop
ertyList7o.  urn:groove.net:ComponentResource+ URL(http://components.groove.net/Groove/Comp
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=Static7 urn:groove.net:PropertyList+  BreakTypeWordBreak Label
ontStyleDescriptionText  __Version4,1,0,03 urn:groove.net:Component Name SortTypeCombobox
  urn:groove.net:ComponentResource4 urn:groove.net:PropertyList8s4  urn:groove.net:Component
Resource3 URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
 InitialValues8
8 urn:groove.net:PropertyList3
InitialValues9 Jurn:groove.net:PropertyValue:
9   __Version4,1,:0,urn:groove.net:PropertyValue9
0 _G_InitialValues  urn:groove.net:
groove.net:Item< urn:groove.net:Item=C; urn:groove.net:Item: Name FlatCoS< urn:groove.net:Item:
chicalG= urn:groove.net:Item: NameGrouped` ]   |     ; urn:groove.net:Component NameSor
groove.net:PropertyList>o<  urn:groove.net:ComponentResource; URL(http://components.groove.
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=Static> urn:groove.net:PropertyList;
 HAlignmentLeft LabelSorting:o  FontStyleLabelText  __Version4,1,0,0A urn:groove.net:C
SortDescriptionLabelro  urn:groove.net:ComponentResourceB urn:groove.net:PropertyList?oB  ur
n:groove.net:ComponentResourceA URL(http://components.groove.net/Groove/Components/Roo
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=Static? urn:groove.net:PropertyListA  BreakTypeWordBreak LabelSelect optio
to allow users to sort the view by clicking the column header, or leave the opti
ons unchecked to allow only ordinal sorting.  FontStyleDescriptionText  __Version4
,1,0,0G urn:groove.net:Component Name*SortAscendingCheckBox  urn:groove.net:ComponentResour
oove.net:PropertyList@oH  urn:groove.net:ComponentResourceG URL(http://components.groove.ne
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=Buttone@ urn:groove.net:PropertyListG StyleCheckboxw Labe
cendingCheckbox
 true  __Version4,1,0,0M urn:groove.net:Component Name,SortDescendingChec
:groove.net:ComponentResourceN urn:groove.net:PropertyListAoN  urn:groove.net:ComponentRe
sourceM URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ButtoneA urn:groo
ve.net:PropertyListM StyleCheckboxw LabelDescendingoCheckbox  true  __Version4,1,0,0Z urn:groo
omponent Name"GroupTypeCombobox  urn:groove.net:ComponentResource[ urn:groove.net:PropertyLis
tCs[  urn:groove.net:ComponentResourceZ URL,http://components.groove.net/Groove/Components/
Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ver
sion=0&Factory=ComboBox
TC urn:groove.net:PropertyListZ  __Version4,1,0,0P |   l  l    S urn:groove.net:Compo
:ComponentResourceT urn:groove.net:PropertyListBoT  urn:groove.net:ComponentResourceS URL(htt
//components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.Too
lComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticB urn:groove.net:Prope
rtyListS  __Version4,1,0,0 LabelGroup by:
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLeft] urn:groove.net:Component NameHMaintainHierarchyWithinGroupCheckBox  urn:gro
ComponentResource^ urn:groove.net:PropertyListDo^  urn:groove.net:ComponentResource] URL(http
/components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.Tool
Components.GrooveCommonComponents_DLL&Version=0&Factory=ButtoneD urn:groove.net:Prope
rtyList] StyleCheckboxw LabelTMaintain hierarchy within grouped records.Checkbox  true  _
_Version4,1,0,0c urn:groove.net:Component NameGroupSortLabelm  urn:groove.net:ComponentReso
oove.net:PropertyListEod  urn:groove.net:ComponentResourcec URL(http://components.groove.ne
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=StaticE urn:groove.net:PropertyListc  __Version4,1,0,0 Lab
lHSort records in group by this field:
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLeftj urn:groove.net:Component Name8IncludeSecondarySortCheckbox  urn:groove.net:
tResourcem urn:groove.net:PropertyListFom  urn:groove.net:ComponentResourcej URL(http://compo
nts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponen
ts.GrooveCommonComponents_DLL&Version=0&Factory=ButtoneF urn:groove.net:PropertyListj Styl
eCheckboxw Label*Secondary sort columnCheckbox
 true  __Version4,1,0,0r urn:groove.net:C
SecondarySortNameCombobox  urn:groove.net:ComponentResources urn:groove.net:PropertyLis
tGss  urn:groove.net:ComponentResourcer URL,http://components.groove.net/Groove/Components/
Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ver
sion=0&Factory=ComboBox
TG urn:groove.net:PropertyListr  __Version4,1,0,0H    ( 2  B     u urn:groove.net:Compon
n:groove.net:ComponentResourcex urn:groove.net:PropertyListHsx  urn:groove.net:ComponentR
esourceu URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groov
e.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
 InitialValuesH
H  urn:groove.net:PropertyListu
InitialValuesI Jurn:groove.net:PropertyValueJ
I   __Version4,1l,J0,urn:groove.net:PropertyValueI
0 _G_InitialValues  urn:groove.net:
K urn:groove.net:ItemLKK urn:groove.net:ItemJ NameAscendingOL urn:groove.net:ItemJ NameDescen
t:Component Name$ShowTwistyCheckBoxac  urn:groove.net:ComponentResource  urn:groove.net:Prope
yListMo   urn:groove.net:ComponentResource~ URL(http://components.groove.net/Groove/Component
s/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&V
ersion=0&Factory=ButtoneM urn:groove.net:PropertyList~ StyleCheckboxw LabellShow a 'twisty' i
this column when row is expandable.\Checkbox
 true  __Version4,1,0,0  urn:groove.net:Component
FormatLabel  urn:groove.net:ComponentResource  urn:groove.net:PropertyListNo   urn:groove.net
mponentResource  URL(http://components.groove.net/Groove/Components/Root.osd?Package=net
.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Stati
cN urn:groove.net:PropertyList   __Version4,1,0,0 LabelDate Format:
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLeft urn:groove.net:Component NameTotalCheckBox  urn:groove.net:ComponentResourc
:PropertyListpo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/C
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=Buttonep urn:groove.net:PropertyList StyleCheckboxw Label>Total the
es in this columnCheckbox
 true  __Version4,1,0,00     6     urn:groove.net:Component Na
.net:ComponentResource  urn:groove.net:PropertyListOs   urn:groove.net:ComponentResource  URL
components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolC
omponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
 InitialValuesO
O urn:groove.net:PropertyList
InitialValuesP Jurn:groove.net:PropertyValueQ
P   __Version4,1,Q0,urn:groove.net:PropertyValueP
0 _G_InitialValues  urn:groove.net:
roove.net:ItemS urn:groove.net:ItemT urn:groove.net:ItemU urn:groove.net:ItemV urn:groove.net
emW urn:groove.net:ItemX urn:groove.net:ItemY urn:groove.net:ItemZ urn:groove.net:Item[ urn:g
et:Item\ urn:groove.net:Item] urn:groove.net:Item^ urn:groove.net:Item_ urn:groove.net:Item`
ove.net:ItemaCR urn:groove.net:ItemQ Name
ShortCS urn:groove.net:ItemQ Name Longn=kT urn:groove.net:ItemQ Name2Hour (12 hour with AM/PM)W
ove.net:ItemQ NameHour (24 hour)tcV urn:groove.net:ItemQ Name*Day in month (e.g. 3)kW urn:gro
t:ItemQ Name2Day of week (e.g. Monday) X urn:groove.net:ItemQ NameDDay of week abbreviated (e
Mon)gY urn:groove.net:ItemQ Name,Day in year (e.g. 189)gZ urn:groove.net:ItemQ Name,Week in
(e.g. 2)g[ urn:groove.net:ItemQ Name,Week in year (e.g. 27)w\ urn:groove.net:ItemQ Name<Mont
full text (e.g. July) ]  urn:groove.net:ItemQ NameHMonth as abbreviated text (e.g. Jul)w^ urn:
oove.net:ItemQ Name<Month as full number (e.g. 07)w_ urn:groove.net:ItemQ Name<Month as short
number (e.g. 7)w` urn:groove.net:ItemQ Name>Year as full number (e.g. 2004)wa urn:groove.net:
ItemQ Name<Year as short number (e.g. 04)  urn:groove.net:Component NameFontLabel  urn:groo
ntResource urn:groove.net:PropertyListso  urn:groove.net:ComponentResource URL(http://comp
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=Statics urn:groove.net:PropertyList LabelFont
 VAlignment
Centere
 HAlignmentLeft  __Version4,1,0,0 _G_Font Fontt<t Fonts urn:groove.net:FontDescuvu urn:groove
ontStyleLabelText StyleUnderlineTruea       urn:groove.net:Component Name.ColumnPrecision
ponentResource urn:groove.net:PropertyListcs  urn:groove.net:ComponentResource URL,http://
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
 InitialValuesc
c urn:groove.net:PropertyList
InitialValuesd Jurn:groove.net:PropertyValuee
d   __Version4,1L,e0,urn:groove.net:PropertyValued
0 _G_InitialValues 
 urn:groove.net:Itemf urn:groove.net:Itemg urn:groove.net:Itemh urn:groove.net:Itemi urn:groo
:Itemj urn:groove.net:Itemk urn:groove.net:Iteml urn:groove.net:Itemm urn:groove.net:Itemn ur
e.net:Itemo;f urn:groove.net:Iteme Name0;g urn:groove.net:Iteme Name1;h urn:groove.net:Iteme
:Iteme Name3;j urn:groove.net:Iteme Name4;k urn:groove.net:Iteme Name5;l urn:groove.net:Iteme
me Name7;n urn:groove.net:Iteme Name8;o urn:groove.net:Iteme Name9 urn:groove.net:Componen
eckBox  urn:groove.net:ComponentResource urn:groove.net:PropertyListqo  urn:groove.net:Comp
ntResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttoneq urn:gro
ove.net:PropertyList  __Version4,1,0,0 Label@Include all levels of hierarchy. TooltipBy
default only top level documents are included in totals. Check to include all l
evels of hierarchy in totals. StyleCheckboxwCheckbox  true urn:groove.net:Component NameFontB
oove.net:ComponentResource urn:groove.net:PropertyListro  urn:groove.net:ComponentResource
p://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.T
oolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone{r urn:groove.net:P
ropertyList TooltipN  Specify the font to use for this column  __Version4,1,0,0 Style$Stand
rdIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex26 ImageHeight16`  T       urn:groove.net:Component NameSizeLabel  urn:groove.ne
ertyListvo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Compon
ts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&
Version=0&Factory=Staticv urn:groove.net:PropertyList LabelSize>
 VAlignment
Centere
 HAlignmentLeft  __Version4,1,0,0 _G_Font Fontw<w Fontv urn:groove.net:FontDescxvx urn:groove
ontStyleLabelText StyleUnderlineTruea urn:groove.net:Component NameFontFaceNameer  urn:groo
entResource urn:groove.net:PropertyListyo  urn:groove.net:ComponentResource URL(http://com
groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.G
rooveCommonComponents_DLL&Version=0&Factory=Staticy urn:groove.net:PropertyList
 VAlignment
Centere
 HAlignmentLeft  FontStyleLabelText  __Version4,1,0,0  urn:groove.net:Component NameFon
groove.net:ComponentResource urn:groove.net:PropertyListzo  urn:groove.net:ComponentResourc
e URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Staticz urn:groove.net:P
ropertyList
 VAlignment
Centere
 HAlignmentLeft  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component NameFon
ton  urn:groove.net:ComponentResource urn:groove.net:PropertyList{o  urn:groove.net:Compone
esource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.
Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttoneo{ urn:groo
ve.net:PropertyList TooltipB  Specify the color for this column  __Version4,1,0,0 Style$Stand
rdIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex96t  ImageHeight16  <        urn:groove.net:Component Name FontBoldCheckB
e.net:PropertyList|o  urn:groove.net:ComponentResource URL(http://components.groove.net/Gro
e/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompo
nents_DLL&Version=0&Factory=Buttone| urn:groove.net:PropertyList StyleCheckboxw LabelBoldrt C
txrue  __Version4,1,0,0urn:groove.net:Component
  Name$FontItalicCheckBoxyl  urn:groove.net
tResourceurn:groove.net:PropertyList}o urn:groove.net:ComponentResourceURL(http://components.
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
oveCommonComponents_DLL&Version=0&Factory=Buttone} urn:groove.net:PropertyListStyleCheckbox
w Label
ICheckbox
talic> true  __Version4,1,0,0
 urn:groove.net:Component Name*FontUnderlineCheckBox  urn:groove.net:ComponentResourceurn:gro
.net:PropertyList~o urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone~ urn:groove.net
:PropertyList
 StyleCheckboxw LabelUnderlineCheckbox  true  __Version4,1,0,0urn:groove.net:Component
  N
l  urn:groove.net:ComponentResourceurn:groove.net:PropertyList o urn:groove.net:ComponentReso
rceURL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groo
ve.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:P
ropertyList  __Version4,1,0,0 Label2Horizontal Justification:
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLefturn:groove.net:Component
  NameFontStyleLabele  urn:groove.net:ComponentResourc
et:PropertyList o  urn:groove.net:ComponentResourceURL(http://components.groove.net/Groove/Com
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=Static  urn:groove.net:PropertyList  __Version4,1,0,0 LabelFont S
le:
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLeft  H "   l    urn:groove.net:Component
  Name.HJustifyLeftRadioButton  urn
PropertyList o urn:groove.net:ComponentResourceURL(http://components.groove.net/Groove/Compon
ents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DL
L&Version=0&Factory=Buttone  urn:groove.net:PropertyListStyleRadiobutton LabelLeft Radiobutto
_Version4,1,0,0$urn:groove.net:Component Name2HJustifyCenterRadioButton  urn:groove.net:Com
Resource%  urn:groove.net:PropertyList o% urn:groove.net:ComponentResource$ URL(http://component
.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.
GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:PropertyList$  StyleRadio
button Label
Centere RadiobuttonTruea  __Version4,1,0,0*urn:groove.net:Component Name0HJustifyRightRadioB
rn:groove.net:ComponentResource+  urn:groove.net:PropertyList o + urn:groove.net:ComponentRe
source*  URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove
.net:PropertyList* StyleRadiobutton Label
Right RadiobuttonTruea  __Version4,1,0,00urn:groove.net:Component Name&VJustificationLabel
oove.net:ComponentResource1  urn:groove.net:PropertyList o1 urn:groove.net:ComponentResourc
e0
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groo
ve.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:P
ropertyList0  __Version4,1,0,0 Label.Vertical Justification:
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLeft7urn:groove.net:Component Name,VJustifyTopRadioButton  urn:groove.net:Compone
rce8  urn:groove.net:PropertyList o 8 urn:groove.net:ComponentResource7 URL(http://components.gro
ve.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groov
eCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:PropertyList7 StyleRadiobutto
n LabelTop RadiobuttonTruea  __Version4,1,0,0  d    x      =urn:groove.net:Compone
:ComponentResource>  urn:groove.net:PropertyList o> urn:groove.net:ComponentResource= URL(http:/
components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolC
omponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:Property
List=  StyleRadiobutton Label
Centere RadiobuttonTruea  __Version4,1,0,0Curn:groove.net:Component Name2VJustifyBottomRadio
n  urn:groove.net:ComponentResourceD urn:groove.net:PropertyList o D urn:groove.net:ComponentR
esourceC  URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groov
e.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groov
e.net:PropertyListC  StyleRadiobutton Label
Bottomn RadiobuttonTruea  __Version4,1,0,0Iurn:groove.net:Component Name ApplyToAllButtonb 
ve.net:ComponentResourceJ  urn:groove.net:PropertyList oJ urn:groove.net:ComponentResourceI URL(
ttp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ButtoneU  urn:groove.net:P
ropertyListI  Tooltip A pplies the current font and justification settings to all existin
g columns.i StyleStandardButtonb LabelApply to Allht  __Version4,1,0,0Ourn:groove.net:Co
PropertyValueViewContainer  urn:groove.net:ComponentResourceP# urn:groove.net:Componen
tConnectionsQ {P urn:groove.net:ComponentResourceO URL6http://components.groove.net/Groove/
Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompone
nts_DLL&Version=0&Factory=ViewContainer]Q# urn:groove.net:ComponentConnectionsO urn:groo
ve.net:ConnectionR R urn:groove.net:ConnectionQ 
 ConnectionID0 Name2PropertySubPropertyLayout]urn:groove.net:Component Name0PropertyValueEd
lo  urn:groove.net:ComponentResource^ urn:groove.net:PropertyList k^ urn:groove.net:Component
Resource]  URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=EditNam  urn:gro
ove.net:PropertyList]   TextLimit250  __Version4,1,0,0P   2  y |    8
S urn:groove.net:Component NameChoicesLayout  urn:groove.net:ComponentResourceT urn:groove.ne
pertyList  T urn:groove.net:ComponentResourceS URL:http://components.groove.net/Groove/Compone
nts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL
&Version=0&Factory=MultiCellLayoutx  urn:groove.net:PropertyListS   __Version4,1,0,0
G_Layout Layout C   Layout  urn:groove.net:PropertyValue E   urn:groove.net:PropertyValue MULTI 
utionLabel(  ROW  CELL    CELL  LeftPad25RightPad  25  BottomPad10 TopPad10 PropertyValueVi
opertyValueEditControl2  urn:groove.net:ComponentResourceb urn:groove.net:PropertyList k b urn
:groove.net:ComponentResourcea  URL$http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=EditNam  urn:groove.net:PropertyLista  TextLimit250  __Version4,1,0,0eurn:groo
ve.net:Component Name,ValueSubstitutionLabel  urn:groove.net:ComponentResourcef urn:groove.ne
t:PropertyList of urn:groove.net:ComponentResourcee URL(http://components.groove.net/Groove/
Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompone
nts_DLL&Version=0&Factory=Static  urn:groove.net:PropertyListe LabeldDifferent column display
values can be substituted for values stored in the record.  For each stored valu
e, enter a different display value which should be displayed in the view.s  B
reakTypeWordBreak  FontStyleLabelText  __Version4,1,0,0kurn:groove.net:Component
PropertyDescriptionLabel  urn:groove.net:ComponentResourcel urn:groove.net:PropertyList ol ur
n:groove.net:ComponentResourcek  URL(http://components.groove.net/Groove/Components/Roo
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=Static   urn:groove.net:PropertyListk   BreakTypeWordBreak  FontStyleLab
 __Version4,1,0,0   C t     p urn:groove.net:Component NameCannotSortLabel  urn:groove
ropertyList o q urn:groove.net:ComponentResourcep URL(http://components.groove.net/Groove/Com
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=Static   urn:groove.net:PropertyListp  BreakTypeWordBreak  F
ontStyleLabelText  __Version4,1,0,0
u urn:groove.net:Component NameNoSortLayout  urn:groove.net:ComponentResourcev urn:groove.net
ertyList  v  urn:groove.net:ComponentResourceu URL:http://components.groove.net/Groove/Componen
ts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&
Version=0&Factory=MultiCellLayoutx  urn:groove.net:PropertyListu  __Version4,1,0,0  _
G_Layout Layout C   Layout  urn:groove.net:PropertyValue E   urn:groove.net:PropertyValue MULTI 
et:Component Name6EditStyleCodeControlSubForm  urn:groove.net:ComponentResource urn:groove.ne
:ComponentGroupo urn:groove.net:ComponentResource URL*http://components.groove.net/Groove/Co
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=SubFormcurn:groove.net:ComponentGroup HelpInfoProviderRTFHelpProvider
legate0EditStyleCodeControlCode DefaultView0EditStyleCodeControlViewm urn:groove.net:Co
mponent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component  urn:
.net:Component  urn:groove.net:Component  urn:groove.net:Component  urn:groove.n
ponent  urn:groove.net:Component&  urn:groove.net:Component,  urn:groove.net:Compo
ve.net:Component  Name>EditStyleCodeInnerViewContainer  urn:groove.net:ComponentResource# urn:
groove.net:ComponentConnections {  urn:groove.net:ComponentResource URL6http://components.gr
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
oveCommonComponents_DLL&Version=0&Factory=ViewContainer] # urn:groove.net:C
omponentConnections urn:groove.net:Connection    urn:groove.net:Connection 
 ConnectionID0 Name0EditStyleCodeInnerLayoutc
:   d    urn:groove.net:Component Name4EditStyleCodeControlLayout  urn:groove.net:Co
yList   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Components
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList  __Version4,1,0,0  _G_L
tC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  GMULTIROW

ContainerO ROW CELL CELL CELL CELL2 CELL HEIGHT44m CELL WIDTH140 TopPad10  Bott
CancelButton  urn:groove.net:Component
  Name0EditStyleCodeInnerLayoutc  urn:groove.net:ComponentRes
n:groove.net:PropertyList    urn:groove.net:ComponentResource  URL:http://component
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList 
_Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:P
tPad5  BottomPad5 LeftPad5( ROW CELL\ CELL HEIGHT18s COLSPAN2 EditStyleNameLabel( ROW
extView  urn:groove.net:Component Name"EditStyleNameEdit  urn:groove.net:ComponentRes
n:groove.net:PropertyListk   urn:groove.net:ComponentResource  URL$http://component
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=EditNam urn:groove.net:PropertyList   Text
50  __Version4,1,0,0         urn:groove.net:Component Name*EditStyleCodeTextView
ce  urn:groove.net:PropertyListk   urn:groove.net:ComponentResource  URL$http://c
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveTextTools_DLL&Version=0,3&Factory=TextView2ve urn:groove.net:PropertyList  Ign
oreLinks
BorderVisible
Truea TrueaReadOnly

False  __Version4,1,0,0 _G_DefaultFont DefaultFontC DefaultFont urn:groove.net:TextFont
urier New Flags
983040tt Color0 LinkURL Size
655360T   urn:groove.net:Component NameOKButton:  urn:groove.net:ComponentResource!
.net:PropertyListo!   urn:groove.net:ComponentResource  URL(http://component
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyList  Def
ault Truea StyleStandardButtonb LabelOKg:  __Version4,1,0,0&  urn:groove.net:Component Nam
</  urn:groove.net:ComponentResource'  urn:groove.net:PropertyListo'   urn:groo
ve.net:ComponentResource&  URL(http://components.groove.net/Groove/Components/R
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=Buttone urn:groove.net:PropertyList&  Cancel Truea StyleStandardButtonb Labe
Cancelo  __Version4,1,0,0;  urn:groove.net:Component NameRTFHelpProvider  urn:groove.net
ntResource<  urn:groove.net:PropertyList <   urn:groove.net:ComponentResource;  URL
:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=RTFHelpProvider   urn:groo
ve.net:PropertyList;
ContextHelpID  ContextHelpDisplayType0
122613p  __Version4,1,0,0   urn:groove.net:ComponentB  NameOKButton:  urn:groove.ne
Resource  urn:groove.net:PropertyList$o   urn:groove.net:ComponentResource  URL(
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCo
mponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone$ urn:groove.net:Propert
yList  DefaultTruea StyleStandardButtonb LabelOKg:  __Version4,1,0,0<    h      .
olCode  urn:groove.net:ComponentResource- # urn:groove.net:ComponentConnections0  SC
RIPT7  SCRIPT8  SCRIPTINTERFACE9  SCRIPT:  urn:groove.net:PropertyList
ve.net:ComponentResource,  URL2http://components.groove.net/Groove/Components/R
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=ScriptHost20 # urn:groove.net:ComponentConnections,  urn:groove.
net:Connection1  urn:groove.net:Connection2  urn:groove.net:Connection3  ur
n:groove.net:Connection4  urn:groove.net:Connection5  urn:groove.net:Con
nection6 y1  urn:groove.net:Connection0  Name"EditStyleNameEdit
 ConnectionID0 2  urn:groove.net:Connection0  Name*EditStyleCodeTextView
 ConnectionID1i3  urn:groove.net:Connection0  NameOKButton:
 ConnectionID2q4  urn:groove.net:Connection0  NameCancelButton</
 ConnectionID3 5  urn:groove.net:Connection0  Name$EditStyleNameLabel</
 ConnectionID404u6  urn:groove.net:Connection0  NameCancelButton</
 ConnectionID404q7  SCRIPT,  SRCDhttp://components.groove.net/Groove/Components/R
Package=net.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_
GSL&Version=5&Factory=Openona8  SCRIPT,  SRC6http://components.groove.net/Groove/Comp
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveRichTextCommandBa
rHelper3_GSL&Version=3&Factory=Open 9  SCRIPTINTERFACE,  LIBIDL{366DFD51-2C22-438d-9
135-5093E3102447}ox IIDL{4C801D78-751D-4f1c-B500-EB14F6C0FDB1}
function InitializeDialo
g(i_pIDesigner, i_pIStyle, i_pIUIDelegate)
{
g_CallbackCode =
i_pIDesigner;
g_UIDelegate = i
_pIUIDelegate;
InitializeCompon
entStrings();
InitStyleEditor(
i_pIStyle);
}
function GetUpdatedStyle
()
{
return g_Instanc
e;
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
:  SCRIPT, T w
function InitializeCompo
nentStrings()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
EditStyleNameLab
el.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_STY_STYLE_NAM
E));
OKButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
CancelButton.Lab
el = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
}
/* #####################
###########
### GLOBAL VARIAB
LES ###
#####################
########### */
var g_Instance = GrooveS
criptFunctions.CreateNewObject("");
var g_CallbackCode;
var g_UIDelegate;
/* #####################
#########
### OBJECT CONTRO
LS ###
#####################
######### */
function OKButton_OnComm
and(i_UICommand)
{
try
{
var Styl
eName = EditStyleNameEdit.Text;
if (Styl
eName = = "")
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
g_UIDelegate.DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS
_GRP_EDT_STY_REQ_NAME), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_
STY_REQ_NAME_TITLE));
return;
}
else
{
if (g_Instance.IGrooveFormsToolDesignObject.Name != StyleName)
{
// Remove the '.css' extension if it exists.
if (StyleName.substring(StyleName.length-4, StyleName.length) == ".css")
StyleName = StyleName.substring(0, StyleName.length-4);
g_Instance.Rename(StyleName);
}
g_Instance.StyleCode = EditStyleCodeTextView.TextContent.PlainText;

DismissWindow(GrooveWindowResult_OK);
}
}
catch (error)
{
g_UIDele
gate.DisplayError(error);
}
}
function CancelButton_On
Command(i_UICommand)
{
DismissWindow(Gr
ooveWindowResult_Cancel);
}
/* #####################
###########
### PRIVATE FUNCT
IONS ###
#####################
########### */
function DismissWindow(i
_Result)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(i_R
esult);
Window.Destroy(i
_Result);
}
/* #####################
###########
### PUBLIC FUNCTI
ONS ###
#####################
########### */
function GetHelpProvider
()
{
try
{
var RTFH
elpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCo
mponentByName("RTFHelpProvider");
return R
TFHelpProvider;
}
catch(error)
{
}
finally
{
RTFHelpP
rovider = null;
delete R
TFHelpProvider;
CollectG
arbage();
}
}
function InitStyleEditor
(i_Instance)
{
EditStyleNameEdi
t.Text = i_Instance.IGrooveFormsToolDesignObject.Name;
EditStyleCodeTex
tView.TextContent.PlainText = i_Instance.StyleCode;
g_Instance = i_I
nstance;
}
function ThrowError(i_De
scription)
{
var objError = n
ew Error(-213546871, i_Description);
throw objError;
}
q urn:groove.net:PropertyList
,  EnforceInterfaces1  __Version4,1,0,0@  urn:groove.net:Component Name6AddObj
olSubForm  urn:groove.net:ComponentResourceA  urn:groove.net:ComponentGroupB 
oA   urn:groove.net:ComponentResource@  URL*http://components.groove.net/Gro
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=SubFormB  urn:groove.net:ComponentGroup@  HelpInfoPro
viderRTFHelpProviderDelegate0
 AddObjectCodeControlCodet DefaultView0AddObjectCodeContro
lViewe urn:groove.net:ComponentC  urn:groove.net:ComponentJ  urn:groove.net:Compo
n:groove.net:Component\  urn:groove.net:Componentn  urn:groove.net:Componentt  urn:
.net:Component  urn:groove.net:Component  urn:groove.net:Component  urn:groove.n
ponent  urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Compo
n:groove.net:Component    C  urn:groove.net:ComponentB  Name0AddObjectCodeCo
oove.net:ComponentResourceD # urn:groove.net:ComponentConnectionsH  urn:groove
.net:PropertyList{D   urn:groove.net:ComponentResourceC  URL6http://component
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]H # urn:groove.net:C
omponentConnectionsC  urn:groove.net:ConnectionI  I  urn:groove.net:ConnectionH

 ConnectionID0 Name4AddObjectCodeControlLayout  urn:groove.net:PropertyListC  PreferredH
eight350 PreferredWidth600  __Version4,1,0,0J  urn:groove.net:ComponentB  Name
ontrolLayout  urn:groove.net:ComponentResourceK  urn:groove.net:PropertyList K   urn:groo
ve.net:ComponentResourceJ  URL:http://components.groove.net/Groove/Components/R
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=MultiCellLayoutx urn:groove.net:PropertyListJ   __Version4,1,0,0
tC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  8MULTIROW
  ROW ROW
 CELL CELL
2 CELL HEIGHT44   CELL WIDTH140 TopPad10  BottomPad10 NAMEOKButtonCellOKButton1
 
 CELL WIDTH10q CELL WIDTH205 TopPad10  BottomPad10
 CancelButton1
 CELL WIDTH10X  urn:groove.net:ComponentB  Name>AddObjectCodeInnerViewContainer
ResourceY # urn:groove.net:ComponentConnectionsZ {Y   urn:groove.net:C
omponentResourceX  URL6http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=ViewContainer]Z # urn:groove.net:ComponentConnectionsX  urn:groove.net:Conn
ection[  [  urn:groove.net:ConnectionZ 
 ConnectionID0 Name0AddObjectCodeInnerLayouti :     \  urn:groove.net:ComponentB
u_ti  urn:groove.net:ComponentResource_
  urn:groove.net:ComponentResource\  urn:groove.net:PropertyList
 URL:http://components.groove.net/Groove/Comp
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
Durn:groove.net:PropertyValue
LL&Version=0&Factory=HTMLTabBleurn:groove.net:PropertyValue
urn:groove.net:PropertyList\ Layoutx  __Version4,1,0,0  TABLE U_G_Layout  TABLE CELLPADDING
 LayoutC Layout 5 TR TR T
ObjectButtonCell BrowseObjectButton TD  TD WIDTH34e NAME,ModifyObjectButtonCell ModifyObjectB
tonCell  DeleteObjectButton% TR TDF TD COLSPAN5 AddedObjectsListViewn  urn:groove.net:Compo
m  urn:groove.net:ComponentResourceo  urn:groove.net:PropertyListoo   urn:groo
ve.net:ComponentResourcen  URL(http://components.groove.net/Groove/Components/R
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=Static urn:groove.net:PropertyListn 
 VAlignment
Centere  BreakTypeWordBreak  FontStyleLabelText  __Version4,1,0,0t  urn:groove
.net:ComponentB  NameAddObjectButton  urn:groove.net:ComponentResourceu  urn:groove.net:Pro
pertyListou   urn:groove.net:ComponentResourcet  URL(http://components.groove
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=ButtoneU urn:groove.net:PropertyListt   La
bel&New...Mnemonic

Alt+N
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg  _
_Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageIndex10 ImageHeight16 u l      urn:groove.net:ComponentB  Name$BrowseO
ource  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource  URL(http://c
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=Buttone] urn:groove.net:PropertyList 
 Label&Browse.../> Mnemonic
Alt+B
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg  _
_Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageIndex20  ImageHeight16  urn:groove.net:ComponentB  Name$ModifyO
  urn:groove.net:ComponentResource  urn:groove.net:PropertyListo   urn:groove.net:Comp
Resource  URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groov
e.net:PropertyList   __Version4,1,0,0
 ImageWidth16 Style$StandardIconButtonou
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex21  urn:groove.net:ComponentB  Name$DeleteObjectButton">  urn:groov
ource  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource  URL(http://c
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyList 
_Version4,1,0,0
 ImageWidth16 Style$StandardIconButtonou
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex16l D H D     urn:groove.net:ComponentB  Name(AddedObjectsListViewW>
esource  urn:groove.net:PropertyList s   urn:groove.net:ComponentResource  URL,
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCo
mponents.GrooveCommonComponents_DLL&Version=0&Factory=ListView5+  urn:groove.net:Prop
ertyList  MSCCWorkaroundColor#FFFFFF
 CheckBoxes
FColumnHeaders
alse  __Version4,1,0,0
False SingleSelectionTruea ColumnsResizable
False
 _G_Columns Columns!D! Columns  urn:groove.net:PropertyValue"R" urn:groove.net:PropertyValue!
:Column#e# urn:groove.net:Column" NameTabNameAutoSize  Truea  urn:groove.net:ComponentB
:groove.net:ComponentResource  urn:groove.net:PropertyList%o   urn:groove.net:C
omponentResource  URL(http://components.groove.net/Groove/Components/Root.osd?Package=
net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Bu
ttone% urn:groove.net:PropertyList  Cancel Truea StyleStandardButtonb Label
Cancelo  __Version4,1,0,0  urn:groove.net:Component Name8EditScriptCodeControlSubForm 
ove.net:ComponentResource  urn:groove.net:ComponentGroup o   urn:groove.net:C
omponentResource  URL*http://components.groove.net/Groove/Components/Root.osd?Package=
net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Su
bForm  urn:groove.net:ComponentGroup  HelpInfoProviderRTFHelpProviderDelegate2  EditSc
riptCodeControlCode DefaultView2EditScriptCodeControlView urn:groove.net:Component  ur
n:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component  urn:
.net:Component  urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component!
 urn:groove.net:Component0
 urn:groove.net:Component4
 urn:groove.net:ComponentB
 urn:groove.net:ComponentJ
 urn:groove.net:ComponentR
 urn:groove.net:ComponentX
 urn:groove.net:Component^
 urn:groove.net:Componentd
 urn:groove.net:Componentj
 urn:groove.net:Component
  0   V     urn:groove.net:Component  Name2EditScriptCodeControlView  urn:groove.n
# urn:groove.net:ComponentConnections  urn:groove.net:PropertyList'{   urn:groo
ve.net:ComponentResource  URL6http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=ViewContainer] # urn:groove.net:ComponentConnections  urn:groove.net:Conn
ection    urn:groove.net:Connection 
 ConnectionID0 Name6EditScriptCodeControlLayout '  urn:groove.net:PropertyList  PreferredH
eight550 PreferredWidth750  __Version4,1,0,0  urn:groove.net:Component  Name
ControlLayout  urn:groove.net:ComponentResource  urn:groove.net:PropertyList(    urn
ve.net:ComponentResource  URL:http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=MultiCellLayoutx( urn:groove.net:PropertyList   __Version4,1,0,0  _G_L
roove.net:PropertyValue*E* urn:groove.net:PropertyValue) MULTIROW+  G+MULTIROW*
  BORDER, ROW- ROW
d5 LeftPad5(- ROW+ CELL.A. CELL-  EditScriptCodeInnerViewContainer\/ ROW+ CELL0 CELL1 CELL2 C
pStringButton21 CELL/ HEIGHT34eW2 CELL/ WIDTH140  BottomPad10OKButton1
 3 CELL/ WIDTH10[
 CancelButton  urn:groove.net:Component  Name@EditScriptCodeInnerViewContaine
ComponentResource # urn:groove.net:ComponentConnections {   urn:groove.net:C
omponentResource  URL6http://components.groove.net/Groove/Components/Root.osd?Package=
net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Vi
ewContainer] # urn:groove.net:ComponentConnections  urn:groove.net:Connection  
n:groove.net:Connection 
 ConnectionID0 Name2EditScriptCodeInnerLayout
>  '     urn:groove.net:Component  Name2EditScriptCodeInnerLayout  urn:groove.n
n:groove.net:PropertyList5    urn:groove.net:ComponentResource  URL:http://component
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=HTMLTableLayoutx5 urn:groove.net:PropertyList 
_Version4,1,0,0  _G_Layout Layout6C6 Layout5 urn:groove.net:PropertyValue7B7 urn:groove.net:P
ue6 TABLE8>8 TABLE7 TR9 TR= TR@;9 TR8 TD: TD; TD<: TD9 WIDTH260 HEIGHT22lRightPad  10 NAME.Edi
ageLabel-< TD9 ROWSPAN20= TR8 TD> TD?> TD= HEIGHT27eRightPad  10  BottomPad5 NAME,EditScriptNa
? TD=  BottomPad5 EditScriptLanguageComboBox%@ TR8 TDAxA TD@ COLSPAN3 TopPad5  BottomPad10
.net:Component  NameHelpButton   urn:groove.net:ComponentResource  urn:groove
.net:PropertyListBo   urn:groove.net:ComponentResource  URL(http://components.groove
.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveC
ommonComponents_DLL&Version=0&Factory=ButtoneB urn:groove.net:PropertyList  OverrideLab
elAlignment
Right Label4Help for writing script...A StyleLinkButton  __Version4,1,0,0
 urn:groove.net:Component  Name&EditScriptNameLabel  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListCo
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticC urn:groove.net:
PropertyList

 VAlignment
Centere Label
Name:  FontStyleLabelText  __Version4,1,0,0
 urn:groove.net:Component  Name$EditScriptNameEdit   urn:groove.net:Comp
esource
 urn:groove.net:PropertyListDk
  urn:groove.net:ComponentResource
 URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=EditNamD urn:groove.ne
t:PropertyList
  TextLimit250  __Version4,1,0,0L    \    
 urn:groove.net:Component  Name.EditScriptLanguageLabel  urn:groove.net:ComponentResour
 urn:groove.net:PropertyListEo
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticE urn:groove.net:
PropertyList

 VAlignment
Centere LabelLanguage:  FontStyleLabelText  __Version4,1,0,0
 urn:groove.net:Component  Name4EditScriptLanguageComboBoxe  urn:groove.net:ComponentRe
urce
 urn:groove.net:PropertyListFs
  urn:groove.net:ComponentResource
 URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
 F urn:groove.net:PropertyList
 InitialValuesF
InitialValuesG
 __Version Jurn:groove.net:PropertyValueH
G 4,1,0,0 _G_InitialValues lH urn:groove.net:PropertyValueG urn:groove.net:
I urn:groove.net:ItemJOI urn:groove.net:ItemH NameJavaScript.nKJ urn:groove.net:ItemH NameVBS
 urn:groove.net:Component  Name.EditScriptFunctionLabel  urn:groove.net:ComponentResour
 urn:groove.net:PropertyListKo
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticK urn:groove.net:
PropertyList

 VAlignment
Centere LabelFunction:  FontStyleLabelText  __Version4,1,0,00
 urn:groove.net:Component  Name6EditScriptCodeViewContainer  urn:groove.net:ComponentRe
urce1
# urn:groove.net:ComponentConnections2
{1
  urn:groove.net:ComponentResource0
 URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]2
# urn:groove.net:ComponentConnections0
 urn:groove.net:Connection3
 3
 urn:groove.net:Connection2

 ConnectionID0 Name(EditScriptCodeLayout</ *   |    !
 urn:groove.net:Component  Name4EditScriptFunctionComboBox  urn:groove.net:ComponentRes
rce"
 urn:groove.net:PropertyListLs"
  urn:groove.net:ComponentResource!
 URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
 L urn:groove.net:PropertyList!
 InitialValuesL InitialValuesM
 __Version Jurn:groove.net:PropertyValueN
M 4,1,0,0 _G_InitialValues LN urn:groove.net:PropertyValueM
 urn:groove.net:ItemO urn:groove.net:ItemP urn:groove.net:ItemQ urn:groove.net:ItemR urn:groo
:ItemS urn:groove.net:ItemT urn:groove.net:ItemU urn:groove.net:ItemV urn:groove.net:ItemW ur
e.net:ItemX_O urn:groove.net:ItemN Name$OnBeforeInitializeot[P urn:groove.net:ItemN Name"OnAf
tialize[Q urn:groove.net:ItemN Name"OnBeforeTerminate[R urn:groove.net:ItemN Name OnAfterTerm
SS urn:groove.net:ItemN NameOnBeforePrintST urn:groove.net:ItemN NameOnAfterPrint_U urn:groov
$OnBeforeSubmitDatato[V urn:groove.net:ItemN Name"OnAfterSubmitDatakW urn:groove.net:ItemN Na
BeforePropagateUpdates gX urn:groove.net:ItemN Name.OnAfterPropagateUpdates4
 urn:groove.net:Component  Name(EditScriptCodeLayout</  urn:groove.net:ComponentResourc
 urn:groove.net:PropertyListY 5
  urn:groove.net:ComponentResource4
 URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutxY urn:
groove.net:PropertyList4
  __Version4,1,0,0  _G_Layout LayoutZCZ LayoutY urn:groove.net:PropertyValue[E[
ueZ MULTIROW\
 P\MULTIROW[
  ROW] ROW_ ROWa ROWc(] ROW\ CELL^U^ CELL] HEIGHT15RightPad  3
 HelpButton(_ ROW\ CELL`` CELL_ HEIGHT37  BottomPad5 NAME:EditSystemScriptHeadLabelCel
Label(a ROW\ CELLb7b CELLa EditScriptCodeTextView(c ROW\ CELLdd CELLc HEIGHT22l TopPad5 NAME
ScriptTailLabel    B
 urn:groove.net:Component  Name2EditSystemScriptHeadLabel  urn:groove.net:ComponentReso
ceE
 urn:groove.net:PropertyListeoE
  urn:groove.net:ComponentResourceB
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static e urn:groove.net:
PropertyListB
 Label  __Version4,1,0,0 _G_Font Fontf<f Fonte urn:groove.net:FontDescgTg urn:groove.net:Fon
abelTextJ
 urn:groove.net:Component  Name,EditScriptCodeTextView  urn:groove.net:ComponentResourc
 urn:groove.net:PropertyListhkK
  urn:groove.net:ComponentResourceJ
 URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveTextTools_DLL&Version=0,3&Factory=TextView2veh urn:groove.net:
PropertyListJ
 BorderVisible
IgnoreLinksTrTureuaeaReadOnly

False  __Version4,1,0,0 _G_DefaultFont DefaultFontiCi DefaultFonth urn:groove.net:TextFontj
t:TextFonti FaceCourier New Flags
983040tt Color0 LinkURL Size
655360TX
 urn:groove.net:Component  Name0CreateLookupStringButton  urn:groove.net:ComponentResou
eY
 urn:groove.net:PropertyListnoY
  urn:groove.net:ComponentResourceX
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttonen urn:groove.net
:PropertyListX
 AutoSize

False Label(Create Lookup String
 StyleStandardButtonb  __Version4,1,0,0 ^
 urn:groove.net:Component  NameOKButton:  urn:groove.net:ComponentResource_
 urn:groove.net:PropertyListoo_
  urn:groove.net:ComponentResource^
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttoneo urn:groove.net
:PropertyList^
 DefaultTruea StyleStandardButtonb LabelOKg:  __Version4,1,0,04  
    I d
 urn:groove.net:Component  NameCancelButton</  urn:groove.net:ComponentResourcee
 urn:groove.net:PropertyListpoe
  urn:groove.net:ComponentResourced
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttonep urn:groove.net
:PropertyListd
 CancelTruea StyleStandardButtonb Label
Cancelo  __Version4,1,0,0
 urn:groove.net:Component  NameRTFHelpProvider  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListr 
  urn:groove.net:ComponentResource
 URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=RTFHelpProvider r  urn:gr
oove.net:PropertyList
 ContextHelpID
ContextHelpDisplayType0
164026t  __Version4,1,0,0
 urn:groove.net:Component Name2FormsSearchControlSubForm  urn:groove.net:ComponentResource
 urn:groove.net:ComponentGroup
o
  urn:groove.net:ComponentResource
 URL*http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=SubForm
 urn:groove.net:ComponentGroup
 HelpInfoProviderRTFHelpProviderDelegate,  FormsSearchControlCodea DefaultView,FormsSearchCo
ntrolViewl urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 Name,FormsSearchControlViewl  urn:groove.net:ComponentResource
# urn:groove.net:ComponentConnections
 urn:groove.net:PropertyLists{
  urn:groove.net:ComponentResource
 URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]
# urn:groove.net:ComponentConnections
 urn:groove.net:Connection
 
 urn:groove.net:Connection

 ConnectionID0 Name0FormsSearchControlLayout s urn:groove.net:PropertyList
 PreferredHeight550 PreferredWidth650  __Version4,1,0,0t   6 p    .j
 urn:groove.net:Component  Name2EditScriptCodeControlCode  urn:groove.net:ComponentReso
cek
# urn:groove.net:ComponentConnectionsn
 SCRIPT
 SCRIPT
 SCRIPTINTERFACE
 SCRIPT
 urn:groove.net:PropertyListqwk
  urn:groove.net:ComponentResourcej
 URL2http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ScriptHost2}n
# urn:groove.net:ComponentConnectionsj
 urn:groove.net:Connectiono
 urn:groove.net:Connectionp
 urn:groove.net:Connectionq
 urn:groove.net:Connectionr
 urn:groove.net:Connections
 urn:groove.net:Connectiont
 urn:groove.net:Connectionu
 urn:groove.net:Connectionv
 urn:groove.net:Connectionw
 urn:groove.net:Connectionx
 urn:groove.net:Connectiony
 urn:groove.net:Connectionz
 urn:groove.net:Connection{
 urn:groove.net:Connection|
 urn:groove.net:Connection}
 urn:groove.net:Connection~
 urn:groove.net:Connection
 o
 urn:groove.net:Connectionn
 Name2EditScriptCodeInnerLayout
 ConnectionID0}p
 urn:groove.net:Connectionn
 Name$EditScriptNameEdit
 ConnectionID1 q
 urn:groove.net:Connectionn
 Name4EditScriptLanguageComboBoxe
 ConnectionID2 r
 urn:groove.net:Connectionn
 Name4EditScriptFunctionComboBox
 ConnectionID3 s
 urn:groove.net:Connectionn
 Name6EditScriptCodeViewContainer
 ConnectionID4mt
 urn:groove.net:Connectionn
 NameHelpButton
 ConnectionID5 u
 urn:groove.net:Connectionn
 Name(EditScriptCodeLayout</
 ConnectionID6 v
 urn:groove.net:Connectionn
 Name2EditSystemScriptHeadLabel
 ConnectionID7 w
 urn:groove.net:Connectionn
 Name,EditScriptCodeTextView
 ConnectionID8 x
 urn:groove.net:Connectionn
 Name2EditSystemScriptTailLabel
 ConnectionID9 y
 urn:groove.net:Connectionn
 Name0CreateLookupStringButton
 ConnectionID10mz
 urn:groove.net:Connectionn
 NameOKButton:
 ConnectionID11u{
 urn:groove.net:Connectionn
 NameCancelButton</
 ConnectionID12 |
 urn:groove.net:Connectionn
 Name@EditScriptCodeInnerViewContainer
 ConnectionID13 }
 urn:groove.net:Connectionn
 Name&EditScriptNameLabel
 ConnectionID404 ~
 urn:groove.net:Connectionn
 Name.EditScriptLanguageLabel
 ConnectionID404 
 urn:groove.net:Connectionn
 Name.EditScriptFunctionLabel
 ConnectionID404q
 SCRIPTj
 SRCDhttp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Version=5&Factory=Op
enona
 SCRIPTj
 SRC6http://components.groove.net/Groove/Components/R oot.osd?Package=net.groove.Groove.T
oolComponents.GrooveRichTextCommandBarHelper3_GSL&Version=3&Factory=Open
 SCRIPTINTERFACEj
 LIBIDL{366DFD51-2C22-438d-9135-5093E3102447}ox IIDL{44CC61C5-8050-4a07-999A-7C3E3D6034
E6}s
function InitializeDialo
g(i_pIDesigner, i_pIScript, i_pIUIDelegate, i_pIWindow)
{
g_CallbackCode =
i_pIDesigner;
g_UIDelegate = i
_pIUIDelegate;
g_Window = i_pIW
indow;
InitializeCompon
entStrings();
InitScriptEditor
(i_pIScript);
}
function GetUpdatedScrip
t()
{
return g_Instanc
e;
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
+
 SCRIPTj
b+
/* #####################
###########
### GLOBAL VARIAB
LES ###
#####################
########### */
var HID_Groove_Forms3xAb
outMacros = 148291;
var HID_Groove_Forms3xAb
outScripts = 164026;
var g_Instance = GrooveS
criptFunctions.CreateNewObject("");
var g_SystemScript = "";
var g_BlockName = "";
var g_CallbackCode;
var g_UIDelegate;
var g_Window;
function InitializeCompo
nentStrings()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
HelpButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_SCR_HELP);
EditScriptNameLa
bel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_SCR_NAME));
EditScriptLangua
geLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_SCR_LANG
UAGE));
EditScriptFuncti
onLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_SCR_FUNC
TION));
CreateLookupStri
ngButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_SCR_CRE
ATE_LOOKUP);
OKButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
CancelButton.Lab
el = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
}
/* #####################
#########
### OBJECT CONTRO
LS ###
#####################
######### */
function HelpButton_OnCo
mmand(i_UICommand)
{
App.IGrooveAppli
cation2.LaunchHelpFile(HID_Groove_Forms3xAboutScripts);
}
function EditScriptFunct
ionComboBox_OnSelectionChange(i_Name)
{
// Save the curr
ent script block to the global script.
SaveScriptFuncti
onBlock(g_BlockName);
// Load the new
script block from the global script.
var BlockName =
EditScriptFunctionComboBox.GetSelectionText();
LoadScriptFuncti
onBlock(BlockName);
// Save the scri
pt block name for saving later.
g_BlockName = Bl
ockName;
}
function OKButton_OnComm
and(i_UICommand)
{
try
{
var Scri
ptName = EditScriptNameEdit.Text;
if (Scri
ptName == "")
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
g_UIDelegate.DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS
_GRP_EDT_SCR_MUST_ENTER_NAME), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_G
RP_EDT_SCR_MUST_ENTER_NAME_TITLE));
return;
}
else
{
// Get the language of the script.
var ScriptLanguage = EditScriptLanguageComboBox.GetSelectionText();
g_Instance.Language = ScriptLanguage;

// Get the script name and repair it if extension is missing.


if (ScriptName.lastIndexOf(".") == -1)
{
if (ScriptLanguage == "JavaScript")
ScriptName += ".js";
else if (ScriptLanguage == "VBScript")
ScriptName += ".vbs";
}
 //
Get the script code depending on the script type.
var ScriptCode = "";
if (IsSystemScript(ScriptName))
{
SaveScriptFunctionBlock(g_BlockName);
ScriptCode = g_SystemScript;
}
else
ScriptCode = EditScriptCodeTextView.TextContent.PlainText;

// Remove script tags from script code if they are included.


ScriptCode = ScriptCode.replace(/<\/?script[^>]*>/gi, "");
ScriptCode = ScriptCode.replace(/\x0D/gi, "\n");

if (g_Instance.IGrooveFormsToolDesignObject.Name != ScriptName)
g_Instance.Rename(ScriptName);
g_Instance.ScriptCode = ScriptCode;

DismissWindow(GrooveWindowResult_OK);
}
}
catch (error)
{
g_UIDele
gate.DisplayError(error);
}
}
function CancelButton_On
Command(i_UICommand)
{
DismissWindow(Gr
ooveWindowResult_Cancel);
}
function CreateLookupStr
ingButton_OnCommand(i_UICommand)
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var Language = E
ditScriptLanguageComboBox.GetSelectionText();
var Window = g_U
IDelegate.IGrooveFormsToolUIDelegatePrivate.CreateWindowForSubFormByNamePrivate(
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_EDT_SCR_CREATE_LOOKUP), "Loo
kupStringGeneratorSubForm", g_Window);
var LookupHost =
Window.OpenDelegateComponent();
LookupHost.IGroo
veFormsToolLookupStringGeneratorSubFormPrivate.InitializeDialog(g_CallbackCode,
g_UIDelegate, Language, GrooveFormsLookupContext_FormScript, g_Instance.IGrooveF
ormsToolDesignObject);
var Result = Win
dow.DoModal();
Window.Destroy()
;
}
/* #####################
###########
### PRIVATE FUNCT
IONS ###
#####################
########### */
function InitUI(i_Name)
{
// Check to see
if it is the system script.
var blnHideFunct
ions = true;
if (IsSystemScri
pt(i_Name))
blnHideF
unctions = false;
// Set the page
title depending on type of script.
if (blnHideFunct
ions)
EditScri
ptLanguageComboBox.Enabled = true;
else
EditScri
ptLanguageComboBox.Enabled = false;
// Script name l
abel.
AddRemoveCellCon
tents("EditScriptNameLabel", EditScriptCodeInnerLayout, !blnHideFunctions);
// Script name e
dit control.
AddRemoveCellCon
tents("EditScriptNameEdit", EditScriptCodeInnerLayout, !blnHideFunctions);
// Function sele
ction label.
AddRemoveCellCon
tentsCustom("EditScriptFunctionLabel", "EditScriptNameLabelCell", EditScriptCode
InnerLayout, blnHideFunctions);
// Function sele
ction combo box.
AddRemoveCellCon
tentsCustom("EditScriptFunctionComboBox", "EditScriptNameEditCell", EditScriptCo
deInnerLayout, blnHideFunctions);
// System script
function heading.
AddRemoveMultiCe
llContents("EditSystemScriptHeadLabel", EditScriptCodeLayout, blnHideFunctions);
// System script
function tail.
ShowHideMultiCel
lContents("EditSystemScriptTailLabel", EditScriptCodeLayout, 32, blnHideFunction
s);
// Set the focus
to the appropriate control.
if (blnHideFunct
ions)
EditScri
ptCodeInnerViewContainer.SetFocus("EditScriptNameLabel");
else
EditScri
ptCodeInnerViewContainer.SetFocus("EditScriptFunctionComboBox");
}
function AddRemoveCellCo
ntentsCustom(i_ObjectName, i_CellName, i_Layout, i_Remove)
{
var CellSizeObj
= GrooveScriptFunctions.CreateNewObject("Groove.HTMLTableLayoutControlInfo");
var CellObj = Ce
llSizeObj.Cell();
CellObj.Name = i
_CellName;
if (i_Remove &&
i_Layout.IsControlInLayout(i_ObjectName))
i_Layout
.RemoveCellContents(CellObj);
if (!i_Remove &&
!i_Layout.IsControlInLayout(i_ObjectName))
i_Layout
.AddControlByName(i_ObjectName, Cell (Obj);
}
function SaveScriptFunct
ionBlock(i_Name)
{
var strScript =
EditScriptCodeTextView.TextContent.PlainText;
var strBegin = "
// BEGIN " + i_Name + "\n";
var intBegin = g
_SystemScript.indexOf(strBegin);
var strEnd = "//
END " + i_Name;
var intEnd = g_S
ystemScript.indexOf(strEnd);
// Get the scrip
t before and after the section being replaced.
var strHead = g_
SystemScript.substring(0, intBegin);
var strTail = g_
SystemScript.substring(intEnd + strEnd.length, g_SystemScript.length);
// Insert the ne
w script into the global script.
g_SystemScript
= strHead + strBegin + strScript + strEnd + strTail;
}
function LoadScriptFunct
ionBlock(i_Name)
{
var strBegin = "
// BEGIN " + i_Name + "\n";
var intBegin = g
_SystemScript.indexOf(strBegin);
var strEnd = "//
END " + i_Name;
var intEnd = g_S
ystemScript.indexOf(strEnd);
// Add the propa
gate updates script blocks if they don't exist.
if (i_Name.index
Of("PropagateUpdates") >= 0 && intBegin == -1 && intEnd == -1)
{
g_System
Script += "function OnBeforePropagateUpdates()\n{\n// BEGIN OnBeforePropagateUpd
ates\n\n// END OnBeforePropagateUpdates\n}\n\n";
g_System
Script += "function OnAfterPropagateUpdates(i_bCallback)\n{\n// BEGIN OnAfterPro
pagateUpdates\n\n// END OnAfterPropagateUpdates\n}\n\n";
intBegin
= g_SystemScript.indexOf(strBegin);
intEnd =
g_SystemScript.indexOf(strEnd);
}
// Set the scrip
t callout head and tail.
if (i_Name == "O
nAfterPropagateUpdates")
EditSyst
emScriptHeadLabel.SetText("function " + i_Name + "(i_bSuccess)\n{");
else
EditSyst
emScriptHeadLabel.SetText("function " + i_Name + "()\n{");
EditSystemScript
TailLabel.SetText("}");
// Get the scrip
t block and insert it into the text view.
EditScriptCodeTe
xtView.TextContent.PlainText = g_SystemScript.substring(intBegin + strBegin.leng
th, intEnd);
}
function DismissWindow(i
_Result)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(i_R
esult);
Window.Destroy(i
_Result);
}
/* #####################
###########
### PUBLIC FUNCTI
ONS ###
#####################
########### */
function GetHelpProvider
()
{
try
{
var RTFH
elpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCo
mponentByName("RTFHelpProvider");
return R
TFHelpProvider;
}
catch(error)
{
}
finally
{
RTFHelpP
rovider = null;
delete R
TFHelpProvider;
CollectG
arbage();
}
}
function InitScriptEdito
r(i_Instance)
{
InitUI(i_Instanc
e.IGrooveFormsToolDesignObject.Name);
EditScriptNameEd
it.Text = i_Instance.IGrooveFormsToolDesignObject.Name;
EditScriptLangua
geComboBox.SetSelectionByText(i_Instance.Language);
g_Instance = i_I
nstance;
// Always displa
y the global script block by default.
if (IsSystemScri
pt(g_Instance.IGrooveFormsToolDesignObject.Name))
{
g_System
Script = i_Instance.ScriptCode;
EditScri
ptFunctionComboBox.SetSelectionByIndex(0);
g_BlockN
ame = EditScriptFunctionComboBox.GetSelectionText();
LoadScri
ptFunctionBlock(EditScriptFunctionComboBox.GetSelectionText());
}
else
EditScri
ptCodeTextView.TextContent.PlainText = g_Instance.ScriptCode;
}
function ThrowError(i_De
scription)
{
var objError = n
ew Error(-213546871, i_Description);
throw objError;
}
qq urn:groove.net:PropertyLi
stj
 EnforceInterfaces
urn:groove.net:Component'
1  __Version4,1,0,0  9
#URL2
Name2
SCRIPTW
SCRIPTINTERFACEX
SCRIPTY
urn:groove.net:PropertyList
urn:groove.net:ComponentConnections=
urn:groove.net:ComponentResource9
htVtipe:w/S/ecloemcptoinoennCtrsi.tgeroioavCeo.wdn:eet/urn:groove.net:ComponentResource:
Groove/Components/Root.osd?Package=net.groove.Groov
q#eName
.urn:groove.net:ComponentConnections9
urn:groove.net:Connection>
urn:groove.net:Connection?
urn:groove.net:Connection@
urn:groove.net:ConnectionA
urn:groove.net:ConnectionB
urn:groove.net:ConnectionC
urn:groove.net:ConnectionD
urn:groove.net:ConnectionE
urn:groove.net:ConnectionF
urn:groove.net:ConnectionG
urn:groove.net:ConnectionH
urn:groove.net:ConnectionI
urn:groove.net:ConnectionJ
urn:groove.net:ConnectionK
urn:groove.net:ConnectionL
urn:groove.net:ConnectionM
urn:groove.net:ConnectionN
urn:groove.net:ConnectionO
urn:groove.net:ConnectionP
urn:groove.net:ConnectionQ
urn:groove.net:ConnectionR
urn:groove.net:ConnectionS
urn:groove.net:ConnectionT
urn:groove.net:ConnectionU
>urn:groove.net:ConnectionV
urn:groove.net:Connection=
TooFloCromspLoinsetnVtise.wGrooveCommonComponents_DLL&Version=0&Factory=ScriptHost2 =
 Name
ConnectionID
urn:groove.net:Connection=
AndRadioB0ut?tonl
 Name
ConnectionID
urn:groove.net:Connection=
OrRadioBu1tqt@on
 Name
ConnectionID
urn:groove.net:Connection=
FieldsCom2buoAboxt
 Name"
ConnectionID
urn:groove.net:Connection=
Operator3syCBombobox
 Name
ConnectionID
urn:groove.net:Connection=
ValueEdi4tyControlo
 Name$
ConnectionID
urn:groove.net:Connection=
AddCondi5t}iDonButtonn
 Name$
ConnectionID
urn:groove.net:Connection=
Conditio6n}sEListViewl
 Name
ConnectionID
urn:groove.net:Connection=
DisplayQu7eqrFyPa
 Name
ConnectionID
urn:groove.net:Connection=
RemoveBut8tqoGnsd
 Name
ConnectionID
urn:groove.net:Connection=
OKButton:9mH
 Name
ConnectionID
urn:groove.net:Connection=
AdvancedB1u0tytIont
 NameB
ConnectionID
urn:groove.net:Connection=
ViewFilt1e1rCJonditionsViewContainer
 NameN
ConnectionID
urn:groove.net:Connection=
ViewSele1c2tiKonCriteriaInnerViewContainer
 Name
ConnectionID
urn:groove.net:Connection=
ANDButton13mL
 Name
ConnectionID
urn:groove.net:Connection=
ORButtonm14pmM
 Name
ConnectionID
urn:groove.net:Connection=
ParensBut1t5ounNpe
 Name$
ConnectionID
urn:groove.net:Connection=
RemovePa1r6enOsButtonn
 Name
ConnectionID
urn:groove.net:Connection=
UpButtonT17=mP
 Name
ConnectionID
urn:groove.net:Connection=
DownButto1n8osqnQ
 Name*
ConnectionID
urn:groove.net:Connection=
UpdateCo1n9diRtionButton
 Name
ConnectionID
urn:groove.net:Connection=
CancelBut2t0on</ u S
 Name6
ConnectionID
urn:groove.net:Connection=
ViewSele2c1tiTonCriteriaLayout
 Name"
ConnectionID
urn:groove.net:Connection=
FormCond2i3tei}oUnInfo
 Name$
ConnectionID
urn:groove.net:Connection=
FieldCon4d0i4tiVonInfor
 SCRIPT9
SRCDhttp://co4m0p4oqnWents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
ConnectionID
e.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Version=5&Factory=Op
eLIBIDL
nonX {366DFD51-2C22-438d-9135-5093E3102447}ox IIDL{E9931A07-9842-4173-A356-4529911316
SCRIPTINTERFACE9
BC}le

function InitializeViewF
ilterSubForm(i_pDesigner, i_pUIDelegate, i_pSandbox, i_pFormEnum, i_pFieldEnum,
i_ExistingQuery, i_bIsSearch)
{
g_CallbackCode =
i_pDesigner;
g_UIDelegate = i
_pUIDelegate;
g_pIFormsToolSan
dbox = i_pSandbox;
g_IsSearch = i_b
IsSearch;
InitializeCompon
entStrings();
InitializeLists(
i_pFormEnum, i_pFieldEnum, i_ExistingQuery);
var MultiCellSiz
eObj = GrooveScriptFunctions.CreateNewObject("Groove.MultiCellLayoutControlInfo"
);
var MultiCellCel
lObj = MultiCellSizeObj.Cell();

if (i_bIsSearch)
{
MultiCel
lCellObj.Name = "RightButton";
ViewSele
ctionCriteriaLayout.RemoveCellContents(MultiCellCellObj);
ViewSele
ctionCriteriaLayout.AddControlByName("CancelButton", MultiCellCellObj);
MultiCel
lCellObj.Name = "LeftButton";
ViewSele
ctionCriteriaLayout.RemoveCellContents(MultiCellCellObj);
ViewSele
ctionCriteriaLayout.AddControlByName("OKButton", MultiCellCellObj);
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
OKButton
.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_SRCH_SEARCH);
}
else
{
MultiCel
lCellObj.Name = "LeftButton";
ViewSele
ctionCriteriaLayout.RemoveCellContents(MultiCellCellObj);
MultiCel
lCellObj.Name = "RightButton";
ViewSele
ctionCriteriaLayout.RemoveCellContents(MultiCellCellObj);
ViewSele
ctionCriteriaLayout.AddControlByName("OKButton", MultiCellCellObj);
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
OKButton
.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_VW_FILT_APPLY_FILTE
R);
}
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
function GetQuery()
{
return GetQueryS
tring();
}
function GetIsDirty()
{
return g_IsDirty
;
}
function UpdateQuery()
{
if (g_IsDirty &&
typeof g_CallbackCode != "undefined" && g_CallbackCode != null)
{
var Vali
dQuery = g_CallbackCode.UpdateViewFilter(DisplayQuery.GetText());
if (Vali
dQuery)
g_Is
Dirty = false;
return V
alidQuery;
}
else
return true;
}
function ClearUI()
{
FormsListView.Re
setContent();
DisplayQuery.Set
Text("");
FieldsCombobox.R
esetContent();
ConditionsListVi
ew.ResetContent();
g_IsDirty = fals
e;
}
7SCRIPT9 ZY
var g_CallbackCode = nul
l;
var g_UIDelegate;
var g_pIFormsToolSandbox
= null;
var g_FormsQueryString =
"";
var g_FieldsQueryString
= "";
var g_IsSearch = false;
var g_IsDirty = false;
var g_IsInitializing = f
alse;
var g_ImageURL ="grooveF
ile:///ToolData\\groove.net\\CommonData\\CommonToolIconImages.jpg";
var g_ImageMaskURL ="grooveFile:///ToolData\\groove.
net\\CommonData\\CommonToolIconImagesMask.bmp";
// Item data object
function ItemDataObj()
{
this.Statement;
this.XPathQuery;
this.StartLevel;
this.EndLevel;
this.Operator;
}
////////////////////////
////////////////////
//
//
//
Public Functions //
//
//
////////////////////////
////////////////////
function GetHelpProvider
()
{
try
{
var RTFH
elpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCo
mponentByName("RTFHelpProvider");
return R
TFHelpProvider;
}
catch(error)
{
}
finally
{
RTFHelpP
rovider = null;
delete R
TFHelpProvider;
CollectG
arbage();
}
}
function GetQueryString(
)
{
return DisplayQu
ery.GetText();
}
function GetCheckedCondi
tions()
{
var CheckedEnum
= ConditionsListView.OpenCheckedEnum();
var ReturnEnum =
CreateStringStringEnum(false);
while(CheckedEnu
m.HasMore())
{
var inde
x = CheckedEnum.OpenNext();
var Disp
layQuery = ConditionsListView.GetItemText(index);
var Quer
y = ConditionsListView.GetItemData(index);
ReturnEn
um.Add(DisplayQuery, Query);
}
return ReturnEnu
m.StringStringEnum;
}
function GetUncheckedCon
ditions()
{
var UnCheckedEnu
m = ConditionsListView.OpenUnCheckedEnum();
var ReturnEnum =
CreateStringStringEnum(false);
while(UnCheckedE
num.HasMore())
{
var inde
x = UnCheckedEnum.OpenNext();
var Disp
layQuery = ConditionsListView.GetItemText(index);
var Quer
y = ConditionsListView.GetItemData(index);
ReturnEn
um.Add(DisplayQuery, Query);
}
return ReturnEnu
m.StringStringEnum;
}
function GetIncludedForm
s()
{
var CheckedEnum
= FormsListView.OpenCheckedEnum();
var ReturnEnum =
CreateStringStringEnum(false);
while(CheckedEnu
m.HasMore())
{
var inde
x = CheckedEnum.OpenNext();
var Disp
layName = FormsListView.GetItemText(index);
var Form
ID = FormsListView.GetItemData(index);
ReturnEn
um.Add(DisplayName, FormID);
}
return ReturnEnu
m.StringStringEnum;
}

////////////////////////
////////////////////
//
//
//
Private Functions //
//
//
////////////////////////
////////////////////
function InitializeCompo
nentStrings()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
FormConditionInf
o.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_VW_FILT_FORM_LV_DE
SC));
FieldConditionIn
fo.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_VW_FILT_MORE_COND
ITIONS));
AndRadioButton.L
abel = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_VW_FILT_ALL_CONDITION
S);
OrRadioButton.La
bel = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_VW_FILT_ANY_CONDITION)
;
RemoveButton.Too
ltip = Priv.GetResourcedString(IDS_FORMS_TOOL_REMOVE_CONDITION_TOOLTIP);
AdvancedButton.T
ooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_MORE_OPTIONS_TOOLTIP);
ANDButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_VW_FILT_AND);
ANDButton.Toolti
p = Priv.GetResourcedString(IDS_FORMS_TOOL_LOGICAL_AND_TOOLTIP);
ORButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_VW_FILT_OR);
ORButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_LOGICAL_OR_TOOLTIP);
ParensButton.Too
ltip = Priv.GetResourcedString(IDS_FORMS_TOOL_ADD_PARENS_TOOLTIP);
RemoveParensButt
on.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_REMOVE_PARENS_TOOLTIP);
UpButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_VIEW_MOVE_UP);
DownButton.Toolt
ip = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_VIEW_MOVE_DOWN);
AddConditionButt
on.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_ADD_CON
D_TO_QUERY);
UpdateConditionB
utton.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_UPDA
TE_CONDITION);
OKButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_VW_FILT_APPLY_FILTER);
OKButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_APPLY_VIEW_FILTER);
CancelButton.Lab
el = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
}
function OnPostedEvent(i
_EventID)
{
if (i_EventID ==
729)
Advanced
ButtonCode();
}
function OKButton_OnComm
and(i_UICommand)
{
if (g_IsSearch)
{
var Wind
ow = UIPropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.C
lose(GrooveWindowResult_OK);
Window.D
estroy(GrooveWindowResult_OK);
}
else
UpdateQu
ery();
}
function CancelButton_On
Command(i_UICommand)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_Cancel);
Window.Destroy(G
rooveWindowResult_Cancel);
}
function AdvancedButton_
OnCommand(i_UICommand)
{
PostEvent(729, 0
);
}
function AdvancedButtonC
ode()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
if (AdvancedButt
on.ImageOffset == 3360 && ViewFilterConditionsViewContainer.LayoutByName != "Vie
wFilterConditionsAdvancedLayout")
{
ViewFilt
erConditionsViewContainer.LayoutByName = "ViewFilterConditionsAdvancedLayout";
Advanced
Button.IGrooveUICommand.SetImage(g_ImageURL, g_ImageMaskURL, 3344, 16, 16);
Advanced
Button.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_LESS_OPTIONS_TOOLTIP);
}
else
{
ViewFilt
erConditionsViewContainer.LayoutByName = "ViewFilterConditionsBasicLayout";
Advanced
Button.IGrooveUICommand.SetImage(g_ImageURL, g_ImageMaskURL, 3360, 16, 16);
Advanced
Button.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_MORE_OPTIONS_TOOLTIP);
}
}
function VerifyParens()
{
var Query = Disp
layQuery.GetText();
var OpenParenArr
ay = Query.match(/\(/g);
var CloseParenAr
ray = Query.match(/\)/g);
var OpenNum = 0;
var CloseNum = 0
;
if (OpenParenArr
ay != null)
OpenNum
= OpenParenArray.length;
if (CloseParenAr
ray != null)
CloseNum
= CloseParenArray.length;
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var BSTREnum = C
reateBSTREnum();
var Message;
if(OpenNum > Clo
seNum)
{
BSTREnum
.Add("\(");
BSTREnum
.Add("\)");
}
else if (OpenNum
< CloseNum)
{
BSTREnum
.Add("\)");
BSTREnum
.Add("\(");
}
else if (OpenNum
== CloseNum)
return;
Message = Priv.M
essageFormat(IDS_FORMS_TOOL_SUBFORMS_GRP_VW_FILT_SYNTAX_ERROR, BSTREnum.IGrooveB
STREnum);
g_UIDelegate.Dis
playError(Message);
}
function FormsListView_O
nListViewCheckChanged(i_Name, i_Index, i_Checked)
{
g_FormsQueryStri
ng = "";
var FormsEnum =
FormsListView.OpenCheckedEnum();
while (FormsEnum
.HasMore())
{
var inde
x = FormsEnum.OpenNext();
if (g_Fo
rmsQueryString == "")
g_FormsQueryString = "/[@Forms_Tool_grooveFormID='" + FormsListView.GetItemData(
index) + "']";
else
g_FormsQueryString += " or /[@Forms_Tool_grooveFormID='" + FormsListView.GetItem
Data(index) + "']";
}
ShowQuery();
if (!g_IsInitial
izing && !g_IsSearch)
{
var Wind
owMgr = GrooveScriptFunctions.CreateNewObject("Groove.WindowManager");
WindowMg
r.ShowWaitCursor();
var Allo
wableFieldEnum = g_CallbackCode.CreateAllowableFieldEnumForViewFilter(GetQuerySt
ring());
FillFiel
dsCombobox(AllowableFieldEnum);
g_IsDirt
y = true;
WindowMg
r.ShowWaitCursor(false);
}
}
function ConditionsListV
iew_OnListViewSelectionChanged(i_Name, i_Index, i_Selected)
{
if (i_Selected &
& ConditionsListView.SelectionCount == 1)
{
var Item
Data = ConditionsListView.GetItemData(i_Index);
var Quer
yString = ItemData.XPathQuery;
var Disp
layString = ConditionsListView.GetSelectionText();
DisplayS
tring = DisplayString.replace(/\(/g, "");
var Fiel
dName = Left(Trim(DisplayString), " ");
DisplayS
tring = DisplayString.replace(FieldName + " ", "");
var Oper
ator = Left(Trim(DisplayString), " ");
DisplayS
tring = DisplayString.replace(/\)/g, "");
DisplayS
tring = DisplayString.replace(Operator + " ", "");
DisplayS
tring = DisplayString.replace(" AND ", "");
DisplayS
tring = DisplayString.replace(" OR ", "");
var Valu
e = DisplayString;
var pFie
ld = null;
if (g_pI
FormsToolSandbox.Fields.DoesExistByName(FieldName))
pField = g_pIFormsToolSandbox.Fields.OpenByName(FieldName);
var Data
Type = GrooveFormsToolFieldDataType_String;
if (type
of pField != "undefined" && pField != null)
DataType = pField.DataType;
if (Data
Type == GrooveFormsToolFieldDataType_Number)
{
var XPathQueryParser = GrooveScriptFunctions.CreateNewObject("Groove.XPathQueryP
arser");
XPathQueryParser.ParseExpression(QueryString);
if (XPathQueryParser.HasMore())
{
var Term = XPathQueryParser.OpenNext();
Value = Term.Value;
var Precision = Right(Value, ".").length;
var FullyFormattedValue = g_UIDelegate.FormatNumber(parseFloat(Value), Precision
);
Value = FullyFormattedValue;
}
}

if (Fiel
dsCombobox.FindStringExact(0, FieldName) != -1)
FieldsCombobox.SetSelectionByText(FieldName);
else
FieldsCombobox.SetSelectionByIndex(-1);
ReloadOp
eratorsCombobox();
if (Oper
atorsCombobox.FindStringExact(0, Operator) != -1)
OperatorsCombobox.SetSelectionByText(Operator);
else
OperatorsCombobox.SetSelectionByIndex(-1);
ValueEdi
tControl.Text = Value;
}
else
ResetFie
ldControls();
}
function ConditionsListV
iew_OnListViewCheckChanged(i_Name, i_Index, i_Checked)
{
//ShowQuery();
}
function AndRadioButton_
OnCommand(i_UICommand)
{
AndRadioButton.C
heckState = GrooveCheckState_Checked;
OrRadioButton.Ch
eckState = GrooveCheckState_Unchecked;
int_UpdateCondit
ions("and", "or");
if (!g_IsInitial
izing)
g_IsDirt
y = true;
}

function OrRadioButton_O
nCommand(i_UICommand)
{
AndRadioButton.C
heckState = GrooveCheckState_Unchecked;
OrRadioButton.Ch
eckState = GrooveCheckState_Checked;
int_UpdateCondit
ions("or", "and");
if (!g_IsInitial
izing)
g_IsDirt
y = true;
}
function int_UpdateConditions(i_OpString, i_Previous
OpString)
{
var Count = ConditionsListView.Count;
for(var i=0; i <
Count; i++)
{
var inde
x = i;
var ItemData
= ConditionsListView.GetItemData(index);
if (ItemData.Operator == i_PreviousOpString)
ItemData
.Operator = i_OpString;
ConditionsLi
stView.SetItemData(index, ItemData);
UpdateDispla
yString(index);
}
RefreshUI();
g_IsDirty = true
;
}
function FieldsCombobox_
OnSelectionChange(i_Name, i_Item)
{
if (i_Item != -1
&& FieldsCombobox.GetSelectionText() != "")
{
ReloadOp
eratorsCombobox();
ReloadVa
lueEditControl();
Operator
sCombobox.SetSelectionByIndex(0);
}
}
function ReloadOperatorsCombobox()
{
OperatorsCombobox.ResetContent();
OperatorsCombobo
x.AddItem("=");
OperatorsCombobo
x.AddItem("!=");
var index = Fiel
dsCombobox.GetSelectionIndex();
if (index != -1
&& index != 0)
{
var Data
Type = FieldsCombobox.GetItemData(index);
if (Data
Type == GrooveFormsToolFieldDataType_Number ||
DataType == GrooveFormsToolFieldDataType_Date)
{
OperatorsCombobox.AddItem(">");
OperatorsCombobox.AddItem(">=");
OperatorsCombobox.AddItem("<");
OperatorsCombobox.AddItem("<=");
}
else if
(DataType == GrooveFormsToolFieldDataType_String ||
DataType == GrooveFormsToolFieldDataType_RichText)
{
OperatorsCombobox.AddItem("contains");
OperatorsCombobox.AddItem("starts-with");
OperatorsCombobox.AddItem("ends-with");
OperatorsCombobox.AddItem("not-contains");
OperatorsCombobox.AddItem("not-starts-with");
OperatorsCombobox.AddItem("not-ends-with");
}
}
OperatorsCombobo
x.SetSelectionByIndex(0);
}
function ReloadValueEdit
Control()
{
var FieldName =
FieldsCombobox.GetSelectionText();
if (FieldName ==
"_ModifiedByURL" || FieldName == "_CreatedByURL")
{
if (Valu
eEditControl.FindStringExact(0, "{UserName}") == -1)
ValueEditControl.InsertItem(0, "{UserName}");
}
else
ValueEdi
tControl.ResetContent();
}
function InitializeLists
(i_FormsEnum, i_FieldsEnum, i_ExistingQuery)
{
g_IsInitializing
= true;
g_FormsQueryString = "";
FillFormsListVie
w(i_FormsEnum);
FillFieldsCombob
ox(i_FieldsEnum);
ValueEditControl
.Text = "";
FieldsCombobox.S
etSelectionByIndex(0);
AndRadioButton.C
heckState = GrooveCheckState_Checked;
OrRadioButton.Ch
eckState = GrooveCheckState_Unchecked;
ConditionsListVi
ew.ResetContent();
ReloadOperatorsC
ombobox();
DisplayQuery.Set
Text("");
if (i_ExistingQu
ery != "")
ParseQue
ryString(i_ExistingQuery)
g_IsInitializing
= false;
}
function FillFormsListVi
ew(i_FormsEnum)
{
FormsListView.Re
setContent();
while (i_FormsEn
um.HasMore())
{
var pFor
m = i_FormsEnum.OpenNext();
var inde
x = FormsListView.AddItem(pForm.IGrooveFormsToolDesignObject.Name);
var Form
ID = g_pIFormsToolSandbox.IGrooveFormsToolDesignPrivate.ConvertDesignObjectIDToS
tring(pForm.IGrooveFormsToolDesignObject.ID);
FormsLis
tView.SetItemData(index, FormID);
}
}
function FillFieldsCombo
box(i_FieldsEnum)
{
FieldsCombobox.R
esetContent();
FieldsCombobox.A
ddItem("");
// Add the _Crea
tedByURL and _ModifiedByURL and _ParentID fields
var index = Fiel
dsCombobox.AddItem("_CreatedByURL");
FieldsCombobox.S
etItemData(index, GrooveFormsToolFieldDataType_String);
index = FieldsCo
mbobox.AddItem("_ModifiedByURL");
FieldsCombobox.S
etItemData(index, GrooveFormsToolFieldDataType_String);
index = FieldsCo
mbobox.AddItem("_ParentID");
FieldsCombobox.S
etItemData(index, GrooveFormsToolFieldDataType_Number);
while (i_FieldsE
num.HasMore())
{
var pIFi
eld = i_FieldsEnum.OpenNext();
if (((pI
Field.FieldType == GrooveFormsToolFieldType_SystemField) || pIField.IsPersistabl
e) && (pIField.DataType != GrooveFormsToolFieldDataType_Attachments))
{
// exclude non searchable RTF fields
if (pIField.FieldType == GrooveFormsToolFieldType_RichText && pIField.IGrooveFor
msToolFieldPropertiesForRichText.IsSearchable == false)
continue;

// Exclude DateTime fields because users won't know how to get an accurate time.
if (pIField.FieldType == GrooveFormsToolFieldType_DateTime)
continue;

// Exclude contact fields.


if (pIField.FieldType == GrooveFormsToolFieldType_Contact)
continue;

var FieldName = pIField.IGrooveFormsToolDesignObject.Name;

// since the readers and editors fields contain urls, not useful for users.
if (FieldName == "_Readers" || FieldName == "_Editors")
continue;

var index = FieldsCombobox.AddItem(FieldName);


FieldsCombobox.SetItemData(index, pIField.DataType);
}
}
}
function GetRadioValue()
{
if (OrRadioButto
n.CheckState == GrooveCheckState_Checked)
return "
or ";
else
return "
and ";
}
function AddConditionBut
ton_OnUpdateCommandState(i_UICommand)
{
var IsEnabledOnE
mpty = false;
var FieldName =
FieldsCombobox.GetSelectionText();
if (FieldName !=
"")
{
var Data
Type = FieldsCombobox.GetItemData(FieldsCombobox.GetSelectionIndex());
var Sele
ctedOperator = OperatorsCombobox.GetSelectionText();
if (Data
Type == GrooveFormsToolFieldDataType_String && (SelectedOperator == "=" || Selec
tedOperator == "!="))
IsEnabledOnEmpty = true;
}
AddConditionButt
on.Enabled = (ValueEditControl.Text != "" || IsEnabledOnEmpty);
}
function AddConditionBut
ton_OnCommand(i_UICommand)
{
g_CallbackCode.E
ndIMEComposition();
var FieldName = FieldsCombobox.GetSelectionText(
);
if (FieldName !=
"")
{
var Data
Type = FieldsCombobox.GetItemData(FieldsCombobox.GetSelectionIndex());
var Sele
ctedOperator = OperatorsCombobox.GetSelectionText();
var Valu
e = ValueEditControl.Text;
var Disp
layValue = Value;
// To en
sure that number values such as currency are valid, we should parse the number
if (Data
Type == GrooveFormsToolFieldDataType_Number)
{
Value = g_UIDelegate.ParseNumber(Value);
var Precision = Right(String(Value), ".").length;
DisplayValue = g_UIDelegate.FormatNumber(Value, Precision);
}
var Quer
yString = BuildQueryString(FieldName, DataType, SelectedOperator, Value);
if (Quer
yString != null)
{
var DisplayString = FieldName + " " + SelectedOperator + " " + DisplayValue;
var ItemData = new ItemDataObj;
ItemData.Statement = DisplayString;
ItemData.XPathQuery = QueryString;
ItemData.StartLevel = 0;
ItemData.EndLevel = 0;
ItemData.Operator = "";
var cNull = GrooveScriptFunctions.CreateNewObject("");
var index = ConditionsListView.AddItem2(DisplayString , ItemData, cNull);
UpdateDisplayString(index);
if (ConditionsListView.Count > 1)
UpdateDisplayString(index - 1);
RefreshUI();
g_IsDirty = true;
}
}
else
{
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
g_UIDele
gate.IGrooveFormsToolUIDelegate.DisplayError(Priv.GetResourcedString(IDS_FORMS_T
OOL_SUBFORMS_GRP_VW_FILT_MST_CHSE_FLD_ADD));
}
}
function UpdateCondition
Button_OnUpdateCommandState(i_UICommand)
{
if (ConditionsLi
stView.SelectionCount == 1)
UpdateCo
nditionButton.Enabled = true;
else
UpdateCo
nditionButton.Enabled = false;
}
function UpdateCondition
Button_OnCommand(i_UICommand)
{
var FieldName =
FieldsCombobox.GetSelectionText();
if (FieldName !=
"")
{
var Data
Type = FieldsCombobox.GetItemData(FieldsCombobox.GetSelectionIndex());
var Sele
ctedOperator = OperatorsCombobox.GetSelectionText();
var Valu
e = ValueEditControl.Text;
var Disp
layValue = Value;
// To en
sure that number values such as currency are valid, we should parse the number
if (Data
Type == GrooveFormsToolFieldDataType_Number)
{
Value = g_UIDelegate.ParseNumber(Value);
var Precision = Right(String(Value), ".").length;
DisplayValue = g_UIDelegate.FormatNumber(Value, Precision);
}

var Quer
yString = BuildQueryString(FieldName, DataType, SelectedOperator, Value);
if (Quer
yString != null)
{
var DisplayString = FieldName + " " + SelectedOperator + " " + DisplayValue;
var index = ConditionsListView.SelectionIndex;
var ItemData = ConditionsListView.GetItemData(index);
ItemData.Statement = DisplayString;
ItemData.XPathQuery = QueryString;
ConditionsListView.SetItemText(index, 0, DisplayString);
ConditionsListView.SetItemData(index, ItemData);
UpdateDisplayString(index);
RefreshUI();
g_IsDirty = true;
}
}
else
{
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
g_UIDele
gate.IGrooveFormsToolUIDelegate.DisplayError(Priv.GetResourcedString(IDS_FORMS_T
OOL_SUBFORMS_GRP_VW_FILT_MST_CHSE_FLD_UPD));
}
}
function RemoveButton_On
UpdateCommandState(i_UICommand)
{
if (ConditionsLi
stView.SelectionCount == 1)
RemoveBu
tton.Enabled = true;
else
RemoveBu
tton.Enabled = false;
}
function RemoveButton_On
Command(i_UICommand)
{
var index = Cond
itionsListView.SelectionIndex;
ConditionsListVi
ew.RemoveItemByIndex(index);
RefreshUI();
g_IsDirty = true
;
}
function ANDButton_OnUpd
ateCommandState(i_UICommand)
{
if (ConditionsLi
stView.SelectionCount == 1 && (ConditionsListView.SelectionIndex < (ConditionsLi
stView.Count -1)) && ConditionsListView.Count > 1)
ANDButto
n.Enabled = true;
else
ANDButto
n.Enabled = false;
}
function ANDButton_OnCom
mand(i_UICommand)
{
var index = Cond
itionsListView.SelectionIndex;
var ItemData = C
onditionsListView.GetItemData(index);
ItemData.Operato
r = "and";
ConditionsListVi
ew.SetItemData(index, ItemData);
UpdateDisplayStr
ing(index);
RefreshUI();
g_IsDirty = true
;
}
function ORButton_OnUpda
teCommandState(i_UICommand)
{
if (ConditionsLi
stView.SelectionCount == 1 && (ConditionsListView.SelectionIndex < (ConditionsLi
stView.Count -1)) && ConditionsListView.Count > 1)
ORButton
.Enabled = true;
else
ORButton
.Enabled = false;
}
function ORButton_OnComm
and(i_UICommand)
{
var index = Cond
itionsListView.SelectionIndex;
var ItemData = C
onditionsListView.GetItemData(index);
ItemData.Operato
r = "or";
ConditionsListVi
ew.SetItemData(index, ItemData);
UpdateDisplayStr
ing(index);
RefreshUI();
g_IsDirty = true
;
}
function UpButton_OnUpda
teCommandState(i_UICommand)
{
if (ConditionsLi
stView.SelectionCount == 1 && ConditionsListView.SelectionIndex != 0)
UpButton
.Enabled = true;
else
UpButton
.Enabled = false;
}
function UpButton_OnComm
and(i_UICommand)
{
var index = Cond
itionsListView.SelectionIndex;
var thisItemData
= ConditionsListView.GetItemData(index);
var thatItemData
= ConditionsListView.GetItemData(index - 1);
var thisStatemen
t = thisItemData.Statement;
var thisXPathQue
ry = thisItemData.XPathQuery;
var thatStatemen
t = thatItemData.Statement;
var thatXPathQue
ry = thatItemData.XPathQuery;
thisItemData.Sta
tement = thatStatement;
thisItemData.XPa
thQuery = thatXPathQuery;
thatItemData.Sta
tement = thisStatement;
thatItemData.XPa
thQuery = thisXPathQuery;
ConditionsListVi
ew.SetItemData(index, thisItemData);
UpdateDisplayStr
ing(index);
ConditionsListVi
ew.SetItemData(index - 1, thatItemData);
UpdateDisplayStr
ing(index - 1);
RefreshUI();
ConditionsListVi
ew.SetSelectionByIndex(index - 1);
g_IsDirty = true
;
}
function DownButton_OnUp
dateCommandState(i_UICommand)
{
if (ConditionsLi
stView.SelectionCount == 1 && ConditionsListView.SelectionIndex != (ConditionsLi
stView.Count - 1))
DownButt
on.Enabled = true;
else
DownButt
on.Enabled = false;
}
function DownButton_OnCo
mmand(i_UICommand)
{
var index = Cond
itionsListView.SelectionIndex;
var thisItemData
= ConditionsListView.GetItemData(index);
var thatItemData
= ConditionsListView.GetItemData(index + 1);
var thisStatemen
t = thisItemData.Statement;
var thisXPathQue
ry = thisItemData.XPathQuery;
var thatStatemen
t = thatItemData.Statement;
var thatXPathQue
ry = thatItemData.XPathQuery;
thisItemData.Sta
tement = thatStatement;
thisItemData.XPa
thQuery = thatXPathQuery;
thatItemData.Sta
tement = thisStatement;
thatItemData.XPa
thQuery = thisXPathQuery;
ConditionsListVi
ew.SetItemData(index, thisItemData);
UpdateDisplayStr
ing(index);
ConditionsListVi
ew.SetItemData(index + 1, thatItemData);
UpdateDisplayStr
ing(index + 1);
RefreshUI();
ConditionsListVi
ew.SetSelectionByIndex(index + 1);
g_IsDirty = true
;
}
function ParensButton_On
UpdateCommandState(i_UICommand)
{
if (ConditionsLi
stView.SelectionCount > 1)
ParensBu
tton.Enabled = true;
else
ParensBu
tton.Enabled = false;
}
function ParensButton_On
Command(i_UICommand)
{
var indexEnum =
ConditionsListView.OpenSelectionEnum();
var FirstIndex =
indexEnum.OpenNext();
// Now that we h
ave the first, we need to get the last one.
// This gives us
our range. For each we need to bump the
// level by one
var LastIndex =
-1;
while (indexEnum
.HasMore())
{
LastInde
x = indexEnum.OpenNext();
}
for (var i = Fir
stIndex; i <= LastIndex; i++)
{
var Item
Data = ConditionsListView.GetItemData(i);
ItemData
.StartLevel = ItemData.StartLevel + 1;
if (i !=
LastIndex)
ItemData.EndLevel = ItemData.EndLevel + 1;
}
UpdateDisplayStr
ing(FirstIndex);
UpdateDisplayStr
ing(LastIndex);
RefreshUI();
g_IsDirty = true
;
}
function RemoveParensBut
ton_OnCommand(i_UICommand)
{
var count = Cond
itionsListView.Count;
for (var i = 0;
i < count; i++)
{
var Item
Data = ConditionsListView.GetItemData(i);
ItemData
.StartLevel = 0;
ItemData
.EndLevel = 0;
}
for (var i = 0;
i < count; i++)
{
UpdateDi
splayString(i);
}
ShowQuery();
g_IsDirty = true
;
}
function UpdateDisplaySt
ring(i_Index)
{
var ItemData = C
onditionsListView.GetItemData(i_Index);
var DisplayStrin
g = "";
var PreviousItem
Data = null;
var NumPrefixPar
ens = ItemData.StartLevel;
if (i_Index != 0
)
{
Previous
ItemData = ConditionsListView.GetItemData(i_Index - 1);
NumPrefi
xParens = (ItemData.StartLevel - PreviousItemData.EndLevel);
}

var NumSuffixPar
ens = ItemData.StartLevel - ItemData.EndLevel ;

// Add the Paren


s
for (var i = 0;
i < NumPrefixParens; i++)
{
DisplayS
tring = "( " + DisplayString;
}
DisplayString +=
ItemData.Statement;
for (var i = 0;
i < NumSuffixParens; i++)
{
DisplayS
tring = DisplayString + " )";
}

if (i_Index != (
ConditionsListView.Count - 1))
{
var Op;
if (Item
Data.Operator != "")
Op = ItemData.Operator.toUpperCase() + " ";
else
Op = GetRadioValue().toUpperCase();
DisplayS
tring += " " + Op;
}
ConditionsListVi
ew.SetItemText(i_Index, 0, DisplayString);
}
function RefreshUI()
{
ShowQuery();
ResetFieldContro
ls();
ConditionsListVi
ew.ClearAllSelections();
}
function ShowQuery()
{
var Count = Cond
itionsListView.Count;
var QueryString
= "";
if (g_FormsQuery
String != "")
QueryStr
ing = "(" + g_FormsQueryString + ")";

if (Count > 0 &&


QueryString != "")
QueryStr
ing += " and ( ";
for(var i=0; i <
Count; i++)
{
var inde
x = i;
var Item
Data = ConditionsListView.GetItemData(index);
var Disp
layString = "";
var Prev
iousItemData = null;
var NumP
refixParens = ItemData.StartLevel;
if (inde
x != 0)
{
PreviousItemData = ConditionsListView.GetItemData(index - 1);
NumPrefixParens = (ItemData.StartLevel - PreviousItemData.EndLevel);
}

var NumS
uffixParens = ItemData.StartLevel - ItemData.EndLevel;
if (Quer
yString != "")
QueryString += GetLogicalOperator(index - 1);
TempStr
ing = ItemData.XPathQuery;
// Add t
he Parens
for (var
j = 0; j < NumPrefixParens; j++)
{
TempString = "( " + TempString;
}
for (var
j = 0; j < NumSuffixParens; j++)
{
TempString = TempString + " )";
}
QueryStr
ing += TempString;
}
if (Count > 0 &&
g_FormsQueryString != "" && QueryString.lastIndexOf(" )") == -1)
QueryStr
ing += " )";
DisplayQuery.Set
Text(QueryString);
}
function GetLogicalOpera
tor(i_Index)
{
if (i_Index != -
1)
{
var strB
ool = GetRadioValue();
if (strB
ool == "")
strBool = " and ";
var Item
Data = ConditionsListView.GetItemData(i_Index);
var Logi
calOp = strBool;
if (Item
Data.Operator != "")
LogicalOp = " " + ItemData.Operator + " ";
return L
ogicalOp;
}
else
return "
";
}
function BuildQueryStrin
g(FieldName, DataType, SelectedOperator, Value)
{
var QueryString
= "";
var Prefix = "/[
";
var Mid = "@" +
FieldName;
var QueryValue =
"'" + Value + "'";
var End = "]";
var OperatorMid
= "";
var OperatorPref
ix = "";
var strBool = Ge
tRadioValue();
if (SelectedOper
ator == "contains" || SelectedOperator == "starts-with" || SelectedOperator == "
ends-with" ||
Selected
Operator == "not-contains" || SelectedOperator == "not-starts-with" || SelectedO
perator == "not-ends-with")
{
Operator
Mid = ",";
Operator
Prefix = SelectedOperator + "(";
End = ")
" + End;
}
else
Operator
Mid = SelectedOperator;
// Add code here
to add a CR to the value if the data type is RTF and the OperatorMid is '=' or
'!='
// This fixes a
problem when doing exact matches on RTF content since RTF content always has the
character
// at the end of
the value.
if (DataType ==
GrooveFormsToolFieldDataType_RichText && (OperatorMid == "=" || OperatorMid == "
!="))
QueryVal
ue = "'" + Value + String.fromCharCode(10) + "'";
if (FieldName ==
"_Created" || FieldName == "_Modified" || DataType == GrooveFormsToolFieldDataT
ype_Date)
{
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
try
{
Value = g_UIDelegate.ParseDate(Value, GrooveIntlDateFormatStyle_Short);
if (isNaN(Value))
{
var FormatStyle = g_UIDelegate.FormatDate((new Date).valueOf(), GrooveIntlDateFo
rmatStyle_Short);
var BSTREnum = CreateBSTREnum();
BSTREnum.Add(FormatStyle);
g_UIDelegate.IGrooveFormsToolUIDelegate.DisplayError(Priv.MessageFormat(IDS_FORM
S_TOOL_SUBFORMS_GRP_VW_FILT_INVALID_DATE_FORMAT, BSTREnum.IGrooveBSTREnum));
return null;
}
}
catch (e
rror)
{
ThrowError(error.description);
return null;
}
var MinV
alue = Number(Value);
if (!isN
aN(MinValue))
{
// Add one day (milliseconds * seconds * minutes * hours) for max value
var MaxValue = MinValue + (1000 * 60 * 60 * 24);

if (SelectedOperator == "=")
{
if (QueryString == "")
QueryString = "(/[@" + FieldName + ">='" + MinValue + "'] and /[@" + FieldName +
"<'" + MaxValue + "'])";
else if (strBool != "")
QueryString += strBool + " (/[@" + FieldName + ">='" + MinValue + "'] and /[@" +
FieldName + "<'" + MaxValue + "'])";
}
else if (SelectedOperator == "!=")
{
if (QueryString == "")
QueryString = "(/[@" + FieldName + "<'" + MinValue + "'] and /[@" + FieldName +
">'" + MaxValue + "'])";
else if (strBool != "")
QueryString += strBool + " (/[@" + FieldName + "<'" + MinValue + "'] and /[@" +
FieldName + ">'" + MaxValue + "'])";
}
else
{
QueryValue = "'" + Value + "'";
if (QueryString == "")
QueryString = Prefix + OperatorPrefix + Mid + OperatorMid + QueryValue + End;
else if (strBool != "")
QueryString += strBool + Prefix + OperatorPrefix + Mid + OperatorMid + QueryValu
e + End;
}
}
}
else
{
if (Quer
yString == "")
QueryString = Prefix + OperatorPrefix + Mid + OperatorMid + QueryValue + End;
else if
(strBool != "")
QueryString += strBool + Prefix + OperatorPrefix + Mid + OperatorMid + QueryValu
e + End;
}
return QueryStri
ng;
}
function ParseQueryStrin
g(i_QueryString)
{
//GrooveDebugFun
ctions.DisplayAssert(0,"");
// Starting Quer
y string looks like:
// /[@test='foo
'] and /[contains(@test2,'foo')] and (/[@date<'10040002355'] and /[@date>'100400
44602'])
// First get rid
of the parens around the field query
var InputQuery =
i_QueryString;
if (InputQuery.i
ndexOf("( ") != -1)
InputQue
ry = InputQuery.replace("( ", "");
if (InputQuery.i
ndexOf(" )") != -1)
InputQue
ry = InputQuery.replace(" )", "");
// Check to see if we are querying on forms. If
so clean up
// any issues in that grouping.
if (InputQuery.indexOf("Forms_Tool_grooveFormID"
) != -1)
{
var Pos = InputQuery.indexOf(" and ");
var spaceCloseParenPos = InputQuery.indexOf(
" )");
if (spaceCloseParenPos != -1 && spaceClosePa
renPos < Pos)
InputQuery = InputQuery.replace(" )", ""
);
var openParenSpacePos = InputQuery.indexOf("
( ");
if (openParenSpacePos != -1 && openParenSpac
ePos < Pos)
InputQuery = InputQuery.replace("( ", ""
);
}
if (InputQuery.indexOf(" ") != -1)
InputQuery = InputQuery.replace(" ", " ");
var QueryArray =
InputQuery.split(" ");
// Variables nee
ded to construct an item from
var CurrentStart
Level = 0;
var CurrentEndLe
vel = 0;
var DisplayStrin
g = "";
var UserDataQuer
yString = "";
var CurrentOpera
tor;
var ConstructIte
m = false;
var Length = Que
ryArray.length;
for (var i=0; i
< Length; i++)
{
// Each
segment looks like one of the following:
// (
// /[@te
st='foo']
// and
// /[con
tains(@test2,'foo')]
// )
// and
// (/[@d
ate<'10040002355']
// and
// /[@da
te>'10040044602'])
var strQ
uery = QueryArray[i];

// If th
e array item is an operator, open paren, close paren or xpath
if ((str
Query == "and" || strQuery == "or"))
{
CurrentOperator = strQuery;
ConstructItem = true;
}
else if
(((i == (Length - 2)) && QueryArray[i] == "" && QueryArray[Length - 1] == ")") |
|
((i
== (Length - 1)) && QueryArray[i] == ")" && QueryArray[Length - 2] == "") )
{
}
else if
(strQuery == "(")
CurrentStartLevel++;
else if
(strQuery == ")")
CurrentEndLevel--;
else
{
//////////////////////////////////////////////////////////////
///
//
/// PARSE AN XPATH QUERY
//
///
//
//////////////////////////////////////////////////////////////
var strOriginal = strQuery;
var IsDate = false;
// first get rid of the /[ or (/[
if (strQuery.indexOf("(/[") == -1)
strQuery = strQuery.replace("/[", "");
else
{
strQuery = strQuery.replace("(/[", "");
IsDate = true;
}

// a segment now looks like


// (
// @test='foo']
// contains(@test2,'foo')]
// )
// @date<'10040002355']
// @date>'10040044602'])
var FieldName;
var FieldValue;
var Operator;
var indexOfAtSign = strQuery.indexOf("@");
if (indexOfAtSign == 0) //This means that it uses a normal operator - not contai
ns or starts-with or ends-with
{
// We still don't know yet which operator they are using, but we do know that
// it is one of the following:
// =
// !=
// <
// <=
// >
// >=
//
// because many of the operators have an = you can't search for it first.
// you must search for any combo operators first, then the single ones
if (strQuery.indexOf("!=") != -1)
{
FieldName = strQuery.slice(indexOfAtSign + 1, strQuery.indexOf("!="));
Operator = "!=";
}
else if (strQuery.indexOf("<=") != -1)
{
FieldName = strQuery.slice(indexOfAtSign + 1, strQuery.indexOf("<="));
Operator = "<=";
}
else if (strQuery.indexOf(">=") != -1)
{
FieldName = strQuery.slice(indexOfAtSign + 1, strQuery.indexOf(">="));
Operator = ">=";
}
else if (strQuery.indexOf(">") != -1)
{
FieldName = strQuery.slice(indexOfAtSign + 1, strQuery.indexOf(">"));
Operator = ">";
}
else if (strQuery.indexOf("<") != -1)
{
FieldName = strQuery.slice(indexOfAtSign + 1, strQuery.indexOf("<"));
Operator = "<";
}
else if (strQuery.indexOf("=") != -1)
{
FieldName = strQuery.slice(indexOfAtSign + 1, strQuery.indexOf("="));
Operator = "=";
}
else
GrooveDebugFunctions.DisplayAssert(0, ""); // unknown operator
}
else
{
var indexOfOpenParenAtSign = strQuery.indexOf("(@");
Operator = strQuery.slice(0, indexOfOpenParenAtSign);
FieldName = strQuery.slice(indexOfOpenParenAtSign + 2, strQuery.indexOf(","));
}
// Now that we have the field name we need to get the value being compared to
var indexOfFirstSingleQuote = strQuery.indexOf("'");
var indexOfSecondSingleQuote = strQuery.lastIndexOf("'");
// If the indexes match, then there is a space in the value
// we need to find the next occurance of a single quote in subsequent
// array values and combine them with strQuery until we've found the close
// quote. We also need to advance the counter (i) as we go. We also need to
// prefix the added string with a space since we know that this is why the
// string got split in the first place.
if ((indexOfFirstSingleQuote == indexOfSecondSingleQuote) && (indexOfFirstSingle
Quote != -1 && indexOfSecondSingleQuote != -1))
{
while (indexOfFirstSingleQuote == indexOfSecondSingleQuote)
{
strQuery += (" " + QueryArray[++i]);
strOriginal += (" " + QueryArray[i]);
indexOfSecondSingleQuote = strQuery.lastIndexOf("'");
}

FieldValue = strQuery.slice(indexOfFirstSingleQuote + 1, indexOfSecondSingleQuot


e);

if (FieldName != "Forms_Tool_grooveFormID")
{
var DataType = null;
var pField = null;
var UserDataQueryString = strOriginal;
// Need to get the data type for the field
if (g_pIFormsToolSandbox.Fields.DoesExistByName(FieldName))
pField = g_pIFormsToolSandbox.Fields.OpenByName(FieldName);

if (pField)
DataType = pField.DataType;

if (DataType == GrooveFormsToolFieldDataType_Date)
FieldValue = g_UIDelegate.FormatDate(FieldValue, GrooveIntlDateFormatStyle_Short
);
else if (DataType == GrooveFormsToolFieldDataType_Number)
{
var Precision = Right(FieldValue, ".").length;
FieldValue = g_UIDelegate.FormatNumber(parseFloat(FieldValue), Precision);
}

if (IsDate && (FieldName == "_Created" || FieldName == "_Modified" || DataType =


= GrooveFormsToolFieldDataType_Date))
{
// Take the UserDataString and do an indexOf check on the original query string
which
// was passed into the function. If the return value is not -1 then we know
// it is an = or != date. If it is -1 then treat it like a normal field
// and don't do anything special.
var DateUserDataQueryString = strOriginal + " " + QueryArray[i + 1] + " " + Que
ryArray[i + 2];
if (InputQuery.indexOf(DateUserDataQueryString) != -1)
{
UserDataQueryString = DateUserDataQueryString;
i++;
i++;
if (Operator == ">=")
Operator = "=";
else if (Operator == "<")
Operator = "!=";
else
GrooveDebugFunctions.DisplayAssert(0, ""); //unknown operator
}
}

DisplayString = FieldName + " " + Operator + " " + FieldValue;

CurrentEndLevel = CurrentStartLevel;
}
else
{
// Now need to find the correct Form by ID
var FormID = Number(FieldValue);
if (!isNaN(FormID) && g_pIFormsToolSandbox.Forms.DoesExist(FormID))
{
var pForm = g_pIFormsToolSandbox.Forms.Open(FormID);
var FormName = pForm.IGrooveFormsToolDesignObject.Name;
var index = FormsListView.FindStringExact(FormName);
FormsListView.SetCheckByIndex(index);
// We know that after every Form there is an operator which
// we don't want to deal with, so increase the counter by 1
i++;
}
}
}
////////
//////////////////////////////////////////////////////////////
//
//
//
CHECK FOR THE END OF ARRAY
//
//
//
////////
//////////////////////////////////////////////////////////////
if (i ==
(QueryArray.length - 1))
{
ConstructItem = true;
CurrentOperator = "";
}

////////
//////////////////////////////////////////////////////////////
//
//
//
CONSTRUCT ITEM AND ADD TO LISTVIEW //
//
//
////////
//////////////////////////////////////////////////////////////
if (Cons
tructItem)
{
var cNull = GrooveScriptFunctions.CreateNewObject("");
var index = ConditionsListView.AddItem(DisplayString);
var ItemData = new ItemDataObj;
ItemData.Statement = DisplayString;
ItemData.XPathQuery = UserDataQueryString;
ItemData.StartLevel = CurrentStartLevel;
ItemData.EndLevel = CurrentEndLevel;
ItemData.Operator = CurrentOperator;
ConditionsListView.SetItemData(index, ItemData);
CurrentStartLevel = CurrentEndLevel;
// Reset flag
ConstructItem = false;
}
}
// Now run the u
pdate display on all entries to get them
// to show up pr
operly.
var count = Cond
itionsListView.Count;
for (var i = 0;
i < count; i++)
{
UpdateDi
splayString(i);
}
ShowQuery();
}
function ResetFieldContr
ols()
{
FieldsCombobox.S
etSelectionByIndex(0);
OperatorsCombobo
x.SetSelectionByIndex(0);
ValueEditControl
.Text = "";
ViewSelectionCri
teriaInnerViewContainer.SetFocus("FieldsCombobox");
}
q  urn:groove.net:PropertyList
9EnforceInterfaces1  __Version4,1,0,0P
 urn:groove.net:Component
 Name0FormsSearchControlLayout  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListt 
  urn:groove.net:ComponentResource
 URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutxt urn:
groove.net:PropertyList
  __Version4,1,0,0  _G_Layout LayoutuCu Layoutt urn:groove.net:PropertyValuevEv
ueu MULTIROWw
 DwMULTIROWv
  ROWx ROWz ROW|(x ROWw CELLyey CELLx RightPad  5 LeftPad5 FormsSearchInne
v| ROWw CELL} CELL~ CELL  CELL  CELL  CELL  CELL 2} CELL| HEIGHT40yV~ CELL| WIDTH175TabOrder  2
 SearchButton-  CELL| WIDTH5U  CELL| WIDTH175TabOrder
 2 ResetButton-  CELL| WIDTH5V  CELL| WID
 CancelButton1  CELL| WIDTH10
 urn:groove.net:Component
 NameFormsListLabelC  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:Pr
opertyList

 VAlignment
Centere Label<Select a form for your search:  FontStyleLabelText  __Version4
,1,0,0
 urn:groove.net:Component
 Name:FormsSearchInnerViewContainer  urn:groove.net:ComponentResource
# urn:groove.net:ComponentConnections
 urn:groove.net:PropertyList {
  urn:groove.net:ComponentResource
 URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]
# urn:groove.net:ComponentConnections
 urn:groove.net:Connection
 
 urn:groove.net:Connection

 ConnectionID0 Name,FormsSearchInnerLayoutcT  urn:groove.net:PropertyList
  __Version4,1,0,0  p   H
 urn:groove.net:Component
 NameSearchButton  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:P
ropertyList
 DefaultTruea StyleStandardButtonb Label
Searche  __Version4,1,0,0
 urn:groove.net:Component
 NameResetButton  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone   urn:groove.net:P
ropertyList
 StyleStandardButtonb Label
Reset  __Version4,1,0,0
 urn:groove.net:Component
 NameCancelButton</  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:P
ropertyList
 CancelTruea StyleStandardButtonb Label
Cancelo  __Version4,1,0,0 
 urn:groove.net:Component
 NameLinepo  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static   urn:groove.net:Pr
opertyList
 BackgroundStyleSeparator  __Version4,1,0,0
 urn:groove.net:Component
 DisplayName Web Browser View NameWebBrowserViewm  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList  
  urn:groove.net:ComponentResource
 URLLhttp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveWebBrowserTool_DLL&Version=2,6&Factory=WebBrowserControlW
rapperpo  urn:groove.net:PropertyList
 ReturnSafeForScriptingExternalTruea DisableMnemonicsByResourceID:4366,4367,4368,4369,43
70,4371 DisableNavigationSoundTruea  __Version4,1,0,0  8    p     
 urn:groove.net:Component
 Name,FormsSearchInnerLayoutc  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList  
  urn:groove.net:ComponentResource
 URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx  urn:gr
oove.net:PropertyList
  __Version4,1,0,0  _G_Layout Layout C   Layout  urn:groove.net:PropertyValue E  
ghtPad5  BottomPad5(  ROW  CELL Y   CELL  HEIGHT22lTabOrder  1 FormsListLabel(  ROW  CELL u  CEL
earchOrAndLabel5
OrRadioButton5  ROW ROW CELL
 CELL CELL CELLGG CELL CELL HEIGHT
 HEIGHT 22l2lWIDTH
 WIDTH2020 CB  CELL TabOrder
 1 And
 urn:groove.net:Component
 Name*FormsSearchOrAndLabel  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:Pr
opertyList

 VAlignment
Centere  FontStyleLabelText Label2Show me search result of:  __Version4,1,0,0
 urn:groove.net:Component
 NameOrRadioButton  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:P
ropertyList
 StyleRadiobutton Label:Any of the above field values RadiobuttonTruea  __Version4,1,0,0d 
 urn:groove.net:Component
 NameAndRadioButtonl  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListo
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:P
ropertyList
 StyleRadiobutton Label:All of the above field values RadiobuttonTruea  __Version4,1,0,0

 urn:groove.net:Component
 Name,FormsSearchControlCodea  urn:groove.net:ComponentResource# urn:groove.net:ComponentC
onnections   urn:groove.net:ComponentResource
 URLJhttp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.SystemComponents.GrooveResource_DLL&Version=0&Factory=FormsToolSearchDialogDel
egatem# urn:groove.net:ComponentConnections
  urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:gr
net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection u
ove.net:Connection  urn:groove.net:Connection
y urn:groove.net:Connection Name"FormsListCombobox
 ConnectionID0q urn:groove.net:Connection NameSearchButton
 ConnectionID1m urn:groove.net:Connection NameResetButton
 ConnectionID2q urn:groove.net:Connection NameCancelButton</
 ConnectionID3u urn:groove.net:Connection NameWebBrowserViewm
 ConnectionID4q urn:groove.net:Connection NameOrRadioButton
 ConnectionID5uurn:groove.net:Connection
  NameAndRadioButtonl
 ConnectionID6y  urn:groove.net:Connection NameFormsListLabelC
 ConnectionID405 
 urn:groove.net:Connection Name*FormsSearchOrAndLabel
 ConnectionID406 urn:groove.net:Component Name$PrintViewContainerov  urn:groove.net:Compone
e# urn:groove.net:ComponentConnections urn:groove.net:PropertyList{  urn:groove.net:Componen
ource URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn
:groove.net:ComponentConnections urn:groove.net:Connectionm urn:groove.net:Connection
 ConnectionID0 NamePrintLayout  urn:groove.net:PropertyList PreferredHeight270 PreferredWidt
#_Version
urn:groove.net:Component^
Name
SCRIPT
SCRIPT
SCRIPTINTERFACE
SCRIPT
urn:groove.net:PropertyList
URL2
urn:groove.net:ComponentConnections
urn:groove.net:ComponentResource
hMtatcpr4:o,/C1/o,cd0oe,mC0po|odneenturn:groove.net:ComponentResource
s.groove.wnet/Groove/Components/Root.osd?Package=net.groove.Groov
q#eName
.urn:groove.net:ComponentConnections
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
urn:groove.net:Connection
TooMlaCcormopNoanmeenEtdsi.tGrooveCommonComponents_DLL&Version=0&Factory=ScriptHost2
 Name*
ConnectionID
urn:groove.net:Connection
MacroLan1guageComboBox
 Name"
ConnectionID
urn:groove.net:Connection
MacroCod2eyTextView
 Name(
ConnectionID
urn:groove.net:Connection
MacroScr3iptHeadLabel
 Name$
ConnectionID
urn:groove.net:Connection
MacroSco4p}eComboBoxe
 Name
ConnectionID
urn:groove.net:Connection
MoreCodeB5uttonn
 Name0
ConnectionID
urn:groove.net:Connection
CreateLo6okupStringButton
 Name
ConnectionID
urn:groove.net:Connection
HelpButto9nq
 Name
ConnectionID
urn:groove.net:Connection
MacroName1L0aybel
 Name$
ConnectionID
urn:groove.net:Connection
MacroLan4g0u4ageLabell
 Name
ConnectionID
urn:groove.net:Connection
MacroScop4e0L4aybel
 SCRIPT
SRCDhttp://co4m0p4oqnents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
ConnectionID
e.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Version=5&Factory=Op
eSRC6
nonahttp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
SCRIPT
eLIBIDL
.ToolC{o3m6p6oDnFeDn5t1s-.2GCr2o2o-v4e3R8idc-h9T1e3x5t-C5o0m9m3aEn3d1B0a2r4H4e7l}poerx3IIDL
SCRIPTINTERFACE _GSL{&CVDeDrBs0i2o6n2=-3A&8FEa7c-t4o2rby0=-O9p9e6n2{-4089F4F778
1E}me 
function InitializeMacro
SubForm(i_Designer, i_UIDelegate, i_pSandboxedDesign, i_pMacro, i_PasteMacroExis
ts)
{
g_IsInitializing
= true;
g_CallbackCode =
i_Designer;
g_pIFormsToolSan
dbox = i_pSandboxedDesign;
g_UIDelegate = i
_UIDelegate;
InitializeCompon
entStrings();
if (i_PasteMacro
Exists && (i_pMacro.Scope != 5))
{
if (Macr
oScopeComboBox.Count > 5)
MacroScopeComboBox.RemoveItemByIndex(5);
}
else
{
var Priv
= g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
var PAST
ED_RECORDS = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_PASTED_REC
ORDS);
if (Macr
oScopeComboBox.Count < 6)
MacroScopeComboBox.AddItem(PASTED_RECORDS);
}
var MacroInstanc
e = new ScriptInstance;
MacroInstance.Na
me = i_pMacro.IGrooveFormsToolDesignObject.Name;
MacroInstance.La
nguage = i_pMacro.Language;
MacroInstance.Sc
riptCode = i_pMacro.MacroCode;
InitScriptEditor
(MacroInstance, i_pMacro);
g_IsInitializing
= false;
}
function GetIsNew()
{
return g_IsNew;
}
function GetMacro()
{
return g_Current
Macro;
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
 ,SCRIPT ,
/* #####################
###########
### GLOBAL VARIAB
LES ###
#####################
########### */
var g_Instance = null;
var g_SystemScript = "";
var g_CurrentMacro = nul
l;
var g_MoreCode = "";
var g_UIDelegate;
var g_pIFormsToolSandbox
;
var g_IsNew = false;
var g_IsInitializing = f
alse;
var g_THIS_SPACE ;
var g_THIS_TOOL;
function ScriptInstance(
i_Name, i_Language, i_ScriptCode)
{
this.Name = i_Na
me;
this.Language =
i_Language;
this.ScriptCode
= i_ScriptCode;
}
function InitializeCompo
nentStrings()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
MacroNameLabel.S
etText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_MACRO_NAME));
MacroLanguageLab
el.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_MACRO_LANGUAGE));
MacroScopeLabel.
SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_MACRO_RUN_ON));
HelpButton.Label
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_MACRO_HELP);
MoreCodeButton.L
abel = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_MACRO_MORE_CODE);
MoreCodeButton.T
ooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_ADD_MORE_CO
DE);
CreateLookupStri
ngButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_MACRO_CREAT
E_LOOKUP);
g_THIS_SPACE = P
riv.GetResourcedString(IDS_FORMS_TOOL_COMMON_THIS_WORKSPACE);
g_THIS_TOOL = Pr
iv.GetResourcedString(IDS_FORMS_TOOL_COMMON_THIS_TOOL);
// Comboboxes an
d listboxes
MacroScopeComboB
ox.ResetContent();
MacroScopeComboB
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_ALL_RECORDS)
);
MacroScopeComboB
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_ALL_RECORDS_
IN_VIEW));
MacroScopeComboB
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_SELECTED_REC
ORDS));
MacroScopeComboB
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_ALL_NW_AND_M
OD));
MacroScopeComboB
ox.AddItem(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ITEM_ALL_UNREAD))
;
}
function OnSetUIProperti
es()
{
MacroScriptHeadL
abel.SetText("function RunMacro (i_FormRecord, i_FormsToolUIDelegate)\n{");
}
/* #####################
#########
### OBJECT CONTRO
LS ###
#####################
######### */
function SaveMacro()
{
try
{
var Scri
ptName = MacroNameEdit.Text;
if (Scri
ptName == "")
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
g_UIDelegate.DisplayOKMessageBox(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS
_GRP_MACRO_MST_ENTER_NAME), Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_
MACRO_MST_ENTER_NAME_TITLE));
return false;
}
else
{
// Get the language of the script.
var ScriptLanguage = MacroLanguageComboBox.GetSelectionText();
g_Instance.Language = ScriptLanguage;

/*
// Get the script name and repair it if extension is missing.
if (ScriptName.lastIndexOf(".") == -1)
{
if (ScriptLanguage == "JavaScript")
ScriptName += ".js";
else if (ScriptLanguage == "VBScript")
ScriptName += ".vbs";
}
*/

// Get the script code depending on the script type.


var ScriptCode = "";
SaveScriptFunctionBlock();
ScriptCode = g_SystemScript;

// Remove script tags from script code if they are included.


ScriptCode = ScriptCode.replace(/<\/?script[^>]*>/gi, "");
ScriptCode = ScriptCode.replace(/\x0D/gi, "\n");

g_Instance.Name = ScriptName;
g_Instance.ScriptCode = ScriptCode;

if (g_Instance.Name != g_CurrentMacro.IGrooveFormsToolDesignObject.Name)
g_CurrentMacro.Rename(g_Instance.Name);
g_CurrentMacro.Language = g_Instance.Language;
g_CurrentMacro.MacroCode = g_Instance.ScriptCode;
g_CurrentMacro.Scope = parseInt(MacroScopeComboBox.GetSelectionIndex());
g_CurrentMacro.AdditionalCode = g_MoreCode;

return true;
}
}
catch (error)
{
g_UIDele
gate.DisplayError(error);
return f
alse;
}
}

/* #####################
###########
### PRIVATE FUNCT
IONS ###
#####################
########### */
function SaveScriptFunct
ionBlock()
{
var MacroScript
= "";
// Make sure to
create the correct function block for the given language.
var Language = M
acroLanguageComboBox.GetSelectionText();
if (Language ==
"VBScript")
MacroScr
ipt = "Function RunMacro(i_FormRecord, i_FormsToolUIDelegate)\n" + MacroCodeText
View.TextContent.PlainText + "\nEnd Function";
else
MacroScr
ipt = "function RunMacro(i_FormRecord, i_FormsToolUIDelegate){" + MacroCodeTextV
iew.TextContent.PlainText + "}";
// Insert the ne
w script into the global script.
g_SystemScript
= MacroScript;
}
function LoadScriptFunct
ionBlock()
{
var JSBegin = "f
unction RunMacro(i_FormRecord, i_FormsToolUIDelegate){";
var VBBegin = "F
unction RunMacro(i_FormRecord, i_FormsToolUIDelegate)\n";
var JSEnd = "}";
var VBEnd = "End
Function";
var intBegin, in
tBeginLenth, intEnd;
var Language = M
acroLanguageComboBox.GetSelectionText();
if (Language ==
"VBScript")
{
intBegin
= g_SystemScript.indexOf(VBBegin);
intBegin
Length = VBBegin.length;
intEnd =
g_SystemScript.lastIndexOf(VBEnd);
// Leave
these in for backwards compatibility.
if (intB
egin == -1)
intBegin = g_SystemScript.indexOf(JSBegin);
if (intE
nd == -1)
intEnd = g_SystemScript.lastIndexOf(JSEnd);
}
else
{
intBegin
= g_SystemScript.indexOf(JSBegin);
intBegin
Length = JSBegin.length;
intEnd =
g_SystemScript.lastIndexOf(JSEnd);
}
// Get the scrip
t block and insert it into the text view.
MacroCodeTextVie
w.TextContent.PlainText = g_SystemScript.substring(intBegin + intBeginLength, in
tEnd);
}
function DismissWindow(i
_Result)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(i_R
esult);
Window.Destroy(i
_Result);
}
function MacroNameEdit_O
nChange(i_Name)
{
if (!g_IsInitial
izing)
g_Callba
ckCode.SetIsDirty(true);
}
function MacroLanguageCo
mboBox_OnSelectionChange(i_Name, i_Item)
{
if (!g_IsInitial
izing)
g_Callba
ckCode.SetIsDirty(true);
}
function MacroScopeCombo
Box_OnSelectionChange(i_Name, i_Item)
{
if (!g_IsInitial
izing)
g_Callba
ckCode.SetIsDirty(true);
}
function MacroCodeTextVi
ew_OnChange()
{
if (!g_IsInitial
izing)
g_Callba
ckCode.SetIsDirty(true);
}
function MoreCodeButton_
OnCommand(i_UICommand)
{
var MoreMacroCod
eSubForm = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCompo
nentByName("MoreMacroCodeSubForm");
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var WindowTitle
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_MACRO_MORE_CODE);
var Window = Pri
v.CreateWindowForSubFormPrivate(WindowTitle, MoreMacroCodeSubForm, GROOVE_NULL);
// Stop if not c
onnected to delegate.
var b = Window.D
oesDelegateComponentExist();
if (b == false)
return;
var MoreMacroCod
eSubFormHost = Window.OpenDelegateComponent();
var MoreMacroCod
eSubFormCode = MoreMacroCodeSubFormHost.GetScriptDispatch();
// Initialize di
alog
MoreMacroCodeSub
FormCode.InitializeDialog(g_UIDelegate, g_MoreCode);
var Result = Win
dow.DoModal();
if (Result == Gr
ooveWindowResult_OK)
{
g_MoreCo
de = MoreMacroCodeSubFormCode.GetMoreCode();
g_Callba
ckCode.SetIsDirty(true);
}
Window.Destroy()
;
}
function CreateLookupStr
ingButton_OnCommand(i_UICommand)
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var Language = M
acroLanguageComboBox.GetSelectionText();
var Window = Pri
v.CreateWindowForSubFormByNamePrivate(Priv.GetResourcedString(IDS_FORMS_TOOL_SUB
FORMS_GRP_MACRO_CREATE_LOOKUP), "LookupStringGeneratorSubForm", GROOVE_NULL);
var LookupHost =
Window.OpenDelegateComponent();
LookupHost.IGroo
veFormsToolLookupStringGeneratorSubFormPrivate.InitializeDialog(g_CallbackCode,
g_UIDelegate, Language, GrooveFormsLookupContext_MacroScript, g_CurrentMacro.IGr
ooveFormsToolDesignObject);
var Result = Win
dow.DoModal();
Window.Destroy()
;
}
function HelpButton_OnCo
mmand(i_UICommand)
{
App.IGrooveAppli
cation2.LaunchHelpFile(HID_Groove_Forms3xAboutMacros);
}
/* #####################
###########
### PUBLIC FUNCTI
ONS ###
#####################
########### */
function GetHelpProvider
()
{
try
{
var RTFH
elpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCo
mponentByName("RTFHelpProvider");
return R
TFHelpProvider;
}
catch(error)
{
}
finally
{
RTFHelpP
rovider = null;
delete R
TFHelpProvider;
CollectG
arbage();
}
}
function InitScriptEdito
r(i_Instance, pMacro)
{
g_CurrentMacro =
pMacro;
if (!g_pIFormsTo
olSandbox.Macros.DoesExist(pMacro.IGrooveFormsToolDesignObject.ID))
g_IsNew
= true;
else
g_IsNew
= false;
// Reset all inp
ut controls for new instance.
MacroNameEdit.Te
xt = "";
MacroLanguageCom
boBox.SetSelectionByIndex(0);
MacroScopeComboB
ox.SetSelectionByIndex(2);
MacroCodeTextVie
w.TextContent.PlainText = "";
// now init from
the instance
MacroNameEdit.Te
xt = i_Instance.Name;
MacroLanguageCom
boBox.SetSelectionByText(i_Instance.Language);
MacroScopeComboB
ox.SetSelectionByIndex(g_CurrentMacro.Scope);
g_Instance = i_I
nstance;
// Always displa
y the global script block by default.
g_SystemScript =
i_Instance.ScriptCode;
LoadScriptFuncti
onBlock();
g_MoreCode = g_C
urrentMacro.AdditionalCode;
}
function ThrowError(i_De
scription)
{
var objError = n
ew Error(-213546871, i_Description);
throw objError;
}
 urn:groove.net:Component
EnforceInterfaces1  __Version
NamePrint4S,u1b,F0o,r0m`ut  urn:groove.net:ComponentResource
q urn:groove.net:PropertyList  urn:groove.net
nentGroup
URL*http:o//curn:groove.net:ComponentResource
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=SubForm. urn:groove.net:
ComponentGroup
HelpInfoProviderRTFHelpProviderDelegate  PrintControlCodet DefaultView$PrintViewContainerov u
:groove.net:Component urn:groove.net:Component urn:groove.net:Component) urn:groove.net:Compo
ent/ urn:groove.net:Component4 urn:groove.net:ComponentR urn:groove.net:ComponentX urn:groove
t:Component^ urn:groove.net:Componentd urn:groove.net:Componentj urn:groove.net:Componentp ur
roove.net:Componentx urn:groove.net:Component| urn:groove.net:Component  urn:groove.net:Compo
ent  urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component urn:groo
tLayout  urn:groove.net:ComponentResource urn:groove.net:PropertyList   urn:groove.net:Compo
esource URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.
Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayo
utx urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout LayoutC Layout
et:PropertyValue MULTIROW  PMULTIROW
  ROW ROW ROW ROW( ROW CELL2 CELL HEIGHT12( ROW
 CancelButton1 CELL WIDTH10 ) urn:groove.net:Component NamePageTitle  urn:groove.net:Compo
et:PropertyListo*  urn:groove.net:ComponentResource) URL(http://components.groove.net/Groove
/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompon
ents_DLL&Version=0&Factory=Static urn:groove.net:PropertyList)
 VAlignment
Centere Label
Print  FontStyleDialogTitleText  __Version4,1,0,0   S  L X/ urn:groove.net:Compo
r  urn:groove.net:ComponentResource0# urn:groove.net:ComponentConnections1 urn:groove.net:
PropertyList{0  urn:groove.net:ComponentResource/ URL6http://components.groove.net/Groove/Co
mponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponent
s_DLL&Version=0&Factory=ViewContainer]1# urn:groove.net:ComponentConnections/ urn:groove
.net:Connection2y2 urn:groove.net:Connection1
 ConnectionID0 Name PrintInnerLayoutsiT urn:groove.net:PropertyList/  __Version4,1,0,04
omponent Name PrintInnerLayoutsi  urn:groove.net:ComponentResource5 urn:groove.net:PropertyL
ist 5  urn:groove.net:ComponentResource4 URL:http://components.groove.net/Groove/Components/
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList4  __Version4,1,0,0  _G_L
tC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTIROW    MULTIROW

I CELL HEIGHT32Y NewPageRadioButton1 CELL WIDTH20 B  ROW CELL CELL CELL1 C
d CELL HEIGHT47I  BottomPad15 ImmediateRadioButton1 CELL WIDTH20 (  RO
 PrintThroughFormRadioButtonB ROW CELL CELL CELL1 CELL WIDTH20   CELL NAME
tThroughFormNameComboBox1 CELL WIDTH20 ( ROW CELLA CELL HEIGHT0 WebBrow
n  urn:groove.net:ComponentResourceY urn:groove.net:PropertyListoY  urn:groove.net:Component
esourceX URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groov
e.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groov
e.net:PropertyListX StyleRadiobutton Label"Print all records RadiobuttonTruea  __Version4
,1,0,0^ urn:groove.net:Component Name$NewPageRadioButton   urn:groove.net:Comp
esource_ urn:groove.net:PropertyListo_  urn:groove.net:ComponentResource^ URL(http://compone
groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.G
rooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyList^ StyleRadio
utton Label2Each record on a new page RadiobuttonTruea  __Version4,1,0,0d urn:groove.net:C
$NewLineRadioButtono  urn:groove.net:ComponentResourcee urn:groove.net:PropertyListoe  urn:g
oove.net:ComponentResourced URL(http://components.groove.net/Groove/Components/Root.os
d?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&
Factory=Buttone urn:groove.net:PropertyListd StyleRadiobutton LabellEach record one blank li
eneath the previous recordl RadiobuttonTruea  __Version4,1,0,0j urn:groove.net:Component
(ImmediateRadioButtonce  urn:groove.net:ComponentResourcek urn:groove.net:PropertyListok  ur
:groove.net:ComponentResourcej URL(http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
= 0urn:groove.net:PropertyListj
&Factory=Buttone  StyleRadiobutton LabelfEach record immediately beneath the pre
us record RadiobuttonTruea  __Version4,1,0,0   urn:groove.net:Component NameLinepo  urn:
ntResource  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource  URL(http://comp
ove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groo
veCommonComponents_DLL&Version=0&Factory=Static   urn:groove.net:PropertyList  BackgroundStyl
eparator  __Version4,1,0,0D   9  =     p urn:groove.net:Component Name6PrintThr
mponentResources urn:groove.net:PropertyListos  urn:groove.net:ComponentResourcep URL(http:/
ponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComp
onents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyLis
tp StyleRadiobutton LabelDPrint selected record through form RadiobuttonTruea  __Version4
,1,0,0x urn:groove.net:Component Name8PrintThroughFormNameComboBoxe  urn:groove.net:Compone
ourcey urn:groove.net:PropertyListsy  urn:groove.net:ComponentResourcex URL,http://component
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
oveCommonComponents_DLL&Version=0&Factory=ComboBox
 urn:groove.net:PropertyListx TooltipnSelect the form to use for printing the selected reco
rd  __Version4,1,0,0| urn:groove.net:Component DisplayName Web Browser View NameWebBro
rn:groove.net:ComponentResource} urn:groove.net:PropertyList }   urn:groove.net:ComponentReso
urce| URLLhttp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.G
roove.ToolComponents.GrooveWebBrowserTool_DLL&Version=2,6&Factory=WebBrowserCont
rolWrapperpo urn:groove.net:PropertyList| ReturnSafeForScriptingExternal Truea DisableMnemonic
ResourceID:4366,4367,4368,4369,4370,4371 DisableNavigationSound Truea  __Version4
,1,0,0   urn:groove.net:Component NameOKButton:  urn:groove.net:ComponentResource  urn:groov
Listo   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/Components
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=Buttone urn:groove.net:PropertyList  DefaultTruea StyleStandardButtonb LabelOKg:
,URL$
1urn:groove.net:ComponentResource
urn:groove.net:Component^
Name
urn:groove.net:PropertyList
,0,hM0tatcpr:o/N/acmoemEpdointenturn:groove.net:ComponentResource
s.groove.knet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=EditNam urn:groove.net:
PropertyList  TextLimit250  __Version4,1,0,0P    $     %     urn:groove.net:Component Name
oove.net:PropertyListo   urn:groove.net:ComponentResource  URL(http://components.groove.net/
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyList  CancelTruea StyleStandardB
bel
Cancelo  __Version4,1,0,0  urn:groove.net:Component Name PrintControlCodet  urn:groove.net:
Resource # urn:groove.net:ComponentConnections     urn:groove.net:ComponentResource  URLHhttp
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.SystemCompone
nts.GrooveResource_DLL&Version=0&Factory=FormsToolPrintDialogDelegatea #  urn:groove.net
:ComponentConnections 
 urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.
ection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:
Connection  urn:groove.net:Connection  urn:groove.net:Connection  urn:groove.net:Connection 
net:Connection   urn:groove.net:Connection  Name(PrintViewRadioButton/>
 ConnectionID0}  urn:groove.net:Connection  Name&PrintAllRadioButton
 ConnectionID1}  urn:groove.net:Connection  Name$NewPageRadioButton
 ConnectionID2}  urn:groove.net:Connection  Name$NewLineRadioButtono
 ConnectionID3   urn:groove.net:Connection  Name(ImmediateRadioButtonce
 ConnectionID4   urn:groove.net:Connection  Name6PrintThroughFormRadioButton
 ConnectionID5   urn:groove.net:Connection  Name8PrintThroughFormNameComboBoxe
 ConnectionID6u  urn:groove.net:Connection  NameWebBrowserViewm
 ConnectionID7y  urn:groove.net:Connection  Name PrintInnerLayoutsi
 ConnectionID8i  urn:groove.net:Connection  NameOKButton:
 ConnectionID9u  urn:groove.net:Connection  NameCancelButton</
 ConnectionID10m urn:groove.net:Connection  NamePageTitle
 ConnectionID404  urn:groove.net:Componentd NameCreatedDate  urn:groove.net:ComponentResour
t:PropertyListo   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/C
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=Staticy urn:groove.net:PropertyList   FontStyleLabelText  _
_Version4,1,0,0h  p   h urn:groove.net:Component Name"MonthPopupSubForm  urn:groove.
ve.net:ComponentGroup o   urn:groove.net:ComponentResource URL*http://components.groove.net/
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=SubForm(  urn:groove.net:ComponentGroup DefaultViewMonthPopupVi
Pa DelegateMonthPopupGluepo ResourceBundleURLhttp://components.groove.net/Groove/Componen
ts/Root.osd?Package=net.groove.Groove.Tools.General.Calendar.MonthPopupGRP_RBD&V
ersion=0Po urn:groove.net:Component  urn:groove.net:Component urn:groove.net:Component urn:
t:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component ur
t:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component
onent NameDateTimeSubForm  urn:groove.net:ComponentResource urn:groove.net:ComponentGroupo
.net:ComponentResource URL*http://components.groove.net/Groove/Components/Root.osd?Pack
age=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factor
yurn:groove.net:Component
=SubFormI urn:groove.net:ComponentGroup
 urn:groove.net:Component  Delegate$
 Daurn:groove.net:Component
teTimeUIDelegate DefaultView  urn:groove.net
ViewContaine
nt urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.
nt urn:groove.net:Component urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component NameViewContainer  urn:groove.net:ComponentResource# urn:groov
Connections urn:groove.net:PropertyList
{  urn:groove.net:ComponentResource URL6http://components.groove.net/Groove/Components/Root
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&Factory=ViewContainer]# urn:groove.net:ComponentConnections urn:groove.net:Connectionu u
e.net:Connection
 ConnectionID0 NameDateTimeLayouta 
 urn:groove.net:PropertyList PreferredHeight240 PreferredWidth440  __Version4,1,0,0 
TimeLayouta  urn:groove.net:ComponentResource urn:groove.net:PropertyList   urn:groove.net:
entResource URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.gro
ove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=HTMLTable
Layoutx urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout Layout
C
Burn:groove.net:PropertyValue
Layout urn:groove.net:PropertyValue
 TABLE
HSPACE
x5TABLE
VSPACE5 TR TR TR TR TR; TR TD TD TDs TD TabOrder
 2 WIDTH26 LeftPad2RightPad
 2 Prevs TD T
 MonthTitle0 TR TD TD TD COLSPAN3 ROWSPAN3  BottomPad5RightPad
 2 LeftPad2TabOrder
 1 TopPad
 CalendarView  TD TopPad5  BottomPad5 HEIGHT34e WIDTH210 LeftPad10OKButton%
  TR TDm TD H
 CancelButton% TR TD TD0 TR TD TD TD COLSPAN3  BottomPad5 HEIGHT45RightPad  2 LeftPad2 NAME&I
omponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http:/
ts.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponent
s.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyList   _
_Version4,1,0,0 Style&SmallIconTextButton
 ImageWidth16
 ImageMaskURL`grooveFile:///ToolBMPs\Arrows16x16ImagesMask.bmp.ImageURLX  grooveFile:/
//ToolBMPs\Arrows16x16Images.jpgDe WantsEventsTruea
 ImageIndex0 ImageHeight16  urn:groove.net:Componentd NameModifiedDate:C  urn:groove.net:Co
groove.net:PropertyListo   urn:groove.net:ComponentResource  URL(http://components.groove.net
oove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCo
mponents_DLL&Version=0&Factory=Staticy urn:groove.net:PropertyList   FontStyleLabelText
 __Version4,1,0,0X  d    urn:groove.net:Component NameMonthTitlert  urn:groove.net:Co
tyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Component
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=Static urn:groove.net:PropertyList Style
NormaltR Label  __Version4,1,0,0 _G_Font Font< Font urn:groove.net:FontDesc    urn:groove.ne
t16  StyleBoldtrue  urn:groove.net:Component Name Next"/  urn:groove.net:ComponentResourc
:PropertyList!o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/C
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=Buttone! urn:groove.net:PropertyList   __Version4,1,0,0 Style&Small
conTextButton
 ImageWidth16
 ImageMaskURL`grooveFile:///ToolBMPs\Arrows16x16ImagesMask.bmp.ImageURLX  grooveFile:/
//ToolBMPs\Arrows16x16Images.jpgDe WantsEventsTruea
 ImageIndex1 ImageHeight16 urn:groove.net:Component NameInnerMiddleView  urn:groove.net:C
:groove.net:ComponentConnections urn:groove.net:PropertyList"{  urn:groove.net:ComponentRes
ource URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn
:groove.net:ComponentConnections urn:groove.net:Connectiony urn:groove.net:Connection
 ConnectionID0 Name"InnerMiddleLayoutT" urn:groove.net:PropertyList  __Version4,1,0,0
t:Component Name"InnerMiddleLayout  urn:groove.net:ComponentResource urn:groove.net:Propert
st#   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Components/R
osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=
0&Factory=MultiCellLayoutx# urn:groove.net:PropertyList  __Version4,1,0,0  _G_L
t$C$ Layout# urn:groove.net:PropertyValue%E% urn:groove.net:PropertyValue$ MULTICOL&  ,&MULTICOL

T18s  TimeLabelC) CELL' HEIGHT22l
 TimeComboBoxx       u    urn:groove.net:Component NameTimeLabel  urn:groove.net:Compo
roove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd
?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&F
actory=Static* urn:groove.net:PropertyList
 VAlignment
Centere  FontStyleLabelText Label
Time:  __Version4,1,0,0
 urn:groove.net:Component NameTimeComboBox/>  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList+s
  urn:groove.net:ComponentResource
 URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
+ urn:groove.net:PropertyList
 EditableTruea TabStopTruea MultiSelect
False  __Version4,1,0,0 
 urn:groove.net:Component NameOKButton:  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList,o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone, urn:groove.net
:PropertyList
 DefaultTruea StyleStandardButtonb LabelOKg:  __Version4,1,0,0
 urn:groove.net:Component NameCancelButton</  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList-o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone- urn:groove.net
:PropertyList
 CancelTruea StyleStandardButtonb Label
Cancelo  __Version4,1,0,0(
 urn:groove.net:Component'
 Name2ViewSelectionCriteriaView  urn:groove.net:ComponentResource)
# urn:groove.net:ComponentConnections-
 urn:groove.net:PropertyList/{)
  urn:groove.net:ComponentResource(
 URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]-
# urn:groove.net:ComponentConnections(
 urn:groove.net:Connection.
 .
 urn:groove.net:Connection-

 ConnectionID0 Name6ViewSelectionCriteriaLayout /  urn:groove.net:PropertyList(
 PreferredHeight590 PreferredWidth768  __Version4,1,0,0  4    h    
 urn:groove.net:Component Name$DateTimeUIDelegate  urn:groove.net:ComponentResource
# urn:groove.net:ComponentConnections
 SCRIPT"
 SCRIPTINTERFACE#
 SCRIPT$
 urn:groove.net:PropertyList.w
  urn:groove.net:ComponentResource
 URL2http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ScriptHost2m
# urn:groove.net:ComponentConnections
  urn:groove.net:Connection
 urn:groove.net:Connection
 urn:groove.net:Connection
 urn:groove.net:Connection
 urn:groove.net:Connection
 urn:groove.net:Connection
 urn:groove.net:Connection
 urn:groove.net:Connection
 urn:groove.net:Connection!
a
 urn:groove.net:Connection
 NamePrevl"
 ConnectionID0m
 urn:groove.net:Connection
 NameMonthTitlert
 ConnectionID1a
 urn:groove.net:Connection
 NameNext"/
 ConnectionID2q
 urn:groove.net:Connection
 NameCalendarViewon
 ConnectionID3q
 urn:groove.net:Connection
 NameTimeComboBox/>
 ConnectionID4i
 urn:groove.net:Connection
 NameOKButton:
 ConnectionID5q
 urn:groove.net:Connection
 NameCancelButton</
 ConnectionID6u
 urn:groove.net:Connection
 NameDateTimeLayouta
 ConnectionID7m!
 urn:groove.net:Connection
 NameTimeLabel
 ConnectionID404q"
 SCRIPT
 SRCDhttp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Version=5&Factory=Op
enon#
 SCRIPTINTERFACE
 LIBIDL{366DFD51-2C22-438d-9135-5093E3102447}ox IIDL{BA91287E-7800-41d0-AC54-CA50691D2C
DC}d NAMEJIGrooveFormsToolDateTimeDialogPrivate 
function InitializeDialo
g(i_pUIDelegate, i_InitialDate, i_ShowTime)
{
g_UIDelegate = i
_pUIDelegate;
InitializeCompon
entStrings();
ShowHideCellCont
ents("InnerMiddleView", DateTimeLayout, 45, !i_ShowTime);
SetSelection(i_I
nitialDate);
}
function OpenSelectedDat
eTime()
{
return GetDateTi
me();
}
+$
 SCRIPT
 
/* #####################
##########
### GLOBAL VARIAB
LES ###
#####################
########## */
var g_UIDelegate;
var m_Start = 0, m_End =
0, m_Time = 0, m_DateTime = 0;
var DATE_STYLE = GrooveI
ntlDateFormatStyle_Short;
var TIME_STYLE = GrooveI
ntlDateFormatStyle_Short;
var TIME_PICKER_INTERVAL
= 15;
var DEFAULT_HOUR = 8;
var DEFAULT_MINUTE = 0;
function InitializeCompo
nentStrings()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
TimeLabel.SetTex
t(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_DT_TM_TIME));
OKButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
CancelButton.Lab
el = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
UpdateTitle();
}
/* #####################
###########
### EVENT FUNCTI
ONS ## #
#####################
########### */
function OnViewContainer
Show()
{
CalendarView.Sho
wGridHeader = false;
}
/* #####################
##########
### OBJECT CONTRO
LS ###
#####################
########## */
function Prev_OnCommand(
URL, Data)
{
CalendarView.Scr
ollPrev();
}
function Next_OnCommand(
URL, Data)
{
CalendarView.Scr
ollNext();
}
function CalendarView_On
DblClickCell(i_Date, i_ClickedHeader)
{
CloseWindow();
}
function CalendarView_On
GridExtentsChanged(i_Start, i_End)
{
UpdateTitle();
}
function CalendarView_On
CalendarCommand(i_Command)
{
if (i_Command ==
GrooveCalendarCommand_NewEntry)
CloseWin
dow();
}
function TimeComboBox_On
DropDown(i_Name)
{
ValidateTime();
FillTimeCombo(Ti
meComboBox);
if (-1 == TimeCo
mboBox.FindStringExact(0, TimeComboBox.Text))
{
// Inser
t the selected time at the appropriate point if it doesn't exist.
var Star
t = CalendarView.SelectionStart;
var DayS
tart = StartOfDay(Start);
var NumM
illis = EndOfDay(Start) - DayStart + 1;
var Mill
Offset = Start - DayStart;
var Inde
x = Math.floor((MillOffset * TimeComboBox.Count) / NumMillis) + 1;
var Adde
dIndex = TimeComboBox.InsertItem(Index, TimeComboBox.Text);
TimeComb
oBox.SetSelectionByIndex(AddedIndex);
}
}
function TimeComboBox_On
SelectionChange(i_Name, i_Item)
{
TimeComboBox.Tex
t = i_Item;
ValidateTime();
}
function TimeComboBox_On
ComboBoxKillFocus(i_Name)
{
ValidateTime();
}
function OKButton_OnComm
and(URL, Data)
{
CloseWindow();
}
function CancelButton_On
Command(URL, Data)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_Cancel);
Window.Destroy(G
rooveWindowResult_Cancel);
}
/* #####################
##########
### INTERNAL FUNCT
IONS ###
#####################
########## */
function UpdateTitle()
{
MonthTitle.SetTe
xt(CalendarView.FormatMonthAndYear());
}
function SetSelection(i_
Date)
{
// Set the selec
ted day in the calendar view.
CalendarView.Set
Selection(i_Date, i_Date);
CalendarView.Scr
ollToSelectionStart();
// Set the selec
ted time in the time combobox.
TimeComboBox.Tex
t = FormatTime(i_Date, TIME_STYLE);
}
function CloseWindow()
{
// Save the sele
ctions.
m_Start = Calend
arView.SelectionStart;
m_End = Calendar
View.SelectionEnd;
m_Time = ParseTi
me(TimeComboBox.Text, TIME_STYLE);
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_OK);
Window.Destroy(G
rooveWindowResult_OK);
}
function GetStartDate()
{
return m_Start;
}
function GetEndDate()
{
return m_End;
}
function GetTime()
{
return m_Time;
}
function GetDateTime()
{
// Combine the d
ate and time into a single date/time count.
var DateString =
FormatDate(m_Start, DATE_STYLE);
var TimeString =
FormatTime(m_Time, TIME_STYLE);
var TempMillis =
g_UIDelegate.IGrooveFormsToolUIDelegatePrivate.ParseDateAndTime(DateString, Tim
eString, DATE_STYLE, TIME_STYLE);
return TempMilli
s;
}
function ValidateTime()
{
var Time = Parse
Time(TimeComboBox.Text, TIME_STYLE);
if (isNaN(Time))
{
var Cale
ndar = CreateCalendar(CalendarView.SelectionStart);
// Reset
to  the default hour and minute if there was an error.
Calendar
.Set(GrooveIntlCalendarField_HourOfDay, DEFAULT_HOUR);
Calendar
.Set(GrooveIntlCalendarField_Minute, DEFAULT_MINUTE);
Time = C
alendar.DateTime.RawDateTime;
}
TimeComboBox.Tex
t = FormatTime(Time, TIME_STYLE);
}
function FillTimeCombo(i
_ComboBox)
{
var Text = i_Com
boBox.Text;
i_ComboBox.Reset
Content();
i_ComboBox.Text
= Text;
var Calendar = C
reateCalendar(CalendarView.SelectionStart);
// Reset the cal
endar to midnight so we can add times from the entire day.
Calendar.Set(Gro
oveIntlCalendarField_HourOfDay, 0);
Calendar.Set(Gro
oveIntlCalendarField_Minute, 0);
Calendar.Set(Gro
oveIntlCalendarField_Second, 0);
Calendar.Set(Gro
oveIntlCalendarField_Millisecond, 0);
var DayOfMonth =
Calendar.Get(GrooveIntlCalendarField_DayOfMonth);
do
{
i_ComboB
ox.AddItem(FormatTime(Calendar.DateTime.RawDateTime, TIME_STYLE));
Calendar
.Add(GrooveIntlCalendarField_Minute, TIME_PICKER_INTERVAL);
}
while (DayOfMont
h == Calendar.Get(GrooveIntlCalendarField_DayOfMonth));
}
function GetSelectionSpa
nsDays()
{
return SpansDays
(m_Start, m_End);
}
q. urn:groove.net:PropertyList
 EnforceInterfaces1  __Version4,1,0,0%
 urn:groove.net:Component Name8ViewSelectionCriteriaSubForm  urn:groove.net:ComponentResourc
e&
 urn:groove.net:ComponentGroup'
o&
  urn:groove.net:ComponentResource%
 URL*http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=SubForm'
 urn:groove.net:ComponentGroup%
 HelpInfoProviderRTFHelpProviderDelegate2
 ViewSelectionCriteriaCode DefaultView2ViewSelecti
onCriteriaView urn:groove.net:Component(
 urn:groove.net:Component/
 urn:groove.net:Component<
 urn:groove.net:ComponentA
 urn:groove.net:ComponentY
 urn:groove.net:Component]
 urn:groove.net:Componentj
 urn:groove.net:Component~
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
 urn:groove.net:Component
/urn:groove.net:ComponentZ
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component(
urn:groove.net:Component.
urn:groove.net:Component3
urn:groove.net:Component9
5  
 urn:groove.net:Component'
 Name6ViewSelectionCriteriaLayout  urn:groove.net:ComponentResource0
 urn:groove.net:PropertyList0 0
  urn:groove.net:ComponentResource/
 URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx0 urn:
groove.net:PropertyList/
  __Version4,1,0,0  _G_Layout Layout1C1 Layout0 urn:groove.net:PropertyValue2E2
ue1 MULTIROW3
 83MULTIROW2
  ROW4 ROW6(4 ROW3 CELL5o5 CELL4 RightPad
 5 LeftPad5' ViewSelectionCriter
6 HEIGHT34e|8 CELL6 WIDTH250 TopPad5  BottomPad5 NAMELeftButton <19 CELL6 WIDTH10 :  C
tton WIDTH250 TopPad5OKButton
 <
 urn:groove.net:Component'
 NameNViewSelectionCriteriaInnerViewContainer  urn:groove.net:ComponentResource=
# urn:groove.net:ComponentConnections>
 urn:groove.net:PropertyList;{=
  urn:groove.net:ComponentResource<
 URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]>
# urn:groove.net:ComponentConnections<
 urn:groove.net:Connection?
 ?
 urn:groove.net:Connection>

 ConnectionID0 Name@ViewSelectionCriteriaInnerLayoutT; urn:groove.net:PropertyList<
  __Version4,1,0,0Y
 urn:groove.net:Component'
 NameBViewFilterConditionsViewContainer  urn:groove.net:ComponentResourceZ
# urn:groove.net:ComponentConnections[
{Z
  urn:groove.net:ComponentResourceY
 URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer][
# urn:groove.net:ComponentConnectionsY
 urn:groove.net:Connection\
 \
 urn:groove.net:Connection[

 ConnectionID0 Name>ViewFilterConditionsBasicLayout J     A
 urn:groove.net:Component'
 Name@ViewSelectionCriteriaInnerLayout  urn:groove.net:ComponentResourceB
 urn:groove.net:PropertyList< B
  urn:groove.net:ComponentResourceA
 URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx< urn:
groove.net:PropertyListA
  __Version4,1,0,0  _G_Layout Layout=C= Layout< urn:groove.net:PropertyValue>E>
ue= MULTIROW?
  ?MULTIROW>
  
 DEFAULTPAD@ ROWA ROWC ROWE ROWG ROWI ROWK ROWP[@
 DEFAULTPAD? LeftPad5 TopPad5RightPad  5(A ROW? CELLBHB CELLA HEIGHT20  FormConditio
ottomPad
FormsListView(
2RightPad
 E ROW?
10  CELLFpF CELLE HEIGHT20  TopPad2  BottomPad2 FieldCond
adOrRadioButtonO
0 AndRadioButton( K ROW?I ROW?
CELLL
 CELLJ
 CELLM
mJ CELLN
CELLI CELLO
HEIGHTqL25CELLK
 LeftPad
 LeftPad
10 TopPad
10 WIDTH
0 150 HEIGHT28 FieldsCombo
itControl[O CELLK LeftPad5 WIDTH37 AddConditionButton(P ROW? CELLQiQ CELLP LeftPad5RightPad  0!
r]
 urn:groove.net:Component'
 Name>ViewFilterConditionsBasicLayout  urn:groove.net:ComponentResource^
 urn:groove.net:PropertyListR ^
  urn:groove.net:ComponentResource]
 URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutxR urn:
groove.net:PropertyList]
  __Version4,1,0,0  _G_Layout LayoutSCS LayoutR urn:groove.net:PropertyValueTET
ueS MULTICOLU
 KUMULTICOLT
 
 DEFAULTPADV COLW COLY[V
 DEFAULTPADU LeftPad2 TopPad3RightPad
 5(W COLU CELLXHX CELLW  BottomPad5 ConditionsListVie
tionButtonC[ CELLY HEIGHT27e
 RemoveButtonE\ CELLY HEIGHT27e AdvancedButton   Q j
 urn:groove.net:Component'
 NameDViewFilterConditionsAdvancedLayoutt"  urn:groove.net:ComponentResourcek
 urn:groove.net:PropertyList] k
  urn:groove.net:ComponentResourcej
 URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx] urn:
groove.net:PropertyListj
  __Version4,1,0,0  _G_Layout Layout^C^ Layout] urn:groove.net:PropertyValue_E_
ue^ MULTICOL`
 K`MULTICOL_
 
 DEFAULTPADa COLb COLd[a
 DEFAULTPAD` LeftPad2 TopPad3RightPad
 5(b COL` CELLcHc CELLb  BottomPad5 ConditionsListVie
 CELLe CELLf CELLg CELLh CELLi CELLj CELLk CELLl CELLm CELLnae CELLd WIDTH37 HEIGHT27e Update
 RemoveButtonEg CELLd HEIGHT27e AdvancedButton@h CELLd HEIGHT27e  ANDButton?i CELLd HE
 ParensButtonIk CELLd HEIGHT27e RemoveParensButton?l CELLd HEIGHT27eUpButtonA
 m CELLd HEIGHT27
 DownButtonn CELLd~
 urn:groove.net:Component'
 Name"FormConditionInfo  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListoo
  urn:groove.net:ComponentResource~
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static*o urn:groove.net
:PropertyList~
 Label Display records in this view which were created with the following form(s):  F
ontStyleDescriptionText  __Version4,1,0,0
 urn:groove.net:Component'
 NameFormsListView  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListps
  urn:groove.net:ComponentResource
 URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ListView5+p urn:groove.
net:PropertyList
 MSCCWorkaroundColor#FFFFFF
 ColumnHeaders
CheckBoxesTruea  __Version4,1,0,0
False SingleSelectionTruea ColumnsResizable
False
 _G_Columns ColumnsqDq Columnsp urn:groove.net:PropertyValuerRr urn:groove.net:PropertyValueq
:Columnsis urn:groove.net:Columnr NameForm NameAutoSize  Truea| J  N   '.O urn:groove.net:Com
GeneratorCode  urn:groove.net:ComponentResourceP# urn:groove.net:ComponentConnections
S SCRIPTs SCRIPTt SCRIPTINTERFACEu SCRIPTv urn:groove.net:PropertyList]wP  urn:groove.net:Com
tResourceO URL2http://components.groove.net/Groove/Components/Root.osd?Package=net.gr
oove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ScriptHo
st2YS# urn:groove.net:ComponentConnectionsO urn:groove.net:ConnectionT urn:groove.net:Conn
ectionU urn:groove.net:ConnectionV urn:groove.net:ConnectionW urn:groove.net:ConnectionX urn
:groove.net:ConnectionY urn:groove.net:ConnectionZ urn:groove.net:Connection[ urn:groove.
net:Connection\ urn:groove.net:Connection] urn:groove.net:Connection^ urn:groove.net:Conn
ection_ urn:groove.net:Connection` urn:groove.net:Connectiona urn:groove.net:Connectionb urn
:groove.net:Connectionc urn:groove.net:Connectiond urn:groove.net:Connectione urn:groove.
net:Connectionf urn:groove.net:Connectiong urn:groove.net:Connectionh urn:groove.net:Conn
ectioni urn:groove.net:Connectionj urn:groove.net:Connectionk urn:groove.net:Connectionl urn
:groove.net:Connectionm urn:groove.net:Connectionn urn:groove.net:Connectiono urn:groove.
net:Connectionp urn:groove.net:Connectionq urn:groove.net:Connectionr T  urn:groove.net:Conn
ectionS Name(PropertyLookupLayout
 ConnectionID55 U  urn:groove.net:ConnectionS Name0LookupTypeAllRadioButtonn
 ConnectionID56 V  urn:groove.net:ConnectionS Name0LookupTypeKeyRadioButton>
 ConnectionID57 W  urn:groove.net:ConnectionS Name.LookupTelespaceCheckBox
 ConnectionID58 X  urn:groove.net:ConnectionS Name.LookupTelespaceComboBox
 ConnectionID58 Y  urn:groove.net:ConnectionS Name$LookupToolComboBox
 ConnectionID58 Z  urn:groove.net:ConnectionS Name$LookupViewComboBoxne
 ConnectionID59s [ urn:groove.net:ConnectionS Name*LookupColumnKeyLayout
 ConnectionID60v \ urn:groove.net:ConnectionS Name.LookupKeyColumnComboBox
 ConnectionID61 ]  urn:groove.net:ConnectionS Name,LookupKeyValueComboBoxa
 ConnectionID62 ^  urn:groove.net:ConnectionS Name(LookupColumnComboBoxro
 ConnectionID63 _  urn:groove.net:ConnectionS Name4LookupReturnAllRadioButton
 ConnectionID64 `  urn:groove.net:ConnectionS Name:LookupReturnUniqueRadioButton
 ConnectionID65 a  urn:groove.net:ConnectionS Name*LookupNoCacheCheckBox
 ConnectionID66t}b urn:groove.net:ConnectionS Name LookupExitButton}
 ConnectionID67r}c urn:groove.net:ConnectionS Name LookupCopyButton
 ConnectionID67rud urn:groove.net:ConnectionS NameLookupComment
 ConnectionID68v e urn:groove.net:ConnectionS Name6LookupStringGeneratorLayout
 ConnectionID69n f urn:groove.net:ConnectionS Name2LookupIncludeURLsCheckBox
 ConnectionID70po g  urn:groove.net:ConnectionS NameBLookupKeyValueIsFieldNameCheckBox
 ConnectionID71C}h urn:groove.net:ConnectionS Name"LookupClearButton
 ConnectionID76}i urn:groove.net:ConnectionS Name"LookupApplyButton
 ConnectionID76yj urn:groove.net:ConnectionS NameLookupTypeLabel
 ConnectionID404 k urn:groove.net:ConnectionS Name(LookupTelespaceLabelCo
 ConnectionID404yl urn:groove.net:ConnectionS NameLookupToolLabel
 ConnectionID404ym urn:groove.net:ConnectionS NameLookupViewLabel
 ConnectionID404 n urn:groove.net:ConnectionS Name(LookupKeyColumnLabel.g
 ConnectionID404 o urn:groove.net:ConnectionS Name&LookupKeyValueLabel
 ConnectionID404}p urn:groove.net:ConnectionS Name"LookupColumnLabel
 ConnectionID404 q urn:groove.net:ConnectionS Name.LookupReturnChoiceLabel
 ConnectionID404ur urn:groove.net:ConnectionS NameCommentLabel
 ConnectionID404qs SCRIPTO SRCDhttp://components.groove.net/Groove/Components/Root.osd?Packa
ge=net.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&V
ersion=5&Factory=Openonet SCRIPTO SRC:http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.Tools.Business.GrooveForms.GrooveFormsLookupGlue_
GSL&Version=5&Factory=Open #u SCRIPTINTERFACEO LIBIDL{366DFD51-2C22-438d-9135-5093E31024
47}ox IIDL{04CA3E3B-A11D-4808-88BC-6D8F42A58A5C}Y_"
function InitializeDialo
g(i_Designer, i_UIDelegate, i_Language, i_Context, i_DesignObject)
{
g_CallbackCode =
i_Designer;
g_UIDelegate = i
_UIDelegate;
g_Language = i_L
anguage;
g_Context = i_Co
ntext;
g_DesignObject =
i_DesignObject;
InitializeCompon
entStrings();
ResetLookupPrope
rty();
var MultiCellSiz
eObj = GrooveScriptFunctions.CreateNewObject("Groove.MultiCellLayoutControlInfo"
);
var MultiCellCel
lObj = MultiCellSizeObj.Cell();
if (g_Context ==
GrooveFormsLookupContext_MacroScript)
{
if (Prop
ertyLookupLayout.IsControlInLayout("LookupTelespaceCheckBox"))
{
MultiCellCellObj.Name = "CrossSpace";
PropertyLookupLayout.RemoveCellContents(MultiCellCellObj);
MultiCellSizeObj.SetHeight(0, GrooveLayoutSizeType_Pixels);
PropertyLookupLayout.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
}
}
else
{
if (!Pro
pertyLookupLayout.IsControlInLayout("LookupTelespaceCheckBox"))
{
MultiCellCellObj.Name = "CrossSpace";
PropertyLookupLayout.AddControlByName("LookupTelespaceCheckBox", MultiCellCellOb
j);
MultiCellSizeObj.SetHeight(45, GrooveLayoutSizeType_Pixels);
PropertyLookupLayout.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
}
}
if (g_Context ==
GrooveFormsLookupContext_MacroScript || g_Context == GrooveFormsLookupContext_F
ormScript)
{
MultiCel
lCellObj.Name = "IncludeURLs";
MultiCel
lSizeObj.SetHeight(27, GrooveLayoutSizeType_Pixels);
Property
LookupLayout.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
}
}
function InitializeDialo
gForResolve(i_Designer, i_UIDelegate, i_DesignObject, i_RecordID, i_Comment, i_R
esolve, TelespaceDisplayName, TelespaceURL, ToolDisplayName, i_ToolName, ViewNam
e, ViewID, KeyColumn, KeyValue, LookupColumn, ReturnUnique, NoCache, KeyValueIsF
ieldName)
{
g_CallbackCode =
i_Designer;
g_UIDelegate = i
_UIDelegate;
g_Context = Groo
veFormsLookupContext_ResolveLookups;
g_DesignObject =
i_DesignObject;
g_RecordID = i_R
ecordID;
InitializeCompon
entStrings();
ResetLookupPrope
rty();
var MultiCellSiz
eObj = GrooveScriptFunctions.CreateNewObject("Groove.MultiCellLayoutControlInfo"
);
var MultiCellCel
lObj = MultiCellSizeObj.Cell();

var DesignObject
Type = g_DesignObject.IGrooveFormsToolDesignObject.Type;
if (DesignObject
Type == GrooveFormsToolDesignObjectType_Macro)
{
if (Prop
ertyLookupLayout.IsControlInLayout("LookupTelespaceCheckBox"))
{
MultiCellCellObj.Name = "CrossSpace";
PropertyLookupLayout.RemoveCellContents(MultiCellCellObj);
MultiCellSizeObj.SetHeight(0, GrooveLayoutSizeType_Pixels);
PropertyLookupLayout.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
}
}
else
{
if (!Pro
pertyLookupLayout.IsControlInLayout("LookupTelespaceCheckBox"))
{
MultiCellCellObj.Name = "CrossSpace";
PropertyLookupLayout.AddControlByName("LookupTelespaceCheckBox", MultiCellCellOb
j);
MultiCellSizeObj.SetHeight(45, GrooveLayoutSizeType_Pixels);
PropertyLookupLayout.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
}
}
if (DesignObject
Type == GrooveFormsToolDesignObjectType_Macro || DesignObjectType == GrooveForms
ToolDesignObjectType_Script)
{
MultiCel
lCellObj.Name = "IncludeURLs";
MultiCel
lSizeObj.SetHeight(27, GrooveLayoutSizeType_Pixels);
Property
LookupLayout.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
}
else
{
MultiCel
lCellObj.Name = "IncludeURLs";
MultiCel
lSizeObj.SetHeight(0, GrooveLayoutSizeType_Pixels);
Property
LookupLayout.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
}
LookupComment.Te
xt = ConvertToOriginalName(i_Comment);
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
if (i_Resolve)
LookupCo
pyButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_DESIGNER_GRP_GLR_RESOLVE
);
else
{
LookupCo
pyButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_UPDATE_LABEL);
var Tele
spaceDescriptor = ResetTelespaceList(TelespaceURL);
if (Tele
spaceDescriptor != null)
{
var ToolDescriptor = null;
// Get the tools list in order to set the correct tool descriptor.
LookupToolComboBox.ResetContent();
var g_THIS_TOOL = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_THIS_TOOL);
if (i_ToolName == "Local")
{
ToolIndex = LookupToolComboBox.InsertItem(0, g_THIS_TOOL);
var ThisTool = PropertyList.OpenProperty(PROPERTY_TOOL);
ToolDescriptor = ThisTool.Descriptor;
LookupToolComboBox.SetItemData(ToolIndex, ToolDescriptor);
LookupToolComboBox.SetSelectionByIndex(ToolIndex);
}
else
{
var ToolsEnum = g_CallbackCode.GetToolsList(TelespaceDescriptor);
var SelectionIndex = -1;
while (ToolsEnum != null && ToolsEnum.HasMore())
{
var ToolPair = ToolsEnum.OpenNextPair();
var ToolDisplayName = ToolPair.First;
var tmpToolDescriptor = ToolPair.Second;
var ToolName = tmpToolDescriptor.Name;
var ToolIndex;
if (i_ToolName == ToolName)
{
ToolIndex = LookupToolComboBox.AddItem(ToolDisplayName);
LookupToolComboBox.SetItemData(ToolIndex, tmpToolDescriptor);
ToolDescriptor = tmpToolDescriptor;
LookupToolComboBox.SetItemData(ToolIndex, ToolDescriptor);
LookupToolComboBox.SetSelectionByIndex(ToolIndex);
break;
}
}

ToolsEnum = null;
delete ToolsEnum;
CollectGarbage();
}

// If the tool could not be found, the lookup is invalid.


if (ToolDescriptor == null)
return;

var ViewName = g_CallbackCode.GetViewNameFromViewID(TelespaceDescriptor, ToolDes


criptor, ViewID);
InitializeComboBox(LookupViewComboBox, ViewName, ViewID);
LookupViewComboBox.Enabled = true;

// Set the UI depending on the values returned.


if (KeyColumn != "" && KeyValue != "")
{
ShowHideMultiCellContents("LookupColumnKeyViewContainer", PropertyLookupLayout,
102, false);
LookupTypeAllRadioButton.CheckState = GCS_UNCHECKED;
LookupTypeKeyRadioButton.CheckState = GCS_CHECKED;
InitializeComboBox(LookupKeyColumnComboBox, KeyColumn);
LookupKeyValueComboBox.Text = KeyValue;
LookupKeyValueComboBox.Enabled = true;

if (KeyValueIsFieldName.toLowerCase() == "true")
LookupKeyValueIsFieldNameCheckBox.CheckState = GCS_CHECKED;
else
LookupKeyValueIsFieldNameCheckBox.CheckState = GCS_UNCHECKED;
}
else
{
ShowHideMultiCellContents("LookupColumnKeyViewContainer", PropertyLookupLayout,
102, true);
LookupTypeAllRadioButton.CheckState = GCS_CHECKED;
LookupTypeKeyRadioButton.CheckState = GCS_UNCHECKED;
}

InitializeComboBox(LookupColumnComboBox, LookupColumn);
LookupColumnComboBox.Enabled = true;

if (ReturnUnique.toLowerCase() == "true")
{
LookupReturnAllRadioButton.CheckState = GCS_UNCHECKED;
LookupReturnUniqueRadioButton.CheckState = GCS_CHECKED;
}
else
{
LookupReturnAllRadioButton.CheckState = GCS_CHECKED;
LookupReturnUniqueRadioButton.CheckState = GCS_UNCHECKED;
}

if (NoCache.toLowerCase() == "true")
LookupNoCacheCheckBox.CheckState = GCS_CHECKED;
else
LookupNoCacheCheckBox.CheckState = GCS_UNCHECKED;
}
}
LookupExitButton
.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
}
function Reset()
{
ResetLookupPrope
rty();
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
z#v SCRIPTOW#
// Constants use for che
ckstate of radio buttons and check boxes.
var GCS_CHECKED = Groove
CheckState_Checked;
var GCS_UNCHECKED = Groo
veCheckState_Unchecked;
var g_CallbackCode;
var g_UIDelegate;
var g_Language;
var g_Context;
var g_DesignObject;
var g_RecordID = -1;
function Initialize()
{
var MultiCellSiz
eObj = GrooveScriptFunctions.CreateNewObject("Groove.MultiCellLayoutControlInfo"
);
var MultiCellCel
lObj = MultiCellSizeObj.Cell();
if (PropertyLook
upLayout.IsControlInLayout("LookupApplyButton"))
{
MultiCel
lCellObj.Name = "RightButton";
Property
LookupLayout.RemoveCellContents(MultiCellCellObj);
MultiCel
lSizeObj.SetHeight(0, GrooveLayoutSizeType_Pixels);
Property
LookupLayout.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
MultiCel
lCellObj.Name = "LeftButton";
Property
LookupLayout.RemoveCellContents(MultiCellCellObj);
MultiCel
lSizeObj.SetHeight(0, GrooveLayoutSizeType_Pixels);
Property
LookupLayout.AdjustCellLayout(MultiCellCellObj, MultiCellSizeObj);
}
LookupIncludeURL
sCheckBox.CheckState = GrooveCheckState_Unchecked;
}
function InitializeCompo
nentStrings()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
LookupIncludeURL
sCheckBox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_RETURN_URLS)
;
LookupCopyButton
.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_COPY);
LookupExitButton
.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_EXIT);
// GrooveForms5L
ookup.grp
LookupTypeLabel.
SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_LOOKUP_TYPE));
LookupTypeAllRad
ioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_ALL);
LookupTypeKeyRad
ioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_BY_KEY);
LookupTelespaceC
heckBox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_CROSS_SPACE);
LookupTelespaceL
abel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_SPACE));
LookupToolLabel.
SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_TOOL));
LookupViewLabel.
SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_VIEW));
LookupKeyColumnL
abel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_KEY_COLUMN));
LookupKeyValueLa
bel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_KEY_VALUE));
LookupKeyValueIs
FieldNameCheckBox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_KEY_
VALUE_IS_FLD_NME);
LookupColumnLabe
l.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_LOOKUP_COLUMN));
LookupReturnChoi
ceLabel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_RETURN));
LookupReturnAllR
adioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_ALL);
LookupReturnUniq
ueRadioButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_UNIQUE);
LookupNoCacheChe
ckBox.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_NO_CACHE);
CommentLabel.Set
Text(Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_COMMENT));
LookupKeyValueCo
mboBox.Tooltip = Priv.GetResourcedString(IDS_FORMS_TOOL_LOOKUP_GRP_TOOLTIP_KEY_V
ALUE);
g_THIS_SPACE = P
riv.GetResourcedString(IDS_FORMS_TOOL_COMMON_THIS_WORKSPACE);
g_THIS_TOOL = Pr
iv.GetResourcedString(IDS_FORMS_TOOL_COMMON_THIS_TOOL);
}
function OnViewContainer
Hide()
{
ResetLookupPrope
rty();
LookupIncludeURL
sCheckBox.CheckState = GrooveCheckState_Unchecked;
}
function Terminate()
{
ResetLookupPrope
rty();
LookupIncludeURL
sCheckBox.CheckState = GrooveCheckState_Unchecked;
LookupTelespaceC
omboBox.ResetContent();
CollectGarbage()
;
}
function GetHelpProvider
()
{
try
{
var RTFH
elpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCo
mponentByName("RTFHelpProvider");
return R
TFHelpProvider;
}
catch(error)
{
}
finally
{
RTFHelpP
rovider = null;
delete R
TFHelpProvider;
CollectG
arbage();
}
}
function InitializeCombo
Box(i_ComboBox, i_Text, i_ItemData)
{
i_ComboBox.Reset
Content();
var NewIndex = i
_ComboBox.AddItem(i_Text);
if (typeof i_Ite
mData != "undefined")
i_ComboB
ox.SetItemData(NewIndex, i_ItemData);
i_ComboBox.SetSe
lectionByIndex(NewIndex);
}
function LookupExitButto
n_OnCommand(i_UICommand)
{
ResetLookupPrope
rty();
LookupIncludeURL
sCheckBox.CheckState = GrooveCheckState_Unchecked;
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_Cancel);
Window.Destroy(G
rooveWindowResult_Cancel);
}
function LookupCopyButto
n_OnCommand(i_UICommand)
{
if (g_Context ==
GrooveFormsLookupContext_ResolveLookups)
{
var Look
upString = GetXMLSyntaxBasedLookupString();
if (type
of LookupString != "undefined")
{
var LookupTargetDisplayName = GenerateLookupTargetDisplayName(LookupString);
g_CallbackCode.IGrooveFormsToolDesignerPrivate.UpdateGlobalLookupRecord(g_Record
ID, LookupString, LookupTargetDisplayName);
var Comment = LookupComment.Text;
g_CallbackCode.IGrooveFormsToolDesignerPrivate.AddCommentForLookupByRecordID(g_R
ecordID, CreateValidXMLName(Comment));
ResetLookupProperty();
var Window = UIPropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(GrooveWindowResult_Cancel);
Window.Destroy(GrooveWindowResult_Cancel);
}
}
else
{
var Pref
ix = "var ValuesBSTREnum ";
if (g_La
nguage == "VBScript")
Prefix = "Dim ValuesBSTREnum" + "\n" + "Set ValuesBSTREnum ";
var Pref
ix2 = "var ValuesAndURLsStringStringEnum ";
if (g_La
nguage == "VBScript")
Prefix2 = "Dim ValuesAndURLsStringStringEnum" + "\n" + "Set ValuesAndURLsStringS
tringEnum ";
var Suff
ix = "";
if (g_La
nguage == "JavaScript")
Suffix = ";";
var Look
upString = GetXMLSyntaxBasedLookupString();
if (Look
upString == "undefined" || LookupString == null || LookupString == "")
return;
var Look
upTargetDisplayName = GenerateLookupTargetDisplayName(LookupString);
var Obje
ctName = CreateValidObjectName();
var Call
String;
if (g_Co
ntext == GrooveFormsLookupContext_FormScript)
{
if (LookupIncludeURLsCheckBox.CheckState == GrooveCheckState_Unchecked)
CallString = Prefix + "= GetApp().LookupValuesByStringForFormScript(int_GetLooku
pStringForObject(\"" + ObjectName + "\"), document)" + Suffix;
else
CallString = Prefix2 + "= GetApp().LookupValuesWithURLsByStringForFormScript(int
_GetLookupStringForObject(\"" + ObjectName + "\"), document)" + Suffix;
}
else
{
if (LookupIncludeURLsCheckBox.CheckState == GrooveCheckState_Unchecked)
CallString = Prefix + "= i_FormsToolUIDelegate.LookupValuesByStringForMacro(int_
GetLookupStringForObjectFromMacro(\"" + ObjectName + "\", i_FormsToolUIDelegate)
, i_FormRecord)" + Suffix;
else
CallString = Prefix2 + "= i_FormsToolUIDelegate.LookupValuesWithURLsByStringForM
acro(int_GetLookupStringForObjectFromMacro(\"" + ObjectName + "\", i_FormsToolUI
Delegate), i_FormRecord)" + Suffix;
}
g_Callba
ckCode.IGrooveFormsToolDesignerPrivate.CreateGlobalLookupRecord(ObjectName, Look
upString, g_Context, g_DesignObject.Name, LookupTargetDisplayName, g_DesignObjec
t.ID);
var Comm
ent = LookupComment.Text;
g_Callba
ckCode.IGrooveFormsToolDesignerPrivate.AddCommentForLookupByObjectName(ObjectNam
e, CreateValidXMLName(Comment));
SetClipb
oardEmpty();
var Clip
board = GetClipboard();
Clipboar
d.SetDataAsString("Text", CallString);
ResetLoo
kupProperty();
LookupIn
cludeURLsCheckBox.CheckState = GrooveCheckState_Unchecked;
}
}
function CreateValidObje
ctName()
{
var ObjectName =
CreateGUID();
return ObjectNam
e;
}
function GetClipboard()
{
return GrooveScr
iptFunctions.CreateNewObject("Groove.UIManager").OpenClipboard();
}
q] urn:groove.net:PropertyListO EnforceI
nterfaces1  __Version4,1,0,0
 urn:groove.net:Component'
 Name$FieldConditionInfor  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListto
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=StaticPt urn:groove.net
:PropertyList

 VAlignment
Bottomn Label A lso display records in this view whose fields meet the following condi
tions:  FontStyleDescriptionText  __Version4,1,0,0
 urn:groove.net:Component'
 NameOrRadioButton  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListvo
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttonev urn:groove.net:
PropertyList
 StyleRadiobutton LabelXAny of the following conditions (logical OR)  Radiobutto
Tnruea  __Version4,1,0,0
 urn:groove.net:Component'
 NameAdvancedButtont  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListwo
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttonew urn:groove.net:
PropertyList
  __Version4,1,0,0
 ImageWidth16 Style$StandardIconButtonou
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex210
 urn:groove.net:Component'
 NameRemoveButtonsd  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListxo
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttonex urn:groove.net:
PropertyList
  __Version4,1,0,0
 ImageWidth16 Style$StandardIconButtonou
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex16p 8 P <    x    
 urn:groove.net:Component'
 NameANDButton  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListyo
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttoney urn:groove.net
:PropertyList
 StyleSmallTextButton LabelAND  __Version4,1,0,0 _G_OverrideLabelFont OverrideLabelFontzIz O
Fonty urn:groove.net:FontDesc{E{ urn:groove.net:FontDescz Height10 
 urn:groove.net:Component'
 NameORButtonmp  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList|o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone| urn:groove.net
:PropertyList
 StyleSmallTextButton LabelORe  __Version4,1,0,0 _G_OverrideLabelFont OverrideLabelFont}I} O
Font| urn:groove.net:FontDesc~E~ urn:groove.net:FontDesc} Height10
 urn:groove.net:Component'
 NameParensButtonpe  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:Pr
opertyList
  __Version4,1,0,0
 ImageWidth16 Style$StandardIconButtonou
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex211 
 urn:groove.net:Component'
 NameUpButtonT=  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:Pr
opertyList
  __Version4,1,0,0
 ImageWidth16 Style$StandardIconButtonou
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex39 0 | 8  r  r 
 urn:groove.net:Component'
 Name$RemoveParensButtonn  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:Pr
opertyList
  __Version4,1,0,0
 ImageWidth16 Style$StandardIconButtonou
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex212
 urn:groove.net:Component'
 NameDownButtonon  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList o
  urn:groove.net:ComponentResource
 URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:Pr
opertyList
  __Version4,1,0,0
 ImageWidth16 Style$StandardIconButtonou
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex40y
 urn:groove.net:Component'
 NameFieldsComboboxt  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList s
  urn:groove.net:ComponentResource
 URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
   urn:groove.net:PropertyList
 InitialValues
 __VersionJurn:groove.net:PropertyValue
  4,1,0,0 _G_InitialValues P  urn:groove.net:PropertyValue  urn:groove.net:
t:Item
urn:groove.net:Component'
 Name(
 urn:groove.net:PropertyList
URL(
Name
urn:groove.net:ComponentResource(
hDtitsp:l/a/ycQoumeproynPeantsurn:groove.net:ComponentResource)
.groove.on)et/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:Pr
opertyList(  BreakTypeWordBreak Label  FontStyleDescriptionText  __Version4,1,0,0  D
 urn:groove.net:Component'
 Name"OperatorsCombobox  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList s
  urn:groove.net:ComponentResource
 URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
   urn:groove.net:PropertyList
 InitialValues
 __Version
Jurn:groove.net:PropertyValue
  4,1,0,0 _G_InitialValues l  urn:groove.net:PropertyValue  urn:groove.net:
et:Item ;   urn:groove.net:Item  Name=?  urn:groove.net:Item  Name!=v
 urn:groove.net:Component'
 Name ValueEditControlo  urn:groove.net:ComponentResource
 urn:groove.net:PropertyList s
  urn:groove.net:ComponentResource
 URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
  urn:groove.net:PropertyList
  TextLimit1024n  __Version4,1,0,0 TabStopTruea MultiSelect
FInitialValues
alseEditable
 TruJeurn:groove.net:PropertyValue
a _G_InitialValues P  urn:groove.net:PropertyValue  urn:groove.net:
t:Item
urn:groove.net:Component'
 Name{UserName}ay
 urn:groove.net:PropertyList
URL(
Name$
urn:groove.net:ComponentResource
htAtdpd:C/o/ncdoimtpioneBnutst.ognrnoovurn:groove.net:ComponentResource
e.onet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttonev  urn:groove.net:
PropertyList  Tooltip.Adds condition to query DefaultTrueaImageURL  grooveFile:///ToolData\groove
.net\CommonData\CommonToolIconImages.jpg
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmp  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 urn:groove.net:Component'
ImageIndex64 ImageHeight16 .
 urn:groove.net:PropertyList
URL(
Name
urn:groove.net:ComponentResource.
hOtKtBpu:t/t/ocno:mpourn:groove.net:ComponentResource/
nents.groove.on/et/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:P
ropertyList.
StyleStandardButtonb LabelApply Filter  __Version4,1,0,0L    
 urn:groove.net:Component'
   
 urn:groove.net:PropertyList
URL(
Name*
urn:groove.net:ComponentResource
htUtppd:a/t/ecComnpdointeinotnsB.ugtrtoonve.ourn:groove.net:ComponentResource
net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ButtoneW  urn:groove.net:
PropertyList
Tooltip*Updates the condition  __Version4,1,0,0
 ImageWidth16 Style$StandardIconButtonou
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 urn:groove.net:Component'
ImageIndex138
 urn:groove.net:PropertyList
URL,
Name$
urn:groove.net:ComponentResource
htCtopn:d/i/tciomnpsoLniesnttVsi.egwrloovurn:groove.net:ComponentResource
e.snet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ListView5+  urn:groove.ne
t:PropertyList
MSCCWorkaroundColor#FFFFFF
 CheckBoxes
FColumnHeaders
alse  __Version4,1,0,0
False SingleSelection
Fasle ColumnsResizable
False
 _G_Columns Columns D   Columns  urn:groove.net:PropertyValue R  urn:groove.net:PropertyValue
.net:Column
urn:groove.net:Component'  NameConditions  AutoSizeTruea3
 urn:groove.net:PropertyList
URL(
Name
urn:groove.net:ComponentResource3
hCtatnpc:e/l/Bcuotmtpoonn<e/ntsurn:groove.net:ComponentResource4
.groove.on4et/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:P
ropertyList3
CancelTruea StyleStandardButtonb Label
CURL(
aurn:groove.net:ComponentResource
urn:groove.net:Component^
Name
urn:groove.net:PropertyList
ncehMltaotcpr:o__Version
/N/acmoemLpaobneel4n,t1surn:groove.net:ComponentResource
,.0g,r0oove.onet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static urn:groove.net:Pr
opertyList  __Version4,1,0,0 Label
Name:
 HAlignmentLeft  FontStyleLabelText
 VAlignment
oCURL* eurn:groove.net:ComponentResource\
urn:groove.net:Component
]urn:groove.net:ComponentGroup^
ntehrtetp://xcompHonZents.gro\oName
ve.neMta/cGrrooCovde/SCuobmFpoornmelntsurn:groove.net:ComponentResource]
/Root.osd?Package=net.groove.Groov
eHelpInfoProvider
.ToolComponents.RGTrFoHoevlepCPormomvoindCeormDelegate
urn:groove.net:ComponentGroup\ ponents_MDaLcLr&oVCeordseiCoond=e0&DefaultView
Factory=SubMFaocrrmoC^odeView urn:groove.net
#mponent_
urn:groove.net:Componentf
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component
urn:groove.net:Component^
Name
urn:groove.net:PropertyList
URL6
_ hMtatcpr:o/C/ocdoemVpioenwenturn:groove.net:ComponentResource`
urn:groove.net:ComponentConnectionsd
urn:groove.net:ComponentResource_ s.groove.{n`et/Groove/Components/Root.osd?Package=net.groove.Groov
m#eurn:groove.net:Connectiond
.urn:groove.net:ComponentConnections_
eurn:groove.net:Connectione
ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]d
 urn:groove.net:PropertyList
URL(
ConnectionID
PreferredHeight
urn:groove.net:Component^
Name$
urn:groove.net:ComponentResource
htMtapc:r/o/Lcaon0mgpuName
oa5ng5e0nLMtaPreferredWidth
sbc.erglorlLoaoyvurn:groove.net:ComponentResource
oeu.otnet/urn:groove.net:PropertyList_
G7r5o0ove/C__Version
omponents4/,R1o,o0t,.0osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static urn:groove.net:Pr
opertyList  __Version4,1,0,0 LabelLanguage:
 HAlignmentLeft  FontStyleLabelText
 VAlignment
CURL(
eurn:groove.net:ComponentResource
urn:groove.net:Component^
Name
urn:groove.net:PropertyList
ntehMrtaetcpr:o/S/ccoopmepLoanbenlts.urn:groove.net:ComponentResource
groove.onet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static urn:groove.net:Pr
opertyList  __Version4,1,0,0 Label$Run this macro on:o
 HAlignmentLeft  FontStyleLabelText
 VAlignment
CURL: eurn:groove.net:ComponentResourcef
urn:groove.net:Component^
Name
urn:groove.net:PropertyList
ntehMrtaetcpr:o/Ll/acyomuptoneurn:groove.net:ComponentResourceg
n$tsf.groove.nget/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx  urn:gr
oove.net:PropertyListf  __Version4,1,0,0  _G_Layout Layout C   Layout  urn:groove.net:PropertyValue E  
 MacroNameEdit(
HelpButton( ROW  ROW  CELL
 CELL E .CELL
 CELL  HEIGHT
 HEIGHT 20 5( ROW  CELLIMacroNameLabel(
 CELL HEIGHT22lROW MacroLanguageLabel
 CELLY CELL
x( ROW  CELL2 CELL HEIGHT10( ROW  CELLK CELL HEIGHT32Y MacroScriptHeadLabel( ROW  CE
2URL,5urn:groove.net:ComponentResource
urn:groove.net:Component^
Name*
urn:groove.net:PropertyList
 LeftPad
htMtapc:r/o5/LcaCreateLookupStringButton
onmgpuoangenCtosm.bgorBooxve.surn:groove.net:ComponentResource
net/GroovCELL e/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
 InitialValues
 urn:groove.net:PropertyList
InitialValues  __Version Jurn:groove.net:PropertyValue
 4,1,0,0 _G_InitialValues l urn:groove.net:PropertyValue urn:groove.net:
et:ItemO urn:groove.net:Item NameJavaScript.nK urn:groove.net:Item NameVBScript:p  

URL, urn:groove.net:ComponentResource
urn:groove.net:Component^
Name$
urn:groove.net:PropertyList
htMtapc:r/o/ScomppeoCnoemnbtosB.ogxreoovurn:groove.net:ComponentResource
e.snet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
 InitialValues
 urn:groove.net:PropertyList
InitialValues  __Version Jurn:groove.net:PropertyValue
 4,1,0,0 _G_InitialValues  urn:groove.net:PropertyValue urn:groove.net:
:Item urn:groove.net:Item urn:groove.net:Item urn:groove.net:ItemO urn:groove.net:Item
.net:Item Name&All records in view[ urn:groove.net:Item Name Selected recordsV   urn:groov
eURL(wurn:groove.net:ComponentResource
urn:groove.net:Component^
Name(
urn:groove.net:PropertyList
 anhdtMtampco:rd/oi/SfcioremidpotrnHeecnaotdrsLd.asgbresolionvceurn:groove.net:ComponentResource
.onleats/tGrouonv_e/Curn:groove.net:Item
omponents/Root.osd?PaName$
ckageA=lnletu.ngrreoaodver.eGcroorodvst
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:Pr
opertyList
Label  __Version4,1,0,0 _G_Font Font< Font urn:groove.net:FontDescq urn:groove.net:Fon
 URL$ StyleBold
urn:groove.net:Component^
Name"
urn:groove.net:PropertyList
urn:groove.net:ComponentResource
htMtapc:rT/or/CucoeodamepToenxetnVtise.wgrourn:groove.net:ComponentResource
ove.knet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveTextTools_DLL&Version=0,3&Factory=TextView2ve urn:groove.net:Pr
opertyList
IgnoreLinksTrTureuaeaReadOnly
BorderVisible 
False  __Version4,1,0,0 _G_DefaultFont DefaultFontC DefaultFont urn:groove.net:TextFont
urier New Flags
983040tt Color0 LinkURL Size
6URL(
5urn:groove.net:ComponentResource
urn:groove.net:Component^
Name(
urn:groove.net:PropertyList
536h0tMTtapc:r/o/Scor^mipotnTeanitlsL.agbreoloveurn:groove.net:ComponentResource
.onet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:Pr
opertyList
Label}  __Version4,1,0,0 _G_Font Font< Font urn:groove.net:FontDescq urn:groove.net:Fon
 URL(
StyleBold
urn:groove.net:Component^
Name
urn:groove.net:PropertyList
urn:groove.net:ComponentResource
hMtotrpe:CT/or/duceoBamuptotnoennts.urn:groove.net:ComponentResource
groove.onet/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:P
ropertyList
Tooltip6
urn:groove.net:Component^
Name0
urn:groove.net:PropertyList
URL(urn:groove.net:ComponentResource
htCtrpe:aA/td/edcLommopkrouenpeScntotrdsie.ngtrBoouotvtheo.onnmeaturn:groove.net:ComponentResource
c/rGor.ooLabel
ve/CoMmoproeneCnotdse/RStyle
oot.oSstda?nPdacrkdaBguet=tnoentb.groove.Gr__Version
oov 4,1
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:P
ropertyList
Label(Create Lookup String
oURL*Style
urn:groove.net:Component^
Name(
urn:groove.net:ComponentGroup
urn:groove.net:ComponentResource
htMStopra:en/Md/acrordmoBpCuotndteonStubsb.Fgorom__Version
oveurn:groove.net:ComponentResource
.net/G4r,o1o,v0e,/0Components/Root.osd?Package=net.groove.Groov
 Delegate"
eurn:groove.net:Component
.ToolComMporneMnatcsr.oGCrodoevCeoCdoemurn:groove.net:Component
urn:groove.net:ComponentGroup mDefaultView"
onComponentsM_oDrLeLM&aVcerosCiodnurn:groove.net:Component
e=V0i&eFwacurn:groove.net:Component
tory=SubFormf  urn:groove.net:Co
#nt! urn:groove.net:Component
Name"
URL6
urn:groove.net:ComponentConnections
urn:groove.net:ComponentResource
 urn:groove.net:Component'
htMtopr:e/M/acormopCondenVtise.wgrourn:groove.net:ComponentResource
ove.net/<Groovurn:groove.net:PropertyList
e/Co^mponents/Root.osd?Packag{e=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn:gr
oove.net:ComponentConnections
urn:groove.net:Connectionu urn:groove.net:Connection
 PreferredHeight
_G_Background0 Name
ConnectionID 550MPreferredWidth
oreMacroLayout750urn:groove.net:PropertyList
 __Version4,1,0,0
 BackgroundI
 Background urn:groove.net:BackgroundStyleg urn:groove.net:BackgroundStyle Style DialogBa
.net:Component
NameMoreMacroLayout  urn:groove.net:ComponentResource urn:groove.net:PropertyList   urn:gro
mponentResource URL:http://components.groove.net/Groove/Components/Root.osd?Package=net
.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Multi
CellLayoutx urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout LayoutC
eE urn:groove.net:PropertyValue MULTIROW  KMULTIROW
 
 DEFAULTPAD ROW ROW5
 DEFAULTPAD LeftPad5( ROW CELLJ CELL RightPad  5 MoreMacroCodeTextView\ ROW CELL CELL
 CancelButton-
Name*MoreMacroCoCELL
deTextWIDTH
View5urn:groove.net:ComponentResource
 urn:groove.net:Component  urn:groove.net:PropertyListk 
ove.net:ComponentResource URL$http://components.groove.net/Groove/Components/Root.osd?P
ackage=net.groove.Groove.ToolComponents.GrooveTextTools_DLL&Version=0,3&Factory=
TBorderVisible
extView2veTrurn:groove.net:PropertyList
ueaReadOnly
  IgnoreLinksTruea
False  __Version4,1,0,0 _G_DefaultFont DefaultFontC DefaultFont urn:groove.net:TextFont
urier New Flags
983040tt Color0 LinkURL Size
6Name
5536O0KTButtTon:  urn:groove.net:ComponentResource
     urn:groove.net:Component  urn:groove.net:PropertyListo  urn:groove.ne
entResource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.gro
ove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:gro
ove.net:PropertyList DefaultTruea StyleStandardButtonb LabelOKg:  __Version4,1,0,0! urn:groo
omponent
NameCancelButton</  urn:groove.net:ComponentResource" urn:groove.net:PropertyListo"  urn:gr
et:ComponentResource! URL(http://components.groove.net/Groove/Components/Root.osd?Pack
age=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factor
y=Buttone urn:groove.net:PropertyList! Cancel Truea StyleStandardButtonb Label
Cancelo  __Version4,1,0,02 urn:groove.net:Component Name$MacroWindowSubFormoo  urn:groove.n
entResource3 urn:groove.net:ComponentGroup4o3  urn:groove.net:ComponentResource2 URL*http://c
ponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComp
onents.GrooveCommonComponents_DLL&Version=0&Factory=SubForm=4 urn:groove.net:Componen
tGroup2 Delegate
 MacroWindowCode DefaultViewMacroWindowView urn:groove.net:Component5 urn:groov
t:Component< urn:groove.net:ComponentK urn:groove.net:ComponentQ urn:groove.net:ComponentX5
e.net:Component4 NameMacroWindowView  urn:groove.net:ComponentResource6# urn:groove.net:Comp
onentConnections: urn:groove.net:PropertyList{6  urn:groove.net:ComponentResource5 URL6http:
mponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCom
ponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]:# urn:groove.ne
t:ComponentConnections5 urn:groove.net:Connection;m; urn:groove.net:Connection:
 ConnectionID0 NameMacroLayout  urn:groove.net:PropertyList5 PreferredHeight125 PreferredWid
_Version4,1,0,0   urn:groove.net:Componentd NameCreatedBy  urn:groove.net:ComponentResource
:PropertyList!o   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/C
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=Staticy! urn:groove.net:PropertyList   FontStyleLabelText  _
_Version4,1,0,0d     g h    
'Name"
 urn:groove.net:Component
MoreMacroCodeCode  urn:groove.net:ComponentResource(# urn:groove.net:ComponentConnec
tions+ SCRIPT/ SCRIPT0 SCRIPT1 urn:groove.net:PropertyListw(  urn:groove.net:ComponentResour
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCo
mponents.GrooveCommonComponents_DLL&Version=0&Factory=ScriptHost2+# urn:groove.net:C
omponentConnections' urn:groove.net:Connection, urn:groove.net:Connection- urn:groove.net:Con
nection.i, urn:groove.net:Connection+ NameOKButton:
 ConnectionID3q- urn:groove.net:Connection+ NameCancelButton</
 ConnectionID3 . urn:groove.net:Connection+ Name*MoreMacroCodeTextView
 ConnectionID3q/ SCRIPT' SRCDhttp://components.groove.net/Groove/Components/Root.osd?Package=
et.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Versi
on=5&Factory=Openona0 SCRIPT' SRC6http://components.groove.net/Groove/Components/Root.osd?P
ackage=net.groove.Groove.ToolComponents.GrooveRichTextCommandBarHelper3_GSL&Vers
ion=3&Factory=Open>1 SCRIPT'

var g_UIDelegate;

function OKButton_OnCommand(i_UICommand)
{
var Window = UIPropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(GrooveWindowResult_OK);
Window.Destroy(GrooveWindowResult_OK);
}

function CancelButton_OnCommand(i_UICommand)
{
var Window = UIPropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(GrooveWindowResult_Cancel);
Window.Destroy(GrooveWindowResult_Cancel);
}

function GetMoreCode()
{
return MoreMacroCodeTextView.TextContent.PlainText;
}

function InitializeDialog(i_UIDelegate, i_MoreCode)


{
MoreMacroCodeTextView.TextContent.PlainText = i_MoreCode;
g_UIDelegate = i_UIDelegate;
InitializeComponentStrings();
}

function InitializeComponentStrings()
{
var Priv = g_UIDelegate.IGrooveFormsToolUIDelegatePrivate;
CancelButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_CANCEL);
OKButton.Label = Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
}
q urn:groove.
net:PropertyList'
8< urn:groove.net:Component4
 EnforceInterfaces  Name0MacroL__Version
ayout  urn:groove.net:ComponentResource=
4,1,0,0   urn:groove
yList =  urn:groove.net:ComponentResource< URL:http://components.groove.net/Groove/Component
Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ver
sion=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList<  __Version4,1,0,0  _G_L
tC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTICOL  KMULTICOL

 DEFAULTPAD COL COL5
 MacroProgress2
DEFAULTPAD LeftPad  CELL5HEIGHT
B COL10CELL
K urn:groove.net:Component4
CELL CELL2 CELL HEIGHT10Z Name CELLWeWIDTH
bBrow8s0erHEIGHT
Viewm77urn:groove.ne
e WebBrowserV
:groove.net:PropertyList L   urn:groove.net:ComponentResourceK URLLhttp://components.groove.net
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveWebBr
owserTool_DLL&Version=2,6&Factory=WebBrowserControlWrapperpo urn:groove.net:PropertyLis

tK ReturnSafeForScriptingExternalTruea DisableMnemonicsByResourceID:4366,4367,4368,4369,4
370,4371 DisableNavigationSound Truea  __Version4,1,0,0Q urn:groove.net:Component4 NameMa
gress  urn:groove.net:ComponentResourceR urn:groove.net:PropertyList oR  urn:groove.net:Co
mponentResourceQ URL(http://components.groove.net/Groove/Components/Root.osd?Package=n
et.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Sta
tic  urn:groove.net:PropertyListQ  __Version4,1,0,0 Label
 VAlignment
Centere  FontStyleLabelText
 HAlignmentLeft~ urn:groove.net:Componentd Name CreatedDateLabelRo  urn:groove.net:Component
e  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource~ URL(http://components.gro
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=Static  urn:groove.net:PropertyList~ LabelCreated on:  F
ontStyleLabelText  __Version4,1,0,0  |   T   ` X urn:groove.net:Component4 N
:ComponentResourceY# urn:groove.net:ComponentConnections\ SCRIPT_ SCRIPT` SCRIPTINTERFACEa ur
ove.net:PropertyList
wY  urn:groove.net:ComponentResourceX URL2http://components.groove.net/Groove/Components/Ro
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=ScriptHost2 \# urn:groove.net:ComponentConnectionsX urn:groove.net:Connection
] urn:groove.net:Connection^u] urn:groove.net:Connection\ NameWebBrowserViewm
 ConnectionID1q^ urn:groove.net:Connection\ NameMacroProgress
 ConnectionID2q_ SCRIPTX SRCDhttp://components.groove.net/Groove/Components/Root.osd?Package=
et.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Versi
on=5&Factory=Openon` SCRIPTX
var g_CallbackCode = nul
l;
var g_MacroID;
var g_MacroName;
function Initialize()
{
MacroProgress.Se
tText("");
}
function OnViewContainer
Show()
{
}
function InitDialog(i_Ca
llbackCode, i_MacroID, i_MacroName)
{
g_CallbackCode =
i_CallbackCode;
g_MacroID = i_Ma
croID;
g_MacroName = i_
MacroName;
GrooveDebugFunct
ions.OutputString("\nFORMS TOOL: MacroID is: " + g_MacroID + "\n");
var MacroTemplat
eURL = BuildPathFromBase("file", "FormsMacroTemplate.html", "MacroID=" + g_Macro
ID);
WebBrowserView.C
ontrol.Navigate(MacroTemplateURL);
}
a SCRIPTINTERFACEX LIBIDL{366DFD51
-2C22-438d-9135-5093E3102447}ox IIDL{A1BAD901-C899-4286-A389-2DB16DF9B6F3}FF
function InitializeDialo
g(i_UIDelegate, i_MacroID, i_MacroName)
{
InitDialog(i_UID
elegate, i_MacroID, i_MacroName);
}
function StartMacro(i_Ma
croID, i_Document)
{
g_CallbackCode.I
GrooveFormsToolUIDelegateMacroPrivate.BeginMacro(i_MacroID, i_Document, ScriptHo
stComponent.IGrooveFormsToolUIMacroWindowPrivate);
}
function OpenMacroScript
(i_MacroID)
{
return g_Callbac
kCode.IGrooveFormsToolUIDelegateMacroPrivate.GetMacroScript(i_MacroID);
}
function OpenTransaction
()
{
return g_Callbac
kCode.OpenTransaction();
}
function MacroFinished()
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_Cancel);
Window.Destroy(G
rooveWindowResult_Cancel);
}
function GetUIDelegate()
{
return g_Callbac
kCode;
}
q
 (urn:groove.net:PropertyListX
b urn:groove.net:Component EnforceInterfaces Name2DocumentProp1ertiesSubF__Version
orm  urn:groove.net:ComponentResour
4,1,0,0
e.net:ComponentGroupdoc  urn:groove.net:ComponentResourceb URL*http://components.groove.net
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=SubFormd urn:groove.net:ComponentGroupb Delegate,  Document
PropertiesCodCe DefaultView>DocumentPropertiesViewContainer urn:groove.net:Componente urn:gr
oove.net:Componentn urn:groove.net:Component~ urn:groove.net:Component  urn:groove.net:Compon
nt  urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component  urn:groove.
nt  urn:groove.net:Component  urn:groove.net:Component urn:groove.net:Component urn:groove.
nt urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.
nt urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.
nt urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groove.n
ente urn:groove.net:Componentd Name>DocumentPropertiesViewContainer  urn:groove.net:Compone
urcef# urn:groove.net:ComponentConnectionsl urn:groove.net:PropertyList{f  urn:groove.net:Com
ponentResourcee URL6http://components.groove.net/Groove/Components/Root.osd?Package=ne
t.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=View
Container]l# urn:groove.net:ComponentConnectionse urn:groove.net:Connectionm m urn:groove.net
onnectionl
 ConnectionID0 Name8DocumentPropertiesInfoLayoutu urn:groove.net:PropertyListe PreferredHeig
eferredWidth
_G_Background
450  __Version4,1,0,0
 Background
?

Gurn:groove.net:Color
Background urn:groove.net:Color
 RGB#ffffff  urn:groove.net:Componentd Name"ModifiedDateLabel  urn:groove.net:ComponentReso
t:PropertyListo   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/C
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=Static urn:groove.net:PropertyList  Label"Last Modified on:  Font
abelText  __Version4,1,0,0x     7 n urn:groove.net:Componentd Name8DocumentPrope
ve.net:ComponentResourceo urn:groove.net:PropertyList o   urn:groove.net:ComponentResourcen UR
p://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.T
oolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groov
e.net:PropertyListn  __Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:Prop
.net:PropertyValue MULTICOL  ;MULTICOL
  BORDER COL| BORDER LeftPad10 TopPad10RightPad  10  Bott
0 CreatedDateH CELL HEIGHT18s ModifiedDateLabel\ CELL HEIGHT28  BottomPad10
 ModifiedDateE CELL HEIGHT18s CreatedByLabelY CELL HEIGHT28  BottomPad10  CreatedByJ C
y  urn:groove.net:Componentd NameCreatedByLabelor  urn:groove.net:ComponentResource  urn:gr
rtyList o   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/Compone
s/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&V
ersion=0&Factory=Static   urn:groove.net:PropertyList  LabelCreated by:  FontStyleLabelText
 __Version4,1,0,0  urn:groove.net:Componentd Name&LastModifiedByLabel  urn:groove.net:Compo
ce  urn:groove.net:PropertyList"o   urn:groove.net:ComponentResource  URL(http://components.g
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=Static" urn:groove.net:PropertyList  Label"Last Modified
by:  FontStyleLabelText  __Version4,1,0,0  urn:groove.net:Componentd NameLastModifi
:groove.net:ComponentResource  urn:groove.net:PropertyList#o   urn:groove.net:ComponentResour
ce  URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Staticy# urn:groove.ne
t:PropertyList   FontStyleLabelText  __Version4,1,0,0P         
 urn:groove.net:Componentd Name<DocumentPropertiesFieldsLayoutht  urn:groove.net:ComponentR
urce urn:groove.net:PropertyList$   urn:groove.net:ComponentResource URL:http://components
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=MultiCellLayoutx$ urn:groove.net:PropertyList  _
_Version4,1,0,0  _G_Layout Layout%C% Layout$ urn:groove.net:PropertyValue&E& urn:groove.net:P
ue%
FieldsListBoxO
 MULTIROW'
 ;'MULTIROW&
 + CELL) LeftPad
 BORDER( 10ROW)
FieldValueViewContainer
|( BORDER' LeftPad10TopPad  urn:groove.net:Componentd
10RightPad
 10  BottomPad
 NameF1i0e5
t:ComponentResource urn:groove.net:PropertyList,o  urn:groove.net:ComponentResource URL*ht
ponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComp
onents.GrooveCommonComponents_DLL&Version=0&Factory=ListBoxl, urn:groove.net:Propert
yList Sort Truea  __Version4,1,0,0
 urn:groove.net:Componentd Name@DocumentPropertiesAdvancedLayouten  urn:groove.net:Componen
source urn:groove.net:PropertyList-   urn:groove.net:ComponentResource URL:http://componen
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=MultiCellLayoutx- urn:groove.net:PropertyList  _
_Version4,1,0,0  _G_Layout Layout.C. Layout- urn:groove.net:PropertyValue/E/ urn:groove.net:P
ue. MULTICOL0
 ;0MULTICOL/
  BORDER1 COL2|1 BORDER0 LeftPad10 TopPad10RightPad  10  BottomPad10O
2 HEIGHT28  BottomPad10 IDB5 CELL2 HEIGHT18s RecDefLabelA6 CELL2 HEIGHT18s
 RecDefName  urn:groove.net:Componentd NameIDo  urn:groove.net:ComponentResource urn:groov
st8o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/R
t.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versio
n=0&Factory=Staticy8 urn:groove.net:PropertyList  FontStyleLabelText  __Version4
,1,0,0`   m d       urn:groove.net:Componentd NameIDLabel  urn:groove.net:ComponentReso
ve.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Pa
ckage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fact
ory=Static 7 urn:groove.net:PropertyList LabelRecord ID:">  FontStyleLabelText  __Ve
,1,0,0 urn:groove.net:Componentd NameRecDefLabel  urn:groove.net:ComponentResource urn:gr
rtyList9o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Compone
s/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&V
ersion=0&Factory=Static9 urn:groove.net:PropertyList LabelRecord Type:
ontStyleLabelText  __Version4,1,0,0 urn:groove.net:Componentd NameRecDefNameou  urn:
ComponentResource urn:groove.net:PropertyList:o  urn:groove.net:ComponentResource URL(http
nents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompon
ents.GrooveCommonComponents_DLL&Version=0&Factory=Staticy: urn:groove.net:PropertyLi
st  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Componentd Name.FieldValu
n:groove.net:ComponentResource# urn:groove.net:ComponentConnections urn:groove.net:Proper
tyList;{  urn:groove.net:ComponentResource URL6http://components.groove.net/Groove/Componen
/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ve
rsion=0&Factory=ViewContainer]# urn:groove.net:ComponentConnections urn:groove.net:Connect
iony urn:groove.net:Connection
 ConnectionID0 Name FieldValueLayout
 _G_Background  ; urn:groove.net:PropertyList
   __Version4,1,0,0
 Background<?<
 Background; urn:groove.net:Color=G= urn:groove.net:Color< RGB#ffffff urn:groove.net:Compo
rn:groove.net:ComponentResource urn:groove.net:PropertyListGo  urn:groove.net:ComponentReso
urce URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gro
ove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static G urn:groove.ne
t:PropertyList LabelData Type:OL  FontStyleLabelText  __Version4,1,0,0,  D   \
ValueLayout
  urn:groove.net:ComponentResource urn:groove.net:PropertyList>   urn:groove.net:Co
ntResource URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groo
ve.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellL
ayoutx> urn:groove.net:PropertyList  __Version4,1,0,0  _G_Layout Layout?C? Layout>
tyValue@
DataTypeLabelXE@ urn:groove.net:PropertyValue?
D CELLB HEIGHT28  BottomPad  MULTICOLA
 10DataTypeF
 ,AMULTICOL@
 E CELLB HEIGHT
COLBOB18COLA
s FieldValueLabel+
 CELLC CELLD CELLEF CELL
 CE
 FieldValue urn:groove.net:Componentd NameFieldValueLabel  urn:groove.net:ComponentResourc
t:PropertyListIo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/
mponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponent
s_DLL&Version=0&Factory=Static I urn:groove.net:PropertyList Label
Value:"5  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Componentd NameFi
T  urn:groove.net:ComponentResource urn:groove.net:PropertyListJk  urn:groove.net:Componen
source URL$http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.G
roove.ToolComponents.GrooveTextTools_DLL&Version=0,3&Factory=TextView2veJ urn:groove.
net:PropertyList  BackStyleTransparent  __Version4,1,0,0 IgnoreLinksTrueaReadOnly  Truea
enuStyle
SBorderVisible
taticnB Truea urn:groove.net:Componentd NameRTFHelpProvider  urn:groove.net:ComponentR
groove.net:PropertyListL   urn:groove.net:ComponentResource URL:http://components.groove.net/
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
CContextHelpID
omponents_DLL&Version=0&Factory=RTFHelpProvider L urn:groove.net:PropertyList
44190 ContextHelpDisplayType0  __Version4,1,0,0H    d    3 urn:groove.net:Componentd N
:groove.net:ComponentResource# urn:groove.net:ComponentConnections SCRIPT SCRIPTINTERFACE SCR
PT SCRIPTINTERFACE urn:groove.net:PropertyListKw  urn:groove.net:ComponentResource URL2http:/
onents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompo
nents.GrooveCommonComponents_DLL&Version=0&Factory=ScriptHost2 # urn:groove.net:Compon
entConnections urn:groove.net:Connection urn:groove.net:Connection  urn:groove.net:Con
nection
 urn:groove.net:Connection urn:groove.net:Connection
 urn:groove.net:Connection
urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net
Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:
ove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connec
tion urn:groove.net:Connectionmurn:groove.net:Connection
  NameCreatedDate
 ConnectionID1q  urn:groove.net:Connection NameModifiedDate:C
 ConnectionID2i
 urn:groove.net:Connection NameCreatedBy
 ConnectionID3u urn:groove.net:Connection NameLastModifiedBy-5
 ConnectionID4q
 urn:groove.net:Connection NameFieldsListBox
 urn:groove.net:Connection
ConnectionID5i  NameDataType
 ConnectionID6m urn:groove.net:Connection NameFieldValue T
 ConnectionID7] urn:groove.net:Connection NameIDo
 ConnectionID8  urn:groove.net:Connection Name>DocumentPropertiesViewContainer
 ConnectionID9q urn:groove.net:Connection NameRecDefNameou
 ConnectionID10} urn:groove.net:Connection Name CreatedDateLabelRo
 ConnectionID404} urn:groove.net:Connection Name"ModifiedDateLabel
 ConnectionID404y urn:groove.net:Connection NameCreatedByLabelor
 ConnectionID404  urn:groove.net:Connection Name&LastModifiedByLabel
 ConnectionID404i urn:groove.net:Connection NameIDLabel
 ConnectionID404u urn:groove.net:Connection NameDataTypeLabel
 ConnectionID404y urn:groove.net:Connection NameFieldValueLabel
 ConnectionID404q urn:groove.net:Connection NameRecDefLabel
 ConnectionID404q SCRIPT SRCDhttp://components.groove.net/Groove/Components/Root.osd?Package=
et.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Versi
on=5&Factory=OpenonD SCRIPTINTERFACE LIBIDL{366DFD51-2C22-438d-9135-5093E3102447}ox IIDL{BA7
57296-9C88-4574-9FB1-5178D58A907D}l`
function InitializeDialo
g(i_UID elegate, i_Record, i_DisseminatedDesign, i_Account)
{
g_Record = i_Rec
ord;
g_Design = i_Dis
seminatedDesign;
g_Account = i_Ac
count;
g_UIDelegate = i
_UIDelegate;
InitializeCompon
entStrings();
InitUI();
CreateAndShowWin
dow();
}
x$ SCRIPTU$
var g_Record;
var g_Design;
var g_Account;
var g_UIDelegate;;
var g_Telespace = Proper
tyList.OpenProperty(PROPERTY_TELESPACE);
var g_PropertySheetSubFo
rm = null;
var g_PropertySheetDeleg
ate = null;
var g_Window = null;
function InitializeCompo
nentStrings()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
CreatedDateLabel
.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_CREATED_O
N));
ModifiedDateLabe
l.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_MODIFIED
_ON));
CreatedByLabel.S
etText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_CREATED_BY)
);
LastModifiedByLa
bel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_MODIFI
ED_BY));
IDLabel.SetText(
Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_RECORD_ID));
DataTypeLabel.Se
tText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_DATA_TYPE));
FieldValueLabel.
SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_VALUE));
RecDefLabel.SetT
ext(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_REC_DEF_NAME))
;
}
function Terminate()
{
g_Telespace = nu
ll;
delete g_Telespa
ce;
g_PropertySheetD
elegate = null;
delete g_Propert
ySheetDelegate;
if (g_PropertySh
eetSubForm != null)
g_Proper
tySheetSubForm.Close();
g_PropertySheetS
ubForm = null;
delete g_Propert
ySheetSubForm;
g_Window = null;
delete g_Window;
g_UIDelegate = n
ull;
delete g_UIDeleg
ate;
g_Record = null;
delete g_Record;
g_Design = null;
delete g_Design;
g_Account = null
;
delete g_Account
;
CollectGarbage()
;
}
function OnPostedEvent(i
_Event)
{
if (i_Event == 8
899)
CloseWin
dow();
}
function InitUI()
{
var Transaction
= g_Telespace.OpenTransaction(false);
try
{
FieldsLi
stBox.ResetContent();
FieldVal
ue.TextContent.PlainText = "";
DataType
.SetText("");
if (g_Re
cord.HasField("_Created"))
CreatedDate.SetText(g_UIDelegate.FormatDateTime(g_Record.OpenField("_Created"),
GrooveIntlDateFormatStyle_Short, GrooveIntlDateFormatStyle_Long));
if (g_Re
cord.HasField("_Modified"))
ModifiedDate.SetText(g_UIDelegate.FormatDateTime(g_Record.OpenField("_Modified")
, GrooveIntlDateFormatStyle_Short, GrooveIntlDateFormatStyle_Long));
if (g_Re
cord.HasField("_CreatedBy"))
CreatedBy.SetText(g_Record.OpenField("_CreatedBy"));
if (g_Re
cord.HasField("_ModifiedBy"))
LastModifiedBy.SetText(g_Record.OpenField("_ModifiedBy"));
ID.SetTe
xt(g_Record.OpenField("_RecordID"));
RecDefNa
me.SetText(g_Record.Type);
var Fiel
dDefEnum = g_Record.Definition.OpenFieldDefinitionEnum();
while (F
ieldDefEnum.HasMore())
{
var FieldDef = FieldDefEnum.OpenNext();
var index = FieldsListBox.AddItem(FieldDef.Name);
FieldsListBox.SetItemData(index, FieldDef.Type);
}
Transact
ion.Commit();
}
catch(error)
{
GrooveDe
bugFunctions.DisplayAssert(0, "");
Transact
ion.Abort();
}
}
function FieldsListBox_O
nSelectionChange(i_Name, i_Item)
{
var FieldName =
FieldsListBox.GetSelectionText();
  var FieldIndex = FieldsL
istBox.GetSelectionIndex();
var ItemData = F
ieldsListBox.GetItemData(FieldIndex);
DataType.SetText
(ConvertFieldDefTypeToString(ItemData));
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
var Transaction
= g_Telespace.OpenTransaction(false);
try
{
if (Item
Data == GrooveFieldType_DateTime)
{
var DateTimeValue = g_Record.OpenField(FieldName);
if (DateTimeValue != INVALID_DATE)
FieldValue.TextContent.PlainText = g_UIDelegate.FormatDateTime(DateTimeValue, Gr
ooveIntlDateFormatStyle_Short, GrooveIntlDateFormatStyle_Long);
else
FieldValue.TextContent.PlainText = "";
}
else if
(ItemData == GrooveFieldType_R8)
FieldValue.TextContent.PlainText = g_Design.IGrooveFormsToolDesignPrivate.Conver
tDesignObjectIDToString(g_Record.OpenField(FieldName));
else if
(ItemData == GrooveFieldType_Element)
{
// This is an element - need figure out if it is RTF or Attachments.
if (g_Design.Fields.DoesExistByName(FieldName))
{
var FieldDataType = g_Design.Fields.OpenByName(FieldName).DataType;
if (FieldDataType == GrooveFormsToolFieldDataType_RichText)
FieldValue.TextContent.ReadFromElement(g_Record.OpenFieldAsElementCopy(FieldName
), 0xFFFF);
else if (FieldDataType == GrooveFormsToolFieldDataType_Attachments)
FieldValue.TextContent.PlainText = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFOR
MS_GRP_REC_PROPS_FILE_ATTACHMENTS);
else
FieldValue.TextContent.PlainText = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFOR
MS_GRP_REC_PROPS_UNABLE_TO_DISPLAY);
}
else
FieldValue.TextContent.PlainText = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFOR
MS_GRP_REC_PROPS_UNABLE_TO_DISPLAY);
}
else if
(ItemData == GrooveFieldType_Contact)
{
var pContact = g_Record.OpenFieldAsContact(FieldName);
if (pContact != null)
{
var pContactHelper = GrooveScriptFunctions.CreateNewObject("Groove.ContactHelper
Object");
FieldValue.TextContent.PlainText = pContactHelper.OpenFullName(pContact, false);
}
else
FieldValue.TextContent.PlainText = Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFOR
MS_GRP_REC_PROPS_NO_CONTACT);
}
else if
(ItemData == GrooveFieldType_Binary)
{
FieldValue.TextContent.PlainText = "";
}
else
FieldValue.TextContent.PlainText = g_Record.OpenField(FieldName);
Transact
ion.Commit();
}
catch (error)
{
GrooveDe
bugFunctions.DisplayAssert(0, "");
Transact
ion.Abort();
}
}
function ConvertFieldDef
TypeToString(i_FieldDefType)
{
if (i_FieldDefTy
pe == GrooveFieldType_None)
return "
VARIANT";
else if (i_Field
DefType == GrooveFieldType_String)
return "
STRING";
else if (i_Field
DefType == GrooveFieldType_Boolean)
return "
BOOLEAN";
else if (i_Field
DefType == GrooveFieldType_I4)
return "
LONG";
else if (i_Field
DefType == GrooveFieldType_R8)
return "
DOUBLE";
else if (i_Field
DefType == GrooveFieldType_Binary)
return "
BINARY";
else if (i_Field
DefType == GrooveFieldType_DateTime)
return "
DATETIME";
else if (i_Field
DefType == GrooveFieldType_Element)
return "
ELEMENT";
else if (i_Field
DefType == GrooveFieldType_Contact)
return "
CONTACT";
else
return "
UNKNOWN";
}
function CreateAndShowWi
ndow()
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
if (g_PropertySh
eetSubForm == null)
g_Proper
tySheetSubForm = App.IGrooveApplication2.CreateAccountDialogsWithSubForm(g_Accou
nt, GrooveAcc ountDialogsSubForms_PropertySheetDialogSubform);
var b = g_Proper
tySheetSubForm.DoesDelegateComponentExist();
if (b == false)
GrooveDe
bugFunctions.DisplayAssert(0, "");
if (g_PropertySh
eetDelegate == null)
g_Proper
tySheetDelegate = g_PropertySheetSubForm.OpenDelegateComponent();
var TabLabelEnum
= CreateBSTREnum();
TabLabelEnum.Add
(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_TAB_INFO));
TabLabelEnum.Add
(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_TAB_FIELDS));
TabLabelEnum.Add
(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_TAB_ADV));
g_PropertySheetD
elegate.IGroovePropertySheetOwner.Advise(TabLabelEnum.IGrooveBSTREnum, DocumentP
ropertiesViewContainer, ScriptHostComponent.IGroovePropertySheetOwnerListener, t
rue);
g_Window = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate.CreateWindowForSubFormPrivate(Priv.Get
ResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_TITLE), g_PropertySheetSub
Form, GROOVE_NULL);
g_Window.DoModal
();
}
function CloseWindow()
{
if (g_PropertySh
eetDelegate != null)
g_Proper
tySheetDelegate.IGroovePropertySheetOwner.Unadvise();
if (g_Window !=
null)
{
g_Window
.Close(GrooveWindowResult_Cancel);
g_Window
.Destroy(GrooveWindowResult_Cancel);
}
}
 SCRIPTINTERFACE LIBIDL{FFC9B1CF-C
AC7-4ed4-A3B6-3793F5699DAC}n IIDL{A071BA28-7221-4712-98BB-4FB89D608BE2}n
function OnTabSelectionC
hanged(i_Label, i_pRTFHelpInfo)
{
var Priv = g_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
if (i_Label == P
riv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_TAB_INFO))
Document
PropertiesViewContainer.LayoutByName = "DocumentPropertiesInfoLayout";
else if (i_Label
== Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_TAB_FIELDS))
Document
PropertiesViewContainer.LayoutByName = "DocumentPropertiesFieldsLayout";
else if (i_Label
== Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REC_PROPS_TAB_ADV))
Document
PropertiesViewContainer.LayoutByName = "DocumentPropertiesAdvancedLayout";
i_pRTFHelpInfo.S
etHelpID(4, "44190", 0);
}
function OnButtonClicked
(i_ButtonId)
{
if (i_ButtonId =
= 3)
PostEven
t(8899, 0);
}
function OnUpdateButtonS
tate(i_ButtonId, i_pButton)
{
}
qK urn:groove.net:PropertyList EnforceInt
erfaces1  __Version4,1,0,0' urn:groove.net:Component% NameDLookupStringGeneratorView
rn:groove.net:ComponentResource(# urn:groove.net:ComponentConnections, urn:groove.net
:PropertyListM{(  urn:groove.net:ComponentResource' URL6http://components.groove.net/Groo
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=ViewContainer],# urn:groove.net:ComponentConnections' urn
:groove.net:Connection- -  urn:groove.net:Connection,
 ConnectionID0 Name6LookupStringGeneratorLayout M  urn:groove.net:PropertyList' PreferredHeigh
0 PreferredWidth450  __Version4,1,0,0    # urn:groove.net:Component Name8LookupString
:ComponentResource$ urn:groove.net:ComponentGroup%o$  urn:groove.net:ComponentResource
# URL*http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groo
ve.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=SubFormx% urn:groove.
net:ComponentGroup# Delegate2  LookupStringGeneratorCode DefaultViewDLookupStringGenerato
rViewContainerrt$ urn:groove.net:Component' urn:groove.net:Component. urn:groove.net:Comp
onent< urn:groove.net:ComponentC urn:groove.net:ComponentI urn:groove.net:ComponentO urn:gro
ove.net:Componentw urn:groove.net:Component
 urn:groove.net:Component< urn:groove.net:ComponentD urn:groove.net:ComponentJ urn:groove.net
mponentP urn:groove.net:ComponentV urn:groove.net:Component\ urn:groove.net:Componenta urn:gr
e.net:Componentg urn:groove.net:Componentk urn:groove.net:Componentq urn:groove.net:Componen
ts urn:groove.net:Componentw urn:groove.net:Component  urn:groove.net:Component  urn:groove.n
onent  urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component urn:groo
onent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groo
onent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groo
onent urn:groove.net:Component. urn:groove.net:Component% Name6LookupStringGeneratorLayou
e.net:ComponentResource/ urn:groove.net:PropertyListN /   urn:groove.net:ComponentResource
. URL:http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groo
ve.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutxN urn
:groove.net:PropertyList.  __Version4,1,0,0  _G_Layout LayoutOCO LayoutN urn:groo
tyValuePEP urn:groove.net:PropertyValueO MULTIROWQ  DQMULTIROWP
  ROWR ROWT ROWV(R ROWQ CELLS2S CE
StringGeneratorInnerViewContainerBV ROWQ CELLW CELLX CELLY2W CELLV HEIGHT30YX CELLV WIDTH210
Pad5 LookupExitButton    < urn:groove.net:Component% NameNLookupStringGeneratorInnerViewC
omponentResource=# urn:groove.net:ComponentConnectionsA urn:groove.net:PropertyListZ{=  u
rn:groove.net:ComponentResource< URL6http://components.groove.net/Groove/Components/R
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=ViewContainer]A# urn:groove.net:ComponentConnections< urn:groove.net:Con
nectionB B urn:groove.net:ConnectionA
 ConnectionID0 Name(PropertyLookupLayout  Z urn:groove.net:PropertyList< Prefe
Height250 PreferredWidth250  __Version4,1,0,0C urn:groove.net:Component% Name LookupCop
  urn:groove.net:ComponentResourceD urn:groove.net:PropertyList[oD  urn:groove.net:Compone
ntResourceC URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.g
roove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone[ urn
:groove.net:PropertyListC DefaultTruea StyleStandardButtonb LabelCopya  __Version4,1,0,0{
ove.net:Component Name AboutToolSubForm   urn:groove.net:ComponentResource| ur
n:groove.net:ComponentGroup}o|  urn:groove.net:ComponentResource{ URL*http://components.
groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.G
rooveCommonComponents_DLL&Version=0&Factory=SubForm} urn:groove.net:ComponentGroup{ Deleg 
ateAboutToolCode DefaultView,AboutToolViewContaineCr
 urn:groove.net:Component~ urn:groove.net:Component  urn:groove.net:Component  urn:groove.net
mponent urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:gr
t:Component urn:groove.net:Component urn:groove.net:Component~ urn:groove.net:Component}
oolViewContaineCr  urn:groove.net:ComponentResource # urn:groove.net:ComponentConnection
s  urn:groove.net:PropertyList{   urn:groove.net:ComponentResource~ URL6http://components.gr
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=ViewContainer] #  urn:groove.net:ComponentConnec
tions~ urn:groove.net:Connection u  urn:groove.net:Connection 
 ConnectionID0 NameAboutToolLayout  urn:groove.net:PropertyList~ PreferredHeight415 Preferre
_Version4,1,0,0|  p        urn:groove.net:Component} NameAboutToolLayout  urn:groove.ne
ropertyList    urn:groove.net:ComponentResource  URL:http://components.groove.net/Groove/Com
nts/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL
&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList   __Version4,1,0,0
G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTI 
0ToolNameValue(
 LeftPad10( ROW
ToolNameLabel(  ROW
 CELL
 CELL
CELL
D G]CELL
 CELL
CELL
 HEIGHT
 HEIGHT
18s128s ToolVersionLabel(
 BottomPad10  ROW CELL` CELL HEIGHT28
tton  urn:groove.net:Component} NameToolNameLabel  urn:groove.net:ComponentResource  urn:gr
opertyListo   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/Comp
ents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DL
L&Version=0&Factory=Static urn:groove.net:PropertyList  Label*Design template name:  Font
abelText  __Version4,1,0,0 urn:groove.net:Component} NameToolNameValue  urn:groove.
nentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://co
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=Static  urn:groove.net:PropertyList  B
reakTypeWordBreak  FontStyleLabelText  __Version4,1,0,08      8 urn:groove.n
sionLabel   urn:groove.net:ComponentResource urn:groove.net:PropertyListo  u
groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.o
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&Factory=Static urn:groove.net:PropertyList Label0Design template version:t  FontStyleL
abelText  __Version4,1,0,0 urn:groove.net:Component} Name ToolVersionValueIP  urn:g
t:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(ht
mponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCom
ponents.GrooveCommonComponents_DLL&Version=0&Factory=Static   urn:groove.net:PropertyLis
t  BreakTypeWordBreak  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:C
eAboutToolLabel##  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groo
et:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Packa
ge=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory
=Static urn:groove.net:PropertyList  __Version4,1,0,0 Label About This Tool:HI  Brea
ordBreak  FontStyleLabelText
 VAlignment
Centere urn:groove.net:Component} Name"AboutToolTextView  urn:groove.net:ComponentResource
ve.net:PropertyListk  urn:groove.net:ComponentResource URL$http://components.groove.net/Gr
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveTextTools_
DBorderVisible
LL&Version=0,4&Factory=TextView2m urn:groove.net:PropertyList  BackStyletransparent
FalseReadOnly
 Truea  __Version4,1,0,0  urn:groove.net:Component} NameOKButton:  urn:gro
Resource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://compon
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
oveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyList  __Ve
,1,0,0 LabelOKg: Tooltip"Close the window. DefaultTruea StyleStandardButtonb  d    t   
roove.net:ComponentResource# urn:groove.net:ComponentConnections SCRIPT SCRIPTINTERFACE S
:groove.net:PropertyListw  urn:groove.net:ComponentResource URL2http://components.groove.n
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=ScriptHost2)# urn:groove.net:ComponentConnections urn:g
roove.net:Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Co
ection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connectionm ur
net:Connection NameOKButton:
 ConnectionID55u urn:groove.net:Connection NameToolNameLabel
 ConnectionID56u urn:groove.net:Connection NameToolNameValue
 ConnectionID57} urn:groove.net:Connection Name ToolVersionLabel
 ConnectionID58} urn:groove.net:Connection Name ToolVersionValueIP
 ConnectionID59s} urn:groove.net:Connection Name"AboutToolTextView
 ConnectionID60vy urn:groove.net:Connection NameAboutToolLabel##
 ConnectionID404q SCRIPT SRCDhttp://components.groove.net/Groove/Components/Root.osd?Packag
et.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Versi
on=5&Factory=Openon[ SCRIPTINTERFACE LIBIDL{366DFD51-2C22-438d-9135-5093E3102447}ox IIDL{56
C7A76-A990-4f36-9F09-C9EF9B236B32}ALw
function InitializeDialo
g(i_UIDelegate, i_ToolName, i_ToolVersion, i_RTFElement)
{
var Priv = i_UID
elegate.IGrooveFormsToolUIDelegatePrivate;
ToolNameLabel.Se
tText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ABT_TOOL_DES_TEMP_NAME
));
ToolNameValue.Se
tText(i_ToolName);
ToolVersionLabel
.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ABT_TOOL_DES_TEMP_V
ER));
ToolVersionValue
.SetText(i_ToolVersion);
AboutToolLabel.S
etText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_ABT_TOOL_ABOUT_TOOL))
;
AboutToolTextVie
w.TextContent.ReadFromElement(i_RTFElement, GrooveTextContentFlag_All);
OKButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
OKButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_CLOSE_WINDOW);
}
' SCRIPT
function OKButton_OnComm
and(i_UICommand)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_OK);
Window.Destroy(G
rooveWindowResult_OK);
}
q urn:groove.net:PropertyList EnforceInter
faces1  __Version4,1,0,0 Z   urn:groove.net:Component Name(ReplaceDesignSubFormar  urn:gr
tResource urn:groove.net:ComponentGroupo  urn:groove.net:ComponentResource URL*http://com
s.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents
.GrooveCommonComponents_DLL&Version=0&Factory=SubFormW urn:groove.net:ComponentGroup HelpI
nfoProviderRTFHelpProviderDelegate" ReplaceDesignCode DefaultView4ReplaceDesignViewCont
ainert urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:groo
:Component urn:groove.net:Component urn:groove.net:Component urn:groove.net:Component urn:gro
:Component urn:groove.net:Component% urn:groove.net:Component, urn:groove.net:Component; u
t:Component Name4ReplaceDesignViewContainert  urn:groove.net:ComponentResource# urn:groove.
net:ComponentConnections urn:groove.net:PropertyList{  urn:groove.net:ComponentResource U
://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.To
olComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn:groov
e.net:ComponentConnections urn:groove.net:Connection} urn:groove.net:Connection
 ConnectionID0 Name&ReplaceDesignLayout   urn:groove.net:PropertyList PreferredHeight185 Pre
h485  __Version4,1,0,0 urn:groove.net:Component Name$ReplaceDesignLabelze  urn:groove.
entResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://compo
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=StaticS urn:groove.net:PropertyList  Brea
ordBreak LabelSelect the Workspace and Forms tool whose design should replace this t
ool's design:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component Name(Lo
espaceLabelCo  urn:groove.net:ComponentResource
 urn:groove.net:PropertyListo
  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&FactorFontStyle
y=Static Laburn:groove.net:PropertyList
elText  __Version4,1,0,0Label   8Wo{rkHspace:> urn:groove.net:Component
ve.net:ComponentResource urn:groove.net:PropertyList   urn:groove.net:ComponentResource U
/components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.Tool
Components.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.n
et:PropertyList  __Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:P
rtyValue MULTIROW
 wMULTIROW
  BORDER ROW ROW ROW ROW ROW ROW| BORDER TopPad10RightPa 
0 LookupTelespaceComboBox( ROW CELLF CELL HEIGHT18s LookupToolLabel( ROW CELLb CELL
 CancelButton urn:groove.net:Component Name.LookupTelespaceComboBox  urn:groove.net:Compon
ce urn:groove.net:PropertyLists  urn:groove.net:ComponentResource URL,http://components.groo
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=ComboBox
  urn:groove.net:PropertyList Sort true Enable
false  __Version4,1,0,0 urn:groove.net:Component NameLookupToolLabel  urn:groove.net:Com
rce urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.gro
/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommo
nComponents_DLL&Version=0&Factory=Static  urn:groove.net:PropertyList Label
Tool:  FontStyleLabelText  __Version4,1,0,0H      8 urn:groove.net:Component Nam
  urn:groove.net:ComponentResource urn:groove.net:PropertyLists  urn:groove.net:ComponentRes
ce URL,http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ComboBox
l urn:groove.net:PropertyList Sort true  __Version4,1,0,0  urn:groove.net:Component NameOKB
net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(htt
ponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComp
onents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyLis
t  __Version4,1,0,0 LabelOKg: Tooltip"Close the window. DefaultTruea StyleStandardButton
mponent NameCancelButton</  urn:groove.net:ComponentResource& urn:groove.net:PropertyListo&
oove.net:ComponentResource% URL(http://components.groove.net/Groove/Components/Root.os
d?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&
Factory=Buttone urn:groove.net:PropertyList% Cancel Truea  __Version4,1,0,0 Label&Cance
Alt+C StyleStandardButtonb(ToolName);
LookupTo
olComboBox.SetItemData(ToolIndex, ToolDescriptor);
}
TelespaceDescrip
tor = null;
delete Telespace
Descriptor;
ToolsEnum = null
;
delete ToolsEnum
;
CollectGarbage()
;
}
function GetHelpProvider
()
{
try
{
var RTFH
elpProvider = PropertyList.OpenProperty(PROPERTY_FORM).ComponentContainer.OpenCo
mponentByName("RTFHelpProvider");
return R
TFHelpProvider;
}
catch(error)
{
}
finally
{
RTFHelpP
rovider = null;
delete R
TFHelpProvider;
CollectG
arbage();
}
}
q urn:groove.net:PropertyList, EnforceInte
rfaces1  __Version4,1,0,0; urn:groove.net:Component NameRTFHelpProvider  urn:groove.net:Co
ource< urn:groove.net:PropertyList <   urn:groove.net:ComponentResource; URL:http://component
ve.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groov
eContextHelpID
CommonComponents_DLL&Version=0&Factory=RTFHelpProvider   urn:groove.net:PropertyList;
67420 ContextHelpDisplayType0  __Version4,1,0,0  EJ   P    , urn:groove.net:Componen
.net:ComponentResource-# urn:groove.net:ComponentConnections0 SCRIPT8 SCRIPTINTERFACE9 SCRIPT
:groove.net:PropertyListw-  urn:groove.net:ComponentResource, URL2http://components.groove.n
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=ScriptHost2)0# urn:groove.net:ComponentConnectio
ns, urn:groove.net:Connection1 urn:groove.net:Connection2 urn:groove.net:Connection3 urn:groo
et:Connection4 urn:groove.net:Connection5 urn:groove.net:Connection6 urn:groove.net:Connecti
on7i1 urn:groove.net:Connection0 NameOKButton:
 ConnectionID0q2 urn:groove.net:Connection0 NameCancelButton</
 ConnectionID1 3 urn:groove.net:Connection0 Name.LookupTelespaceComboBox
 ConnectionID2}4 urn:groove.net:Connection0 Name$LookupToolComboBox
 ConnectionID3 5 urn:groove.net:Connection0 Name$ReplaceDesignLabelze
 ConnectionID404 6 urn:groove.net:Connection0 Name(LookupTelespaceLabelCo
 ConnectionID404y7 urn:groove.net:Connection0 NameLookupToolLabel
 ConnectionID404q8 SCRIPT, SRCDhttp://components.groove.net/Groove/Components/Root.osd?Packag
=net.groove.Groove.Tools.Business.GrooveForms.GrooveFormsHelperFunctions_GSL&Ver
sion=5&Factory=Openon:9 SCRIPTINTERFACE, LIBIDL{366DFD51-2C22-438d-9135-5093E3102447}ox IIDL
{077700B8-73A4-42af-80D9-1F9886BB8F16}Y_V
function InitializeDialo
g(i_FormsToolDesigner, i_IsRefresh)
{
g_CallbackCode =
i_FormsToolDesigner;
InitializeCompon
entStrings();
ResetTelespaceLi
st();
g_IsRefresh = i_
IsRefresh;
}
function GetTelespaceDes
criptor()
{
var TelespaceInd
ex = LookupTelespaceComboBox.GetSelectionIndex();
var TelespaceDes
criptor = LookupTelespaceComboBox.GetItemData(TelespaceIndex);
return Telespace
Descriptor;
}
function GetToolDescript
or()
{
var ToolIndex =
LookupToolComboBox.GetSelectionIndex();
var ToolDescript
or = LookupToolComboBox.GetItemData(ToolIndex);
return ToolDescr
iptor;
}
function GetHelpInfo()
{
return GetHelpPr
ovider();
}
: SCRIPT,
var g_THIS_SPACE;
var g_THIS_TOOL;
var g_CallbackCode;
var g_IsRefresh = false;
function InitializeCompo
nentStrings()
{
var Priv = g_Cal
lbackCode;
ReplaceDesignLab
el.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REP_DSN_REPLACE_D
ESC));
LookupTelespaceL
abel.SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REP_DSN_WORKSPA
CE));
LookupToolLabel.
SetText(Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_REP_DSN_TOOL));
OKButton.Label =
Priv.GetResourcedString(IDS_FORMS_TOOL_COMMON_XML_OK);
OKButton.Tooltip
= Priv.GetResourcedString(IDS_FORMS_TOOL_SUBFORMS_GRP_TOOLTIP_CLOSE_WINDOW);
CancelButton.Lab
el = Priv.GetResourcedString(I DS_FORMS_TOOL_COMMON_XML_CANCEL);
CancelButton.IGr
ooveUICommand.Mnemonic = Priv.GetResourcedString(IDS_FORMS_TOOL_MNEMONIC_ALT_C);
g_THIS_SPACE = P
riv.GetResourcedString(IDS_FORMS_TOOL_COMMON_THIS_WORKSPACE);
g_THIS_TOOL = Pr
iv.GetResourcedString(IDS_FORMS_TOOL_COMMON_THIS_TOOL);
}

function OKButton_OnComm
and(i_UICommand)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_OK);
Window.Destroy(G
rooveWindowResult_OK);
}
function OKButton_OnUpda
teCommandState(i_UICommand)
{
if (LookupToolCo
mboBox.GetSelectionIndex() == -1 || LookupTelespaceComboBox.GetSelectionIndex()
== -1)
i_UIComm
and.Enabled = false;
else
i_UIComm
and.Enabled = true;
}
function CancelButton_On
Command(i_UICommand)
{
var Window = UIP
ropertyList.OpenProperty(UIPROPERTY_TOP_LEVEL_WINDOW);
Window.Close(Gro
oveWindowResult_Cancel);
Window.Destroy(G
rooveWindowResult_Cancel);
}
function ResetTelespaceL
ist()
{
// Setup the tel
espace list combobox here
LookupTelespaceC
omboBox.ResetContent();
var ThisTelespac
e = PropertyList.OpenPropertyAsIUnknown(PROPERTY_TELESPACE);
var ThisTelespac
eURL = ThisTelespace.CanonicalURL;
var ReturnDescri
ptor = null;
var TelespacePro
vider = PropertyList.OpenPropertyAsIUnknown(PROPERTY_TELESPACE_PROVIDER);
var TelespaceDes
criptorEnum = TelespaceProvider.IGrooveTelespaceProvider.OpenTelespaceDescriptor
Enum();
var MatchingInde
x = -1;
while (Telespace
DescriptorEnum.HasMore())
{
var Tele
spaceDescriptor = TelespaceDescriptorEnum.OpenNext();
if (Tele
spaceDescriptor.OnLocalDevice)
{
var DisplayName = TelespaceDescriptor.DisplayName;
var Index;
if (TelespaceDescriptor.CanonicalURL == ThisTelespaceURL)
{
DisplayName = g_THIS_SPACE;
Index = LookupTelespaceComboBox.InsertItem(0, DisplayName);
LookupTelespaceComboBox.SetSelectionByIndex(Index);
}
else
Index = LookupTelespaceComboBox.AddItem(DisplayName);
LookupTelespaceComboBox.SetItemData(Index, TelespaceDescriptor);
}
}
LookupToolComboB
ox.ResetContent();
TelespaceDescrip
torEnum = null;
delete Telespace
DescriptorEnum;
CollectGarbage()
;
}

function LookupTelespace
ComboBox_OnSelectionChange(i_Name, i_Item)
{
LookupToolComboB
ox.ResetContent();
}
// Tool ComboBox
function LookupToolCombo
Box_OnDropDown(i_Name)
{
LookupToolComboB
ox.ResetContent();
var TelespaceInd
ex = LookupTelespaceComboBox.GetSelectionIndex();
var TelespaceDes
criptor = LookupTelespaceComboBox.GetItemData(TelespaceIndex);
var ToolsEnum;
if (g_IsRefresh)
ToolsEnu
m = g_CallbackCode.GetToolsListByTemplateName(TelespaceDescriptor);
else
ToolsEnu
m = g_CallbackCode.GetToolsListByVersion(TelespaceDescriptor, g_CallbackCode.Too
lVersion);
var ThisToolName
= PropertyList.OpenProperty(PROPERTY_TOOL_DISPLAY_NAME);
var ThisTool = P
ropertyList.OpenProperty(PROPERTY_TOOL);
var ThisToolCano
nicalURL = ThisTool.CanonicalURL;
while (ToolsEnum
!= null && ToolsEnum.HasMore())
{
var Tool
Pair = ToolsEnum.OpenNextPair();
var Tool
Name = ToolPair.First;
var Tool
Descriptor = ToolPair.Second;
var Tool
Index;
if (Tool
Name == ThisToolName && ThisToolCanonicalURL == ToolDescriptor.CanonicalURL)
{
// Don't show the current tool in the list.
continue;
}
else
ToolIndex = LookupToolComboBox.AddItem @ urn:groove.net:Component Name@InfoPathErrorsAndW
Form   urn:groove.net:ComponentResourceC urn:groove.net:ComponentGroupDoC  urn:gr
oove.net:ComponentResource@ URL*http://components.groove.net/Groove/Components/Root.os
d?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&
Factory=SubFormD urn:groove.net:ComponentGroup@ Delegate  ErrWarnCode DefaultView2IPErrAndWarnVi
ewContainer urn:groove.net:ComponentE urn:groove.net:ComponentL urn:groove.net:Componentb urn
oove.net:Componenti urn:groove.net:Componentz urn:groove.net:Component  urn:groove.net:Compon
nt  urn:groove.net:Component  urn:groove.net:Component  urn:groove.net:Component  urn:groove.
ntE urn:groove.net:ComponentD Name2IPErrAndWarnViewContainer  urn:groove.net:ComponentReso
groove.net:ComponentConnectionsJ urn:groove.net:PropertyList{F  urn:groove.net:ComponentRe
sourceE URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContaine
r]J# urn:groove.net:ComponentConnectionsE urn:groove.net:ConnectionKqK urn:groove.net:Connect
ionJ
 ConnectionID0 NameErrWarnLayout  urn:groove.net:PropertyListE PreferredHeight420 PreferredW
_Version4,1,0,0b urn:groove.net:ComponentD Name$ErrWarnDescriptionel  urn:groove.net:Compon
ourcec urn:groove.net:PropertyListoc  urn:groove.net:ComponentResourceb URL(http://components
oove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gro
oveCommonComponents_DLL&Version=0&Factory=Static urn:groove.net:PropertyListb  __Version4
,1,0,0 Label  BreakTypeWordBreak  FontStyleLabelText
 VAlignment
Centere  urn:groove.net:ComponentD Name(ErrExplanationLayout   urn:groove.net:ComponentResou
e.net:PropertyList    urn:groove.net:ComponentResource  URL:http://components.groove.net/Groo
mponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponent
s_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList   __Version4,1,0,0
G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  ,MU

tion    0   U 8L urn:groove.net:ComponentD NameErrWarnLayout  urn:groove.net:ComponentR
t M  urn:groove.net:ComponentResourceL URL:http://components.groove.net/Groove/Components/Ro
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=MultiCellLayoutx urn:groove.net:PropertyListL  __Version4,1,0,0  _G_L
tC Layout urn:groove.net:PropertyValueE urn:groove.net:PropertyValue MULTIROW  tMULTIROW

 RightPad10 ErrWarnDescription( ROW CELL_ CELL LeftPad10RightPad
 10 ErrWarnListView( ROW CEL
ationLabel( ROW CELL  CELL LeftPad10RightPad
 10 HEIGHT11 5 ErrExplanationViewContainerB
 RightPad5OKButtonh
  CELL
 RightPad5
 CancelButton(
false  __Version4,1,0,0 SingleSelection
false Has3DBordertrue MSCCWorkaroundColor#FFFFFF
 _G_ImageList
 _G_Columns Columns  ImageListD Columns  AlignmentLeft Width2000aF  ImageList`
D Name6ErrExplanationViewContainer  urn:groove.net:ComponentResource{# urn:groove.net:Compo
nentConnections| urn:groove.net:PropertyList{{  urn:groove.net:ComponentResourcez URL6http://
ponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComp
onents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]|# urn:groove.net
:ComponentConnectionsz urn:groove.net:Connection} }  urn:groove.net:Connection|
 ConnectionID
_G_Background0 Name(ErrExplanationLayout   urn:groove.net:PropertyListz  __Version4,1,0,0
 BackgroundI
 Background urn:groove.net:BackgroundStyle  urn:groove.net:BackgroundStyle Style"SectionBackg
 Transparency128  urn:groove.net:ComponentD NameErrExplanationCo  urn:groove.net:ComponentR
ve.net:PropertyList!o   urn:groove.net:ComponentResource  URL(http://components.groove.net/Gr
ve/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComp
onents_DLL&Version=0&Factory=Static! urn:groove.net:PropertyList   __Version4,1,0,0 Lab
l  BreakTypeWordBreak  FontStyleDescriptionText
 VAlignment
Centere  urn:groove.net:ComponentD Name.ErrWarnExplanationLabel  urn:groove.net:ComponentRe
roove.net:PropertyList"o   urn:groove.net:ComponentResource  URL(http://components.groove.net
roove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonC
omponents_DLL&Version=0&Factory=Static" urn:groove.net:PropertyList   __Version4,1,0,0 Lab
l  BreakTypeWordBreak  FontStyleDescriptionText
 VAlignment
Centere   urn:groove.net:ComponentD NameOKButton:  urn:groove.net:ComponentResource  urn:gro
tyList#o   urn:groove.net:ComponentResource  URL(http://components.groove.net/Groove/Componen
/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ve
rsion=0&Factory=Buttone# urn:groove.net:PropertyList  DefaultTruea StyleStandardButtonb Label
_Version
T   4,1urn:groove.net:ComponentD
,0,0\    NameCancelButton</  urn:groove.net:ComponentResource  ur
oove.net:ComponentResource  URL(http://components.groove.net/Groove/Components/Root.osd?
Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fa
ctory=Buttone$ urn:groove.net:PropertyList  Cancel Truea StyleStandardButtonb Label
Cancelo  __Version4,1,0,0  urn:groove.net:ComponentD NameErrWarnCode  urn:groove.net:
ource# urn:groove.net:ComponentConnections  urn:groove.net:ComponentResource URL\http://
groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.SystemComponents
.GrooveResource_DLL&Version=0&Factory=InfoPathFormsToolErrAndWarnDlgDelegateB# urn:gro
ove.net:ComponentConnections urn:groove.net:Connection urn:groove.net:Connection urn:groov
Connection urn:groove.net:Connection urn:groove.net:Connection urn:groove.net:Connectioni
et:Connection NameOKButton:
 ConnectionID0u urn:groove.net:Connection NameErrWarnListView
 ConnectionID1} urn:groove.net:Connection Name$ErrWarnDescriptionel
 ConnectionID2q urn:groove.net:Connection NameCancelButton</
 ConnectionID3u urn:groove.net:Connection NameErrExplanationCo
 ConnectionID4  urn:groove.net:Connection Name.ErrWarnExplanationLabel
 ConnectionID5 urn:groove.net:Component NameLookupTypeLabel  urn:groove.net:ComponentResou
t:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/
onents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_
DLL&Version=0&Factory=Static urn:groove.net:PropertyList
 VAlignment
Centere LabelLookup Type: <  FontStyleLabelText  __Version4,1,0,0 urn:groo
ponent Name0LookupTypeAllRadioButtonn  urn:groove.net:ComponentResource urn:groove.net:Prope
yListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Component
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=Buttone urn:groove.net:PropertyList StyleRadiobutton LabelAll RadiobuttonTruea
,1,0,0    p !   0 urn:groove.net:Component Name(PropertyLookupLayout   urn
roove.net:PropertyListv    urn:groove.net:ComponentResource URL:http://components.groove.net
ove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCom
ponents_DLL&Version=0&Factory=MultiCellLayoutxv urn:groove.net:PropertyList  __Version4
,1,0,0  _G_Layout LayoutwCw Layoutv urn:groove.net:PropertyValuexEx urn:groove.net:PropertyV
ROWx ROWz ROW| ROW  ROW  ROW  ROW  ROW  ROW  ROW  ROW  ROW  ROW  ROW  ROW  ROW  ROW  ROW  ROW
RadioButton(  ROWy CELL    CELL  NAMECrossSpaceen  BottomPad3 HEIGHT45 LookupTelespaceC
ottomPad2 HEIGHT22l LookupTelespaceComboBox(  ROWy CELL F   CELL  HEIGHT18s LookupToolLabel( 
upViewLabel(  ROWy CELL ^   CELL   BottomPad2 HEIGHT22l LookupViewComboBox(  ROWy CELL
02 LookupColumnKeyViewContainer(  ROWy CELL H   CELL  HEIGHT18s LookupColumnLabel(  ROWy CELL
nChoiceLabel5  ROWy CELL  CELL h  CELL  LeftPad15 HEIGHT18s LookupReturnAllRadioButtong  CELL
IGHT18s LookupNoCacheCheckBox(  ROWy CELL    CELL  NAMEIncludeURLs LeftPad15 HEIGHT0 LookupIn
 CommentLabel(
LookupCommentB  ROWy
ROWy  CELL
CELL  CELL
 CELL CELL
 NAMECoCELL
mmentHEIGHT
 CELL5RightPad
0  BottomPad3 HEIGHT
3RightPad
 23e TopPad
5 3 NAMELeftBut
onurn:groove.net:ComponentResource
>  urn:groove.net:PropertyListo  urn:groove.net:ComponentR
ce URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:P
ropertyList StyleRadiobutton Label
BRadiobutton
y Key> Truea  __Version4,1,0,0 urn:groove.net:Component Name.LookupTelespaceChe
et:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(h
onents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompo
nents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:PropertyList Sty
eckboxw LabelAllow looking up values in another workspace. Note: All users are requi
red to be members of the selected workspace.Checkbox
 Truea  __Version4,1,0,0 urn:groo
ponent Name(LookupTelespaceLabelCo  urn:groove.net:ComponentResource urn:groove.net:Property
sto  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove/Components/R
osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=
0&Factory=Static urn:groove.net:PropertyList
 VAlignment
Centere Label
Space:al  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component Name.Loo
spaceComboBox  urn:groove.net:ComponentResource urn:groove.net:PropertyLists  urn:groove.net
mponentResource URL,http://components.groove.net/Groove/Components/Root.osd?Package=net
.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Combo
Box
  urn:groove.net:PropertyList Sort true Enable
false  __Version4,1,0,0urn:groove.net:Component
  NameLookupToolLabel  urn:groove.net:Compo
ce  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource URL(http://componen
roove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Gr
ooveCommonComponents_DLL&Version=0&Factory=Static urn:groove.net:PropertyList
 VAlignment
Centere Label
Tool:  FontStyleLabelText  __Version4,1,0,0,    X  |     urn:groove.net:Compon
ponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://com
.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.
GrooveCommonComponents_DLL&Version=0&Factory=Static urn:groove.net:PropertyList
 VAlignment
Centere Label
View:  FontStyleLabelText  __Version4,1,0,0 urn:groove.net:Component Name8LookupColum
wContainer  urn:groove.net:ComponentResource# urn:groove.net:ComponentConnections{  urn:gro
et:ComponentResource URL6http://components.groove.net/Groove/Components/Root.osd?Packag
e=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=
ViewContainer]# urn:groove.net:ComponentConnections urn:groove.net:Connection  urn:groove.net
ction Name*LookupColumnKeyLayout
 ConnectionID0  urn:groove.net:Component Name*LookupColumnKeyLayout  urn:groove.net:Compone
e! urn:groove.net:PropertyList !   urn:groove.net:ComponentResource  URL:http://components.gr
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList   _
_Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:P
mnLabel( ROW CELLc CELL  BottomPad2 HEIGHT22l LookupKeyColumnComboBox( ROW CELLJ
ComboBox( ROW CELLm CELL  BottomPad2 HEIGHT22l! LookupKeyValueIsFieldNameCheckBox0 u
ColumnLabel.g  urn:groove.net:ComponentResource1 urn:groove.net:PropertyListo1  urn:groove.n
t:ComponentResource0 URL(http://components.groove.net/Groove/Components/Root.osd?Packa
ge=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory
=Static urn:groove.net:PropertyList0
 VAlignment
Centere LabelKey Column:  FontStyleLabelText  __Version4,1,0,0  ' p .     8 urn
ValueLabel  urn:groove.net:ComponentResource9 urn:groove.net:PropertyListo9  urn:groove.net:
omponentResource8 URL(http://components.groove.net/Groove/Components/Root.osd?Package=
net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=St
atic urn:groove.net:PropertyList8
 VAlignment
Centere LabelKey Value: v  FontStyleLabelText  __Version4,1,0,0> urn:groove.net:C
LookupKeyValueComboBoxa  urn:groove.net:ComponentResource? urn:groove.net:PropertyLists?  ur
:groove.net:ComponentResource> URL,http://components.groove.net/Groove/Components/Root
.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version
=0&Factory=ComboBox
y urn:groove.net:PropertyList> TooltipEither enter a key value to perform the lookup on, or
choose a field to get the key value from.  __Version4,1,0,0 TabStopTruea MultiSelect
FalseEditable
 TrueaE urn:groove.net:Component NameBLookupKeyValueIsFieldNameCheckBox  urn:gro
ComponentResourceF urn:groove.net:PropertyListoF  urn:groove.net:ComponentResourceE URL(http
omponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCo
mponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyL
istE StyleCheckboxw Label2Key value is a field nameCheckbox  Truea  __Version4,1,0,0K urn:groo
omponent Name"LookupColumnLabel  urn:groove.net:ComponentResourceL urn:groove.net:PropertyLis
toL  urn:groove.net:ComponentResourceK URL(http://components.groove.net/Groove/Components/Ro
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=Static urn:groove.net:PropertyListK
 VAlignment
Centere Label
FontStyle
LookuLpabCeolTuemxnt:>  __Version4,1,0,0g urn:groove.net:Component% Name$LookupToo
boBox   urn:groove.net:ComponentResourceh urn:groove.net:PropertyList s h  urn:groov
.net:ComponentResourceg URL,http://components.groove.net/Groove/Components/Root.osd?Pa
ckage=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Fact
ory=ComboBox
l  urn:groove.net:PropertyListg Sorttrue  __Version4,1,0,0T    P  x    S urn:groove.net
ove.net:ComponentResourceT urn:groove.net:PropertyListoT  urn:groove.net:ComponentResource
S URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groov
e.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static urn:groove.net:Pr
opertyListS
 VAlignment
Centere LabelReturn:  FontStyleLabelText  __Version4,1,0,0Y urn:groove.net:Component
LookupReturnAllRadioButton  urn:groove.net:ComponentResourceZ urn:groove.net:PropertyLi
stoZ  urn:groove.net:ComponentResourceY URL(http://components.groove.net/Groove/Components/R
oot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Vers
ion=0&Factory=Buttone urn:groove.net:PropertyListY StyleRadiobutton LabelAll RadiobuttonTrue
_Version4,1,0,0_ urn:groove.net:Component Name:LookupReturnUniqueRadioButton  urn:groove.ne
nentResource` urn:groove.net:PropertyListo`  urn:groove.net:ComponentResource_ URL(http://co
ents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompone
nts.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyList_ Style
adiobutton Label
Uniquert RadiobuttonTruea  __Version4,1,0,0e urn:groove.net:Component Name*LookupNoCa
groove.net:ComponentResourcef urn:groove.net:PropertyListof  urn:groove.net:ComponentResou
rcee URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.ne
t:PropertyListe StyleCheckboxw LabelNo Cacheg: CheckboxTruea  __Version4,1,0,0k urn:groo
LookupIncludeURLsCheckBox  urn:groove.net:ComponentResourcel urn:groove.net:PropertyLis
tol  urn:groove.net:ComponentResourcek URL(http://components.groove.net/Groove/Components/Ro
ot.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Versi
on=0&Factory=Buttone urn:groove.net:PropertyListk StyleCheckboxw Label:Return URLs as well
aluesCheckbox
 Truea  __Version4,1,0,0  h    x      q urn:groove.net:Component Name
cer urn:groove.net:PropertyListor  urn:groove.net:ComponentResourceq URL(http://components.g
e.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groove
CommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyListq StyleSmallTextB
tton LabelClear Propertyt  __Version4,1,0,0v urn:groove.net:Component Name"LookupAppl
ve.net:ComponentResourcew urn:groove.net:PropertyListow  urn:groove.net:ComponentResourcev U
ttp://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove
.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:Pr
opertyListv StyleSmallTextButton LabelApply Property  __Version4,1,0,0{
ve.net:Component NameCommentLabel
  urn:groove.net:ComponentResource| urn:groove.net:PropertyListo|  urn:groove.net:ComponentR
source{ URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static urn:groove.
net:PropertyList{  BreakTypeSingleLine  FontStyleLabelText LabelComment: <
_Version4,1,0,0  urn:groove.net:Component NameLookupComment  urn:groove.net:ComponentResour
et:PropertyListk   urn:groove.net:ComponentResource  URL$http://components.groove.net/Groove
ponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents
_DLL&Version=0&Factory=EditNa   urn:groove.net:PropertyList   TextLimit2048  __Version4
,1,0,0_G_Style
  StyleB Style urn:groove.net:PropertyValuel urn:groove.net:PropertyValue
et:Itemd urn:groove.net:Item Valuetrue NameMultilinet urn:groove.net:Item Valuetrue Name"V
nk ?OKButtonk ?! ColumnWidthLabel  $ShowTwistyCheckBoxJ~OKButton ? OKButton ?
OKButtonet ?^
OKButtontS ? OKButtonGe ?
OKButtoneCaS ?
?. OKButtoneF ?OKButtonbo ?OKButton ? OKButton: ?h qL 1 
mponentResource  urn:groove.net:PropertyList    urn:groove.net:ComponentResource  URL:http:/
groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.G
rooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyL
ist   __Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE
ROW MULTIROW
  ROW
  ROW ROW ROW ROW ROW ROW ROW( ROW CELLH CELL HEIGHT18s Display
HT27e PropertyValueEditControl2   CELL RightPad  5 TopPad2  BottomPad7TabOrder
 1 WIDTH23e
pPad2 WIDTH18s CancelOptionButton5 ROW CELL CELL  CELL RightPad  5 WIDTH170 TopPad5TabOrde

ionButton( ROW CELLy CELL TabOrder  1 TopPad5 HEIGHT120 ChoicesListViewViewContainer( ROW
ltOptionButton( ROW CELLO CELL TopPad10 PropertyDescriptionLabel urn:groove.net:Compo
roove.net:ComponentResource# urn:groove.net:ComponentConnections{  urn:groove.net:Componen
Resource URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove
.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContaine
r]# urn:groove.net:ComponentConnections urn:groove.net:Connection  urn:groove.net:Connect
ListViewLayout
 ConnectionID0H . 
  urn:groove.net:Component Name*ChoicesListViewLayout  urn:groove.net:ComponentResource ur
pertyList   urn:groove.net:ComponentResource URL:http://components.groove.net/Groove/Compo
Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Ver
sion=0&Factory=HTMLTableLayoutx urn:groove.net:PropertyList  __Version4,1,0,0  _G_L
tC Layout urn:groove.net:PropertyValueB urn:groove.net:PropertyValue TABLEI TABLE TR
HT32Y
 DownButton% TR TDX TD WIDTH22l HEIGHT22l SortListButton% TR TD TD urn:groove.ne
net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/Groov
mponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponent
s_DLL&Version=0&Factory=Static urn:groove.net:PropertyList  __Version4,1,0,0 LabelDispla
Value:ty
 VAlignment
Centere  FontStyleLabelText  BreakTypeSingleLine urn:groove.net:Component Name StoredV
lo  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:Componen
urce URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gro
ove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static urn:groove.net:
PropertyList  __Version4,1,0,0 LabelStored Value:
 VAlignment
Centere  FontStyleLabelText  BreakTypeSingleLine urn:groove.net:Component Name&Default
tton  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:Compon
source URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.G
roove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.n
et:PropertyList StyleSmallTextButton Label"Select by default  __Version4,1,0,0  p    
utton  urn:groove.net:ComponentResource urn:groove.net:PropertyListo  urn:groove.net:Compo
esource URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.
Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.n
et:PropertyList  __Version4,1,0,0
 ImageWidth16 StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex89 urn:groove.net:Component Name$CancelOptionButtonEL  urn:groove.net:Component
ove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/G
e/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompo
nents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyList  __Version4,1,0,0
 ImageWidth16 StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex90 urn:groove.net:Component Name$ModifyOptionButtonEL  urn:groove.net:Component
ove.net:PropertyListo  urn:groove.net:ComponentResource URL(http://components.groove.net/G
e/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompo
nents_DLL&Version=0&Factory=Buttone   urn:groove.net:PropertyList StyleSmallTextButton Label
ModifyPr  __Version4,1,0,0 urn:groove.net:Component Name$RemoveOptionButtonIG  urn:
ComponentResource urn:groove.net:PropertyListo  urn:groove.net:ComponentResource URL(http:
ents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompone
nts.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:PropertyList StyleS
allTextButton Label
Deleteru  __Version4,1,0,0  @   <  4  urn:groove.net:Component NameChoicesListV
ce urn:groove.net:PropertyLists  urn:groove.net:ComponentResource URL,http://components.gr
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=ListView5 urn:groove.net:PropertyList MSCCWorkaroundColor#
FFFF SingleSelectiontrue  __Version4,1,0,0
 _G_Columns ColumnsD Columns urn:groove.net:PropertyValue  urn:groove.net:PropertyValue urn:g
net:Column urn:groove.net:Columno urn:groove.net:Column Width15 Name  AlignmentLeft  urn:gr
splay Value  AlignmentLeft  urn:groove.net:Column Width185 NameStored ValueHe  Alig
t:Component NameUpButtonT=  urn:groove.net:ComponentResource urn:groove.net:PropertyListo 
net:ComponentResource URL(http://components.groove.net/Groove/Components/Root.osd?Packa
ge=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory
=Buttonec urn:groove.net:PropertyList Tooltip6  Move up the selected option  __Version4,1
e$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex39 ImageHeight16 urn:groove.net:Component NameDownButtonon  urn:groove.net:Compo
ove.net:PropertyList o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groov
e/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCompo
nents_DLL&Version=0&Factory=Buttonegurn:groove.net:PropertyList
  Tooltip:
 Move down the selec
ted option  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex40y ImageHeight16   w  ;  urn:groove.net:Component NameSortListButtonHT  urn
.net:PropertyList o  urn:groove.net:ComponentResource URL(http://components.groove.net/
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=Buttoneg  urn:groove.net:PropertyList Tooltip8  Sort 
the options in the list.n  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex33 ImageHeight16 urn:groove.net:Component Name2PropertySubPropertyLayout  urn:gr
nentResource urn:groove.net:PropertyList   urn:groove.net:ComponentResource URL:http://compo
ove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groo
veCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:PropertyList  _
_Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueE urn:groove.net:P
 BottomPad5 HEIGHT27e PropertyValueEditControl( ROW CELLG CELL HEIGHT18s StoredValueLabe
tControl2   CELL RightPad  5 TopPad2  BottomPad7TabOrder
 1 WIDTH23e AddOptionButton   CELL
nButton5 ROW CELL CELL  CELL RightPad5 WIDTH170 TopPad5TabOrder  1 HEIGHT23e ModifyOption
GHT120 ChoicesListViewViewContainer( ROW CELL CELL HEIGHT23eRightPad  10 WIDTH285 TopPad5
rtyDescriptionLabelH
  0 urn:groove.net:Component Name8ChoicesListViewViewContainer  urn:groove.net:Componen
.net:ComponentConnections2{1  urn:groove.net:ComponentResource0 URL6http://components.groov
e.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.Groove
CommonComponents_DLL&Version=0&Factory=ViewContainer]2# urn:groove.net:ComponentCon
nections0 urn:groove.net:Connection3 3 urn:groove.net:Connection2 Name*ChoicesListViewLayout
 ConnectionID04 urn:groove.net:Component Name*ChoicesListViewLayout  urn:groove.net:Compone
ce5 urn:groove.net:PropertyList 5  urn:groove.net:ComponentResource4 URL:http://components.g
net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCo
mmonComponents_DLL&Version=0&Factory=HTMLTableLayoutx urn:groove.net:PropertyList4  _
_Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyValueB urn:groove.net:P
DTH22l HEIGHT27eUpButton%
  TR TDm TD  BottomPad10 WIDTH22l HEIGHT32Y
 DownButton% TR TDX TD WIDTH22l HEIGHT22l SortListButton% TR TD TDC urn:groove.ne
ove.net:PropertyListoD  urn:groove.net:ComponentResourceC URL(http://components.groove.net/G
roove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonC
omponents_DLL&Version=0&Factory=Static urn:groove.net:PropertyListC  __Version4,1,0,0 Lab
lDisplay Value:ty
 VAlignment
Centere  FontStyleLabelText  BreakTypeSingleLineJ urn:groove.net:Component Name StoredV
belo  urn:groove.net:ComponentResourceK urn:groove.net:PropertyListoK  urn:groove.net:Compon
ntResourceJ URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.gr
oove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Static urn:gro
ove.net:PropertyListJ  __Version4,1,0,0 LabelStored Value:
 VAlignment
Centere  FontStyleLabelText  BreakTypeSingleLine |     . Q urn:groove.net:Component
t:ComponentResourceR urn:groove.net:PropertyListoR  urn:groove.net:ComponentResourceQ URL(ht
/components.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.Tool
Components.GrooveCommonComponents_DLL&Version=0&Factory=Buttone urn:groove.net:Property
ListQ  __Version4,1,0,0
 ImageWidth16 StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex89Z urn:groove.net:Component Name$CancelOptionButtonEL  urn:groove.net:Component
:groove.net:PropertyListo[  urn:groove.net:ComponentResourceZ URL(http://components.groove.n
et/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCom
monComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyListZ  __Version4,1
 ImageWidth16 StyleSmallIconButton
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg Image
Height16
 ImageIndex90c urn:groove.net:Component Name&DefaultOptionButton  urn:groove.net:ComponentR
groove.net:PropertyListod  urn:groove.net:ComponentResourcec URL(http://components.groove.ne
t/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveComm
onComponents_DLL&Version=0&Factory=Buttone urn:groove.net:PropertyListc StyleSmallTextButto
bel"Select by default  __Version4,1,0,0h urn:groove.net:Component Name$ModifyOptionButton
roove.net:ComponentResourcei urn:groove.net:PropertyListoi  urn:groove.net:ComponentResour
ceh URL(http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gro
ove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=Buttone   urn:groove.net
:PropertyListh StyleSmallTextButton Label
ModifyPr  __Version4,1,0,0  @   <  4  m urn:groove.net:Component Name$RemoveOpti
nentResourcen urn:groove.net:PropertyListon  urn:groove.net:ComponentResourcem URL(http://co
ents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompone
nts.GrooveCommonComponents_DLL&Version=0&Factory=Buttone  urn:groove.net:PropertyListm Style
mallTextButton Label
Deleteru  __Version4,1,0,0r urn:groove.net:Component NameChoicesListView  urn:groove.
nentResources urn:groove.net:PropertyListss  urn:groove.net:ComponentResourcer URL,http://co
ents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompone
nts.GrooveCommonComponents_DLL&Version=0&Factory=ListView5 urn:groove.net:PropertyList
r MSCCWorkaroundColor#FFFFFF SingleSelectiontrue  __Version4,1,0,0
 _G_Columns ColumnsD Columns urn:groove.net:PropertyValue   urn:groove.net:PropertyValue
net:Column urn:groove.net:Columno urn:groove.net:Column Width15 Name  AlignmentLeft
splay Value  AlignmentLeft   urn:groove.net:Column Width185 NameStored ValueHe  Alig
net:Component NameUpButtonT=  urn:groove.net:ComponentResource} urn:groove.net:PropertyListo
roove.net:ComponentResource| URL(http://components.groove.net/Groove/Components/Root.o
sd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponents_DLL&Version=0
&Factory=Buttonec urn:groove.net:PropertyList| Tooltip6  Move up the selected option  __Ve
,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex39 ImageHeight16  urn:groove.net:Component  NameOKButton:  urn:groove.net:Compon
.net:PropertyList o  urn:groove.net:ComponentResource URL(http://components.groove.net/Groove
omponents/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonComponen
ts_DLL&Version=0&Factory=Buttoneurn:groove.net:PropertyList
  DefaultTruea StyleStandardButton
Cal_BL_MOK  __Version4,1,0,0D  w h ;      urn:groove.net:Component NameDownButtonon
groove.net:PropertyListo   urn:groove.net:ComponentResource  URL(http://components.groove.ne
oove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommonCo
mponents_DLL&Version=0&Factory=Buttoneg urn:groove.net:PropertyList Tooltip:Move down the se
lected option  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex40y ImageHeight16  urn:groove.net:Component NameSortListButtonHT  urn:groove.net
ce  urn:groove.net:PropertyListo   urn:groove.net:ComponentResource  URL(http://components.g
Groove/Components/Root.osd?Package=net.groove.Groove.ToolComponents.GrooveCommon
Components_DLL&Version=0&Factory=Buttoneg urn:groove.net:PropertyList Tooltip8Sort the optio
ns in the list.n  __Version4,1,0,0 Style$StandardIconButtonou
 ImageWidth16
 ImageMaskURL g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImagesMask.
bmpImageURL
 g rooveFile:///ToolData\groove.net\CommonData\CommonToolIconImages.jpg
 ImageIndex33 ImageHeight16  urn:groove.net:Component  NameMonthPopupViewPa  urn:groove.net
e #  urn:groove.net:ComponentConnections urn:groove.net:PropertyList{   urn:groove.net:Compo
ource  URL6http://components.groove.net/Groove/Components/Root.osd?Package=net.groove.Gr
oove.ToolComponents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn
:groove.net:ComponentConnections  urn:groove.net:Connectiony urn:groove.net:Connection Nam
upLayoute=
 ConnectionID0  urn:groove.net:PropertyList  PreferredHeight180 PreferredWidth180  __Ve
0ApplyButtonViewContainer+$InnerLayoutw* 0 PropertyDescriptionLabelV pFieldsListView
mbobox"{r0PropertyDescriptionLabel k  LookupExitButtonnc7 I2LookupStringGeneratorCode2
ionButtonIGHslChoicesListView$RemoveOptionButtonIGHslmChoicesListViewrh   D  
e.net:ComponentResource urn:groove.net:PropertyList    urn:groove.net:ComponentResource UR
ponents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolComp
onents.GrooveCommonComponents_DLL&Version=0&Factory=MultiCellLayoutx urn:groove.net:P
ropertyList  __Version4,1,0,0  _G_Layout LayoutC Layout urn:groove.net:PropertyV
rtyValue MULTIROW
 PMULTIROW
  ROW ROW ROW ROW( ROW CELL  CELL RightPad8 TopPad6 Left
 CancelButton- CELL WIDTH8( ROW CELL. CELL HEIGHT6 urn:groove.net:Component  NameMa
omponentConnections urn:groove.net:PropertyList{  urn:groove.net:ComponentResource URL6ht
nents.groove.net/Groove/Components/Root.osd?Package=net.groove.Groove.ToolCompon
ents.GrooveCommonComponents_DLL&Version=0&Factory=ViewContainer]# urn:groove.net:Com
ponentConnections urn:groove.net:Connectionm urn:groove.net:Connection NameMainLayoutpo
 ConnectionID0T urn:groove.net:PropertyLi

You might also like