Re: [Harbour] SF.net SVN: harbour-project:[14273] trunk/harbour
Hi Viktor, Remember my Fixing about this .- 2010-03-01 14:45 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) ... * src/rtl/gtwvt/gtwvt.c ! Reverted close/SETCANCEL/HB_GTI_CLOSABLE behavior to match the old one and that of other GTs. Also see: 2008-06-25 11:49 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) Please use HB_GTI_CLOSABLE and HB_GTI_NOTIFIERBLOCK to control GUI window close behavior. ... 2010-03-01 04:05 UTC+0100 Xavi (jarabal/at/gmail.com) * harbour/src/rtl/gtwvt/gtwvt.c ! Fixing WM_CLOSE event (Clicked 'X' on system menu) to avoid irregular shutdown with SETCANCEL( .F. ) REQUEST HB_GT_WVT_DEFAULT ANNOUNCE HB_GTSYS PROCEDURE Main() SetCancel(.F.) ? "Click [X] Not close windows" while( LastKey() != 27 ) Inkey( 1 ) enddo RETURN Best regars, Xavi El 06/04/2010 11:29, Viktor Szakáts escribió: On Tue, Apr 6, 2010 at 10:40 AM, Xavi wrote: El 06/04/2010 9:33, Viktor Szakáts escribió: False. In GTWVT it will only do it if callback says to do so, and it instantly exists the application (that's why it modifies this flag internally - I guess). GTWVT do this without callback, you need to program a express callback to not do so return 1 i.e. if not exist NotifierBlock "callback" hb_gt_wvt_FireEvent return 0 and do so. static int hb_gt_wvt_FireEvent( PHB_GTWVT pWVT, int nEvent ) { int nResult = 0; /* Unhandled */ if( pWVT->pGT->pNotifierBlock ) { ... } return nResult; } ... case WM_CLOSE: /* Clicked 'X' on system menu */ if( hb_gt_wvt_FireEvent( pWVT, HB_GTE_CLOSE ) == 0 ) { PHB_ITEM pItem = hb_itemPutL( NULL, HB_TRUE ); hb_setSetItem( HB_SET_CANCEL, pItem );... ... In GTWIN, it just sets the SETCANCEL flag and lets the app continue to run. This is wrong solution. SETCANCEL is not something the app sets. SETCANCEL is a way to let app developers _control_ the behavior of Ctrl+C. Nothing more. What you committed just creates a hidden extension plus incompatible to Clipper behavior (since in Clipper SETCANCEL flag was never modified by window closure). Brgds, Viktor ___ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour ___ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour
Re: [Harbour] SF.net SVN: harbour-project:[14273] trunk/harbour
On Tue, Apr 6, 2010 at 10:40 AM, Xavi wrote: > El 06/04/2010 9:33, Viktor Szakáts escribió: >> >> False. In GTWVT it will only do it if callback says to do so, >> and it instantly exists the application (that's why it modifies >> this flag internally - I guess). > > GTWVT do this without callback, you need to program a express callback to > not do so return 1 i.e. > if not exist NotifierBlock "callback" hb_gt_wvt_FireEvent return 0 and do > so. > > static int hb_gt_wvt_FireEvent( PHB_GTWVT pWVT, int nEvent ) > { > int nResult = 0; /* Unhandled */ > > if( pWVT->pGT->pNotifierBlock ) > { > ... > } > > return nResult; > } > ... > case WM_CLOSE: /* Clicked 'X' on system menu */ > if( hb_gt_wvt_FireEvent( pWVT, HB_GTE_CLOSE ) == 0 ) > { > PHB_ITEM pItem = hb_itemPutL( NULL, HB_TRUE ); > hb_setSetItem( HB_SET_CANCEL, pItem );... > ... > >> In GTWIN, it just sets the SETCANCEL flag and lets the >> app continue to run. This is wrong solution. SETCANCEL is not something the app sets. SETCANCEL is a way to let app developers _control_ the behavior of Ctrl+C. Nothing more. What you committed just creates a hidden extension plus incompatible to Clipper behavior (since in Clipper SETCANCEL flag was never modified by window closure). Brgds, Viktor ___ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour
Re: [Harbour] SF.net SVN: harbour-project:[14273] trunk/harbour
El 06/04/2010 9:33, Viktor Szakáts escribió: False. In GTWVT it will only do it if callback says to do so, and it instantly exists the application (that's why it modifies this flag internally - I guess). GTWVT do this without callback, you need to program a express callback to not do so return 1 i.e. if not exist NotifierBlock "callback" hb_gt_wvt_FireEvent return 0 and do so. static int hb_gt_wvt_FireEvent( PHB_GTWVT pWVT, int nEvent ) { int nResult = 0; /* Unhandled */ if( pWVT->pGT->pNotifierBlock ) { ... } return nResult; } ... case WM_CLOSE: /* Clicked 'X' on system menu */ if( hb_gt_wvt_FireEvent( pWVT, HB_GTE_CLOSE ) == 0 ) { PHB_ITEM pItem = hb_itemPutL( NULL, HB_TRUE ); hb_setSetItem( HB_SET_CANCEL, pItem );... ... In GTWIN, it just sets the SETCANCEL flag and lets the app continue to run. This is what I tried to say and do many times. Could you explain what must be the behavior for both? I've no objection to change. Best regars, Xavi ___ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour
Re: [Harbour] SF.net SVN: harbour-project:[14273] trunk/harbour
> Sorry... ??? > This does the same that GTWVT so the same code has the same behavior in > both. False. In GTWVT it will only do it if callback says to do so, and it instantly exists the application (that's why it modifies this flag internally - I guess). In GTWIN, it just sets the SETCANCEL flag and lets the app continue to run. Overall I don't see what did you solve, and your ChangeLog entry doesn't help at all to find it out: "Fixed CTRL_CLOSE_EVENT according to present project goals" simply means nothing. Pls describe what you did and why, such meaningless plugs don't help the case. Brgds, Viktor ___ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour
Re: [Harbour] SF.net SVN: harbour-project:[14273] trunk/harbour
El 06/04/2010 8:26, Viktor Szakáts escribió: Sorry to ask, but what is this patch meant to do? It looks totally wrong to modify SETCANCEL flag internally from GT code, pls revert ASAP! Sorry... ??? This does the same that GTWVT so the same code has the same behavior in both. Best regards, Xavi ___ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour
Re: [Harbour] SF.net SVN: harbour-project:[14273] trunk/harbour
Sorry to ask, but what is this patch meant to do? It looks totally wrong to modify SETCANCEL flag internally from GT code, pls revert ASAP! Brgds, Viktor On Tue, Apr 6, 2010 at 3:01 AM, wrote: > Revision: 14273 > > http://harbour-project.svn.sourceforge.net/harbour-project/?rev=14273&view=rev > Author: jarabal > Date: 2010-04-06 01:01:13 + (Tue, 06 Apr 2010) > > Log Message: > --- > 2010-04-06 03:00 UTC+0200 Xavi (jarabal/at/gmail.com) > * harbour/src/rtl/gtwin/gtwin.c > ! Fixed CTRL_CLOSE_EVENT according to present project goals. > > Modified Paths: > -- > trunk/harbour/ChangeLog > trunk/harbour/src/rtl/gtwin/gtwin.c > > > This was sent by the SourceForge.net collaborative development platform, the > world's largest Open Source development site. > ___ > Harbour mailing list (attachment size limit: 40KB) > Harbour@harbour-project.org > http://lists.harbour-project.org/mailman/listinfo/harbour > ___ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour
[Harbour] SF.net SVN: harbour-project:[14273] trunk/harbour
Revision: 14273 http://harbour-project.svn.sourceforge.net/harbour-project/?rev=14273&view=rev Author: jarabal Date: 2010-04-06 01:01:13 + (Tue, 06 Apr 2010) Log Message: --- 2010-04-06 03:00 UTC+0200 Xavi (jarabal/at/gmail.com) * harbour/src/rtl/gtwin/gtwin.c ! Fixed CTRL_CLOSE_EVENT according to present project goals. Modified Paths: -- trunk/harbour/ChangeLog trunk/harbour/src/rtl/gtwin/gtwin.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ___ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour