Re: Dash: An Open Source Game Engine in D

2014-05-20 Thread Mengu via Digitalmars-d-announce

On Monday, 19 May 2014 at 19:50:37 UTC, Colden Cullen wrote:

Hi everyone,

I’m super excited to be able to announce that the Dash game 
engine[1] is finally stable and ready for public use! I’m 
currently the Lead Engine Programmer at Circular Studios[2] 
(the group behind Dash). We had 14 people working on the team, 
6 engine programmers and 8 game developers creating Spectral 
Robot Task Force, a turn-based strategy game built with Dash.


Dash is an OpenGL engine written in the D language that runs on 
both Windows and Linux. We use a deferred-rendering model in 
the current pipeline, and a component model for game 
development and logic. Other major features at the moment 
include networking, skeletal-animation support, content and 
configuration loading via YAML, and UI support through 
Awesomium[3] (though we are in the process of moving over to 
using CEF[4] itself).


Our vision for Dash is to have the programmer-facing model of 
XNA/Monogame combined with the designer-friendliness of Unity 
in a fully free and open source engine. We also hope that Dash 
can help to prove the power and maturity of D as a language, as 
well as push D to continue improving.


We’re open to any feedback you may have, or better yet, we’d 
love to see pull requests for improvements.


[1] https://github.com/Circular-Studios/Dash
[2] http://circularstudios.com/
[3] http://awesomium.com/
[4] https://code.google.com/p/chromiumembedded/


seems you've made /r/gamedev community happy :)

thanks for the hard work and wish you all the best.


Re: Dash: An Open Source Game Engine in D

2014-05-20 Thread Jacob Carlborg via Digitalmars-d-announce

On 19/05/14 21:50, Colden Cullen wrote:

Hi everyone,

I’m super excited to be able to announce that the Dash game engine[1] is
finally stable and ready for public use! I’m currently the Lead Engine
Programmer at Circular Studios[2] (the group behind Dash). We had 14
people working on the team, 6 engine programmers and 8 game developers
creating Spectral Robot Task Force, a turn-based strategy game built
with Dash.

Dash is an OpenGL engine written in the D language that runs on both
Windows and Linux. We use a deferred-rendering model in the current
pipeline, and a component model for game development and logic. Other
major features at the moment include networking, skeletal-animation
support, content and configuration loading via YAML, and UI support
through Awesomium[3] (though we are in the process of moving over to
using CEF[4] itself).

Our vision for Dash is to have the programmer-facing model of
XNA/Monogame combined with the designer-friendliness of Unity in a fully
free and open source engine. We also hope that Dash can help to prove
the power and maturity of D as a language, as well as push D to continue
improving.

We’re open to any feedback you may have, or better yet, we’d love to see
pull requests for improvements.


This looks awesome :), but no support for OS X :(. What system is used 
to render windows, custom or something like SDL?


--
/Jacob Carlborg


D's timeline

2014-05-20 Thread Brad Roberts via Digitalmars-d-announce
I'm working on my presentation for the conference and I'm running out of time.  I'd like to ask you 
guys for some help locating a few dates:


1) When 0.x transitioned from alpha to beta
2) Was there a beta to release candidate transition for 0.x - 1.x? If so, when?  I have the 1.00 
release date, that one is easy.

3) When did the 2.x series switch similarly (alpha, beta, rc)?
4) When were the various platforms added to the release bundles?


Any other events you consider major in the history of D.  I've already got a bunch, but have room to 
include more and would hate to miss anything big.  We each have our own view on what's important and 
I won't promise to include ones mentioned, but I'd love to have more to consider including.


Please send them directly to me (bra...@puremagic.com) rather than follow up in the news group to 
avoid a long and not really appropriate for the announce group discussion.


Thanks,
Brad


Re: D's timeline

2014-05-20 Thread Jacob Carlborg via Digitalmars-d-announce

On 20/05/14 10:19, Brad Roberts via Digitalmars-d-announce wrote:

I'm working on my presentation for the conference and I'm running out of
time.  I'd like to ask you guys for some help locating a few dates:

