March 26, 2015
On Thursday, 26 March 2015 at 11:41:17 UTC, Mike James wrote:
> On Tuesday, 20 May 2014 at 18:13:36 UTC, Vadim Lopatin wrote:
>> Hello!
>>
>> I would like to announce my project, DlangUI library -
> <SNIP>
>
> Hi Vadim,
>
> I have just installed the latest D 2.067.0, ran the git install and the build now fails. The errors are as follows:
>
>
> C:\D\dmd2\gui\dlangui>dub run dlangui:example1 --build=release
> Building package dlangui:example1 in C:\D\dmd2\gui\dlangui\examples\example1\
> Target gl3n 1.0.1 is up to date. Use --force to rebuild.
> Building dlib ~master configuration "library", build type release.
> Running dmd...
> ..\..\..\..\Users\mikej\AppData\Roaming\dub\packages\dlib-master\dlib\image\io\jpeg.d(681): Warning: instead of C-style
> syntax, use D-style syntax 'ubyte[64] dezigzag'
> ..\..\..\..\Users\mikej\AppData\Roaming\dub\packages\dlib-master\dlib\filesystem\windows\directory.d(77): Error: undefin
> ed identifier wcslen
> FAIL ..\..\..\..\Users\mikej\AppData\Roaming\dub\packages\dlib-master\.dub\build\library-release-windows-x86-dmd_2067-17
> 3DBA1310DF90D85EA81F6AA09FBD95\ dlib staticLibrary
> Error executing command run: dmd failed with exit code 1.
>
>
> C:\D\dmd2\gui\dlangui>
>
> any clues?
>
> Thanks.
>
> Regards, Mike.

Try `dub upgrade --force-remove` followed by `dub build --force`
March 26, 2015
On Thursday, 26 March 2015 at 11:47:59 UTC, Vadim Lopatin wrote:
> On Thursday, 26 March 2015 at 11:41:17 UTC, Mike James wrote:
>> On Tuesday, 20 May 2014 at 18:13:36 UTC, Vadim Lopatin wrote:
>>> Hello!
>>>
>>> I would like to announce my project, DlangUI library -
>> <SNIP>
>>
>> Hi Vadim,
>>
>> I have just installed the latest D 2.067.0, ran the git install and the build now fails. The errors are as follows:
>>
>>
>> C:\D\dmd2\gui\dlangui>dub run dlangui:example1 --build=release
>> Building package dlangui:example1 in C:\D\dmd2\gui\dlangui\examples\example1\
>> Target gl3n 1.0.1 is up to date. Use --force to rebuild.
>> Building dlib ~master configuration "library", build type release.
>> Running dmd...
>> ..\..\..\..\Users\mikej\AppData\Roaming\dub\packages\dlib-master\dlib\image\io\jpeg.d(681): Warning: instead of C-style
>> syntax, use D-style syntax 'ubyte[64] dezigzag'
>> ..\..\..\..\Users\mikej\AppData\Roaming\dub\packages\dlib-master\dlib\filesystem\windows\directory.d(77): Error: undefin
>> ed identifier wcslen
>> FAIL ..\..\..\..\Users\mikej\AppData\Roaming\dub\packages\dlib-master\.dub\build\library-release-windows-x86-dmd_2067-17
>> 3DBA1310DF90D85EA81F6AA09FBD95\ dlib staticLibrary
>> Error executing command run: dmd failed with exit code 1.
>>
>>
>> C:\D\dmd2\gui\dlangui>
>>
>> any clues?
>>
>> Thanks.
>>
>> Regards, Mike.
>
> Try `dub upgrade --force-remove` followed by `dub build --force`

Thanks Vadim, That did the trick.

regards, -=mike=-
March 26, 2015
On Thursday, 26 March 2015 at 11:47:59 UTC, Vadim Lopatin wrote:

> Try `dub upgrade --force-remove` followed by `dub build --force`

For the love of God, please put this on the github page under troubleshooting. It happens quite a lot.

March 27, 2015
On Thursday, 26 March 2015 at 13:48:20 UTC, Chris wrote:
> On Thursday, 26 March 2015 at 11:47:59 UTC, Vadim Lopatin wrote:
>
>> Try `dub upgrade --force-remove` followed by `dub build --force`
>
> For the love of God, please put this on the github page under troubleshooting. It happens quite a lot.

Ok. Added following notice to README (you can see it on project main page on GitHub)

Important notice
================

If build of your app is failed due to dlangui or its dependencies, probably you have not upgraded dependencies.

Try following:

	dub upgrade --force-remove
	dub build --force

As well, sometimes removing of dub.json.selections can help.


