home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World Komputer 1998 July & August
/
Pcwk78b98.iso
/
Smart30
/
ENGLISH
/
PRODUCTS
/
LOTUS009.DSK
/
BUILD.SMM
< prev
next >
Wrap
INI File
|
1993-06-25
|
48KB
|
2,968 lines
[ver]
4
[sty]
[files]
[charset]
82
ANSI (Windows, IBM CP 1252)
[revisions]
0
[prn]
QMS-PS 810
[port]
LPT1:
[lang]
1
[desc]
Automated utility useful in constructing calculation applications.
741032025
21
734822992
2156
13
0
0
0
0
1
[fopts]
0
1
0
0
[lnopts]
2
Body Text
1
[docopts]
5
2
[GramStyle]
[ParaNum]
1
[tag]
Body Text
2
[fnt]
Times New Roman
240
0
49152
[algn]
1
1
0
0
0
[spc]
33
273
1
0
0
1
100
[brk]
4
[line]
8
0
1
0
1
1
1
10
10
1
[spec]
0
2
0
1
1
0
0
0
0
[nfmt]
280
1
2
.
,
$
Body Text
0
0
[tag]
Body Single
3
[fnt]
Times New Roman
240
0
49152
[algn]
1
1
0
0
0
[spc]
33
273
1
0
0
1
100
[brk]
4
[line]
8
0
1
0
1
1
1
10
10
1
[spec]
0
0
0
1
1
0
0
0
0
[nfmt]
280
1
2
.
,
$
Body Single
0
0
[tag]
Bullet
4
[fnt]
Times New Roman
240
0
49152
[algn]
1
1
0
288
288
[spc]
33
273
1
0
0
1
100
[brk]
4
[line]
8
0
1
0
1
1
1
10
10
1
[spec]
0
0
<*0>
360
1
1
0
0
0
0
[nfmt]
272
1
2
.
,
$
Bullet
0
0
[tag]
Bullet 1
5
[fnt]
Times New Roman
240
0
49152
[algn]
1
1
288
288
288
[spc]
33
273
1
0
0
1
100
[brk]
4
[line]
8
0
1
0
1
1
1
10
10
1
[spec]
0
0
<*5>
0
1
1
0
0
0
0
[nfmt]
280
1
2
.
,
$
Bullet 1
0
0
[tag]
Number List
6
[fnt]
Times New Roman
240
0
49152
[algn]
1
1
360
360
360
[spc]
33
273
1
0
0
1
100
[brk]
4
[line]
8
0
1
0
1
1
1
10
10
1
[spec]
0
0
<*:>.
360
1
1
0
16
0
0
[nfmt]
272
1
2
.
,
$
Number List
0
0
[tag]
Subhead
7
[fnt]
Times New Roman
240
0
49155
[algn]
1
1
0
0
0
[spc]
33
273
1
72
72
1
100
[brk]
68
[line]
8
0
1
0
1
1
1
10
10
1
[spec]
0
1
0
1
1
0
0
0
0
[nfmt]
272
1
2
.
,
$
Body Text
0
0
[tag]
Title
8
[fnt]
Arial
360
0
16385
[algn]
4
1
0
0
0
[spc]
33
446
1
144
72
1
100
[brk]
16
[line]
8
0
1
0
1
1
1
10
10
1
[spec]
0
0
0
1
1
0
0
0
0
[nfmt]
272
1
2
.
,
$
Title
0
0
[tag]
Header
9
[fnt]
Times New Roman
240
0
49152
[algn]
1
1
0
0
0
[spc]
33
273
1
0
0
1
100
[brk]
4
[line]
8
0
1
0
1
1
1
10
10
1
[spec]
0
0
0
1
1
0
0
0
0
[nfmt]
280
1
2
.
,
$
Header
0
0
[tag]
Footer
11
[fnt]
Times New Roman
240
0
49152
[algn]
1
1
0
0
0
[spc]
33
273
1
0
0
1
100
[brk]
4
[line]
8
0
1
0
1
1
1
10
10
1
[spec]
0
0
0
1
1
0
0
0
0
[nfmt]
280
1
2
.
,
$
Footer
0
0
[lay]
Standard
516
[rght]
16833
11908
1
576
720
1
1080
576
0
1
0
1
0
2
1
576
11329
12
1
720
1
1440
1
2160
1
2880
1
3600
1
4320
1
5040
1
5760
1
6480
1
7200
1
7920
1
8640
[hrght]
[lyfrm]
1
11200
0
0
11908
1080
0
1
3
1 0 0 0 0 0 0
0
0
1
[frmlay]
1080
11908
1
1440
72
1
792
1440
0
1
0
1
1
0
1
1440
10465
2
2
4680
3
9360
[txt]
>
[frght]
[lyfrm]
1
13248
0
16113
11908
16833
0
1
3
1 0 0 0 0 0 0
0
0
2
[frmlay]
16833
11908
1
1440
648
1
16185
1440
0
1
0
1
1
0
1
1440
10465
2
2
4680
3
9360
[txt]
>
[elay]
[l1]
0
[pg]
1
48 0 34 0 0 1 0 65535 65535 Standard 65535 0 0 0 0 0 0 0 0 0 65535 0 0 65535 0 0 0 0 0
[edoc]
<:#284,10753>' Peyton McManus
<:#284,10753>' Lotus WPD
<:#284,10753>' this macro requires a file builder.sam to be present in the currenct macro dir
<:#284,10753>
@Subhead@<:#284,10753>' these are the text strings for the main dialog box
<:#284,10753>
<:#284,10753><:X3,-32768;Include "Amixlate.sam!build">Define MainText "There are three easy steps to creating a custom calculation application."
@Outline3@<:#284,10753>
@Outline3@<:#284,10753>Define FirstStep "You are on step one."
@Outline3@<:#284,10753>Define SecondStep "You are on step two."
@Outline3@<:#284,10753>Define ThirdStep " You are on step three."
@Outline3@<:#284,10753>
@Outline3@<:#284,10753>Define DefineText "(What it is called, how many variables, etc...)"
@Outline3@<:#284,10753>Define DesignText "(What are the variable names and formula)"
@Outline3@<:#284,10753>Define RunText "(Run the application)"
@Outline3@<:#284,10753>Define SSheet "_Default.sty"
@Outline3@<:#284,10753>Define BuildMessage "Please wait...Now building {Name}"
<:#284,10753>
@Outline3@<:#568,10753>Define WelcomeText "This is the example text that will be placed into the welcome box and will explain how the app works"
@Outline3@<:#284,10753>
@Outline3@<:#284,10753>' Defines for the desing dialog box
@Outline3@<:#568,10753>Define Number1Text "1. Enter text to help your users to figure out how to fill in the dialog box. (80 char.)"
@Outline3@<:#284,10753>
@Outline3@<:#568,10753>Define Number2Text "2. Enter the formula to calculate the answer. For example, @AVG({{VALUE1};{{VALUE2};{{VALUE3})"
@Outline3@<:#284,10753>
@Outline3@<:#284,10753>Define Number3Text "3. Enter real names for the values: (20 char)"
@Outline3@<:#284,10753>
@Outline3@<:#284,10753>
@Outline3@<:#284,10753>' Defines for the Define application Box
@Outline3@<:#284,10753>Define Text1 "1. Type in the name you want to appear at the top of the dialog box: (30 char.)"
@Outline3@<:#284,10753>Define Text2 "2. Name of the macro to create: "
@Outline3@<:#284,10753>Define Text3 "3. Number of variables: (1 - 6)"<:X~3,-32768;Include "Amixlate.sam!build">
<:#284,10753>
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>' Api Defines
<:#284,10753>Define EnableWindow() DllCall("user,EnableWindow,HHH", %1, %2)
<:#284,10753>Define MoveWindow() DllCall("User,MoveWindow,HHHHHHA",%1,%2,%3,%4,%5,%6)
<:#284,10753>DEFINE GetWindowRect() DllCall("user,GetWindowRect,HHN",%1,%2)
<:#284,10753>Define ShowWindow(hWnd, stuff) DllCall("user,ShowWindow,HHH", %1, %2)
<:#284,10753>Define SetFocus() DllCall("user,SetFocus,HH",%1)
<:#284,10753>Define getsystemmetrics() dllcall("user,getsystemmetrics,HH", %1)
<:#284,10753>
<:#284,10753>
<:#284,10753>Define EM_LimitText 1045
<:#284,10753>
<:#284,10753>
<:#284,10753>Declare FontDlg(Action, Hdlg, id)
<:#284,10753>Declare InsertDefine(Item, Value)
<:#284,10753>Declare DefineApp(AppName, NumberItems, MacroName, MacDesc)
<:#284,10753>Declare Construct(Appname, NumberItems, Formula, HelpText, aValue)
<:#284,10753>Declare Redraw(Hwnd, status) ' 1 is no redraw 0 is repaint
<:#284,10753>Declare StrPath(FileName)
<:#284,10753>Declare SizeBox(hdlg, Number)
<:#284,10753>Declare FindAndReplace(Sting, FindWhat, ReplaceWith)
<:#284,10753>Declare CBDefineApp(Hdlg, id, Value)
<:#284,10753>Declare ManageList(Hdlg, id, section)
<:#284,10753>Declare RadioCall(Hdlg, id, value)
<:#284,10753>
<:#284,10753>
<:#284,10753>Declare ShowFunctions(Hdlg, id)
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function Main()
<:#284,10753>DefStr AppName, NumberItems, MacroName, MacDesc, Formula, HelpText, hWnd;
<:#284,10753>IgnoreKeyBoard(2)
<:#284,10753>Continue = True
<:#284,10753>Mac = GetRunningMacroFile$()
<:#284,10753>StepNumber = 1
<:#284,10753>Dim TextLabel(10)
<:#284,10753>AllocGlobalVar("StepNumber",1)
<:#284,10753>SetGlobalVar("StepNumber",1)
<:#284,10753>
<:#284,10753>
<:#284,10753>FontDlg(1,0,0) ' Create a small font for the dialog boxes
<:#284,10753>
<:#284,10753>While Continue
<:#284,10753>FillEdit(1004, MainText)
<:#284,10753>FillEdit(1005,"Build1.bmt")
<:#284,10753>FillEdit(1006,"Build2.bmt")
<:#284,10753>FillEdit(1007,"Build3.bmt")
<:#284,10753>FillEdit(1000, DefineText)
<:#284,10753>FillEdit(1001, DesignText)
<:#284,10753>FillEdit(1002, RunText)
<:#284,10753>
<:#284,10753>
<:#284,10753>SetDlgCallBack(0,"{Mac}!InitMainBox")
@Outline3@<:#284,10753>DlgKeyInterrupt(112, "{mac}!DisplayHelp")
@Outline3@<:#284,10753>
<:#284,10753>Box = DialogBox(".","MainBox")
<:#284,10753>StepNumber = GetGlobalVar$("StepNumber")
<:#284,10753>If Box = 1
<:#284,10753> If GetDialogField$(21) ' Define the app
<:#284,10753> If 0 = DefineApp(&AppName, &NumberItems, &MacroName, &MacDesc)
<:#284,10753> If StepNumber = 1
<:#284,10753> StepNumber = 2
<:#284,10753> Endif
<:#284,10753> Else
<:#284,10753> 'Cancelled the box
<:#284,10753> Endif
<:#284,10753>
<:#284,10753> Elseif GetDialogField$(22) ' Design the ui
<:#284,10753> If 0 = Construct(AppName, NumberItems, &Formula, &HelpText, &TextLabel)
<:#284,10753> HourGlass(on)
<:#284,10753> If New(SSheet 1 0 )
<:#284,10753> Redraw(&hWnd, 1) ' Turn painting off on window
<:#284,10753> MacroPath = StrPath(Mac)
<+@><:#284,10753> Name = "{MacroPath}{MacroName}.SMM"
<:#284,10753> StatusBarMsg(BuildMessage)
<:#284,10753> NumDec = 2
<:#284,10753> DialogTitle = AppName
<:#284,10753> InsertDefine("NumDec",2)
<:#284,10753> InsertDefine("NumberItems",NumberItems)
<:#284,10753> InsertDefine("DialogTitle",DialogTitle)
<:#284,10753> InsertDefine("HelpText",HelpText)
<:#284,10753> InsertDefine("Formula",Formula)
<:#284,10753> For t = 1 to 10
<:#284,10753> InsertDefine("Value{t}Text",TextLabel(t))
<:#284,10753> Next
<:#284,10753> FileOpen("{MacroPath}BUILDER.SAM" 9 "" )
<:#284,10753> If SaveAs(Name 32 "{HelpText}" "" )
<:#284,10753> FileClose()
<:#284,10753> StepNumber = 3
<:#284,10753> Else
<:#284,10753> StepNumber = 2
<:#284,10753> Endif
<:#284,10753> ReDraw(hWnd, 0)
<:#284,10753> StatusBarMsg("")
<:#284,10753> HourGlass(off)
<:#284,10753> Endif
<:#284,10753> Else
<:#284,10753> ' Cancelled the construction part
<:#284,10753> Endif
<:#284,10753> Elseif GetDialogField$(23) ' Run the app
<:#284,10753> Calli Name()
<:#284,10753> StepNumber = 3
<:#284,10753> Endif
<:#284,10753>Else
<:#284,10753> Continue = False
<:#284,10753>Endif
<:#284,10753>SetGlobalVar("StepNumber",StepNumber)
<:#284,10753>Wend
<:#284,10753>
<:#284,10753>FontDlg(4,0,0) ' Free the small font and destroy the object
<:#284,10753>FreeGlobalVar("StepNumber")
<:#284,10753>
<:#284,10753>
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function InitMainBox(Hdlg, id, value)
<:#284,10753>IgnoreKeyboard(2)
<:#284,10753>HourGlass(on)
<:#284,10753>For t = 1000 to 1004
<:#284,10753> FontDlg(3, Hdlg, t)
<:#284,10753>Next
<:#284,10753>StepNumber = GetGlobalVar$("StepNumber")
<:#284,10753>Switch StepNumber
<:#284,10753> Case 1
<:#284,10753> StepText = ""
<:#284,10753> EnableWindow(GetDlgItem(Hdlg, 22), 0)
<:#284,10753> EnableWindow(GetDlgItem(Hdlg, 23),0)
<:#284,10753>
<:#284,10753> Case 2
<:#284,10753> StepText = SecondStep
<:#284,10753> EnableWindow(GetDlgItem(Hdlg, 22), 1)
<:#284,10753> EnableWindow(GetDlgItem(Hdlg, 23),0)
<:#284,10753>
<:#284,10753>
<:#284,10753> Case 3
<:#284,10753> StepText = ThirdStep
<:#284,10753> EnableWindow(GetDlgItem(Hdlg, 22), 1)
<:#284,10753> EnableWindow(GetDlgItem(Hdlg, 23),1)
<:#284,10753>EndSwitch
<:#284,10753>SetDlgItemText(Hdlg, 1003, StepText)
<:#284,10753>SetDlgItemText(Hdlg, 20 + StepNumber, 1)
<:#284,10753>HourGlass(off)
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function DefineApp(AppName, NumberItems, MacroName, MacDesc)
<:#284,10753>IgnoreKeyBoard(2)
<:#284,10753>Mac = GetRunningMacroFile$()
<:#284,10753>
<:#284,10753>
<:#284,10753>FillEdit(1005, WelcomeText)
<:#284,10753>FillEdit(1002, Text1)
<:#284,10753>FillEdit(1003, Text2)
<:#284,10753>FillEdit(1004, Text3)
<:#284,10753>
<:#284,10753>
<:#284,10753>FillEdit(8000, AppName)
<:#284,10753>FillEdit(8001, NumberItems)
<:#284,10753>FillEdit(8002, MacroName)
<:#284,10753>FillEdit(8003, MacDesc)
<:#284,10753>SetDlgCallBack(8002,"{Mac}!CBDefineApp")
<:#284,10753>SetDlgCallBack(8001,"{Mac}!CBDefineApp")
<:#284,10753>
<:#284,10753>SetDlgCallBack(0,"{Mac}!InitDefineApp")
@Outline3@<:#284,10753>DlgKeyInterrupt(112, "{mac}!DisplayHelp")
@Outline3@<:#284,10753>
<:#284,10753>Box = DialogBox(".","DefineApp")
<:#284,10753>If Box <<<;> 1
<:#284,10753> Return -1
<:#284,10753>Endif
<:#284,10753>*MacroName = StrField$(GetDialogField$(8002),1,".");
<:#284,10753>FindAndReplace(&MacroName," ","_") 'replace space with underbar
<:#284,10753>*AppName = GetDialogField$(8000);
<:#284,10753>*NumberItems = GetDialogField$(8001);
<:#284,10753>*MacDesc = GetDialogField$(8003);
<:#284,10753>End Function
<:#284,10753>
@Subhead@<:#284,10753>Function CBDefineApp(Hdlg, id, value)
<:#284,10753>IgnoreKeyBoard(2)
<:#284,10753>MacName = GetDlgItemText(Hdlg, 8002)
<:#284,10753>Items = GetDlgItemText(Hdlg, 8001)
<:#284,10753>If Items <;>6
<:#284,10753> SetDlgItemText(Hdlg, 8001, 6)
<:#284,10753>Endif
<:#284,10753>If MacName != "" and Items !=""
<:#284,10753> EnableWindow(GetDlgItem(Hdlg, 1),1)
<:#284,10753>Else
<:#284,10753> EnableWindow(GetDlgItem(Hdlg, 1),0)
<:#284,10753>Endif
<:#284,10753>
<:#284,10753>End Function
<:#284,10753>
@Subhead@<:#284,10753>Function InitDefineApp(Hdlg, id, value)
<:#284,10753>IgnoreKeyboard(2)
<:#284,10753>HourGlass(on)
<:#284,10753>For t = 1000 to 1004
<:#284,10753> FontDlg(3, Hdlg, t)
<:#284,10753>Next
<:#284,10753>FontDlg(3, Hdlg, 8000)
<:#284,10753>FontDlg(3, Hdlg, 8001)
<:#284,10753>FontDlg(3, Hdlg, 8002)
<:#284,10753>AppSendMessage(GetDlgItem(Hdlg, 8000),EM_LimitText, 30,"")
<:#284,10753>AppSendMessage(GetdlgItem(Hdlg, 8002),EM_LimitText, 8,"")
<:#284,10753>AppSendMessage(GetdlgItem(Hdlg, 8001),EM_LimitText, 1,"")
<:#284,10753>SetFocus(GetDlgItem(Hdlg, 8000))
<:#284,10753>CBDefineApp(Hdlg, id, value)
<:#284,10753>HourGlass(off)
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function Construct(AppName, NumberItems, Formula, HelpText, ValueText)
<:#284,10753>IgnoreKeyBoard(2)
<:#284,10753>Mac = GetRunningMacroFile$()
<:#284,10753>AllocglobalVar("NumberItems",1)
<:#284,10753>SetglobalVar("NumberItems",NumberItems)
<:#284,10753>
<:#284,10753>FillEdit(1020, Number1Text)
<:#284,10753>FillEdit(1021, Number2Text)
<:#284,10753>FillEdit(1022, Number3Text)
<:#284,10753>
<:#284,10753>
<:#284,10753>FillEdit(8060, Formula)
<:#284,10753>FillEdit(8050, HelpText)
<:#284,10753>For number = 1 to NumberItems
<:#284,10753> FillEdit(8000 + Number, *ValueText(Number));
<:#284,10753>Next
<:#284,10753>
<:#284,10753>SetDlgCallBack(0,"{Mac}!InitConstruct")
@Outline3@<:#284,10753>SetDlgCallBack(22,"{Mac}!FunButton")
@Outline3@<:#284,10753>DlgKeyInterrupt(112, "{mac}!DisplayHelp")
@Outline3@<:#284,10753>
<:#284,10753>Box = DialogBox(".","Construct")
<:#284,10753>FreeGlobalVar("NumberItems")
<:#284,10753>If Box<<<;>1
<:#284,10753> Return -1
<:#284,10753>Endif
<:#284,10753>*Formula = GetDialogField$(8060);
<:#284,10753>FindAndReplace(&Formula," ","") ' remove all spaces
<:#284,10753>FindAndReplace(&Formula,Chr$(34),"") ' remove quotes
<:#284,10753>*HelpText = GetdialogField$(8050);
<:#284,10753>For t = 1 to NumberItems;
<:#284,10753> *ValueText(t) = GetDialogField$(8000 + t)
<:#284,10753>Next
<:#284,10753>
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function InitConstruct(Hdlg, id, value)
<:#284,10753>IgnoreKeyBoard(2)
<:#284,10753>HourGlass(on)
<:#284,10753>NumberItems = GetGlobalVar$("NumberItems")
<:#284,10753>
<:#284,10753>
<:#284,10753>For Id = 1 to 9
<:#284,10753> FontDlg(3, Hdlg, Id + 1000)
<:#284,10753> FontDlg(3, Hdlg, id + 8000)
<:#284,10753> AppSendMessage(GetDlgItem(Hdlg, id + 8000),Em_LimitText, 20, "")
<:#284,10753> If Id <;> NumberItems
<:#284,10753> ShowWindow(GetDlgItem(Hdlg, id + 1000), 0)
<:#284,10753> ShowWindow(GetDlgItem(Hdlg, id + 8000), 0)
<:#284,10753> Endif
<:#284,10753>Next
<:#284,10753>FontDlg(3, Hdlg, 1020)
<:#284,10753>FontDlg(3, Hdlg, 1021)
<:#284,10753>FontDlg(3, Hdlg, 1022)
<:#284,10753>FontDlg(3, Hdlg, 8050)
<:#284,10753>FontDlg(3, Hdlg, 8060)
<:#284,10753>SetFocus(GetDlgItem(Hdlg, 8050))
<:#284,10753>AppSendMessage(GetDlgItem(Hdlg, 8050),Em_LimitText,80,"")
<:#284,10753>SizeBox(hdlg, NumberItems)
<:#284,10753>HourGlass(off)
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function SizeBox(Hdlg, NumberEditControls)
<:#284,10753>Define Repaint 1
<:#284,10753>IgnoreKeyBoard(2)
<:#284,10753>Stat = GetSystemMetrics(4)
<:#284,10753>Dim Rect(4)
<:#284,10753>GetWindowRect(Hdlg, &Rect)
<:#284,10753>DeltaX = Rect(3) - Rect(1);
<:#284,10753>If Stat = 20
<:#284,10753> DeltaY = (22 * NumberEditControls) + 200;
<:#284,10753>Else
<:#284,10753> DeltaY = (26 * NumberEditControls) + 250;
<:#284,10753>Endif
<:#284,10753>MoveWindow(Hdlg, Rect(1), Rect(2), DeltaX, DeltaY, Repaint)
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>function DisplayHelp()
@Outline2@<:#284,10753>' two defines needed for help. The help name and panel number are defined above
@Outline2@<:#284,10753>define FindWindowa() DllCall("user,FindWindow,HCC", %1, %2)
@Outline2@<:#284,10753>define WinHelpa(hWnd, file, cmd, ptr) DllCall("user,WinHelp,HHCHJ", %1, %2, %3, %4)
@Outline2@<:#284,10753>prohWnd = FindWindowa("AmiProWndA", 0)
@Outline2@<:#284,10753>helpfile = strcat$(GetAmiDirectory$(), "HelpPack.hlp")
@Outline2@<:#284,10753>PanelNum= 105
@Outline2@<:#284,10753>WinHelpa(prohWnd, helpfile, 0x0001, Panelnum)
@Outline2@<:#284,10753>end function
@Subhead@<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function FunButton(Hdlg, id, value)
<:#284,10753>ShowFunctions(Hdlg, 8060)
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function FindAndReplace(String, Findwhat, Replacewith)
<:#284,10753>DefStr Location;
<:#284,10753>OffSet = 0
<:#284,10753>While 0 != Assign(&Location, Instr(OffSet, String, FindWhat))
<:#284,10753> BeforeLocation = Left$(String, Location - 1)
<:#284,10753> AfterLocation = Right$(String, Len(String) - Location);
<:#284,10753> *String = StrCat$(BeforeLocation, ReplaceWith, AfterLocation)
<:#284,10753>Wend
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function Redraw(Hwnd, Param)
@Outline2@<:#568,10753>Define SendMessageDM(hwnd, message, wparam, lparao) dllcall("user,SendMessage,JHHHJ", %1, %2, %3, %4)
@Outline2@<:#284,10753>Define InvalidateRectDM(hwnd, stuff, H) DllCall("user,InvalidateRect,HHFH", %1, %2, %3)
<:#284,10753>DEFINE GetClientRectDM() DLLCALL("User,GetClientRect,HHN",%1,%2)
@Outline2@<:#284,10753>define WM_SETREDRAWDM 0x000B
<:#284,10753>Define GetActiveTextWinDM() GetInfo(267)
<:#284,10753>
<:#284,10753>IgnoreKeyBoard(2)
@Outline2@<:#284,10753>
@Outline2@<:#284,10753>Dim A(4)
@Outline2@<:#284,10753>switch Param
@Outline2@<:#284,10753> Case 1;
@Outline2@<:#284,10753> *hWnd = GetActiveTextWinDM()
@Outline2@<:#284,10753> SendMessageDM(hWnd, WM_SETREDRAWDM, 0, "")
@Outline2@<:#284,10753> Return hWnd
@Outline2@<:#284,10753> Case 0
@Outline2@<:#284,10753> SendMessageDM(hWnd, WM_SETREDRAWDM,1,"")
@Outline2@<:#284,10753> GetClientRectDM(hWnd, &A)
@Outline2@<:#284,10753> InvalidateRectDM(hWnd, &A,1)
@Outline2@<:#284,10753> Default
@Outline2@<:#284,10753> ' Didn't understand
@Outline2@<:#284,10753>EndSwitch
@Outline2@<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>function strpath(filename)
<:#284,10753>defstr char;
<:#284,10753>Length = len(FileName)
<:#284,10753>WHILE "\" != Assign(&Char, MID$(FileName, Length, 1))
<:#284,10753> Length = Length - 1
<:#284,10753>WEND
<:#284,10753>InFileName = Right$(FileName, (len(FileName) - Length))
<:#284,10753>InDir = Left$(FileName, Length - 1)
<:#284,10753>if right$(indir, 1) <<<;> "\"
<:#284,10753> indir = strcat$(indir, "\")
<:#284,10753>endif
<:#284,10753>return indir
<:#284,10753>end function
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function InsertDefine(Item, Value)
<:#284,10753>Quote = Chr$(34)
<:#284,10753>Type ("Define<[>Tab]{Item}<[>Tab]{Quote}{Value}{Quote}<[>Enter]")
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function FontDlg(Action, Hdlg, id)
<:#284,10753>' 1 Create a font and allocvar
<:#284,10753>' 2 Return the handle of the create font
<:#284,10753>' 3 Set the id specified to the font
<:#284,10753>' 4 Freeglobalvar and delete created object
<:#284,10753>
@Outline2@<:#568,10753>define CreateFontDLG() DllCall("gdi,CreateFont,HHHHHHHHHHHHHHC", %1, %2, %3, %4, %5, %6, %7, %8, %9, %10, %11, %12, %13, %14)
@Outline2@<:#284,10753>define DeleteObjectDLG(handle) DllCall("gdi,DeleteObject,HH", %1)
@Outline2@<:#568,10753>define SendMessageDLG(hwnd, msg, wpara, lparm) DllCall("user,SendMessage,HHHHJ", %1, %2, %3, %4)
@Outline2@<:#284,10753>
@Outline2@<:#284,10753>
<:#284,10753>Switch Action
<:#284,10753> Case 1 ' Create the font and store it
@Outline2@<:#284,10753> Font = CreateFontDLG(13, 0, 0, 0, 400, 0, 0, 0, 0, 0, 0, 0, 32, "Helv")
<:#284,10753> AllocGlobalVar("FontHandle",1)
<:#284,10753> If Font
<:#284,10753> SetGlobalVar("FontHandle",Font)
<:#284,10753> Return Font
<:#284,10753> Else
<:#284,10753> Return 0; ' no font
<:#284,10753> Endif
<:#284,10753> Break;
<:#284,10753> Case 2 ' Return the handle to the font
<:#284,10753> Handle = GetGlobalVar$("FontHandle")
<:#284,10753> If Handle
<:#284,10753> Return Handle
<:#284,10753> Else
<:#284,10753> Return 0
<:#284,10753> Endif
<:#284,10753>
<:#284,10753> Case 3 ' Set the id to the font
<:#284,10753> Handle = GetGlobalVar$("FontHandle")
<:#284,10753> If Handle
<:#284,10753> IdControl = GetDlgITem(Hdlg, id)
<:#284,10753> SendMessageDlg(idControl, 0x30, Handle, 0)
<:#284,10753> Return 1
<:#284,10753> Else
<:#284,10753> Return 0
<:#284,10753> Endif
<:#284,10753> Break;
<:#284,10753>
<:#284,10753> Case 4 ' Delete the font and clear the var
<:#284,10753> Handle = GetGlobalVar$("FontHandle")
<:#284,10753> If Handle
<:#284,10753> DeleteObjectDLG(Handle)
<:#284,10753> Stat = 1
<:#284,10753> Else
<:#284,10753> Stat = 0
<:#284,10753> Endif
<:#284,10753> FreeGlobalVar("FontHandle")
<:#284,10753> Return Stat
<:#284,10753> Default
<:#284,10753>EndSwitch
<:#284,10753>End Function
@Subhead@<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function ShowFunctions(Hdlg, Id)
<:#284,10753>Define EnableWindowIns() DllCall("User,EnableWindow,AHA",%1,%2)
<:#284,10753>Define SetFocusIns() DllCall("user,SetFocus,HH",%1)
<:#284,10753>Define LB_RESETCONTENT 0x405
<:#284,10753>Define ExID 8010
<:#284,10753>Define DescID 1001
<:#284,10753>Define FinancialRadio 20
<:#284,10753>Define StatRadio 21
<:#284,10753>Define MathRadio 22
<:#284,10753>Define LogicRadio 23
<:#284,10753>Define FinanSect "Financial"
<:#284,10753>Define StatSect "Statistical"
<:#284,10753>Define MathSect "Mathematical"
<:#284,10753>Define LogicSect "Logical"
<:#284,10753>
<:#284,10753>
<:#284,10753>Define IniName "AmiCalc.ini"
<:#284,10753>Define Delimiter "~"
<:#284,10753>
<:#284,10753>
<:#284,10753>EnableWindowIns(Hdlg,0)
<:#284,10753>Mac = GetRunningMacroFile$()
<:#284,10753>SetDlgCallBack(FinancialRadio,"{Mac}!RadioCall")
<:#284,10753>SetDlgCallBack(StatRadio,"{Mac}!RadioCall")
<:#284,10753>SetDlgCallBack(MathRadio,"{Mac}!RadioCall")
<:#284,10753>SetDlgCallBack(LogicRadio,"{Mac}!RadioCall")
<:#284,10753>SetDlgCallBack(0,"{Mac}!InitCall")
<:#284,10753>SetDlgCallBack(9000,"{Mac}!RadioCall")
@Outline3@<:#284,10753>DlgKeyInterrupt(112, "{mac}!DisplayHelp")
<:#284,10753>FillEdit(20,1)
<:#284,10753>Box = DialogBox(".","More")
<:#284,10753>If Box = 1
<:#284,10753> ' need to paste to the edit box
<:#284,10753> Text = GetDlgItemText(Hdlg, Id)
<:#284,10753> Example = GetDialogField$(ExID)
<:#284,10753> NewText = StrCat$(Text, Example)
<:#284,10753> SetDlgItemText(Hdlg, Id, NewText)
<:#284,10753>Endif
<:#284,10753>EnableWindowIns(Hdlg,1)
<:#284,10753>SetFocusIns(GetDlgItem(Hdlg, Id))
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function InitCall(Hdlg, id, value)
<:#284,10753>IgnoreKeyBoard(2)
<:#284,10753>
<:#284,10753>FontDlg(3,Hdlg, DescID)
<:#284,10753>FontDlg(3, Hdlg, ExID)
<:#284,10753>
<:#284,10753>
<:#284,10753>ManageList(Hdlg, 9000, FinanSect)
<:#284,10753>Key= GetDlgItemText(Hdlg, 9000)
<:#284,10753>FullText = GetProfileString$(FinanSect,Key,IniName)
<:#284,10753>Example = StrField$(FullText, 2, Delimiter)
<:#284,10753>Descx = StrField$(FullText, 1, Delimiter)
<:#284,10753>SetDlgITemText(Hdlg, ExID,Example)
<:#284,10753>SetDlgItemText(hdlg, DescID, Descx)
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function RadioCall(hdlg, id, value)
<:#284,10753>IgnoreKeyBoard(2)
<:#284,10753>If GetDlgItemText(Hdlg, FinancialRadio)
<:#284,10753> Section = FinanSect
<:#284,10753>ElseIf GetDlgItemText(Hdlg, MathRadio)
<:#284,10753> Section = MathSect
<:#284,10753>ElseIf GetDlgITemText(hdlg, StatRadio)
<:#284,10753> Section = StatSect
<:#284,10753>ElseIf GetDlgItemText(hdlg, LogicRadio)
<:#284,10753> Section = LogicSect
<:#284,10753>Endif
<:#284,10753>
<:#284,10753>Switch Id
<:#284,10753> Case 9000
<:#284,10753>
<:#284,10753> ' this is for the list box
<:#284,10753> Key= GetDlgItemText(Hdlg, 9000)
<:#284,10753> FullText = GetProfileString$(Section,Key,IniName)
<:#284,10753> Example = StrField$(FullText, 2, Delimiter)
<:#284,10753> Descx = StrField$(FullText, 1, Delimiter)
<:#284,10753> SetDlgITemText(Hdlg, ExID,Example)
<:#284,10753> SetDlgItemText(hdlg, DescID, Descx)
<:#284,10753> Break;
<:#284,10753>
<:#284,10753> Default
<:#284,10753> ' this will be for any radio button
<:#284,10753> ManageList(Hdlg, 9000, Section)
<:#284,10753> Key= GetDlgItemText(Hdlg, 9000)
<:#284,10753> FullText = GetProfileString$(Section,Key,IniName)
<:#284,10753> Example = StrField$(FullText, 2, Delimiter)
<:#284,10753> Descx = StrField$(FullText, 1, Delimiter)
<:#284,10753> SetDlgITemText(Hdlg, ExID,Example)
<:#284,10753> SetDlgItemText(hdlg, DescID, Descx)
<:#284,10753> Break;
<:#284,10753>EndSwitch
<:#284,10753>End Function
<:#284,10753>
<:#284,10753>
@Subhead@<:#284,10753>Function ManageList(Hdlg, id, Section)
<:#284,10753>DefStr KeyName;
<:#284,10753>AppSendMessage(GetDlgItem(Hdlg, 9000),LB_RESETCONTENT,0,0)
<:#284,10753>AllKeys = GetProfileString$(Section,0,IniName)
<:#284,10753>Field = 1
<:#284,10753>While -1 != Assign(&KeyName, StrField$(AllKeys, Field, "~"))
<:#284,10753> If KeyName <;>""
<:#284,10753> SetDlgItemText(Hdlg, 9000, KeyName)
<:#284,10753> Endif
<:#284,10753> Field = Field + 1
<:#284,10753>Wend
<:#284,10753>End function
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>DIALOG More
<:#284,10753>-2134376448 13 61 28 187 118 "" "AmiDialog" "More @Functions"
<:#284,10753>FONT 8 "Helv"
<:#284,10753>7 12 50 11 20 1342242825 "button" "&Financial" 0
<:#284,10753>7 24 50 11 21 1342242825 "button" "&Statistical" 0
<:#284,10753>7 35 54 11 22 1342242825 "button" "&Mathematical" 0
<:#284,10753>7 46 50 11 23 1342242825 "button" "&Logical" 0
<:#284,10753>79 15 58 40 9000 1352728579 "listbox" "" 0
<:#284,10753>7 57 176 24 30 1342308359 "button" "Example" 0
<:#284,10753>7 83 176 32 31 1342308359 "button" "Description" 0
<:#284,10753>13 68 148 10 8010 1342177280 "static" "text" 0
<:#284,10753>13 93 158 20 1001 1342177280 "static" "text" 0
<:#284,10753>4 3 44 10 1000 1342177280 "static" "Categories:" 0
<:#284,10753>78 3 40 10 1002 1342177280 "static" "@Functions:" 0
<:#284,10753>143 3 40 14 1 1342373889 "button" "Insert" 0
<:#284,10753>143 19 40 14 2 1342373888 "button" "Cancel" 0
<:#284,10753>END DIALOG
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>DIALOG DefineApp
<:#284,10753>-2134376448 8 60 47 183 67 "" "AmiDialog" "Define Application"
<:#284,10753>FONT 8 "Helv"
<:#284,10753>139 3 40 14 1 1342373889 "button" "OK" 0
<:#284,10753>139 19 40 14 2 1342373888 "button" "Cancel" 0
<:#284,10753>11 23 119 12 8000 1350631552 "edit" "" 0
<:#284,10753>93 38 37 12 8002 1350631552 "edit" "" 0
<:#284,10753>93 52 16 12 8001 1350631552 "edit" "" 0
<:#284,10753>4 4 125 16 1002 1342177280 "static" "AppName" 0
<:#284,10753>4 40 88 10 1003 1342177280 "static" "NumFields" 0
<:#284,10753>4 54 88 10 1004 1342177280 "static" "MacName" 0
<:#284,10753>END DIALOG
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>DIALOG Construct
<:#284,10753>-2134376448 20 68 16 168 188 "" "AmiDialog" "Design Dialog Box"
<:#284,10753>FONT 8 "Helv"
<:#284,10753>124 3 40 14 1 1342373889 "button" "OK" 0
<:#284,10753>124 19 40 14 3 1342373888 "button" "Cancel" 0
<:#284,10753>113 35 51 14 22 1342373888 "button" "@&Functions..." 0
<:#284,10753>6 24 101 22 8050 1350631428 "edit" "" 0
<:#284,10753>5 68 158 24 8060 1350631428 "edit" "" 0
<:#568,10753>6 3 115 20 1020 1342177280 "static" "Help text for the application:" 0
<:#284,10753>5 50 146 16 1021 1342177280 "static" "Formula for the application" 0
<:#284,10753>79 104 66 12 8001 1350631552 "edit" "" 0
<:#284,10753>79 118 66 12 8002 1350631552 "edit" "" 0
<:#284,10753>79 132 66 12 8003 1350631552 "edit" "" 0
<:#284,10753>20 107 45 10 1001 1342177280 "static" "Label for value1" 0
<:#284,10753>20 121 45 10 1002 1342177280 "static" "Label for value2" 0
<:#284,10753>20 135 45 10 1003 1342177280 "static" "Label for value3" 0
<:#284,10753>5 94 127 10 1022 1342177280 "static" "text" 0
<:#284,10753>79 146 66 12 8004 1350631552 "edit" "" 0
<:#284,10753>79 160 66 12 8005 1350631552 "edit" "" 0
<:#284,10753>79 176 66 12 8006 1350631552 "edit" "" 0
<:#284,10753>20 149 45 10 1004 1342177280 "static" "Label for value4" 0
<:#284,10753>20 163 45 10 1005 1342177280 "static" "Label for value5" 0
<:#284,10753>20 177 45 10 1006 1342177280 "static" "Label for value6" 0
<:#284,10753>END DIALOG
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>
<:#284,10753>DIALOG MainBox
<:#284,10753>-2134376448 13 60 38 197 113 "" "AmiDialog" "Calculation Application Builder"
<:#284,10753>FONT 8 "Helv"
<:#284,10753>154 2 40 14 1 1342373889 "button" "OK" 0
<:#284,10753>154 18 40 14 2 1342373888 "button" "Cancel" 0
<:#568,10753>36 37 120 10 21 1342242825 "button" "&Define the calculation application" 0
<:#568,10753>36 63 156 10 22 1342242825 "button" "De&sign the user interface for the application" 0
<:#568,10753>36 89 113 10 23 1342242825 "button" "&Run the calculation application" 0
<:#284,10753>48 47 140 10 1000 1342177280 "static" "text" 0
<:#284,10753>48 73 143 10 1001 1342177280 "static" "text" 0
<:#284,10753>48 99 148 10 1002 1342177280 "static" "text" 0
<:#284,10753>38 19 80 10 1003 1342177280 "static" "text" 0
<:#284,10753>8 2 134 16 1004 1342177280 "static" "text" 0
<:#284,10753>4 23 28 23 1005 1342177290 "static" "text" 0
<:#284,10753>4 51 28 23 1006 1342177290 "static" "text" 0
<:#284,10753>4 78 28 23 1007 1342177290 "static" "text" 0
<:#284,10753>END DIALOG
>
[Embedded]
00033766
>
[macsum] 23
Main 0 0 18 63
InitMainBox 1694 3 4 150
DefineApp 2489 4 3 182
CBDefineApp 3229 3 3 214
InitDefineApp 3540 3 2 229
Construct 4016 5 5 249
InitConstruct 4993 3 2 286
SizeBox 5741 2 5 313
DisplayHelp 6098 0 4 329
FunButton 6284 3 1 340
FindAndReplace 6339 3 5 349
Redraw 6591 2 2 362
strpath 6933 1 5 389
InsertDefine 7254 2 2 404
FontDlg 7337 3 5 410
ShowFunctions 8134 2 6 466
InitCall 8652 3 5 509
RadioCall 8947 3 6 526
ManageList 9670 3 4 564
More 9942 0 -1 580
DefineApp 10689 0 -1 604
Construct 11158 0 -1 619
MainBox 12306 0 -1 647
[macse]
14 Main
0 32 2
5 1
8 8
0 802
13
8 9
5 1
8 10
5 10
21 11 [X]
0 271 "StepNumber" 1
0 264 "StepNumber" 1
16 FontDlg 1 0 0
6 8
11 00001644
0 31 1004 "There are three easy steps to creating a custom calculation application."
0 31 1005 "Build1.bmt"
0 31 1006 "Build2.bmt"
0 31 1007 "Build3.bmt"
0 31 1000 "(What it is called, how many variables, etc...)"
0 31 1001 "(What are the variable names and formula)"
0 31 1002 "(Run the application)"
0 41 0 "{9}!InitMainBox"
0 47 112 "{9}!DisplayHelp"
0 26 "." "MainBox"
13
8 12
0 265 "StepNumber"
13
8 10
6 12
5 1
18 0
11 00001594
0 27 21
13
11 00000751
5 0
16 DefineApp &1 &2 &3 &4
13
18 0
11 00000738
6 10
5 1
18 0
11 00000725
5 2
8 10
10 00000738
10 00001581
0 27 22
13
11 00001533
5 0
16 Construct "{1}" "{2}" &5 &6 &11
13
18 0
11 00001520
0 296 1
2 101 1 "_Default.sty" 1 0
13
11 00001507
16 Redraw &7 1
16 StrPath "{9}"
13
8 13
7 "{13}{3}.SMM"
8 14
0 789 "Please wait...Now building {14}"
5 2
8 15
6 1
8 16
16 InsertDefine "NumDec" 2
16 InsertDefine "NumberItems" "{2}"
16 InsertDefine "DialogTitle" "{16}"
16 InsertDefine "HelpText" "{6}"
16 InsertDefine "Formula" "{5}"
5 1
8 17
5 10
6 17
18 2
12 00001285
10 00001348
5 1
6 17
3 0
8 17
10 00001206
6 17
22 11
16 InsertDefine "Value{17}Text" [X]
10 00001250
2 102 1 "{13}BUILDER.SAM" 9 ""
2 104 1 "{14}" 32 "{6}" ""
13
11 00001458
2 147 1
5 3
8 10
10 00001469
5 2
8 10
16 ReDraw "{7}" 0
0 789 ""
0 296 0
10 00001520
10 00001581
0 27 23
13
11 00001581
16 "{14}"
5 3
8 10
10 00001604
5 0
8 8
0 264 "StepNumber" "{10}"
10 00000133
16 FontDlg 4 0 0
0 266 "StepNumber"
6 0
15
9
14 InitMainBox
0 32 2
0 296 1
5 1000
8 4
5 1004
6 4
18 2
12 00000124
10 00000163
5 1
6 4
3 0
8 4
10 00000046
16 FontDlg 3 "{0}" "{4}"
10 00000091
0 265 "StepNumber"
13
8 5
5 1
6 5
18 0
11 00000357
7 ""
8 6
0 44 "{0}" 22
13
0 284 "user,EnableWindow,HHH" [X] 0
0 44 "{0}" 23
13
0 284 "user,EnableWindow,HHH" [X] 0
10 00000717
5 2
6 5
18 0
11 00000542
7 "You are on step two."
8 6
0 44 "{0}" 22
13
0 284 "user,EnableWindow,HHH" [X] 1
0 44 "{0}" 23
13
0 284 "user,EnableWindow,HHH" [X] 0
10 00000717
5 3
6 5
18 0
11 00000717
7 " You are on step three."
8 6
0 44 "{0}" 22
13
0 284 "user,EnableWindow,HHH" [X] 1
0 44 "{0}" 23
13
0 284 "user,EnableWindow,HHH" [X] 1
0 43 "{0}" 1003 "{6}"
5 20
6 5
3 0
0 43 "{0}" [X] 1
0 296 0
6 3
15
9
14 DefineApp
0 32 2
0 802
13
8 5
0 31 1005 "This is the example text that will be placed into the welcome box and will explain how the app works"
0 31 1002 "1. Type in the name you want to appear at the top of the dialog box: (30 char.)"
0 31 1003 "2. Name of the macro to create: "
0 31 1004 "3. Number of variables: (1 - 6)"
0 31 8000 "{0}"
0 31 8001 "{1}"
0 31 8002 "{2}"
0 31 8003 "{3}"
0 41 8002 "{5}!CBDefineApp"
0 41 8001 "{5}!CBDefineApp"
0 41 0 "{5}!InitDefineApp"
0 47 112 "{5}!DisplayHelp"
0 26 "." "DefineApp"
13
8 6
6 6
5 1
18 1
11 00000594
5 -1
15
9
0 27 8002
13
0 20 [X] 1 "."
13
28 2
16 FindAndReplace &2 " " "_"
0 27 8000
13
28 0
0 27 8001
13
28 1
0 27 8003
13
28 3
6 4
15
9
14 CBDefineApp
0 32 2
0 42 "{0}" 8002
13
8 4
0 42 "{0}" 8001
13
8 5
6 5
5 6
18 3
11 00000124
0 43 "{0}" 8001 6
6 4
7 ""
18 1
6 5
7 ""
18 1
1 1
11 00000244
0 44 "{0}" 1
13
0 284 "user,EnableWindow,HHH" [X] 1
10 00000299
0 44 "{0}" 1
13
0 284 "user,EnableWindow,HHH" [X] 0
6 3
15
9
14 InitDefineApp
0 32 2
0 296 1
5 1000
8 4
5 1004
6 4
18 2
12 00000126
10 00000165
5 1
6 4
3 0
8 4
10 00000048
16 FontDlg 3 "{0}" "{4}"
10 00000093
16 FontDlg 3 "{0}" 8000
16 FontDlg 3 "{0}" 8001
16 FontDlg 3 "{0}" 8002
0 44 "{0}" 8000
13
0 1036 [X] 1045 30 ""
0 44 "{0}" 8002
13
0 1036 [X] 1045 8 ""
0 44 "{0}" 8001
13
0 1036 [X] 1045 1 ""
0 44 "{0}" 8000
13
0 284 "user,SetFocus,HH" [X]
16 CBDefineApp "{0}" "{1}" "{2}"
0 296 0
6 3
15
9
14 Construct
0 32 2
0 802
13
8 6
0 271 "NumberItems" 1
0 264 "NumberItems" "{1}"
0 31 1020 "1. Enter text to help your users to figure out how to fill in the dialog box. (80 char.)"
0 31 1021 "2. Enter the formula to calculate the answer. For example, @AVG({{VALUE1};{{VALUE2};{{VALUE3})"
0 31 1022 "3. Enter real names for the values: (20 char)"
0 31 8060 "{2}"
0 31 8050 "{3}"
5 1
8 7
6 1
6 7
18 2
12 00000480
10 00000536
5 1
6 7
3 0
8 7
10 00000405
5 8000
6 7
3 0
6 7
22 4
0 31 [X] [X]
10 00000447
0 41 0 "{6}!InitConstruct"
0 41 22 "{6}!FunButton"
0 47 112 "{6}!DisplayHelp"
0 26 "." "Construct"
13
8 8
0 266 "NumberItems"
6 8
5 1
18 1
11 00000711
5 -1
15
9
0 27 8060
13
28 2
16 FindAndReplace &2 " " ""
0 39 34
13
16 FindAndReplace &2 [X] ""
0 27 8050
13
28 3
5 1
8 9
6 1
6 9
18 2
12 00000909
10 00000965
5 1
6 9
3 0
8 9
10 00000834
6 9
5 8000
6 9
3 0
0 27 [X]
13
23 4
10 00000876
6 5
15
9
14 InitConstruct
0 32 2
0 296 1
0 265 "NumberItems"
13
8 4
5 1
8 1
5 9
6 1
18 2
12 00000150
10 00000483
5 1
6 1
3 0
8 1
10 00000075
6 1
5 1000
3 0
16 FontDlg 3 "{0}" [X]
6 1
5 8000
3 0
16 FontDlg 3 "{0}" [X]
6 1
5 8000
3 0
0 44 "{0}" [X]
13
0 1036 [X] 1045 20 ""
6 1
6 4
18 3
11 00000470
6 1
5 1000
3 0
0 44 "{0}" [X]
13
0 284 "user,ShowWindow,HHH" [X] 0
6 1
5 8000
3 0
0 44 "{0}" [X]
13
0 284 "user,ShowWindow,HHH" [X] 0
10 00000117
16 FontDlg 3 "{0}" 1020
16 FontDlg 3 "{0}" 1021
16 FontDlg 3 "{0}" 1022
16 FontDlg 3 "{0}" 8050
16 FontDlg 3 "{0}" 8060
0 44 "{0}" 8050
13
0 284 "user,SetFocus,HH" [X]
0 44 "{0}" 8050
13
0 1036 [X] 1045 80 ""
16 SizeBox "{0}" "{4}"
0 296 0
6 3
15
9
14 SizeBox
0 32 2
0 284 "user,getsystemmetrics,HH" 4
13
8 3
5 4
21 4 [X]
0 284 "user,GetWindowRect,HHN" "{0}" &4
5 3
22 4
5 1
22 4
3 1
8 5
6 3
5 20
18 0
11 00000229
5 22
6 1
4 0
5 200
3 0
8 6
10 00000262
5 26
6 1
4 0
5 250
3 0
8 6
5 1
22 4
5 2
22 4
0 284 "User,MoveWindow,HHHHHHA" "{0}" [X] [X] "{5}" "{6}" 1
6 2
15
9
14 DisplayHelp
0 284 "user,FindWindow,HCC" "AmiProWndA" 0
13
8 1
0 798
13
0 16 [X] "HelpPack.hlp"
13
8 2
5 105
8 3
0 284 "user,WinHelp,HHCHJ" "{1}" "{2}" 1 "{3}"
6 0
15
9
14 FunButton
16 ShowFunctions "{0}" 8060
6 3
15
9
14 FindAndReplace
5 0
8 5
5 0
0 808 "{5}" "{0}" "{1}"
13
0 805 &4 [X]
13
18 1
11 00000240
6 4
5 1
3 1
0 806 "{0}" [X]
13
8 6
0 14 "{0}"
13
6 4
3 1
0 807 "{0}" [X]
13
8 7
0 16 "{6}" "{2}" "{7}"
13
28 0
10 00000029
6 3
15
9
14 Redraw
0 32 2
5 4
21 3 [X]
5 1
6 1
18 0
11 00000156
0 1313 267
13
28 0
0 284 "user,SendMessage,JHHHJ" "{0}" 11 0 ""
6 0
15
9
10 00000330
5 0
6 1
18 0
11 00000330
0 284 "user,SendMessage,JHHHJ" "{0}" 11 1 ""
0 284 "User,GetClientRect,HHN" "{0}" &3
0 284 "user,InvalidateRect,HHFH" "{0}" &3 1
10 00000330
6 2
15
9
14 strpath
0 14 "{0}"
13
8 3
7 "\"
0 15 "{0}" "{3}" 1
13
0 805 &2 [X]
13
18 1
11 00000134
6 3
5 1
3 1
8 3
10 00000033
0 14 "{0}"
13
6 3
3 1
0 807 "{0}" [X]
13
8 4
6 3
5 1
3 1
0 806 "{0}" [X]
13
8 5
0 807 "{5}" 1
13
7 "\"
18 1
11 00000297
0 16 "{5}" "\"
13
8 5
6 5
15
9
6 1
15
9
14 InsertDefine
0 39 34
13
8 3
0 6 "Define[9]{0}[9]{3}{1}{3}[13]"
6 2
15
9
14 FontDlg
5 1
6 0
18 0
11 00000255
0 284 "gdi,CreateFont,HHHHHHHHHHHHHHC" 13 0 0 0 400 0 0 0 0 0 0 0 0 "Helv"
13
8 4
0 271 "FontHandle" 1
6 4
11 00000217
0 264 "FontHandle" "{4}"
6 4
15
9
10 00000229
5 0
15
9
10 00000785
10 00000785
5 2
6 0
18 0
11 00000381
0 265 "FontHandle"
13
8 5
6 5
11 00000356
6 5
15
9
10 00000368
5 0
15
9
10 00000785
5 3
6 0
18 0
11 00000596
0 265 "FontHandle"
13
8 5
6 5
11 00000558
0 44 "{1}" "{2}"
13
8 6
0 284 "user,SendMessage,HHHHJ" "{6}" 48 "{5}" 0
5 1
15
9
10 00000570
5 0
15
9
10 00000785
10 00000785
5 4
6 0
18 0
11 00000785
0 265 "FontHandle"
13
8 5
6 5
11 00000730
0 284 "gdi,DeleteObject,HH" "{5}"
5 1
8 7
10 00000740
5 0
8 7
0 266 "FontHandle"
6 7
15
9
10 00000785
6 3
15
9
14 ShowFunctions
0 284 "User,EnableWindow,AHA" "{0}" 0
0 802
13
8 3
0 41 20 "{3}!RadioCall"
0 41 21 "{3}!RadioCall"
0 41 22 "{3}!RadioCall"
0 41 23 "{3}!RadioCall"
0 41 0 "{3}!InitCall"
0 41 9000 "{3}!RadioCall"
0 47 112 "{3}!DisplayHelp"
0 31 20 1
0 26 "." "More"
13
8 4
6 4
5 1
18 0
11 00000415
0 42 "{0}" "{1}"
13
8 5
0 27 8010
13
8 6
0 16 "{5}" "{6}"
13
8 7
0 43 "{0}" "{1}" "{7}"
0 284 "User,EnableWindow,AHA" "{0}" 1
0 44 "{0}" "{1}"
13
0 284 "user,SetFocus,HH" [X]
6 2
15
9
14 InitCall
0 32 2
16 FontDlg 3 "{0}" 1001
16 FontDlg 3 "{0}" 8010
16 ManageList "{0}" 9000 "Financial"
0 42 "{0}" 9000
13
8 4
0 286 "Financial" "{4}" "AmiCalc.ini"
13
8 5
0 20 "{5}" 2 "~"
13
8 6
0 20 "{5}" 1 "~"
13
8 7
0 43 "{0}" 8010 "{6}"
0 43 "{0}" 1001 "{7}"
6 3
15
9
14 RadioCall
0 32 2
0 42 "{0}" 20
13
11 00000087
7 "Financial"
8 4
10 00000272
0 42 "{0}" 22
13
11 00000155
7 "Mathematical"
8 4
10 00000272
0 42 "{0}" 21
13
11 00000222
7 "Statistical"
8 4
10 00000272
0 42 "{0}" 23
13
11 00000272
7 "Logical"
8 4
5 9000
6 1
18 0
11 00000498
0 42 "{0}" 9000
13
8 5
0 286 "{4}" "{5}" "AmiCalc.ini"
13
8 6
0 20 "{6}" 2 "~"
13
8 7
0 20 "{6}" 1 "~"
13
8 8
0 43 "{0}" 8010 "{7}"
0 43 "{0}" 1001 "{8}"
10 00000711
10 00000711
16 ManageList "{0}" 9000 "{4}"
0 42 "{0}" 9000
13
8 5
0 286 "{4}" "{5}" "AmiCalc.ini"
13
8 6
0 20 "{6}" 2 "~"
13
8 7
0 20 "{6}" 1 "~"
13
8 8
0 43 "{0}" 8010 "{7}"
0 43 "{0}" 1001 "{8}"
10 00000711
6 3
15
9
14 ManageList
0 44 "{0}" 9000
13
0 1036 [X] 1029 0 0
0 286 "{2}" 0 "AmiCalc.ini"
13
8 5
5 1
8 6
5 -1
0 20 "{5}" "{6}" "~"
13
0 805 &4 [X]
13
18 1
11 00000260
6 4
7 ""
18 3
11 00000227
0 43 "{0}" 9000 "{4}"
6 6
5 1
3 0
8 6
10 00000105
6 3
15
9
DIALOG More
-2134376448 13 61 28 187 118 "" "AmiDialog" "More @Functions"
FONT 8 "Helv"
7 12 50 11 20 1342242825 "button" "&Financial" 0
7 24 50 11 21 1342242825 "button" "&Statistical" 0
7 35 54 11 22 1342242825 "button" "&Mathematical" 0
7 46 50 11 23 1342242825 "button" "&Logical" 0
79 15 58 40 9000 1352728579 "listbox" "" 0
7 57 176 24 30 1342308359 "button" "Example" 0
7 83 176 32 31 1342308359 "button" "Description" 0
13 68 148 10 8010 1342177280 "static" "text" 0
13 93 158 20 1001 1342177280 "static" "text" 0
4 3 44 10 1000 1342177280 "static" "Categories:" 0
78 3 40 10 1002 1342177280 "static" "@Functions:" 0
143 3 40 14 1 1342373889 "button" "Insert" 0
143 19 40 14 2 1342373888 "button" "Cancel" 0
DIALOG DefineApp
-2134376448 8 60 47 183 67 "" "AmiDialog" "Define Application"
FONT 8 "Helv"
139 3 40 14 1 1342373889 "button" "OK" 0
139 19 40 14 2 1342373888 "button" "Cancel" 0
11 23 119 12 8000 1350631552 "edit" "" 0
93 38 37 12 8002 1350631552 "edit" "" 0
93 52 16 12 8001 1350631552 "edit" "" 0
4 4 125 16 1002 1342177280 "static" "AppName" 0
4 40 88 10 1003 1342177280 "static" "NumFields" 0
4 54 88 10 1004 1342177280 "static" "MacName" 0
DIALOG Construct
-2134376448 20 68 16 168 188 "" "AmiDialog" "Design Dialog Box"
FONT 8 "Helv"
124 3 40 14 1 1342373889 "button" "OK" 0
124 19 40 14 3 1342373888 "button" "Cancel" 0
113 35 51 14 22 1342373888 "button" "@&Functions..." 0
6 24 101 22 8050 1350631428 "edit" "" 0
5 68 158 24 8060 1350631428 "edit" "" 0
6 3 115 20 1020 1342177280 "static" "Help text for the application:" 0
5 50 146 16 1021 1342177280 "static" "Formula for the application" 0
79 104 66 12 8001 1350631552 "edit" "" 0
79 118 66 12 8002 1350631552 "edit" "" 0
79 132 66 12 8003 1350631552 "edit" "" 0
20 107 45 10 1001 1342177280 "static" "Label for value1" 0
20 121 45 10 1002 1342177280 "static" "Label for value2" 0
20 135 45 10 1003 1342177280 "static" "Label for value3" 0
5 94 127 10 1022 1342177280 "static" "text" 0
79 146 66 12 8004 1350631552 "edit" "" 0
79 160 66 12 8005 1350631552 "edit" "" 0
79 176 66 12 8006 1350631552 "edit" "" 0
20 149 45 10 1004 1342177280 "static" "Label for value4" 0
20 163 45 10 1005 1342177280 "static" "Label for value5" 0
20 177 45 10 1006 1342177280 "static" "Label for value6" 0
DIALOG MainBox
-2134376448 13 60 38 197 113 "" "AmiDialog" "Calculation Application Builder"
FONT 8 "Helv"
154 2 40 14 1 1342373889 "button" "OK" 0
154 18 40 14 2 1342373888 "button" "Cancel" 0
36 37 120 10 21 1342242825 "button" "&Define the calculation application" 0
36 63 156 10 22 1342242825 "button" "De&sign the user interface for the application" 0
36 89 113 10 23 1342242825 "button" "&Run the calculation application" 0
48 47 140 10 1000 1342177280 "static" "text" 0
48 73 143 10 1001 1342177280 "static" "text" 0
48 99 148 10 1002 1342177280 "static" "text" 0
38 19 80 10 1003 1342177280 "static" "text" 0
8 2 134 16 1004 1342177280 "static" "text" 0
4 23 28 23 1005 1342177290 "static" "text" 0
4 51 28 23 1006 1342177290 "static" "text" 0
4 78 28 23 1007 1342177290 "static" "text" 0
00033791