redraw
end;
procedure texpert.callnc;
var command: string;
begin
donesyserror;
doneevents;
donevideo;
donememory;
setmemtop(heapptr);
command:='nc';
swapvectors;
exec(getenv('COMSPEC'), '/C ' + Command);
swapvectors;
if doserror <> 0 then
writeln('Could not execute COMMAND.COM');
writeln;
setmemtop(heapend);
initmemory;
initvideo;
initevents;
initsyserror;
redraw
end;
procedure texpert.callwinpbrush;
var command: string;
begin
donesyserror;
doneevents;
donevideo;
donememory;
setmemtop(heapptr);
command:='win pbrush.exe';
swapvectors;
exec(getenv('COMSPEC'), '/C ' + Command);
swapvectors;
if doserror <> 0 then
writeln('Could not execute COMMAND.COM');
writeln;
setmemtop(heapend);
initmemory;
initvideo;
initevents;
initsyserror;
redraw
end;
procedure texpert.callwinwrite;
var command: string;
begin
donesyserror;
doneevents;
donevideo;
donememory;
setmemtop(heapptr);
command:='win write.exe';
swapvectors;
exec(getenv('COMSPEC'), '/C ' + Command);
swapvectors;
if doserror <> 0 then
writeln('Could not execute COMMAND.COM');
writeln;
setmemtop(heapend);
initmemory;
initvideo;
initevents;
initsyserror;
redraw
end;
procedure texpert.callwincard;
var command: string;
begin
donesyserror;
doneevents;
donevideo;
donememory;
setmemtop(heapptr);
command:='win cardfile.exe';
swapvectors;
exec(getenv('COMSPEC'), '/C ' + Command);
swapvectors;
if doserror <> 0 then
writeln('Could not execute COMMAND.COM');
writeln;
setmemtop(heapend);
initmemory;
initvideo;
initevents;
initsyserror;
redraw
end;
procedure texpert.about;
var r:trect;
x:word;
begin
r.assign(15,5,65,15);
x:=messageboxrect(r,#13'Âû ðàáîòàåòå â ñðåäå "Êîíñóëüòàíò", ñîçäàííîé '+
'Ðîìàíåíêî Â.È. ïîä ðóêîâîäñòâîì Ëåáåäåâà Â.Â. âåñíîé 1997 ãîäà'+
' â ãîðîäå Ïåðìè. Îðãàíèçàöèÿ - ÏÂÂÊÈÊÓ ÐÂ',nil,$401)
end;
procedure texpert.openbase;
var i:word;
begin
for i:=0 to bases^.count-1 do
begin
basis^.name:=pstring(bases^.at(i))^;
initbase(basis,database,rulebase);
outputmachine
end
end;
procedure texpert.newbase;
var d:pnewwindow;
strings:pstringcollection;
iodata:string;
begin
d:=pnewwindow(visualres.get('Íîâàÿ'));
control:=desktop^.execview(d);
if control=cmok then
begin
recordlist(d,iodata);
makebase(iodata);
enablecommands([cmopen,cmrename,cmedit,cmerase]);
dispose(bankwindow,done);
drawbanklist
end;
dispose(d,done)
end;
procedure texpert.renamebase;
var d:prenamewindow;
r:trect;
f,iodata:string;
ss:pstatictext;
begin
d:=prenamewindow(visualres.get('Ïåðåèìåíîâàíèå'));
with d^ do
begin
r.assign(2,2,38,3);
f:=pstring(bases^.at(bank^.focused))^;
ss:=new(pstatictext,init(r,'Ñòàðîå èìÿ: '+f));
insert(ss);
end;
control:=desktop^.execview(d);
if control=cmok then
begin
renamelist(d,iodata);
makerename(iodata);
drawbanklist
end;
dispose(d,done)
end;
procedure texpert.editoring;
var d:pstatewindow;
r:trect;
f:string;
begin
d:=pstatewindow(visualres.get('Óñòàíîâêà'));
with d^ do
begin
r.assign(1,1,69,2);
f:=pstring(bases^.at(bank^.focused))^;
insert(new(pstatictext,init(r,'Èìÿ áàçû: '+f)));
end;
control:=desktop^.execview(d);
if control=cmok then selector(d);
dispose(d,done)
end;
procedure texpert.erasebase;
var d:pdialog;
r:trect;
focus:string;
begin
d:=pdialog(visualres.get('Óäàëåíèå'));
with d^ do
begin
r.assign(1,1,31,2);
insert(new(pstatictext,init(r,#3+'Âû õîòèòå óäàëèòü áàçó:')));
r.assign(1,2,31,3);
focus:=pstring(bases^.at(bank^.focused))^;
insert(new(pstatictext,init(r,#3+'"'+focus+'"')));
end;
control:=desktop^.execview(d);
if control=cmok then
begin
eraselist;
drawbanklist
end;
dispose(d,done)
end;
procedure texpert.parole;
begin
end;
procedure texpert.texteditor;
var command: string;
begin
donesyserror;
doneevents;
donevideo;
donememory;
setmemtop(heapptr);
command:='draw2.exe';
swapvectors;
exec(getenv('COMSPEC'), '/C ' + Command);
swapvectors;
if doserror <> 0 then
writeln('Could not execute COMMAND.COM');
writeln;
setmemtop(heapend);
initmemory;
initvideo;
initevents;
initsyserror;
redraw
end;
procedure texpert.expcalend;
var c:pcalendarwindow;
begin
c:=pcalendarwindow(visualres.get('Êàëåíäàðü'));
desktop^.insert(c)
end;
procedure texpert.expcalc;
var c:pcalculator;
begin
c:=pcalculator(visualres.get('Êàëüêóëÿòîð'));
desktop^.insert(c);
end;
procedure texpert.expgame;
var g:ppuzzlewindow;
begin
g:=ppuzzlewindow(visualres.get('Èãðà'));
desktop^.insert(g)
end;
procedure texpert.sysexit;
var d:pdialog;
begin
d:=pdialog(visualres.get('Âûõîä'));
control:=desktop^.execview(d);
if control=cmok then
begin
finish;
halt
end;
dispose(d,done)
end;
destructor texpert.done;
begin
tapplication.done;
dispose(bankwindow,done)
end;
var expert:texpert;
begin
start;
expert.init;
expert.run;
expert.done
|
|