1) When 0.x transitioned from alpha to beta
2) Was there a beta to release candidate transition for 0.x - 1.x? If
so, when?  I have the 1.00 release date, that one is easy.
3) When did the 2.x series switch similarly (alpha, beta, rc)?
4) When were the various platforms added to the release bundles?


Here is what I found out from the changelog:

* Linux 0.63 [1]
* OS X 32bit 1.040 [2], 2.025 [8]
* FreeBSD 2.053 [3], 1.043 [4]
* OS X 64bit 2.053 [3], 1.072 [5]
* Linux 64bit 2.052 [6], 1.067 [7]

[1] http://www.digitalmars.com/d/1.0/changelog1.html#new063
[2] http://www.digitalmars.com/d/1.0/changelog.html#new1_040
[3] http://dlang.org/changelog.html#new2_053
[4] http://www.digitalmars.com/d/1.0/changelog.html#new1_043
[5] http://www.digitalmars.com/d/1.0/changelog.html#new1_072
[6] http://dlang.org/changelog.html#new2_052
[7] http://www.digitalmars.com/d/1.0/changelog.html#new1_067
[8] http://dlang.org/changelog.html#new2_025

--
/Jacob Carlborg


Re: Dash: An Open Source Game Engine in D

2014-05-20 Thread Colden Cullen via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 06:26:50 UTC, Jacob Carlborg wrote:
This looks awesome :), but no support for OS X :(. What system 
is used to render windows, custom or something like SDL?


Right now we're using X11 on Linux and Win32 on Windows, but we 
are thinking about creating an adapter for SDL, which would 
provide OSX support. Theoretically the only thing holding us back 
is the windowing system.


Re: Dash: An Open Source Game Engine in D

2014-05-20 Thread Colden Cullen via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 05:22:54 UTC, Mineko wrote:
Wow, good stuff, very impressive, I'm making a engine myself 
called Breaker Engine (Coded in D), and I might just have to 
take a few tips from your engine.


Although I've neglected it for about 2 months now lol, I've 
been gathering data as my math is not so good..


If anything I make in my engine just happens to be anything I 
can apply to your team's engine, I'll be sure to contribute. :)


Seeing as how you're using a component system.. It's probably 
just coincidental, but would your project happen to have any 
relation to BennyQBD's engine? 
(https://github.com/BennyQBD/3DEngineCpp)


Also, I may have skipped over it in this thread, but what was 
your experience with the D GC in your engine?


Was it a problem?
Anyway, again, good work, I look forward to our future 
relationship as D game engine developers. :)


Thanks! We're always open to contributors, just drop by our 
Gitter room[1] and say hi if you've got any ideas, or if you'd 
just like something to do.


We are not related to BenyyQBD's engine, and I've never heard of 
it, but it does look kind of neat.


As far as the GC goes, we pretty much only use it during 
initialization (and boy do we). We try to limit allocations 
during the main loop as much as possible, so very rarely do we 
actually have the GC run while the game is running. As long as 
you know what you're doing it's a pretty easy problem to avoid.


[1] https://gitter.im/Circular-Studios/Dash


Re: Dash: An Open Source Game Engine in D

2014-05-20 Thread John Colvin via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 13:12:30 UTC, Colden Cullen wrote:

On Tuesday, 20 May 2014 at 05:22:54 UTC, Mineko wrote:
Wow, good stuff, very impressive, I'm making a engine myself 
called Breaker Engine (Coded in D), and I might just have to 
take a few tips from your engine.


Although I've neglected it for about 2 months now lol, I've 
been gathering data as my math is not so good..


If anything I make in my engine just happens to be anything I 
can apply to your team's engine, I'll be sure to contribute. :)


Seeing as how you're using a component system.. It's probably 
just coincidental, but would your project happen to have any 
relation to BennyQBD's engine? 
(https://github.com/BennyQBD/3DEngineCpp)


Also, I may have skipped over it in this thread, but what was 
your experience with the D GC in your engine?


Was it a problem?
Anyway, again, good work, I look forward to our future 
relationship as D game engine developers. :)


Thanks! We're always open to contributors, just drop by our 
Gitter room[1] and say hi if you've got any ideas, or if you'd 
just like something to do.


