🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.misc.discuss
Article #1361

RFC: using Texinfo and InterViews for a context-sensitive help program

#1361
From: Paul Shannon
Date: Mon, 14 Dec 1992 19:40
62 lines
3214 bytes
We'd like to get comments on a small project we're about to begin.  By 
"comments" I mean anything like

 1. "this is a great idea, please let us use the code when you're done"
 2. "this was done months ago, look at anon ftp site xxx.yyy.zzz for 
    a copy"
 3. "this is a stupid idea, for these reasons....."


                A Context-sensitive help program, based upon
                      Texinfo and InterViews

By using the GNU project's Texinfo for documentation, we're able to have a
single source file for printed manuals and and on-line help.  So there's
two ways to read the Texinfo source: print it out, or  use emacs in info
mode.  We want to add a third way:  a program with a graphical user
interface that responds  to ipc requests (over a socket, for instance),
by displaying a particular node in the file.  Once this node is displayed,
the user can navigate using the normal info keyboard commands (m,d,u,....) 
and with corresponding gui widgets as well (menus, buttons, and sliders).

This gui program, sensitive to ipc requests, will allow us to provide
context-sensitive help to our users:  any of our application programs
that knows the protocol (socket number, node names, info navigation commands)
can popup the Texinfo viewer, at a particular node, at will.

In time we'd like to add printing, bookmarks, different fonts, and perhaps 
the ability to display postscript.

We propose to use the C++ gui toolkit InterViews.  IV has many strengths:

   1. written in C++, with classes that are easily adapted to
      the model-view-controller approach to gui design
   2. public domain source
   3. isolation of X and OS related code
   4. may become the standard X consortium C++ toolkit
  
and some weaknesses
   
   1. few examples to learn from
   2. scant documentation 
   3. unstable design:  though version 3.0 brought glyphs, and 3.1
      introduced object creation kits, these rest uneasily among
      classes left over from the earlier 2.6 design.
   4. some functionality from the X Intrinsics is not
      available: XtWorkProc, for example, allows the programmer
      to install a task to run whenever no events are pending; 
      this is difficult to do in IV.

There's an InterViews 2.6 application, ivinfo, available on the ftp
archive at interviews.stanford.edu, which contains some code we'd
either use directly or learn from.

We plan to distribute the code for our larger project (aips++, an image
processing tools for radio astronomy) under the gnu copyleft agreement.
We would do the same for the context-sensitive help program as well.

Any comments, criticisms or suggestions?

   Paul Shannon
   pshannon@nrao.edu
   National Radio Astronomy Observatory
Technical Details
Message-ID: <PSHANNON.92Dec14144048@iapetus.cv.nrao.edu>
Path: arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!darwin.sura.net!uvaarpa!cv3.cv.nrao.edu!cv3.cv.nrao.edu!pshannon

Show Full Headers
Complete Article Headers
Newsgroups: gnu.misc.discuss
Path: arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!darwin.sura.net!uvaarpa!cv3.cv.nrao.edu!cv3.cv.nrao.edu!pshannon
From: pshannon@iapetus.cv.nrao.edu (Paul Shannon)
Subject: RFC: using Texinfo and InterViews for a context-sensitive help program
Message-ID: <PSHANNON.92Dec14144048@iapetus.cv.nrao.edu>
Sender: news@nrao.edu
Organization: nrao
Distribution: gnu
Date: Mon, 14 Dec 1992 19:40:48 GMT
Lines: 65