2025-07-19 19:44 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* contrib/hbhpdf/core.c
+ HPDF_GetPageByIndex( hDoc, nIndex ) --> hPage / NIL
suggested by Luigi Ferraris
* contrib/hbhpdf/tests/harupdf.prg
+ test the above (disabled by default)
* README.md
* updated CI badge(s) to GitHub Actions - they also cover
the strict compilation mode, definitions are currently
located in the same file as normal
! cleaned up links, mostly in tools section, some were
broken, for others switched to https where applicable
* mention HB_CCPREFIX= support for clang
* contrib/hbdoc/hbdoc.prg
* contrib/hbformat/utils/hbformat.prg
* contrib/hbnetio/utils/hbnetio/hbnetio.prg
* package/harbour.mft
* package/harbour.rc
* src/compiler/hbusage.c
* utils/hbi18n/hbi18n.prg
* utils/hbtest/hbtest.prg
* bumped copyright year to 2025
This commit is contained in:
@@ -7,6 +7,34 @@
|
|||||||
Entries may not always be in chronological/commit order.
|
Entries may not always be in chronological/commit order.
|
||||||
See license at the end of file. */
|
See license at the end of file. */
|
||||||
|
|
||||||
|
2025-07-19 19:44 UTC+0200 Aleksander Czajczynski (hb fki.pl)
|
||||||
|
* contrib/hbhpdf/core.c
|
||||||
|
+ HPDF_GetPageByIndex( hDoc, nIndex ) --> hPage / NIL
|
||||||
|
suggested by Luigi Ferraris
|
||||||
|
|
||||||
|
* contrib/hbhpdf/tests/harupdf.prg
|
||||||
|
+ test the above (disabled by default)
|
||||||
|
|
||||||
|
* README.md
|
||||||
|
* updated CI badge(s) to GitHub Actions - they also cover
|
||||||
|
the strict compilation mode, definitions are currently
|
||||||
|
located in the same file as normal
|
||||||
|
|
||||||
|
! cleaned up links, mostly in tools section, some were
|
||||||
|
broken, for others switched to https where applicable
|
||||||
|
|
||||||
|
* mention HB_CCPREFIX= support for clang
|
||||||
|
|
||||||
|
* contrib/hbdoc/hbdoc.prg
|
||||||
|
* contrib/hbformat/utils/hbformat.prg
|
||||||
|
* contrib/hbnetio/utils/hbnetio/hbnetio.prg
|
||||||
|
* package/harbour.mft
|
||||||
|
* package/harbour.rc
|
||||||
|
* src/compiler/hbusage.c
|
||||||
|
* utils/hbi18n/hbi18n.prg
|
||||||
|
* utils/hbtest/hbtest.prg
|
||||||
|
* bumped copyright year to 2025
|
||||||
|
|
||||||
2025-07-10 14:04 UTC+0200 Aleksander Czajczynski (hb fki.pl)
|
2025-07-10 14:04 UTC+0200 Aleksander Czajczynski (hb fki.pl)
|
||||||
* contrib/hbpost.hbm
|
* contrib/hbpost.hbm
|
||||||
! fix missing contrib/*/tests/files when using "make install"
|
! fix missing contrib/*/tests/files when using "make install"
|
||||||
|
|||||||
38
README.md
38
README.md
@@ -1,4 +1,4 @@
|
|||||||
# Welcome to Harbour [](https://travis-ci.org/harbour/core)
|
# Welcome to Harbour [](https://github.com/harbour/core/actions/workflows/linux-ci.yml) [](https://github.com/harbour/core/actions/workflows/windows-ci.yml) [](https://github.com/harbour/core/actions/workflows/macos-ci.yml) [](https://github.com/harbour/core/actions/workflows/vm1-ci.yml) [](https://github.com/harbour/core/actions/workflows/vm2-ci.yml)
|
||||||
|
|
||||||
Harbour is the free software implementation of a multi-platform,
|
Harbour is the free software implementation of a multi-platform,
|
||||||
multi-threading, object-oriented, scriptable programming language,
|
multi-threading, object-oriented, scriptable programming language,
|
||||||
@@ -834,7 +834,7 @@ sensitive.
|
|||||||
|
|
||||||
- `HB_CCPREFIX=[<prefix>]`
|
- `HB_CCPREFIX=[<prefix>]`
|
||||||
|
|
||||||
Used with gcc compiler family to specify
|
Used with gcc or clang compiler family to specify
|
||||||
compiler/linker/archive tool name prefix.
|
compiler/linker/archive tool name prefix.
|
||||||
|
|
||||||
- `HB_CCSUFFIX=[<suffix>]`
|
- `HB_CCSUFFIX=[<suffix>]`
|
||||||
@@ -1895,7 +1895,7 @@ Supported shells per host platforms:
|
|||||||
* Search for `w95ws2setup.exe`
|
* Search for `w95ws2setup.exe`
|
||||||
(required for Win95 support to run applications built with Harbour)
|
(required for Win95 support to run applications built with Harbour)
|
||||||
* Windows UNICOWS .dll [win, free, closed-source]
|
* Windows UNICOWS .dll [win, free, closed-source]
|
||||||
* <https://go.microsoft.com/fwlink/?LinkId=14851>
|
* (via web.archive.org)[https://web.archive.org/web/20130305122340/http://download.microsoft.com/download/b/7/5/b75eace3-00e2-4aa0-9a6f-0b6882c71642/unicows.exe]
|
||||||
(required for Win9x/ME support to run applications built with Harbour in UNICODE mode)
|
(required for Win9x/ME support to run applications built with Harbour in UNICODE mode)
|
||||||
* Windows UNICOWS runtime/import library [win, free, open-source]
|
* Windows UNICOWS runtime/import library [win, free, open-source]
|
||||||
* <http://libunicows.sourceforge.net/>
|
* <http://libunicows.sourceforge.net/>
|
||||||
@@ -1904,34 +1904,32 @@ Supported shells per host platforms:
|
|||||||
* Tools:
|
* Tools:
|
||||||
|
|
||||||
* Git (1.7 or upper) [multiplatform, free, open-source]
|
* Git (1.7 or upper) [multiplatform, free, open-source]
|
||||||
* <http://git-scm.com/>
|
* <https://git-scm.com/>
|
||||||
* <https://code.google.com/p/msysgit/downloads/list?q=full+installer+official+git> (Windows binaries)
|
* GitHub Desktop Client [multiplatform, free]
|
||||||
* GitHub Client [multiplatform, free]
|
* <https://github.com/apps/desktop>
|
||||||
* <http://windows.github.com/>
|
|
||||||
* <http://mac.github.com/>
|
|
||||||
* GNU Bison (grammer paser generator) [multiplatform, free, open-source]
|
* GNU Bison (grammer paser generator) [multiplatform, free, open-source]
|
||||||
* Windows binary:
|
* Windows binary:
|
||||||
* <http://gnuwin32.sourceforge.net/packages/bison.htm>
|
* <https://gnuwin32.sourceforge.net/packages/bison.htm>
|
||||||
(not verified with current Harbour version)
|
(not verified with current Harbour version)
|
||||||
* Valgrind (dynamic executable analysis tool) [linux, darwin-x86, free, open-source]
|
* Valgrind (dynamic executable analysis tool) [linux, darwin-x86, free, open-source]
|
||||||
* <http://valgrind.org/>
|
* <https://valgrind.org/>
|
||||||
* ack (programmer grep) [multiplatform, free, open-source]
|
* ack (programmer grep) [multiplatform, free, open-source]
|
||||||
* <http://beyondgrep.com/>
|
* <https://beyondgrep.com/>
|
||||||
* Uncrustify (source formatter) [multiplatform, free, open-source]
|
* Uncrustify (source formatter) [multiplatform, free, open-source]
|
||||||
* <http://uncrustify.sourceforge.net/>
|
* <https://uncrustify.sourceforge.net/>
|
||||||
* UPX (executable compressor) [win, dos, *nix, free, open-source]
|
* UPX (executable compressor) [win, dos, *nix, free, open-source]
|
||||||
* <http://upx.sourceforge.net/>
|
* <https://upx.sourceforge.net/>
|
||||||
* Nullsoft Installer [win, free, open-source]
|
* Nullsoft Installer [win, free, open-source]
|
||||||
* <http://nsis.sourceforge.net/>
|
* <https://nsis.sourceforge.net/>
|
||||||
* 7-Zip [multiplatform, free, open-source]
|
* 7-Zip [multiplatform, free, open-source]
|
||||||
* <http://www.7-zip.org/>
|
* <https://www.7-zip.org/>
|
||||||
* Info-ZIP [multiplatform, free, open-source]
|
* Info-ZIP [multiplatform, free, open-source]
|
||||||
* <http://www.info-zip.org/>
|
* <http://www.info-zip.org/>
|
||||||
* bzip2 [multiplatform, free, open-source]
|
* bzip2 [multiplatform, free, open-source]
|
||||||
Windows binary:
|
Windows binary:
|
||||||
* <http://www.bzip.org/downloads.html>
|
* <https://gnuwin32.sourceforge.net/packages/bzip2.htm>
|
||||||
* Chocolatey (Windows package manager) [free, open-source]
|
* Chocolatey (Windows package manager) [free, open-source]
|
||||||
* <http://chocolatey.org/>
|
* <https://chocolatey.org/>
|
||||||
* GNU Make
|
* GNU Make
|
||||||
|
|
||||||
Windows binary + source:
|
Windows binary + source:
|
||||||
@@ -1977,8 +1975,8 @@ Supported shells per host platforms:
|
|||||||
|
|
||||||
* [Netiquette Guidelines](http://tools.ietf.org/html/rfc1855)
|
* [Netiquette Guidelines](http://tools.ietf.org/html/rfc1855)
|
||||||
* [Setting up Git](https://help.github.com/articles/set-up-git)
|
* [Setting up Git](https://help.github.com/articles/set-up-git)
|
||||||
* [Git book](http://git-scm.com/book) [free]
|
* [Git book](https://git-scm.com/book/en/v2) [free]
|
||||||
* [Git crash course for Subversion users](http://git.or.cz/course/svn.html)
|
* [Git crash course for Subversion users](https://web.archive.org/web/20220520212103/http://git.or.cz/course/svn.html)
|
||||||
* Using gettext (.po files)
|
* Using gettext (.po files)
|
||||||
* <http://help.transifex.com/features/formats.html#po-files>
|
* <http://help.transifex.com/features/formats.html#po-files>
|
||||||
* <http://www.heiner-eichmann.de/autotools/using_gettext.html>
|
* <http://www.heiner-eichmann.de/autotools/using_gettext.html>
|
||||||
@@ -1998,7 +1996,7 @@ Supported shells per host platforms:
|
|||||||
* [ChangeLog](ChangeLog.txt?raw=true)
|
* [ChangeLog](ChangeLog.txt?raw=true)
|
||||||
* Comparing [Harbour to xHarbour](doc/xhb-diff.txt?raw=true)
|
* Comparing [Harbour to xHarbour](doc/xhb-diff.txt?raw=true)
|
||||||
* CA-Cl*pper 5.3 [online documentation](http://x-hacker.org/ng/53guide/)
|
* CA-Cl*pper 5.3 [online documentation](http://x-hacker.org/ng/53guide/)
|
||||||
* Harbour [online documentation](http://harbour.github.io/doc/)
|
* Harbour [online documentation](https://harbour.github.io/doc/)
|
||||||
* Harbour [internal documents](doc/)
|
* Harbour [internal documents](doc/)
|
||||||
* [Wikipedia](https://en.wikipedia.org/wiki/Harbour_compiler)
|
* [Wikipedia](https://en.wikipedia.org/wiki/Harbour_compiler)
|
||||||
|
|
||||||
|
|||||||
@@ -768,7 +768,7 @@ STATIC PROCEDURE ShowHelp( cExtraMessage, aArgs )
|
|||||||
aHelp := { ;
|
aHelp := { ;
|
||||||
cExtraMessage, ;
|
cExtraMessage, ;
|
||||||
"Harbour Document Compiler (hbdoc) " + HBRawVersion(), ;
|
"Harbour Document Compiler (hbdoc) " + HBRawVersion(), ;
|
||||||
"Copyright (c) 1999-2024, " + hb_Version( HB_VERSION_URL_BASE ), ;
|
"Copyright (c) 1999-2025, " + hb_Version( HB_VERSION_URL_BASE ), ;
|
||||||
"", ;
|
"", ;
|
||||||
"Syntax:", ;
|
"Syntax:", ;
|
||||||
"", ;
|
"", ;
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ STATIC PROCEDURE About()
|
|||||||
OutStd( ;
|
OutStd( ;
|
||||||
"Harbour Source Formatter " + HBRawVersion() + hb_eol() + ;
|
"Harbour Source Formatter " + HBRawVersion() + hb_eol() + ;
|
||||||
"Copyright (c) 2010-" + ;
|
"Copyright (c) 2010-" + ;
|
||||||
"2024" + ", " + ;
|
"2025" + ", " + ;
|
||||||
hb_Version( HB_VERSION_URL_BASE ) + hb_eol() + ;
|
hb_Version( HB_VERSION_URL_BASE ) + hb_eol() + ;
|
||||||
"Copyright (c) 2009, Alexander S.Kresin" + hb_eol() + ;
|
"Copyright (c) 2009, Alexander S.Kresin" + hb_eol() + ;
|
||||||
hb_eol() )
|
hb_eol() )
|
||||||
|
|||||||
@@ -254,6 +254,14 @@ HB_FUNC( HPDF_GETCURRENTPAGE )
|
|||||||
hb_retptr( ( void * ) HPDF_GetCurrentPage( hb_HPDF_Doc_par( 1 ) ) );
|
hb_retptr( ( void * ) HPDF_GetCurrentPage( hb_HPDF_Doc_par( 1 ) ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* HPDF_GetPageByIndex( hDoc, nIndex ) --> hPage / NIL */
|
||||||
|
HB_FUNC( HPDF_GETPAGEBYINDEX )
|
||||||
|
{
|
||||||
|
void * pPage = ( void * ) HPDF_GetPageByIndex( hb_HPDF_Doc_par( 1 ), ( HPDF_UINT ) hb_parni( 2 ) );
|
||||||
|
if( pPage )
|
||||||
|
hb_retptr( pPage );
|
||||||
|
}
|
||||||
|
|
||||||
/* HPDF_AddPage( hDoc ) --> hPage */
|
/* HPDF_AddPage( hDoc ) --> hPage */
|
||||||
HB_FUNC( HPDF_ADDPAGE )
|
HB_FUNC( HPDF_ADDPAGE )
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -76,6 +76,7 @@ DYNAMIC HPDF_GetError
|
|||||||
DYNAMIC HPDF_GetErrorDetail
|
DYNAMIC HPDF_GetErrorDetail
|
||||||
DYNAMIC HPDF_GetFont
|
DYNAMIC HPDF_GetFont
|
||||||
DYNAMIC HPDF_GetInfoAttr
|
DYNAMIC HPDF_GetInfoAttr
|
||||||
|
DYNAMIC HPDF_GetPageByIndex
|
||||||
DYNAMIC HPDF_GetPageLayout
|
DYNAMIC HPDF_GetPageLayout
|
||||||
DYNAMIC HPDF_GetPageMode
|
DYNAMIC HPDF_GetPageMode
|
||||||
DYNAMIC HPDF_GetStreamSize
|
DYNAMIC HPDF_GetStreamSize
|
||||||
|
|||||||
@@ -63,7 +63,6 @@ PROCEDURE Main( cFileToSave )
|
|||||||
RETURN
|
RETURN
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
||||||
FUNCTION DesignHaruPDF( cFileToSave )
|
FUNCTION DesignHaruPDF( cFileToSave )
|
||||||
|
|
||||||
LOCAL i, page, height, width, def_font, tw, samp_text, font
|
LOCAL i, page, height, width, def_font, tw, samp_text, font
|
||||||
@@ -103,6 +102,7 @@ FUNCTION DesignHaruPDF( cFileToSave )
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
page := HPDF_AddPage( pdf )
|
page := HPDF_AddPage( pdf )
|
||||||
|
|
||||||
height := HPDF_Page_GetHeight( page )
|
height := HPDF_Page_GetHeight( page )
|
||||||
width := HPDF_Page_GetWidth( page )
|
width := HPDF_Page_GetWidth( page )
|
||||||
|
|
||||||
@@ -165,6 +165,11 @@ FUNCTION DesignHaruPDF( cFileToSave )
|
|||||||
? "0x" + hb_NumToHex( HPDF_GetError( pdf ), 4 ), hb_HPDF_GetErrorString( HPDF_GetError( pdf ) ), HPDF_GetErrorDetail( pdf )
|
? "0x" + hb_NumToHex( HPDF_GetError( pdf ), 4 ), hb_HPDF_GetErrorString( HPDF_GetError( pdf ) ), HPDF_GetErrorDetail( pdf )
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
/* you should really count the pages while creating them */
|
||||||
|
? "pdf page count:", lazy_pagecount( pdf )
|
||||||
|
#endif
|
||||||
|
|
||||||
HPDF_Free( pdf )
|
HPDF_Free( pdf )
|
||||||
|
|
||||||
RETURN hb_FileExists( cFileToSave )
|
RETURN hb_FileExists( cFileToSave )
|
||||||
@@ -1416,3 +1421,18 @@ STATIC PROCEDURE show_description_1( page, x, y, text )
|
|||||||
HPDF_Page_EndText( page )
|
HPDF_Page_EndText( page )
|
||||||
|
|
||||||
RETURN
|
RETURN
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
STATIC FUNCTION lazy_pagecount( pdf )
|
||||||
|
|
||||||
|
LOCAL page_count := 0
|
||||||
|
|
||||||
|
DO WHILE hb_isPointer( HPDF_GetPageByIndex( pdf, page_count ) )
|
||||||
|
page_count++
|
||||||
|
ENDDO
|
||||||
|
|
||||||
|
/* getting page out of index bounds raises an error */
|
||||||
|
HPDF_ResetError( pdf )
|
||||||
|
|
||||||
|
RETURN page_count
|
||||||
|
#endif
|
||||||
|
|||||||
@@ -836,7 +836,7 @@ STATIC PROCEDURE HB_Logo()
|
|||||||
OutStd( ;
|
OutStd( ;
|
||||||
"Harbour NETIO Server " + StrTran( Version(), "Harbour " ) + hb_eol() + ;
|
"Harbour NETIO Server " + StrTran( Version(), "Harbour " ) + hb_eol() + ;
|
||||||
"Copyright (c) 2009-" + ;
|
"Copyright (c) 2009-" + ;
|
||||||
"2020" + ", " + ;
|
"2025" + ", " + ;
|
||||||
"Przemyslaw Czerpak, Viktor Szakats" + hb_eol() + ;
|
"Przemyslaw Czerpak, Viktor Szakats" + hb_eol() + ;
|
||||||
hb_Version( HB_VERSION_URL_BASE ) + hb_eol() + ;
|
hb_Version( HB_VERSION_URL_BASE ) + hb_eol() + ;
|
||||||
hb_eol() )
|
hb_eol() )
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
<!-- Copyright © 1999-2024 (see application banner) -->
|
<!-- Copyright © 1999-2025 (see application banner) -->
|
||||||
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
|
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
|
||||||
<assemblyIdentity
|
<assemblyIdentity
|
||||||
version="3.2.0.0"
|
version="3.2.0.0"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
#define HB_VER_FILEVERSION_STR HB_VER_PRODUCTVERSION_STR
|
#define HB_VER_FILEVERSION_STR HB_VER_PRODUCTVERSION_STR
|
||||||
|
|
||||||
#define HB_NAME "Harbour\0"
|
#define HB_NAME "Harbour\0"
|
||||||
#define HB_COPYRIGHT "Copyright \xA9 1999-2024 (see application banner)\0"
|
#define HB_COPYRIGHT "Copyright \xA9 1999-2025 (see application banner)\0"
|
||||||
|
|
||||||
/* Version info */
|
/* Version info */
|
||||||
|
|
||||||
|
|||||||
@@ -261,7 +261,7 @@ void hb_compPrintLogo( HB_COMP_DECL )
|
|||||||
{
|
{
|
||||||
char * szVer = hb_verHarbour();
|
char * szVer = hb_verHarbour();
|
||||||
|
|
||||||
#define HB_VER_COMMIT_YEAR "2024"
|
#define HB_VER_COMMIT_YEAR "2025"
|
||||||
#define HB_VER_ORIGIN_URL "https://harbour.github.io/"
|
#define HB_VER_ORIGIN_URL "https://harbour.github.io/"
|
||||||
|
|
||||||
hb_compOutStd( HB_COMP_PARAM, szVer );
|
hb_compOutStd( HB_COMP_PARAM, szVer );
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ STATIC PROCEDURE Logo()
|
|||||||
OutStd( ;
|
OutStd( ;
|
||||||
"Harbour i18n .pot/.hbl file manager " + HBRawVersion() + hb_eol() + ;
|
"Harbour i18n .pot/.hbl file manager " + HBRawVersion() + hb_eol() + ;
|
||||||
"Copyright (c) 2009-" + ;
|
"Copyright (c) 2009-" + ;
|
||||||
"2024" + ", " + ;
|
"2025" + ", " + ;
|
||||||
"Przemyslaw Czerpak" + hb_eol() + ;
|
"Przemyslaw Czerpak" + hb_eol() + ;
|
||||||
hb_Version( HB_VERSION_URL_BASE ) + hb_eol() + ;
|
hb_Version( HB_VERSION_URL_BASE ) + hb_eol() + ;
|
||||||
hb_eol() )
|
hb_eol() )
|
||||||
|
|||||||
@@ -95,7 +95,7 @@ STATIC s_lDBFAvail := .F.
|
|||||||
ANNOUNCE HB_GTSYS
|
ANNOUNCE HB_GTSYS
|
||||||
REQUEST HB_GT_CGI_DEFAULT
|
REQUEST HB_GT_CGI_DEFAULT
|
||||||
|
|
||||||
#define COPYRIGHT_YEAR "2024"
|
#define COPYRIGHT_YEAR "2025"
|
||||||
#else
|
#else
|
||||||
#define COPYRIGHT_YEAR "present"
|
#define COPYRIGHT_YEAR "present"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user