<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: F1 key Winhelp and QuickWin problems in Software Archive</title>
    <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966936#M23100</link>
    <description>THIS IS DIABOLICAL!  WHERE IS MY CODE GOING TO? &lt;BR /&gt;HERE IS THE RESTY??? &lt;BR /&gt; &lt;BR /&gt;&lt;PRE&gt; &lt;BR /&gt;		go to 1000      ! un-comment/comment this to skip/execute the diagnostic stuff &lt;BR /&gt;!		diagnostic stuff used to check on control id's being sent in WM_HELP &lt;BR /&gt;!       in the HELPINFO structure pointed to by lParam &lt;BR /&gt;		hWndframe=GETHWNDQQ(QWIN$FRAMEWINDOW) &lt;BR /&gt;		write(hwndchar,'(i20)') hWnd &lt;BR /&gt;		write(hframechar,'(i20)') hWndframe &lt;BR /&gt;		message='Calling window handle= '//hWndchar//', frame window handle ='//hframechar//''C &lt;BR /&gt;		retint=messageboxqq(message,'WM_HELP COMMAND PROCESSING'C, &amp;amp; &lt;BR /&gt;		MB$OK.OR.MB$ICONEXCLAMATION) &lt;BR /&gt;		write(ictypchar,'(i20)') HI%iContextType &lt;BR /&gt;		write(ictrlchar,'(i20)') HI%iCtrlID &lt;BR /&gt;		write(itemhandchar,'(i20)') HI%hItemHandle &lt;BR /&gt;		write(contidchar,'(i20)') HI%dwContextID &lt;BR /&gt;		message='Context type= '//ictypchar//'Control ID='//ictrlchar//'Handle='//&amp;amp; &lt;BR /&gt;		itemhandchar//'ContextID='//contidchar//''c &lt;BR /&gt;		retint=messageboxqq(message,'WM_HELP COMMAND PROCESSING'C, &amp;amp; &lt;BR /&gt;		MB$OK.OR.MB$ICONEXCLAMATION) &lt;BR /&gt;!		end diagnostic stuff &lt;BR /&gt; 1000 continue &lt;BR /&gt;		rethelp=WINHELP(hWnd,           &amp;amp; &lt;BR /&gt;!				'C:PROGRAM FILESHELP WORKSHOPPROJECTSGLOBEWIREGLOBEWIRE.HLP'//''C, &amp;amp; &lt;BR /&gt;				'GLOBEWIRE.HLP'C,			 &amp;amp; &lt;BR /&gt;				HELP_CONTEXTPOPUP, ctrlid  ) &lt;BR /&gt;		MyWndProc = rethelp &lt;BR /&gt; &lt;BR /&gt;!	 DEFAULT PROCESSING  &lt;BR /&gt;    case default &lt;BR /&gt;!		Let the default window proc handle all other messages &lt;BR /&gt;		MyWndProc = CallWindowProc(hWndProc, hWnd, mesg, wParam, lParam ) &lt;BR /&gt; &lt;BR /&gt;    end select &lt;BR /&gt;	return &lt;BR /&gt; &lt;BR /&gt;  end function MyWndProc &lt;BR /&gt; &lt;BR /&gt;&lt;/PRE&gt;!</description>
    <pubDate>Fri, 14 Sep 2001 22:57:19 GMT</pubDate>
    <dc:creator>isn-removed200637</dc:creator>
    <dc:date>2001-09-14T22:57:19Z</dc:date>
    <item>
      <title>F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966930#M23094</link>
      <description>I succeeded at last applying WinHelp in a context-sensitive mode and used for this the subject: Trouble with context-sensitive help, from hbell November 26,2000. But now I stick in a context-help for the menu items. Glad to find exactly the same subject submitted from Anthony Richards April 25,2001 3:59am. As there is written, the author replaced the default window procedure DefWindowProc with the own one MyWndProc. I can't find DefWindowProc in my QuickWin Project and don't know where to place and call MyWndProc. Is there any example of such a procedure you could send me?  I would be very glad about some more detailed information.</description>
      <pubDate>Wed, 12 Sep 2001 23:15:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966930#M23094</guid>
      <dc:creator>presser</dc:creator>
      <dc:date>2001-09-12T23:15:59Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966931#M23095</link>
      <description>Tony Richards and I quite struggled to make F1 on QuickWin menus work... If you &lt;BR /&gt;wish, I can send you our correspondence (quite lengthy)... maybe I could dig out &lt;BR /&gt;sample workspace also. Please drop &lt;A href="mailto: jdujic@uns.ns.ac.yu&amp;gt;me an &amp;lt;br&amp;gt;e-mail&amp;lt;/a&amp;gt;. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt;The term in question is referred to as " subclassing=""&gt;access to code of QuickWin window procs, you can still install your own &lt;BR /&gt;procedure to add or change functionality. The procedure must be of prototype &lt;BR /&gt; &lt;BR /&gt;&lt;/A&gt;&lt;PRE&gt;&lt;A href="mailto: jdujic@uns.ns.ac.yu&amp;gt;me an &amp;lt;br&amp;gt;e-mail&amp;lt;/a&amp;gt;. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt;The term in question is referred to as " subclassing=""&gt; 
INTEGER FUNCTION MyWndProc(hWnd, Msg, wParam, lParam) 
!DEC$ATTRIBUTES STDCALL:: MyWndProc 
USE DFWIN 
USE GLOBALS, ONLY: lpfnOldWndProc 
USE DFWIN 
SELECT CASE(Msg) 
CASE(WM_SOMETHING) 
   !Process desired messages here 
CASE DEFAULT 
   MyWndProc = CallWindowProc(lpfnOldWndProc, hWnd, Msg, wParam, lParam) 