We are not related to BenyyQBD's engine, and I've never heard 
of it, but it does look kind of neat.


As far as the GC goes, we pretty much only use it during 
initialization (and boy do we).


I presume you force a collection before the main loop starts?


Re: DGui is alive

2014-05-20 Thread FrankLike via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 07:20:16 UTC, Denis Shelomovskij wrote:
DGui is a lightweight graphic library for Windows with API 
close to .NET's Windows Forms.


The library is written by Trogu Antonio Davide, but he isn't 
supporting it any longer so you can refer me as a current 
project manager.


One can get examples and OMF import libraries needed to build 
executables from Downloads section on project page.


Project repo page:
https://bitbucket.org/dgui/dgui/


Note:

The project API should be stable now, but lots of stylistic 
renames happened recently so if one has a huge codebase using 
old names and want to upgrade to current version you can 
contact me and I will prepare autorenaming scripts for you (I 
used it to do renaming anyway).


Sorry for API breakage, I just couldn't see all those C-style 
uppercased enums any more.



P.S.

I was waiting to be able to do planned API breaking changes 
before posting here so the announce is half a year later than 
the project resurrection date.


Good work!

DGui need some other controls,such as 
imageButton,DataView,GridViewe.t.c.


Thank you.

Frank


Re: DGui is alive

2014-05-20 Thread FrankLike via Digitalmars-d-announce


DGui is a lightweight graphic library for Windows with API 
close to .NET's Windows Forms.


DGui's codes are less than DFL,it's  a better thing.If it can 
work on Linux,Mac Os X,maybe change it by Base Class?

It's a huge work!

Thank you.

Frank



Re: Dash: An Open Source Game Engine in D

2014-05-20 Thread Colden Cullen via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 13:40:43 UTC, John Colvin wrote:

I presume you force a collection before the main loop starts?


Yup! As of very recently :)

https://github.com/Circular-Studios/Dash/commit/2535556f970752e8ab41a03e4416394c2ce9c79d


Re: DGui is alive

2014-05-20 Thread FrankLike via Digitalmars-d-announce

Can you put DGui into github.com  and code.dlang.org ?
Let all d's coders build on it!

Thank you.

Frank




Re: DGui is alive

2014-05-20 Thread Denis Shelomovskij via Digitalmars-d-announce

20.05.2014 18:11, FrankLike пишет:

Can you put DGui into github.com  and code.dlang.org ?
Let all d's coders build on it!

Thank you.

Frank




It is already in code.dlang.org. As for Github I have already answered 
here [1].


[1] http://forum.dlang.org/post/llf00b$2pl5$1...@digitalmars.com

--
Денис В. Шеломовский
Denis V. Shelomovskij


Re: Dash: An Open Source Game Engine in D

2014-05-20 Thread Jacob Carlborg via Digitalmars-d-announce

On 20/05/14 15:14, Colden Cullen wrote:


Right now we're using X11 on Linux and Win32 on Windows, but we are
thinking about creating an adapter for SDL, which would provide OSX
support. Theoretically the only thing holding us back is the windowing
system.


I see.

--
/Jacob Carlborg


Re: Gearing up for DConf 2014

2014-05-20 Thread Andrej Mitrovic via Digitalmars-d-announce

On Friday, 16 May 2014 at 17:16:57 UTC, Andrei Alexandrescu wrote:

We have secured livestreaming of the entire event.


Where will this be streamed btw? Twitch?


Re: Duml: Uml diagram generation

2014-05-20 Thread Rikki Cattermole via Digitalmars-d-announce

On 17/05/2014 6:34 p.m., Rikki Cattermole wrote:

Alright so a little project I've put together[0].
Not entirely complete yet. But I feel its at a point where it can be
announced.

What it does is given a class it'll generate the PlantUML[1] descriptors
for it. If asked it can call PlantUML itself to generate the image
version of it.

My plan is to integrate it into Cmsed at some point when it supports
structs (dvorm models). At which point it'll document properly routes,
models and any you manually specify.

Object class can be ignored by adding a version if you want it to be.

[0] https://github.com/rikkimax/Duml
[1] http://plantuml.sourceforge.net/


