Re: DlangIDE v0.8.0 released

2017-10-03 Thread Vadim Lopatin via Digitalmars-d-announce

On Monday, 2 October 2017 at 16:50:38 UTC, bitwise wrote:
On Tuesday, 26 September 2017 at 15:20:54 UTC, Vadim Lopatin 
wrote:

[...]


Is C++ integration on the roadmap?

My main project has a platform abstraction layer for graphics, 
and libraries for which no bindings are available, so I use 
Visual D right now, which lets me simply drag all my C++ 
sources right into a D library project. The downside of course 
being that Visual D only works on windows.


So far C++ integration is not planned.
I can include it to some milestone after 1.0


Re: DlangIDE v0.8.0 released

2017-09-28 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 28 September 2017 at 11:52:51 UTC, aberba wrote:

Can i use svg icons?


Currently SVG images are not supported.

This feature is planned for one of future releases.

Workaround: you can provide PNG icons for different screen DPI.



Re: DlangIDE v0.8.0 released

2017-09-28 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 28 September 2017 at 11:51:19 UTC, aberba wrote:
Does DLangUI support theming of the scrollbar? Paddings & 
margins?


It does. It's possible to change paddings, margins, look of 
scrollbar buttons and backgrounds.




Re: DlangIDE v0.8.0 released

2017-09-28 Thread Vadim Lopatin via Digitalmars-d-announce
On Thursday, 28 September 2017 at 06:27:03 UTC, Vadim Lopatin 
wrote:

On Wednesday, 27 September 2017 at 15:24:29 UTC, bitwise wrote:
One small thing though - when you use the LCD/BGR style fonts, 
you get a mismatch between the font metrics and bitmap size.


Fixed.

Screenshots:

http://buggins.github.io/dlangui/screenshots/screenshot-dlangide.png

http://buggins.github.io/dlangui/screenshots/screenshot-dlangide-dark.png

http://buggins.github.io/dlangui/screenshots/screenshot-dlangide-console-win32.png



Re: DlangIDE v0.8.0 released

2017-09-28 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 27 September 2017 at 15:24:29 UTC, bitwise wrote:
One small thing though - when you use the LCD/BGR style fonts, 
you get a mismatch between the font metrics and bitmap size.


So if you're using FT_LOAD_TARGET_LCD, then some of these may 
be true:


glyph.bitmap_left != (glyph.metrics.horiBearingX >> 6);
glyph.bitmap_top != (glyph.metrics.horiBearingY >> 6);
glyph.bitmap.width != (glyph.metrics.width >> 6);
glyph.bitmap.rows != (glyph.metrics.height >> 6);

The result could be a crash, clipping, or misalignment of 
glyphs, depending on the assumptions made by your blitting code.


I asked about this on the FT mailing list, and unfortunately, 
they don't believe that the 1 or 2 pixels of padding added to 
the bitmap to accommodate the LCD rendering belongs in metrics.


The fix is simply using bitmap_left, bitmap_top, bitmap.width, 
bitmap.height, instead of the metrics.


I was looking at the commits and saw that you added kerning, so 
was wondering if you hit this problem.


Thank you for advice.
It looks like I faced this problem when one of fonts was selected 
for UI.

Will fix.
As well, I see wrong monotype fonts character placement not 
aligned properly.






Re: DlangIDE v0.8.0 released

2017-09-27 Thread Vadim Lopatin via Digitalmars-d-announce
On Wednesday, 27 September 2017 at 08:00:21 UTC, Traktor Toni 
wrote:
Code completion isnt working for me on windows, no clue what's 
missing.


Did you try Ctrl+Space?


Re: DlangIDE v0.8.0 released

2017-09-27 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 26 September 2017 at 22:35:09 UTC, bitwise wrote:
On Tuesday, 26 September 2017 at 15:20:54 UTC, Vadim Lopatin 
wrote:

New DlangIDE version is released.


I've only had time to take a quick look, but this IDE seems 
pretty good. I was surprised at how fast it loaded up, and how 
it downloaded the dependencies for the sample project on it's 
own.


The text rendering needs work though. Honestly, I passed this 
editor up the first time I came across it because of the way 
the text looks. It reminds me of Visual Studio 2005. I couldn't 
help but assume the IDE was outdated and probably be 
abandon-ware.


I would definitely change the default font to the platform-IDE 
defaults:


Visual Studio: Consolas
XCode: Menlo Regular

Also, FreeType has made improvements lately, and now does a 
much better job of rendering fonts at small sizes(no so 
blurry). In particular 2.8.1, which just came out, implements a 
patent-free substitute for MS style clear-type rendering[1][2].


[1] http://i.imgur.com/nK8Xu.png
[2] 
https://www.freetype.org/freetype2/docs/reference/ft2-base_interface.html#FT_LOAD_TARGET_LCD


The thick bezels and deep 3D shading make it look retro as well.


For Windows, added libfreetype 2.8.1 dlls.

Made additional fixes for better font rendering.

Win32 binaries are uploaded to
https://github.com/buggins/dlangide/releases/tag/v0.8.2

To disable freetype, delete libfreetype-6.dll

Consolas/Menlo are already selected if "Default" font is chosen 
for editors.




Re: DlangIDE v0.8.0 released

2017-09-27 Thread Vadim Lopatin via Digitalmars-d-announce
On Wednesday, 27 September 2017 at 02:37:41 UTC, Traktor Toni 
wrote:
On Tuesday, 26 September 2017 at 15:20:54 UTC, Vadim Lopatin 
wrote:

New DlangIDE version is released.
Now I'm considering DlangIDE as mostly usable.


well don't. I just tested the windows build.

1. F5 doesnt build+run the application
2. I have to install dmd/D compiler separately
3. no intellisense

This is not usable by any reasonable definition as an IDE.


