![]() - General In order to resolve this, keyboard input process was changed similar to WinForms. A part of role of FormMessageFilter class was moved to each control's wndProc(), because TextBox class is must to know that parent form has default button and not. And also remove to hack of ControlStyles enum. - Others Add TextBox example code. Separate TextBoxBase class from textbox.d to textboxbase.d file. Separate SharedControl class from control.d to sharedcontrol.d file. Fix some old alias sytax. Add vscode workspace file. |
||
---|---|---|
examples | ||
lib | ||
source/dfl | ||
.gitignore | ||
_cmd.bat | ||
dfl.code-workspace | ||
dub.json | ||
go.bat | ||
go32omf.bat.lnk | ||
go64.bat.lnk | ||
lgpl.txt | ||
license.txt | ||
makecoff.bat | ||
makelib.bat | ||
makelibtango.bat | ||
README.md | ||
zlib.txt |
DFL
This unofficial project is a migration of D Forms Library (DFL) that is managed on SVN. DFL is a Win32 windowing library for the D language.
Recent major features
- DUB is available for DFL.
- Remove dflexe.
- Remove GTK-based DFL.
- Remove some bundled libraries such as user32_dfl.lib etc... (From now on, use dmd-bundled libraries such as the MinGW platform library and so on.)
Build and Install (dfl.lib and dfl_debug.lib)
1. Set environment variables
Fix the paths below:
set dmd_path=c:\d\dmd2\windows
set dmc_path=c:\dmc\dm
2. Install the undeaD library
DFL is required the undeaD library (undead.lib). Download a ZIP file from https://github.com/dlang/undead. Extract undeaD-master.zip and run the below with either option -a=x86_omf, x86_32mscoff or x86_64:
> cd undeaD-master
> dub build -a=x86_omf
Starting Performing "debug" build using C:\D\dmd2\windows\bin\dmd.exe for x86, x86_omf.
Up-to-date undead ~master: target for configuration [library] is up to date.
> dir bin /b
undead.lib
Copy the undead.lib to your/lib/dir.
3. Make dfl.lib and dfl_debug.lib
Run makelib.bat:
> cd dfl/win32/dfl
> makelib.bat 32omf # 32-bit omf
or (MSVC required)
> makelib.bat # 32-bit mscoff
or (MSVC required)
> makelib.bat 32mscoff # ditto
or (MSVC required)
> makelib.bat 64 # 64-bit mscoff
Also copy dfl.lib and dfl_debug.lib to your/lib/dir.
IMPORTANT: Both library files are containing the undead.lib and WINSDK libraries such as user32.lib, gdi32.lib and so on.
In order to make and move *.lib to paths below:
- go32omf.bat : Make and move *.lib to %dmd_path%\lib
- go.bat (MSVC required) : Make and move *.lib to %dmd_path%\lib32mscoff
- go.bat 32mscoff (MSVC required) : ditto
- go64.bat (MSVC required) : Make and move *.lib to %dmd_path%\lib64
With DUB
First, add DFL to local DUB registry:
> cd dfl
> dub add-local .
> dub list
Packages present in the system and known to dub:
dfl ~master: c:\your\path\dfl\
Build and run your GUI applications with DUB as below:
> cd examples\hello_dfl
> dub build -a=x86_omf
> dub run
See also ./examples/hello_dfl/dub.json.
IMPORTANT: DUB is building dfl_dub.lib that is not containing undead.lib and WINSDK libraries.
License
boost and/or zlib/libpng