Page 1 of 1

Dialog style

PostPosted: Sun Apr 10, 2022 8:43 am
by mtajkov
This is may Pellas rc file:
Code: Select all  Expand view
// RESOURCE SCRIPT generated by "Pelles C for Windows, version 10.00".

LANGUAGE LANG_ENGLISH,SUBLANG_ENGLISH_US

1 MANIFEST "winxp.man"

EEF3 DIALOG DISCARDABLE 197, 105, 277, 127
STYLE WS_POPUP|DS_MODALFRAME|DS_CENTER|WS_CAPTION|WS_VISIBLE
CAPTION "TEST"
FONT 8, "Microsoft Sans Serif"
{
  CONTROL "", 101, "Edit", ES_UPPERCASE|WS_BORDER|WS_TABSTOP, 24, 20, 180, 12
  CONTROL "", 102, "ListBox", LBS_NOTIFY|WS_VSCROLL|WS_BORDER|WS_GROUP|WS_TABSTOP, 24, 40, 180, 82
  CONTROL "&Izlaz", 103, "Button", WS_TABSTOP, 212, 96, 56, 18
}


This is my Test.prg:

Code: Select all  Expand view
#include "fivewin.ch"

//----------------------------------------------------------------------------//

function Test()

Local cKrit,oLbx

   DEFINE DIALOG oDlg  RESOURCE "EEF3"
   
   REDEFINE GET oKrit VAR cKrit ID 101 OF oDlg

   REDEFINE LISTBOX oLbx ID 102;
            OF oDlg

   REDEFINE BUTTON ID 103 OF oDlg ;
            ACTION oDlg:end()

   ACTIVATE DIALOG oDlg

return nil
 


if I use FiveWin 12.08. and xHarbour build 1.2.1

Image
Test1

if I use FiveWin 21.11. and xHarbour 1.2.3

Image
Test2

How can I get dialogue to look like Test1 by using Fivewin 21.11 an xHarbour 1.2.3??

Best regards,
Miloš

Re: Dialog style

PostPosted: Sun Apr 10, 2022 9:58 am
by Antonio Linares
Miloš,

Please post here the "winxp.man" file that you are using

Re: Dialog style

PostPosted: Sun Apr 10, 2022 10:26 am
by mtajkov
WinXp.man:

Code: Select all  Expand view
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    version="1.0.0.0"
    processorArchitecture="X86"
    name="Your.App.Name"
    type="win32"
/>
<description>Your application description here.</description>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="X86"
            publicKeyToken="6595b64144ccf1df"
            language="*"
        />
    </dependentAssembly>
</dependency>
</assembly>

Best regards

Re: Dialog style

PostPosted: Sun Apr 10, 2022 11:23 am
by Antonio Linares
Miloš,

What Windows version are you using ?

Re: Dialog style

PostPosted: Sun Apr 10, 2022 11:29 am
by mtajkov
Antonio,

I use Microsoft Windows 10 Pro Version 10.0.19044 Build 19044

Best regards,

Re: Dialog style

PostPosted: Sun Apr 10, 2022 11:31 am
by Antonio Linares
What C compiler are you using ?

Re: Dialog style

PostPosted: Sun Apr 10, 2022 11:48 am
by mtajkov
Buildx.bat:

Code: Select all  Expand view
@ECHO OFF
CLS
ECHO ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄż
ECHO ł FiveWin for xHarbour 15.07 - Jul. 2015          xHarbour development power łÜ
ECHO ł (c) FiveTech, 1993-2015   for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7/8 łŰ
ECHO ŔÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŮŰ
ECHO ˙ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß

if A%1 == A GOTO :SINTAX
if NOT EXIST %1.prg GOTO :NOEXIST

ECHO Compiling...

if "%FWDIR%" == "" set FWDIR=c:\fwh2111
if "%XHDIR%" == "" set XHDIR=c:\xharbour
rem if "%2" == "/b" set GT=gtwin
rem if not "%2" == "/b" set GT=gtgui
set GT=gtgui