1. Ctrl+F5 does. You can change shortcuts in 
~/.dlangide/shortcuts.json (on Windows - in 
currentUser/AppData/.dlangide/shortcuts.json
2. Why should IDE include compiler. It's easy to download it from 
official site.
3. Is Code completion/GoToDefinition/Call tips/Doc comments 
enough? If so, it's present. No refactoring support.


DlangIDE v0.8.0 released

2017-09-26 Thread Vadim Lopatin via Digitalmars-d-announce

New DlangIDE version is released.

Prebuilt win32 binaries are available on 
https://github.com/buggins/dlangide/releases


Milestone 0.8 is reached.
List of 56 issues closed in this milestone: 
https://github.com/buggins/dlangide/milestone/2?closed=1


As well, many DlangUI changes were implemented for some of 
DlangIDE features.


Thank you for everyone who reported issues / sent PRs and feature 
requests.


Now I'm considering DlangIDE as mostly usable.



Re: database 0.0.8 released

2017-09-12 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 12 September 2017 at 17:14:27 UTC, Brian wrote:
dlang database library: Database abstraction layer for D 
programing language, support PostgreSQL / MySQL / SQLite.


Project:
https://github.com/huntlabs/database


Did you see DDBC project?
It supports postgres, mysql, and sqlite, too.
API is similar to Java JDBC.



Re: D on Tiobe Index

2017-09-01 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 31 August 2017 at 14:57:28 UTC, bitwise wrote:
What I would most like to see in the future would be a more 
complete and simplified set of tools for D.


I believe there should be at least one full-featured tool for 
each operating system, which includes syntax highlighting, 
auto-complete, symbol-information on hover, go to declaration, 
and runtime debugging for D. It should also include at least 
basic syntax highlighting for C++, and the ability to build and 
link that C++ code with the D program. I believe this tool 
should be self contained, and installable with a single click. 
An end user of the D programming language should never have to 
know anything about what dependencies are needed or installed 
for a given addon/extension.


I believe such a set of tools is well within reach. Some 
existing tools are already very close to what I've described 
above.


I believe DlangIDE can become such tool.
Runs on all platforms. Small.

which includes syntax highlighting, auto-complete, 
symbol-information on hover, go to declaration,


Supports it using embedded DCD.


and runtime debugging for D.


Debugging needs a lot of improvements to became usable.

Project is easy to contribute for D developers since written in D.




Re: DlangUI v0.7.60 released

2017-08-31 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 31 August 2017 at 10:06:27 UTC, Suliman wrote:
On Thursday, 31 August 2017 at 08:51:12 UTC, Vadim Lopatin 
wrote:

On Wednesday, 30 August 2017 at 19:47:17 UTC, Dukc wrote:
On Wednesday, 30 August 2017 at 07:44:54 UTC, Vadim Lopatin 
wrote:

[snip]


From what I've followed, you sure update the project often! 
Perhaps more often than what Phobos is upgraded, by all 
developers combined. Great work.


I'm trying not to spam too often.


How to turn on autocomplete? I am starting typing but do not 
see any autocomplete suggestions.


Ctrl+Space

After opening of project, it takes 10-20 seconds for DCD to parse 
and cache phobos/druntime modules so first invocation may be 
delayed.


Re: DlangUI v0.7.60 released

2017-08-31 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 30 August 2017 at 19:47:17 UTC, Dukc wrote:
On Wednesday, 30 August 2017 at 07:44:54 UTC, Vadim Lopatin 
wrote:

[snip]


From what I've followed, you sure update the project often! 
Perhaps more often than what Phobos is upgraded, by all 
developers combined. Great work.


I'm trying not to spam too often.


Re: DlangUI v0.7.60 released

2017-08-31 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 31 August 2017 at 02:41:08 UTC, Domain wrote:
On Wednesday, 30 August 2017 at 07:44:54 UTC, Vadim Lopatin 
wrote:
There are a lot of improvements in DlangIDE since last 
announcement.


[...]


Is there any themes to download? It's a bit ugly in windows


There are no other themes available.
Although, it's easy to create your own theme.
Instructions can be found here:

https://github.com/buggins/dlangui/wiki/Adding-New-Theme

Built in themes are created based on Eclipse look & feel on 
Windows platform.


But Dark theme is ugly in Eclipse as well :(

BTW, topic should be DlangIDE released, not DlangUI released.


DlangUI v0.7.60 released

2017-08-30 Thread Vadim Lopatin via Digitalmars-d-announce
There are a lot of improvements in DlangIDE since last 
announcement.


DlangIDE is a cross-platform IDE for D programming language.

Project link: https://github.com/buggins/dlangide
Release: https://github.com/buggins/dlangide/releases

Windows binaries are available (requires only DMD or LDC to work).

* DUB package as project format
* DUB is used to build and debug projects
* DCD is integrated as a library - provides code completion, go 
to definition and symbol documentation lookup.

* GDB (mago-mi on windows) debugger support

Recent changes:

* Stability fixes
* DCD support fixes
* Better UI look and feel
* UI font setting added
* List of opened files is saved on exit
* Setting to reopen recent workspace on startup
* Opens project or workspace passed as commandline parameter
* UI translations improved
* DUB Subpackages support

Thanks to DlangIDE and DlangUI contributors for PRs and issue 
reports.


Main TODO: better debugging support - variable display. Currently 
it's impossible to see content referenced by pointers, struct or 
class members. It's main stopper from using DlangIDE for everyday 
development.




Re: The DLang Tour translated into Russian

2017-06-26 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 15 June 2017 at 09:48:48 UTC, Dmitry wrote:

On Wednesday, 14 June 2017 at 06:54:23 UTC, Vadim Lopatin wrote:

Кто-нибудь из переводчиков хочет написать статью на Хабре?


В принципе, я мог бы заняться, но не раньше следующей недели. 
Если кто-то хочет раньше - пишите.


Запостил новость на Хабр: https://habrahabr.ru/post/331670/



DlangUI Wiki: some docs added

2017-06-14 Thread Vadim Lopatin via Digitalmars-d-announce

Hello,

I've created several Wiki pages which may be useful if you are 
using DlangUI.



Adding resources to DlangUI application:

https://github.com/buggins/dlangui/wiki/Adding-Resources


Adding new / cusomizing existing theme in DlangUI application:

https://github.com/buggins/dlangui/wiki/Adding-New-Theme


DML documentation:


https://github.com/buggins/dlangui/wiki/Using-DML-to-create-layouts



Please let me know if something has to be documented deeper.


Best regards,
Vadim


Re: The DLang Tour translated into Russian

2017-06-14 Thread Vadim Lopatin via Digitalmars-d-announce

Announce article on Habrahabr would be useful.


Кто-нибудь из переводчиков хочет написать статью на Хабре?


Re: The DLang Tour translated into Russian

2017-06-13 Thread Vadim Lopatin via Digitalmars-d-announce

On Saturday, 10 June 2017 at 17:20:14 UTC, Stanislav Blinov wrote:

Hi everyone!

We're happy to announce that as of today, the Russian 
translation of the DLang Tour chapters is available here: 
https://tour.dlang.org/tour/ru/welcome/welcome-to-d , and of 
course via the language selection page: 
https://tour.dlang.org/tour/en/welcome/languages


Hopefully, this small step helps spread D to a wider audience. 
If you can read Russian, please take a peek yourselves and tell 
your friends. And of course, critique, suggestions and fixes 
are welcome.


From myself, I'd like to say a huge Thank You to the DLang Tour 
team, all the authors involved with the original chapters and 
examples; Sebastian Wilzbach for a warm welcome and support; 
El-lin for solid advice; and Dmitry, for his keen eye, 
patience, and thoroughness during review.


Announce article on Habrahabr would be useful.


Re: Developer positions at Sociomantic Labs

2017-06-13 Thread Vadim Lopatin via Digitalmars-d-announce
On Tuesday, 13 June 2017 at 10:25:14 UTC, Joseph Rushton Wakeling 
wrote:

On Tuesday, 13 June 2017 at 02:53:14 UTC, Dsby wrote:

唉、、My poor English、、、


English is important to us, but if you're keen, I would 
encourage you to apply anyway and let us make the decision on 
whether you're at the level we need.


Is German needed?



Re: SoundTab Theremin software synthesizer

2016-11-09 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 28 October 2016 at 08:28:41 UTC, Vadim Lopatin wrote:
I've open sourced my project SoundTab: 
https://github.com/buggins/soundtab/


Play like on Theremin, but instead of moving hand in the air, 
move pen over wacom tablet. Volume is modulated by pen pressure,

instead of left hand movement in Theremin.

For better experience, use Wacom digitizer with pressure 
detection.


You can play with mouse as well, but w/o volume modulation (no 
pressure information), and less precise positioning.



Supports only Windows so far.

Binaries may be downloaded here: 
https://github.com/buggins/soundtab/releases




Updated:
- MP3 playback for accompaniment track is implemented
- any controller may be mapped on Y axis of tablet/mouse
Fresh screenshot: 
https://buggins.github.io/soundtab/screenshots/soundtab-screenshot-1.png





Re: SoundTab Theremin software synthesizer

2016-10-28 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 28 October 2016 at 08:28:41 UTC, Vadim Lopatin wrote:
I've open sourced my project SoundTab: 
https://github.com/buggins/soundtab/


Play like on Theremin, but instead of moving hand in the air, 
move pen over wacom tablet. Volume is modulated by pen pressure,

instead of left hand movement in Theremin.

For better experience, use Wacom digitizer with pressure 
detection.


You can play with mouse as well, but w/o volume modulation (no 
pressure information), and less precise positioning.



Supports only Windows so far.

Binaries may be downloaded here: 
https://github.com/buggins/soundtab/releases



Reddit: 
https://www.reddit.com/r/programming/comments/59thwr/soundtab_theremin_software_synth_with_wacom/
Screenshot added: 
https://buggins.github.io/soundtab/screenshots/soundtab-screenshot-1.png





SoundTab Theremin software synthesizer

2016-10-28 Thread Vadim Lopatin via Digitalmars-d-announce

Hello,

I've open sourced my project SoundTab: 
https://github.com/buggins/soundtab/


Play like on Theremin, but instead of moving hand in the air, 
move pen over wacom tablet. Volume is modulated by pen pressure,

instead of left hand movement in Theremin.

For better experience, use Wacom digitizer with pressure 
detection.


You can play with mouse as well, but w/o volume modulation (no 
pressure information), and less precise positioning.



Supports only Windows so far.

Binaries may be downloaded here: 
https://github.com/buggins/soundtab/releases



Best regards,
Vadim


Re: Project Highlight: DlangUI

2016-10-10 Thread Vadim Lopatin via Digitalmars-d-announce

On Monday, 10 October 2016 at 14:32:43 UTC, Mike Parker wrote:

On Monday, 10 October 2016 at 13:26:59 UTC, Vadim Lopatin wrote:

Mike, is it possible to add screenshot to article before 
Console UI screenshot?
People getting confused by text UI screenshot, thinking it's 
normal for DlangUI.


Good candidate: 
http://buggins.github.io/dlangui/screenshots/screenshot-example1-windows.png


Good idea. I've updated the post.


Thank you!



Re: Project Highlight: DlangUI

2016-10-10 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 7 October 2016 at 13:45:36 UTC, Mike Parker wrote:
The latest post on the D Blog is all about Vadim's DlangUI. He 
shares some of the inspiration behind it, a few implementation 
details, and plans for the future.


The post: 
https://dlang.org/blog/2016/10/07/project-highlight-dlangui/
Reddit: 
https://www.reddit.com/r/programming/comments/56besf/dlangui_a_crossplatform_gui_written_in_and_for/


Screenshots on http://buggins.github.io/dlangui/screenshots.html 
are updated to taken from latest DlangUI.

Now they are clickable - click to see non-resized version.



Re: Project Highlight: DlangUI

2016-10-10 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 7 October 2016 at 13:45:36 UTC, Mike Parker wrote:
The latest post on the D Blog is all about Vadim's DlangUI. He 
shares some of the inspiration behind it, a few implementation 
details, and plans for the future.


The post: 
https://dlang.org/blog/2016/10/07/project-highlight-dlangui/
Reddit: 
https://www.reddit.com/r/programming/comments/56besf/dlangui_a_crossplatform_gui_written_in_and_for/


Mike, is it possible to add screenshot to article before Console 
UI screenshot?
People getting confused by text UI screenshot, thinking it's 
normal for DlangUI.


Good candidate: 
http://buggins.github.io/dlangui/screenshots/screenshot-example1-windows.png




Re: WinTab (wacom tablet API) and Windows Core Audio bindings - new DUB packages

2016-10-07 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 6 October 2016 at 07:10:29 UTC, Vadim Lopatin wrote:

Hello,

I've published two new DUB packages.

derelict-wintab: derelict binding of WinTab32.DLL - API for 
Wacom digitizer tablets.


wasapi: translation of Windows Core Audio interfaces (Core 
Audio interfaces: MMDevice, WASAPI, EndpointVolume API).


I'm using them in my SoundTab project - Theremin-like 
synthesizer app which uses Wacom tablet as input device.


Just in hope it might be useful for someone.


One more binding shared: Derelict binding for libmpg123 library 
(mp3 decoder).

DUB package name: derelict-mpg123



Re: WinTab (wacom tablet API) and Windows Core Audio bindings - new DUB packages

2016-10-06 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 6 October 2016 at 21:21:33 UTC, Karabuta wrote:
On Thursday, 6 October 2016 at 07:10:29 UTC, Vadim Lopatin 
wrote:

Hello,

I've published two new DUB packages.

derelict-wintab: derelict binding of WinTab32.DLL - API for 
Wacom digitizer tablets.


wasapi: translation of Windows Core Audio interfaces (Core 
Audio interfaces: MMDevice, WASAPI, EndpointVolume API).


I'm using them in my  - Theremin-like synthesizer app which 
uses Wacom tablet as input device.


Just in hope it might be useful for someone.

Best regards,
Vadim


Nice stuff, will the SoundTab project work on Linux?


To work on Linux, it needs Wacom Tablet support library and some 
low latency audio playback library.

WinTab and core audio are windows only.
It would be great to create some cross platform solution.



WinTab (wacom tablet API) and Windows Core Audio bindings - new DUB packages

2016-10-06 Thread Vadim Lopatin via Digitalmars-d-announce

Hello,

I've published two new DUB packages.

derelict-wintab: derelict binding of WinTab32.DLL - API for Wacom 
digitizer tablets.


wasapi: translation of Windows Core Audio interfaces (Core Audio 
interfaces: MMDevice, WASAPI, EndpointVolume API).


I'm using them in my SoundTab project - Theremin-like synthesizer 
app which uses Wacom tablet as input device.


Just in hope it might be useful for someone.

Best regards,
Vadim



Re: We're looking for a Software Developer! (D language)

2016-09-16 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 16 September 2016 at 10:38:54 UTC, nnot wrote:
On Thursday, 8 January 2015 at 11:10:09 UTC, Johanna Burgos 
wrote:




Hi-ya!
We have D-coders(they're really rare persons). We are small 
software development company, please, visit our page: 
http://vironit.com/ or just wink me at skype: e.dziatlau.vironit


BTW, there is no D language mentioned in Portfolio/Technology in 
your company http://vironit.com/portfolio/en/




Re: DlangUI 0.9.0: Console backend added

2016-09-14 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 13 September 2016 at 12:50:02 UTC, Rory McGuire wrote:

Did you get my post about the keyboard thing?
You can test it by running dub --single filename.d

output looks like:
kp: [27, 91, 49, 59, 50, 68]
kp: [27, 91, 49, 59, 53, 68]
kp: [27, 91, 49, 59, 51, 68]
kp: [27, 91, 68]

if I press:
shift+Left
ctrl+Left
alt+left
left


Single modifiers are working ok for me.
But some combinations - do not. E.g. Ctrl+Shift+Left/Up/Down - at 
least in Gnome terminal.


BTW: love what you are doing with dlangui. Are you a one person 
team?


In general, yes. But there were 24 contributors who sent pull 
requests.
Some of them contributed a lot of PRs - e.g. g4z3r(54 commits), 
MyLittleRobo(20 commits).


It would be great if more developers joined dlangui. But it 
should become more usable and popular, to attract more people. 
One of stopper here is probably poor documentation.




Re: DlangUI 0.9.0: Console backend added

2016-09-14 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 13 September 2016 at 13:40:32 UTC, ketmar wrote:
On Tuesday, 13 September 2016 at 12:29:47 UTC, Vadim Lopatin 
wrote:

Screenshots on imgur: http://imgur.com/a/eaRiT


btw. please note that on most GNU/Linux terminals you can use 
simple RGB colors (with each component in [0..5] range). IRL if 
$TERM != "Linux", it is safe to assume that terminal supports 
256 colors (with rare exclustions like "screen" -- those can be 
safely ignored, screen is fubared anyway ;-).


Thank you!
Now dlangui terminal mode supports only 16 colors.
Some refactoring is required to support RGB colors.



Re: DlangUI 0.9.0: Console backend added

2016-09-13 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 13 September 2016 at 12:18:19 UTC, Bauss wrote:
Good job, but why do people still use tinypic in 2016, when 
things like imgur exist that are a 1000 times faster to use, no 
dirty ads and images won't magically be taken down someday.


Thanks. I just googled tinypic with "free image hosting".
Next time will upload on imgur.


Re: DlangUI 0.9.0: Console backend added

2016-09-13 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 13 September 2016 at 12:18:19 UTC, Bauss wrote:
Good job, but why do people still use tinypic in 2016, when 
things like imgur exist that are a 1000 times faster to use, no 
dirty ads and images won't magically be taken down someday.


Screenshots on imgur: http://imgur.com/a/eaRiT


Re: DlangUI 0.9.0: Console backend added

2016-09-13 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 13 September 2016 at 11:27:19 UTC, Stefan Koch wrote:
On Tuesday, 13 September 2016 at 07:51:06 UTC, Vadim Lopatin 
wrote:
On Friday, 9 September 2016 at 11:21:07 UTC, Vadim Lopatin 
wrote:

[...]


Screenshot of DlangIDE working in console:

http://i68.tinypic.com/2hrmkup.png


Looks great!
can you fix dlang-ui to build on XP ?


I don't have XP to check. What is wrong? Could you submit issue 
on github?

https://github.com/buggins/dlangui/issues


Re: DlangUI 0.9.0: Console backend added

2016-09-13 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 9 September 2016 at 11:21:07 UTC, Vadim Lopatin wrote:

Hello!

Now it's possible to build DlangUI apps to run in console 
(Linux, Windows).
When DlangUI is built with version=USE_CONSOLE (dub 
subconfiguration "console" for dlangui library) - it works in 
terminal.


Such feature may be useful, e.g. to run apps on headless 
devices, or via SSH.


For simple apps, it's enough just to specify dlangui 
configuration console. No additional changes required.


If custom themes are used, additional theme files prefixed with 
"console_" are to be created.
If custom embedded resources are used, create additional 
resource list file, with "console_" prefix.


Margins, padding, size values if specified in pixels are to be 
changed.
Hint: use points or EMs for such values to get them working 
universally on both console and GUI.


If images/icons are used, and still needed in console mode, you 
may need to create ASCII art like text image files (.tim 
extension).


Screenshot of DlangIDE working in console:

http://i68.tinypic.com/2hrmkup.png




Re: DlangUI 0.9.0: Console backend added

2016-09-12 Thread Vadim Lopatin via Digitalmars-d-announce
On Monday, 12 September 2016 at 08:15:57 UTC, Steve Biedermann 
wrote:
On Friday, 9 September 2016 at 11:21:07 UTC, Vadim Lopatin 
wrote:
Now it's possible to build DlangUI apps to run in console 
(Linux, Windows).
When DlangUI is built with version=USE_CONSOLE (dub 
subconfiguration "console" for dlangui library) - it works in 
terminal.


I just tried to compiel with subconfiguration "console" but I'm 
getting compile errors:


dub build --force
Performing "debug" build using dmd for x86.
dlangui 0.9.1: building configuration "console"...
%APPDATA%\dub\packages\dlangui-0.9.1\dlangui\3rd
party\fontconfig\package.d(7,12): Error: module loader is in 
file 'derelict\util\loader.d' which cannot be read
import path[0] = 
%APPDATA%\dub\packages\dlangui-0.9.1\dlangui\3rdparty
import path[1] = 
%APPDATA%\dub\packages\dlangui-0.9.1\dlangui\src

import path[2] = C:\D\dmd2\windows\bin\..\..\src\phobos
import path[3] = C:\D\dmd2\windows\bin\..\..\src\druntime\import
dmd failed with exit code 1.


Must be fixed in v0.9.2 (once dub registry updated version)


Re: DlangUI 0.9.0: Console backend added

2016-09-09 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 9 September 2016 at 12:33:56 UTC, ketmar wrote:
On Friday, 9 September 2016 at 12:20:08 UTC, Vadim Lopatin 
wrote:

Keyboard support on Linux terminals seems most difficult.
Some shortcuts are being processed by terminal app.


here programmer has no options.


Some ctrl-combinations are causing signals.


switch tty to raw mode, and there will be no signals. see my 
iv.rawtty2, for example.


E.g. I cannot get working text selection moving by 
Ctrl+Shift+Arrows.


this is hightly dependent of the actual terminal emulator. in 
real world, it is enough to support xterm mappings, rxvt 
mappings and "Linux" (this is "real" console) mappings. xterm 
and rxvt mappings aren't really conflicting (much). again, the 
messy iv.rawtty2.ttyReadKey may give some clues.


of course, "best practice" is to use termcap/terminfo, but this 
is even bigger mess! ;-)


Thank you!
I'll look at it.



Re: DlangUI 0.9.0: Console backend added

2016-09-09 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 9 September 2016 at 12:04:14 UTC, Martin Drašar wrote:
Dne 9.9.2016 v 13:21 Vadim Lopatin via Digitalmars-d-announce 
napsal(a):

Hello!

Now it's possible to build DlangUI apps to run in console 
(Linux, Windows).
When DlangUI is built with version=USE_CONSOLE (dub 
subconfiguration

"console" for dlangui library) - it works in terminal.


This is indeed really cool.

How gracefully does it handle when the console is of limited 
size? Let's say 80x25. Does it allow e.g. virtual screen of 
bigger size and then moving around in console?


Martin


DlangUI provides "layouts" similar to Android ones, which should 
reflow and resize widgets for different screen sizes.
As well, app may load layouts from DML markup file - different 
for different screen size (as it's done in Android).


To simulate bigger screen, it's possible just to place controls 
inside ScrollWidget - and you would be able to move it with 
scrollbars.




DlangUI 0.9.0: Console backend added

2016-09-09 Thread Vadim Lopatin via Digitalmars-d-announce

Hello!

Now it's possible to build DlangUI apps to run in console (Linux, 
Windows).
When DlangUI is built with version=USE_CONSOLE (dub 
subconfiguration "console" for dlangui library) - it works in 
terminal.


Such feature may be useful, e.g. to run apps on headless devices, 
or via SSH.


For simple apps, it's enough just to specify dlangui 
configuration console. No additional changes required.


If custom themes are used, additional theme files prefixed with 
"console_" are to be created.
If custom embedded resources are used, create additional resource 
list file, with "console_" prefix.


Margins, padding, size values if specified in pixels are to be 
changed.
Hint: use points or EMs for such values to get them working 
universally on both console and GUI.


If images/icons are used, and still needed in console mode, you 
may need to create ASCII art like text image files (.tim 
extension).


Some screenshots (from dlangui example1 app):

  http://i63.tinypic.com/2wn1bg9.png
  http://i66.tinypic.com/142yctx.png
  http://i64.tinypic.com/snlc08.png
  http://i64.tinypic.com/2n16vcw.png

Part of key modifiers do not work in linux console.
Mouse events working ok.

Theme for console is to be improved a bit.

Now I'm trying to get DlangIDE working in console.


Best regards,
 Vadim



Re: mago-mi: GDB/MI compatible frontend for Mago debugger

2016-06-01 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 15:20:15 UTC, Bruno Medeiros wrote:


Impressive work!

I'm currently working on improving integration in VS. For 
this, I also
needed a static library version of MagoNatDE. I just pushed my 
changes,

I hope it doesn't break anything for you.

If you want to stay in sync, please consider a PR with your 
changes to

mago.



Can Mago debug programs with debug information in the COFF 
format? If not, any chance this could be added, or is it a big 
task?


I didn't check but it should work.




Re: PowerNex - New release of my D kernel

2016-05-31 Thread Vadim Lopatin via Digitalmars-d-announce

On Sunday, 29 May 2016 at 23:15:13 UTC, Wild wrote:

Hey!

I have new release of my D kernel called PowerNex.
This release should be a bit more interesting than the last one 
that I release back in November 2015.


This one contains a working memory manager, a custom TTY 
renderer, BMP image renderer, a VFS, etc.

More information is in the Github release.

https://github.com/Vild/PowerNex/releases/tag/v0.1.0-ALPHA
The Github release also have a precompiled ISO.

The project is fully open source and located at 
https://github.com/Vild/PowerNex under the MPLv2 license.


Hopefully someone will find this interesting.
All feedback is appreciated.

-Dan


Cool.


Re: mago-mi: GDB/MI compatible frontend for Mago debugger

2016-05-24 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 24 May 2016 at 06:56:26 UTC, Rainer Schuetze wrote:



On 24.05.2016 08:47, Vadim Lopatin wrote:

On Tuesday, 24 May 2016 at 06:34:04 UTC, Rainer Schuetze wrote:


If you want to stay in sync, please consider a PR with your 
changes to

mago.


Actually, I would prefer to use static versions of all Mago 
libraries.
I really like that statically linked mago-mi.exe is only 1.5Mb 
in

Release build.
If it become possible to link MagoNatDE/MagoNatEE statically, 
I would

merge my changes to upstream.



MagoNatEE has been a static lib so far, but it could be 
eliminated long term, as it just a very thin layer to convert 
std::wstring to BSTR for some function arguments.


MagoNatDE now has configurations "Debug/Release StaticDE" which 
are also solution configurations. Anything else falls back to 
Debug/Release, but can link the static library within these 
solution configurations. See the MagoNatCC project.


Merged upstream.
Sent pull request.



Re: mago-mi: GDB/MI compatible frontend for Mago debugger

2016-05-24 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 24 May 2016 at 06:34:04 UTC, Rainer Schuetze wrote:



On 17.05.2016 10:06, Vadim Lopatin wrote:

Hello,

I'm working on GDB/MI compatible interface for Mago debugger 
on Windows.



Impressive work!

I'm currently working on improving integration in VS. For this, 
I also needed a static library version of MagoNatDE. I just 
pushed my changes, I hope it doesn't break anything for you.


If you want to stay in sync, please consider a PR with your 
changes to mago.


Actually, I would prefer to use static versions of all Mago 
libraries.
I really like that statically linked mago-mi.exe is only 1.5Mb in 
Release build.
If it become possible to link MagoNatDE/MagoNatEE statically, I 
would merge my changes to upstream.




Re: DDT 1.0.0 released.

2016-05-23 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 17 May 2016 at 14:04:04 UTC, Bruno Medeiros wrote:
New DDT release out: dfmt support, performance improvements to 
semantic operations, more build command customization, fixes. 
Please see changelog for full list:


https://github.com/DDT-IDE/DDT/releases/tag/v1.0.0

Since DDT has generally been quite stable, and since the 
current release is very close to the end-game vision I had for 
a D IDE - at least as far as my free time would allow to create 
- I've decided to version this as 1.0. I've been working for 
nearly 8 years on this project after all (with some 
intermission periods), so I guess 1.0 was a bit due... O.o'


I expect it will mainly be small updates from now on, not any 
major new features (other than perhaps DCD support).


For Eclipse/DDT under Windows now you can use Mago-MI debugger 
for debugging of DMD/x86 generated programs.


Precompiled binaries are available in DlangIDE release bundle.
https://github.com/buggins/dlangide/releases/tag/v0.6.5

Added support for a lot of GDB/MI commands.
Compatibility with GDB fixed.
Tested with Eclipse/DDT.

You can build dmd/x86 project in Eclipse/DDT, start debugging, 
use breakpoints, step in/out/over, see threads, stack frames, 
variables.
Just change Debug Configuration / Debugger setting - from GDB to 
mago-mi


Mago-MI thread on Announce: 
http://forum.dlang.org/thread/wctrsimrsfpbdkgce...@forum.dlang.org


On Debuggers:
http://forum.dlang.org/thread/pjqmjezcgplwvpfue...@forum.dlang.org

Best regards,
 Vadim



Re: mago-mi: GDB/MI compatible frontend for Mago debugger

2016-05-23 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 18 May 2016 at 18:02:12 UTC, Bruno Medeiros wrote:
While DDT technically work oks with GDB (the GDB from mingw-w64 
that is), you are right, there isn't a compiler on Windows that 
supplies debug info in the way GDB understands. See 
https://wiki.dlang.org/Debuggers.


DMD produces debug info COFF or OMF format, which GDB doesn't 
know anything about (nor ever will). LDC should in theory work 
with DWARF info, but this is broken somehow. Not because of 
LLVM though, since for example Rust on Windows works. As for 
GDC, it doesn't even supply binaries for Windows (that target 
Windows) -  it is not a supported platform.


BTW, Eclipse/DDT should in theory work with mago-mi as well, at 
least if the protocol is implemented correctly. Have you tried 
it? I dunno how complete your MI implementation is.


mago-mi v0.2.1 is released.

Precompiled binaries are available in DlangIDE release bundle.
https://github.com/buggins/dlangide/releases/tag/v0.6.5

Added support for a lot of GDB/MI commands.
Compatibility with GDB fixed.
Tested with Eclipse/DDT.

You can build dmd/x86 project in Eclipse/DDT, start debugging, 
use breakpoints, step in/out/over, see threads, stack frames, 
variables.
Just change Debug Configuration / Debugger setting - from GDB to 
mago-mi


Best regards,
 Vadim


Re: mago-mi: GDB/MI compatible frontend for Mago debugger

2016-05-19 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 20 May 2016 at 03:15:46 UTC, E.S. Quinn wrote:
Unfortunately in this particular case, CDT's debugging is 
pretty fancy and is going to need most if not all of the MI.


I also don't know which MI commands need to be supported to 
have it work with DDT. The thing is I didn't write the GDB 
debugger integration for DDT, I just reused the one from CDT. 
So I'm not that familiar with those internals.


BTW, the MI integration is fairly language agnostic, so in 
theory your debugger could be used by CDT to debug C/C++ 
programs too, no? At least those generated by DMC. Maybe 
Visual Studio ones too?


I'm experimenting with the build of mago-mi that comes with the 
current ~master for dlangide, and it seems to throw an 
unrecognized parameter error when on the --log-level=TRACE 
parameter.


And it seems that the version string it returns upsets eclipse, 
as it throws the following error:


 Could not determine GDB version using command: 
D:\WinHome\\AppData\Roaming\dub\packages\dlangide-master\bin\mago-mi.exe --version

 Unexpected output format:

 mago-mi debugger v0.1


Though, from my experience using it in Linux, eclipse-CDT's 
debugger seems pretty full-featured; it will likely require 
large swaths of mi functionality to be fully useful.


Need to show version like lldb-mi does - writes gnu gdb version, 
then says that really it's not a GDB


Let me check problem with --log-level



Re: mago-mi: GDB/MI compatible frontend for Mago debugger

2016-05-19 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 18 May 2016 at 18:02:12 UTC, Bruno Medeiros wrote:
While DDT technically work oks with GDB (the GDB from mingw-w64 
that is), you are right, there isn't a compiler on Windows that 
supplies debug info in the way GDB understands. See 
https://wiki.dlang.org/Debuggers.


DMD produces debug info COFF or OMF format, which GDB doesn't 
know anything about (nor ever will). LDC should in theory work 
with DWARF info, but this is broken somehow. Not because of 
LLVM though, since for example Rust on Windows works. As for 
GDC, it doesn't even supply binaries for Windows (that target 
Windows) -  it is not a supported platform.


