[MainWindow.Scan_Objects]
@            = $TaskTab ext(1)
Scan_Objects = [ScanGroup] subst(Group1(subst(List(alias(vector.ScanObject.alldrives) xy(0)) Do(use(0)) ))) extprm(1)

[MainWindow.Scan_Group]
@ = [MainWindow_ProfileDoWork] subst(Name(subst(Caption(enable(f_IsStateActive(state) ? true : find(ScanObjects, "Enabled"))) Body([MainWindow.Scan_Group_Body]) )) ) ext(1)

[MainWindow.Vulnerabilities_Scan_Group]
@ = [MainWindow.Scan_Group] subst(Name(subst(Caption(enable(true)) )) ) ext(1)

[MainWindow.Scan_Group_Body]
@        = sz(p,a) ext(1)
Status   = [ScanTask_Status] extprm(1)
Objects  = [ScanGroup_Body_ScanObjects] sz(p,115) a(sa) xy(,7) mg(0,0) use(0) extprm(1)

[ScanTask_Status]
@           = a(la) sz(p,a) ext(1)
MinVSize    = sz(0,a) at(singleline)
Active      = [ScanTask_Status_Active] sz(p,a) visible(f_IsStateActive(state)) extprm(1)
Inactive    = [ScanTask_Status_Inactive] visible(!f_IsStateActive(state)) extprm(1)

[ScanTask_Status_Active]
Remain     = f("Description") at(singleline)
RemainTime = $LinkKL a(a) at(singleline) text((FinishTime == 0xFFFFFFFF || FinishTime == StartTime) ? capitalize($Unknown, false) : f_GetTimeIntervalByState(FinishTime - utctime(), state)) onclick($ProfileHome_Report) extprm(1)
ObjectText = [ScanTask_Status_Active_Object] sz(p,a) a(a) extprm(1)

[ScanTask_Status_Active_Object]
;Object     = f("Description") a(a) at(singleline) visible(CurObject)
;ObjectPath = f("Description") a(a) at(singleline) sz(p,a) text(compressPath(CurObject)) visible(CurObject)

[ScanTask_Status_Inactive]
@           = sz(p,a)
LastState   = f("Description") at(singleline) text(capitalize(s_ProfileState(state, false, true)))
LastRes     = $LinkKL a(a) ontimer(10*1000, updatedata()) at(singleline) text(s_ProfileStateRes(state, false)) onclick($ProfileHome_Report) extprm(1)
LastErr     = sz(p) f("Description") at(singleline) a(a) text(", " + capitalize(s_ProfileError(type, lastErr), false)) visible(lastErr)
InactiveEx  = f("Description") at(singleline) a(la) use(0) extprm(1)

[ScanTask_Status_Inactive2]
@           = sz(p,a)
LastStateResErr = f("Normal_Black")  t(richedit) text(capitalize(s_ProfileState(state, false, true)) + "<a Support onclick(window(\"MainReport:\" + s_Profile2ProfileGroup_Reports(name), p_postInit(if(!persistent, \"ctl.Report.selgroup(\" + id + \")\"))))>" + s_ProfileStateRes(state, false) + "</a>" + if(lastErr,", " + capitalize(s_ProfileError(type, lastErr), false))) at(readonly,nofocus,noborder)