Just pushed another version.
Wouldn't normally mention this except for the fact that I've got it 
hooked up and exported out a uml diagram[0] of object module from drumtime.


Its nearly 6000 pixels wide, so a bit big ;)

[0] https://github.com/rikkimax/Duml/wiki/images/output_v0.2.0_object.png


Re: Livestreaming DConf?

2014-05-20 Thread Ali Çehreli via Digitalmars-d-announce

On 05/09/2014 12:48 PM, Andrei Alexandrescu wrote:

 livestreaming the event

Do we know the details yet? Where to watch?

Ali



DlangUI

2014-05-20 Thread Vadim Lopatin via Digitalmars-d-announce

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



Programming in D book is about 97% translated

2014-05-20 Thread Ali Çehreli via Digitalmars-d-announce
I have continued with the translation of the book. There are 20 of the 
732 pages still to be translated.


In addition to many corrections and additions throughout the book, there 
is the following chapter translated:


* Data Sharing Concurrency

As a reminder, the book is available as PDF, downloadable from the 
header of each chapter:


  http://ddili.org/ders/d.en/index.html

Ali


Re: DlangUI

2014-05-20 Thread w0rp via Digitalmars-d-announce
Nice work. As a guy who has worked on trying to get bindings for 
existing GUI libraries to work and noting all of the issues, I 
appreciate any effort in writing native libraries. The way I see 
it, wrapper libraries might possibly be as good as using the 
libraries from the native language some day, but they will never 
be better. Native D GUI libraries hold more potential for the 
future.


Re: Programming in D book is about 97% translated

2014-05-20 Thread Andrej Mitrovic via Digitalmars-d-announce
On 5/20/14, Ali Çehreli digitalmars-d-announce@puremagic.com wrote:
 * Data Sharing Concurrency

Awesome work! That's one of the lesser-specified parts of the
language, so this is really welcome. Btw, you may want to toss in a
word or two about the -transition=tls switch as well. It's very useful
when porting C/C++ libraries around.



Re: DlangUI

2014-05-20 Thread Dylan Knutson via Digitalmars-d-announce

Awesome! I can't wait to try it out. Some screenshots in the
README would be much appreciated, though


Re: DGui is alive

2014-05-20 Thread Suliman via Digitalmars-d-announce
DGui need some other controls,such as 
imageButton,DataView,GridViewe.t.c.


Thank you.

Frank


Yes, I very need imageButton. Is there any chance that they will 
be developed in nearest time?


I need example how to draw line (small Paint) with this lib. Does 
DGUI can do it? If not I would need to look for alternative...


Re: D's timeline

2014-05-20 Thread Nick Sabalausky via Digitalmars-d-announce

On 5/20/2014 4:19 AM, Brad Roberts via Digitalmars-d-announce wrote:

I'm working on my presentation for the conference and I'm running out of
time.  I'd like to ask you guys for some help locating a few dates:

1) When 0.x transitioned from alpha to beta
2) Was there a beta to release candidate transition for 0.x - 1.x? If
so, when?  I have the 1.00 release date, that one is easy.
3) When did the 2.x series switch similarly (alpha, beta, rc)?


There weren't really any alpha/beta/rc states for any of that. Neither 
formally nor informally. Back then, everything was all just if it's 
good enough for you, then go ahead and use it. The stability was more 
of an ever-progressing (and occasionally regressing) gradient.


Also, 0.x - 1.x was only an arbitrary line in the sand. Version 1.000 
was just simply the name of the next regular release after 0.1xx 
(whatever the xx would have been, don't recall offhand). The 1.000 
moniker was more PR than technical.


Similarly, version 2.000 was just simply the next mainline release 
after it was decided to fork off a separate no more breaking changes 
branch (which is what 1.x *became* when 2.000 was released).


It was all definitely very much *not* semantic versioning.


Re: Livestreaming DConf?

2014-05-20 Thread Mengu via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 17:26:22 UTC, Ali Çehreli wrote:

On 05/09/2014 12:48 PM, Andrei Alexandrescu wrote:

 livestreaming the event

Do we know the details yet? Where to watch?

Ali


+1 for the livestream.


Re: Livestreaming DConf?

2014-05-20 Thread dkhasel via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 18:57:35 UTC, Mengu wrote:

On Tuesday, 20 May 2014 at 17:26:22 UTC, Ali Çehreli wrote:

On 05/09/2014 12:48 PM, Andrei Alexandrescu wrote:

 livestreaming the event

Do we know the details yet? Where to watch?

Ali


+1 for the livestream.


+1 :)


