Главный модуль программы (часть 10) - ChangeProgMode

Рубрика: Исходники
Среда, 21 апреля 2010 г.
Просмотров: 193
последняя версия: 3.0.9 build 961 beta
от 07 декабря 2007 г.
procedure TForm1.ChangeProgMode(AMode: TProgramMods);
var
  i, t: integer;
  isCreate: boolean;
begin
 ClearStatusBar;
 SetStatusConnected(false, '');
 isCreate:= true;

  // скрыть все
 for i:= 0 to AdvToolBarPager1.PageCount-1 do
   begin
     AdvToolBarPager1.Pages[i].TabVisible:= false;
     //!!! AdvToolBarPager1.Pages[i].Visible:= false;
   end;
 // скрыть все кнопки слева на панели
 spSkinButtonGroup1.Items.Clear;
 // закрыть все подключения
 // показать нужное
  Flash1.Visible:= boolean(iFlashAvailable);
 case AMode of
   pmP2K : begin
             mnuRestart1.Visible:= true;
             mnuRestart2.Visible:= true;
             mnuSuspend.Visible:= true;
             for i:= 0 to AdvToolBarPager1.PageCount-1 do
               begin
                 t:= AdvToolBarPager1.Pages[i].Tag;
                 if ((t - 100) < 100)  and ((t - 100) > 0) then begin
                                          AdvToolBarPager1.Pages[i].TabVisible:= true;
                                          //!!! AdvToolBarPager1.Pages[i].Visible:= true;
                                          // создать кнопки P2K
                                          if ((ShowModule_KJava = 0) and (t = 111)) or
                                             ((ShowModule_FlexTools = 0) and (t = 112)) //or
                                            then isCreate:= false
                                            else isCreate:= true;
                                          if isCreate then
                                          with spSkinButtonGroup1.Items.Add do
                                            begin
                                              Caption:= AdvToolBarPager1.Pages[i].Caption;
                                              ImageIndex:= AdvToolBarPager1.Pages[i].ImageIndex;
                                              Tag:= AdvToolBarPager1.Pages[i].Tag;
                                            end;
                                        end;
               end;
               //***
               tsRingStyles.TabVisible:= (iSound = 0);
               ts_P2K_KJava.TabVisible:= boolean(ShowModule_KJava);
               tsP2K_FlexTools.TabVisible:= boolean(ShowModule_FlexTools);               
               //***
               for i:= 0 to AdvToolBarPager1.PageCount-1 do
                 if AdvToolBarPager1.Pages[i].Tag = 101 then
                   begin
                     AdvToolBarPager1.ActivePageIndex:= i;
                     spSkinButtonGroup1.ItemIndex:= 0;
                     break;
                   end;
             //frmP2KFileManager.Panel1.Parent:= Panel1;
             //SwitchToP2K;
           end;
   pmAT  : begin
             mnuRestart1.Visible:= false;
             mnuRestart2.Visible:= false;
             mnuSuspend.Visible:= false;
             for i:= 0 to AdvToolBarPager1.PageCount-1 do
               begin
                 t:= AdvToolBarPager1.Pages[i].Tag;
                 if ((t - 200) < 100)  and ((t - 200) > 0)  then begin
                                          AdvToolBarPager1.Pages[i].TabVisible:= true;
                                          //!!! AdvToolBarPager1.Pages[i].Visible:= true;
                                          with spSkinButtonGroup1.Items.Add do
                                            begin
                                              Caption:= AdvToolBarPager1.Pages[i].Caption;
                                              ImageIndex:= AdvToolBarPager1.Pages[i].ImageIndex;
                                              Tag:= AdvToolBarPager1.Pages[i].Tag;
                                            end;                                          
                                        end;
               end;
               for i:= 0 to AdvToolBarPager1.PageCount-1 do
                 if AdvToolBarPager1.Pages[i].Tag = 202 then
                   begin
                     AdvToolBarPager1.ActivePageIndex:= i;
                     spSkinButtonGroup1.ItemIndex:= 0;
                     break;
                   end;
             //frmAT_PhoneBook.Panel1.Parent:= Panel1;
             //SwitchToAT;
           end;
   {***}
   pmFlash: begin
             if iFlashAvailable = 1
             then
             begin
             //Flash1.Visible:= true;
             mnuRestart1.Visible:= true;
             mnuRestart2.Visible:= true;
             mnuSuspend.Visible:= false;
             for i:= 0 to AdvToolBarPager1.PageCount-1 do
               begin
                 t:= AdvToolBarPager1.Pages[i].Tag;
                 if ((t - 300) < 100)  and ((t - 300) > 0)  then begin
                                          AdvToolBarPager1.Pages[i].TabVisible:= true;
                                          ///!!!AdvToolBarPager1.Pages[i].Visible:= true;
                                          if (ShowModule_Patching = 0) and (t = 305)
                                            then isCreate:= false
                                            else isCreate:= true;
                                          if isCreate then
                                          with spSkinButtonGroup1.Items.Add do
                                            begin
                                              Caption:= AdvToolBarPager1.Pages[i].Caption;
                                              ImageIndex:= AdvToolBarPager1.Pages[i].ImageIndex;
                                              Tag:= AdvToolBarPager1.Pages[i].Tag;
                                            end;
                                        end;
               end;
               tsFlash_Patching.TabVisible:= boolean(ShowModule_Patching);               
               for i:= 0 to AdvToolBarPager1.PageCount-1 do
                 if AdvToolBarPager1.Pages[i].Tag = 301 then
                   begin
                     AdvToolBarPager1.ActivePageIndex:= i;
                     spSkinButtonGroup1.ItemIndex:= 0;
                     break;
                   end;
             //SwitchToFlash;
             end;
           end;
   {***}
   pmObex: begin
             mnuRestart1.Visible:= false;
             mnuRestart2.Visible:= false;
             mnuSuspend.Visible:= false;
             for i:= 0 to AdvToolBarPager1.PageCount-1 do
               begin
                 t:= AdvToolBarPager1.Pages[i].Tag;
                 if ((t - 400) < 100)  and ((t - 400) > 0)  then begin
                                          AdvToolBarPager1.Pages[i].TabVisible:= true;
                                          //!!! AdvToolBarPager1.Pages[i].Visible:= true;
                                          with spSkinButtonGroup1.Items.Add do
                                            begin
                                              Caption:= AdvToolBarPager1.Pages[i].Caption;
                                              ImageIndex:= AdvToolBarPager1.Pages[i].ImageIndex;
                                              Tag:= AdvToolBarPager1.Pages[i].Tag;
                                            end;                                          
                                        end;
               end;
               for i:= 0 to AdvToolBarPager1.PageCount-1 do
                 if AdvToolBarPager1.Pages[i].Tag = 401 then
                   begin
                     AdvToolBarPager1.ActivePageIndex:= i;
                     spSkinButtonGroup1.ItemIndex:= 0;
                     break;
                   end;
             //frmOBEXFM.Panel1.Parent:= Panel1;
             //***
             //SwitchToOBEX;
           end;
  end;
 //***
 AdvToolBarPager1.OnChange(self);
 RebuildToolBar(curToolBar);
 RebuildPanelButtons(curTypeMenu);
 if curTypeMenu = 1 then spSkinButtonGroup1.OnButtonClicked(spSkinButtonGroup1, 0);
 //***
case AMode of
   pmP2K : SwitchToP2K;
   pmAT  : SwitchToAT;
   {}
   pmFlash: if iFlashAvailable = 1 then
              begin
               SwitchToP2K; //SwitchToFlash;
              end; 
   {}
   pmObex: SwitchToOBEX;
  end;
end;
Rambler's Top100