- doc/en/hashes.txt
- doc/en/rdddb.txt
* .gitattributes
* contrib/3rd/sqlite3/sqlite3.hbp
* contrib/hbbz2/3rd/bz2/bz2.hbp
* contrib/hbexpat/3rd/expat/expat.hbp
* contrib/hbfimage/hbfimage.hbp
* contrib/hbhpdf/3rd/libhpdf/libhpdf.hbp
* contrib/hblzf/3rd/liblzf/lzf.hbp
* contrib/hbmxml/3rd/minixml/mxml.hbp
* contrib/hbmzip/3rd/minizip/minizip.hbp
* contrib/hbodbc/hbodbc.hbp
* contrib/hbtinymt/3rd/tinymt/tinymt.hbp
* contrib/hbxdiff/3rd/libxdiff/xdiff.hbp
* contrib/sddsqlt3/tests/test.prg
* ChangeLog.txt
* doc/Makefile
* doc/oldnews.txt
* extras/ps32/readme.txt
* extras/superlib/readme.txt
* src/3rd/jpeg/Makefile
* src/3rd/pcre/Makefile
* src/3rd/png/Makefile
* src/3rd/tiff/Makefile
* src/3rd/zlib/Makefile
+ contrib/hbsms/DEPRECATED.txt
+ contrib/hbtpathy/DEPRECATED.txt
+ contrib/xhb/WARNING.txt
* contrib/3rd/sqlite3/sqlite3.dif -> contrib/3rd/sqlite3/sqlite3.diff
* contrib/hbbz2/3rd/bz2/bz2.dif -> contrib/hbbz2/3rd/bz2/bz2.diff
* contrib/hbexpat/3rd/expat/expat.dif -> contrib/hbexpat/3rd/expat/expat.diff
* contrib/hbhpdf/3rd/libhpdf/libhpdf.dif -> contrib/hbhpdf/3rd/libhpdf/libhpdf.diff
* contrib/hblzf/3rd/liblzf/liblzf.dif -> contrib/hblzf/3rd/liblzf/liblzf.diff
* contrib/hbmxml/3rd/minixml/minixml.dif -> contrib/hbmxml/3rd/minixml/minixml.diff
* contrib/hbmzip/3rd/minizip/minizip.dif -> contrib/hbmzip/3rd/minizip/minizip.diff
* contrib/hbtinymt/3rd/tinymt/tinymt.dif -> contrib/hbtinymt/3rd/tinymt/tinymt.diff
* contrib/hbxdiff/3rd/libxdiff/libxdiff.dif -> contrib/hbxdiff/3rd/libxdiff/xdiff.diff
* contrib/sddsqlt3/tests/test.sq3 -> contrib/sddsqlt3/tests/test.sqlite3
* extras/dbu/dbu52.dif -> extras/dbu/dbu52.patch
* extras/dbu/dbu53.dif -> extras/dbu/dbu53.patch
* extras/ps32/ps32.dif -> extras/ps32/ps32.patch
* extras/rl/rl.dif -> extras/rl/rl.patch
* extras/superlib/superlib.dif -> extras/superlib/superlib.patch
* extras/template/readme.txt -> extras/template/README.md
* src/3rd/hbdossrl/README -> src/3rd/hbdossrl/README.txt
* src/3rd/jpeg/jpeg.dif -> src/3rd/jpeg/jpeg.diff
* src/3rd/pcre/pcre.dif -> src/3rd/pcre/pcre.diff
* src/3rd/png/png.dif -> src/3rd/png/png.diff
* src/3rd/tiff/tiff.dif -> src/3rd/tiff/tiff.diff
* src/3rd/zlib/zlib.dif -> src/3rd/zlib/zlib.diff
* tests/hbpptest/_pp_test.prg -> tests/hbpp/_pp_test.prg
* tests/hbpptest/compare.hb -> tests/hbpp/compare.hb
* tests/hbpptest/hbpptest.hbp -> tests/hbpp/hbpptest.hbp
* tests/hbpptest/hbpptest.prg -> tests/hbpp/hbpptest.prg
* tests/tflock.prg -> tests/flock.prg
* contrib/hbfimage/fi_wrp.c -> contrib/hbfimage/core.c
* contrib/hbodbc/browodbc.prg -> contrib/hbodbc/browse.prg
* doc/cmdline.txt -> doc/cmdline.md
* extras/dbu/readme.txt -> extras/dbu/README.md
* extras/rl/readme.txt -> extras/rl/README.md
* some file renames synced with 3.4 fork, plus the content of
some of them. Some new text files added as well.
Note, 3rd party code rediffing won't work anymore on 8.3
filesystems.
722 lines
23 KiB
Diff
722 lines
23 KiB
Diff
diff -u dbu52ori/dbu.prg dbu52pat/dbu.prg
|
||
--- dbu52ori/dbu.prg 1993-03-04 04:20:00.000000000 +0100
|
||
+++ dbu52pat/dbu.prg 2013-03-02 02:00:25.000000000 +0100
|
||
@@ -9,6 +9,10 @@
|
||
*
|
||
*/
|
||
|
||
+#include "hbgtinfo.ch"
|
||
+#include "hbextcdp.ch"
|
||
+#include "inkey.ch"
|
||
+
|
||
PROCEDURE Dbu( param1, param2, param3 )
|
||
|
||
PUBLIC n_files,keystroke,lkey,frame,sframe,cur_dir,more_up,more_down,;
|
||
@@ -60,6 +64,14 @@
|
||
SAVE SCREEN && the screen you save...
|
||
SET SCOREBOARD OFF && who's keeping score, anyhow
|
||
SET KEY 28 TO && some folks need help
|
||
+
|
||
+ Set( _SET_DATEFORMAT, "yyyy-mm-dd" )
|
||
+
|
||
+ IF "-utf" $ Lower( hb_cmdLine() )
|
||
+ hb_cdpSelect( "UTF8EX" )
|
||
+ hb_gtInfo( HB_GTI_BOXCP, "UTF8EX" )
|
||
+ ENDIF
|
||
+ SetKey( K_ALT_V, {|| hb_gtInfo( HB_GTI_CLIPBOARDPASTE ) } )
|
||
|
||
IF (ISCOLOR() .OR. "/C" $ UPPER(param2)) .AND. .NOT. "/M" $ UPPER(param2)
|
||
* make it pretty
|
||
@@ -100,10 +112,10 @@
|
||
* system constants
|
||
more_up = CHR(24) && visual up arrow
|
||
more_down = CHR(25) && visual down arrow
|
||
- frame = "Õ͸³¾ÍÔ³" && box characters
|
||
- lframe = "Ñ͸³¾Íϳ"
|
||
- mframe = "ÂijÙÄÀ³"
|
||
- sframe = "ÚÄ¿³ÙÄÀ³"
|
||
+ frame = hb_UTF8ToStr( "â•’â•<C3A2>╕│╛â•<C3A2>╘│" ) && box characters
|
||
+ lframe = hb_UTF8ToStr( "╤â•<C3A2>╕│╛â•<C3A2>╧│" )
|
||
+ mframe = hb_UTF8ToStr( "┬─┬│┘─└│" )
|
||
+ sframe = hb_UTF8ToStr( "┌─â”<C3A2>│┘─└│" )
|
||
|
||
* global variables
|
||
STORE .F. TO need_field,need_ntx,need_relat,need_filtr,box_open
|
||
@@ -250,7 +262,7 @@
|
||
@ 0,0 SAY " F1 F2 F3 F4 F5 F6 " +;
|
||
"F7 F8 "
|
||
show_keys()
|
||
- @ 2,0 SAY REPLICATE("Ä", 80)
|
||
+ @ 2,0 SAY REPLICATE(hb_UTF8ToStr( "─" ), 80)
|
||
error_msg(view_err)
|
||
|
||
* when to bubble up
|
||
@@ -346,14 +358,14 @@
|
||
help_title[22] = "REPLACE"
|
||
|
||
* arrays for file names in default directory
|
||
- DECLARE dbf_list[adir("*.DBF") + 20] && directory of data files
|
||
+ DECLARE dbf_list[adir("*.dbf") + 20] && directory of data files
|
||
DECLARE ntx_list[adir("*" + INDEXEXT()) + 20] && directory of index files
|
||
- DECLARE vew_list[adir("*.VEW") + 20] && directory of view files
|
||
+ DECLARE vew_list[adir("*.vew") + 20] && directory of view files
|
||
|
||
* fill the arrays with filenames
|
||
- array_dir("*.DBF",dbf_list)
|
||
+ array_dir("*.dbf",dbf_list)
|
||
array_dir("*" + INDEXEXT(),ntx_list)
|
||
- array_dir("*.VEW",vew_list)
|
||
+ array_dir("*.vew",vew_list)
|
||
|
||
* default to set view
|
||
local_func = 0 && local menu
|
||
@@ -370,7 +382,7 @@
|
||
|
||
DO CASE
|
||
|
||
- CASE RAT(".", com_line) > RAT("\", com_line)
|
||
+ CASE RAT(".", com_line) > RAT(hb_ps(), com_line)
|
||
* file extension entered
|
||
IF .NOT. FILE(com_line)
|
||
* file must exist
|
||
@@ -378,13 +390,13 @@
|
||
|
||
ENDIF
|
||
|
||
- CASE FILE(com_line + ".VEW")
|
||
+ CASE FILE(com_line + ".vew")
|
||
* look for file name with .VEW extension
|
||
- com_line = com_line + ".VEW"
|
||
+ com_line = com_line + ".vew"
|
||
|
||
- CASE FILE(com_line + ".DBF")
|
||
+ CASE FILE(com_line + ".dbf")
|
||
* look for file name with .DBF extension
|
||
- com_line = com_line + ".DBF"
|
||
+ com_line = com_line + ".dbf"
|
||
|
||
OTHERWISE
|
||
* file not found..ignore command line
|
||
@@ -395,7 +407,7 @@
|
||
IF .NOT. EMPTY(com_line)
|
||
* command line file exists
|
||
|
||
- IF RAT(".VEW", com_line) = LEN(com_line) - 3
|
||
+ IF RAT(".vew", Lower( com_line ) ) = LEN(com_line) - 3
|
||
* assume a valid .VEW file
|
||
view_file = com_line
|
||
set_from(.F.) && restore view
|
||
@@ -616,8 +628,8 @@
|
||
@ 0,0 SAY " F1 F2 F3 F4 " +;
|
||
"F5 F6 F7 F8 "
|
||
show_keys()
|
||
- @ 2,0 SAY REPLICATE("Ä", 80)
|
||
- @ 24,0 SAY "Run Í" + CHR(16) + " "
|
||
+ @ 2,0 SAY REPLICATE(hb_UTF8ToStr( "─" ), 80)
|
||
+ @ 24,0 SAY "Run " + hb_UTF8ToStr( "â•<C3A2>â–º" ) + " "
|
||
|
||
* accept command entry
|
||
run_com = enter_rc(M->com_line,24,7,127,"@KS73",M->color1)
|
||
@@ -646,18 +658,18 @@
|
||
@ 3,0 CLEAR
|
||
|
||
* rebuild directory arrays..must keep current
|
||
- DECLARE dbf_list[adir("*.DBF") + 20]
|
||
+ DECLARE dbf_list[adir("*.dbf") + 20]
|
||
DECLARE ntx_list[adir("*" + INDEXEXT()) + 20]
|
||
- DECLARE vew_list[adir("*.VEW") + 20]
|
||
+ DECLARE vew_list[adir("*.vew") + 20]
|
||
|
||
* fill the arrays with filenames..data files
|
||
- array_dir("*.DBF",dbf_list)
|
||
+ array_dir("*.dbf",dbf_list)
|
||
|
||
* index files
|
||
array_dir("*" + INDEXEXT(),ntx_list)
|
||
|
||
* view files
|
||
- array_dir("*.VEW",vew_list)
|
||
+ array_dir("*.vew",vew_list)
|
||
cur_area = 0 && re-draw view screen
|
||
sysfunc = 0 && back to the main view screen
|
||
|
||
@@ -736,10 +748,10 @@
|
||
nPos := AT( ";", cPath )
|
||
|
||
// Account for backslash in path
|
||
- IF ( SUBSTR( cPath, nPos - 1, 1 ) == "\" )
|
||
+ IF ( SUBSTR( cPath, nPos - 1, 1 ) == hb_ps() )
|
||
cFile := SUBSTR( cPath, 1, IF( nPos == 0, LEN( cPath ), nPos - 1 )) + "dbu.hlp"
|
||
ELSE
|
||
- cFile := SUBSTR( cPath, 1, IF( nPos == 0, LEN( cPath ), nPos - 1 )) + "\dbu.hlp"
|
||
+ cFile := SUBSTR( cPath, 1, IF( nPos == 0, LEN( cPath ), nPos - 1 )) + hb_ps() + "dbu.hlp"
|
||
ENDIF
|
||
|
||
IF FILE( cFile )
|
||
diff -u dbu52ori/dbucopy.prg dbu52pat/dbucopy.prg
|
||
--- dbu52ori/dbucopy.prg 1993-03-04 04:20:00.000000000 +0100
|
||
+++ dbu52pat/dbucopy.prg 2012-05-02 16:47:47.000000000 +0200
|
||
@@ -62,8 +62,8 @@
|
||
filename = ""
|
||
|
||
* only copy and append use a list of text files
|
||
- DECLARE txt_list[adir("*.TXT") + 20] && directory of text files
|
||
- array_dir("*.TXT",txt_list) && fill array with filenames
|
||
+ DECLARE txt_list[adir("*.txt") + 20] && directory of text files
|
||
+ array_dir("*.txt",txt_list) && fill array with filenames
|
||
|
||
* set up for multi-box
|
||
DECLARE boxarray[10]
|
||
@@ -104,7 +104,7 @@
|
||
|
||
* DBF for normal mode
|
||
files = "dbf_list"
|
||
- def_ext = ".DBF"
|
||
+ def_ext = ".dbf"
|
||
|
||
* when is a filename acceptable?
|
||
fi_done = "not_empty('filename')"
|
||
@@ -138,7 +138,7 @@
|
||
PARAMETERS sysparam
|
||
|
||
RETURN box_title(M->sysparam, "Copy " +;
|
||
- SUBSTR(M->cur_dbf, RAT("\", M->cur_dbf) + 1) +;
|
||
+ SUBSTR(M->cur_dbf, RAT(hb_ps(), M->cur_dbf) + 1) +;
|
||
" to...")
|
||
|
||
|
||
@@ -208,7 +208,7 @@
|
||
|
||
SELECT (M->cur_area)
|
||
|
||
- IF RAT(M->def_ext, M->filename) = LEN(M->filename) - 3
|
||
+ IF RAT(Lower( M->def_ext ), Lower( M->filename )) = LEN(M->filename) - 3
|
||
* target has default extension..does it exists in current dir?
|
||
add_name = .NOT. FILE(name(M->filename) + M->def_ext)
|
||
|
||
@@ -301,7 +301,7 @@
|
||
PARAMETERS sysparam
|
||
|
||
RETURN box_title(M->sysparam, "Append to " +;
|
||
- SUBSTR(M->cur_dbf, RAT("\", M->cur_dbf) + 1) +;
|
||
+ SUBSTR(M->cur_dbf, RAT(hb_ps(), M->cur_dbf) + 1) +;
|
||
" from")
|
||
|
||
|
||
@@ -433,7 +433,7 @@
|
||
PARAMETERS sysparam
|
||
|
||
RETURN box_title(M->sysparam, "Replace in " +;
|
||
- SUBSTR(M->cur_dbf, RAT("\", M->cur_dbf) + 1) +;
|
||
+ SUBSTR(M->cur_dbf, RAT(hb_ps(), M->cur_dbf) + 1) +;
|
||
"...")
|
||
|
||
|
||
@@ -735,7 +735,7 @@
|
||
cur_el = 1
|
||
rel_row = 0
|
||
files = "dbf_list"
|
||
- def_ext = ".DBF"
|
||
+ def_ext = ".dbf"
|
||
filelist(1) && display new list
|
||
|
||
ELSE
|
||
@@ -750,7 +750,7 @@
|
||
cur_el = 1
|
||
rel_row = 0
|
||
files = "txt_list"
|
||
- def_ext = ".TXT"
|
||
+ def_ext = ".txt"
|
||
filelist(1) && display new list
|
||
|
||
ENDIF
|
||
@@ -813,7 +813,7 @@
|
||
cur_el = 1
|
||
rel_row = 0
|
||
files = "dbf_list"
|
||
- def_ext = ".DBF"
|
||
+ def_ext = ".dbf"
|
||
filelist(1) && display new list
|
||
|
||
ELSE
|
||
@@ -828,7 +828,7 @@
|
||
cur_el = 1
|
||
rel_row = 0
|
||
files = "txt_list"
|
||
- def_ext = ".TXT"
|
||
+ def_ext = ".txt"
|
||
filelist(1) && display new list
|
||
|
||
ENDIF
|
||
diff -u dbu52ori/dbuedit.prg dbu52pat/dbuedit.prg
|
||
--- dbu52ori/dbuedit.prg 1993-03-04 04:20:00.000000000 +0100
|
||
+++ dbu52pat/dbuedit.prg 2012-05-02 16:47:53.000000000 +0200
|
||
@@ -47,7 +47,7 @@
|
||
nHelpSave := help_code
|
||
|
||
/* save, clear, and frame the window */
|
||
- cBrowseBuf := SaveScreen(8, 0, 23, 79)
|
||
+ cBrowseBuf := SaveScreen(8, 0, MaxRow()-1, MaxCol())
|
||
|
||
/* array to save move_ptr expressions */
|
||
aMoveExp := Array(4)
|
||
@@ -63,14 +63,14 @@
|
||
cFieldArray := "field_n" + Substr("123456", cur_area, 1)
|
||
cNtx := "ntx" + Substr("123456", cur_area, 1)
|
||
cur_ntx := &cNtx[1]
|
||
- cPrimeDbf := Substr(cur_dbf, Rat("\", cur_dbf) + 1)
|
||
+ cPrimeDbf := Substr(cur_dbf, Rat(hb_ps(), cur_dbf) + 1)
|
||
lCanAppend := .T.
|
||
else
|
||
/* browse the entire view */
|
||
nPrimeArea := 1
|
||
cFieldArray := "field_list"
|
||
cur_ntx := ntx1[1]
|
||
- cPrimeDbf := Substr(dbf[1], Rat("\", dbf[1]) + 1)
|
||
+ cPrimeDbf := Substr(dbf[1], Rat(hb_ps(), dbf[1]) + 1)
|
||
lCanAppend := .F.
|
||
|
||
if ( "->" $ field_list[afull(field_list)] )
|
||
@@ -95,11 +95,11 @@
|
||
|
||
/* create TBrowse object */
|
||
nColorSave := SetColor(color7)
|
||
- oB := TBrowseDB(10, 1, 23, 78)
|
||
+ oB := TBrowseDB(10, 1, MaxRow()-1, MaxCol()-1)
|
||
|
||
- oB:headSep := "ÍÑÍ"
|
||
- oB:colSep := " ³ "
|
||
- oB:footSep := "ÍÏÍ"
|
||
+ oB:headSep := hb_UTF8ToStr( "â•<C3A2>╤â•<C3A2>" )
|
||
+ oB:colSep := hb_UTF8ToStr( " │ " )
|
||
+ oB:footSep := hb_UTF8ToStr( "â•<C3A2>â•§â•<C3A2>" )
|
||
oB:skipBlock := {|x| Skipped(x, lAppend)}
|
||
|
||
/* put columns into browse */
|
||
@@ -135,10 +135,10 @@
|
||
|
||
/* initialize parts of screen not handled by TBrowse */
|
||
stat_msg("")
|
||
- scroll(8, 0, 23, 79, 0)
|
||
- @ 8, 0, 23, 79 BOX frame
|
||
- @ nHsepRow, 0 SAY "Æ"
|
||
- @ nHsepRow, 79 SAY "µ"
|
||
+ scroll(8, 0, MaxRow()-1, MaxCol(), 0)
|
||
+ @ 8, 0, MaxRow()-1, MaxCol() BOX frame
|
||
+ @ nHsepRow, 0 SAY hb_UTF8ToStr( "╞" )
|
||
+ @ nHsepRow, MaxCol() SAY hb_UTF8ToStr( "â•¡" )
|
||
|
||
/* init rest of locals */
|
||
cAlias := ""
|
||
@@ -349,11 +349,11 @@
|
||
box_open := .t.
|
||
|
||
/* save, clear, and frame window for memoedit */
|
||
- cMemoBuff := SaveScreen(10, 10, 22, 69)
|
||
+ cMemoBuff := SaveScreen(10, 10, MaxRow()-2, 69)
|
||
|
||
SetColor(color8)
|
||
- Scroll(10, 10, 22, 69, 0)
|
||
- @ 10, 10, 22, 69 BOX frame
|
||
+ Scroll(10, 10, MaxRow()-2, 69, 0)
|
||
+ @ 10, 10, MaxRow()-2, 69 BOX frame
|
||
|
||
/* use fieldspec for title */
|
||
SetColor(color9)
|
||
@@ -361,7 +361,7 @@
|
||
|
||
/* edit the memo field */
|
||
SetColor(color8)
|
||
- cMemo := MemoEdit(&cEditField, 11, 11, 21, 68,.T.,"xmemo")
|
||
+ cMemo := MemoEdit(&cEditField, 11, 11, MaxRow()-3, 68,.T.,"xmemo")
|
||
|
||
if Lastkey() == K_CTRL_END
|
||
/* ^W..new memo confirmed */
|
||
@@ -393,7 +393,7 @@
|
||
end
|
||
|
||
/* restore the window */
|
||
- RestScreen(10, 10, 22, 69, cMemoBuff)
|
||
+ RestScreen(10, 10, MaxRow()-2, 69, cMemoBuff)
|
||
box_open := .F.
|
||
else
|
||
/* regular data entry */
|
||
@@ -461,7 +461,7 @@
|
||
end
|
||
|
||
/* restore the screen */
|
||
- RestScreen(8, 0, 23, 79, cBrowseBuf)
|
||
+ RestScreen(8, 0, MaxRow()-1, MaxCol(), cBrowseBuf)
|
||
SetColor(nColorSave)
|
||
SetCursor(nCType)
|
||
curs_on := (nCType != 0)
|
||
@@ -924,8 +924,8 @@
|
||
"mGetVar")
|
||
|
||
/* setup a scrolling GET if it's too long to fit on the screen */
|
||
- if oGet:type == "C" .AND. LEN( oGet:varGet() ) > 78
|
||
- oGet:picture := "@S78"
|
||
+ if oGet:type == "C" .AND. LEN( oGet:varGet() ) > MaxCol() - 1
|
||
+ oGet:picture := "@S" + hb_ntos( MaxCol() - 1 )
|
||
endif
|
||
|
||
/* refresh flag */
|
||
diff -u dbu52ori/dbuhelp.prg dbu52pat/dbuhelp.prg
|
||
--- dbu52ori/dbuhelp.prg 1993-03-04 04:20:00.000000000 +0100
|
||
+++ dbu52pat/dbuhelp.prg 2012-05-02 16:29:55.000000000 +0200
|
||
@@ -113,11 +113,11 @@
|
||
FREAD(M->hhandle, @htbuf, 512)
|
||
|
||
* isolate the correct 4 byte table entry
|
||
- htbuf = SUBSTR(M->htbuf, (4 * (M->hnum - 1)) + 1, 4)
|
||
+ htbuf = HB_BSUBSTR(M->htbuf, (4 * (M->hnum - 1)) + 1, 4)
|
||
|
||
* convert binary numbers (LSB, MSB) to Clipper numerics
|
||
- hoff = ASC(M->htbuf) + (256 * ASC(SUBSTR(M->htbuf, 2)))
|
||
- hlen = ASC(SUBSTR(M->htbuf, 3)) + (256 * ASC(SUBSTR(M->htbuf, 4)))
|
||
+ hoff = HB_BPEEK(M->htbuf, 1) + (256 * HB_BPEEK(M->htbuf, 2))
|
||
+ hlen = HB_BPEEK(M->htbuf, 3) + (256 * HB_BPEEK(M->htbuf, 4))
|
||
|
||
* allocate buffer
|
||
htbuf = SPACE(M->hlen)
|
||
diff -u dbu52ori/dbuindx.prg dbu52pat/dbuindx.prg
|
||
--- dbu52ori/dbuindx.prg 1993-03-04 04:20:00.000000000 +0100
|
||
+++ dbu52pat/dbuindx.prg 2012-05-02 16:48:03.000000000 +0200
|
||
@@ -117,7 +117,7 @@
|
||
PARAMETERS sysparam
|
||
|
||
RETURN box_title(M->sysparam, "Index " +;
|
||
- SUBSTR(M->cur_dbf, RAT("\", M->cur_dbf) + 1) +;
|
||
+ SUBSTR(M->cur_dbf, RAT(hb_ps(), M->cur_dbf) + 1) +;
|
||
" to...")
|
||
|
||
|
||
@@ -240,7 +240,7 @@
|
||
INDEX ON &k_exp TO &filename
|
||
CLOSE INDEX
|
||
|
||
- IF AT(INDEXEXT(), M->filename) = LEN(M->filename) - 3 .AND.;
|
||
+ IF AT(Lower( INDEXEXT() ), Lower( M->filename )) = LEN(M->filename) - 3 .AND.;
|
||
FILE(name(M->filename) + INDEXEXT()) .AND. M->add_name
|
||
* add only .ntx files in the current directory
|
||
|
||
diff -u dbu52ori/dbunet.prg dbu52pat/dbunet.prg
|
||
--- dbu52ori/dbunet.prg 1993-03-04 04:20:00.000000000 +0100
|
||
+++ dbu52pat/dbunet.prg 2012-05-02 16:48:07.000000000 +0200
|
||
@@ -333,7 +333,7 @@
|
||
LOCAL nPos // Used to locate position of search characters in string
|
||
|
||
// Strip out the drive and path information, if any
|
||
- IF (( nPos := RAT( "\", cString )) != 0 )
|
||
+ IF (( nPos := RAT( hb_ps(), cString )) != 0 )
|
||
cString := SUBSTR( cString, ++nPos )
|
||
ENDIF
|
||
|
||
diff -u dbu52ori/dbustru.prg dbu52pat/dbustru.prg
|
||
--- dbu52ori/dbustru.prg 1993-03-04 04:20:00.000000000 +0100
|
||
+++ dbu52pat/dbustru.prg 2012-05-02 16:48:16.000000000 +0200
|
||
@@ -74,8 +74,8 @@
|
||
filename = "" && variable for "filebox" function
|
||
|
||
* sigle row templates
|
||
-empty_row = " ³ ³ ³ "
|
||
-not_empty = " ³ Character ³ 10 ³ "
|
||
+empty_row = hb_UTF8ToStr( " │ │ │ " )
|
||
+not_empty = hb_UTF8ToStr( " │ Character │ 10 │ " )
|
||
|
||
IF .NOT. EMPTY(M->cur_dbf)
|
||
* modify structure
|
||
@@ -133,11 +133,11 @@
|
||
* establish window heading
|
||
@ 9,field_col[1];
|
||
SAY "Structure of " + pad(IF(EMPTY(stru_name), "<new file>",;
|
||
- SUBSTR(stru_name, RAT("\", stru_name) + 1)), 13)
|
||
+ SUBSTR(stru_name, RAT(hb_ps(), stru_name) + 1)), 13)
|
||
|
||
@ 11,22 SAY "Field Name Type Width Dec"
|
||
-@ 12,20 SAY "ÆÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÑÍÍÍÍ͵"
|
||
-@ 23,33 SAY "ÏÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÏ"
|
||
+@ 12,20 SAY hb_UTF8ToStr( "╞â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>╤â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>╤â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>╤â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•¡" )
|
||
+@ 23,33 SAY hb_UTF8ToStr( "â•§â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•§â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•§" )
|
||
|
||
DO WHILE .NOT. q_check()
|
||
* the big switch
|
||
@@ -811,7 +811,7 @@
|
||
is_insert = .F.
|
||
filename = stru_name
|
||
|
||
- IF filebox(".DBF", "dbf_list", "stru_title",;
|
||
+ IF filebox(".dbf", "dbf_list", "stru_title",;
|
||
"do_modstru", .T., 13) <> 0
|
||
* structure created or altered
|
||
stru_name = filename
|
||
@@ -819,7 +819,7 @@
|
||
* re-write name at top of window
|
||
@ 9,field_col[1] + 13;
|
||
SAY pad(IF(EMPTY(stru_name), "<new file>",;
|
||
- SUBSTR(stru_name, RAT("\", stru_name) + 1)), 13)
|
||
+ SUBSTR(stru_name, RAT(hb_ps(), stru_name) + 1)), 13)
|
||
|
||
IF aseek(dbf, filename) = 0
|
||
* bring new file into view
|
||
@@ -904,16 +904,16 @@
|
||
PARAMETERS fill_row
|
||
|
||
@ fill_row,field_col[1];
|
||
-SAY field_name + " ³ " + data_type[AT(field_type, "CNDLM")] + " ³ "
|
||
+SAY field_name + hb_UTF8ToStr( " │ " ) + data_type[AT(field_type, "CNDLM")] + hb_UTF8ToStr( " │ " )
|
||
|
||
IF field_type = "C"
|
||
* display Clipper extended field length
|
||
@ fill_row,field_col[3] SAY STR(((256 * field_dec) + field_len), 4) +;
|
||
- " ³ "
|
||
+ hb_UTF8ToStr( " │ " )
|
||
|
||
ELSE
|
||
* normal field length
|
||
- @ fill_row,field_col[3] SAY STR(field_len, 4) + " ³ "
|
||
+ @ fill_row,field_col[3] SAY STR(field_len, 4) + hb_UTF8ToStr( " │ " )
|
||
|
||
IF field_type = "N"
|
||
* display decimals for numeric field
|
||
@@ -1215,7 +1215,7 @@
|
||
USE
|
||
|
||
* remember if file existed in current directory before
|
||
- add_name = .NOT. FILE(name(filename) + ".DBF")
|
||
+ add_name = .NOT. FILE(name(filename) + ".dbf")
|
||
|
||
IF FILE(filename)
|
||
* file exists..modify structure and save old data
|
||
@@ -1235,12 +1235,12 @@
|
||
ENDIF
|
||
|
||
* establish temp filespec and dbt specs in same directory
|
||
- name_temp = SUBSTR(filename, 1, RAT("\", filename)) +;
|
||
- "DDBBUUUU.TMP"
|
||
+ name_temp = SUBSTR(filename, 1, RAT(hb_ps(), filename)) +;
|
||
+ "ddbbuuuu.tmp"
|
||
dbt_spec = SUBSTR(filename, 1, RAT(".", filename)) +;
|
||
- "DBT"
|
||
+ "dbt"
|
||
dbt_temp = SUBSTR(name_temp, 1, RAT(".", name_temp)) +;
|
||
- "DBT"
|
||
+ "dbt"
|
||
|
||
IF FILE(dbt_spec)
|
||
* data file contains memo fields
|
||
@@ -1320,8 +1320,8 @@
|
||
CREATE &filename FROM ddbbuuuu.ext ALIAS cAlias
|
||
USE
|
||
|
||
- IF AT(".DBF", filename) = LEN(filename) - 3 .AND.;
|
||
- FILE(name(filename) + ".DBF") .AND. add_name
|
||
+ IF AT(".dbf", Lower(filename)) = LEN(filename) - 3 .AND.;
|
||
+ FILE(name(filename) + ".dbf") .AND. add_name
|
||
* add only .dbf files in the current directory
|
||
i = afull(dbf_list) + 1
|
||
|
||
diff -u dbu52ori/dbuutil.prg dbu52pat/dbuutil.prg
|
||
--- dbu52ori/dbuutil.prg 1993-03-04 04:20:00.000000000 +0100
|
||
+++ dbu52pat/dbuutil.prg 2012-05-02 16:48:24.000000000 +0200
|
||
@@ -716,9 +716,9 @@
|
||
BOX M->lframe
|
||
|
||
* format the list title
|
||
- i_title = REPLICATE("Ä", ((46 - M->l_rel - LEN(M->i_title)) / 2) - 1);
|
||
+ i_title = REPLICATE(hb_UTF8ToStr( "─" ), ((46 - M->l_rel - LEN(M->i_title)) / 2) - 1);
|
||
+ " " + M->i_title + " "
|
||
- i_title = M->i_title + REPLICATE("Ä", (46 - M->l_rel - LEN(M->i_title)))
|
||
+ i_title = M->i_title + REPLICATE(hb_UTF8ToStr( "─" ), (46 - M->l_rel - LEN(M->i_title)))
|
||
|
||
* display the list title
|
||
@ M->wt + 1, M->wl + M->l_rel - 1 SAY M->i_title
|
||
@@ -950,7 +950,7 @@
|
||
SET KEY 24 TO clear_gets
|
||
|
||
* call entry in place function
|
||
- name_temp = enter_rc(M->filename,M->irow,M->wl+9,64,"@K!S20",M->color9)
|
||
+ name_temp = enter_rc(M->filename,M->irow,M->wl+9,64,"@KS20",M->color9)
|
||
|
||
* release down arrow
|
||
SET KEY 24 TO
|
||
@@ -958,7 +958,7 @@
|
||
IF .NOT. EMPTY(M->name_temp)
|
||
* something entered
|
||
|
||
- IF .NOT. (RAT(".", M->name_temp) > RAT("\", M->name_temp))
|
||
+ IF .NOT. (RAT(".", M->name_temp) > RAT(hb_ps(), M->name_temp))
|
||
* extnesion not entered..provide default
|
||
name_temp = M->name_temp + M->def_ext
|
||
|
||
@@ -1963,7 +1963,7 @@
|
||
PRIVATE p
|
||
|
||
* isolate filename and extension from path
|
||
-p = SUBSTR(M->spec, RAT("\", M->spec) + 1)
|
||
+p = SUBSTR(M->spec, RAT(hb_ps(), M->spec) + 1)
|
||
|
||
IF "." $ M->p
|
||
* there is an extension..chop it off
|
||
@@ -2152,7 +2152,7 @@
|
||
IF FILE(M->filename)
|
||
* only if the file exists
|
||
|
||
- IF INDEXEXT() = ".NTX"
|
||
+ IF Lower( INDEXEXT() ) = ".ntx"
|
||
* Clipper index file format
|
||
k_pos = 23
|
||
|
||
@@ -2173,10 +2173,10 @@
|
||
FREAD(M->handle, @buffer, 512)
|
||
|
||
* discard all bytes before the key expression
|
||
- k = SUBSTR(M->buffer, M->k_pos)
|
||
+ k = HB_BSUBSTR(M->buffer, M->k_pos)
|
||
|
||
* the expression is terminated with a zero byte (chr(0))
|
||
- k = TRIM(SUBSTR(M->k, 1, AT(CHR(0), M->k) - 1))
|
||
+ k = TRIM(HB_BSUBSTR(M->k, 1, AT(CHR(0), M->k) - 1))
|
||
|
||
ENDIF
|
||
|
||
diff -u dbu52ori/dbuview.prg dbu52pat/dbuview.prg
|
||
--- dbu52ori/dbuview.prg 1993-03-04 04:20:00.000000000 +0100
|
||
+++ dbu52pat/dbuview.prg 2012-05-02 16:53:34.000000000 +0200
|
||
@@ -906,15 +906,15 @@
|
||
ENDIF
|
||
|
||
* the first slot is diferent than the rest
|
||
-bar_line = "ÍÍÍÍÍÍÍÍÍÍÍÍ"
|
||
+bar_line = hb_UTF8ToStr( "â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>" )
|
||
empty_line = ""
|
||
|
||
k = 1
|
||
|
||
DO WHILE M->k < M->num_slots
|
||
* each new slot separated from previous by a vertical line
|
||
- bar_line = M->bar_line + "ÑÍÍÍÍÍÍÍÍÍÍÍÍ"
|
||
- empty_line = M->empty_line + SPACE(12) + "³"
|
||
+ bar_line = M->bar_line + hb_UTF8ToStr( "╤â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>â•<C3A2>" )
|
||
+ empty_line = M->empty_line + SPACE(12) + hb_UTF8ToStr( "│" )
|
||
|
||
* next
|
||
k = M->k + 1
|
||
@@ -1102,15 +1102,15 @@
|
||
KEYBOARD CHR(M->keystroke)
|
||
|
||
* entry in place
|
||
- filename = enter_rc(dbf[M->cur_area],M->f_row,M->d_col,64,"@K!S8",;
|
||
+ filename = enter_rc(dbf[M->cur_area],M->f_row,M->d_col,64,"@KS8",;
|
||
M->color1)
|
||
|
||
IF .NOT. EMPTY(M->filename)
|
||
* something entered
|
||
|
||
- IF .NOT. (RAT(".", M->filename) > RAT("\", M->filename))
|
||
+ IF .NOT. (RAT(".", M->filename) > RAT(hb_ps(), M->filename))
|
||
* no extension entered..provide default
|
||
- filename = M->filename + ".DBF"
|
||
+ filename = M->filename + ".dbf"
|
||
|
||
ENDIF
|
||
|
||
@@ -1141,7 +1141,7 @@
|
||
|
||
ELSE
|
||
* insert or enter or menu selection..use filebox
|
||
- ret_val = filebox(".DBF", "dbf_list", "dopen_titl",;
|
||
+ ret_val = filebox(".dbf", "dbf_list", "dopen_titl",;
|
||
"do_opendbf", .F., 8) <> 0
|
||
|
||
ENDIF
|
||
@@ -1269,12 +1269,12 @@
|
||
KEYBOARD CHR(M->keystroke)
|
||
|
||
* entry in place
|
||
- filename = enter_rc(M->org_file,M->d_row,M->d_col,64,"@K!S8",M->color1)
|
||
+ filename = enter_rc(M->org_file,M->d_row,M->d_col,64,"@KS8",M->color1)
|
||
|
||
IF .NOT. EMPTY(M->filename)
|
||
* something entered
|
||
|
||
- IF .NOT. (RAT(".", M->filename) > RAT("\", M->filename))
|
||
+ IF .NOT. (RAT(".", M->filename) > RAT(hb_ps(), M->filename))
|
||
* extension not entered..provide default
|
||
filename = filename + INDEXEXT()
|
||
|
||
@@ -2120,7 +2120,7 @@
|
||
|
||
* draw line and arrow pointing to target alias
|
||
@ M->row_n,M->pos_c;
|
||
- SAY REPLICATE("Ä", column[M->j] - M->pos_c + 1) + CHR(16)
|
||
+ SAY REPLICATE(hb_UTF8ToStr( "─" ), column[M->j] - M->pos_c + 1) + CHR(16)
|
||
|
||
* display target alias as intense
|
||
SetColor(M->color12)
|
||
@@ -2225,7 +2225,7 @@
|
||
SetColor(M->cNorm)
|
||
|
||
* display an arrow (always normal color)
|
||
-?? REPLICATE("Ä", column[M->k] - COL() + 1) + CHR(16)
|
||
+?? REPLICATE(hb_UTF8ToStr( "─" ), column[M->k] - COL() + 1) + CHR(16)
|
||
|
||
* display the target alias in the specified color
|
||
SetColor(M->cSpecial)
|
||
@@ -2363,7 +2363,7 @@
|
||
|
||
* title includes filename.ext but no path
|
||
RETURN box_title(M->sysparam, "Set filter for " +;
|
||
- SUBSTR(M->cur_dbf, RAT("\", M->cur_dbf) + 1) +;
|
||
+ SUBSTR(M->cur_dbf, RAT(hb_ps(), M->cur_dbf) + 1) +;
|
||
" to...")
|
||
|
||
|
||
@@ -2790,7 +2790,7 @@
|
||
* get user entered file name..will default to primary + ".VEW"
|
||
IF EMPTY(M->view_file) .AND. .NOT. EMPTY(dbf[1])
|
||
* default to name of primary data file
|
||
- filename = name(dbf[1]) + ".VEW"
|
||
+ filename = name(dbf[1]) + ".vew"
|
||
|
||
ELSE
|
||
* whatever the last view was
|
||
@@ -2799,7 +2799,7 @@
|
||
ENDIF
|
||
|
||
* it's better in a box
|
||
-filebox(".VEW", "vew_list", "vcrea_titl", "do_creavew", .T., 8)
|
||
+filebox(".vew", "vew_list", "vcrea_titl", "do_creavew", .T., 8)
|
||
|
||
* restore help code
|
||
help_code = M->old_help
|
||
@@ -2841,7 +2841,7 @@
|
||
stat_msg("Generating View File")
|
||
|
||
* add new .VEW files to vew_list if created in current directory only
|
||
-add_name = .NOT. FILE(name(filename) + ".VEW")
|
||
+add_name = .NOT. FILE(name(filename) + ".vew")
|
||
|
||
* create structure extended template
|
||
CREATE ddbbuuuu.ext
|
||
@@ -3010,8 +3010,8 @@
|
||
USE
|
||
|
||
* add file name to array of view files
|
||
-IF AT(".VEW", filename) = LEN(filename) - 3 .AND.;
|
||
- FILE(name(filename) + ".VEW") .AND. add_name
|
||
+IF AT(".vew", Lower(filename)) = LEN(filename) - 3 .AND.;
|
||
+ FILE(name(filename) + ".vew") .AND. add_name
|
||
* add only new .VEW files in the current directory
|
||
|
||
* determine number of first empty element
|
||
@@ -3081,7 +3081,7 @@
|
||
IF M->from_view
|
||
* called from set_view
|
||
|
||
- IF filebox(".VEW", "vew_list", "vopen_titl", "do_openvew", .F., 8) <> 0
|
||
+ IF filebox(".vew", "vew_list", "vopen_titl", "do_openvew", .F., 8) <> 0
|
||
* indicate new View has been set
|
||
keystroke = 13
|
||
|