Re: DConf 2013 to be livestreamed, I'll take questions during my keynote at 9 AM PST

2014-05-20 Thread Andrei Alexandrescu via Digitalmars-d-announce

https://hn.algolia.com/#!/all/last_24h/prefix/0/dconf%202014

Andrei


DConf 2013 to be livestreamed, I'll take questions during my keynote at 9 AM PST

2014-05-20 Thread Andrei Alexandrescu via Digitalmars-d-announce

http://www.reddit.com/r/programming/comments/261up4/dconf_2014_livestreamed_starting_tomorrow_0900/

https://www.facebook.com/dlang.org/posts/851009021579447

https://twitter.com/D_Programming/status/468831206117634048



Andrei


DConf 2013 Pictures

2014-05-20 Thread Ali Çehreli via Digitalmars-d-announce

I hope it's not too stale. :p

  http://acehreli.org/DConf_2013_Pictures/

Ali


Re: Programming in D book is about 97% translated

2014-05-20 Thread Ali Çehreli via Digitalmars-d-announce

On 05/20/2014 11:37 AM, Andrej Mitrovic via Digitalmars-d-announce wrote:

 On 5/20/14, Ali Çehreli digitalmars-d-announce@puremagic.com wrote:
 * Data Sharing Concurrency

 Awesome work! That's one of the lesser-specified parts of the
 language, so this is really welcome.

It also means that what is in there is however the current dmd works at 
this point in time. :p


 Btw, you may want to toss in a
 word or two about the -transition=tls switch as well. It's very useful
 when porting C/C++ libraries around.

Ok, taking a note of it. Such feedback from you and others have been 
very valuable. Thank you! :)


Ali



Re: Livestreaming DConf?

2014-05-20 Thread Gary Willoughby via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 17:26:22 UTC, Ali Çehreli wrote:

On 05/09/2014 12:48 PM, Andrei Alexandrescu wrote:

 livestreaming the event

Do we know the details yet? Where to watch?

Ali


http://www.ustream.tv/channel/dconf-2014


Re: DConf 2013 to be livestreamed, I'll take questions during my keynote at 9 AM PST

2014-05-20 Thread Orvid King via Digitalmars-d-announce

On 5/20/2014 2:34 PM, Andrei Alexandrescu via Digitalmars-d-announce wrote:

https://hn.algolia.com/#!/all/last_24h/prefix/0/dconf%202014

Andrei


Also, if you prefer your IRC client over the chat client that ustream 
has, you can connect to it as IRC via the server chat1.ustream.tv then 
join the #dconf-2014 channel. To register your nick, register on 
ustream, then connect to the IRC with your username as your nick, and 
use /PASS yourPass.


Re: DConf 2013 to be livestreamed, I'll take questions during my keynote at 9 AM PST

2014-05-20 Thread Orvid King via Digitalmars-d-announce

On 5/20/2014 2:51 PM, Orvid King via Digitalmars-d-announce wrote:

Also, if you prefer your IRC client over the chat client that ustream
has, you can connect to it as IRC via the server chat1.ustream.tv then
join the #dconf-2014 channel. To register your nick, register on
ustream, then connect to the IRC with your username as your nick, and
use /PASS yourPass.


Unfortunately though, the IRC they use doesn't support SSL connections.


Re: DlangUI

2014-05-20 Thread Kiith-Sa 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.

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



Awesome.

Does this work like a conventional GUI toolkit (Gtk/Qt) or could 
I integrate this in an OpenGL game? (or would I have to integrate 
the game in it?)


Re: Programming in D book is about 97% translated

