Ignore:
Timestamp:
Jan 26, 2011, 7:12:08 PM (14 years ago)
Author:
george
Message:
  • Moved: Global function with platform depending implementation moved to UPlatform unit.
  • Modifed: Demo form restructuralized to tabs with separate pages.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • MicroThreading/Demo/UMainForm.lfm

    r148 r149  
    11object MainForm: TMainForm
    2   Left = 263
    3   Height = 510
    4   Top = 156
    5   Width = 798
     2  Left = 232
     3  Height = 557
     4  Top = 116
     5  Width = 863
    66  Caption = 'MicroThreading demo'
    7   ClientHeight = 510
    8   ClientWidth = 798
     7  ClientHeight = 557
     8  ClientWidth = 863
    99  OnClose = FormClose
    1010  OnCreate = FormCreate
    1111  OnDestroy = FormDestroy
     12  OnShow = FormShow
    1213  LCLVersion = '0.9.31'
    13   object ButtonSchedulerStartStop: TButton
    14     Left = 9
    15     Height = 25
    16     Top = 13
    17     Width = 103
    18     Caption = 'Start scheduler'
    19     OnClick = ButtonSchedulerStartStopClick
     14  object PageControl1: TPageControl
     15    Left = 8
     16    Height = 543
     17    Top = 8
     18    Width = 849
     19    ActivePage = TabSheet2
     20    Anchors = [akTop, akLeft, akRight, akBottom]
     21    TabIndex = 1
    2022    TabOrder = 0
     23    object TabSheet1: TTabSheet
     24      Caption = 'Job control'
     25      ClientHeight = 516
     26      ClientWidth = 845
     27      object ButtonAddWorkers: TButton
     28        Left = 10
     29        Height = 25
     30        Top = 7
     31        Width = 104
     32        Caption = 'Add workers'
     33        OnClick = ButtonAddWorkersClick
     34        TabOrder = 0
     35      end
     36      object ButtonClearMicroThreads: TButton
     37        Left = 10
     38        Height = 25
     39        Top = 37
     40        Width = 140
     41        Caption = 'Clear microthreads'
     42        OnClick = ButtonClearMicroThreadsClick
     43        TabOrder = 1
     44      end
     45      object Label4: TLabel
     46        Left = 120
     47        Height = 14
     48        Top = 14
     49        Width = 104
     50        Caption = 'Microthread count:'
     51        ParentColor = False
     52      end
     53      object SpinEdit1: TSpinEdit
     54        Left = 224
     55        Height = 21
     56        Top = 11
     57        Width = 74
     58        MaxValue = 100000
     59        MinValue = 1
     60        TabOrder = 2
     61        Value = 200
     62      end
     63      object Memo1: TMemo
     64        Left = 382
     65        Height = 267
     66        Top = 14
     67        Width = 294
     68        Anchors = [akTop, akLeft, akBottom]
     69        ScrollBars = ssAutoBoth
     70        TabOrder = 3
     71      end
     72    end
     73    object TabSheet2: TTabSheet
     74      Caption = 'Scheduler state'
     75      ClientHeight = 516
     76      ClientWidth = 845
     77      object ListView1: TListView
     78        Left = 222
     79        Height = 483
     80        Top = 24
     81        Width = 569
     82        Anchors = [akTop, akLeft, akRight, akBottom]
     83        Columns = <       
     84          item
     85            Caption = 'Id'
     86            Width = 40
     87          end       
     88          item
     89            Caption = 'Name'
     90          end       
     91          item
     92            Caption = 'Usage'
     93          end       
     94          item
     95            Caption = 'Priority'
     96          end       
     97          item
     98            Caption = 'State'
     99            Width = 60
     100          end       
     101          item
     102            Caption = 'Execution time'
     103            Width = 70
     104          end       
     105          item
     106            Caption = 'Completion'
     107          end       
     108          item
     109            Caption = 'Used stack'
     110            Width = 178
     111          end>
     112        OwnerData = True
     113        ReadOnly = True
     114        RowSelect = True
     115        TabOrder = 0
     116        ViewStyle = vsReport
     117        OnData = ListView1Data
     118      end
     119      object Label1: TLabel
     120        Left = 222
     121        Height = 14
     122        Top = 7
     123        Width = 85
     124        Caption = 'Microthread list'
     125        ParentColor = False
     126      end
     127      object GroupBox1: TGroupBox
     128        Left = 6
     129        Height = 81
     130        Top = 143
     131        Width = 205
     132        Caption = 'State'
     133        ClientHeight = 66
     134        ClientWidth = 201
     135        TabOrder = 1
     136        object Label5: TLabel
     137          Left = 9
     138          Height = 14
     139          Top = 4
     140          Width = 135
     141          Caption = 'Logical processor count:'
     142          ParentColor = False
     143        end
     144        object Label6: TLabel
     145          Left = 150
     146          Height = 14
     147          Top = 4
     148          Width = 13
     149          Caption = '    '
     150          ParentColor = False
     151        end
     152        object Label7: TLabel
     153          Left = 8
     154          Height = 14
     155          Top = 20
     156          Width = 78
     157          Caption = 'Thread count:'
     158          ParentColor = False
     159        end
     160        object Label8: TLabel
     161          Left = 9
     162          Height = 14
     163          Top = 36
     164          Width = 107
     165          Caption = 'Micro thread count:'
     166          ParentColor = False
     167        end
     168        object Label9: TLabel
     169          Left = 150
     170          Height = 14
     171          Top = 20
     172          Width = 13
     173          Caption = '    '
     174          ParentColor = False
     175        end
     176        object Label10: TLabel
     177          Left = 151
     178          Height = 14
     179          Top = 36
     180          Width = 13
     181          Caption = '    '
     182          ParentColor = False
     183        end
     184      end
     185      object GroupBox2: TGroupBox
     186        Left = 6
     187        Height = 126
     188        Top = 7
     189        Width = 206
     190        Caption = 'Control'
     191        ClientHeight = 111
     192        ClientWidth = 202
     193        TabOrder = 2
     194        object ButtonSchedulerStartStop: TButton
     195          Left = 8
     196          Height = 25
     197          Top = 7
     198          Width = 103
     199          Caption = 'Start scheduler'
     200          OnClick = ButtonSchedulerStartStopClick
     201          TabOrder = 0
     202        end
     203        object Label3: TLabel
     204          Left = 8
     205          Height = 14
     206          Top = 46
     207          Width = 78
     208          Caption = 'Thread count:'
     209          ParentColor = False
     210        end
     211        object SpinEdit2: TSpinEdit
     212          Left = 96
     213          Height = 21
     214          Top = 39
     215          Width = 74
     216          OnChange = SpinEdit2Change
     217          TabOrder = 1
     218        end
     219      end
     220    end
     221    object TabSheet3: TTabSheet
     222      Caption = 'Testing'
     223      ClientHeight = 516
     224      ClientWidth = 845
     225      object ButtonShowThreadId: TButton
     226        Left = 14
     227        Height = 25
     228        Top = 47
     229        Width = 147
     230        Caption = 'Show thread id'
     231        OnClick = ButtonShowThreadIdClick
     232        TabOrder = 0
     233      end
     234      object ButtonGetMaxThread: TButton
     235        Left = 14
     236        Height = 25
     237        Top = 79
     238        Width = 147
     239        Caption = 'Get max TThread count'
     240        OnClick = ButtonGetMaxThreadClick
     241        TabOrder = 1
     242      end
     243      object Label2: TLabel
     244        Left = 78
     245        Height = 14
     246        Top = 135
     247        Width = 38
     248        Caption = 'Label2'
     249        ParentColor = False
     250      end
     251      object Button2: TButton
     252        Left = 14
     253        Height = 25
     254        Top = 15
     255        Width = 147
     256        Caption = 'Read stack frame info'
     257        OnClick = Button2Click
     258        TabOrder = 2
     259      end
     260    end
    21261  end
    22   object ListView1: TListView
    23     Left = 310
    24     Height = 483
    25     Top = 24
    26     Width = 481
    27     Anchors = [akTop, akLeft, akRight, akBottom]
    28     Columns = <   
    29       item
    30         Caption = 'Id'
    31         Width = 40
    32       end   
    33       item
    34         Caption = 'Name'
    35       end   
    36       item
    37         Caption = 'Usage'
    38       end   
    39       item
    40         Caption = 'Priority'
    41       end   
    42       item
    43         Caption = 'State'
    44         Width = 60
    45       end   
    46       item
    47         Caption = 'Execution time'
    48         Width = 70
    49       end   
    50       item
    51         Caption = 'Completion'
    52       end>
    53     OwnerData = True
    54     ReadOnly = True
    55     RowSelect = True
    56     TabOrder = 1
    57     ViewStyle = vsReport
    58     OnData = ListView1Data
     262  object TimerRedraw: TTimer
     263    Interval = 100
     264    OnTimer = TimerRedrawTimer
     265    left = 427
     266    top = 115
    59267  end
    60   object Label1: TLabel
    61     Left = 312
    62     Height = 14
    63     Top = 8
    64     Width = 74
    65     Caption = 'Microthread list'
    66     ParentColor = False
    67   end
    68   object Memo1: TMemo
    69     Left = 10
    70     Height = 267
    71     Top = 240
    72     Width = 294
    73     Anchors = [akTop, akLeft, akBottom]
    74     ScrollBars = ssAutoBoth
    75     TabOrder = 2
    76   end
    77   object Button2: TButton
    78     Left = 224
    79     Height = 25
    80     Top = 208
    81     Width = 75
    82     Caption = 'Button2'
    83     OnClick = Button2Click
    84     TabOrder = 3
    85   end
    86   object Label2: TLabel
    87     Left = 10
    88     Height = 14
    89     Top = 192
    90     Width = 32
    91     Caption = 'Label2'
    92     ParentColor = False
    93   end
    94   object ButtonAddWorkers: TButton
    95     Left = 10
    96     Height = 25
    97     Top = 72
    98     Width = 104
    99     Caption = 'Add workers'
    100     OnClick = ButtonAddWorkersClick
    101     TabOrder = 4
    102   end
    103   object SpinEdit1: TSpinEdit
    104     Left = 224
    105     Height = 21
    106     Top = 76
    107     Width = 74
    108     MaxValue = 100000
    109     MinValue = 1
    110     TabOrder = 5
    111     Value = 200
    112   end
    113   object ButtonGetMaxThread: TButton
    114     Left = 168
    115     Height = 25
    116     Top = 160
    117     Width = 131
    118     Caption = 'Get max TThread count'
    119     OnClick = ButtonGetMaxThreadClick
    120     TabOrder = 6
    121   end
    122   object ButtonShowThreadId: TButton
    123     Left = 40
    124     Height = 25
    125     Top = 160
    126     Width = 123
    127     Caption = 'Show thread id'
    128     OnClick = ButtonShowThreadIdClick
    129     TabOrder = 7
    130   end
    131   object SpinEdit2: TSpinEdit
    132     Left = 224
    133     Height = 21
    134     Top = 13
    135     Width = 74
    136     OnChange = SpinEdit2Change
    137     TabOrder = 8
    138     Value = 1
    139   end
    140   object Label3: TLabel
    141     Left = 120
    142     Height = 14
    143     Top = 20
    144     Width = 69
    145     Caption = 'Thread count:'
    146     ParentColor = False
    147   end
    148   object Label4: TLabel
    149     Left = 120
    150     Height = 14
    151     Top = 79
    152     Width = 92
    153     Caption = 'Microthread count:'
    154     ParentColor = False
    155   end
    156   object Label5: TLabel
    157     Left = 120
    158     Height = 14
    159     Top = 40
    160     Width = 117
    161     Caption = 'Logical processor count:'
    162     ParentColor = False
    163   end
    164   object Label6: TLabel
    165     Left = 248
    166     Height = 14
    167     Top = 40
    168     Width = 13
    169     Caption = '    '
    170     ParentColor = False
    171   end
    172   object ButtonClearMicroThreads: TButton
    173     Left = 10
    174     Height = 25
    175     Top = 102
    176     Width = 104
    177     Caption = 'Clear microthreads'
    178     OnClick = ButtonClearMicroThreadsClick
    179     TabOrder = 9
    180   end
    181   object Timer1: TTimer
    182     Interval = 100
    183     OnTimer = Timer1Timer
    184     left = 399
    185     top = 87
     268  object TimerSchedulerStart: TTimer
     269    Interval = 10
     270    OnTimer = TimerSchedulerStartTimer
     271    left = 429
     272    top = 163
    186273  end
    187274end
Note: See TracChangeset for help on using the changeset viewer.