From: Peter T. <pe...@us...> - 2003-11-08 17:25:06
|
Update of /cvsroot/jvcl/dev/JVCL3/run In directory sc8-pr-cvs1:/tmp/cvs-serv7226/JVCL3/run Modified Files: JvWizard.pas JvWizardRouteMapNodes.pas Log Message: - Added EnableJumpToPage property from Willy Nonn & Pusztai Index: JvWizard.pas =================================================================== RCS file: /cvsroot/jvcl/dev/JVCL3/run/JvWizard.pas,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** JvWizard.pas 22 Oct 2003 13:52:23 -0000 1.4 --- JvWizard.pas 8 Nov 2003 17:25:00 -0000 1.5 *************** *** 635,638 **** --- 635,639 ---- FVisibleButtons: TJvWizardButtonSet; FDrawing: Boolean; + FEnableJumpToPage: Boolean; // Nonn FOnPaintPage: TJvWizardPaintPageEvent; FOnEnterPage: TJvWizardChangePageEvent; *************** *** 692,695 **** --- 693,698 ---- read FVisibleButtons write SetVisibleButtons default [bkBack, bkNext, bkCancel]; + property EnableJumpToPage: Boolean + read FEnableJumpToPage write FEnableJumpToPage default true; // Nonn property Color default clBtnFace; property Caption; *************** *** 800,803 **** --- 803,808 ---- procedure WMGetDlgCode(var Message: TWMGetDlgCode); message WM_GETDLGCODE; procedure CMDesignHitTest(var Message: TCMDesignHitTest); message CM_DESIGNHITTEST; + function FindNextEnabledPage(PageIndex: Integer; const Step: Integer = 1; + CheckDisable: Boolean = True): TJvWizardCustomPage; // Nonn function GetBackButtonClick: TNotifyEvent; function GetCancelButtonClick: TNotifyEvent; *************** *** 1486,1490 **** begin APage := PageAtPos(Point(X, Y)); ! if Assigned(APage) and ((csDesigning in ComponentState) or APage.Enabled) then begin PageIndex := APage.PageIndex; --- 1491,1496 ---- begin APage := PageAtPos(Point(X, Y)); ! if Assigned(APage) and ((csDesigning in ComponentState) or ! (APage.Enabled and APage.EnableJumpToPage)) then // Nonn begin PageIndex := APage.PageIndex; *************** *** 2233,2236 **** --- 2239,2243 ---- FVisibleButtons := [bkBack, bkNext, bkCancel]; DoubleBuffered := True; + FEnableJumpToPage := True; // Nonn end; *************** *** 2674,2682 **** end; procedure TJvWizard.SelectFirstPage; var AFirstPage: TJvWizardCustomPage; begin ! AFirstPage := FindNextPage(-1, 1, not (csDesigning in ComponentState)); if Assigned(AFirstPage) then begin --- 2681,2703 ---- end; + // Nonn ... + function TJvWizard.FindNextEnabledPage(PageIndex: Integer; const Step: Integer = 1; + CheckDisable: Boolean = True): TJvWizardCustomPage; + var + APage: TJvWizardCustomPage; + begin + APage := FindNextPage(PageIndex, Step, CheckDisable); + if Assigned(APage) and not APage.EnableJumpToPage then + APage := FindNextPage(APage.PageIndex, Step, CheckDisable); + Result := APage; + end; + // ...Nonn + procedure TJvWizard.SelectFirstPage; var AFirstPage: TJvWizardCustomPage; begin ! // Nonn AFirstPage := FindNextPage(-1, 1, not (csDesigning in ComponentState)); ! AFirstPage := FindNextEnabledPage(-1, 1, not (csDesigning in ComponentState)); // Nonn if Assigned(AFirstPage) then begin *************** *** 2692,2696 **** ALastPage: TJvWizardCustomPage; begin ! ALastPage := FindNextPage(FPages.Count, -1, not (csDesigning in ComponentState)); if Assigned(ALastPage) then --- 2713,2718 ---- ALastPage: TJvWizardCustomPage; begin ! // Nonn ALastPage := FindNextPage(FPages.Count, -1, ! ALastPage := FindNextEnabledPage(FPages.Count, -1, // Nonn not (csDesigning in ComponentState)); if Assigned(ALastPage) then *************** *** 2707,2711 **** ANextPage: TJvWizardCustomPage; begin ! ANextPage := FindNextPage(GetActivePageIndex, 1, not (csDesigning in ComponentState)); if Assigned(ANextPage) then --- 2729,2734 ---- ANextPage: TJvWizardCustomPage; begin ! // Nonn ANextPage := FindNextPage(GetActivePageIndex, 1, ! ANextPage := FindNextEnabledPage(GetActivePageIndex, 1, // Nonn not (csDesigning in ComponentState)); if Assigned(ANextPage) then *************** *** 2722,2726 **** APriorPage: TJvWizardCustomPage; begin ! APriorPage := FindNextPage(GetActivePageIndex, -1, not (csDesigning in ComponentState)); if Assigned(APriorPage) then --- 2745,2750 ---- APriorPage: TJvWizardCustomPage; begin ! // Nonn APriorPage := FindNextPage(GetActivePageIndex, -1, ! APriorPage := FindNextEnabledPage(GetActivePageIndex, -1, // Nonn not (csDesigning in ComponentState)); if Assigned(APriorPage) then Index: JvWizardRouteMapNodes.pas =================================================================== RCS file: /cvsroot/jvcl/dev/JVCL3/run/JvWizardRouteMapNodes.pas,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** JvWizardRouteMapNodes.pas 15 Oct 2003 13:47:47 -0000 1.2 --- JvWizardRouteMapNodes.pas 8 Nov 2003 17:25:01 -0000 1.3 *************** *** 251,254 **** --- 251,259 ---- AFont.Style := AFont.Style - [fsBold]; end + else if not Pages[i].EnableJumpToPage then // Nonn... + begin + AFont.Color := NodeColors.Disabled; + AFont.Style := AFont.Style - [fsBold]; // ... Nonn + end else begin *************** *** 277,280 **** --- 282,287 ---- if i = PageIndex then Brush.Color := FNodeColors.Selected + else if not Pages[i].EnableJumpToPage then // Nonn + Brush.Color := FNodeColors.Disabled // Nonn else if Pages[i].Enabled then Brush.Color := FNodeColors.Unselected |