set hdir=%XHDIR%
set hdirl=%hdir%\lib
set bcdir=c:\bcc7
set fwh=c:\fwh2111

@del *.obj
@del *.c

%hdir%\bin\harbour %1 /n /i%fwh%\include;%hdir%\include /p %2 %3 > comp.log 2> warnings.log


IF ERRORLEVEL 1 GOTO COMPILEERRORS
@type comp.log
@type warnings.log

echo -O2 -e%1.exe -I%hdir%\include -I%bcdir%\include %1.c > b32.bc
%bcdir%\bin\bcc32 -M -c -v @b32.bc

:ENDCOMPILE

IF EXIST %1.rc %bcdir%\bin\brc32 -r -I%bcdir%\include %1

echo %bcdir%\lib\c0w32.obj + > b32.bc
echo %1.obj, + >> b32.bc
echo %1.exe, + >> b32.bc
echo %1.map, + >> b32.bc
echo %fwh%\lib\Fivehx.lib %fwh%\lib\FiveHC.lib + >> b32.bc
echo %hdirl%\rtl.lib + >> b32.bc
echo %hdirl%\vm.lib + >> b32.bc
echo %hdirl%\%GT%.lib + >> b32.bc
echo %hdirl%\lang.lib + >> b32.bc
echo %hdirl%\macro.lib + >> b32.bc
echo %hdirl%\rdd.lib + >> b32.bc
echo %hdirl%\dbfntx.lib + >> b32.bc
echo %hdirl%\dbfcdx.lib + >> b32.bc
echo %hdirl%\dbffpt.lib + >> b32.bc
echo %hdirl%\hbsix.lib + >> b32.bc
echo %hdirl%\debug.lib + >> b32.bc
echo %hdirl%\common.lib + >> b32.bc
echo %hdirl%\pp.lib + >> b32.bc
echo %hdirl%\pcrepos.lib + >> b32.bc
echo %hdirl%\ct.lib + >> b32.bc
echo %hdirl%\zlib.lib + >> b32.bc
echo %hdirl%\hbzip.lib + >> b32.bc
echo %hdirl%\hbzebra.lib + >> b32.bc
echo %hdirl%\libmisc.lib + >> b32.bc
echo %hdirl%\tip.lib + >> b32.bc
echo %hdirl%\png.lib + >> b32.bc

rem Uncomment these two lines to use Advantage RDD
rem echo %hdir%\lib\rddads.lib + >> b32.bc
rem echo %hdir%\lib\Ace32.lib + >> b32.bc

echo %bcdir%\lib\cw32.lib + >> b32.bc
echo %bcdir%\lib\import32.lib + >> b32.bc
echo %bcdir%\lib\uuid.lib + >> b32.bc
echo %bcdir%\lib\ws2_32.lib + >> b32.bc
echo %bcdir%\lib\psdk\odbc32.lib + >> b32.bc
echo %bcdir%\lib\psdk\rasapi32.lib + >> b32.bc
echo %bcdir%\lib\psdk\nddeapi.lib + >> b32.bc
echo %bcdir%\lib\psdk\msimg32.lib + >> b32.bc
echo %bcdir%\lib\psdk\psapi.lib + >> b32.bc
echo %bcdir%\lib\psdk\gdiplus.lib + >> b32.bc
echo %bcdir%\lib\psdk\iphlpapi.lib + >> b32.bc
echo %bcdir%\lib\psdk\shell32.lib, >> b32.bc

IF EXIST %1.res echo %1.res >> b32.bc

rem uncomment this line to use the debugger and comment the following one
if %GT% == gtwin %bcdir%\bin\ilink32 -Gn -Tpe -s -v @b32.bc
IF ERRORLEVEL 1 GOTO LINKERROR
if %GT% == gtgui %bcdir%\bin\ilink32 -Gn -aa -Tpe -s -v @b32.bc
IF ERRORLEVEL 1 GOTO LINKERROR
ECHO * Application successfully built *
%1
GOTO EXIT
ECHO

rem delete temporary files
@del %1.c