2014-05-20 Thread Tom Browder via Digitalmars-d-announce
On Tue, May 20, 2014 at 1:37 PM, Andrej Mitrovic via
Digitalmars-d-announce digitalmars-d-announce@puremagic.com wrote:
 On 5/20/14, Ali Çehreli digitalmars-d-announce@puremagic.com wrote:
 * Data Sharing Concurrency
...
 Awesome work!

Agreed, and I hope you will get a table of contents (and index) and
get the book published commercially (or self-published).

Thanks for such a good resource!

Best regards,

-Tom



Re: DConf 2014 to be livestreamed, I'll take questions during my keynote at 9 AM PST

2014-05-20 Thread Andrei Alexandrescu via Digitalmars-d-announce

On 5/20/14, 12:51 PM, Orvid King via Digitalmars-d-announce wrote:

On 5/20/2014 2:34 PM, Andrei Alexandrescu via Digitalmars-d-announce wrote:

https://hn.algolia.com/#!/all/last_24h/prefix/0/dconf%202014

Andrei


Also, if you prefer your IRC client over the chat client that ustream
has, you can connect to it as IRC via the server chat1.ustream.tv then
join the #dconf-2014 channel. To register your nick, register on
ustream, then connect to the IRC with your username as your nick, and
use /PASS yourPass.


Please post this to reddit, twitter, and facebook as well. -- Andrei


Re: Programming in D book is about 97% translated

2014-05-20 Thread Andrei Alexandrescu via Digitalmars-d-announce

On 5/20/14, 12:53 PM, Ali Çehreli wrote:

On 05/20/2014 11:37 AM, Andrej Mitrovic via Digitalmars-d-announce wrote:

  On 5/20/14, Ali Çehreli digitalmars-d-announce@puremagic.com wrote:
  * Data Sharing Concurrency
 
  Awesome work! That's one of the lesser-specified parts of the
  language, so this is really welcome.

It also means that what is in there is however the current dmd works at
this point in time. :p

  Btw, you may want to toss in a
  word or two about the -transition=tls switch as well. It's very useful
  when porting C/C++ libraries around.

Ok, taking a note of it. Such feedback from you and others have been
very valuable. Thank you! :)

Ali


My dream: Ali announces the book is 100% done at DConf 2014. -- Andrei


Re: Programming in D book is about 97% translated

2014-05-20 Thread Piotrek via Digitalmars-d-announce

Hi,

Agreed, and I hope you will get a table of contents (and index) 
and

get the book published commercially (or self-published).



You have at least one buyer (me) declared. I don't know if it's 
enough but it would be great to collect TDPL, Cook Book and 
Programming in D altogether.


Piotrek


Re: DConf 2013 Pictures

2014-05-20 Thread Steven Schveighoffer via Digitalmars-d-announce

On Tue, 20 May 2014 15:37:10 -0400, Ali Çehreli acehr...@yahoo.com wrote:


I hope it's not too stale. :p

   http://acehreli.org/DConf_2013_Pictures/


Not at all! I haven't seen a good collection of photos from last year.  
Awesome!


-Steve


Re: DConf 2013 Pictures

2014-05-20 Thread Robert BuRnEr Schadek via Digitalmars-d-announce
thank you

On 05/20/2014 12:37 PM, Ali Çehreli via Digitalmars-d-announce wrote:
 I hope it's not too stale. :p

   http://acehreli.org/DConf_2013_Pictures/

 Ali



Re: Livestreaming DConf?

2014-05-20 Thread Nick via Digitalmars-d-announce

On Friday, 9 May 2014 at 19:48:20 UTC, Andrei Alexandrescu wrote:

Hi folks,


We at Facebook are very excited about the upcoming DConf 2014. 
In fact, so excited we're considering livestreaming the event 
for the benefit of the many of us who can't make it to Menlo 
Park, CA. Livestreaming entails additional costs so we're 
trying to assess the size of the online audience. Please follow 
up here and on twitter: 
https://twitter.com/D_Programming/status/464854296001933312



Thanks,

Andrei


I'll probably watch most of it if it's streamed.


Re: DlangUI

2014-05-20 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 20:06:12 UTC, Kiith-Sa wrote:

Awesome.

Does this work like a conventional GUI toolkit (Gtk/Qt) or 
could I integrate this in an OpenGL game? (or would I have to 
integrate the game in it?)


