Develop and Download Open Source Software

Browse CVS Repository

Diff of /gikonavigoeson/gikonavi/Giko.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.262 by h677, Thu Apr 8 16:31:23 2004 UTC revision 1.263 by yoffy, Fri Apr 9 00:15:48 2004 UTC
# Line 1588  begin Line 1588  begin
1588  //              for i := 0 to MainCoolBar.Bands.Count - 1 do begin  //              for i := 0 to MainCoolBar.Bands.Count - 1 do begin
1589                  for i := MAIN_COOLBAND_COUNT - 1 downto 0 do begin                  for i := MAIN_COOLBAND_COUNT - 1 downto 0 do begin
1590                          CoolSet := GikoSys.Setting.MainCoolSet[i];                          CoolSet := GikoSys.Setting.MainCoolSet[i];
1591                          if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then                          if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then begin
1592                                  Continue;                                  SaveCoolBarSettings;
1593                                    Exit;
1594                            end;
1595                          MainCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;                          MainCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;
1596                          MainCoolBar.Bands[i].Break := CoolSet.FCoolBreak;                          MainCoolBar.Bands[i].Break := CoolSet.FCoolBreak;
1597                          MainCoolBar.Bands[i].Width := CoolSet.FCoolWidth;                          if CoolSet.FCoolWidth >= 0 then
1598                                    MainCoolBar.Bands[i].Width := CoolSet.FCoolWidth;
1599                  end;                  end;
1600          finally          finally
1601                  MainCoolBar.Bands.EndUpdate;                  MainCoolBar.Bands.EndUpdate;
# Line 1604  begin Line 1607  begin
1607  //              for i := 0 to ListCoolBar.Bands.Count - 1 do begin  //              for i := 0 to ListCoolBar.Bands.Count - 1 do begin
1608                  for i := LIST_COOLBAND_COUNT - 1 downto 0 do begin                  for i := LIST_COOLBAND_COUNT - 1 downto 0 do begin
1609                          CoolSet := GikoSys.Setting.ListCoolSet[i];                          CoolSet := GikoSys.Setting.ListCoolSet[i];
1610                          if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then                          if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then begin
1611                                  Continue;                                  SaveCoolBarSettings;
1612                                    Exit;
1613                            end;
1614                          ListCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;                          ListCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;
1615                          ListCoolBar.Bands[i].Break := CoolSet.FCoolBreak;                          ListCoolBar.Bands[i].Break := CoolSet.FCoolBreak;
1616                          ListCoolBar.Bands[i].Width := CoolSet.FCoolWidth;                          ListCoolBar.Bands[i].Width := CoolSet.FCoolWidth;
# Line 1620  begin Line 1625  begin
1625  //              for i := 0 to BrowserCoolBar.Bands.Count - 1 do begin  //              for i := 0 to BrowserCoolBar.Bands.Count - 1 do begin
1626                  for i := BROWSER_COOLBAND_COUNT - 1 downto 0 do begin                  for i := BROWSER_COOLBAND_COUNT - 1 downto 0 do begin
1627                          CoolSet := GikoSys.Setting.BrowserCoolSet[i];                          CoolSet := GikoSys.Setting.BrowserCoolSet[i];
1628                          if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then                          if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then begin
1629                                  Continue;                                  SaveCoolBarSettings;
1630                                    Exit;
1631                            end;
1632                          BrowserCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;                          BrowserCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;
1633                          BrowserCoolBar.Bands[i].Break := CoolSet.FCoolBreak;                          BrowserCoolBar.Bands[i].Break := CoolSet.FCoolBreak;
1634                          BrowserCoolBar.Bands[i].Width := CoolSet.FCoolWidth;                          BrowserCoolBar.Bands[i].Width := CoolSet.FCoolWidth;
# Line 1679  begin Line 1686  begin
1686                  BrowserTabFlatStyleActionExecute(nil);                  BrowserTabFlatStyleActionExecute(nil);
1687          end;          end;
1688    
1689            FIsIgnoreResize := False;
1690    
1691          // CoolBar 復元          // CoolBar 復元
1692          LoadCoolBarSettings;          LoadCoolBarSettings;
   
         FIsIgnoreResize := False;  
