„^„„„Ђ „‡„Ђ„‚„Ђ„Љ„Ђ, „‰„„„Ђ „q„u„x „Ѓ„‚„Ђ„q„|„u„}
„P„‚„y„r„Ђ„w„… „ѓ„r„Ђ„z „y„ѓ„‡„Ђ„t„~„y„{ - „t„|„‘ „r„Ђ„x„}„Ђ„w„~„Ќ„‡ „{„Ђ„}„}„u„~„„„p„‚„y„u„r. „N„p cmMarkUnMark „‘ „Ѓ„Ђ„r„u„ѓ„y„| „ѓ„Ђ„Ђ„q„‹„u„~„y„u „Ђ „{„Ђ„|„y„‰„u„ѓ„„„r„u „Џ„|„u„}„u„~„„„Ђ„r „r „}„p„‚„{„u„‚„u „t„|„‘ „Ѓ„‚„Ђ„r„u„‚„{„y.
////// „I„~„{„|„…„t „ѓ „{„Ђ„~„ѓ„„„p„~„„„p„}„y:
const
sci178InsPM = 6959;
cmMarkUnMark = 2243;
cmSelectAll = 2244;
cmUnSelectAll = 2245;
cmInvertAll = 2247;
End;
/////// „R„p„} „y„~„„„u„‚„†„u„z„ѓ:
Interface Dict '„S„p„q„|„y„€„Ќ „ѓ„y„ѓ„„„u„}„Ќ'
(,,sci178InsPM) EscClose, Cyan;
show at ( 3, 1, 76, 26);
table struct tmp_db
(
nrec : Comp,
code : String,
name : String,
title: String
)
with index
(
tmp_db01 = nrec(unique,surrogate)
);
create view AllDictTables
var
Markers : LongInt;
FieldMarkers : LongInt;
IndexNo : LongInt;
(MarkerStr)
As Select
if (SearchMarker(Markers, tmp_db.code, IndexNo) = True, 'Ѓг', ' '),
* from tmp_db;
Panel pnTablesList;
Table tmp_db;
Browse bwTableList;
Fields
MarkerStr '' :[1], Skip;
tmp_db.code '„K„Ђ„t' : Protect, {Font = {Color = if(MarkerStr = 'Ѓг', 2, 0)}};
tmp_db.Name '„I„}„‘ „„„p„q„|„y„€„Ќ' : Protect, {Font = {Color = if(MarkerStr = 'Ѓг', 2, 0)}};
tmp_db.Title '„H„p„s„|„p„r„y„u „„„p„q„|„y„€„Ќ' : Protect, {Font = {Color = if(MarkerStr = 'Ѓг', 2, 0)}};
end;
HandleEvent
cmMarkUnMark : begin
InvertMarker(Markers, tmp_db.code);
if ((GetNext tmp_db) = tsOk) {};
RescanPanel(tntmp_db);
Message (GetMarkerCount(Markers));
end;
cmSelectAll : begin
StartNewVisual( vtRotateVisual, vfTimer, '„P„Ђ„}„u„‰„p„ђ „r„ѓ„u', 1);
PushPos(tntmp_db);
if ((Modifier GetFirst tmp_db) = tsOk)
begin
do
begin
InsertMarker(Markers, tmp_db.code);
NextVisual;
end;
while (Modifier GetNext tmp_db = tsOk)
end;
PopPos(tntmp_db);
StopVisual('', 0);
RescanPanel(tntmp_db);
end;
cmInvertAll : begin
StartNewVisual( vtRotateVisual, vfTimer, '„I„~„r„u„‚„„„y„‚„…„ђ „ѓ„Ѓ„y„ѓ„Ђ„{', 1);
PushPos(tntmp_db);
if ((Modifier GetFirst tmp_db) = tsOk)
begin
do
begin
InvertMarker(Markers, tmp_db.code);
NextVisual;
end;
while (Modifier GetNext tmp_db = tsOk)
end;
PopPos(tntmp_db);
StopVisual( '', 0);
RescanPanel(tntmp_db);
end;
cmUnSelectAll: begin
ClearMarker(Markers);
RescanPanel(tntmp_db);
end;
end;
end; // panel
HandleEvent
cmInit : begin
Markers:=InitMarker('ViewDictMarkers', 2, 1000, 100);
FieldMarkers:=InitMarker('', 2, 20, 20);
StartNewVisual( vtRotateVisual, vfTimer, '„P„Ђ„t„s„Ђ„„„Ђ„r„{„p „ѓ„Ѓ„y„ѓ„{„p...', 1);
_loop x$Files
{
tmp_db.code := x$Files.xf$Code;
tmp_db.name := x$Files.xf$Name;
tmp_db.title := x$Files.xf$Title;
insert current tmp_db;
}
GetFirst tmp_db;
StopVisual('', 0);
end;
cmDone : begin
DoneMarker(Markers, 'ViewDictMarkers');
DoneMarker(FieldMarkers, '');
end;
end;
end.