BTW, Eclipse/DDT should in theory work with mago-mi as well, at 
least if the protocol is implemented correctly. Have you tried 
it? I dunno how complete your MI implementation is.


So it looks like mago-mi might be helpful for DDT on Windows.
mago-mi supports subset of GDB/MI commands enough for DlangIDE, 
but it can be easy extended.


Currenlty supported commands can be shown using help command (use 
--interpreter=mi2 when running mago-mi, otherwise it will print 
non-MI commands). Also commands are listed in readme file 
https://github.com/buggins/mago/blob/master/MagoMI/mago-mi/README.md


I didn't try DDT with mago-mi, and so I'm not sure which commands 
must be supported by debugger to get it working with DDT.


To get list of commands DDT tries to use you can either add 
--log-file=magomi.log --log-level=TRACE to mago-mi command line 
or use debug build of mago-mi.
It will all STDIN data to log file, and report errors for 
unsupported commands.




Re: mago-mi: GDB/MI compatible frontend for Mago debugger

2016-05-17 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 17 May 2016 at 13:04:23 UTC, Bruno Medeiros wrote:
Interesting. I was about to ask what was the main advantage 
over GDB? I reckon it is that Mago can debug executables with 
the COFF and/or OMF formats, right? (as opposed to GDB's DWARF 
format)


