Changeset 24


Ignore:
Timestamp:
Apr 4, 2016, 10:05:30 PM (8 years ago)
Author:
chronos
Message:
  • Modified: List of scan operations are now automatically enlarged if entire windows is enlarged. Also added splitter between.
Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Form/UFormMain.lfm

    r22 r24  
    11object FormMain: TFormMain
    22  Left = 433
    3   Height = 941
    4   Top = 335
     3  Height = 1072
     4  Top = 204
    55  Width = 1703
    66  Caption = 'CoolDisk'
    7   ClientHeight = 909
     7  ClientHeight = 1040
    88  ClientWidth = 1703
    99  Menu = MainMenu1
     
    4040  object Panel1: TPanel
    4141    Left = 597
    42     Height = 883
     42    Height = 1014
    4343    Top = 26
    4444    Width = 1106
    4545    Align = alClient
    4646    BevelOuter = bvNone
    47     ClientHeight = 883
     47    ClientHeight = 1014
    4848    ClientWidth = 1106
    4949    TabOrder = 1
    5050    object Image1: TImage
    5151      Left = 8
    52       Height = 867
     52      Height = 998
    5353      Top = 8
    5454      Width = 1090
     
    6060  object Panel2: TPanel
    6161    Left = 0
    62     Height = 883
     62    Height = 1014
    6363    Top = 26
    6464    Width = 592
    6565    Align = alLeft
    6666    BevelOuter = bvNone
    67     ClientHeight = 883
     67    ClientHeight = 1014
    6868    ClientWidth = 592
    6969    TabOrder = 2
    70     object ButtonScan: TButton
    71       Left = 16
    72       Height = 25
    73       Top = 104
    74       Width = 75
    75       Action = AScanStart
     70    object Panel3: TPanel
     71      Left = 0
     72      Height = 379
     73      Top = 0
     74      Width = 592
     75      Align = alTop
     76      BevelOuter = bvNone
     77      ClientHeight = 379
     78      ClientWidth = 592
    7679      TabOrder = 0
    77     end
    78     object Label1: TLabel
    79       Left = 15
    80       Height = 24
    81       Top = 675
    82       Width = 101
    83       Caption = 'Sector size:'
    84       ParentColor = False
    85     end
    86     object LabelSectorSize: TLabel
    87       Left = 256
    88       Height = 24
    89       Top = 675
    90       Width = 10
    91       Caption = '  '
    92       ParentColor = False
    93     end
    94     object LabelSectorCount: TLabel
    95       Left = 256
    96       Height = 24
    97       Top = 704
    98       Width = 10
    99       Caption = '  '
    100       ParentColor = False
    101     end
    102     object Label2: TLabel
    103       Left = 15
    104       Height = 24
    105       Top = 704
    106       Width = 119
    107       Caption = 'Sector count:'
    108       ParentColor = False
    109     end
    110     object LabelBlockCurrent: TLabel
    111       Left = 256
    112       Height = 24
    113       Top = 736
    114       Width = 10
    115       Caption = '  '
    116       ParentColor = False
    117     end
    118     object Label3: TLabel
    119       Left = 15
    120       Height = 24
    121       Top = 736
    122       Width = 136
    123       Caption = 'Current sector:'
    124       ParentColor = False
    125     end
    126     object Label4: TLabel
    127       Left = 15
    128       Height = 24
    129       Top = 768
    130       Width = 162
    131       Caption = 'Damaged sectors:'
    132       ParentColor = False
    133     end
    134     object LabelBlockDamaged: TLabel
    135       Left = 256
    136       Height = 24
    137       Top = 764
    138       Width = 10
    139       Caption = '  '
    140       ParentColor = False
    141     end
    142     object Label5: TLabel
    143       Left = 15
    144       Height = 24
    145       Top = 796
    146       Width = 122
    147       Caption = 'Elapsed time:'
    148       ParentColor = False
    149     end
    150     object LabelElapsedTime: TLabel
    151       Left = 256
    152       Height = 24
    153       Top = 792
    154       Width = 10
    155       Caption = '  '
    156       ParentColor = False
    157     end
    158     object Label6: TLabel
    159       Left = 15
    160       Height = 24
    161       Top = 824
    162       Width = 142
    163       Caption = 'Estimated time:'
    164       ParentColor = False
    165     end
    166     object LabelEstimatedTime: TLabel
    167       Left = 257
    168       Height = 24
    169       Top = 820
    170       Width = 10
    171       Caption = '  '
    172       ParentColor = False
    173     end
    174     object Label7: TLabel
    175       Left = 15
    176       Height = 24
    177       Top = 644
    178       Width = 160
    179       Caption = 'Sectors per Block:'
    180       ParentColor = False
    181     end
    182     object LabelSectorPerBlock: TLabel
    183       Left = 256
    184       Height = 24
    185       Top = 640
    186       Width = 10
    187       Caption = '  '
    188       ParentColor = False
    189     end
    190     object LabelIOSpeed: TLabel
    191       Left = 256
    192       Height = 24
    193       Top = 848
    194       Width = 10
    195       Caption = '  '
    196       ParentColor = False
    197     end
    198     object Label8: TLabel
    199       Left = 15
    200       Height = 24
    201       Top = 852
    202       Width = 94
    203       Caption = 'I/O speed:'
    204       ParentColor = False
    205     end
    206     object ButtonScan1: TButton
    207       Left = 440
    208       Height = 25
    209       Top = 16
    210       Width = 120
    211       Action = AProjectOptions
    212       Anchors = [akTop, akRight]
    213       TabOrder = 1
    214     end
    215     object ButtonScan2: TButton
    216       Left = 104
    217       Height = 25
    218       Top = 104
    219       Width = 75
    220       Action = AScanStop
     80      object Label1: TLabel
     81        Left = 16
     82        Height = 24
     83        Top = 179
     84        Width = 101
     85        Caption = 'Sector size:'
     86        ParentColor = False
     87      end
     88      object LabelSectorSize: TLabel
     89        Left = 257
     90        Height = 24
     91        Top = 179
     92        Width = 10
     93        Caption = '  '
     94        ParentColor = False
     95      end
     96      object LabelSectorCount: TLabel
     97        Left = 257
     98        Height = 24
     99        Top = 208
     100        Width = 10
     101        Caption = '  '
     102        ParentColor = False
     103      end
     104      object Label2: TLabel
     105        Left = 16
     106        Height = 24
     107        Top = 208
     108        Width = 119
     109        Caption = 'Sector count:'
     110        ParentColor = False
     111      end
     112      object LabelBlockCurrent: TLabel
     113        Left = 257
     114        Height = 24
     115        Top = 240
     116        Width = 10
     117        Caption = '  '
     118        ParentColor = False
     119      end
     120      object Label3: TLabel
     121        Left = 16
     122        Height = 24
     123        Top = 240
     124        Width = 136
     125        Caption = 'Current sector:'
     126        ParentColor = False
     127      end
     128      object Label4: TLabel
     129        Left = 16
     130        Height = 24
     131        Top = 272
     132        Width = 162
     133        Caption = 'Damaged sectors:'
     134        ParentColor = False
     135      end
     136      object LabelBlockDamaged: TLabel
     137        Left = 257
     138        Height = 24
     139        Top = 268
     140        Width = 10
     141        Caption = '  '
     142        ParentColor = False
     143      end
     144      object Label5: TLabel
     145        Left = 16
     146        Height = 24
     147        Top = 300
     148        Width = 122
     149        Caption = 'Elapsed time:'
     150        ParentColor = False
     151      end
     152      object LabelElapsedTime: TLabel
     153        Left = 257
     154        Height = 24
     155        Top = 296
     156        Width = 10
     157        Caption = '  '
     158        ParentColor = False
     159      end
     160      object Label6: TLabel
     161        Left = 16
     162        Height = 24
     163        Top = 328
     164        Width = 142
     165        Caption = 'Estimated time:'
     166        ParentColor = False
     167      end
     168      object LabelEstimatedTime: TLabel
     169        Left = 258
     170        Height = 24
     171        Top = 324
     172        Width = 10
     173        Caption = '  '
     174        ParentColor = False
     175      end
     176      object Label7: TLabel
     177        Left = 16
     178        Height = 24
     179        Top = 148
     180        Width = 160
     181        Caption = 'Sectors per Block:'
     182        ParentColor = False
     183      end
     184      object LabelSectorPerBlock: TLabel
     185        Left = 257
     186        Height = 24
     187        Top = 144
     188        Width = 10
     189        Caption = '  '
     190        ParentColor = False
     191      end
     192      object LabelIOSpeed: TLabel
     193        Left = 257
     194        Height = 24
     195        Top = 352
     196        Width = 10
     197        Caption = '  '
     198        ParentColor = False
     199      end
     200      object Label8: TLabel
     201        Left = 16
     202        Height = 24
     203        Top = 356
     204        Width = 94
     205        Caption = 'I/O speed:'
     206        ParentColor = False
     207      end
     208      object Label10: TLabel
     209        Left = 16
     210        Height = 24
     211        Top = 116
     212        Width = 40
     213        Caption = 'Size:'
     214        ParentColor = False
     215      end
     216      object LabelSize: TLabel
     217        Left = 257
     218        Height = 24
     219        Top = 112
     220        Width = 10
     221        Caption = '  '
     222        ParentColor = False
     223      end
     224      object ButtonScan: TButton
     225        Left = 16
     226        Height = 25
     227        Top = 72
     228        Width = 75
     229        Action = AScanStart
     230        TabOrder = 0
     231      end
     232      object ButtonScan1: TButton
     233        Left = 464
     234        Height = 25
     235        Top = 24
     236        Width = 120
     237        Action = AProjectOptions
     238        Anchors = [akTop, akRight]
     239        TabOrder = 1
     240      end
     241      object ButtonScan2: TButton
     242        Left = 104
     243        Height = 25
     244        Top = 72
     245        Width = 75
     246        Action = AScanStop
     247        TabOrder = 2
     248      end
     249      object Button2: TButton
     250        Left = 192
     251        Height = 25
     252        Top = 72
     253        Width = 107
     254        Action = AScanContinue
     255        TabOrder = 3
     256      end
     257      object Button3: TButton
     258        Left = 312
     259        Height = 25
     260        Top = 72
     261        Width = 112
     262        Action = AOperationOptions
     263        TabOrder = 4
     264      end
     265      object ComboBoxDrive: TComboBox
     266        Left = 8
     267        Height = 38
     268        Top = 16
     269        Width = 440
     270        Anchors = [akTop, akLeft, akRight]
     271        ItemHeight = 0
     272        OnChange = ComboBoxDriveChange
     273        Style = csDropDownList
     274        TabOrder = 5
     275      end
     276    end
     277    object Splitter2: TSplitter
     278      Cursor = crVSplit
     279      Left = 0
     280      Height = 5
     281      Top = 379
     282      Width = 592
     283      Align = alTop
     284      ResizeAnchor = akTop
     285    end
     286    object Panel4: TPanel
     287      Left = 0
     288      Height = 630
     289      Top = 384
     290      Width = 592
     291      Align = alClient
     292      BevelOuter = bvNone
     293      ClientHeight = 630
     294      ClientWidth = 592
    221295      TabOrder = 2
    222     end
    223     object Label10: TLabel
    224       Left = 15
    225       Height = 24
    226       Top = 612
    227       Width = 40
    228       Caption = 'Size:'
    229       ParentColor = False
    230     end
    231     object LabelSize: TLabel
    232       Left = 256
    233       Height = 24
    234       Top = 608
    235       Width = 10
    236       Caption = '  '
    237       ParentColor = False
    238     end
    239     object Button2: TButton
    240       Left = 192
    241       Height = 25
    242       Top = 104
    243       Width = 107
    244       Action = AScanContinue
    245       TabOrder = 3
    246     end
    247     object ListView1: TListView
    248       Left = 17
    249       Height = 398
    250       Top = 168
    251       Width = 567
    252       Anchors = [akTop, akLeft, akRight]
    253       Columns = <     
    254         item
    255           Caption = 'Name'
    256           Width = 100
    257         end     
    258         item
    259           Caption = 'Time start'
    260           Width = 100
    261         end     
    262         item
    263           Caption = 'Time end'
    264           Width = 100
    265         end     
    266         item
    267           Caption = 'First sector'
    268           Width = 100
    269         end     
    270         item
    271           Caption = 'Last sector'
    272           Width = 347
    273         end>
    274       OwnerData = True
    275       PopupMenu = PopupMenu1
    276       ReadOnly = True
    277       RowSelect = True
    278       TabOrder = 4
    279       ViewStyle = vsReport
    280       OnData = ListView1Data
    281       OnSelectItem = ListView1SelectItem
    282     end
    283     object Label11: TLabel
    284       Left = 17
    285       Height = 24
    286       Top = 141
    287       Width = 107
    288       Caption = 'Operations:'
    289       ParentColor = False
    290     end
    291     object Button3: TButton
    292       Left = 312
    293       Height = 25
    294       Top = 104
    295       Width = 112
    296       Action = AOperationOptions
    297       TabOrder = 5
    298     end
    299     object ComboBoxDrive: TComboBox
    300       Left = 8
    301       Height = 38
    302       Top = 16
    303       Width = 416
    304       Anchors = [akTop, akLeft, akRight]
    305       ItemHeight = 0
    306       OnChange = ComboBoxDriveChange
    307       Style = csDropDownList
    308       TabOrder = 6
    309     end
    310     object Button1: TButton
    311       Left = 21
    312       Height = 25
    313       Top = 576
    314       Width = 75
    315       Action = AOperationAdd
    316       TabOrder = 7
    317     end
    318     object Button4: TButton
    319       Left = 112
    320       Height = 25
    321       Top = 576
    322       Width = 115
    323       Action = AOperationRemove
    324       TabOrder = 8
     296      object ListView1: TListView
     297        Left = 16
     298        Height = 533
     299        Top = 48
     300        Width = 569
     301        Anchors = [akTop, akLeft, akRight, akBottom]
     302        Columns = <       
     303          item
     304            Caption = 'Name'
     305            Width = 100
     306          end       
     307          item
     308            Caption = 'Time start'
     309            Width = 100
     310          end       
     311          item
     312            Caption = 'Time end'
     313            Width = 100
     314          end       
     315          item
     316            Caption = 'First sector'
     317            Width = 100
     318          end       
     319          item
     320            Caption = 'Last sector'
     321            Width = 347
     322          end>
     323        OwnerData = True
     324        PopupMenu = PopupMenu1
     325        ReadOnly = True
     326        RowSelect = True
     327        TabOrder = 0
     328        ViewStyle = vsReport
     329        OnData = ListView1Data
     330        OnSelectItem = ListView1SelectItem
     331      end
     332      object Label11: TLabel
     333        Left = 16
     334        Height = 24
     335        Top = 16
     336        Width = 107
     337        Caption = 'Operations:'
     338        ParentColor = False
     339      end
     340      object Button1: TButton
     341        Left = 19
     342        Height = 25
     343        Top = 592
     344        Width = 104
     345        Action = AOperationAdd
     346        Anchors = [akLeft, akBottom]
     347        TabOrder = 1
     348      end
     349      object Button4: TButton
     350        Left = 144
     351        Height = 25
     352        Top = 592
     353        Width = 115
     354        Action = AOperationRemove
     355        Anchors = [akLeft, akBottom]
     356        TabOrder = 2
     357      end
    325358    end
    326359  end
    327360  object Splitter1: TSplitter
    328361    Left = 592
    329     Height = 883
     362    Height = 1014
    330363    Top = 26
    331364    Width = 5
     
    474507  end
    475508  object PopupMenu1: TPopupMenu
    476     left = 257
    477     top = 425
     509    left = 320
     510    top = 664
    478511    object MenuItem18: TMenuItem
    479512      Action = AOperationAdd
  • trunk/Form/UFormMain.pas

    r22 r24  
    8585    Panel1: TPanel;
    8686    Panel2: TPanel;
     87    Panel3: TPanel;
     88    Panel4: TPanel;
    8789    PopupMenu1: TPopupMenu;
    8890    SaveDialog1: TSaveDialog;
    8991    Splitter1: TSplitter;
     92    Splitter2: TSplitter;
    9093    Timer1: TTimer;
    9194    ToolBar1: TToolBar;
     
    359362    CurrentScan := TDriveScan(Scans.Last);
    360363    CurrentScan.LoadProfile(ScanProfile);
     364    CurrentScan.Mode := rmNone;
    361365    ReloadOperationList;
    362366    Redraw;
  • trunk/UDriveScan.pas

    r23 r24  
    1212  TDriveScan = class;
    1313
    14   TRunMode = (rmRead, rmWrite);
     14  TRunMode = (rmRead, rmWrite, rmNone);
    1515  TExceptionEvent = procedure (Sender: TObject; E: Exception) of object;
    1616
     
    296296function TDriveScan.GetName: string;
    297297begin
    298   if Mode = rmRead then Result := 'Read'
     298  if Mode = rmNone then Result := 'None'
     299  else if Mode = rmRead then Result := 'Read'
    299300  else if Mode = rmWrite then Result := 'Write pattern $' + IntToHex(WritePattern, 2)
    300301  else Result := '';
     
    326327  Terminated := True;
    327328  Reset;
     329  Mode := rmNone;
    328330end;
    329331
Note: See TracChangeset for help on using the changeset viewer.