April 10, 2015
On Wednesday, 25 February 2015 at 13:47:04 UTC, Dicebot wrote:
> On Wednesday, 25 February 2015 at 08:08:35 UTC, Suliman wrote:
>> Maybe it would be better to support yaml config instead of json? At least they have support of comments.
>> http://forum.rejectedsoftware.com/groups/rejectedsoftware.dub/thread/2/
>> afaik DUB will switch to yaml too soon.
>
> dub will switch to sdl, not yaml (actually not switch but support both json and sdl)

Which actually is kind of sad for those who is integrating with dub. We also have to support two formats.

An ideal solution would to have a libdub on code.dlang.org. The second best solution would be to stick to either json or sdl (in case of picking sdl make a migrate script from json to sdl).

/Jonas

April 12, 2015
On Thursday, 26 March 2015 at 11:41:17 UTC, Mike James wrote:
> On Tuesday, 20 May 2014 at 18:13:36 UTC, Vadim Lopatin wrote:
>> Hello!
>>
>> I would like to announce my project, DlangUI library -
> <SNIP>
>
> Hi Vadim,
>
> I have just installed the latest D 2.067.0, ran the git install and the build now fails. The errors are as follows:
>
>
> C:\D\dmd2\gui\dlangui>dub run dlangui:example1 --build=release
> Building package dlangui:example1 in C:\D\dmd2\gui\dlangui\examples\example1\
> Target gl3n 1.0.1 is up to date. Use --force to rebuild.
> Building dlib ~master configuration "library", build type release.
> Running dmd...
> ..\..\..\..\Users\mikej\AppData\Roaming\dub\packages\dlib-master\dlib\image\io\jpeg.d(681): Warning: instead of C-style
> syntax, use D-style syntax 'ubyte[64] dezigzag'
> ..\..\..\..\Users\mikej\AppData\Roaming\dub\packages\dlib-master\dlib\filesystem\windows\directory.d(77): Error: undefin
> ed identifier wcslen
> FAIL ..\..\..\..\Users\mikej\AppData\Roaming\dub\packages\dlib-master\.dub\build\library-release-windows-x86-dmd_2067-17
> 3DBA1310DF90D85EA81F6AA09FBD95\ dlib staticLibrary
> Error executing command run: dmd failed with exit code 1.
>
>
> C:\D\dmd2\gui\dlangui>
>
> any clues?
>
> Thanks.
>
> Regards, Mike.

Did you try upgrade dependencies?

dub upgrade --force-remove
dub build --force

Best regards,
     Vadim