END SELECT 
&lt;/A&gt;&lt;/PRE&gt; &lt;BR /&gt; &lt;BR /&gt;The window procedure is installed using &lt;BR /&gt;&lt;PRE&gt; 
hWnd=GETHWNDQQ(...) 
lpfnOldWndProc=SetWindowLong(hWnd, GWL_WNDPROC, LOC(MyWndProc)) 
&lt;/PRE&gt; &lt;BR /&gt;IIRC POKER sample illustrates the technique. (Btw, Steve, ain't it a nice theme &lt;BR /&gt;for Dr Fortran's article -- I don't recall there was one). &lt;BR /&gt; &lt;BR /&gt;Regards &lt;BR /&gt;Jugoslav</description>
      <pubDate>Fri, 14 Sep 2001 00:01:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966931#M23095</guid>
      <dc:creator>Jugoslav_Dujic</dc:creator>
      <dc:date>2001-09-14T00:01:36Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966932#M23096</link>
      <description>&lt;PRE&gt; &lt;BR /&gt;PROGRAM GLOBEWIRE &lt;BR /&gt;!Main program containing loop to allow menus to be used &lt;BR /&gt;USE DFLIB &lt;BR /&gt;USE DFWIN &lt;BR /&gt;USE XFLOGM &lt;BR /&gt;!USE DFLOGM &lt;BR /&gt;USE INPUTINFO &lt;BR /&gt;! &lt;BR /&gt;IMPLICIT NONE &lt;BR /&gt;!GRAPHICS WINDOW HANDLE USED IN VARIOUS ROUTINES VIA COMMON GRWHND &lt;BR /&gt;CHARACTER($MAXPATH) GRTITLE &lt;BR /&gt;INTEGER*4  GWINHND &lt;BR /&gt;LOGICAL GRTIT &lt;BR /&gt;COMMON/GRWHND/ GRTITLE, GWINHND &lt;BR /&gt;COMMON/FILEINP/ INFILE,FILENG &lt;BR /&gt;COMMON/TOSLIDE/ IIS,JJS,KOUNTS,XYRATS, &amp;amp; &lt;BR /&gt;              XYZBEGS,XYZENDS,XYZCENS &lt;BR /&gt;REAL*8 XYZBEGS(3,80000),XYZENDS(3,80000),XYZCENS(3) &lt;BR /&gt;REAL*8 XYRATS &lt;BR /&gt;CHARACTER*60 INFILE &lt;BR /&gt;INTEGER*2 II,JJ, IIS,JJS, FILENG &lt;BR /&gt;INTEGER*4 ISTATUS,FOCRET,KOUNTS &lt;BR /&gt;COMMON/IDAXES/I1,I2,I3 &lt;BR /&gt;COMMON/ROTANGS/A1,A2,A3 &lt;BR /&gt;COMMON/SCRFORM/XYRAT &lt;BR /&gt;COMMON/STARTD/ STARTDIR, ISTARTD &lt;BR /&gt;REAL*8 XYRAT &lt;BR /&gt;REAL*8 A1,A2,A3, AMAT(3,3) &lt;BR /&gt;INTEGER*2 I1, I2, I3, IH, IV  &lt;BR /&gt;! &lt;BR /&gt;COMMON/HANDLETOPROC/ hWndProc &lt;BR /&gt;! &lt;BR /&gt;LOGICAL CHECKED &lt;BR /&gt;LOGICAL*4 RESULT, NEWT &lt;BR /&gt;INTEGER*4 I4, RETINT, HWND, HWNDPROC, HWNDPREV, NUMARG &lt;BR /&gt;INTEGER*2 IVID &lt;BR /&gt;CHARACTER*120 STATMESS &lt;BR /&gt;CHARACTER*20 RETHANDLE &lt;BR /&gt;CHARACTER($MAXPATH) DIR, BUFFER, NEWTITLE,STARTDIR &lt;BR /&gt;INTEGER(4) length, ISTARTD &lt;BR /&gt; &lt;BR /&gt;! &lt;BR /&gt;interface &lt;BR /&gt;integer function MyWndProc( hWnd, message, wParam,  lParam) &lt;BR /&gt;!DEC$ IF DEFINED(_X86_) &lt;BR /&gt;!DEC$ ATTRIBUTES STDCALL, ALIAS : '_MyWndProc@16':: MyWndProc &lt;BR /&gt;!DEC$ ELSE &lt;BR /&gt;!DEC$ ATTRIBUTES STDCALL, ALIAS : 'MyWndProc' :: MyWndProc &lt;BR /&gt;!DEC$ ENDIF &lt;BR /&gt;integer hWnd, message, wParam, lParam &lt;BR /&gt;end function &lt;BR /&gt;end interface &lt;BR /&gt;! &lt;BR /&gt;! internal QuickWin routine to set status bar at screen bottom &lt;BR /&gt;      interface  &lt;BR /&gt;       integer*4 function setstatusbar(msg) &lt;BR /&gt;	!DEC$ IF DEFINED (_X86_) &lt;BR /&gt;    !dec$ attributes C, alias: "__QWINTSetStatusBar" :: setstatusbar &lt;BR /&gt;	!DEC$ else &lt;BR /&gt;    !dec$ attributes C, alias: "_QWINTSetStatusBar" :: setstatusbar &lt;BR /&gt;	!DEC$ endif  &lt;BR /&gt;       integer msg ! to hold address of string &lt;BR /&gt;       end function setstatusbar &lt;BR /&gt;      end interface &lt;BR /&gt; &lt;BR /&gt;EXTERNAL NEWCOVER, OLDCOVER, ORIENT, COLOUR, ROTATE, SAVHPGLFIL &lt;BR /&gt;EXTERNAL PROJECTION, GLOBEHELP &lt;BR /&gt;! &lt;BR /&gt;! &lt;BR /&gt;OPEN(UNIT=9,FILE='GLOBEWIRE.LOG',STATUS='UNKNOWN',FORM='FORMATTED') &lt;BR /&gt;! &lt;BR /&gt;!	Set up graphics screen and get screen resolution details &lt;BR /&gt;! &lt;BR /&gt;	CALL SETVID(IVID,XYRAT) &lt;BR /&gt;      IF(IVID.LT.0) THEN &lt;BR /&gt;          WRITE(7,*)' FAILED TO SET WINDOW PARAMETERS' &lt;BR /&gt;          STOP &lt;BR /&gt;      ENDIF &lt;BR /&gt;	CALL CHILDMOVE(7,0,0,62,36) &lt;BR /&gt;	CALL SETTEXTWINDOW(0,0,80,36) &lt;BR /&gt;	CALL CHILDMIN(7) &lt;BR /&gt;!  &lt;BR /&gt;! Get the location of the current drive and directory from which GLOBEWIRE has been &lt;BR /&gt;! started. This will be the directory in which coverage files will be created &lt;BR /&gt;!  Get current directory on the current drive - load 'DIR' with current drive first &lt;BR /&gt;! &lt;BR /&gt;	DIR = FILE$CURDRIVE &lt;BR /&gt;	LENGTH = GETDRIVEDIRQQ(DIR) &lt;BR /&gt;	ISTARTD=0 &lt;BR /&gt;	IF (LENGTH .GT. 0) THEN &lt;BR /&gt;	STARTDIR=TRIM(ADJUSTL(FILE$CURDRIVE))//TRIM(ADJUSTL(DIR)) &lt;BR /&gt;	ISTARTD=1 &lt;BR /&gt;    WRITE(7,*) 'GLOBEWIRE.. STARTDIR= ',TRIM(ADJUSTL(STARTDIR)) &lt;BR /&gt;	ENDIF &lt;BR /&gt;! Set up 'Graphic' menu items &lt;BR /&gt;	RESULT=INSERTMENUQQ(4,0, $MENUENABLED, '&amp;amp;Graphic'C,                        NUL) &lt;BR /&gt;	RESULT=APPENDMENUQQ(4,   $MENUGRAYED,  '&amp;amp;Projection...'C,			PROJECTION) &lt;BR /&gt;	RESULT=APPENDMENUQQ(4,   $MENUGRAYED,  'Screen &amp;amp;Axes..'C,               ORIENT) &lt;BR /&gt;	RESULT=APPENDMENUQQ(4,   $MENUGRAYED,  '&amp;amp;Line/Background Colour..'C,    COLOUR) &lt;BR /&gt;	RESULT=APPENDMENUQQ(4,   $MENUGRAYED,  '&amp;amp;Rotate Graphic..'C,            ROTATE) &lt;BR /&gt;	RESULT=APPENDMENU
QQ(4,   $MENUGRAYED,  '&amp;amp;Save Graphic as HPGL file..'C, SAVHPGLFIL) &lt;BR /&gt;! add 'Open new file' item to 'FILE' menu &lt;BR /&gt;	RESULT=INSERTMENUQQ(1,1, $MENUENABLED, '&amp;amp;Add New Coverage...'C, NEWCOVER) &lt;BR /&gt;! add 'Add new file' item to 'FILE' menu &lt;BR /&gt;	RESULT=INSERTMENUQQ(1,2, $MENUENABLED, 'Add &amp;amp;Old Coverage...'C, OLDCOVER) &lt;BR /&gt;! add 'Datafiles..' menu as 5th menu, shifting 'State', 'Window' and 'Help' &lt;BR /&gt;! up 1 to menus 6, 7 and 8 &lt;BR /&gt;	RESULT=INSERTMENUQQ(5,0, $MENUGRAYED, '&amp;amp;Datafiles...'C,&lt;/PRE&gt;</description>
      <pubDate>Fri, 14 Sep 2001 22:43:08 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966932#M23096</guid>
      <dc:creator>isn-removed200637</dc:creator>
      <dc:date>2001-09-14T22:43:08Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966933#M23097</link>
      <description>&lt;PRE&gt; &lt;BR /&gt;PROGRAM GLOBEWIRE &lt;BR /&gt;!Main program containing loop to allow menus to be used &lt;BR /&gt;USE DFLIB &lt;BR /&gt;USE DFWIN &lt;BR /&gt;USE XFLOGM &lt;BR /&gt;!USE DFLOGM &lt;BR /&gt;USE INPUTINFO &lt;BR /&gt;! &lt;BR /&gt;IMPLICIT NONE &lt;BR /&gt;!GRAPHICS WINDOW HANDLE USED IN VARIOUS ROUTINES VIA COMMON GRWHND &lt;BR /&gt;CHARACTER($MAXPATH) GRTITLE &lt;BR /&gt;INTEGER*4  GWINHND &lt;BR /&gt;LOGICAL GRTIT &lt;BR /&gt;COMMON/GRWHND/ GRTITLE, GWINHND &lt;BR /&gt;COMMON/FILEINP/ INFILE,FILENG &lt;BR /&gt;COMMON/TOSLIDE/ IIS,JJS,KOUNTS,XYRATS, &amp;amp; &lt;BR /&gt;              XYZBEGS,XYZENDS,XYZCENS &lt;BR /&gt;REAL*8 XYZBEGS(3,80000),XYZENDS(3,80000),XYZCENS(3) &lt;BR /&gt;REAL*8 XYRATS &lt;BR /&gt;CHARACTER*60 INFILE &lt;BR /&gt;INTEGER*2 II,JJ, IIS,JJS, FILENG &lt;BR /&gt;INTEGER*4 ISTATUS,FOCRET,KOUNTS &lt;BR /&gt;COMMON/IDAXES/I1,I2,I3 &lt;BR /&gt;COMMON/ROTANGS/A1,A2,A3 &lt;BR /&gt;COMMON/SCRFORM/XYRAT &lt;BR /&gt;COMMON/STARTD/ STARTDIR, ISTARTD &lt;BR /&gt;REAL*8 XYRAT &lt;BR /&gt;REAL*8 A1,A2,A3, AMAT(3,3) &lt;BR /&gt;INTEGER*2 I1, I2, I3, IH, IV  &lt;BR /&gt;! &lt;BR /&gt;COMMON/HANDLETOPROC/ hWndProc &lt;BR /&gt;! &lt;BR /&gt;LOGICAL CHECKED &lt;BR /&gt;LOGICAL*4 RESULT, NEWT &lt;BR /&gt;INTEGER*4 I4, RETINT, HWND, HWNDPROC, HWNDPREV, NUMARG &lt;BR /&gt;INTEGER*2 IVID &lt;BR /&gt;CHARACTER*120 STATMESS &lt;BR /&gt;CHARACTER*20 RETHANDLE &lt;BR /&gt;CHARACTER($MAXPATH) DIR, BUFFER, NEWTITLE,STARTDIR &lt;BR /&gt;INTEGER(4) length, ISTARTD &lt;BR /&gt; &lt;BR /&gt;! &lt;BR /&gt;interface &lt;BR /&gt;integer function MyWndProc( hWnd, message, wParam,  lParam) &lt;BR /&gt;!DEC$ IF DEFINED(_X86_) &lt;BR /&gt;!DEC$ ATTRIBUTES STDCALL, ALIAS : '_MyWndProc@16':: MyWndProc &lt;BR /&gt;!DEC$ ELSE &lt;BR /&gt;!DEC$ ATTRIBUTES STDCALL, ALIAS : 'MyWndProc' :: MyWndProc &lt;BR /&gt;!DEC$ ENDIF &lt;BR /&gt;integer hWnd, message, wParam, lParam &lt;BR /&gt;end function &lt;BR /&gt;end interface &lt;BR /&gt;! &lt;BR /&gt;! internal QuickWin routine to set status bar at screen bottom &lt;BR /&gt;      interface  &lt;BR /&gt;       integer*4 function setstatusbar(msg) &lt;BR /&gt;	!DEC$ IF DEFINED (_X86_) &lt;BR /&gt;    !dec$ attributes C, alias: "__QWINTSetStatusBar" :: setstatusbar &lt;BR /&gt;	!DEC$ else &lt;BR /&gt;    !dec$ attributes C, alias: "_QWINTSetStatusBar" :: setstatusbar &lt;BR /&gt;	!DEC$ endif  &lt;BR /&gt;       integer msg ! to hold address of string &lt;BR /&gt;       end function setstatusbar &lt;BR /&gt;      end interface &lt;BR /&gt; &lt;BR /&gt;EXTERNAL NEWCOVER, OLDCOVER, ORIENT, COLOUR, ROTATE, SAVHPGLFIL &lt;BR /&gt;EXTERNAL PROJECTION, GLOBEHELP &lt;BR /&gt;! &lt;BR /&gt;! &lt;BR /&gt;OPEN(UNIT=9,FILE='GLOBEWIRE.LOG',STATUS='UNKNOWN',FORM='FORMATTED') &lt;BR /&gt;! &lt;BR /&gt;!	Set up graphics screen and get screen resolution details &lt;BR /&gt;! &lt;BR /&gt;	CALL SETVID(IVID,XYRAT) &lt;BR /&gt;      IF(IVID.LT.0) THEN &lt;BR /&gt;          WRITE(7,*)' FAILED TO SET WINDOW PARAMETERS' &lt;BR /&gt;          STOP &lt;BR /&gt;      ENDIF &lt;BR /&gt;	CALL CHILDMOVE(7,0,0,62,36) &lt;BR /&gt;	CALL SETTEXTWINDOW(0,0,80,36) &lt;BR /&gt;	CALL CHILDMIN(7) &lt;BR /&gt;!  &lt;BR /&gt;! Get the location of the current drive and directory from which GLOBEWIRE has been &lt;BR /&gt;! started. This will be the directory in which coverage files will be created &lt;BR /&gt;!  Get current directory on the current drive - load 'DIR' with current drive first &lt;BR /&gt;! &lt;BR /&gt;	DIR = FILE$CURDRIVE &lt;BR /&gt;	LENGTH = GETDRIVEDIRQQ(DIR) &lt;BR /&gt;	ISTARTD=0 &lt;BR /&gt;	IF (LENGTH .GT. 0) THEN &lt;BR /&gt;	STARTDIR=TRIM(ADJUSTL(FILE$CURDRIVE))//TRIM(ADJUSTL(DIR)) &lt;BR /&gt;	ISTARTD=1 &lt;BR /&gt;    WRITE(7,*) 'GLOBEWIRE.. STARTDIR= ',TRIM(ADJUSTL(STARTDIR)) &lt;BR /&gt;	ENDIF &lt;BR /&gt;! Set up 'Graphic' menu items &lt;BR /&gt;	RESULT=INSERTMENUQQ(4,0, $MENUENABLED, '&amp;amp;Graphic'C,                        NUL) &lt;BR /&gt;	RESULT=APPENDMENUQQ(4,   $MENUGRAYED,  '&amp;amp;Projection...'C,			PROJECTION) &lt;BR /&gt;	RESULT=APPENDMENUQQ(4,   $MENUGRAYED,  'Screen &amp;amp;Axes..'C,               ORIENT) &lt;BR /&gt;	RESULT=APPENDMENUQQ(4,   $MENUGRAYED,  '&amp;amp;Line/Background Colour..'C,    COLOUR) &lt;BR /&gt;	RESULT=APPENDMENUQQ(4,   $MENUGRAYED,  '&amp;amp;Rotate Graphic..'C,            ROTATE) &lt;BR /&gt;	RESULT=APPENDMENU
QQ(4,   $MENUGRAYED,  '&amp;amp;Save Graphic as HPGL file..'C, SAVHPGLFIL) &lt;BR /&gt;! add 'Open new file' item to 'FILE' menu &lt;BR /&gt;	RESULT=INSERTMENUQQ(1,1, $MENUENABLED, '&amp;amp;Add New Coverage...'C, NEWCOVER) &lt;BR /&gt;! add 'Add new file' item to 'FILE' menu &lt;BR /&gt;	RESULT=INSERTMENUQQ(1,2, $MENUENABLED, 'Add &amp;amp;Old Coverage...'C, OLDCOVER) &lt;BR /&gt;! add 'Datafiles..' menu as 5th menu, shifting 'State', 'Window' and 'Help' &lt;BR /&gt;! up 1 to menus 6, 7 and 8 &lt;BR /&gt;	RESULT=INSERTMENUQQ(5,0, $MENUGRAYED, '&amp;amp;Datafiles...'C,&lt;/PRE&gt;</description>
      <pubDate>Fri, 14 Sep 2001 22:44:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966933#M23097</guid>
      <dc:creator>isn-removed200637</dc:creator>
      <dc:date>2001-09-14T22:44:39Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966934#M23098</link>
      <description>&lt;PRE&gt; &lt;BR /&gt;! Insert 'Globewire Help' as item 2 in 'Help' menu, which is now the 8th menu  &lt;BR /&gt;	RESULT=INSERTMENUQQ(8,2, $MENUENABLED, '&amp;amp;Contents'C, GLOBEHELP) &lt;BR /&gt;! Delete the default 'Contents' menu item, which is the first item in the 'Help' menu &lt;BR /&gt;	RESULT=DELETEMENUQQ(8,1) &lt;BR /&gt;! &lt;BR /&gt;I4=ABOUTBOXQQ(' GLOBE Wireframe Views  Version 1.0
 copyright Rutherford Appleton Laboratory, 2001
 All rights reserved'C) &lt;BR /&gt;! Set the status bar &lt;BR /&gt;	STATMESS='No Input File Chosen..Use ''FILE'' Dialog to Select a File' &lt;BR /&gt;	STATMESS=ADJUSTL(ADJUSTR(STATMESS)) &lt;BR /&gt;	RETINT=SETSTATUSBAR(%LOC(STATMESS)) &lt;BR /&gt;! Choose a new title for the applications title bar &lt;BR /&gt;	NEWTITLE='GLOBEWIRE Display - Rutherford Appleton Laboratory'C &lt;BR /&gt;	HWND=GETHWNDQQ(QWIN$FRAMEWINDOW) &lt;BR /&gt;	NEWT=SetWindowText(HWND,NEWTITLE) &lt;BR /&gt;!IGNORE DRAG AND DROP FOR THE MOMENT AND FORCE OPENING OF 'WORLD.WIR' &lt;BR /&gt;! &lt;BR /&gt;! Drag and drop: &lt;BR /&gt;! Find out if an input file name was given on the command line and use it &lt;BR /&gt;    GO TO 1000 &lt;BR /&gt;	APMOD_FILE_INP = .FALSE. &lt;BR /&gt;	NUMARG=NARGS() &lt;BR /&gt;    IF(NUMARG.GT.1) THEN &lt;BR /&gt;	CALL GETARG(1,BUFFER,ISTATUS) &lt;BR /&gt;!    WRITE(*,*) 'INPUT FILE= ',TRIM(ADJUSTL(BUFFER(1:ISTATUS))) &lt;BR /&gt;        APMOD_INP=TRIM(ADJUSTL(BUFFER(1:ISTATUS)))//''C &lt;BR /&gt;        APMOD_FILE_INP = .TRUE. &lt;BR /&gt;		CHECKED=APMOD_FILE_INP &lt;BR /&gt;		CALL OPENF(CHECKED) &lt;BR /&gt;	ENDIF &lt;BR /&gt;1000 CONTINUE &lt;BR /&gt;	APMOD_FILE_INP = .FALSE. &lt;BR /&gt;	BUFFER=TRIM(STARTDIR)//'WORLD.WIR' &lt;BR /&gt;	APMOD_INP=TRIM(ADJUSTL(BUFFER))//''C &lt;BR /&gt;    APMOD_FILE_INP = .TRUE. &lt;BR /&gt;	CHECKED=APMOD_FILE_INP &lt;BR /&gt;	CALL OPENF(CHECKED) &lt;BR /&gt;!    FORCE A ROTATION TO DEFAULT VALUES &lt;BR /&gt;! &lt;BR /&gt;	  II=IIS &lt;BR /&gt;	  JJ=JJS &lt;BR /&gt;	  CALL NEWEULMAT(AMAT) &lt;BR /&gt;      CALL TRANS(AMAT) &lt;BR /&gt;! CLEAR THE SCREEN, SCALE THE DRAWING AND DRAW BOX READY FOR PLOT &lt;BR /&gt;      CALL ZSCALE(II,JJ) &lt;BR /&gt;! DRAW NEXT PLOT USING ARRAYS OF TRANSFORMED POINTS, &lt;BR /&gt;      CALL IGPLOT(II,JJ,ISTATUS) &lt;BR /&gt;	FOCRET=FOCUSQQ(0)  &lt;BR /&gt;! UPDATE STATUS BAR &lt;BR /&gt;	RETINT=SETSTATUSBAR(0) &lt;BR /&gt;	STATMESS=ADJUSTL(ADJUSTR('Data from '//INFILE(1:FILENG)//' Plotted..')) &lt;BR /&gt;	IF(II.EQ.1)STATMESS=TRIM(STATMESS)//'+X ACROSS..' &lt;BR /&gt;	IF(II.EQ.2)STATMESS=TRIM(STATMESS)//'+Y ACROSS..' &lt;BR /&gt;	IF(II.EQ.3)STATMESS=TRIM(STATMESS)//'+Z ACROSS..' &lt;BR /&gt;	IF(JJ.EQ.1)STATMESS=TRIM(STATMESS)//'+X UP' &lt;BR /&gt;	IF(JJ.EQ.2)STATMESS=TRIM(STATMESS)//'+Y UP' &lt;BR /&gt;	IF(JJ.EQ.3)STATMESS=TRIM(STATMESS)//'+Z UP' &lt;BR /&gt;	IF(I1.NE.0.OR.I2.NE.0.OR.I3.NE.0) STATMESS=TRIM(STATMESS)//'..ROTATED ABOUT' &lt;BR /&gt;	IF(I1.EQ.0)STATMESS=TRIM(STATMESS)//' ' &lt;BR /&gt;	IF(I1.EQ.1)STATMESS=TRIM(STATMESS)//' X,' &lt;BR /&gt;	IF(I1.EQ.2)STATMESS=TRIM(STATMESS)//' Y,' &lt;BR /&gt;	IF(I1.EQ.3)STATMESS=TRIM(STATMESS)//' Z,' &lt;BR /&gt;	IF(I2.EQ.0)STATMESS=TRIM(STATMESS)//' ' &lt;BR /&gt;	IF(I2.EQ.1)STATMESS=TRIM(STATMESS)//' X,' &lt;BR /&gt;	IF(I2.EQ.2)STATMESS=TRIM(STATMESS)//' Y,' &lt;BR /&gt;	IF(I2.EQ.3)STATMESS=TRIM(STATMESS)//' Z,' &lt;BR /&gt;	IF(I3.EQ.0)STATMESS=TRIM(STATMESS)//' ' &lt;BR /&gt;	IF(I3.EQ.1)STATMESS=TRIM(STATMESS)//' X,' &lt;BR /&gt;	IF(I3.EQ.2)STATMESS=TRIM(STATMESS)//' Y,' &lt;BR /&gt;	IF(I3.EQ.3)STATMESS=TRIM(STATMESS)//' Z,' &lt;BR /&gt;!	terminate string with a 'null' character  &lt;BR /&gt;	STATMESS=ADJUSTL(ADJUSTR(STATMESS)//''C) &lt;BR /&gt;	RETINT=SETSTATUSBAR(%LOC(STATMESS)) &lt;BR /&gt;! UPDATE GRAPHICS WINDOW TITLE BAR &lt;BR /&gt;	GRTIT=SETWINDOWTEXT(GWINHND,''C) &lt;BR /&gt;	GRTITLE=ADJUSTL(ADJUSTR('Display of '//INFILE(1:FILENG))) &lt;BR /&gt;	IF(II.EQ.1)GRTITLE=TRIM(GRTITLE)//'   +X Across..' &lt;BR /&gt;	IF(II.EQ.2)GRTITLE=TRIM(GRTITLE)//'   +Y Across..' &lt;BR /&gt;	IF(II.EQ.3)GRTITLE=TRIM(GRTITLE)//'   +Z Across..' &lt;BR /&gt;	IF(JJ.EQ.1)GRTITLE=TRIM(GRTITLE)//'   +X Up' &lt;BR /&gt;	IF(JJ.EQ.2)GRTITL
E=TRIM(GRTITLE)//'   +Y Up' &lt;BR /&gt;	IF(JJ.EQ.3)GRTITLE=TRIM(GRTITLE)//'   +Z Up' &lt;BR /&gt;	IF(I1.NE.0.OR.I2.NE.0.OR.I3.NE.0) GRTITLE=TRIM(GRTITLE)//'   ..Rotated about' &lt;BR /&gt;	IF(I1.EQ.0)GRTITLE=TRIM(GRTITLE)//' ' &lt;BR /&gt;	IF(I1.EQ.1)GRTITLE=TRIM(GRTITLE)//'  X,' &lt;BR /&gt;	IF(I1.EQ.2)GRTITLE=TRIM(GRTITLE)//'  Y,' &lt;BR /&gt;	IF(I1.EQ.3)GRTITLE=TRIM(GRTITLE)//'  Z,' &lt;BR /&gt;	IF(I2.EQ.0)GRTITLE=TRIM(GRTITLE)//'  ' &lt;BR /&gt;	IF(I2.EQ.1)GRTITLE=TRIM(GRTITLE)//'  X,' &lt;BR /&gt;	IF(I2.EQ.2)GRTITLE=TRIM(GRTITLE)//'  Y,' &lt;BR /&gt;	IF(I2.EQ.3)GRTITLE=TRIM(GRTITLE)//'  Z,' &lt;BR /&gt;	IF(I3.EQ.0)GRTITLE=TRIM(GRTITLE)//'  ' &lt;BR /&gt;	IF(I3.EQ.1)GRTITLE=TRIM(GRTITLE)//&lt;/PRE&gt;</description>
      <pubDate>Fri, 14 Sep 2001 22:46:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966934#M23098</guid>
      <dc:creator>isn-removed200637</dc:creator>
      <dc:date>2001-09-14T22:46:58Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966935#M23099</link>
      <description>&lt;PRE&gt; &lt;BR /&gt;	IF(I3.EQ.1)GRTITLE=TRIM(GRTITLE)//'  X,' &lt;BR /&gt;	IF(I3.EQ.2)GRTITLE=TRIM(GRTITLE)//'  Y,' &lt;BR /&gt;	IF(I3.EQ.3)GRTITLE=TRIM(GRTITLE)//'  Z,' &lt;BR /&gt;!	terminate string with a 'null' character and then send it to the window  &lt;BR /&gt;	GRTITLE=ADJUSTL(ADJUSTR(GRTITLE)//''C) &lt;BR /&gt;	GRTIT=SetWindowText(GWINHND,GRTITLE) &lt;BR /&gt;! 	FOCRET=FOCUSQQ(0)  &lt;BR /&gt;! &lt;BR /&gt; &lt;BR /&gt;! Just for interest, get the handle to the default window procedure, &lt;BR /&gt;! using the value for HWND obtained above using	HWND=GETHWNDQQ(QWIN$FRAMEWINDOW) &lt;BR /&gt; HWNDPROC=GetWindowLong(HWND, GWL_WNDPROC) &lt;BR /&gt; WRITE(RETHANDLE,'(I20)')HWNDPROC &lt;BR /&gt;! RETINT=MESSAGEBOXQQ(" PROC HANDLE = "//RETHANDLE//''C,"GETWINDOWLONG RESULT"C, &amp;amp; &lt;BR /&gt;!                    MB$OK.OR.MB$ICONEXCLAMATION) &lt;BR /&gt; &lt;BR /&gt; ! Set MyWndProc as the new window procedure, saving the pointer to the old or &lt;BR /&gt; ! previous window procedure in HWNDPREV. HWNDPREV is used in MyWndProc for &lt;BR /&gt; ! obtaining default processing. &lt;BR /&gt; &lt;BR /&gt; HWNDPREV=SetWindowLong(HWND, GWL_WNDPROC, LOC(MyWndProc)) &lt;BR /&gt; WRITE(RETHANDLE,'(I20)')HWNDPREV &lt;BR /&gt;! RETINT=MESSAGEBOXQQ("  setwindowlong result = "//RETHANDLE//''C,"SETWINDOWLONG RESULT"C, &amp;amp; &lt;BR /&gt;!                   MB$OK.OR.MB$ICONEXCLAMATION) &lt;BR /&gt; &lt;BR /&gt;! Start endless loop to let menus take over &lt;BR /&gt;DO WHILE(.TRUE.) &lt;BR /&gt;CALL SLEEPQQ(500) &lt;BR /&gt;END DO &lt;BR /&gt;END &lt;BR /&gt; &lt;BR /&gt;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! &lt;BR /&gt;!! MyWndProc &lt;BR /&gt;!! &lt;BR /&gt;!! This is the my window procedure for intercepting WM_HELP commands &lt;BR /&gt;!! issued by pressing the F1 key, and for processing the troublesome WM_ENTERIDLE message &lt;BR /&gt;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! &lt;BR /&gt;integer function MyWndProc ( hWnd, mesg, wParam, lParam ) &lt;BR /&gt;!DEC$ IF DEFINED(_X86_) &lt;BR /&gt;!DEC$ ATTRIBUTES STDCALL, ALIAS : '_MyWndProc@16':: MyWndProc &lt;BR /&gt;!DEC$ ELSE &lt;BR /&gt;!DEC$ ATTRIBUTES STDCALL, ALIAS : 'MyWndProc' :: MyWndProc &lt;BR /&gt;!DEC$ ENDIF &lt;BR /&gt;   use dflib &lt;BR /&gt;   use dfwin &lt;BR /&gt; &lt;BR /&gt;   implicit none &lt;BR /&gt; &lt;BR /&gt;! &lt;BR /&gt;! internal QuickWin routine to set status bar at screen bottom &lt;BR /&gt;! (was used for sending diagnostic messages at one stage. No longer used here) &lt;BR /&gt;      interface  &lt;BR /&gt;       integer*4 function setstatusbar(msg) &lt;BR /&gt;	!DEC$ IF DEFINED (_X86_) &lt;BR /&gt;    !dec$ attributes C, alias: "__QWINTSetStatusBar" :: setstatusbar &lt;BR /&gt;	!DEC$ else &lt;BR /&gt;    !dec$ attributes C, alias: "_QWINTSetStatusBar" :: setstatusbar &lt;BR /&gt;	!DEC$ endif  &lt;BR /&gt;       integer msg ! to hold address of string &lt;BR /&gt;       end function setstatusbar &lt;BR /&gt;      end interface &lt;BR /&gt; &lt;BR /&gt;   common/handletoproc/ hWndProc      ! locates previous (default) window procedure &lt;BR /&gt; &lt;BR /&gt;   integer*4 hWnd, hWndloc,hWndProc, hWndcapture &lt;BR /&gt;   integer*4 mesg, mesgloc &lt;BR /&gt;   integer*4 wParam, wParamloc &lt;BR /&gt;   integer*4 lParam, lParamloc &lt;BR /&gt;   integer*4 pHI			!	pointer to HELPINFO structure needed by WM_HELP command &lt;BR /&gt; &lt;BR /&gt;	character*20 hWndchar, hFramechar &lt;BR /&gt;	character*20 ictypchar, ictrlchar, itemhandchar, contidchar &lt;BR /&gt;	character($maxpath) message &lt;BR /&gt; &lt;BR /&gt;   type T_HELPINFO			!   define HELPINFO structure   &lt;BR /&gt;    INTEGER cbSize   &lt;BR /&gt;    INTEGER iContextType   &lt;BR /&gt;    INTEGER iCtrlID   &lt;BR /&gt;    INTEGER hItemHandle   &lt;BR /&gt;    INTEGER dwContextID   &lt;BR /&gt;    TYPE(T_POINT) MousePos   &lt;BR /&gt;   end type  &lt;BR /&gt;!	HELPINFO structure pointed to by WM_HELP command pointer &lt;BR /&gt;   type (T_HELPINFO)::         HI; pointer(pHI, HI) &lt;BR /&gt;! Define the WM_HELP parameter here, just in case it is not &lt;BR /&gt;! already included in one of the USEd modules. Give it another name &lt;BR /&gt;! to avoid a clash if
 it is already defined locally. &lt;BR /&gt;   integer(4), parameter::     WM_HELP_       = #0053 &lt;BR /&gt;! &lt;BR /&gt;	integer*4	 retint, rethelp, ctrlid, hWndframe &lt;BR /&gt;!   &lt;BR /&gt;	select case ( mesg ) &lt;BR /&gt;  &lt;BR /&gt; &lt;BR /&gt;   ! WM_ENTERIDLE  &lt;BR /&gt;      case (WM_ENTERIDLE) &lt;BR /&gt;! Jugoslav Dujic solved the problem by discovering that the WM_ENTERIDLE &lt;BR /&gt;! message was the problem. &lt;BR /&gt;! Trap this here to prevent interfering QuickWin Help search &lt;BR /&gt;		MyWndProc=0 &lt;BR /&gt;  &lt;BR /&gt;!	 WM_HELP:  &lt;BR /&gt;      case (WM_HELP_) &lt;BR /&gt;!  Get HELPINFO data into HI, pointed to by pHI, by setting the pointer pHI to lParam &lt;BR /&gt;        pHI=lParam &lt;BR /&gt;		ctrlid=HI%iCtrlID &lt;BR /&gt;		go to 1000      ! un-comment/comment this to&lt;/PRE&gt;</description>
      <pubDate>Fri, 14 Sep 2001 22:50:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966935#M23099</guid>
      <dc:creator>isn-removed200637</dc:creator>
      <dc:date>2001-09-14T22:50:19Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966936#M23100</link>
      <description>THIS IS DIABOLICAL!  WHERE IS MY CODE GOING TO? &lt;BR /&gt;HERE IS THE RESTY??? &lt;BR /&gt; &lt;BR /&gt;&lt;PRE&gt; &lt;BR /&gt;		go to 1000      ! un-comment/comment this to skip/execute the diagnostic stuff &lt;BR /&gt;!		diagnostic stuff used to check on control id's being sent in WM_HELP &lt;BR /&gt;!       in the HELPINFO structure pointed to by lParam &lt;BR /&gt;		hWndframe=GETHWNDQQ(QWIN$FRAMEWINDOW) &lt;BR /&gt;		write(hwndchar,'(i20)') hWnd &lt;BR /&gt;		write(hframechar,'(i20)') hWndframe &lt;BR /&gt;		message='Calling window handle= '//hWndchar//', frame window handle ='//hframechar//''C &lt;BR /&gt;		retint=messageboxqq(message,'WM_HELP COMMAND PROCESSING'C, &amp;amp; &lt;BR /&gt;		MB$OK.OR.MB$ICONEXCLAMATION) &lt;BR /&gt;		write(ictypchar,'(i20)') HI%iContextType &lt;BR /&gt;		write(ictrlchar,'(i20)') HI%iCtrlID &lt;BR /&gt;		write(itemhandchar,'(i20)') HI%hItemHandle &lt;BR /&gt;		write(contidchar,'(i20)') HI%dwContextID &lt;BR /&gt;		message='Context type= '//ictypchar//'Control ID='//ictrlchar//'Handle='//&amp;amp; &lt;BR /&gt;		itemhandchar//'ContextID='//contidchar//''c &lt;BR /&gt;		retint=messageboxqq(message,'WM_HELP COMMAND PROCESSING'C, &amp;amp; &lt;BR /&gt;		MB$OK.OR.MB$ICONEXCLAMATION) &lt;BR /&gt;!		end diagnostic stuff &lt;BR /&gt; 1000 continue &lt;BR /&gt;		rethelp=WINHELP(hWnd,           &amp;amp; &lt;BR /&gt;!				'C:PROGRAM FILESHELP WORKSHOPPROJECTSGLOBEWIREGLOBEWIRE.HLP'//''C, &amp;amp; &lt;BR /&gt;				'GLOBEWIRE.HLP'C,			 &amp;amp; &lt;BR /&gt;				HELP_CONTEXTPOPUP, ctrlid  ) &lt;BR /&gt;		MyWndProc = rethelp &lt;BR /&gt; &lt;BR /&gt;!	 DEFAULT PROCESSING  &lt;BR /&gt;    case default &lt;BR /&gt;!		Let the default window proc handle all other messages &lt;BR /&gt;		MyWndProc = CallWindowProc(hWndProc, hWnd, mesg, wParam, lParam ) &lt;BR /&gt; &lt;BR /&gt;    end select &lt;BR /&gt;	return &lt;BR /&gt; &lt;BR /&gt;  end function MyWndProc &lt;BR /&gt; &lt;BR /&gt;&lt;/PRE&gt;!</description>
      <pubDate>Fri, 14 Sep 2001 22:57:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966936#M23100</guid>
      <dc:creator>isn-removed200637</dc:creator>
      <dc:date>2001-09-14T22:57:19Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966937#M23101</link>
      <description>There is a size limit on posts - I don't know exactly what it is.&lt;BR /&gt;&lt;BR /&gt;Steve</description>
      <pubDate>Sat, 15 Sep 2001 00:17:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966937#M23101</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2001-09-15T00:17:26Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966938#M23102</link>
      <description>Many thanks, Mr.Dujic and Mr.Richards for your help and suggestions. As you recommended I used the subclass module from the Poker sample and modified it and it works as far as I can see. I also tried to setup the GLOBEWIRE workspace with the source code you included in your e-mails, but there were too many unresolved externals at the moment. &lt;BR /&gt;Many thanks again for taking the trouble.</description>
      <pubDate>Mon, 17 Sep 2001 18:27:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966938#M23102</guid>
      <dc:creator>presser</dc:creator>
      <dc:date>2001-09-17T18:27:51Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966939#M23103</link>
      <description>There remains one problem so far in using context-sensitive help for menu items in my QuickWin project. Although the desired help topic is displayed correctly, there appears always a messagebox together with the topic saying that there is no help for this topic. I can't get rid of it. Is there any means to suppress that message?  &lt;BR /&gt;Thank you very much.</description>
      <pubDate>Fri, 28 Sep 2001 20:11:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966939#M23103</guid>
      <dc:creator>presser</dc:creator>
      <dc:date>2001-09-28T20:11:59Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966940#M23104</link>
      <description>I assume that, as in my case, the message box was the result of the QUICKWIN Help file being also called for as a result of F1 being pressed. &lt;P&gt; &lt;BR /&gt;If you are solving the help problem by sub-classing, as recommended in earlier postings to this thread, then you should be intercepting WM_HELP messages to the procedure handling messages for the window with the menu  that F1 causes in the window procedure (call it MyWndProc for example)  that you have inserted in place of the original one (call it PrevWndProc ). What I found (as a result of Jugoslav Dujic's efforts) was  that the WM_ENTERIDLE also had to be intercepted and not passed on to the original window procedure. SO you should have something like &lt;BR /&gt;&lt;PRE&gt; 
 
   integer*4 pHI !	pointer to HELPINFO structure needed by WM_HELP command   
 !	HELPINFO structure pointed to by WM_HELP command pointer   
   type (T_HELPINFO)::         HI; pointer(pHI, HI)   
! Define the WM_HELP parameter here, just in case it is not   
! already included in one of the USEd modules. Give it another name   
! to avoid a clash if it is already defined locally.   
   integer(4), parameter::     WM_HELP_       = #0053   
!   
	integer*4	 retint, rethelp, ctrlid, hWndframe   
!     
	select case ( mesg )      ! WM_ENTERIDLE    
      case (WM_ENTERIDLE)   
! Jugoslav Dujic solved the problem by discovering that the WM_ENTERIDLE   
! message was the problem.   
! Trap this here to prevent interfering QuickWin Help search   
		MyWndProc=0   !	 WM_HELP:    
      case (WM_HELP_)   
!  Get HELPINFO data into HI, pointed to by pHI, by setting the pointer pHI to lParam   
        pHI=lParam   
       ctrlid=HI%iCtrlID  
&lt;/PRE&gt;  &lt;BR /&gt;I found that intercepting this WM_ENTERIDLE halted the QuickWIn frame windows call to WInHelp that is started at the same time. I do not understand exactly why this behaviour happens, but it solved my problem.&lt;/P&gt;</description>
      <pubDate>Fri, 28 Sep 2001 20:36:05 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966940#M23104</guid>
      <dc:creator>isn-removed200637</dc:creator>
      <dc:date>2001-09-28T20:36:05Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966941#M23105</link>
      <description>Thank you very much again for your help. With intercepting the WM_ENTERIDLE command in MyWndProc, the box with the message: "no help available for this item" disappeared. &lt;BR /&gt;I'm feeling a bit like in the fairy-tale:" the fisherman and his wife", when I put another question. Is there a possibility to use submenus in a Quickwin project? I mean in the way, that further menu  items are displayed automaticly with a menu item highlighted with the mouse.</description>
      <pubDate>Mon, 01 Oct 2001 17:48:16 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966941#M23105</guid>
      <dc:creator>presser</dc:creator>
      <dc:date>2001-10-01T17:48:16Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966942#M23106</link>
      <description>Well, yes, at the same price as F1 -- you have to take care about handling. &lt;BR /&gt;Here's a routine that installs submenus to QuickWin main menu. From then on, &lt;BR /&gt;you have to process WM_COMMAND in subclassed FrameWindowProc.  &lt;BR /&gt;The code below installs four submenus, each with nItems, to first four items of 1st drop-down menu. Well, it's little dusty, and it's a bit complicated (in order to make code shorter) but the point is using CreatePopupMenu/ AppendMenu/ ModifyMenu. &lt;BR /&gt; &lt;BR /&gt;&lt;PRE&gt; 
!================================================================= 
SUBROUTINE AdditionalMenus() 
USE COMCTL 
USE MSFWIN 
USE MSFLIB 
USE REGISTRY 
 
IMPLICIT INTEGER(h-n) 
 
INCLUDE 'Resource.fd' 
 
CHARACTER*24::      szMenuName(0:3)=(/'&amp;amp;Topology Analyser&amp;#0;    'C,      &amp;amp; 
                                      '&amp;amp;Load Flow&amp;#0;            'C,      &amp;amp; 
                                      'State &amp;amp;Estimation&amp;#0;     'C,      &amp;amp; 
                                      'Voltage &amp;amp;Control&amp;#0;     'C/) 
CHARACTER*32::      szItemName(4,0:3)=                                  &amp;amp; 
                             (/'&amp;amp;Voltage level coloring&amp;#0;     'C,       &amp;amp; 
                               '&amp;amp;Area coloring&amp;#0;              'C,       &amp;amp; 
                               '&amp;amp;Feeder coloring&amp;#0;            'C,       &amp;amp; 
                               '&amp;amp;Energization coloring&amp;#0;      'C,       &amp;amp; 
                               '&amp;amp;Display options...&amp;#0;         'C,       &amp;amp; 
                               '&amp;#0;                            'C,       &amp;amp; 
                               '&amp;#0;                            'C,       &amp;amp; 
                               '&amp;#0;                            'C,       &amp;amp; 
                               '&amp;amp;Options...&amp;#0;                 'C,       &amp;amp; 
                               '&amp;amp;Show toolbar&amp;#0;               'C,       &amp;amp; 
                               '&amp;#0;                            'C,       &amp;amp; 
                               '&amp;#0;                            'C,       &amp;amp; 
                               '&amp;amp;Voltage quality&amp;#0;            'C,       &amp;amp; 
                               'Operation planning&amp;#0;          'C,       &amp;amp; 
                               '&amp;#0;                            'C,       &amp;amp; 
                               '&amp;#0;                            'C/) 
 
INTEGER,PARAMETER::     nItems(0:3)=(/4,1,2,4/) 
INTEGER,PARAMETER::     IDItem(4,0:3)=                                  &amp;amp; 
                        (/ID_BUTTON_PONAP,                              &amp;amp; 
                          ID_BUTTON_POGRA,                              &amp;amp; 
                          ID_BUTTON_POIZV,                              &amp;amp; 
                          ID_BUTTON_POSTA,                              &amp;amp; 
                          ID_BUTTON_TS,                                 &amp;amp; 
                          0,0,0,                                        &amp;amp; 
                          ID_BUTTON_ESTOPC,                             &amp;amp; 
                          ID_BUTTON_VREME,                              &amp;amp; 
                          0,0,                                          &amp;amp; 
                          ID_BUTTON_OPTIMALNINAPON,                     &amp;amp; 
                          ID_BUTTON_KVALITETNAPONA,                     &amp;amp; 
                          0,                                            &amp;amp; 
                          ID_BUTTON_OPPLAN/) 
 
hMenu=GetMenu(hFrame) 
hMenu1=GetSubMenu(hMenu,0) 
DO i=0,3 
      hAddMenu=CreatePopupMenu() 
      DO j=1,nItems(i) 
            iFlags=MF_BYPOSITION.OR.MF_STRING.OR.MF_EN
ABLED 
            IF (i.EQ.0 .AND. j.EQ.4) iFlags=IOR(iFlags,MF_CHECKED) 
            IF (i.EQ.3 .AND. j.EQ.3) iFlags=MF_BYPOSITION.OR.MF_SEPARATOR 
            iSt=AppendMenu(hAddMenu,iFlags,IDItem(j,i),LOC(szItemName(j,i))) 
      END DO 
      iSt=ModifyMenu(hMenu1,i,MF_BYPOSITION.OR.MF_POPUP.OR.MF_STRING.OR.MF_ENABLED, &amp;amp; 
                     hAddMenu,LOC(szMenuName(i))) 
END DO 
 
END SUBROUTINE AdditionalMenus 
&lt;/PRE&gt; &lt;BR /&gt; &lt;BR /&gt;Continued i</description>
      <pubDate>Mon, 01 Oct 2001 20:24:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966942#M23106</guid>
      <dc:creator>Jugoslav_Dujic</dc:creator>
      <dc:date>2001-10-01T20:24:06Z</dc:date>
    </item>
    <item>
      <title>Re: F1 key Winhelp and QuickWin problems</title>
      <link>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966943#M23107</link>
      <description>What a preciseness -- only three &lt;B&gt;words&lt;/B&gt; got cut by Forum software :-). &lt;BR /&gt;All that is left is to process WM_COMMAND message in subclassed frame window proc. ID_ constants above are PARAMETERs (you can add them as resource.fd constants using "Resource symbols" from context-menu for "MyApp resources" in ResourceView, or hard-code them other way). &lt;BR /&gt; &lt;BR /&gt;&lt;PRE&gt; 
SELECT CASE(Msg) 
... 
CASE(WM_COMMAND) 
    SELECT CASE(LOWORD(wParam)) 
    CASE(ID_BUTTON_PONAP) 
        !Do something here 
    CASE(... 
    CASE DEFAULT 
        FrameWindowProc=CallWindowProc(lpfnOldFrameProc, hWnd, Msg, wParam, lParam) 
... 
&lt;/PRE&gt; &lt;BR /&gt; &lt;BR /&gt;Regards&lt;BR /&gt; &lt;BR /&gt;Jugoslav</description>
      <pubDate>Mon, 01 Oct 2001 21:09:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/F1-key-Winhelp-and-QuickWin-problems/m-p/966943#M23107</guid>
      <dc:creator>Jugoslav_Dujic</dc:creator>
      <dc:date>2001-10-01T21:09:23Z</dc:date>
    </item>
  </channel>
</rss>