1693  end;  end;
1694    
1695  procedure TGikoForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);  procedure TGikoForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
# Line 1746  begin Line 1753  begin
1753    
1754    // リアルタイムに保存されるので、また、ウィンドウサイズが CoolBar より    // リアルタイムに保存されるので、また、ウィンドウサイズが CoolBar より
1755          // 小さくなっているときに保存すると値が上書きされてしまうのでここでは保存しない          // 小さくなっているときに保存すると値が上書きされてしまうのでここでは保存しない
1756      // ↑FormDestroy中に移動したので、ここで保存しないといけないと思う。(もじゅ 2004/04/09)          {
1757                    // ↑FormDestroy中に移動したので、ここで保存しないといけないと思う。(もじゅ 2004/04/09)
1758          // CoolBar 保存          // CoolBar 保存
1759          if GikoForm.WindowState <> wsMinimized then          if GikoForm.WindowState <> wsMinimized then
1760                  SaveCoolBarSettings;                  SaveCoolBarSettings;
1761                    }
1762          try          try
1763                  GikoSys.Setting.WriteWindowSettingFile;                  GikoSys.Setting.WriteWindowSettingFile;
1764                  GikoSys.Setting.WriteNameMailSettingFile;                  GikoSys.Setting.WriteNameMailSettingFile;
# Line 9286  end; Line 9294  end;
9294    
9295  procedure TGikoForm.CoolBarResized(Sender: TObject; CoolBar: TCoolBar);  procedure TGikoForm.CoolBarResized(Sender: TObject; CoolBar: TCoolBar);
9296  var  var
9297          coolSet : TCoolSet;          coolSet                         : TCoolSet;
9298          toolbar : TToolBar;          toolbar                         : TToolBar;
9299          band            : TCoolBand;          band                                    : TCoolBand;
9300          i, j            : Integer;          affectedBand    : TCoolBand;
9301            i, j                                    : Integer;
9302  begin  begin
9303          if (FOldFormWidth = Width) and not IsIconic( Handle ) and not FIsIgnoreResize then begin          if (FOldFormWidth = Width) and not IsIconic( Handle ) and not FIsIgnoreResize then begin
9304                  FIsIgnoreResize := True;                  FIsIgnoreResize := True;
# Line 9298  begin Line 9307  begin
9307                          Exit;                          Exit;
9308                  toolbar := TToolBar( Sender );                  toolbar := TToolBar( Sender );
9309                  band := nil;                  band := nil;
9310                  // バンドの順番が変わったか                  // 変更されたクールバーの値を保存
9311                  for i := CoolBar.Bands.Count - 1 downto 0 do begin                  if CoolBar = MainCoolBar then begin
9312                          coolSet := GikoSys.Setting.MainCoolSet[ i ];                          for i := 0 to MAIN_COOLBAND_COUNT - 1 do begin
9313                          if CoolBar.Bands[ i ].ID <> coolset.FCoolID then begin                                  CoolSet.FCoolID := CoolBar.Bands[i].ID;
9314                                  // 全て保存                                  CoolSet.FCoolWidth := CoolBar.Bands[i].Width;
9315                                  SaveCoolBarSettings;                                  CoolSet.FCoolBreak := CoolBar.Bands[i].Break;
9316                                  // 最後にひねりだしたサイズを保存しないとサイズが狂うので全てひねり出す                                  GikoSys.Setting.MainCoolSet[i] := CoolSet;
9317  //                              for j := CoolBar.Bands.Count - 1 downto 0 do                          end;
9318  //                                      CoolBarResized( CoolBar.Bands[ i ].Control, CoolBar );                  end else if CoolBar = ListCoolBar then begin
9319                            for i := 0 to LIST_COOLBAND_COUNT - 1 do begin
9320                                  Exit;                                  CoolSet.FCoolID := CoolBar.Bands[i].ID;
9321                                    CoolSet.FCoolWidth := CoolBar.Bands[i].Width;
9322                                    CoolSet.FCoolBreak := CoolBar.Bands[i].Break;
9323                                    GikoSys.Setting.ListCoolSet[i] := CoolSet;
9324                            end;
9325                    end else if CoolBar = BrowserCoolBar then begin
9326                            for i := 0 to BROWSER_COOLBAND_COUNT - 1 do begin
9327                                    CoolSet.FCoolID := CoolBar.Bands[i].ID;
9328                                    CoolSet.FCoolWidth := CoolBar.Bands[i].Width;
9329                                    CoolSet.FCoolBreak := CoolBar.Bands[i].Break;
9330                                    GikoSys.Setting.BrowserCoolSet[i] := CoolSet;
9331                          end;                          end;
9332                  end;                  end;
9333                  // 幅の変更されたバンドを見つける                  // 幅の変更されたバンドを見つける
9334                    affectedBand := nil;
9335                  for i := CoolBar.Bands.Count - 1 downto 0 do begin                  for i := CoolBar.Bands.Count - 1 downto 0 do begin
9336                          if CoolBar.Bands[ i ].Control.Handle = toolbar.Handle then begin                          if CoolBar.Bands[ i ].Control.Handle = toolbar.Handle then begin
9337                                  band    := CoolBar.Bands[ i ];                                  band    := CoolBar.Bands[ i ];
9338                                    if band.Break or (i = 0) then begin
9339                                            if i + 1 < CoolBar.Bands.Count then
9340                                                    if not CoolBar.Bands[ i + 1 ].Break then
9341                                                            affectedBand := CoolBar.Bands[ i + 1 ];
9342                                    end else begin
9343                                            if i > 0 then
9344                                                    affectedBand := CoolBar.Bands[ i - 1 ];
9345                                    end;
9346                                  Break;                                  Break;
9347                          end;                          end;
9348                  end;                  end;
# Line 9323  begin Line 9351  begin
9351                          coolSet := GikoSys.Setting.MainCoolSet[ band.ID ];                          coolSet := GikoSys.Setting.MainCoolSet[ band.ID ];
9352                          coolSet.FCoolWidth := toolbar.Width + 25;                          coolSet.FCoolWidth := toolbar.Width + 25;
9353                          GikoSys.Setting.MainCoolSet[ band.ID ] := coolSet;                          GikoSys.Setting.MainCoolSet[ band.ID ] := coolSet;
9354                            if affectedBand <> nil then begin
9355                                    coolSet := GikoSys.Setting.MainCoolSet[ affectedBand.ID ];
9356                                    coolSet.FCoolWidth := affectedBand.Control.Width + 25;
9357                                    GikoSys.Setting.MainCoolSet[ affectedBand.ID ] := coolSet;
9358                            end;
9359                  end else if CoolBar = ListCoolBar then begin                  end else if CoolBar = ListCoolBar then begin
9360                          coolSet := GikoSys.Setting.ListCoolSet[ band.ID ];                          coolSet := GikoSys.Setting.ListCoolSet[ band.ID ];
9361                          coolSet.FCoolWidth := toolbar.Width + 25;                          coolSet.FCoolWidth := toolbar.Width + 25;
9362                          GikoSys.Setting.ListCoolSet[ band.ID ] := coolSet;                          GikoSys.Setting.ListCoolSet[ band.ID ] := coolSet;
9363                            if affectedBand <> nil then begin
9364                                    coolSet := GikoSys.Setting.ListCoolSet[ affectedBand.ID ];
9365                                    coolSet.FCoolWidth := affectedBand.Control.Width + 25;
9366                                    GikoSys.Setting.ListCoolSet[ affectedBand.ID ] := coolSet;
9367                            end;
9368                  end else if CoolBar = BrowserCoolBar then begin                  end else if CoolBar = BrowserCoolBar then begin
9369                          coolSet := GikoSYs.Setting.BrowserCoolSet[ band.ID ];                          coolSet := GikoSYs.Setting.BrowserCoolSet[ band.ID ];
9370                          coolSet.FCoolWidth := toolbar.Width + 25;                          coolSet.FCoolWidth := toolbar.Width + 25;
9371                          GikoSys.Setting.BrowserCoolSet[ band.ID ] := coolSet;                          GikoSys.Setting.BrowserCoolSet[ band.ID ] := coolSet;
9372                            if affectedBand <> nil then begin
9373                                    coolSet := GikoSys.Setting.BrowserCoolSet[ affectedBand.ID ];
9374                                    coolSet.FCoolWidth := affectedBand.Control.Width + 25;
9375                                    GikoSys.Setting.BrowserCoolSet[ affectedBand.ID ] := coolSet;
9376                            end;
9377                  end;                  end;
9378          end;          end;
9379  end;  end;

Legend:
Removed from v.1.262  
changed lines
  Added in v.1.263

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26