Project JEDI - Issue Tracker
Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0005388 [JEDI VCL] 00 JVCL Components minor always 2010-11-04 15:20 2012-02-29 16:55
Reporter tecnobyte View Status public  
Assigned To AHUser
Priority normal Resolution fixed  
Status resolved   Product Version 3.40
Summary 0005388: Bug on page changing of JvWizard with JvWizardRouteMapList
Description How to reproduce the bug:

- Add a JvWizard to Form1.
- Add a JvWizardRouteMapList to JvWizard1.
- Add three JvWizardInteriorPage to JvWizard1.
- Add this code to JvWizard1.OnActivePageChanging event:

procedure TForm1.JvWizard1ActivePageChanging(Sender: TObject;
  var ToPage: TJvWizardCustomPage);
begin
  if (ToPage = JvWizardInteriorPage1) or
     (ToPage = JvWizardInteriorPage2) then
    raise Exception.Create('Error')
end;

- Compile and run the program.
- Click on second item of JvWizardRouteMapList (Error, expected).
- Click on third item of JvWizardRouteMapList (Error, expected).
- Click on second item of JvWizardRouteMapList (No message, not expected).

How to solve this problema?

Change TJvWizardRouteMapControl.MouseDown method:

procedure TJvWizardRouteMapControl.MouseDown(Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  APage: TJvWizardCustomPage;
begin
  if Button = mbLeft then
  begin
    APage := PageAtPos(Point(X, Y));
    if Assigned(APage) and ((csDesigning in ComponentState) or
      (APage.Enabled and APage.EnableJumpToPage)) then // Nonn
    begin
      if APage.PageIndex = PageIndex + 1 then
        Wizard.SelectNextPage
      else
      if APage.PageIndex = PageIndex - 1 then
        Wizard.SelectPriorPage
      else
        //PageIndex := APage.PageIndex; { Problem! }
        Wizard.ActivePage := APage; { Solution! }
    end;
  end;
  inherited MouseDown(Button, Shift, X, Y);
end;
Additional Information
Tags No tags attached.
Attached Files

- Relationships

-  Notes
(0018000)
tecnobyte (reporter)
2010-11-04 15:30

Correction:

procedure TForm1.JvWizard1ActivePageChanging(Sender: TObject;
  var ToPage: TJvWizardCustomPage);
begin
  if (ToPage = JvWizardInteriorPage2) or { <<< Page2 }
     (ToPage = JvWizardInteriorPage3) then { <<< Page3 }
    raise Exception.Create('Error')
end;
(0018036)
obones (administrator)
2010-11-09 14:19

Please try with the latest SVN content.
If this is still here, please provide the zipped sources of a sample application showing this.
(0018196)
AHUser (developer)
2010-11-28 00:25

Fixed in svn revision 12919.

- Issue History
Date Modified Username Field Change
2010-11-04 15:20 tecnobyte New Issue
2010-11-04 15:30 tecnobyte Note Added: 0018000
2010-11-09 14:19 obones Note Added: 0018036
2010-11-09 14:19 obones Status new => feedback
2010-11-28 00:25 AHUser Note Added: 0018196
2010-11-28 00:25 AHUser Status feedback => resolved
2010-11-28 00:25 AHUser Fixed in Version => Daily / SVN
2010-11-28 00:25 AHUser Resolution open => fixed
2010-11-28 00:25 AHUser Assigned To => AHUser
2012-02-29 16:55 obones Fixed in Version Daily / SVN => 3.45


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker