MDI issue - second attempt

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

MDI issue - second attempt

Jochen Riekhof-6
Hi again...

as there was still no reply to my previous post I get teh impression I
am attempting someting difficult ;-).

So I here again outline what I am planning to implement - Anyone who
ever used Microsodt Access, MS SQL-Server or Visual InterDEV database
tools knows this kind of diagram - it shows the tables of arelational db
as separate windows and draws the relationships between them on the view
they are contained in. Using Shells in a container view I was in minutes
(literally) able to put up 80% of this functionality - the only glitches
I noticed so far:
1. The wrong repaints when moving a window that is visually overlapped
by another one
2. Table column headers paint "through" covering windows.

I tried to solve this with active repaints but found no way to repaint
the Shell borders, only contents (refreshContents). Is there such a method?

I digged up old discussions about MDI in DSDN and also read something in
the MSDN-Libs. What disturbed me there was a setence saying that all MDI
childs would ALWAYS show close, minimize and maximize controls. Well,
none of the diagram editors show these. This makes me suspect that the
implementation of these diagram editors do not use MDI.

My hope is thet there is someone around who can tell me in which
direction I should continue: solving remaining repaint issues with minor
fixes in event handling, going to try to implement MDI support myself
(uh oh) or give up on the idea entirely and attempt to set up an own
graphics framework that simulates windows with contained tables (sounds
even worse to me given that 80% of stuf is already looking so good), or
use Visual Basic (don't take the latter too serious ;-).


Ciao

...Jochen


Reply | Threaded
Open this post in threaded view
|

Re: MDI issue - second attempt

Schwab,Wilhelm K
Jochen Riekhof wrote:

> Hi again...
>
> as there was still no reply to my previous post I get teh impression I
> am attempting someting difficult ;-).
>
> So I here again outline what I am planning to implement - Anyone who
> ever used Microsodt Access, MS SQL-Server or Visual InterDEV database
> tools knows this kind of diagram - it shows the tables of arelational db
> as separate windows and draws the relationships between them on the view
> they are contained in. Using Shells in a container view I was in minutes
> (literally) able to put up 80% of this functionality - the only glitches
> I noticed so far:
> 1. The wrong repaints when moving a window that is visually overlapped
> by another one
> 2. Table column headers paint "through" covering windows.
>
> I tried to solve this with active repaints but found no way to repaint
> the Shell borders, only contents (refreshContents). Is there such a method?

Try #invalidate, or something like that.  Follow with #update if you
want it to update "now".


> I digged up old discussions about MDI in DSDN and also read something in
> the MSDN-Libs. What disturbed me there was a setence saying that all MDI
> childs would ALWAYS show close, minimize and maximize controls. Well,
> none of the diagram editors show these. This makes me suspect that the
> implementation of these diagram editors do not use MDI.

Do as we say, not as we do.  That goes for how MDI works, as well as
whether to even use it.  MS' style guides deprecated MDI a long time
ago.  Put another way, the emperor *does* have clothes, and we'll set
the CLOTHES_VISIBLE flag in the next version ;)


> My hope is thet there is someone around who can tell me in which
> direction I should continue: solving remaining repaint issues with minor
> fixes in event handling, going to try to implement MDI support myself
> (uh oh) or give up on the idea entirely and attempt to set up an own
> graphics framework that simulates windows with contained tables (sounds
> even worse to me given that 80% of stuf is already looking so good), or
> use Visual Basic (don't take the latter too serious ;-).

When faced with this problem, I have used multiple shells, one of which
is a "project view" that lists the other shells and will activate or
close them.

Have a good one,

Bill

--
Wilhelm K. Schwab, Ph.D.
[hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: MDI issue - second attempt

Jochen Riekhof-8
Hi Bill...

thank you for the tips. I will ignore the problem for now and try not to
overlap shells in my diagram view as I need to check out some ideas
first. Managing these problems still seems daunting to me. I have to do
some days of exploring the Windows/Dolphin intenals on repaint I think.

An alternative would be to create my own table views and diagram. Is
there anything I could use like e.g. JGraph for Java. I remember to have
read something about hotdraw in the past.

Ciao

...Jochen