Article View: comp.sys.sgi.graphics
Article #55motif child windows
From: LANGER STEVEN C
Date: Wed, 16 Dec 1992 00:17
Date: Wed, 16 Dec 1992 00:17
115 lines
5559 bytes
5559 bytes
Several days ago I posted a question on this group regarding an application
I am writing. I realized from the varied responses thet people were kind
enough to send that I did a poor job of stating the problem so here is
a more verbose and hopefully clearer statement of it.
I am just beginning to write a large app (50-100K lines of code
eventually) that will run on our hospitals SGI machines. Said
program consists of a foreground process to collect user input
and various info displays. This process is also responsible for launching
and monitoring processes that control several other machines.
Ultimately, the system will control simultaneous radiation treatment, heat
treatment and incorporate CAT or MRI images. We have already implemented
parts of this software under MS-Windows, but as you can imagine, such
machines just don't have the power to pull off the whole job. A schematic
might look like this;
USER
|
Main Process & Display Code
^ ^ ^
| | |
------- | |
| XRay CAT
Heating Device & Machine or MRI Scanner
Thermometry Device Driver Driver
Drivers | | |
| | |
| | Hardware
Hardware Hardware
Commands are issued by the user and sent to the appropriate device
driver process, then sent on to the various machines. Data must also
come back from these drivers for display. I have launched these other
processes from the main, but have yet to get 2-way communication via
the pipes.
Now to the Motif part. I want the app mainWindow to act as nothing more
than a backdrop to contain a menu and clip the miriad displays which this system
will eventually produce. The child windows MUST be dragable and resizable
within the mainWindow, but not leave it. Something like this;
| -- / App Main Window /Small / Big |
| Heat Commands | XRay | Scanner | Display | Help |
|------------------------------------------------------------------------|
| | Temp Bar Graph | |
| | Temp History Graph | |
| | Heating Parameters | |
| | XRay Parameters | |
| | MRI Image ---> | Posterior |
| | CAT Image | Anterior |
| ---------------------- Bla |
| Bla |
| |
| | -- /TempBar /Small/Big| |
| |-------------------------| |
| | # | |
| | # # | |
| | # # # # | | -- /TempHistogram /Sma|
| |------------------------xx |------------------------|
| resize | |
| | .-. . . |
| | ./ \./ \._ ../ |
| | -- /Brain-Ant /Small/Big| | |
| |--------------------------| |------------------------|
| | | |
| | Pixmap from MRI | |
| | | |
| |-------------------------xx |
------------------------------------------------------------------------xx
The physicians require that the pixmaps display the entire image, not
a viewport of an image (that knocks out ScrolledWindows) so that they
get a global perspective. For fine detail, they want to be able to
resize the window big and have it rescale itself to reveal more detail.
So that's the problem. I need dragable resizable windows within the
main window. I cannot compel the physicians to accept a grid of
equally sized windows so that knocks out RowColumn and PanedWindows.
Questions:
1. Is there any known Xm or Xt Widget that will accomplish this?
2. If not, what is the quickest method (from a coding point of view)
to make a dragable, sizeable window that can be assigned a DrawingArea?
a. Xlib primitives
b. Xt intrinsics
c. a custom Widget
3. If the answer to 2 is c, what would be the best Widget to start
modifying?
4. If the answer to 2 is a or b, could you supply a code snippet or
reference?
Tomorrow marks my one week anniversary of coding in X so I'm probably
missing something obvious. If so I apoligise for boring everyone. But
I've figured out how to make child windows drag, resize and clip in their
parents on Macs, Amigas and even (ach) MS-Windows and I'm totally at a loss
on X. Any and all responses are welcome and if there is sufficient interest
in this problem, I'll post any and all solution(s) to the group.
--sincerely, steve
--
Steve Langer sglanger@argo.acs.oakland.edu (VMS)
Oakland University sglanger@vela.acs.oakland.edu (Ultrix)
---------------------------------------------------------------------------
Standard disclaimers apply. In addition, the author makes no guarantees,
concerning the grammatical accuracy of his writing. Therefore, any ^B's, ^C's,
midword character additions/deletions and other non-sense which occurs (after
the work leaves the author's decade old text editor via his decade old Amiga,
struggles through a local 1200 baud Merit server to be further mauled via the
remote VAX mail servers) is someone elses problem - namely yours.
---------------------------------------------------------------------------
Technical Details
Message-ID:
<1992Dec16.001739.673@vela.acs.oakland.edu>Path:
arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!pacific.mps.ohio-state.edu!linac!uwm.edu!ux1.cso.uiuc.edu!cs.uiuc.edu!vela!sglangerShow Full Headers
Complete Article Headers
Newsgroups: comp.sys.sgi.graphics Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!pacific.mps.ohio-state.edu!linac!uwm.edu!ux1.cso.uiuc.edu!cs.uiuc.edu!vela!sglanger From: sglanger@vela.acs.oakland.edu (LANGER STEVEN C) Subject: motif child windows Message-ID: <1992Dec16.001739.673@vela.acs.oakland.edu> Organization: Oakland University, Rochester MI. Distribution: usa Date: Wed, 16 Dec 1992 00:17:39 GMT Lines: 115