Mago currently has the best D language support on Windows. Can 
debug DMD generated executables.


Do you know any GDB version + compiler version which works ok on 
Windows?
Even w/o D demangling. At least able to create breakpoints, step, 
continue, examining threads, stack frames, local variables. In 
gdb+gdc combination I tried, gdb shows global variables instead 
of stack variables.


Does DDT work ok with GDB on Windows? What compiler can be used 
to get GDB debugging working?




Re: LDC 1.0.0-beta2 has been released!

2016-05-17 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 17 May 2016 at 05:51:29 UTC, Kai Nacke wrote:

Hi everyone,

LDC 1.0.0-beta2, the LLVM-based D compiler, is available for 
download!
This BETA release is based on the 2.070.2 frontend and standard 
library and supports LLVM 3.5-3.8.


The 1.0 release will be a major milestone. Please help testing 
to make it the best release ever!
We provide binaries for Linux, OX X, Win32 & Win64, Linux/ARM 
(armv7hf). :-)


As usual, you can find links to the changelog and the binary 
packages over at digitalmars.D.ldc:

http://forum.dlang.org/post/yryvlznqafivqznwz...@forum.dlang.org

Regards,
Kai


Does it contain Android support patches?



Re: It's alive! D building D building D, all on Android

2016-05-05 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 5 May 2016 at 08:17:07 UTC, Joakim wrote:
After a sleepless night of trying to build the latest ldc 
master branch 2.070.2 on my Android tablet a couple nights ago, 
almost the full druntime/phobos standard library test suite 
passes (only one assert in std.conv) and the same for the dmd 
test suite, with a handful of failures across three modules 
exclusively testing C/C++ ABI compatibility.