[MainWindow_Body.Scan]
$OpenScanProgressWindow = window("ScanProgressWindow", p_itemID(name))
@                    = $TaskTab ext(1) h(14852)
_PanelFooterBg       = $TaskTabFooterBg
Header               = a(lt) f("Header6KGreen") xy(-1)
Descr                = f("Description") a(sa) xy(1,,,5)
Scan_Startup         = [MainWindow.Scan_Group] a(lt) xy(-15,70) subst(Name(subst(Body(subst(Status(subst(RemainTime(onclick($OpenScanProgressWindow)) LastRes(onclick($OpenScanProgressWindow)) )) )) )) )  
Scan_Qscan           = [MainWindow.Scan_Group]  a(as) xy(2) subst(Name(subst(Body(subst(Status(subst(RemainTime(onclick($OpenScanProgressWindow)) LastRes(onclick($OpenScanProgressWindow)) )) )) )) )
Scan_My_Computer     = [MainWindow.Scan_Group] a(lt) xy(-15,120) subst(Name(subst(Body(subst(Status(subst(RemainTime(onclick($OpenScanProgressWindow)) LastRes(onclick($OpenScanProgressWindow)) )) )) )) ) 
Scan_Critical_Areas  = [MainWindow.Scan_Group] a(lt) xy(-15,170) subst(Name(subst(Body(subst(Status(subst(RemainTime(onclick($OpenScanProgressWindow)) LastRes(onclick($OpenScanProgressWindow)) )) )) )) )
Scan_Rootkits        = [MainWindow.Scan_Group] a(as) xy(2,-50) subst(Name(subst(Body(subst(Status(subst(RemainTime(onclick($OpenScanProgressWindow)) LastRes(onclick($OpenScanProgressWindow)) )) )) )) )   
Scan_Vulnerabilities = [MainWindow.Scan_Group] a(la) xy(237,5) subst(Icon(i("vulnerability32")) ) onclick(if(f_IsStateActive(state), (setstate(#TASK_REQUEST_STOP, name), setstate(#TASK_REQUEST_STOP, "AVZ_Scan_Vulnerabilities")), (reset(AVZ_Scan_Vulnerabilities.enabled, "AVZ_Scan_Vulnerabilities"), savesettings(), setstate(#TASK_REQUEST_RUN, name), setstate(#TASK_REQUEST_RUN, "AVZ_Scan_Vulnerabilities"))))
Scan_Objects         = [MainWindow.Scan_Group] a(lt) xy(-15,228) sz(300,a) subst(Name(subst(Body(subst(Status(subst(RemainTime(onclick($OpenScanProgressWindow)) LastRes(onclick($OpenScanProgressWindow)) )) Objects(use(1) subst(List(alias(vector.ScanObject.alldrives)))) )) )) )   
Vulnerabilities      = [BtnGlassMedium] sz(188,25)   f("MainFtr") onclick(window("VulnerabilityMonitor")) a(as) xy(2,-5) 


[MainReport.Scan]
@ = [ProfileReport] subst(Group1([MainReport.Scan_Events]) Group2([MainWindow.Scan_Objects_WorkArea_Statistics]) Stat(use(0) visible(FullReport)))

[MainReport.Scan_Events]
d = [Product_Events] subst(Report(onfocus(if(l_curId!=val,(l_curId=val,ctl.ddd.refresh()))) v(#eTASK_GROUP_SCAN) group(scantask,ExtraInfoSub1) prm(#dbScan)) Time(group()) Application(use(0)) Task(visible(0)) Action(use(0)) views([MainWindow.Scan_Filters]))

[MainWindow.Scan_Objects_WorkArea_Statistics]
ddd = [Product_Scan_Statistics_List] prm(2) filter(ExtraInfoSub1==l_curId,4) subst(Object(group()))

[MainWindow.Scan_Filters]
@
AllItems    = v("1204010002620000000000000028;Ti1010000096;Ta1002000050;Ve1000000096;De000000001e;De100000001e;De100000001e;De100000001e;Ex100000001e;Ob10000000e6;Ty100000003c;Pa2000000063;Na2000000047;Re2000000050;") at(default)
ByVerdict   = v("1204010002530000000000000028;Ti1010000096;Ta1002000050;Ve1402010096;De000000001e;De100000001e;De100000001e;De100000001e;Ex100000001e;Ob100000016d;Ty100000003c;Pa20000000aa;Na2000000087;Re2000000050;")

[ScanGroup]
@ = ext(1) [ProfileHome] alias(taskview) subst(Tasks(use(0)) Group1([ScanGroup_Body_ScanObjects] extprm(1) subst(Do(use(0)))) Group2([ScanGroup_Body]))

[ScanGroup_Body_ScanObjects]
@            = mg(7,7) ext(1) bg("RoundedRectArea")
;CurObject    = [Value] a(la) xy(2,,10,10) subst(Name(text($CurObject + ":")) Val(t(edit) a(lt) sz(p,a) xy(80) at(readonly,singleline,compresspath,noborder) text(CurObject))) visible(f_IsStateActive(state))
ListArea     = [ScanGroup_Body_ScanObjects_ListArea]
;Do           = [ScanGroup_Body_ScanObjects_Do] extprm(1)
;Rollback     = $Link a(rt) text($Rollback_AVZ) use(0) extprm(1)

[ScanGroup_Body_ScanObjects_Do]
@       = sz(83,83) a(rt) xy(0,20) ext(1)
Start   = [BtnSquarePlay] subst(Name(text($Start))) enable(find(ScanObjects, "Enabled")) onclick(f_setState(#TASK_REQUEST_RUN, name)) visible(!f_IsStateActive(state)) extprm(1)
Stop    = [BtnSquareStop] subst(Name(text($Stop))) onclick(f_setState(#TASK_REQUEST_STOP, name)) visible(f_IsStateActive(state)) extprm(1)

[ScanGroup_Body_ScanObjects_ListArea]
@    = sz(p,p)
List = [ScanGroup_Body_ScanObjects_List] subst(footer(subst(Add($LinkKL) Delete($LinkKL) Edit($LinkKL) )) )

[ScanGroup_Body_ScanObjects_List]
@       = $List a(la) sz(p,p) rs(100,0) at(noheader,noborder) alias(vector.ScanObject) v(ScanObjects) unique(!stricmp(ScanObjects, newItem.ScanObjects) && ObjectType == newItem.ObjectType,,Enabled = newItem.Enabled; if(!System, Recursive = newItem.Recursive)) enable(!f_IsStateActive(state)) ext(1) extprm(1)
Object  = sz(a) at(checked) i(mergeIcon(s_ScanObjectIcon(ObjectType), Recursive ? "" : "nonrecursive")) text(s_ScanObjectName(ObjectType)) v(Enabled) sort(Runtime,sortup)
footer  = [Grid.Footer2.Template] subst(Delete(onclick(msg("DeleteItemsConfirm", #m_yesno)))  ) extprm(1)

[ScanGroup_Body]
@       = sz(p,p) mg(12,12) bg("RoundedRectArea") ext(1)
Info    = [ScanGroup_Body_Info]
Start   = [BtnSquarePlay] a(rt) subst(Name()) enable(find(ScanObjects, "Enabled")) onclick(f_setState(#TASK_REQUEST_RUN, name)) visible(!f_IsStateActive(state))
Stop    = [BtnSquareStop] a(rt) subst(Name()) onclick(f_setState(#TASK_REQUEST_STOP, name)) visible(f_IsStateActive(state))

[ScanGroup_Body_Info]
@           = sz(300,p)
Active      = [ScanGroup_Body_Active]
Inactive    = [ScanGroup_Body_Inactive]

[ScanGroup_Body_Active]
@                       = sz(p,p) visible(f_IsStateActive(state))
Duration                = $TaskVal xy(,0) subst(Name(text($Duration)) Val(text(timestamp(f_ProfileDurationTime()))))
LastStart               = [ProfileHome_Progress] xy(,7)
NowScanning             = $TaskVal xy(,6) subst(Name(at(singleline)) Val([ScanGroup_Body_Active_NowScanning]))
ShutdownWhenFinished    = $TaskVal xy(,6) a(la) use(!$IsAdminGroupTask && !$IsRD) alias(odsRuntimeParams) subst(Name() Val($Link onclick(menu("ScanShutdownMenu"))))

[ScanGroup_Body_Active_NowScanning]
@           = sz(p,a) ext(1)
Skip        = $Link a(rt) xy(,,7) at(singleline) visible(CurCancelId) onclick(skipObject(CurCancelId)) use(0)
NowScanning = t(edit) a(pt) sz(p,a) at(readonly,singleline,compresspath,noborder,ralign) text(CurObject ? CurObject : "...")

[ScanGroup_Body_Inactive]
@           = sz(p,p) visible(!f_IsStateActive(state))
Level       = $TaskVal xy(,0) subst(Name() Val($Link text($SettingsLevel) onclick(menu("[SettingsLevelMenu] subst(Customize(onclick(windowDlg(\"ScanSettings\", p_itemID(name), p_CfgMode(1)))))"))))
OnDetection = $TaskVal xy(,7) subst(Name() Val($Link text($ScanAction) onclick(menu("ScanActionMenu"))))
Scheduler   = ns(schedule) $TaskVal xy(,7) subst(Name() Val($Link text($SchedulerDescription) onclick(menu("[SchedulerModeMenu] subst(Settings(onclick(windowDlg(\"ScanSettings:RunMode\", p_itemID(name), p_CfgMode(2)))))")))) use(!$IsRD && !$IsKAT)
LastStart   = [ProfileHome_Progress] xy(,7)

[ScanShutdownMenu]
@               = t(menu) at(enum) v(StopMode)
EnableStopMode  = at(chklike) v(EnableStopMode)
sep
Shutdown        = at(radiolike) enable(EnableStopMode) v(#stop_Shutdown)  text(s_ODSStopModes(ctl.value))
Sleep           = at(radiolike) enable(EnableStopMode) v(#stop_Sleep)     text(s_ODSStopModes(ctl.value))
Hibernate       = at(radiolike) enable(EnableStopMode) v(#stop_Hibernate) text(s_ODSStopModes(ctl.value))
Restart         = at(radiolike) enable(EnableStopMode) v(#stop_Restart)   text(s_ODSStopModes(ctl.value))

[ScanDialog_EventLog]
@       = $List xy(,41) alias(taskreport) refresh(10)
Time    = sz(a,a) text(datetime(ReportTime)) group(date,dategroupDT(ReportTime))
Object  = text(switch(ObjectType,"ObjectTypes")+":"+ObjectName) sz(p,60) group(ObjectType)
Status  = sz(a,a) text(switch(ObjectStatus,"AVS.ObjectStatus")+switch(ObjectStatus,"AVS.ObjectStatusEx")) group(ObjectStatus)
Reason  = sz(a,a) text(switch(ObjectStatus,"AVS.Description")) group(Reason,100*ObjectStatus+Description,Reason)
row     = sz(a,a) i(switch(ObjectStatus,"AVS.ObjectStatus.Icon"))

[ScanSettings.Optimization_FileTypesGroup]
@           = $SettingsGroup xy(0,)
CheckNew    = t(check) sz(a,a) v(invert(ScanUnchangedObjects))

[ScanSettings]
@   = $DlgAttr at(fixstyle) sz(368,458) alias(taskedit) text($ProfileName)
Tab = [ScanSettings_Tab]

[ScanSettings_Tab]
@           = $Tab at(rememberdata) sz(p,p) xy(,,,$DialogPanelSizeY)
Scope       = [ScanSettings_Tab_Scope]
Additional  = [ScanSettings_Tab_Additional]
RunMode     = [ScanSettings_Tab_RunMode]

[ScanSettings_Tab_Scope]
@                   = sz(p,p) mg(7,7) h($IsKAT ? 15746 : 14870) use(!p_CfgMode || p_CfgMode == 1)
FileTypesGroup      = [ScanSettings_Tab_Scope_FileTypesGroup]
FileTypesGroup1     = [ScanSettings_Tab_Scope_FileTypesGroup1]
CompoundFilesGroup  = [CompoundFilesGroup]

[ScanSettings_Tab_Scope_FileTypesGroup]
@           = $SettingsGroup v(ScanFilter) xy(0,)
All         = $Radio v(1) sz(a,a)
Infectable  = $Radio a(la) xy(,7) v(0) sz(a,a)
Predefined  = $Radio a(la) xy(,7) v(2) sz(a,a)
HelpLink    = t(hotlink) a(as) xy(,-5) i("info,0,1,0,0,0,1") onclick(help(5015))

[ScanSettings_Tab_Scope_FileTypesGroup1]
@               = $SettingsGroup
CheckNew        = t(check) sz(a,a) v(invert(ScanUnchangedObjects)) use(!$IsRD && !$IsKAT)
SkipTimeCheck   = t(check) sz(a,a) a(la) xy(,7) v(UseTimeLimit)
SkipTimeLabel   = a(rs) sz(25)
SkipTimeValue   = t(edit) at(number) nl(1,9999) a(ps) sz(50,a) xy($Edit_CommentOffsetX,$Edit_CenterOffsetY) v(TimeLimit) enable(UseTimeLimit)

[ScanSettings_Tab_Additional]
@           = sz(p,p) mg(7,7) h($IsKAT ? 15749 : 14867) use((!p_CfgMode || p_CfgMode == 1) && !$IsRD)
Methods     = [ScanSettings_Tab_Additional_Methods]
Tecnologies = [ScanSettings_Tab_Additional_Tecnologies]
SelfProt    = [OptionsWindow_Navigator_WorkArea_Appearance_Body_SelfProt] use($IsKAT) alias(taskview) ns(Protection)
Feedback    = [ScanSettings_Tab_Additional_Feedback]
PauseTask   = [PauseTaskGroup] use(env("ProductType") == "fs")

[ScanSettings_Tab_Additional_Feedback]
@           = $SettingsGroup xy(,10) use($IsKAT)
UseKLSRL    = $Check v(ProcMon.UseKLSRL)

[ScanSettings_Tab_Additional_Methods]
@               = $SettingsGroup xy(0,)
Sign            = t(check) sz(a,a) enable(0) v(1)
Heur            = t(check) sz(a,a) a(la) xy(,7) v(EmulEnable)
HeurParams      = [HeuristicParams] enable(EmulEnable) subst(Val(v(bswitch(EmulValue,"EmulatorLevels_scan"))))
Vulnerability   = t(check) sz(a,a) a(la) xy(,7) v(ScanVulnerability) use($IsKAT)
Rootkit         = t(check) sz(a,a) a(la) xy(,7) v(RootkitScan)
RootkitDeep     = t(check) sz(a,a) a(la) xy(17,7) v(DeepRootkitScan) enable(RootkitScan)

[ScanSettings_Tab_Additional_Tecnologies]
@       = $SettingsGroup use(!$IsRD && !$IsKAT)
Swift   = t(check) sz(a,a) a(la) v(UseIStreams)
Check   = t(check) sz(a,a) a(la) xy(,7) v(UseIChecker)

[ScanSettings_Tab_RunMode]
@           = sz(p,a) mg(7,7) use((!p_CfgMode || p_CfgMode == 2) && !$IsRD) h(14869)
Schedule    = [ScanSettings_Tab_RunMode_Schedule]
RunAs       = [RunAsGroup] xy(0,7)

[ScanSettings_Tab_RunMode_Schedule]
@               = $SettingsGroup xy(0,) a(lt) v(schedule.Mode)
Manual          = t(radio) sz(a,a) a(la) v(#schmManual) xy(,,,7)
Fixed           = t(radio) sz(a,a) a(la) v(#schmEnabled)
SchedulerView   = [SchedulerView] ns(schedule) a(la) xy(,17) enable(schedule.Mode == #schmEnabled)

;------------- ScanProgressWindow -----------

[ScanProgressWindow]
@       = $DlgAttrBase mg(0,0) at(a_close,minimizable,customfooter) btns(Cancel(enable(!$IsActiveDisinfect))) sz(474,a) alias(taskview) text(if(f_IsStateActive(state), Completion + "% - ") + if(origin == #poTemporary && ScanObjects.size(), (ScanObjects.at(0).DisplayScanObjects ? ScanObjects.at(0).DisplayScanObjects : ScanObjects.at(0).ScanObjects) + " - ") + $ProfileName) h(15588) bg("ColorWindow") onclose(if($IsActiveDisinfect, false, if(origin == #poTemporary && f_IsStateActive(state), msg("ScanStopConfirm", #m_yesno) ? f_setState(#TASK_REQUEST_STOP, name) : 0)))
Body    = [ScanProgressWindow_Body]
Footer  = [DialogPanel] a(lb) subst(Cancel(onclick(origin == #poTemporary && f_IsStateActive(state) ? (if(msg("ScanStopConfirm", #m_yesno), f_setState(#TASK_REQUEST_STOP, name))) : close())) Link1(onclick($ProfileHome_Report) text($LinkFullReport) use(!(global.Ins_InitMode & #eInitMode_Init))) )

[ScanProgressWindow_Body]
@          = $DlgBodyAttr sz(p,a) mg(10,10,20,25)
Icon       = sz(a,a) i(s_MainWindow_ProfileDoWork_Icon(name))
Caption    = at(singleline) a(at) xy(5,-3) f("Header6Lite") text(s_MainWindow_ProfileDoWork_CaptionDetails(name))
CaptionAfterPos = a(sa) xy(1) sz(0,0)
Status     = [ScanProgressWindow_Body_Status] xy(,0) a(sa) sz(p,a)
ActiveInfo = [ScanProgressWindow_Body_ActiveInfo] a(sa) sz(p,a) xy(,20) visible(f_IsStateActive(state))

[ScanProgressWindow_Body_ActiveInfo]
SkipScanObject  = $LinkKL a(rt) at(singleline) visible(CurCancelId) onclick(skipObject(CurCancelId))
Object          = [Value] a(ps) xy() subst(Name(f("Description") at(singleline)) Val(f("Description") at(singleline) a(a) sz(p,a) text(compressPath(CurObject))))
Progress        = t(progress) a(la) sz(p,14) v(Completion) xy(,2)

[ScanProgressWindow_Body_Status]
Result      = [ScanTask_Status] a(sa) subst(ObjectText(use(0)) )
Duration    = [Value] a(la) xy() subst(Name(f("Description") at(singleline)) Val(f("Description") at(singleline) a(a) sz(p,a) text(capitalize(timestamp(f_ProfileDurationTime()), false))))
ShutdownWhenFinished = [Value] a(la) sz(a,a) visible(f_IsStateActive(state)) use(!$IsAdminGroupTask && !isRescueCD()) alias(odsRuntimeParams) subst(Name(f("Description") at(singleline)) Val($LinkKL at(singleline) a(a) onclick(menu("ScanShutdownMenu")))) enable(!$IsActiveDisinfect) use(name != "Scan_Startup")
Scanned     = a(la) xy(,20) sz(a,a) f("Description")
Detected    = a(as) f("DescriptionBold")

;------------- Password request Dialog -----------

[PasswordRequestDialog]
@           = $DlgAttrBase at(ontop,nohelp,customfooter,noautofocus) sz(300,a) mg(0,0)
Body        = [PasswordRequestDialog_Body]
Footer      = [DialogPanel] subst(BtnsGroup(use(0)) Help(use(0)) )
SkipAll     = [BtnGlassMedium] a(rb) xy(7,7)
Skip        = [BtnGlass] a(ps) xy(6)
Ok          = [BtnGlass] a(ps) xy(6) at(default) enable(Password)

[PasswordRequestDialog_Body]
@           = sz(p,a) xy(,,,$DialogPanelSizeY) mg(7,7)
Archive     = [Value] a(la) subst(Name(a(lc)) Val(text(ArchiveObject) xy(70) sz(p,a) at(compresspath) a(lt)))
Password    = [Value] a(la) xy(,7) subst(Name(a(lc)) Val(t(edit) at(password) xy(70) sz(p,a) v(Password) a(lt))) order(0)

[AskResumeScan]
@       = $DlgAttrBase at(a_cancel) sz(367,a) text($ProfileName) bg("ColorWindow") mg(0,0) h($IsKAT ? 16509 : 5212)
Body    = [AskResumeScan_Body]

[AskResumeScan_Body]
@       = $DlgBodyAttr sz(p,a)
Header = [ProductHeader] sz(p,63)
;Info    = [DialogInfoHeader] subst(Text())
Resume  = [WizardButton] onclick(close(#m_res_ok)) xy(10,15,10,) subst(Name() Descr())
Restart = [WizardButton] onclick(close(#m_res_no)) xy(10,0,10,15) subst(Name() Descr())

;------------- AskScanSettingsDlg -------------

[AskScanSettingsDlg]
@ = [AlertDialogT_Green] h(920) subst(Caption(subst(F(text()) B(text()))) Body([AskScanSettingsDlg_Body]) ApplyToAll(use(1) text()))

[AskScanSettingsDlg_Body]
Top     = a(la) sz(p,0) bg("AlertInfoTop")
Descr   = [AskScanSettingsDlg_Body_Descr]
Buttom  = a(la) sz(p,1) bg("AlertInfoBottom")
Action  = [AskScanSettingsDlg_Body_Action]

[AskScanSettingsDlg_Body_Descr]
@       = a(la) sz(p,a) mg(17,17) bg("AlertInfo")
Icon    = sz(32,32) i("custom_scan32")
Descr   = t(richedit) at(readonly,noborder,nofocus) a(as) sz(p,a) xy(17)

[AskScanSettingsDlg_Body_Action]
@       = $AlertActions
ProcessFull  = [AlertDialog_ActionButton] enable(1) v(#dsmFull) onclick(DriveScanMode = ctl.value; close(#m_res_ok)) subst(Name() Descr())
ProcessQuick = [AlertDialog_ActionButton] enable(1) v(#dsmQuick) onclick(DriveScanMode = ctl.value; close(#m_res_ok)) subst(Name() Descr())
Skip         = [AlertDialog_ActionButton] enable(1) v(#dsmSkip) onclick(DriveScanMode = ctl.value; close(#m_res_ok)) subst(Name() Descr())

;------------- VulnerabilityMonitor -------------

[VulnerabilityMonitor]
@      = $DlgAttrBase mg(0,0) sz(700,550) at(resizable,minimizable,a_close) onshow(ctl.Vuln.List.treatAll(true)) ontimer(60*1000, if(f_IsStateActive(Scan_Vulnerabilities.state), 0, ctl.Vuln.List.treatAll(true)))
Header = [ProductHeader] sz(p,53)
Scan   = [VulnerabilityMonitor_Body_Scan] sz(p,a)
Sep    = $StdAreaSeparator
Body   = [VulnerabilityMonitor_Body]

[VulnerabilityMonitor_Body]
@    = $DlgBodyAttr mg(7,7) a(la)
Tab  = [VulnerabilityMonitor_Body_Tab] a(la)

[VulnerabilityMonitor_Body_Scan]
@                    = sz(p,a) xy(,,,0) bg("ColorWindow") mg(7,7) a(la) alias(taskview)
fictiveBindAvz = text(AVZ_Scan_Vulnerabilities.enabled) visible(0)
Scan_Vulnerabilities = [MainWindow.Vulnerabilities_Scan_Group] subst(Icon(i("vulnerability32")) ) onclick(if(f_IsStateActive(state), (setstate(#TASK_REQUEST_STOP, name), setstate(#TASK_REQUEST_STOP, "AVZ_Scan_Vulnerabilities")), (reset(AVZ_Scan_Vulnerabilities.enabled, "AVZ_Scan_Vulnerabilities"), savesettings(), setstate(#TASK_REQUEST_RUN, name), setstate(#TASK_REQUEST_RUN, "AVZ_Scan_Vulnerabilities"))))
Result               = [LValue] subst(Name(f("Header0")) Val(a(at) xy(7) f("Header0") text(depend(ctl.AVZ.Troubles.size("Enabled") + ctl.Vuln.List.totalCount(true)))) ) xy(47,7,,10)

[VulnerabilityMonitor_Body_Tab]
@    = $Tab xy(0,0,0,0)
AVZ  = [VulnerabilityMonitor_Body_Tab_AVZ] h(15573)
Vuln = [VulnerabilityMonitor_Body_Tab_Vuln] h(15574)

[VulnerabilityMonitor_Body_Tab_AVZ]
@         = alias(avzwizard.security) ns(AVZ_Scan_Vulnerabilities) prm(AvzSecurityAnalyzerWizard) mg(7,7)
ShowCured = $Check a(lb) xy(,,,7) at(rememberdata) onchange(ctl.List.setfilter(ctl.value ? "" : "Enabled")) visible(Troubles.size("!Enabled"))
List      = [AvzVulnerabilityMonitor_List] a(lp) enable(!f_IsStateActive(state))

[VulnerabilityMonitor_Body_Tab_Vuln]
@    = mg(7,7)
List = [VulnerabilityMonitor_List]

[VulnerabilityMonitor_List]
$l_sort = DetectBehaviour + s_AppName(appIDFromAppPath(ObjectName))
@       = $List sz(p,p) at(noheader,singlesel) alias(vulnthreats) refresh(100) filter(DetectType == #DETYPE_VULNERABILITY && ObjectStatus == #OBJSTATUS_INFECTED)
_sort = sort($l_sort, sortup)
row     = [VulnerabilityMonitor_ListRow] subst(Icon(i(s_MainProtStatusIcon(s_SecunVulDangerDanger(DetectBehaviour)))) Name(text(s_AppName(appIDFromAppPath(ObjectName)))) File(text(ObjectName)) Danger(text(s_VulnerabilityDescr(s_SecunVulDangerDanger(DetectBehaviour)))) )
rowedit = [VulnerabilityMonitor_ListRowEdit] subst(Do(onclick(url(f_VulnerUrl(ctl.List.seldata().DetectName)))) Do2(onclick(addToExclude(ctl.List.seldata(), dialog("[ExclusionEdit] alias(settings)", p_new(true))))) )

[VulnerabilityMonitor_ListRow]
@           = sz(p,a) at(custom) mg(,3,3) ext(1)
Icon        = sz(a,a) a(la) xy(4,) extprm(1)
Name        = sz(a,a) a(at) xy(3,) f(ctl.parent.focused ? "Header0White" : (ctl.Icon.enabled ? "Header0" : "Header0Grey")) extprm(1)
FileLabel   = a(la) xy(27) f(if(!ctl.Icon.enabled && !ctl.parent.focused, "Normal_Grey")) extprm(1)
File        = a(as) xy(a) xy(4) f(ctl.FileLabel.font) extprm(1)
Danger      = a(la) xy(27,3) f(if(!ctl.Icon.enabled && !ctl.parent.focused, "Normal_Grey")) extprm(1)
MinVSize    = sz(1,36) a(la) visible(ctl.parent.selected)

[VulnerabilityMonitor_ListRowEdit]
@      = sz(p,p) mg(27,,,10) ext(1)
Do     = $Button sz(a,$Button_CY) a(lb) xy(,,4) extprm(1)
Do2    = $Button sz(a,$Button_CY) a(as) xy(,,4) extprm(1)
Help   = $Button sz(a,$Button_CY) a(as) xy(,,4) extprm(1) visible(0)

[AvzVulnerabilityMonitor_List]
$l_sort = (0xffffffff - Result) + Description
@       = $List sz(p,p) at(noheader,singlesel) alias(vector) v(Troubles)
_sort = sort($l_sort, sortup)
row     = [VulnerabilityMonitor_ListRow] subst(Icon(enable(Enabled) i(s_MainProtStatusIcon(s_AvzVulDangerDanger(Result)))) Name(text(Description)) FileLabel(use(0)) File(use(0)) Danger(text(s_VulnerabilityDescr(s_AvzVulDangerDanger(Result)))) )
rowedit = [VulnerabilityMonitor_ListRowEdit] subst(Do(enable(Enabled) onclick(avzCure(ctl.List.seldata()))) Do2(visible(!Enabled && Revertable) onclick(avzRevert(ctl.List.seldata()))) Help(visible(1) onclick(url($AvzScriptHelpLinkPrefix + ctl.List.seldata().Name + $AvzScriptHelpLinkSuffix))))

;------------- Restore Object Dialog -----------

[AskRestoreObjectDlg]
@ = [AlertDialogT_Green] h(920) subst(Caption(subst(F(text()) B(text()))) Body([AskRestoreObjectDlg_Body]))

[AskRestoreObjectDlg_Body]
Descr   = [AlertDialogT_InfoArea] subst(Info([AskRestoreObjectDlg_Body_Descr]))
Action  = [AskRestoreObjectDlg_Body_Action]

[AskRestoreObjectDlg_Body_Descr]
@       = a(la) sz(p,a) mg(17,17) bg("AlertInfo")
Icon    = sz(32,32) i("custom_scan32")
Descr   = t(richedit) at(readonly,noborder,nofocus) a(as) sz(p,a) xy(17)
Object  = [AlertDialog_Descr_Object]

[AskRestoreObjectDlg_Body_Action]
@       = $AlertActions
SaveAs  = [AlertDialog_ActionButton] enable(1) subst(Name() Descr())
Skip    = [AlertDialog_ActionButton] enable(1) subst(Name() Descr())
