Last update November 28, 2007

Carlos Santander /
Old Discussion About Dig



old discussion about DIG

What do you need that dig doesn't do? Where are its problems or limitations? -- HelmutLeitner

Well, there're some things. First, I wanted a MDI application: dig doesn't seem to support them. Now, having 3 frames/windows at once seems to be a problem because they leave traces behind them. I don't know how to explain it... I move one of them, but the previous position remains for a while. Weird. Also, windows don't update so well. There're a couple of things more, but they're related to the library (and some are related to the language/compiler). -- CarlosSantander

I understand the problem because I know this low-level part of Windows quite well. When a window moves, the other windows have to redraw themselves in response to messages sent to them. If this is delayed or disturbed, applications start to look awkward and feel wrong. This might be a problem of delays in the main event loop or by performance problems in some part of the library (maybe a recursively started redraw). On the other hand, during ICFP I noticed that the dig application we used quickly became unresponsive after some iterations. I'm pretty sure this was a gc problem.-- HelmutLeitner

So I should tell the gc to run in some parts of my code? -- CarlosSantander

I'm unable to suggest a solution. I don't think it would help. -- HelmutLeitner

There's something else about dig. I can't (either because there's no way or because I don't know how) specify the initial position of a frame. Something else, I don't know how to use rendered fonts. Maybe that's not the correct term, but I want my texts to look with soft edges. I hope you get the idea. -- CarlosSantander

Do you mean the position of the main application window or child windows of this parent window? Although I hardly know dig, it shouldn't be a problem to look into the dig sources and find a way to do this.

Child windows. Wrong: main window (note to self: think before writing). Yes, this wouldn't be too dificult, but I can't be changing dig here and there to fit my needs. I'd like dig to be complete enough to do so.

Maybe there is a lack of documentation. dig.Form is a Control. control.d shows a number of methods (left, right, width, widthAndHeight) that should be applicable before frame.showModal();. Can't you use them? -- HelmutLeitner

You mean anti-aliasing? Fonts looking smooth because grey level points are used? This is usually an option set by the Windows system, but only available to Truetype fonts. So it may depend on Font selection. Do other applications show the fonts this way? What Windows Version to you use? It should be also possible to do this, even if dig shouldn't provide a selection mechanism. The Windows APIs are clear for this. -- hl

Exactly. I use WinXP?, and this works with other applications (that's how I noticed it: I was comparing button sizes and zooming in I noticed the other app's texts were not only black dots, but a bit grayed), but it's the same case as before. Do I hack dig or do I make progress with the rad? Anyway, should this be set in the frame or in the font? Because I was playing with the lfOutPrecision member of the LOGFONT, but nothing has happened.

What font have you selected? -- HelmutLeitner


FrontPage | News | TestPage | MessageBoard | Search | Contributors | Folders | Index | Help | Preferences | Edit

Edit text of this page (date of last change: November 28, 2007 15:55 (diff))