Great work!



Re: Minecraft written in D - on Android

2016-04-26 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 26 April 2016 at 14:25:05 UTC, Benjamin Thaut wrote:

On Tuesday, 26 April 2016 at 08:42:21 UTC, Vadim Lopatin wrote:
Demo of DlangUI Scene3D engine - Minecraft-like voxel 
rendering - is available for Android/ARM.


Post screenshots please.


Screenshot from my android device:

http://imgur.com/gallery/7wVBk8E



Re: Minecraft written in D - on Android

2016-04-26 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 26 April 2016 at 14:05:19 UTC, WebFreak001 wrote:

On my android device it says "Failed to parse package"

Also where is the source at so I can run dub manually?


Dub build is available only for desktop.

For Android, clone repository

git clone --recursive https://github.com/buggins/dlangui.git

Go to dlangui/examples/dminer/android_project

Edit paths in file android_build_config.mk

export DLANGUI_DIR=$HOME/src/d/dlangui
export NDK=$HOME/android-ndk-r11c
export SDK=$HOME/android-sdk-linux
export LDC=$HOME/ldc2-android-arm-0.17.0-alpha2-linux-x86_64
export NDK_ARCH=x86_64
export JAVA_HOME=/usr/lib/jvm/java-8-oracle/

To build package, you will need Android NDK, SDK, LDC2 for 
android.
In Android SDK manager, download platform android-19 (Android 
4.4.X)


Build is tested only on Linux X64.

More build instructions:

https://github.com/buggins/dlangui/blob/master/examples/dminer/android_project/README.md




Re: DlangUI on Android

2016-04-23 Thread Vadim Lopatin via Digitalmars-d-announce

On Saturday, 23 April 2016 at 12:45:01 UTC, FrankLike wrote:

On Saturday, 23 April 2016 at 11:42:49 UTC, Vadim Lopatin wrote:

[...]


Thank you.
But why nothing to be shown,only black color?


Probably something is wrong with OpenGL.
E.g. OpenGL ES3 is not supported.
Log can should failed opengl calls.



Re: DlangUI on Android

2016-04-23 Thread Vadim Lopatin via Digitalmars-d-announce

On Saturday, 23 April 2016 at 11:21:10 UTC, FrankLike wrote:

On Friday, 22 April 2016 at 17:02:20 UTC, Vadim Lopatin wrote:


Does it crash instantly or shows app GUI for some time?
Is your smartphone arm-based?
test-runner.apk is ok,but DLangUITetrisExample.apk and 
DlangUIHelloWorld.apk ,only shows black color.

HTC Android 5.02 ,it's arm-based,Not ok, sorry.
Where is the log file? Path?


Log messages are in Android system log.
On older androids, application CatLog (available on Market) was 
able to store logs to file. But on latest android, app cannot 
read logs of other applications, and CatLog shows none useful.
You can try CatLog, but if it does not work (if you cannot see 
any messages with 'dlangui' tag), the only way to get logs I know 
is to use 'adb' utility from Android SDK.
Download Android SDK, unpack to some folder, use 
sdk/platform-tools/adb utility.

Connect device to pc using USB.
`adb logcat` from commandline shows log messages from device.
run `adb logcat > log.txt`, then start program which crashes on 
device, then press Ctrl+C to stop adb logcat. Now file log.txt 
should contain logs with crash.


Re: DlangUI on Android