:COMPILEERRORS
@type comp.log
ECHO * Compile errors *
GOTO EXIT

:LINKERROR
ECHO * Linking errors *
GOTO EXIT

:SINTAX
ECHO    SYNTAX: Build [Program]     {-- No especifiques la extensi˘n PRG
ECHO                                {-- Don't specify .PRG extension
GOTO EXIT

:NOEXIST
ECHO The specified PRG %1 does not exist

:EXIT

Re: Dialog style

PostPosted: Sun Apr 10, 2022 11:52 am
by mtajkov
Yes, I believe that is the problem (bcc32...)?

Re: Dialog style

PostPosted: Sun Apr 10, 2022 2:32 pm
by Antonio Linares
Please try to build it using Microsoft Visual Studio Community and check if that makes a difference

Another possibility is that you are using a different common controls dll now.

Do you have the old EXE and keeps working fine ?

Re: Dialog style

PostPosted: Sun Apr 10, 2022 3:53 pm
by Detlef
I have the same issue with FWH 21.11.
My dialogs all have the look as to see by test2 of user mtajkov.
I'm searching since days to get my dialogs appearance like at test1.

Re: Dialog style

PostPosted: Sun Apr 10, 2022 3:58 pm
by mtajkov
I try Test.mak:

Code: Select all  Expand view
HBDIR=C:\xharbour
FWDIR=C:\fwh2111
VCDIR=C:\"Program Files (x86)\Microsoft Visual Studio"\2019\Community\VC\Tools\MSVC\14.29.30133\bin\Hostx86\x86
VCDIRINC="C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include"
SDKDIR="C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\um\x86"
SDKDIRINC="C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um"
RCDIR="C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86"

.SUFFIXES: .PRG .C .OBJ .RC .RES

PRG =       \
test.prg  
#place here as many PRGs as needed

OBJ=$(PRG:.PRG=.OBJ)
OBJS=$(OBJ:.\=.\obj\)

PROJECT: test.exe

test.exe : $(OBJS) test.res
   echo $(OBJS) > msvc.tmp
   echo $(FWDIR)\lib\FiveH32.lib $(FWDIR)\lib\FiveHC32.lib >> msvc.tmp
   echo $(HBDIR)\lib\hbrtl.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbvm.lib  >> msvc.tmp
   echo $(HBDIR)\lib\gtgui.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hblang.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbmacro.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbrdd.lib  >> msvc.tmp
   echo $(HBDIR)\lib\rddntx.lib  >> msvc.tmp
   echo $(HBDIR)\lib\rddcdx.lib  >> msvc.tmp
   echo $(HBDIR)\lib\rddfpt.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbsix.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbdebug.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbcommon.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbpp.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbcpage.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbwin.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbcplr.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbpcre.lib >> msvc.tmp
   echo $(HBDIR)\lib\hbct.lib  >> msvc.tmp
   echo $(HBDIR)\lib\xhb.lib  >> msvc.tmp
   echo $(HBDIR)\lib\png.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbzlib.lib  >> msvc.tmp
   echo $(HBDIR)\lib\hbziparc.lib >> msvc.tmp
   echo $(HBDIR)\lib\hbmzip.lib >> msvc.tmp
   echo $(HBDIR)\lib\minizip.lib >> msvc.tmp
   echo $(HBDIR)\lib\hbtip.lib >> msvc.tmp
   echo $(HBDIR)\lib\hbzebra.lib >> msvc.tmp

   echo $(SDKDIR)\kernel32.lib  >> msvc.tmp
   echo $(SDKDIR)\user32.lib    >> msvc.tmp
   echo $(SDKDIR)\gdi32.lib     >> msvc.tmp
   echo $(SDKDIR)\winspool.lib  >> msvc.tmp
   echo $(SDKDIR)\comctl32.lib  >> msvc.tmp
   echo $(SDKDIR)\comdlg32.lib  >> msvc.tmp
   echo $(SDKDIR)\advapi32.lib  >> msvc.tmp
   echo $(SDKDIR)\shell32.lib   >> msvc.tmp
   echo $(SDKDIR)\ole32.lib     >> msvc.tmp
   echo $(SDKDIR)\oleaut32.lib  >> msvc.tmp
   echo $(SDKDIR)\uuid.lib      >> msvc.tmp
   echo $(SDKDIR)\odbc32.lib    >> msvc.tmp
   echo $(SDKDIR)\odbccp32.lib  >> msvc.tmp
   echo $(SDKDIR)\iphlpapi.lib  >> msvc.tmp
   echo $(SDKDIR)\mpr.lib       >> msvc.tmp
   echo $(SDKDIR)\version.lib   >> msvc.tmp
   echo $(SDKDIR)\wsock32.lib   >> msvc.tmp
   echo $(SDKDIR)\msimg32.lib   >> msvc.tmp
   echo $(SDKDIR)\oledlg.lib    >> msvc.tmp
   echo $(SDKDIR)\psapi.lib     >> msvc.tmp
   echo $(SDKDIR)\gdiplus.lib   >> msvc.tmp
   echo $(SDKDIR)\winmm.lib     >> msvc.tmp

   IF EXIST test.res echo test.res >> msvc.tmp

   $(VCDIR)\link @msvc.tmp /out:test.exe /nologo /subsystem:windows /force:multiple /NODEFAULTLIB:msvcrt > link.log
   @type link.log

test.res : test.rc
   $(RCDIR)\rc.exe -r -d__FLAT__ test.rc

.PRG.OBJ:
  $(HBDIR)\bin\harbour $< /n /w /Oobj\ /i$(FWDIR)\include;$(HBDIR)\include
  $(VCDIR)\cl.exe -TP -W3 -c /GS- /I$(HBDIR)\include /GA -Foobj\ obj\*.c
 

 


and go.bat:

Code: Select all  Expand view
call "%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x86
c:\harbour\bin\hbmk2 test
test.exe


but I have a new problem:
Image

Best regards

Re: Dialog style

PostPosted: Sun Apr 10, 2022 7:41 pm
by mtajkov
This is the solution

Test.rc:

Code: Select all  Expand view
// RESOURCE SCRIPT generated by "Pelles C for Windows, version 10.00".

LANGUAGE LANG_ENGLISH,SUBLANG_ENGLISH_US

#ifdef __FLAT__
   1 24 "WindowsXP.Manifest"
#endif

#ifdef __64__
   1 24 "WinXP/WindowsXP.Manifest64"
#endif

EEF3 DIALOG DISCARDABLE 197, 105, 277, 127
STYLE WS_POPUP|DS_MODALFRAME|DS_CENTER|WS_CAPTION|WS_VISIBLE
CAPTION "TEST"
FONT 8, "Microsoft Sans Serif"
{
  CONTROL "", 101, "Edit", ES_UPPERCASE|WS_BORDER|WS_TABSTOP, 24, 20, 180, 12
  CONTROL "", 102, "ListBox", LBS_NOTIFY|WS_VSCROLL|WS_BORDER|WS_GROUP|WS_TABSTOP, 24, 40, 180, 82
  CONTROL "&Izlaz", 103, "Button", WS_TABSTOP, 212, 96, 56, 18
}
 


Best regards

Re: Dialog style

PostPosted: Sun Apr 10, 2022 9:15 pm
by Detlef
Hi mtajkov,

many thanks for finding out your solution.
Now it'working for me.

Pelles rc-editor doesn't like the use of "1 24 WindowsXp.Manifest".
It makes always "1 Manifest "WindowsXp.Manifest" and the flat look is spoiled.
After saving the rc file with Pelles C I have to correct the rc file by hand,
write "1 24 WindowsXp.Manifest" to I get my flat look.

Thanks again for your solution :D

Re: Dialog style

PostPosted: Thu Apr 14, 2022 10:22 am
by Silvio.Falconi
Antonio,
I saw one prg made with Visual C++ and it have the window and the dialog different when it are used on Windows 10
I mean the Blue color on caption

Image

Image

Can it be done with Fwh?