Changeset 6 for os/trunk/Applications


Ignore:
Timestamp:
Jun 2, 2013, 5:41:42 PM (11 years ago)
Author:
chronos
Message:
Location:
os/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • os/trunk

    • Property svn:ignore
      •  

        old new  
        22*.~dsk
        33__history
         4*.identcache
  • os/trunk/Applications/TestApplication.pas

    r5 r6  
    44
    55uses
    6   Vcl.Graphics, Xvcl.Controls, Xvcl.Classes, Xvcl.Forms, SysUtils;
     6  Vcl.Graphics, Xvcl.Controls, Xvcl.Classes, Xvcl.Forms, LDOS.Kernel, SysUtils;
    77
    88type
     
    1212    Button: TButton;
    1313    Label1: TLabel;
     14    Timer1: TTimer;
    1415    procedure Run; override;
    1516    procedure ButtonClick(Sender: TObject);
     
    1819
    1920implementation
    20 
    21 uses
    22   LDOS.Kernel;
    2321
    2422{ TTestApplication }
     
    4341  Form2.Caption := 'Some form';
    4442  Form2.Screen := Screen;
     43  Timer1 := TTimer.Create;
     44  Timer1.Interval := 1000;
     45  Timer1.Enabled := True;
     46  TScreen(Screen).Kernel.Timers.Add(Timer1);
    4547  Button := TButton.Create;
    4648  Button.Parent := Form1;
     
    5658  Label1.Caption := '0';
    5759  Form1.Controls.Add(Label1);
     60  MainForm := Form1;
    5861  TScreen(Screen).Forms.Add(Form1);
    5962  TScreen(Screen).Forms.Add(Form2);
  • os/trunk/Applications/UDesktop.pas

    r5 r6  
    99type
    1010  TDesktopApp = class(TApplication)
     11  private
     12    procedure TaskButtonClick(Sender: TObject);
    1113  protected
    1214    function HandleMessage(Message: TMessage): Boolean; override;
     
    3840  TestApp.Screen := Screen;
    3941  TScreen(Screen).Kernel.RunApplication(TestApp);
     42end;
     43
     44procedure TDesktopApp.TaskButtonClick(Sender: TObject);
     45var
     46  Process: TProcess;
     47begin
     48  if Sender is TButton then begin
     49    Process := TScreen(Screen).Kernel.Processes[TaskButtons.IndexOf(TButton(Sender))];
     50    if Assigned(Process) and Assigned(Process.Application.MainForm) then
     51      Process.Application.MainForm.Focused := True;
     52  end;
    4053end;
    4154
     
    7588  MainBar.Controls.Add(TaskBar);
    7689  MenuButton := TButton.Create;
    77   MenuButton.Parent := MainBar;
     90  MenuButton.Parent := TaskBar;
    7891  MenuButton.Bounds := TRectangle.Create(0, 0, 50, 24);
    7992  MenuButton.Visible := True;
     
    8295  MainBar.Controls.Add(MenuButton);
    8396  TScreen(Screen).Forms.Add(MainBar);
    84   UpdateTaskList;
     97  MainForm := MainBar;
     98  UpdateTaskBar;
    8599  TScreen(Screen).Paint;
    86100end;
     
    93107    MainBar.Bounds.Width, MainBar.Bounds.Height);
    94108  UpdateTaskList;
     109  TScreen(Screen).Paint;
    95110end;
    96111
     
    120135      TaskButtons[I].Bounds := TRectangle.Create(MenuButton.Bounds.Width +
    121136        I * Width, 0, Width, MainBar.Bounds.Height);
     137      TaskButtons[I].OnClick := TaskButtonClick;
    122138      MainBar.Controls.Add(TaskButtons[I]);
    123139    end;
Note: See TracChangeset for help on using the changeset viewer.