digitalmars.D - Thread safe GUI/ MFC like Approach
- BLS <nanali nospam-wanadoo.fr> Dec 30 2007
- "Janice Caron" <caron800 googlemail.com> Dec 30 2007
- "Bruce Adams" <tortoise_74 yeah.who.co.uk> Dec 31 2007
- Bill Baxter <dnewsgroup billbaxter.com> Dec 31 2007
- Bill Baxter <dnewsgroup billbaxter.com> Dec 31 2007
- BLS <nanali nospam-wanadoo.fr> Dec 31 2007
- CptJack <cptjack nospam.net> Dec 31 2007
- BLS <nanali nospam-wanadoo.fr> Jan 01 2008
- Tom <tom nospam.com> Dec 31 2007
During my /investigations/ regarding : What GUI do I need to create an
realtime/collaboration IDE I found out that the MS MFC approach is not
that bad.
In case that there is some interest I could add a page to the D WIKI
showing the use of :
CriticalSection/Mutex
Thread Local Storage
CBT (computer based training) Hooks. (in our case, Invoked before
WM_NCCREATE)
together they'll make a thread safe GUI, using common D stuff like :
class Window
{
package :
static Window[HWND] wndMap; //
....
etc. The important point is that :
one thread's Window is not present in other threads' HWND-to-wndMap !
=====================================================================
Just let me know if this a matter of interest and I'll give it a go
Bjoern
post scriptum
As you can imagine an IDE needs IDLE events to do all the "lookup-work"
most probabely using fibers... so the code can't be agnostic. Means
Tango will be used ... Ahem, hope I'am not picking on your nerves
'cause of the cross posting.
Dec 30 2007
On 12/31/07, BLS <nanali nospam-wanadoo.fr> wrote:the MS MFC approach
"Microsoft Microsoft Foundation Classes"? Isn't one Microsoft enough? :-)
Dec 30 2007
On Mon, 31 Dec 2007 07:34:50 -0000, Janice Caron <caron800 googlemail.com> wrote:On 12/31/07, BLS <nanali nospam-wanadoo.fr> wrote:the MS MFC approach
"Microsoft Microsoft Foundation Classes"? Isn't one Microsoft enough? :-)
Isn't one Microsoft too much?
Dec 31 2007
BLS wrote:During my /investigations/ regarding : What GUI do I need to create an realtime/collaboration IDE I found out that the MS MFC approach is not that bad. In case that there is some interest I could add a page to the D WIKI showing the use of : CriticalSection/Mutex Thread Local Storage CBT (computer based training) Hooks. (in our case, Invoked before WM_NCCREATE)
Will it work on a non-Windows platform? I don't know if this is useful at all or not, but here's a multithreaded GUI lib that's been this one guy's pet project for the past 10 years or so. Nothing to do with D, but I used to hang out on the Fox toolkit where this fellow posted about his TnFOX project regularly. From what I understand using lots of threads for the GUI is a big point of it. --bb
Dec 31 2007
Bill Baxter wrote:BLS wrote:During my /investigations/ regarding : What GUI do I need to create an realtime/collaboration IDE I found out that the MS MFC approach is not that bad. In case that there is some interest I could add a page to the D WIKI showing the use of : CriticalSection/Mutex Thread Local Storage CBT (computer based training) Hooks. (in our case, Invoked before WM_NCCREATE)
Will it work on a non-Windows platform? I don't know if this is useful at all or not, but here's a multithreaded GUI lib that's been this one guy's pet project for the past 10 years or so. Nothing to do with D, but I used to hang out on the Fox toolkit where this fellow posted about his TnFOX project regularly. From what I understand using lots of threads for the GUI is a big point of it.
Oops forgot the link: http://www.nedprod.com/TnFOX/ --bb
Dec 31 2007
Bill Baxter schrieb:BLS wrote:During my /investigations/ regarding : What GUI do I need to create an realtime/collaboration IDE I found out that the MS MFC approach is not that bad. In case that there is some interest I could add a page to the D WIKI showing the use of : CriticalSection/Mutex Thread Local Storage CBT (computer based training) Hooks. (in our case, Invoked before WM_NCCREATE)
Will it work on a non-Windows platform? I don't know if this is useful at all or not, but here's a multithreaded GUI lib that's been this one guy's pet project for the past 10 years or so. Nothing to do with D, but I used to hang out on the Fox toolkit where this fellow posted about his TnFOX project regularly. From what I understand using lots of threads for the GUI is a big point of it. --bb
Windows only ! Why ? Because : What I want is a GUI especial made to satisfy IDE requirements. thread-safe, multi screen support - tabbed mdi and docking. (fast, and a freaking cool Look and Feel) This is (at least for me) a huge project, means, making it platform independent by a single human beeing is impossible. Happy new year and thanks for the fish, er... link :) Bjoern
Dec 31 2007
BLS Wrote:Bill Baxter schrieb:Will it work on a non-Windows platform? I don't know if this is useful at all or not, but here's a multithreaded GUI lib that's been this one guy's pet project for the past 10 years or so. Nothing to do with D, but I used to hang out on the Fox toolkit where this fellow posted about his TnFOX project regularly. From what I understand using lots of threads for the GUI is a big point of it. --bb
Windows only ! Why ? Because : What I want is a GUI especial made to satisfy IDE requirements. thread-safe, multi screen support - tabbed mdi and docking. (fast, and a freaking cool Look and Feel) This is (at least for me) a huge project, means, making it platform independent by a single human beeing is impossible. Happy new year and thanks for the fish, er... link :) Bjoern
Sorry, I just don't understand your reasoning here. If a GUI toolkit satisfies your requirements, what does it matter if it's "Windows only" or not? It seems to me that Qt fulfills all your requirements, and Qt certainly isn't "Windows only". It's your project, so you don't have build it on any platform you don't want to, but saying your IDE HAS to be "Windows only !" because of your GUI toolkit requirements is not being realistic.
Dec 31 2007
CptJack schrieb:BLS Wrote:Bill Baxter schrieb:Will it work on a non-Windows platform? I don't know if this is useful at all or not, but here's a multithreaded GUI lib that's been this one guy's pet project for the past 10 years or so. Nothing to do with D, but I used to hang out on the Fox toolkit where this fellow posted about his TnFOX project regularly. From what I understand using lots of threads for the GUI is a big point of it. --bb
What I want is a GUI especial made to satisfy IDE requirements. thread-safe, multi screen support - tabbed mdi and docking. (fast, and a freaking cool Look and Feel) This is (at least for me) a huge project, means, making it platform independent by a single human beeing is impossible. Happy new year and thanks for the fish, er... link :) Bjoern
Sorry, I just don't understand your reasoning here. If a GUI toolkit satisfies your requirements, what does it matter if it's "Windows only" or not? It seems to me that Qt fulfills all your requirements, and Qt certainly isn't "Windows only".
True. But D is the language of choice, so QT is not available and wxD lacks of too many features. What I meant is that the GUI I have in mind will allready have about 25.000 LOC. (based on the original C++ lib) So creating a platform independent GUI from the scratch is not doable for me. Happy new year to youIt's your project, so you don't have build it on any platform you don't want to, but saying your IDE HAS to be "Windows only !" because of your GUI toolkit requirements is not being realistic.
Jan 01 2008
BLS escribió:During my /investigations/ regarding : What GUI do I need to create an realtime/collaboration IDE I found out that the MS MFC approach is not that bad.
Stay away from MFC. Happy new year. -- Tom;
Dec 31 2007









"Bruce Adams" <tortoise_74 yeah.who.co.uk> 