Both ways available.
But I think, it's better to integrate game into it.
Otherwise you have to write more code.


Re: DlangUI

2014-05-20 Thread FrankLike via Digitalmars-d-announce



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


Nice work.
Some days ago,I test the hello world ,it need 19M Memory 
Usage,but now,it's 31M,maybe have some error?

Thank you.
Nice work.



Re: DlangUI

2014-05-20 Thread Vadim Lopatin via Digitalmars-d-announce

On Tuesday, 20 May 2014 at 22:18:14 UTC, FrankLike wrote:

Nice work.
Some days ago,I test the hello world ,it need 19M Memory 
Usage,but now,it's 31M,maybe have some error?

Thank you.
Nice work.

:)

Not as bad as you expected.

Tried win32 release build w/o USE_SDL and USE_OPENGL version
constants (using win32 API only).

helloworld.exe executable size 813k, memory 6.6M on start
example1.exe executable size 847k, memory 6.7M on start
As I see, memory consumption grows while app is working.
Probably, extra GC allocations, or some resources leaking.

Can be reduced a bit, e.g. by moving to libpng from libfreeimage.

Main limitation here - app needs buffer for 32bit RGBA bitmap
buffer to draw into.


Re: Livestreaming DConf?

2014-05-20 Thread Manu via Digitalmars-d-announce
My timezone will keep me awake from 2am - 9am to watch the live
streams... which I probably will do ;)

On 21 May 2014 07:01, Nick via Digitalmars-d-announce
digitalmars-d-announce@puremagic.com wrote:
 On Friday, 9 May 2014 at 19:48:20 UTC, Andrei Alexandrescu wrote:

 Hi folks,


 We at Facebook are very excited about the upcoming DConf 2014. In fact, so
 excited we're considering livestreaming the event for the benefit of the
 many of us who can't make it to Menlo Park, CA. Livestreaming entails
 additional costs so we're trying to assess the size of the online audience.
 Please follow up here and on twitter:
 https://twitter.com/D_Programming/status/464854296001933312


 Thanks,

 Andrei


 I'll probably watch most of it if it's streamed.


Re: DConf 2013 Pictures

2014-05-20 Thread Andrei Alexandrescu via Digitalmars-d-announce

On 5/20/14, 8:25 PM, David Ellsworth wrote:

On Tuesday, 20 May 2014 at 19:37:11 UTC, Ali Çehreli wrote:

I hope it's not too stale. :p

  http://acehreli.org/DConf_2013_Pictures/

Ali


Nice photos!

Here are mine. I too hope these are not too stale.

https://drive.google.com/folderview?id=0B0ahz3zZ-gZnYlBKeVZzaW03M0Eusp=sharing


A lot of these need postprocessing, but doing that on all of them
was just too much. That's basically why I didn't post the set
earlier. But if anybody has particular photos they'd like to see
processed better, I'd be glad to.

Some are currently omitted due to the need to ask permission.
Among these are the group photos, which will need to be edited if
permission is not given.

David


I feared something happened to you after I wrote you several times 
regarding these photos, to no avail... glad to see you're okay. -- Andrei




Re: New DCD and D-Scanner betas

2014-05-20 Thread Martin Nowak via Digitalmars-d-announce

On Sunday, 18 May 2014 at 11:13:12 UTC, Brian Schott wrote:

Tags:
https://github.com/Hackerpilot/DCD/tree/0.3.0-beta6
https://github.com/Hackerpilot/Dscanner/tree/0.1.0-beta5

Changes:
https://github.com/Hackerpilot/Dscanner/compare/0.1.0-beta4...0.1.0-beta5
https://github.com/Hackerpilot/DCD/compare/0.3.0-beta5...0.3.0-beta6

A few more bug fixes to both projects. DCD got some more 
performance/memory improvements and can cache autocomplete 
information for phobos+druntime in roughly 0.8 seconds. Caching 
autocomplete for Phobos, Druntime, D-Scanner, DCD, and GtkD 
takes 1.9 seconds and 105MB.


Great news, I'll try to integrate DCD with D REPL at some point.