April 13, 2015
Hi Vadim, I just want to say that your work is awesome and very promising.
Отличная работа!
April 13, 2015
On Tuesday, 20 May 2014 at 18:13:36 UTC, Vadim Lopatin wrote:
> Hello!
>
> I would like to announce my project, DlangUI library - cross-platform GUI for D.
> https://github.com/buggins/dlangui
> License: Boost License 1.0
>
> Native library written in D (not a wrapper to other GUI library) - easy to extend.
> As a backend, uses SDL2 on any platform, Win32 API on Windows, XCB on Linux. Other backends can be added easy.
> Tested on Windows and Linux.
> Supports hardware acceleration - drawing using OpenGL when built with version=USE_OPENGL.
> Unicode support.
> Internationalization support.
> Uses Win32 API fonts on Windows, and FreeType on other platforms.
> Same look and feel can be achieved on all platforms.
> Flexible look and feel - themes and styles.
> API is a bit similar to Android UI.
> Flexible layout, support of different screen DPI, scaling.
> Uses two phase layout like in Android.
> Supports drawable resources in .png and .jpeg, nine-patch pngs and state drawables like in Android.
> Single threaded. Use other threads for performing slow tasks.
> Mouse oriented.
>
> Actually, it's a port (with major redesign) of my library used for cross-platform version of my application CoolReader from C++.
>
>
> State of project: alpha. But, already can be used for simple 2D games and simple GUI apps.
> I'm keeping in mind a goal to write D language IDE based on dlangui. :)
> Adding support of 3D graphics is planned.
>
>
> Currently implemented widgets:
>
> TextWidget - simple static text (TODO: implement multiline formatting)
> ImageWidget - static image
> Button - simple button with text label
> ImageButton - image only button
> TextImageButton - button with icon and label
> CheckBox - check button with label
> RadioButton - radio button with label
> EditLine - single line edit
> EditBox - multiline editor
> VSpacer - vertical spacer - just an empty widget with layoutHeight == FILL_PARENT, to fill vertical space in layouts
> HSpacer - horizontal spacer - just an empty widget with layoutWidth == FILL_PARENT, to fill horizontal space in layouts
> ScrollBar - scroll bar
> TabControl - tabs widget, allows to select one of tabs
> TabHost - container for pages controlled by TabControl
> TabWidget - combination of TabControl and TabHost
>
> Layouts - Similar to layouts in Android
>
> LinearLayout - layout children horizontally or vertically depending on orientation
> VerticalLayout - just a LinearLayout with vertical orientation
> HorizontalLayout - just a LinearLayout with vertical orientation
> FrameLayout - all children occupy the same place; usually onle one of them is visible
> TableLayout - children are aligned into rows and columns of table
>
> List Views - similar to lists in Android UI API.
> ListWidget - layout dynamic items horizontally or vertically (one in row/column) with automatic scrollbar; can reuse widgets for similar items
> ListAdapter - interface to provide data and widgets for ListWidget
> WidgetListAdapter - simple implementation of ListAdapter interface - just a list of widgets (one per list item) to show
>
>
> Sample project, example1 contains demo code for most of dlangui API.
>
> Try it using DUB:
>
>     git clone https://github.com/buggins/dlangui.git
>     cd dlangui
>     dub run dlangui:example1
>
> Fonts note: on Linux, several .TTFs are loaded from hardcoded paths (suitable for Ubuntu).
> TODO: add fontconfig support to access all available system fonts.
>
> Helloworld:
>
> // main.d
> import dlangui.all;
> mixin DLANGUI_ENTRY_POINT;
>
> /// entry point for dlangui based application
> extern (C) int UIAppMain(string[] args) {
>     // resource directory search paths
>     string[] resourceDirs = [
>         appendPath(exePath, "../res/"),   // for Visual D and DUB builds
>         appendPath(exePath, "../../res/") // for Mono-D builds
>     ];
>
>     // setup resource directories - will use only existing directories
>     Platform.instance.resourceDirs = resourceDirs;
>     // select translation file - for english language
>     Platform.instance.uiLanguage = "en";
>     // load theme from file "theme_default.xml"
>     Platform.instance.uiTheme = "theme_default";
>
>     // create window
>     Window window = Platform.instance.createWindow("My Window", null);
>     // create some widget to show in window
>     window.mainWidget = (new Button()).text("Hello world"d).textColor(0xFF0000); // red text
>     // show window
>     window.show();
>     // run message loop
>     return Platform.instance.enterMessageLoop();
> }
>
> DDOC generated documentation can be found there: https://github.com/buggins/dlangui/tree/master/docs
> For more info see readme and example1 code.
>
> I would be glad to see any feedback.
> Can this project be useful for someone? What features/widgets are must have for you?
>
>
> Best regards,
>      Vadim  <coolreader.org@gmail.com>
> 	