2016-04-22 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 22 April 2016 at 18:49:24 UTC, Laeeth Isharc wrote:
This is a very exciting development.  (And impressive in the 
'consequent' department, as the Germans say - you said you 
would have DlangUI ported to Android some weeks after the 
working compiler, and that's what you did!).


It took about one week to make DlangUI android backend once I 
managed to build NativeActivity example by Joakim's instructions.


I would say it will take a week or too to make iOS backend once 
we have working compiler for iOS (in my estimations it will have 
1K-2K lines of D code and 1K-2K lines of obj-c code.


Unfortunately, I have no experience with objective C neither with 
iOS programming.


Android port was easy for me because DlangUI was a kind of 
port/reimplementation of my C++ cross platform GUI library I used 
for my CoolReader GL project (e-book reader).


Might be useful for me to port some D code for internal 
enterprise apps to Android that currently runs on linux (I 
recognise how experimental it is, but I'm okay with that since 
mobile is just nice to have, and not yet necessary).
Please let me know issue you face when using DlangUI for mobile 
development.



Will you be at dconf?

No, I'm not planning to participate.
D is just a hobby for me.




Re: DlangUI on Android

2016-04-22 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 22 April 2016 at 18:48:26 UTC, David Nadlinger wrote:

This is a reality now mostly due to Joakim's great LDC work.


Yes, it's really GREAT work!
I just took his NativeActivity example and modified a bit to make 
dlangui's platform class implementation.


I would be nice to have all Joakim's patches in upstream LDC and 
druntime/phobos.




Re: DlangUI on Android

2016-04-22 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 22 April 2016 at 15:02:32 UTC, FrankLike wrote:
You can downlowd sample APK: 
https://sourceforge.net/projects/crengine/files/DlangUI/


DlangUI Tetris example now works ok on Android (arm, 
android4.4+)


Android5.02 ,Not ok, sorry.


Does it crash instantly or shows app GUI for some time?
Is your smartphone arm-based?
Couldn't you collect logs with `adb logcat`?



Re: DlangUI on Android

2016-04-22 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 22 April 2016 at 13:41:52 UTC, Mike Parker wrote:
I was late, but I have since gotten this taken care of, so it's 
all golden.


FYI, for anyone facing a similar problem in the future and is 
hung up waiting on me to merge a pull request, the base loader 
in DerelictUtil allows overriding the default library names. So 
instead of a library like DLangUI requiring a patched Derelict 
package, you could do this:


version(Derelict_OS_Android)
DerelictFT.load("libft2.so");

You can pass multiple library names as a single, 
comma-separated string:


DerelictFT.load("libft2.so,libfreetype.so");

Or as an array (which is what the above is converted to 
internally anyway):


DerelictFT.load(["libft2.so", "libfreetype.so"]);


Thank you for your help! I've updated dlangui dub.json with 
latest DerelictFT.




Re: LDC now supports Windows MSVC x86/x64 as first class targets

2016-04-21 Thread Vadim Lopatin via Digitalmars-d-announce

On Monday, 28 March 2016 at 05:56:07 UTC, Joakim wrote:

On Monday, 28 March 2016 at 05:52:34 UTC, Corey Lubin wrote:

On Saturday, 19 March 2016 at 13:23:48 UTC, kinke wrote:

[...]


Truly great news. Thank you Rainer, if you're reading this. (I 
don't think you ever take a break, do you? :])


Awesome progress, LDC team. Your challenging work is much 
appreciated.



(P.S.: On a related front, any news on the Android on ARM 
work? Last I read, my understanding was that the problem you 
were running into was a lack of proper LLVM TLS support for 
the platform? Is my recollection correct?)


Try it out, beta coming up:

https://github.com/joakim-noah/android/releases


Great work!

I've used it for Android support in DlangUI

http://forum.dlang.org/post/cdekkumjynhqoxvmg...@forum.dlang.org




Re: DlangUI on Android

2016-04-21 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 21 April 2016 at 13:28:18 UTC, Vadim Lopatin wrote:

Hello,

I've implemented initial support of Android in DlangUI.



Forgot to add that DerelictFT patch is required for 
DlangUI/Android.

(Freetype library has name libft2.so on Android)

PR is submitted, but not yet integrated into DerelictFT:

https://github.com/DerelictOrg/DerelictFT/pull/9


PS:
Current build is using android-19 API (Android 4.4 Kitkat) due to 
GLES3 dependency.

Will provide support of older platforms later, if needed.



Re: DlangUI on Android

2016-04-21 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 21 April 2016 at 14:48:40 UTC, ANtlord wrote:

On Thursday, 21 April 2016 at 13:28:18 UTC, Vadim Lopatin wrote:

Hello,

I've implemented initial support of Android in DlangUI.


Am I sleeping? Can we develop UI applications for Android on D? 
It's great!


Yes, and the same code may run on both desktops and Android.



DlangUI on Android

2016-04-21 Thread Vadim Lopatin via Digitalmars-d-announce

Hello,

I've implemented initial support of Android in DlangUI.

Only armv7a architecture is supported so far.

You can downlowd sample APK: 
https://sourceforge.net/projects/crengine/files/DlangUI/



How to add support of Android to your DlangUI project.
=

Copy dlangui/android/android_project directory to you DlangUI 
project directory.



Probably you will want to change android package name in 
AndroidManifest.xml and application display name in 
res/values/strings.xml



Modify android_app.mk, android_build_config.mk

android_app.mk
==

Update LOCAL_SRC_FILES to include all your project's files.


android_build_config.mk
===

Update paths to Android NDK, SDK, DlangUI source directory.

Default values:
export DLANGUI_DIR=$HOME/src/d/dlangui
export NDK=$HOME/android-ndk-r11c
export SDK=$HOME/android-sdk-linux
export LDC=$HOME/ldc2-android-arm-0.17.0-alpha2-linux-x86_64
export NDK_ARCH=x86_64


Use LDC cross compiler for armv7a build according instructions

https://wiki.dlang.org/Build_LDC_for_Android#Build_a_sample_OpenGL_Android_app_ported_to_D




New example IRC Client for DlangUI

2016-03-19 Thread Vadim Lopatin via Digitalmars-d-announce

Hello,

I've added new example for DlangUI - IRC Client.
It's located in dlangui/examples/ircclient and available as 
dlangui:ircclient package.


For this application, AsyncSocket implementation is added to 
DlangUI.


Best regards,
 Vadim


Re: Ever want to compile D on your Android phone? Well, now you can!

2016-01-27 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 27 January 2016 at 07:48:53 UTC, Joakim wrote:
On Wednesday, 27 January 2016 at 06:04:43 UTC, Laeeth Isharc 
wrote:

https://www.reddit.com/r/programming/comments/42w404/dlang_llvmbacked_compiler_alpha_release_for/
I've updated the gist and wiki page to take that change into 
account; simply download the new gist, as shown on a reloaded 
wiki page.


Thank you!

I've sent pull request to fix GLES2 build errors, and to create 
dub.json


Could you please register your project on code.dlang.org as DUB 
package?


I'm going to use it as a dependency in DlangUI


Re: Ever want to compile D on your Android phone? Well, now you can!

2016-01-26 Thread Vadim Lopatin via Digitalmars-d-announce

On Sunday, 24 January 2016 at 15:12:30 UTC, Joakim wrote:
If you have a D/OpenGL app you'd like to port to Android and 
submit to the Play Store, let me know if I can help with that 
process.


I'm going to port DlangUI on Android in nearest future.



Re: DlangIDE update

2016-01-26 Thread Vadim Lopatin via Digitalmars-d-announce

On Monday, 25 January 2016 at 20:00:57 UTC, Basile B. wrote:
On Tuesday, 8 December 2015 at 15:58:43 UTC, Vadim Lopatin 
wrote:

- integration of DML GUI builder (Delphi like)


Can you explain me how do you think it can be done while there 
is even no official object streaming for D ?


Just one thing: "@widget" is not enough.

I don't know how to explain you the problem. But let's say you 
have an object inspector that displays the properties of an 
object. The D way doesn't work (templates). You won't be able 
to assign an untyped Object to an inspector if your object 
doesn't store runtime informations. It's just impossible. 
Furthemore properties are not just for the visual things...


You won't be able to make a good run-time designer "à la 
Delphi" until the D standard library gets a serialization 
library. And when this will happen, you won't be able to use 
this serialization library because it won't work at run-time 
(object inspectors, property bindings, etc.).


It won't work.


Currently it's being done by adding lines like following into 
modules which contain widgets to publish:


import dlangui.widgets.metadata;
mixin(registerWidgets!(Widget, TextWidget, ScrollBar, 
CanvasWidget)());


Unless widgets are registered, it's impossible to create them 
from DML like this:


auto layout = parseDML!VerticalLayout(q{
VerticalLayout {
layoutWidth: fill; layoutHeight: fill; backgroundColor: 
#FF8080

TextWidget { text: "Input text here" }
EditLine { id: edName  }
}
});

Sample DML editor:
dub run dlangui:dmledit



Re: DlangUI

2016-01-14 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 18:13:36 UTC, Vadim Lopatin wrote:
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.


OpenGLDrawable is implemented - allows to use custom OpenGL 
drawing inside DlangUI.


E.g. it's possible to draw something with OpenGL as a background, 
and put UI on top of it.


Sample: dub run dlangui:opengl


Other changes:

A lot of fixes, mainly found while DlangIDE development.

OpenGL support code refactoring and optimizations contributed by 
Viktor Makhotkin (gazer).


Dependencies now are git submodules - when developing with 
VisualD/MonoD - no more manual cloning of dependency repos is 
required.


Porting of XML/CSS visualization engine from my C++ project 
CoolReader is started.





Re: DlangIDE project update

2016-01-14 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 8 December 2015 at 15:58:43 UTC, Vadim Lopatin wrote:

DlangIDE is getting close to usable.
DlangIDE is and IDE for D programming language written in D 
using DlangUI library.

[...]


Recent changes:

DCD is now integrated as a library instead of using commandline 
dcdclient/dcdserver --contrubuted by Keywan Ghadami


GDB support fixes

Some crashes fixed


Re: New D tool releases

2016-01-14 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 14 January 2016 at 13:27:40 UTC, Suliman wrote:

dsymbol: Symbol resolution code used by DCD and D-Scanner


Could anybody explain where it can be helpful and how it's work?


dfmt: formats source code
dfix: helps to migrate your code from older compiler versions to 
newer

D-Scanner: scans D project for potential problems/bugs




Re: DLanguage IntelliJ plugin released

2015-12-25 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 25 December 2015 at 10:41:26 UTC, Kingsley wrote:

Hi

I have released an initial attempt at an IntelliJ plugin for D 
to the jetbrains plugin repository.


It's DLanguage version 1.2

It has basic syntax highlighting, autocompletion with DCD, 
compile checking and linting with Dscanner, code formatting 
with Dfmt and navigation jump to classes and functions and dub 
support - recommend using dub


See the GitHub page screenshots for an idea

Enjoy :)

--Kingsley


Great!

Does it have debugging support?



Re: DlangIDE - initial GDB debugger support

2015-12-21 Thread Vadim Lopatin via Digitalmars-d-announce

On Sunday, 20 December 2015 at 13:53:33 UTC, default0 wrote:
This is quick progress! Awesome! I finally have some free time 
on my hands, so I deleted my workspace and tried to set things 
up following the How to hack on DlangIDE steps again. After 
doing that and trying to compile on Debug/Win32 I get output 
with a linker error:

...
Any help in somehow getting this all to build would be much 
appreciated. Oh and of course "dub run" works just fine.


For me, Visual Studio 2015 Community Edition + recent Visual D 
works ok.
Try to create some helloworld project using VisualD and build it. 
Does it work?


Clone dlangui and dlangide into the same directory (!!!)
Inside dlangui directory create directory /deps and clone 
dependencies into it (as described in readme).

Open dlangui/dlangui-msvc.sln
In workspace, select dlangide as a startup project.
Build dlangide.

As well you can try to build other projects (e.g. dmledit, 
tetris, example1) - does it work?


Re: DlangIDE - initial GDB debugger support

2015-12-18 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 17 December 2015 at 08:27:05 UTC, ZombineDev wrote:

Initial GDB debugging support is implemented.

You can start / stop debugging, set breakpoints, step 
in/out/over, continue.


TODO: stack trace & local variables display


As well, following features implemented:
- bookmarks in source files (toggle, go to next/prev)
- recent workspace list


Exellent progress! Congrats!


GDB support improvements: stack and local variables windows added.



Re: DlangUI

2015-12-18 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 18 December 2015 at 13:56:00 UTC, Suliman wrote:
In general I don't care about that sort of thing, but there 
is one exception: the main application menu. Unity and Aqua 
(OS X) both end up feeling odd if you don't use the system 
one.


Completely agree.
Once Cocoa backend is ready I'm going to implement native OSX 
menus.


Would it be possible to add native menu for Windows? I think 
all font-related stuff is should be look native or use native 
controls. Because Apps that can't handle non standard system 
DPI looks very bad.


I see no point in implementing native Windows menus.
For high DPI, DlangUI supports loading different drawables for 
different resources, and you can specify font sizes and control 
dimensions in points or millimeters instead of pixels.

(It's similar to Android)


Re: DlangUI

2015-12-17 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 16 December 2015 at 16:17:00 UTC, karabuta wrote:

On Tuesday, 14 April 2015 at 11:18:38 UTC, Vadim Lopatin wrote:

Maybe tutorial on Menus, tabs, list view, and a little excell 
app


I started to work on Spreadsheet (Excel like app) example
dub run dlangui:spreadsheet
(dlangui/examples/spreadsheet)

Its implementation is in the very beginning. Worksheet split view 
support development is in progress.







Re: DlangUI

2015-12-17 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 16 December 2015 at 13:32:21 UTC, Suliman wrote:
Is it's possible to use some native frontend with dlangui 
instead of drawing all controls with OpenGL? I really dislike 
how all OpenGL toolkit looks like.


OpenGL is just hardware acceleration for drawing. Resulting 
picture is the same for both OpenGL and software rendering.


DlangUI will never use native controls. It draws all widgets 
itself.

But look and feel can be changed by providing custom theme.
You can create theme (set of .xml and .png files) to get DlangUI 
app looking exactly like native one.


Is it's possible to make dlangui fully compatibility with QML 
to be able easy migrate visual components from Qt solution to 
dlangui?


No. It's not planned at least for now.



Re: DlangUI

2015-12-17 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 17 December 2015 at 16:21:58 UTC, John Colvin wrote:
DlangUI will never use native controls. It draws all widgets 
itself.

But look and feel can be changed by providing custom theme.
You can create theme (set of .xml and .png files) to get 
DlangUI app looking exactly like native one.


In general I don't care about that sort of thing, but there is 
one exception: the main application menu. Unity and Aqua (OS X) 
both end up feeling odd if you don't use the system one.


Completely agree.
Once Cocoa backend is ready I'm going to implement native OSX 
menus.




Re: DlangIDE - initial GDB debugger support

2015-12-16 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 8 December 2015 at 15:58:43 UTC, Vadim Lopatin wrote:

Hello,

DlangIDE is getting close to usable.
DlangIDE is and IDE for D programming language written in D 
using DlangUI library.


Project page: https://github.com/buggins/dlangide

To try, use `dub fetch dlangide && dub run dlangide` try to 
create and run DlangUI Helloworld project, or open Tetris 
project from workspaces/tetris.


Initial GDB debugging support is implemented.

You can start / stop debugging, set breakpoints, step 
in/out/over, continue.


TODO: stack trace & local variables display


As well, following features implemented:
- bookmarks in source files (toggle, go to next/prev)
- recent workspace list




Re: DlangIDE update

2015-12-10 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 8 December 2015 at 15:58:43 UTC, Vadim Lopatin wrote:

Hello,

DlangIDE is getting close to usable.
DlangIDE is and IDE for D programming language written in D 
using DlangUI library.


Project page: https://github.com/buggins/dlangide


Recent changes:

Settings for DUB, GDB, DMD, LDC, GDC, xterm.
Project settings allow to select toolchain, architecture for 
building, commandline parameters and working directory for 
running.
Running of project is done as spawn instead of DUB run. External 
terminal is supported.

New project wizard is improved.
New source file wizard added.
Workspace tree context menus allow to add/remove projects, files, 
build/clean/rebuild/run projects.


Current activity: GDB debugging support.



Re: DlangIDE update

2015-12-09 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 9 December 2015 at 09:18:37 UTC, default0 wrote:
One of the things I did manage to try was putting a readln() 
into the standard hello-world-console-app preset. Turns out 
that it causes dlangide to hang up because it's not actually 
possible to have user input (or to configure dlangide to 
start the project separately so a regular console window 
appears). Killing the started process also was not possible 
since the respective option to stop debugging is still grayed 
out.
Input hangs because running currently is just invoking of `dub 
run` - with input and output redirected. Output is shown in 
IDE message log, but for input just nothing is sent.
I'm working on debugging, and as well will implement running 
apps w/o debugger with separate console.


Sounds good! When the typical edit-compile-debug cycle works 
this will probably already be enough to start using it for 
smaller projects :-)


Running in external console is implemented.
Run button now starts dub build, and if build is successful 
executes program in external console.

Stop button added.
Xterm is used as external console on posix.

Tested under windows and linux.



Re: DlangIDE update

2015-12-09 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 9 December 2015 at 09:18:37 UTC, default0 wrote:
I still haven't written much D code and my time is somewhat 
limited, but if there are simple tasks you need to get done, 
I would be glad to offer help!

It would be great.

Will be looking through GitHub and try to set DlangUI etc. up 
locally, too and see what I can do :-)


