function XCBrowse( uData, cTitle, lAutoSort, bSetUp, aCols, bSelect, lExcel, ;
lFastEdit, bValid, cSerial, oParent, lCaption, ;
nRowDlg, nColDlg, nWd, nHt )
.../..
DEFAULT uData := Alias(), ;
cTitle := If( ValType( uData ) == 'C', uData, ;
If( ValType( uData ) == 'O', uData:ClassName(), ;
'XBROWSE' ) ), ;
lAutoSort:= .f., ;
bSetUp := { || nil },;
lExcel := .t., ;
oParent := nil, ;
lCaption := .T., ;
nRowDlg := 0, ;
nColDlg := 0, ;
nWd := ( GetSysMetrics(0) * 0.75 ) , ; // / 2 ), ;
nHt := ( GetSysMetrics(1) / 2 )
if oParent == nil
if WndMain() == nil
DEFINE FONT oFont NAME 'TAHOMA' ;
SIZE 0, -Min( 14, Max( 8, Int( GetSysMetrics(0) / 100 ) ) )
else
//oFont := WndMain():oFont
nTipFont := 1
endif
else
//oFont := oParent:oFont
nTipFont := 2
endif
.../...
if oParent == nil
DEFINE DIALOG oDlg SIZE nWd, nHt PIXEL ;
TITLE cTitle ;//FONT oFont
STYLE nOR( DS_MODALFRAME, WS_POPUP, WS_CAPTION, WS_SYSMENU, WS_MAXIMIZEBOX, WS_MINIMIZEBOX, WS_THICKFRAME )
else
if lCaption
DEFINE DIALOG oDlg PIXEL OF oParent ; //SIZE nWd,nHt
TITLE cTitle ;
FROM nRowDlg, nColDlg TO nRowDlg + nHt, nColDlg + nWd //;
// STYLE nOR( DS_MODALFRAME, WS_POPUP, WS_CAPTION, WS_SYSMENU, WS_MAXIMIZEBOX, WS_MINIMIZEBOX, WS_THICKFRAME )
//FONT oFont
else
//cTitle := ""
DEFINE DIALOG oDlg PIXEL OF oParent ; //SIZE nWd,nHt
FROM nRowDlg, nColDlg TO nRowDlg + nHt, nColDlg + nWd
//FONT oFont
//STYLE nOR( DS_MODALFRAME, WS_POPUP, WS_CAPTION, WS_SYSMENU, WS_MAXIMIZEBOX, WS_MINIMIZEBOX, WS_THICKFRAME )
endif
endif
Do Case
Case nTipFont == 0
oDlg:SetFont( oFont )
Case nTipFont == 1
oDlg:SetFont( WndMain():oFont )
Case nTipFont == 2
oDlg:SetFont( oParent:oFont )
EndCase
nWd /= 2
nHt /= 2
.../...