Is there any way I can debug a unittest build? "Start Debugging" seems bound to the debug build.
April 13, 2015
On Monday, 13 April 2015 at 17:51:54 UTC, John Colvin wrote:
> On Tuesday, 20 May 2014 at 18:13:36 UTC, Vadim Lopatin wrote:
>> Hello!
>>
>> I would like to announce my project, DlangUI library - cross-platform GUI for D.
>> https://github.com/buggins/dlangui
>> License: Boost License 1.0
>>
>> Native library written in D (not a wrapper to other GUI library) - easy to extend.
>> As a backend, uses SDL2 on any platform, Win32 API on Windows, XCB on Linux. Other backends can be added easy.
>> Tested on Windows and Linux.
>> Supports hardware acceleration - drawing using OpenGL when built with version=USE_OPENGL.
>> Unicode support.
>> Internationalization support.
>> Uses Win32 API fonts on Windows, and FreeType on other platforms.
>> Same look and feel can be achieved on all platforms.
>> Flexible look and feel - themes and styles.
>> API is a bit similar to Android UI.
>> Flexible layout, support of different screen DPI, scaling.
>> Uses two phase layout like in Android.
>> Supports drawable resources in .png and .jpeg, nine-patch pngs and state drawables like in Android.
>> Single threaded. Use other threads for performing slow tasks.
>> Mouse oriented.
>>
>> Actually, it's a port (with major redesign) of my library used for cross-platform version of my application CoolReader from C++.
>>
>>
>> State of project: alpha. But, already can be used for simple 2D games and simple GUI apps.
>> I'm keeping in mind a goal to write D language IDE based on dlangui. :)
>> Adding support of 3D graphics is planned.
>>
>>
>> Currently implemented widgets:
>>
>> TextWidget - simple static text (TODO: implement multiline formatting)
>> ImageWidget - static image
>> Button - simple button with text label
>> ImageButton - image only button
>> TextImageButton - button with icon and label
>> CheckBox - check button with label
>> RadioButton - radio button with label
>> EditLine - single line edit
>> EditBox - multiline editor
>> VSpacer - vertical spacer - just an empty widget with layoutHeight == FILL_PARENT, to fill vertical space in layouts
>> HSpacer - horizontal spacer - just an empty widget with layoutWidth == FILL_PARENT, to fill horizontal space in layouts
>> ScrollBar - scroll bar
>> TabControl - tabs widget, allows to select one of tabs
>> TabHost - container for pages controlled by TabControl
>> TabWidget - combination of TabControl and TabHost
>>
>> Layouts - Similar to layouts in Android
>>
>> LinearLayout - layout children horizontally or vertically depending on orientation
>> VerticalLayout - just a LinearLayout with vertical orientation
>> HorizontalLayout - just a LinearLayout with vertical orientation
>> FrameLayout - all children occupy the same place; usually onle one of them is visible
>> TableLayout - children are aligned into rows and columns of table
>>
>> List Views - similar to lists in Android UI API.
>> ListWidget - layout dynamic items horizontally or vertically (one in row/column) with automatic scrollbar; can reuse widgets for similar items
>> ListAdapter - interface to provide data and widgets for ListWidget
>> WidgetListAdapter - simple implementation of ListAdapter interface - just a list of widgets (one per list item) to show
>>
>>
>> Sample project, example1 contains demo code for most of dlangui API.
>>
>> Try it using DUB:
>>
>>    git clone https://github.com/buggins/dlangui.git
>>    cd dlangui
>>    dub run dlangui:example1
>>
>> Fonts note: on Linux, several .TTFs are loaded from hardcoded paths (suitable for Ubuntu).
>> TODO: add fontconfig support to access all available system fonts.
>>
>> Helloworld:
>>
>> // main.d
>> import dlangui.all;
>> mixin DLANGUI_ENTRY_POINT;
>>
>> /// entry point for dlangui based application
>> extern (C) int UIAppMain(string[] args) {
>>    // resource directory search paths
>>    string[] resourceDirs = [
>>        appendPath(exePath, "../res/"),   // for Visual D and DUB builds
>>        appendPath(exePath, "../../res/") // for Mono-D builds
>>    ];
>>
>>    // setup resource directories - will use only existing directories
>>    Platform.instance.resourceDirs = resourceDirs;
>>    // select translation file - for english language
>>    Platform.instance.uiLanguage = "en";
>>    // load theme from file "theme_default.xml"
>>    Platform.instance.uiTheme = "theme_default";
>>
>>    // create window
>>    Window window = Platform.instance.createWindow("My Window", null);
>>    // create some widget to show in window
>>    window.mainWidget = (new Button()).text("Hello world"d).textColor(0xFF0000); // red text
>>    // show window
>>    window.show();
>>    // run message loop
>>    return Platform.instance.enterMessageLoop();
>> }
>>
>> DDOC generated documentation can be found there: https://github.com/buggins/dlangui/tree/master/docs
>> For more info see readme and example1 code.
>>
>> I would be glad to see any feedback.
>> Can this project be useful for someone? What features/widgets are must have for you?
>>
>>
>> Best regards,
>>     Vadim  <coolreader.org@gmail.com>
>> 	
>
> Is there any way I can debug a unittest build? "Start Debugging" seems bound to the debug build.

Are asking about DlangIDE?
There is no debugging here at all.

Start Debugging currently just exdecutes `dub run`