Added development environment setup instructions (VisualD, 
Mono-D) to README.




Re: DlangIDE update

2015-12-09 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 9 December 2015 at 15:31:46 UTC, default0 wrote:
On Wednesday, 9 December 2015 at 12:10:33 UTC, Vadim Lopatin 
Thanks for the instructions! I followed them, but when I tried 
to build in Visual Studio, I got the following error:

C:\Users\Administrator\Documents\DCode\DlangUI\src\dlangui\graphics\images.d(34):
 Error: module io is in file 'dlib\image\io\io.d' which cannot be read

...
I checked the import path[9] it listed, and relative to that 
path, there is the dlib/image/io/io.d file (ie in 
"C:\Users\Administrator\Documents\DCode\DlangUI\..\dlib\dlib\image\io\io.d"). I'm not sure why it doesn't find that file, despite listing a path that contains this file in the imports (and has the necessary permissions for reading it, and the file obviously not being used by anything). I'm using Visual D.


Pretty stumped on that right now, building with dub obviously 
works, and I suppose I could then attach the debugger from 
within Visual Studio, but that's not a workflow I'm looking 
forward to (nor do I know if it works the way I hope)...


Looks like you have opened obsolete project.
Deps should be in dlangui/deps, not in dlangui/..
Probably, you have used old build instructions.
See at end of dlangide's README.md
Open dlangui/dlangui-msvc.sln



Re: DlangIDE update

2015-12-09 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 9 December 2015 at 19:24:19 UTC, default0 wrote:
I should mention that the dlangui\.. is some build artifact, 
too, the files are in dlangui\deps locally (it probably tries 
to shorten the path name?)


I found that I forgot to change project import paths for all 
configurations.
I used Debug/X64 only so did not notice it. You probably using 
Debug/win32.


Fixed. Project file is updated.



DlangIDE update

2015-12-08 Thread Vadim Lopatin via Digitalmars-d-announce

Hello,

DlangIDE is getting close to usable.
DlangIDE is and IDE for D programming language written in D using 
DlangUI library.


Project page: https://github.com/buggins/dlangide

To try, use `dub fetch dlangide && dub run dlangide` try to 
create and run DlangUI Helloworld project, or open Tetris project 
from workspaces/tetris.


Supported platforms: win32, linux, osx.

DlangIDE uses DUB to build and run projects, DUB .json as project 
format, DCD for code completion.
For code completion / go to references functionality, you need to 
build dcd-server and dcd-client executables from 
https://github.com/Hackerpilot/DCD.git and put them to some of 
PATH dirs.


Recent changes:
- New Project wizard
- New source file wizard
- Add / remove project files, refresh workspace
- A lot of bugfixes

Current activities:
- GDB MI debugger support
- integration of DML GUI builder (Delphi like)

DlangUI: https://github.com/buggins/dlangui

Recent DlangUI changes:
- MonoD and VisualD projects for development under Windows, 
Linux, OSX.

- pure X11 backend implemented to avoid SDL dependency
- dmledit app for editing DML
- spreadsheet example (excel like app, just started)
- a lot of bugfixes

Try dlangui:tetris, dlangui:example1, dlangui:dmledit examples.


Best regards,
Vadim



Re: DlangIDE update

2015-12-08 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 8 December 2015 at 18:18:29 UTC, default0 wrote:

Sweet! Glad you're back and working on this!
Was wanting to give it a shot, but typing } on my keyboard 
(german layout, right-alt + 0) did not actually insert the 
character into the opened document, so I gave up.
What is a platform? Linux with SDL? How do I reproduce it? Could 
you please submit a bug on github?


Most of the UI stuff looks really neat (especially like the 
directory structure preview when creating a new 
project/workspace), but obviously still needs a lot of work 
(you cannot drag dialogs around, fe).
Dialogs are currently displayed as popup widgets instead of 
separate windows due to issue with OpenGL contexts under Win32 
when multiple windows are being used.


One of the things I did manage to try was putting a readln() 
into the standard hello-world-console-app preset. Turns out 
that it causes dlangide to hang up because it's not actually 
possible to have user input (or to configure dlangide to start 
the project separately so a regular console window appears). 
Killing the started process also was not possible since the 
respective option to stop debugging is still grayed out.
Input hangs because running currently is just invoking of `dub 
run` - with input and output redirected. Output is shown in IDE 
message log, but for input just nothing is sent.
I'm working on debugging, and as well will implement running apps 
w/o debugger with separate console.


From the looks of it, this is very promising though. I like the 
Workspace layout and the general feel of the IDE (very 
responsive, very clean) and it all kind of makes me wish it 
wouldn already have enough features (especially debugging!) to 
be a viable option.

Debugging is high priority task now.

I still haven't written much D code and my time is somewhat 
limited, but if there are simple tasks you need to get done, I 
would be glad to offer help!

It would be great.


Here's to hoping this IDE will keep going and turn out well :-)
I think for programming language, it's big + to have native GUI 
library and IDE written in the same language. Adding Delphi style 
GUI builder could attract newbies.




Re: DlangIDE update

2015-12-08 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 8 December 2015 at 23:45:47 UTC, Chris Wright wrote:

Awesome!

Is there any chance of bundling DCD? It would be a lot more 
convenient if I didn't even have to think about getting another 
completion program and running it on my project.


For win32, it's bundled with dcd-client and dcd-server binaries 
(although of quite old version).
For mac, I suppose there should not be a problem too to add dcd 
binaries.
But for Linux I'm unsure how to build DCD which is able to work 
on all distributions.




Re: DlangIDE

2015-05-13 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 12 May 2015 at 21:03:05 UTC, JohnnyK wrote:

On Friday, 6 February 2015 at 14:03:07 UTC, Vadim Lopatin wrote:

Hello,

I'm working on cross-platform D language IDE - DlangIDE.
It's written in D using DlangUI based GUI.

Project on GitHub: https://github.com/buggins/dlangide

It's in alpha stage but already allows:

* Open DUB based projects
* Edit source files
* Build and run projects using DUB
* D source code syntax highlight

Requires DUB for building projects.

Features missing so far:

* Debugging support
* Code completion
* Code folding
* Go to definition
* Smart indentation

Best regards,
  Vadim


Is DUB required to install and use the IDE?


DUB is required to build IDE, and to build and run projects using
IDE.


Re: DlangIDE

2015-05-12 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 8 May 2015 at 17:26:18 UTC, Chris wrote:

On Tuesday, 10 March 2015 at 10:39:16 UTC, Vadim Lopatin wrote:
On Friday, 6 February 2015 at 14:03:07 UTC, Vadim Lopatin 
wrote:

Hello,

I'm working on cross-platform D language IDE - DlangIDE.
It's written in D using DlangUI based GUI.

Project on GitHub: https://github.com/buggins/dlangide

It's in alpha stage but already allows:

* Open DUB based projects
* Edit source files
* Build and run projects using DUB
* D source code syntax highlight

