From: YuLianqing <yu...@li...> - 2011-06-01 15:07:42
Attachments:
vgui_gtk2_dialog_impl.cxx
vgui_viewer3D_tableau.cxx
|
Hi maintainers, I’ve found two bugs in vgui and would like to provide a patch to fix them. The first one is in the constructor of vgui_viewer3D_tableau. The problematic code is: c_lock_dolly(vgui_key('D')), c_lock_zoom(vgui_key('Z')), c_lighting(vgui_key('l')), c_shading(vgui_key('s')), c_spinning(vgui_key('p')), c_render_mode(vgui_key('r')), c_niceness(vgui_key('n')), c_headlight(vgui_key('h')), c_save_home(vgui_key('>')), c_restore_home(vgui_key('<')), All these class members are of the type vgui_event_condition and define the conditions for events dolly, zoom and so on. For example, the user presses ‘D’ to dolly the view. However, according to the definition of vgui_event_condition, the constructor vgui_event_condition(vgui_key ascii_code, bool is_pressed = true); is called instead of the constuctor vgui_event_condition(vgui_key k, vgui_modifier m, bool is_pressed = true); The former constructor sets vgui_event_condition::ascii_code whereas the latter sets vgui_event_condition::key with the user specified argument. In this case, I believe it is vgui_event_condition::key that should be set. As a result, when the user presses ‘D’, he actually cannot dolly the view. The fix is to call the latter constructor with the code: c_lock_dolly(vgui_key('D'), vgui_MODIFIER_NULL), c_lock_zoom(vgui_key('Z'), vgui_MODIFIER_NULL), c_lighting(vgui_key('l'), vgui_MODIFIER_NULL), c_shading(vgui_key('s'), vgui_MODIFIER_NULL), c_spinning(vgui_key('p'), vgui_MODIFIER_NULL), c_render_mode(vgui_key('r'), vgui_MODIFIER_NULL), c_niceness(vgui_key('n'), vgui_MODIFIER_NULL), c_headlight(vgui_key('h'), vgui_MODIFIER_NULL), c_save_home(vgui_key('>'), vgui_MODIFIER_NULL), c_restore_home(vgui_key('<'), vgui_MODIFIER_NULL), The second bug is in function vgui_gtk3_dialog_impl::ask. I previous added a button widget and a line break widget, but forgot to skip the line break widget when collecting the values of all widgets after OK button has been pressed. Therefore the following piece of code should have been added after line 630: if ( l.type == line_br ) { // skip line break --w_iter; continue; } I’ve attached the relevant files (vgui_viewer3D_tableau.cxx and vgui_gtk2_dialog_impl.cxx) in this mail for your review. Lianqing Yu 2010-6-1 |
From: Lianqing <yu...@li...> - 2011-07-22 15:41:08
|
Dear VXL maintainers, I wrote a mail to this list last month to submit two patches for VGUI. However, I've received no feedback since then, especially from VGUI maintainers. I remembered that Amitha left and Joe took over the maintenance last year. Is Joe still repsonsible for VGUI now? If not, who should I contact? Lianqing. -----Original Message----- From: YuLianqing Sent: Wednesday, June 01, 2011 10:55 PM To: vxl...@li... Subject: [Vxl-maintainers] Two patches for VGUI Hi maintainers, I’ve found two bugs in vgui and would like to provide a patch to fix them. The first one is in the constructor of vgui_viewer3D_tableau. The problematic code is: c_lock_dolly(vgui_key('D')), c_lock_zoom(vgui_key('Z')), c_lighting(vgui_key('l')), c_shading(vgui_key('s')), c_spinning(vgui_key('p')), c_render_mode(vgui_key('r')), c_niceness(vgui_key('n')), c_headlight(vgui_key('h')), c_save_home(vgui_key('>')), c_restore_home(vgui_key('<')), All these class members are of the type vgui_event_condition and define the conditions for events dolly, zoom and so on. For example, the user presses ‘D’ to dolly the view. However, according to the definition of vgui_event_condition, the constructor vgui_event_condition(vgui_key ascii_code, bool is_pressed = true); is called instead of the constuctor vgui_event_condition(vgui_key k, vgui_modifier m, bool is_pressed = true); The former constructor sets vgui_event_condition::ascii_code whereas the latter sets vgui_event_condition::key with the user specified argument. In this case, I believe it is vgui_event_condition::key that should be set. As a result, when the user presses ‘D’, he actually cannot dolly the view. The fix is to call the latter constructor with the code: c_lock_dolly(vgui_key('D'), vgui_MODIFIER_NULL), c_lock_zoom(vgui_key('Z'), vgui_MODIFIER_NULL), c_lighting(vgui_key('l'), vgui_MODIFIER_NULL), c_shading(vgui_key('s'), vgui_MODIFIER_NULL), c_spinning(vgui_key('p'), vgui_MODIFIER_NULL), c_render_mode(vgui_key('r'), vgui_MODIFIER_NULL), c_niceness(vgui_key('n'), vgui_MODIFIER_NULL), c_headlight(vgui_key('h'), vgui_MODIFIER_NULL), c_save_home(vgui_key('>'), vgui_MODIFIER_NULL), c_restore_home(vgui_key('<'), vgui_MODIFIER_NULL), The second bug is in function vgui_gtk3_dialog_impl::ask. I previous added a button widget and a line break widget, but forgot to skip the line break widget when collecting the values of all widgets after OK button has been pressed. Therefore the following piece of code should have been added after line 630: if ( l.type == line_br ) { // skip line break --w_iter; continue; } I’ve attached the relevant files (vgui_viewer3D_tableau.cxx and vgui_gtk2_dialog_impl.cxx) in this mail for your review. Lianqing Yu 2010-6-1 ------------------------------------------------------------------------------ Simplify data backup and recovery for your virtual environment with vRanger. Installation's a snap, and flexible recovery options mean your data is safe, secure and there when you need it. Data protection magic? Nope - It's vRanger. Get your free trial download today. http://p.sf.net/sfu/quest-sfdev2dev _______________________________________________ Vxl-maintainers mailing list Vxl...@li... https://lists.sourceforge.net/lists/listinfo/vxl-maintainers |
From: Joseph M. <mu...@le...> - 2011-07-22 16:00:43
|
Hi Lianquing, I did look over your code and it seems fine to me. I will commit soon. Sorry for the delay. Joe -----Original Message----- From: Lianqing [mailto:yu...@li...] Sent: Friday, July 22, 2011 11:30 AM To: vxl...@li... Subject: Re: [Vxl-maintainers] Two patches for VGUI Dear VXL maintainers, I wrote a mail to this list last month to submit two patches for VGUI. However, I've received no feedback since then, especially from VGUI maintainers. I remembered that Amitha left and Joe took over the maintenance last year. Is Joe still repsonsible for VGUI now? If not, who should I contact? Lianqing. -----Original Message----- From: YuLianqing Sent: Wednesday, June 01, 2011 10:55 PM To: vxl...@li... Subject: [Vxl-maintainers] Two patches for VGUI Hi maintainers, I've found two bugs in vgui and would like to provide a patch to fix them. The first one is in the constructor of vgui_viewer3D_tableau. The problematic code is: c_lock_dolly(vgui_key('D')), c_lock_zoom(vgui_key('Z')), c_lighting(vgui_key('l')), c_shading(vgui_key('s')), c_spinning(vgui_key('p')), c_render_mode(vgui_key('r')), c_niceness(vgui_key('n')), c_headlight(vgui_key('h')), c_save_home(vgui_key('>')), c_restore_home(vgui_key('<')), All these class members are of the type vgui_event_condition and define the conditions for events dolly, zoom and so on. For example, the user presses 'D' to dolly the view. However, according to the definition of vgui_event_condition, the constructor vgui_event_condition(vgui_key ascii_code, bool is_pressed = true); is called instead of the constuctor vgui_event_condition(vgui_key k, vgui_modifier m, bool is_pressed = true); The former constructor sets vgui_event_condition::ascii_code whereas the latter sets vgui_event_condition::key with the user specified argument. In this case, I believe it is vgui_event_condition::key that should be set. As a result, when the user presses 'D', he actually cannot dolly the view. The fix is to call the latter constructor with the code: c_lock_dolly(vgui_key('D'), vgui_MODIFIER_NULL), c_lock_zoom(vgui_key('Z'), vgui_MODIFIER_NULL), c_lighting(vgui_key('l'), vgui_MODIFIER_NULL), c_shading(vgui_key('s'), vgui_MODIFIER_NULL), c_spinning(vgui_key('p'), vgui_MODIFIER_NULL), c_render_mode(vgui_key('r'), vgui_MODIFIER_NULL), c_niceness(vgui_key('n'), vgui_MODIFIER_NULL), c_headlight(vgui_key('h'), vgui_MODIFIER_NULL), c_save_home(vgui_key('>'), vgui_MODIFIER_NULL), c_restore_home(vgui_key('<'), vgui_MODIFIER_NULL), The second bug is in function vgui_gtk3_dialog_impl::ask. I previous added a button widget and a line break widget, but forgot to skip the line break widget when collecting the values of all widgets after OK button has been pressed. Therefore the following piece of code should have been added after line 630: if ( l.type == line_br ) { // skip line break --w_iter; continue; } I've attached the relevant files (vgui_viewer3D_tableau.cxx and vgui_gtk2_dialog_impl.cxx) in this mail for your review. Lianqing Yu 2010-6-1 ---------------------------------------------------------------------------- -- Simplify data backup and recovery for your virtual environment with vRanger. Installation's a snap, and flexible recovery options mean your data is safe, secure and there when you need it. Data protection magic? Nope - It's vRanger. Get your free trial download today. http://p.sf.net/sfu/quest-sfdev2dev _______________________________________________ Vxl-maintainers mailing list Vxl...@li... https://lists.sourceforge.net/lists/listinfo/vxl-maintainers ---------------------------------------------------------------------------- -- 10 Tips for Better Web Security Learn 10 ways to better secure your business today. Topics covered include: Web security, SSL, hacker attacks & Denial of Service (DoS), private keys, security Microsoft Exchange, secure Instant Messaging, and much more. http://www.accelacomm.com/jaw/sfnl/114/51426210/ _______________________________________________ Vxl-maintainers mailing list Vxl...@li... https://lists.sourceforge.net/lists/listinfo/vxl-maintainers |
From: Lianqing <yu...@li...> - 2011-07-27 17:20:56
|
There's still some issues for basic11_display_3d in gtk2 implementation. The events (zoom, dolly) seem not be detected. I believe it's vgui_gtk2_adaptor, instead of vgui_viewer3D_tableau problem. I'll check the issues. Lianqing. -----Original Message----- From: Joseph Mundy Sent: Saturday, July 23, 2011 10:38 PM To: 'Lianqing' Subject: RE: [Vxl-maintainers] Two patches for VGUI The code is now committed, I tested the basic 3-d app, but I don't use gtk, maybe you can check that aspect. Joe -----Original Message----- From: Lianqing [mailto:yu...@li...] Sent: Saturday, July 23, 2011 8:16 AM To: Joseph Mundy Subject: Re: [Vxl-maintainers] Two patches for VGUI Thanks a lot Joe. -----Original Message----- From: Joseph Mundy Sent: Saturday, July 23, 2011 12:00 AM To: 'Lianqing' ; vxl...@li... Subject: RE: [Vxl-maintainers] Two patches for VGUI Hi Lianquing, I did look over your code and it seems fine to me. I will commit soon. Sorry for the delay. Joe -----Original Message----- From: Lianqing [mailto:yu...@li...] Sent: Friday, July 22, 2011 11:30 AM To: vxl...@li... Subject: Re: [Vxl-maintainers] Two patches for VGUI Dear VXL maintainers, I wrote a mail to this list last month to submit two patches for VGUI. However, I've received no feedback since then, especially from VGUI maintainers. I remembered that Amitha left and Joe took over the maintenance last year. Is Joe still repsonsible for VGUI now? If not, who should I contact? Lianqing. -----Original Message----- From: YuLianqing Sent: Wednesday, June 01, 2011 10:55 PM To: vxl...@li... Subject: [Vxl-maintainers] Two patches for VGUI Hi maintainers, I've found two bugs in vgui and would like to provide a patch to fix them. The first one is in the constructor of vgui_viewer3D_tableau. The problematic code is: c_lock_dolly(vgui_key('D')), c_lock_zoom(vgui_key('Z')), c_lighting(vgui_key('l')), c_shading(vgui_key('s')), c_spinning(vgui_key('p')), c_render_mode(vgui_key('r')), c_niceness(vgui_key('n')), c_headlight(vgui_key('h')), c_save_home(vgui_key('>')), c_restore_home(vgui_key('<')), All these class members are of the type vgui_event_condition and define the conditions for events dolly, zoom and so on. For example, the user presses 'D' to dolly the view. However, according to the definition of vgui_event_condition, the constructor vgui_event_condition(vgui_key ascii_code, bool is_pressed = true); is called instead of the constuctor vgui_event_condition(vgui_key k, vgui_modifier m, bool is_pressed = true); The former constructor sets vgui_event_condition::ascii_code whereas the latter sets vgui_event_condition::key with the user specified argument. In this case, I believe it is vgui_event_condition::key that should be set. As a result, when the user presses 'D', he actually cannot dolly the view. The fix is to call the latter constructor with the code: c_lock_dolly(vgui_key('D'), vgui_MODIFIER_NULL), c_lock_zoom(vgui_key('Z'), vgui_MODIFIER_NULL), c_lighting(vgui_key('l'), vgui_MODIFIER_NULL), c_shading(vgui_key('s'), vgui_MODIFIER_NULL), c_spinning(vgui_key('p'), vgui_MODIFIER_NULL), c_render_mode(vgui_key('r'), vgui_MODIFIER_NULL), c_niceness(vgui_key('n'), vgui_MODIFIER_NULL), c_headlight(vgui_key('h'), vgui_MODIFIER_NULL), c_save_home(vgui_key('>'), vgui_MODIFIER_NULL), c_restore_home(vgui_key('<'), vgui_MODIFIER_NULL), The second bug is in function vgui_gtk3_dialog_impl::ask. I previous added a button widget and a line break widget, but forgot to skip the line break widget when collecting the values of all widgets after OK button has been pressed. Therefore the following piece of code should have been added after line 630: if ( l.type == line_br ) { // skip line break --w_iter; continue; } I've attached the relevant files (vgui_viewer3D_tableau.cxx and vgui_gtk2_dialog_impl.cxx) in this mail for your review. Lianqing Yu 2010-6-1 ---------------------------------------------------------------------------- -- Simplify data backup and recovery for your virtual environment with vRanger. Installation's a snap, and flexible recovery options mean your data is safe, secure and there when you need it. Data protection magic? Nope - It's vRanger. Get your free trial download today. http://p.sf.net/sfu/quest-sfdev2dev _______________________________________________ Vxl-maintainers mailing list Vxl...@li... https://lists.sourceforge.net/lists/listinfo/vxl-maintainers ---------------------------------------------------------------------------- -- 10 Tips for Better Web Security Learn 10 ways to better secure your business today. Topics covered include: Web security, SSL, hacker attacks & Denial of Service (DoS), private keys, security Microsoft Exchange, secure Instant Messaging, and much more. http://www.accelacomm.com/jaw/sfnl/114/51426210/ _______________________________________________ Vxl-maintainers mailing list Vxl...@li... https://lists.sourceforge.net/lists/listinfo/vxl-maintainers |