April 13, 2015
On Monday, 13 April 2015 at 18:35:59 UTC, Vadim Lopatin wrote:
> On Monday, 13 April 2015 at 17:51:54 UTC, John Colvin wrote:
>> On Tuesday, 20 May 2014 at 18:13:36 UTC, Vadim Lopatin wrote:
>>> Hello!
>>>
>>> I would like to announce my project, DlangUI library - cross-platform GUI for D.
>>> https://github.com/buggins/dlangui
>>> License: Boost License 1.0
>>>
>>> Native library written in D (not a wrapper to other GUI library) - easy to extend.
>>> As a backend, uses SDL2 on any platform, Win32 API on Windows, XCB on Linux. Other backends can be added easy.
>>> Tested on Windows and Linux.
>>> Supports hardware acceleration - drawing using OpenGL when built with version=USE_OPENGL.
>>> Unicode support.
>>> Internationalization support.
>>> Uses Win32 API fonts on Windows, and FreeType on other platforms.
>>> Same look and feel can be achieved on all platforms.
>>> Flexible look and feel - themes and styles.
>>> API is a bit similar to Android UI.
>>> Flexible layout, support of different screen DPI, scaling.
>>> Uses two phase layout like in Android.
>>> Supports drawable resources in .png and .jpeg, nine-patch pngs and state drawables like in Android.
>>> Single threaded. Use other threads for performing slow tasks.
>>> Mouse oriented.
>>>
>>> Actually, it's a port (with major redesign) of my library used for cross-platform version of my application CoolReader from C++.
>>>
>>>
>>> State of project: alpha. But, already can be used for simple 2D games and simple GUI apps.
>>> I'm keeping in mind a goal to write D language IDE based on dlangui. :)
>>> Adding support of 3D graphics is planned.
>>>
>>>
>>> Currently implemented widgets:
>>>
>>> TextWidget - simple static text (TODO: implement multiline formatting)
>>> ImageWidget - static image
>>> Button - simple button with text label
>>> ImageButton - image only button
>>> TextImageButton - button with icon and label
>>> CheckBox - check button with label
>>> RadioButton - radio button with label
>>> EditLine - single line edit
>>> EditBox - multiline editor
>>> VSpacer - vertical spacer - just an empty widget with layoutHeight == FILL_PARENT, to fill vertical space in layouts
>>> HSpacer - horizontal spacer - just an empty widget with layoutWidth == FILL_PARENT, to fill horizontal space in layouts
>>> ScrollBar - scroll bar
>>> TabControl - tabs widget, allows to select one of tabs
>>> TabHost - container for pages controlled by TabControl
>>> TabWidget - combination of TabControl and TabHost
>>>
>>> Layouts - Similar to layouts in Android
>>>
>>> LinearLayout - layout children horizontally or vertically depending on orientation
>>> VerticalLayout - just a LinearLayout with vertical orientation
>>> HorizontalLayout - just a LinearLayout with vertical orientation
>>> FrameLayout - all children occupy the same place; usually onle one of them is visible
>>> TableLayout - children are aligned into rows and columns of table
>>>
>>> List Views - similar to lists in Android UI API.
>>> ListWidget - layout dynamic items horizontally or vertically (one in row/column) with automatic scrollbar; can reuse widgets for similar items
>>> ListAdapter - interface to provide data and widgets for ListWidget
>>> WidgetListAdapter - simple implementation of ListAdapter interface - just a list of widgets (one per list item) to show
>>>
>>>
>>> Sample project, example1 contains demo code for most of dlangui API.
>>>
>>> Try it using DUB:
>>>
>>>   git clone https://github.com/buggins/dlangui.git
>>>   cd dlangui
>>>   dub run dlangui:example1
>>>
>>> Fonts note: on Linux, several .TTFs are loaded from hardcoded paths (suitable for Ubuntu).
>>> TODO: add fontconfig support to access all available system fonts.
>>>
>>> Helloworld:
>>>
>>> // main.d
>>> import dlangui.all;
>>> mixin DLANGUI_ENTRY_POINT;
>>>
>>> /// entry point for dlangui based application
>>> extern (C) int UIAppMain(string[] args) {
>>>   // resource directory search paths
>>>   string[] resourceDirs = [
>>>       appendPath(exePath, "../res/"),   // for Visual D and DUB builds
>>>       appendPath(exePath, "../../res/") // for Mono-D builds
>>>   ];
>>>
>>>   // setup resource directories - will use only existing directories
>>>   Platform.instance.resourceDirs = resourceDirs;
>>>   // select translation file - for english language
>>>   Platform.instance.uiLanguage = "en";
>>>   // load theme from file "theme_default.xml"
>>>   Platform.instance.uiTheme = "theme_default";
>>>
>>>   // create window
>>>   Window window = Platform.instance.createWindow("My Window", null);
>>>   // create some widget to show in window
>>>   window.mainWidget = (new Button()).text("Hello world"d).textColor(0xFF0000); // red text
>>>   // show window
>>>   window.show();
>>>   // run message loop
>>>   return Platform.instance.enterMessageLoop();
>>> }
>>>
>>> DDOC generated documentation can be found there: https://github.com/buggins/dlangui/tree/master/docs
>>> For more info see readme and example1 code.
>>>
>>> I would be glad to see any feedback.
>>> Can this project be useful for someone? What features/widgets are must have for you?
>>>
>>>
>>> Best regards,
>>>    Vadim  <coolreader.org@gmail.com>
>>> 	
>>
>> Is there any way I can debug a unittest build? "Start Debugging" seems bound to the debug build.
>
> Are asking about DlangIDE?
> There is no debugging here at all.
>
> Start Debugging currently just exdecutes `dub run`

Sorry, yes wrong thread. OK, thanks for the explanation