Requires DUB for building projects.

Features missing so far:

* Debugging support
* Code completion
* Code folding
* Go to definition
* Smart indentation



Recent changes in DlangIDE:

Settings dialog added (editor settings and UI options, 
including options for tuning of font rendering)

Dark theme implemented (available for all DlangUI apps as well)
Search feature - contributed by Freakazo

Best regards,
   Vadim


Does DlangIDE offer plugin mechanisms? Would be great, if we 
could write plugins.


Plugins are not planned in nearest future. IMHO so far it's 
better just to embed functionality into app.


Re: DlangUI

2015-05-06 Thread Vadim Lopatin via Digitalmars-d-announce

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



Project Update:

FontConfig support is added for Linux builds
Examples available on https://github.com/buggins/dlangui-examples
Getting Started tutorial: 
https://github.com/buggins/dlangui/wiki/Getting-Started

Some bugs fixed


Re: Loading of widgets from DML markup and DML Editor in DlangUI

2015-04-14 Thread Vadim Lopatin via Digitalmars-d-announce

On Friday, 10 April 2015 at 19:26:28 UTC, Jonas Drewsen wrote:

Cool!

I am not really that much into qml... but isn't much of the 
power of qml coming from using javascript to do logic and 
bindings?


Can you do D code stuff in the DML markup to handle that part 
e.g. by mixin of the DML?


Keep up the good work.

/Jonas


So far, I'm going to implement

* automatic mapping of loaded widgets to member variables (based 
on matching of widget id and variable names, or, possible mixin 
adding of member variables for all of widgets with ids)


* automatic mapping of loaded widget signals to handlers

Mixing in handlers written in D from DML is possible, in some of 
future implementations. So far, I'm not sure that it's better 
than just having external signal handlers automatically mapped, 
e.g. by name.


sample DML:
{
HorizontalLayout {
TextWidget { text: Enter file name: }
EditLine {
id: edFileName

}
Button {
id: btnOpen
text: Open
click = onBtnOpenClick
}
}
}

...
// class members
EditLine _edFileName;
bool onBtnOpenClick(Widget src) {
window.showMessageBox(Opend, File name:d ~ 
_edFileName.text);

return true;
}

Member variable `EditLine _edFileName;` could be added 
automatically by mixin, or at least it's value can be initialized 
on load
Signal handler may be assigned either if explicitly defined in 
DML (`click = onBtnOpenClick` means widget click signal should be 
connected to member function onBtnOpenClick) or just found based 
on widget Id and signal name (e.g. if there is widget with 
id=btnOpen and class method onBtnOpenClick - loader mixin could 
automatically decide to assign this method as signal handler of 
widget (like it's dont in VB).


I'm not sure if alternative definition is better

Button {
id: btnOpen
text: Open
click = { window.showMessageBox(Opend, File 
name:d ~ edFileName.text); }

}



Re: DlangUI

2015-04-14 Thread Vadim Lopatin via Digitalmars-d-announce

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


I've added first DlangUI tutorial on DlangUI Wiki:

https://github.com/buggins/dlangui/wiki/Getting-Started

It covers creation of simple DlangUI helloworld project, and then 
illustrates layouts, standard controls, DML, and signals.


Source code for all examples is available on GitHub

https://github.com/buggins/dlangui-examples

I'm looking forward for ideas for next tutorials.


Re: DlangUI

2015-04-13 Thread Vadim Lopatin via Digitalmars-d-announce

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 
worldd).textColor(0xFF); // 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@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`




Re: DlangUI

2015-04-12 Thread Vadim Lopatin via Digitalmars-d-announce

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\dlanguidub 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


Re: Loading of widgets from DML markup and DML Editor in DlangUI

2015-04-02 Thread Vadim Lopatin via Digitalmars-d-announce

On Thursday, 2 April 2015 at 13:56:05 UTC, ketmar wrote:
are there any plans to add cassowary solver[1] to DlangUI? i 
believe i

seen D port of it (my own is not usable with DMD).

[1] https://constraints.cs.washington.edu/cassowary/


How could it be useful for DlangUI?
Some advanced kind of layout?


Loading of widgets from DML markup and DML Editor in DlangUI

2015-04-02 Thread Vadim Lopatin via Digitalmars-d-announce

Hello,

Useful feature is added to DlangUI.

You can write UI layout as QML-like code, and load it in runtime 
from file, resource, or just string constant.



Instead of manual creation of widgets in code, you may write like 
this:


==
module app;

import dlangui;

mixin APP_ENTRY_POINT;

/// entry point for dlangui based application
extern (C) int UIAppMain(string[] args) {
// create window
Window window = Platform.instance.createWindow(DlangUI 
example - HelloWorld, null);


// create some widget to show in window
window.mainWidget = parseML(q{
VerticalLayout {
margins: 10
padding: 10
backgroundColor: #C0E0E070 // semitransparent 
yellow background
// red bold text with size = 150% of base style 
size and font face Arial
TextWidget { text: Hello World example for 
DlangUI; textColor: red; fontSize: 150%; fontWeight: 800; 
fontFace: Arial }
// arrange controls as form - table with two 
columns

TableLayout {
colCount: 2
TextWidget { text: param 1 }
EditLine { id: edit1; text: some text }
TextWidget { text: param 2 }
EditLine { id: edit2; text: some text for 
param2 }

TextWidget { text: some radio buttons }
// arrange some radio buttons vertically
VerticalLayout {
RadioButton { id: rb1; text: Item 1 }
RadioButton { id: rb2; text: Item 2 }
RadioButton { id: rb3; text: Item 3 }
}
TextWidget { text: and checkboxes }
// arrange some checkboxes horizontally
HorizontalLayout {
CheckBox { id: cb1; text: checkbox 1 }
CheckBox { id: cb2; text: checkbox 2 }
}
}
HorizontalLayout {
Button { id: btnOk; text: Ok }
Button { id: btnCancel; text: Cancel }
}
}
});
// you can access loaded items by id - e.g. to assign 
signal listeners
auto edit1 = 
window.mainWidget.childById!EditLine(edit1);
auto edit2 = 
window.mainWidget.childById!EditLine(edit2);

// close window on Cancel button click

window.mainWidget.childById!Button(btnCancel).onClickListener = 
delegate(Widget w) {

window.close();
return true;
};
// show message box with content of editors

window.mainWidget.childById!Button(btnOk).onClickListener = 
delegate(Widget w) {

window.showMessageBox(UIString(Ok button pressedd),
  UIString(Editors 
content\nEdit1: d ~ edit1.text ~ \nEdit2: d ~ edit2.text));

return true;
};

// show window
window.show();

// run message loop
return Platform.instance.enterMessageLoop();
}
==

Function parseML loads widgets from code written in DML language.


There is DMLEdit sample app in DlangUI/examples directory.

You can run it with dub:


dub run dlangui:dmledit


It allows to edit QML text and see how it will look like when 
loaded into app (F5 refreshes view).


Syntax highlight, bracket matching, go to error and other useful 
features are implemented.


TODOs:
* automatic mapping of loaded widgets to member variables (e.g. 
by matching of widget id and variable names)
* automatic assignment of signal listeners to member functions, 
according to DML or just based on signal name and widget id (e.g. 
onButton1Click method may be connected to widget with 
id=Button1 signal click )



I hope this enhancement will be useful.


Best regards,
Vadim


Re: dsq-1: open-source software synthesizer

2015-03-30 Thread Vadim Lopatin via Digitalmars-d-announce

On Monday, 30 March 2015 at 06:26:00 UTC, ketmar wrote:

On Mon, 30 Mar 2015 19:17:35 +1300, Rikki Cattermole wrote:


On 30/03/2015 7:14 p.m., ketmar wrote:

On Mon, 30 Mar 2015 18:54:42 +1300, Rikki Cattermole wrote:


On 30/03/2015 6:35 p.m., ketmar wrote:

On Mon, 30 Mar 2015 18:23:11 +1300, Rikki Cattermole wrote:

Although I'm a little concerned because dub is meant to 
validate and

tell you conflicts in licenses.


O_O


Hey hey hey, context matters!


i'm speechless 'cause it's a great idea (let machine do it 
work!), but
i'm not sure how this can be done with wide broad of licenses 
out here.


and i definetely want to see std.license.compare in Phobos! 
;-)


I agree, I'm concerned about this as well. But hey, its one of 
the

features the dub developers want to have.


what i really want to have is libdub. i.e. turning dub to 
library, so
it can be easily integrated in any D project (rdmd comes to 
mind first).
i don't want D building abilities, for example, but i really 
like to use
it's package management part (and get list of files and 
compiler flags

for that packages).

sure, i can do this by parsing dub jsons and execing dub itself 
to do

package management work, but libdub is better...

maybe someday i'll wrote such thing. ;-)


+1

E.g. using libdub in my project DlangIDE would be much easy than 
command line interface.


Re: DlangUI

2015-03-27 Thread Vadim Lopatin via Digitalmars-d-announce

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.




Re: DlangUI

2015-03-26 Thread Vadim Lopatin via Digitalmars-d-announce

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\dlanguidub 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`


Re: DlangUI

2015-03-25 Thread Vadim Lopatin via Digitalmars-d-announce

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.


DlangUI review and small tutorial is published on Habrahabr - 
popular russian IT resource (in Russian)


http://habrahabr.ru/post/253923/



Re: DlangUI

2015-03-23 Thread Vadim Lopatin via Digitalmars-d-announce

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.

..


Best regards,
 Vadim  coolreader@gmail.com



Project Update:
==

* Mac OSX OpenGL support fixed
* High DPI (Retina) displays interface scaling is implemented
* Separate resources for high DPI resolutions
* Font sizes in themes can be specified in points and % of parent 
size, in addition to pixels

* Dark theme is implemented
* Settings dialogs support widgets
* Multiline TextWidget
* A lot of bugfixes



  1   2   >