Changeset 112


Ignore:
Timestamp:
Feb 22, 2007, 1:37:39 AM (15 years ago)
Author:
alloc
Message:
 
Location:
oup/current
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • oup/current/DataAccess/Access_OUP_ADB.pas

    r106 r112  
    262262      extension := fields.Strings[0];
    263263    end;
     264    if SortType in [ST_ExtNameAsc, ST_ExtNameDesc] then
     265    begin
     266      id := fields.Strings[2];
     267      name := fields.Strings[1];
     268      extension := fields.Strings[0];
     269    end;
    264270  end;
    265271
     
    275281      if (NoEmptyFiles = False) or ((Fdat_files[i].FileType and $02) = 0) then
    276282      begin
    277         if AppSettings.FilenumbersAsHex then
    278           id := IntToHex(Fdat_files[i].ID, 4)
    279         else
    280           id := FormatNumber(Fdat_files[i].ID, 5, '0');
     283        id := FormatNumber(Fdat_files[i].ID, 5, '0');
    281284        name := Fdat_files[i].Name;
    282285        extension := Fdat_files[i].Extension;
     
    286289          ST_NameAsc, ST_NameDesc: list.Add(name + ';' + id + ';' + extension);
    287290          ST_ExtAsc, ST_ExtDesc:   list.Add(extension + ';' + id + ';' + name);
     291          ST_ExtNameAsc, ST_ExtNameDesc: list.Add(name + ';' + extension + ';' + id);
    288292        end;
    289293      end;
     
    294298  begin
    295299    fields := TStringList.Create;
    296     if SortType in [ST_IDAsc, ST_NameAsc, ST_ExtAsc] then
     300    if SortType in [ST_IDAsc, ST_NameAsc, ST_ExtAsc, ST_ExtNameAsc] then
    297301      for i := 0 to list.Count - 1 do
    298302      begin
  • oup/current/DataAccess/Access_OniArchive.pas

    r105 r112  
    6060
    6161constructor TAccess_OniArchive.Create(DatFilename: String; ConnectionID: Integer; var Msg: TStatusMessages);
    62 type
    63   THeader = packed record
    64     Ident:      array[0..$13] of Byte;
    65     Files:      Integer;
    66     NamedFiles: Integer;
    67     Extensions: Integer;
    68     DataAddr:   Integer;
    69     DataSize:   Integer;
    70     NamesAddr:  Integer;
    71     NamesSize:  Integer;
    72     Ident2:     array[0..$F] of Byte;
    73   end;
    74   TFilesMap = array of packed record
    75     Extension: array[0..$3] of Char;
    76     DataAddr:  Integer;
    77     NameAddr:  Integer;
    78     FileSize:  Integer;
    79     FileType:  LongWord;
    80   end;
    81   TNamedFilesMap = array of packed record
    82     FileNumber: Integer;
    83     blubb:      Integer;
    84   end;
    8562const
    8663  header_ident1_pc: array[0..$13] of Byte =
     
    250227      extension := fields.Strings[0];
    251228    end;
     229    if SortType in [ST_ExtNameAsc, ST_ExtNameDesc] then
     230    begin
     231      id := fields.Strings[2];
     232      name := fields.Strings[1];
     233      extension := fields.Strings[0];
     234    end;
    252235  end;
    253236
     
    263246      if (NoEmptyFiles = False) or ((Fdat_files[i].FileType and $02) = 0) then
    264247      begin
    265         if AppSettings.FilenumbersAsHex then
    266           id := IntToHex(Fdat_files[i].ID, 4)
    267         else
    268           id := FormatNumber(Fdat_files[i].ID, 5, '0');
     248        id := FormatNumber(Fdat_files[i].ID, 5, '0');
    269249        name := Fdat_files[i].Name;
    270250        extension := Fdat_files[i].Extension;
     
    274254          ST_NameAsc, ST_NameDesc: list.Add(name + ';' + id + ';' + extension);
    275255          ST_ExtAsc, ST_ExtDesc:   list.Add(extension + ';' + id + ';' + name);
     256          ST_ExtNameAsc, ST_ExtNameDesc: list.Add(name + ';' + extension + ';' + id);
    276257        end;
    277258      end;
     
    282263  begin
    283264    fields := TStringList.Create;
    284     if SortType in [ST_IDAsc, ST_NameAsc, ST_ExtAsc] then
     265    if SortType in [ST_IDAsc, ST_NameAsc, ST_ExtAsc, ST_ExtNameAsc] then
    285266      for i := 0 to list.Count - 1 do
    286267      begin
  • oup/current/DataAccess/ConnectionManager.pas

    r101 r112  
    3535    function CloseConnection(ID: Integer; var Msg: TStatusMessages): Boolean; overload;
    3636    function CloseConnection(FileName: String; var Msg: TStatusMessages): Boolean; overload;
     37    function FileOpened(FileName: String): Integer;
    3738  published
    3839  end;
     
    261262
    262263
     264function TConnectionManager.FileOpened(FileName: String): Integer;
     265var
     266  i: Integer;
     267begin
     268  Result := -1;
     269  if Length(FConnections) > 0 then
     270    for i := 0 to High(FConnections) do
     271      if FConnections[i].FileName = FileName then
     272      begin
     273        Result := FConnections[i].ConnectionID;
     274        Exit;
     275      end;
     276end;
     277
     278
    263279initialization
    264280  ConManager := TConnectionManager.Create;
  • oup/current/Global/DatStructureLoader.pas

    r97 r112  
    1313      // 10    : bitset
    1414      // 11    : raw-addr
    15       // 12    : dat-file-ID
     15      // 12    : untyped-dat-file-ID-link
    1616      // 13..16: Signed Integer[1..4]
    1717      // 17    : level-ID
    1818      // 100..300: dat-file-name[0..200]
     19      // 501..614: typed-dat-file-ID-link
    1920      // 1000..9999: Unused data[0-8999]
    2021      // 10000+: string[0+]
  • oup/current/Global/Data.pas

    r93 r112  
    2222}
    2323
     24const
     25        FileTypes: array[0..113] of TFileType = (
     26                (Extension: 'AISA';  StructID: 501; Description: 'AI Character Setup Array';  IdentWin:($E9,$6B,$4C,$22,$2A,$00,$00,$00);  IdentMac:($E9,$6B,$4C,$22,$2A,$00,$00,$00)),
     27                (Extension: 'AITR';  StructID: 502; Description: 'AI script trigger array';  IdentWin:($55,$EA,$1A,$00,$00,$00,$00,$00);  IdentMac:($55,$EA,$1A,$00,$00,$00,$00,$00)),
     28                (Extension: 'AIWA';  StructID: 503; Description: 'AI Imported Waypoint Array';  IdentWin:($03,$7F,$10,$00,$00,$00,$00,$00);  IdentMac:($03,$7F,$10,$00,$00,$00,$00,$00)),
     29                (Extension: 'AKAA';  StructID: 504; Description: 'Adjacency Array';  IdentWin:($77,$DE,$11,$00,$00,$00,$00,$00);  IdentMac:($77,$DE,$11,$00,$00,$00,$00,$00)),
     30                (Extension: 'ABNA';  StructID: 505; Description: 'BSP tree node Array';  IdentWin:($A0,$6D,$12,$00,$00,$00,$00,$00);  IdentMac:($A0,$6D,$12,$00,$00,$00,$00,$00)),
     31                (Extension: 'AKVA';  StructID: 506; Description: 'BNV Node Array';  IdentWin:($E0,$05,$DF,$00,$00,$00,$00,$00);  IdentMac:($E0,$05,$DF,$00,$00,$00,$00,$00)),
     32                (Extension: 'AKBA';  StructID: 507; Description: 'Side Array';  IdentWin:($84,$28,$3A,$00,$00,$00,$00,$00);  IdentMac:($84,$28,$3A,$00,$00,$00,$00,$00)),
     33                (Extension: 'AKBP';  StructID: 508; Description: 'BSP node Array';  IdentWin:($49,$F4,$0C,$00,$00,$00,$00,$00);  IdentMac:($49,$F4,$0C,$00,$00,$00,$00,$00)),
     34                (Extension: 'AKDA';  StructID: 509; Description: 'Door Frame Array';  IdentWin:($64,$54,$2E,$00,$00,$00,$00,$00);  IdentMac:($64,$54,$2E,$00,$00,$00,$00,$00)),
     35                (Extension: 'AKEV';  StructID: 510; Description: 'Akira Environment';  IdentWin:($75,$DE,$14,$30,$88,$00,$00,$00);  IdentMac:($75,$DE,$14,$30,$88,$00,$00,$00)),
     36                (Extension: 'AGQC';  StructID: 511; Description: 'Gunk Quad Collision Array';  IdentWin:($91,$CB,$1C,$00,$00,$00,$00,$00);  IdentMac:($91,$CB,$1C,$00,$00,$00,$00,$00)),
     37                (Extension: 'AGDB';  StructID: 512; Description: 'Gunk Quad Debug Array';  IdentWin:($17,$2E,$07,$00,$00,$00,$00,$00);  IdentMac:($17,$2E,$07,$00,$00,$00,$00,$00)),
     38                (Extension: 'AGQG';  StructID: 513; Description: 'Gunk Quad General Array';  IdentWin:($D2,$03,$1C,$00,$00,$00,$00,$00);  IdentMac:($D2,$03,$1C,$00,$00,$00,$00,$00)),
     39                (Extension: 'AGQM';  StructID: 514; Description: 'Gunk Quad Material';  IdentWin:($A6,$4A,$04,$00,$00,$00,$00,$00);  IdentMac:($A6,$4A,$04,$00,$00,$00,$00,$00)),
     40                (Extension: 'AGQR';  StructID: 515; Description: 'Gunk Quad Render Array';  IdentWin:($3B,$3A,$08,$00,$00,$00,$00,$00);  IdentMac:($3B,$3A,$08,$00,$00,$00,$00,$00)),
     41                (Extension: 'AKOT';  StructID: 516; Description: 'Oct tree';  IdentWin:($08,$DA,$B8,$E7,$11,$00,$00,$00);  IdentMac:($08,$DA,$B8,$E7,$11,$00,$00,$00)),
     42                (Extension: 'OTIT';  StructID: 517; Description: 'Oct tree interior node Array';  IdentWin:($D2,$51,$0A,$00,$00,$00,$00,$00);  IdentMac:($D2,$51,$0A,$00,$00,$00,$00,$00)),
     43                (Extension: 'OTLF';  StructID: 518; Description: 'Oct tree leaf node Array';  IdentWin:($0B,$AC,$1E,$00,$00,$00,$00,$00);  IdentMac:($0B,$AC,$1E,$00,$00,$00,$00,$00)),
     44                (Extension: 'QTNA';  StructID: 519; Description: 'Quad tree node Array';  IdentWin:($CC,$6E,$06,$00,$00,$00,$00,$00);  IdentMac:($CC,$6E,$06,$00,$00,$00,$00,$00)),
     45                (Extension: 'BINA';  StructID: 520; Description: 'Binary Data';  IdentWin:($41,$DB,$00,$00,$00,$00,$00,$00);  IdentMac:($11,$5E,$01,$00,$00,$00,$00,$00)),
     46                (Extension: 'ENVP';  StructID: 521; Description: 'Env Particle Array';  IdentWin:($C3,$C1,$67,$00,$00,$00,$00,$00);  IdentMac:($C3,$C1,$67,$00,$00,$00,$00,$00)),
     47                (Extension: 'FXLR';  StructID: 522; Description: 'FX Laser effect';  IdentWin:($A9,$F8,$83,$95,$06,$00,$00,$00);  IdentMac:($A9,$F8,$83,$95,$06,$00,$00,$00)),
     48                (Extension: '3CLA';  StructID: 523; Description: 'RGB Color Array';  IdentWin:($BE,$E6,$04,$00,$00,$00,$00,$00);  IdentMac:($BE,$E6,$04,$00,$00,$00,$00,$00)),
     49                (Extension: 'EDIA';  StructID: 524; Description: 'Edge Index Array';  IdentWin:($F7,$B6,$07,$00,$00,$00,$00,$00);  IdentMac:($F7,$B6,$07,$00,$00,$00,$00,$00)),
     50                (Extension: 'M3GM';  StructID: 525; Description: 'Geometry';  IdentWin:($36,$E4,$78,$A0,$27,$00,$00,$00);  IdentMac:($36,$E4,$78,$A0,$27,$00,$00,$00)),
     51                (Extension: 'GMAN';  StructID: 526; Description: 'Geometry Animation';  IdentWin:($A5,$F5,$72,$A6,$09,$00,$00,$00);  IdentMac:($A5,$F5,$72,$A6,$09,$00,$00,$00)),
     52                (Extension: 'M3GA';  StructID: 527; Description: 'GeometryArray';  IdentWin:($B2,$20,$6B,$20,$05,$00,$00,$00);  IdentMac:($B2,$20,$6B,$20,$05,$00,$00,$00)),
     53                (Extension: 'PLEA';  StructID: 528; Description: 'Plane Equation Array';  IdentWin:($38,$BC,$07,$00,$00,$00,$00,$00);  IdentMac:($38,$BC,$07,$00,$00,$00,$00,$00)),
     54                (Extension: 'PNTA';  StructID: 529; Description: '3D Point Array';  IdentWin:($6C,$67,$37,$00,$00,$00,$00,$00);  IdentMac:($6C,$67,$37,$00,$00,$00,$00,$00)),
     55                (Extension: 'QUDA';  StructID: 530; Description: 'Quad array';  IdentWin:($6A,$5E,$03,$00,$00,$00,$00,$00);  IdentMac:($6A,$5E,$03,$00,$00,$00,$00,$00)),
     56                (Extension: 'TXCA';  StructID: 531; Description: 'Texture Coordinate Array';  IdentWin:($1A,$14,$09,$00,$00,$00,$00,$00);  IdentMac:($1A,$14,$09,$00,$00,$00,$00,$00)),
     57                (Extension: 'TXMP';  StructID: 532; Description: 'Texture Map';  IdentWin:($81,$75,$18,$91,$08,$00,$00,$00);  IdentMac:($5F,$EB,$1E,$91,$08,$00,$00,$00)),
     58                (Extension: 'TXAN';  StructID: 533; Description: 'Texture Map Animation';  IdentWin:($87,$43,$13,$8B,$0A,$00,$00,$00);  IdentMac:($87,$43,$13,$8B,$0A,$00,$00,$00)),
     59                (Extension: 'TXMA';  StructID: 534; Description: 'Texture map array';  IdentWin:($90,$7F,$DE,$99,$05,$00,$00,$00);  IdentMac:($90,$7F,$DE,$99,$05,$00,$00,$00)),
     60                (Extension: 'TXMB';  StructID: 535; Description: 'Texture Map Big';  IdentWin:($52,$6A,$16,$8B,$0A,$00,$00,$00);  IdentMac:($52,$6A,$16,$8B,$0A,$00,$00,$00)),
     61                (Extension: 'TXPC';  StructID: 536; Description: 'Texture Procedure Data';  IdentWin:($7E,$A7,$0B,$00,$00,$00,$00,$00);  IdentMac:($7E,$A7,$0B,$00,$00,$00,$00,$00)),
     62                (Extension: 'M3TA';  StructID: 537; Description: 'Triangle array';  IdentWin:($C1,$F7,$02,$00,$00,$00,$00,$00);  IdentMac:($C1,$F7,$02,$00,$00,$00,$00,$00)),
     63                (Extension: 'VCRA';  StructID: 538; Description: '3D Vector Array';  IdentWin:($39,$47,$05,$00,$00,$00,$00,$00);  IdentMac:($39,$47,$05,$00,$00,$00,$00,$00)),
     64                (Extension: 'Impt';  StructID: 539; Description: 'Impact';  IdentWin:($16,$4F,$04,$00,$00,$00,$00,$00);  IdentMac:($16,$4F,$04,$00,$00,$00,$00,$00)),
     65                (Extension: 'Mtrl';  StructID: 540; Description: 'Material';  IdentWin:($0D,$8E,$02,$00,$00,$00,$00,$00);  IdentMac:($0D,$8E,$02,$00,$00,$00,$00,$00)),
     66                (Extension: 'NMSA';  StructID: 541; Description: 'Network Spawn Point Array';  IdentWin:($9C,$09,$0C,$00,$00,$00,$00,$00);  IdentMac:($9C,$09,$0C,$00,$00,$00,$00,$00)),
     67                (Extension: 'CONS';  StructID: 542; Description: 'Console';  IdentWin:($DD,$0B,$8B,$DA,$13,$00,$00,$00);  IdentMac:($DD,$0B,$8B,$DA,$13,$00,$00,$00)),
     68                (Extension: 'DOOR';  StructID: 543; Description: 'Door';  IdentWin:($67,$FD,$72,$31,$06,$00,$00,$00);  IdentMac:($67,$FD,$72,$31,$06,$00,$00,$00)),
     69                (Extension: 'OFGA';  StructID: 544; Description: 'Object Furn Geom Array';  IdentWin:($62,$C3,$FA,$74,$13,$00,$00,$00);  IdentMac:($62,$C3,$FA,$74,$13,$00,$00,$00)),
     70                (Extension: 'OBLS';  StructID: 545; Description: 'Object LS Data';  IdentWin:($3D,$70,$0B,$00,$00,$00,$00,$00);  IdentMac:($3D,$70,$0B,$00,$00,$00,$00,$00)),
     71                (Extension: 'TRIG';  StructID: 546; Description: 'Trigger';  IdentWin:($2C,$CD,$D0,$DC,$21,$00,$00,$00);  IdentMac:($2C,$CD,$D0,$DC,$21,$00,$00,$00)),
     72                (Extension: 'TRGE';  StructID: 547; Description: 'Trigger Emitter';  IdentWin:($3C,$B9,$A6,$71,$08,$00,$00,$00);  IdentMac:($3C,$B9,$A6,$71,$08,$00,$00,$00)),
     73                (Extension: 'TURR';  StructID: 548; Description: 'Turret';  IdentWin:($BE,$05,$58,$C8,$49,$00,$00,$00);  IdentMac:($BE,$05,$58,$C8,$49,$00,$00,$00)),
     74                (Extension: 'OBAN';  StructID: 549; Description: 'Object animation';  IdentWin:($24,$0C,$4E,$00,$00,$00,$00,$00);  IdentMac:($24,$0C,$4E,$00,$00,$00,$00,$00)),
     75                (Extension: 'OBDC';  StructID: 550; Description: 'Door class array';  IdentWin:($0B,$CA,$9E,$BD,$07,$00,$00,$00);  IdentMac:($0B,$CA,$9E,$BD,$07,$00,$00,$00)),
     76                (Extension: 'OBOA';  StructID: 551; Description: 'Starting Object Array';  IdentWin:($E1,$86,$89,$4F,$13,$00,$00,$00);  IdentMac:($E1,$86,$89,$4F,$13,$00,$00,$00)),
     77                (Extension: 'CBPI';  StructID: 552; Description: 'Character Body Part Impacts';  IdentWin:($C2,$D6,$F9,$0B,$0C,$00,$00,$00);  IdentMac:($C2,$D6,$F9,$0B,$0C,$00,$00,$00)),
     78                (Extension: 'CBPM';  StructID: 553; Description: 'Character Body Part Material';  IdentWin:($1F,$35,$A4,$6B,$02,$00,$00,$00);  IdentMac:($1F,$35,$A4,$6B,$02,$00,$00,$00)),
     79                (Extension: 'ONCC';  StructID: 554; Description: 'Oni Character Class';  IdentWin:($EF,$59,$C7,$AA,$A5,$04,$00,$00);  IdentMac:($EF,$59,$C7,$AA,$A5,$04,$00,$00)),
     80                (Extension: 'ONIA';  StructID: 555; Description: 'Oni Character Impact Array';  IdentWin:($9A,$2F,$2B,$00,$00,$00,$00,$00);  IdentMac:($9A,$2F,$2B,$00,$00,$00,$00,$00)),
     81                (Extension: 'ONCP';  StructID: 556; Description: 'Oni Character Particle Array';  IdentWin:($21,$73,$2F,$00,$00,$00,$00,$00);  IdentMac:($21,$73,$2F,$00,$00,$00,$00,$00)),
     82                (Extension: 'ONCV';  StructID: 557; Description: 'Oni Character Variant';  IdentWin:($F5,$99,$02,$00,$00,$00,$00,$00);  IdentMac:($F5,$99,$02,$00,$00,$00,$00,$00)),
     83                (Extension: 'CRSA';  StructID: 558; Description: 'Corpse Array';  IdentWin:($CC,$D4,$43,$15,$0C,$00,$00,$00);  IdentMac:($CC,$D4,$43,$15,$0C,$00,$00,$00)),
     84                (Extension: 'DPge';  StructID: 559; Description: 'Diary Page';  IdentWin:($6B,$68,$8A,$BA,$07,$00,$00,$00);  IdentMac:($6B,$68,$8A,$BA,$07,$00,$00,$00)),
     85                (Extension: 'FILM';  StructID: 560; Description: 'Film';  IdentWin:($AD,$62,$1B,$33,$0B,$00,$00,$00);  IdentMac:($AD,$62,$1B,$33,$0B,$00,$00,$00)),
     86                (Extension: 'ONFA';  StructID: 561; Description: 'Imported Flag Node Array';  IdentWin:($E7,$0C,$1B,$00,$00,$00,$00,$00);  IdentMac:($E7,$0C,$1B,$00,$00,$00,$00,$00)),
     87                (Extension: 'ONGS';  StructID: 562; Description: 'Oni Game Settings';  IdentWin:($B6,$EB,$26,$02,$00,$00,$00,$00);  IdentMac:($B6,$EB,$26,$02,$00,$00,$00,$00)),
     88                (Extension: 'HPge';  StructID: 563; Description: 'Help Page';  IdentWin:($3B,$71,$2F,$4B,$04,$00,$00,$00);  IdentMac:($3B,$71,$2F,$4B,$04,$00,$00,$00)),
     89                (Extension: 'IGHH';  StructID: 564; Description: 'IGUI HUD Help';  IdentWin:($DE,$58,$8E,$E5,$08,$00,$00,$00);  IdentMac:($DE,$58,$8E,$E5,$08,$00,$00,$00)),
     90                (Extension: 'IGPG';  StructID: 565; Description: 'IGUI Page';  IdentWin:($7D,$88,$67,$CE,$11,$00,$00,$00);  IdentMac:($7D,$88,$67,$CE,$11,$00,$00,$00)),
     91                (Extension: 'IGPA';  StructID: 566; Description: 'IGUI Page Array';  IdentWin:($05,$09,$BE,$DD,$04,$00,$00,$00);  IdentMac:($05,$09,$BE,$DD,$04,$00,$00,$00)),
     92                (Extension: 'IGSt';  StructID: 567; Description: 'IGUI String';  IdentWin:($25,$77,$A4,$A2,$02,$00,$00,$00);  IdentMac:($25,$77,$A4,$A2,$02,$00,$00,$00)),
     93                (Extension: 'IGSA';  StructID: 568; Description: 'IGUI String Array';  IdentWin:($08,$A4,$BE,$DD,$04,$00,$00,$00);  IdentMac:($08,$A4,$BE,$DD,$04,$00,$00,$00)),
     94                (Extension: 'IPge';  StructID: 569; Description: 'Item Page';  IdentWin:($BA,$69,$83,$93,$02,$00,$00,$00);  IdentMac:($BA,$69,$83,$93,$02,$00,$00,$00)),
     95                (Extension: 'KeyI';  StructID: 570; Description: 'Key Icons';  IdentWin:($AD,$57,$47,$3F,$40,$00,$00,$00);  IdentMac:($AD,$57,$47,$3F,$40,$00,$00,$00)),
     96                (Extension: 'ONLV';  StructID: 571; Description: 'Oni Game Level';  IdentWin:($A3,$2E,$9A,$B7,$7D,$00,$00,$00);  IdentMac:($A3,$2E,$9A,$B7,$7D,$00,$00,$00)),
     97                (Extension: 'ONLD';  StructID: 572; Description: 'Oni Game Level Descriptor';  IdentWin:($A1,$12,$04,$00,$00,$00,$00,$00);  IdentMac:($A1,$12,$04,$00,$00,$00,$00,$00)),
     98                (Extension: 'ONMA';  StructID: 573; Description: 'Imported Marker Node Array';  IdentWin:($79,$47,$12,$00,$00,$00,$00,$00);  IdentMac:($79,$47,$12,$00,$00,$00,$00,$00)),
     99                (Extension: 'ONOA';  StructID: 574; Description: 'Object Gunk Array';  IdentWin:($7C,$5C,$E7,$4B,$06,$00,$00,$00);  IdentMac:($7C,$5C,$E7,$4B,$06,$00,$00,$00)),
     100                (Extension: 'OPge';  StructID: 575; Description: 'Objective Page';  IdentWin:($FB,$BB,$30,$4B,$04,$00,$00,$00);  IdentMac:($FB,$BB,$30,$4B,$04,$00,$00,$00)),
     101                (Extension: 'ONSK';  StructID: 576; Description: 'Oni Sky class';  IdentWin:($67,$10,$26,$C2,$14,$00,$00,$00);  IdentMac:($67,$10,$26,$C2,$14,$00,$00,$00)),
     102                (Extension: 'ONSA';  StructID: 577; Description: 'Imported Spawn Array';  IdentWin:($34,$46,$04,$00,$00,$00,$00,$00);  IdentMac:($34,$46,$04,$00,$00,$00,$00,$00)),
     103                (Extension: 'TxtC';  StructID: 578; Description: 'Text Console';  IdentWin:($27,$8B,$AC,$B7,$01,$00,$00,$00);  IdentMac:($27,$8B,$AC,$B7,$01,$00,$00,$00)),
     104                (Extension: 'ONTA';  StructID: 579; Description: 'Trigger Array';  IdentWin:($C0,$FC,$A0,$00,$00,$00,$00,$00);  IdentMac:($C0,$FC,$A0,$00,$00,$00,$00,$00)),
     105                (Extension: 'ONVL';  StructID: 580; Description: 'Oni Variant List';  IdentWin:($8A,$C5,$34,$44,$05,$00,$00,$00);  IdentMac:($8A,$C5,$34,$44,$05,$00,$00,$00)),
     106                (Extension: 'WPge';  StructID: 581; Description: 'Weapon Page';  IdentWin:($B5,$89,$58,$6F,$04,$00,$00,$00);  IdentMac:($B5,$89,$58,$6F,$04,$00,$00,$00)),
     107                (Extension: 'OSBD';  StructID: 582; Description: 'Oni Sound Binary Data';  IdentWin:($6C,$DB,$00,$00,$00,$00,$00,$00);  IdentMac:($3C,$5E,$01,$00,$00,$00,$00,$00)),
     108                (Extension: 'PSpc';  StructID: 583; Description: 'Part Specification';  IdentWin:($48,$26,$08,$00,$00,$00,$00,$00);  IdentMac:($48,$26,$08,$00,$00,$00,$00,$00)),
     109                (Extension: 'PSpL';  StructID: 584; Description: 'Part Specification List';  IdentWin:($05,$CC,$0C,$00,$00,$00,$00,$00);  IdentMac:($05,$CC,$0C,$00,$00,$00,$00,$00)),
     110                (Extension: 'PSUI';  StructID: 585; Description: 'Part Specifications UI';  IdentWin:($FB,$96,$4E,$54,$CD,$03,$00,$00);  IdentMac:($FB,$96,$4E,$54,$CD,$03,$00,$00)),
     111                (Extension: 'SNDD';  StructID: 586; Description: 'Sound Data';  IdentWin:($78,$05,$37,$00,$00,$00,$00,$00);  IdentMac:($EB,$11,$04,$00,$00,$00,$00,$00)),
     112                (Extension: 'SUBT';  StructID: 587; Description: 'Subtitle Array';  IdentWin:($68,$6C,$04,$00,$00,$00,$00,$00);  IdentMac:($68,$6C,$04,$00,$00,$00,$00,$00)),
     113                (Extension: 'UUEA';  StructID: 588; Description: 'Error Binding Array';  IdentWin:($BC,$EE,$0A,$00,$00,$00,$00,$00);  IdentMac:($BC,$EE,$0A,$00,$00,$00,$00,$00)),
     114                (Extension: 'TMFA';  StructID: 589; Description: 'Float Array';  IdentWin:($24,$53,$02,$00,$00,$00,$00,$00);  IdentMac:($24,$53,$02,$00,$00,$00,$00,$00)),
     115                (Extension: 'IDXA';  StructID: 590; Description: 'Index Array';  IdentWin:($8F,$70,$02,$00,$00,$00,$00,$00);  IdentMac:($8F,$70,$02,$00,$00,$00,$00,$00)),
     116                (Extension: 'TStr';  StructID: 591; Description: 'String';  IdentWin:($A0,$64,$00,$00,$00,$00,$00,$00);  IdentMac:($A0,$64,$00,$00,$00,$00,$00,$00)),
     117                (Extension: 'StNA';  StructID: 592; Description: 'String Array';  IdentWin:($20,$B5,$8C,$99,$05,$00,$00,$00);  IdentMac:($20,$B5,$8C,$99,$05,$00,$00,$00)),
     118                (Extension: 'TMRA';  StructID: 593; Description: 'Template Reference Array';  IdentWin:($21,$35,$07,$00,$00,$00,$00,$00);  IdentMac:($21,$35,$07,$00,$00,$00,$00,$00)),
     119                (Extension: 'TRAS';  StructID: 594; Description: 'Totoro Aiming Screen';  IdentWin:($30,$A9,$21,$FA,$01,$00,$00,$00);  IdentMac:($30,$A9,$21,$FA,$01,$00,$00,$00)),
     120                (Extension: 'TRAM';  StructID: 595; Description: 'Totoro Animation Sequence';  IdentWin:($18,$C9,$3C,$7E,$10,$00,$00,$00);  IdentMac:($18,$C9,$3C,$7E,$10,$00,$00,$00)),
     121                (Extension: 'TRAC';  StructID: 596; Description: 'Animation Collection';  IdentWin:($2F,$FB,$E9,$26,$0F,$00,$00,$00);  IdentMac:($2F,$FB,$E9,$26,$0F,$00,$00,$00)),
     122                (Extension: 'TRCM';  StructID: 597; Description: 'Totoro Quaternion Body';  IdentWin:($4E,$05,$DE,$92,$23,$00,$00,$00);  IdentMac:($4E,$05,$DE,$92,$23,$00,$00,$00)),
     123                (Extension: 'TRBS';  StructID: 598; Description: 'Totoro Body Set';  IdentWin:($39,$42,$92,$A2,$02,$00,$00,$00);  IdentMac:($39,$42,$92,$A2,$02,$00,$00,$00)),
     124                (Extension: 'TRMA';  StructID: 599; Description: 'Texture Map Array';  IdentWin:($57,$6D,$DE,$99,$05,$00,$00,$00);  IdentMac:($57,$6D,$DE,$99,$05,$00,$00,$00)),
     125                (Extension: 'TRFT';  StructID: 600; Description: 'Totoro Facing Table';  IdentWin:($AF,$21,$02,$00,$00,$00,$00,$00);  IdentMac:($AF,$21,$02,$00,$00,$00,$00,$00)),
     126                (Extension: 'TRGA';  StructID: 601; Description: 'Totoro Quaternion Body Geometry Array';  IdentWin:($F8,$20,$6B,$20,$05,$00,$00,$00);  IdentMac:($F8,$20,$6B,$20,$05,$00,$00,$00)),
     127                (Extension: 'TRIA';  StructID: 602; Description: 'Totoro Quaternion Body Index Array';  IdentWin:($82,$C4,$0A,$00,$00,$00,$00,$00);  IdentMac:($82,$C4,$0A,$00,$00,$00,$00,$00)),
     128                (Extension: 'TRSC';  StructID: 603; Description: 'Screen (aiming) Collection';  IdentWin:($17,$6B,$78,$99,$05,$00,$00,$00);  IdentMac:($17,$6B,$78,$99,$05,$00,$00,$00)),
     129                (Extension: 'TRTA';  StructID: 604; Description: 'Totoro Quaternion Body Translation Array';  IdentWin:($E8,$59,$07,$00,$00,$00,$00,$00);  IdentMac:($E8,$59,$07,$00,$00,$00,$00,$00)),
     130                (Extension: 'TSFT';  StructID: 605; Description: 'Font';  IdentWin:($EA,$DE,$91,$BA,$16,$00,$00,$00);  IdentMac:($EA,$DE,$91,$BA,$16,$00,$00,$00)),
     131                (Extension: 'TSFF';  StructID: 606; Description: 'Font Family';  IdentWin:($8A,$48,$6C,$8A,$0A,$00,$00,$00);  IdentMac:($8A,$48,$6C,$8A,$0A,$00,$00,$00)),
     132                (Extension: 'TSFL';  StructID: 607; Description: 'Font Language';  IdentWin:($29,$DE,$08,$00,$00,$00,$00,$00);  IdentMac:($29,$DE,$08,$00,$00,$00,$00,$00)),
     133                (Extension: 'TSGA';  StructID: 608; Description: 'Glyph Array';  IdentWin:($98,$4E,$2A,$00,$00,$00,$00,$00);  IdentMac:($98,$4E,$2A,$00,$00,$00,$00,$00)),
     134                (Extension: 'UVDL';  StructID: 609; Description: 'UV Data List';  IdentWin:($E5,$16,$0A,$00,$00,$00,$00,$00);  IdentMac:($E5,$16,$0A,$00,$00,$00,$00,$00)),
     135                (Extension: 'WMCL';  StructID: 610; Description: 'WM Cursor List';  IdentWin:($76,$D0,$09,$00,$00,$00,$00,$00);  IdentMac:($76,$D0,$09,$00,$00,$00,$00,$00)),
     136                (Extension: 'WMDD';  StructID: 611; Description: 'WM Dialog Data';  IdentWin:($C4,$F3,$1D,$00,$1C,$00,$00,$00);  IdentMac:($C4,$F3,$1D,$00,$1C,$00,$00,$00)),
     137                (Extension: 'WMMB';  StructID: 612; Description: 'WM Menu Bar';  IdentWin:($37,$67,$0C,$D2,$06,$00,$00,$00);  IdentMac:($37,$67,$0C,$D2,$06,$00,$00,$00)),
     138                (Extension: 'WMM_';  StructID: 613; Description: 'WM Menu';  IdentWin:($38,$1A,$0C,$00,$00,$00,$00,$00);  IdentMac:($38,$1A,$0C,$00,$00,$00,$00,$00)),
     139                (Extension: 'ONWC';  StructID: 614; Description: 'Oni Weapon Class';  IdentWin:($B5,$EE,$E0,$A3,$93,$01,$00,$00);  IdentMac:($B5,$EE,$E0,$A3,$93,$01,$00,$00))
     140        );
     141
     142
    24143implementation
    25144
  • oup/current/Global/TypeDefs.pas

    r111 r112  
    2323  );
    2424
     25  THeader = packed record
     26    Ident:      array[0..$13] of Byte;
     27    Files:      Integer;
     28    NamedFiles: Integer;
     29    Extensions: Integer;
     30    DataAddr:   Integer;
     31    DataSize:   Integer;
     32    NamesAddr:  Integer;
     33    NamesSize:  Integer;
     34    Ident2:     array[0..$F] of Byte;
     35  end;
     36  TFilesMap = array of packed record
     37    Extension: array[0..$3] of Char;
     38    DataAddr:  Integer;
     39    NameAddr:  Integer;
     40    FileSize:  Integer;
     41    FileType:  LongWord;
     42  end;
     43  TNamedFilesMap = array of packed record
     44    FileNumber: Integer;
     45    blubb:      Integer;
     46  end;
     47
     48        TTypeIdent = array[0..7] of Byte;
     49        TFileType = record
     50                Extension:   String[4];
     51                StructID:    Integer;
     52    Description: String;
     53                IdentWin:    TTypeIdent;
     54    IdentMac:    TTypeIdent;
     55        end;
     56
    2557  TExtensionsMap = array of packed record
    26       Ident:       array[0..$7] of Byte;
     58      Ident:       TTypeIdent;
    2759      Extension:   array[0..$3] of Char;
    2860      ExtCount:    Integer;
     
    5486      ST_NameDesc,
    5587      ST_ExtAsc,
    56       ST_ExtDesc
     88      ST_ExtDesc,
     89      ST_ExtNameAsc,
     90      ST_ExtNameDesc
    5791  );
    5892
     
    67101      DatPath:        String[250];
    68102      ExtractPath:    String[250];
    69       FilenumbersAsHex: Boolean;
    70103      CharSet:        TFontCharSet;
    71104      HideUnusedData: Boolean;
     
    90123      ByID: array of TLinkByID;
    91124  end;
    92 
     125 
    93126{
    94127  TLevelInfo = record
  • oup/current/Helper/LevelDB.pas

    r105 r112  
    1 unit Helper_LevelDB;
     1unit LevelDB;
    22
    33interface
     
    1616    procedure btn_abortokClick(Sender: TObject);
    1717  private
    18     procedure HandleFile(ext: String; fileid: Integer; dir_dat2db: Boolean);
    19     procedure stop_convert;
     18    procedure HandleFile(Ext: String; FileID: Integer);
     19    procedure StopConvert;
    2020  public
    2121    procedure CreateDatabase(Source, Target: String);
     
    3131{$R *.dfm}
    3232
    33 uses ABSMain, ABSDecUtil, Main, Functions, Data, OniImgClass, DataStructures, ConnectionManager;
     33uses ABSMain, ABSDecUtil, Main,
     34    ConnectionManager, TypeDefs, DataAccess, OniImgClass;
    3435
    3536type
    36   THandler = procedure(fileid: LongWord; dir_dat2db: Boolean);
    37 
    38   TConvertHandlers = record
     37  THandler = procedure(FileID: Integer);
     38  TConvertHandler = record
    3939    Ext:     String[4];
    40     needed:  Boolean;
    4140    Handler: THandler;
    4241  end;
    4342
    4443var
    45   ConvertHandlers: array of TConvertHandlers;
    46   loaded_filename: String;
    47   converting: Boolean = False;
    48   abort:     Boolean = False;
    49   DataBase:  TABSDatabase;
    50   Query:     TABSQuery;
    51   MimeCoder: TStringFormat_MIME64;
    52 
    53 var
    54   DatHeader:   THeader;
    55   FilesHeader: TFilesMap;
     44  ConvertHandlers: array of TConvertHandler;
     45//  loaded_filename: String;
     46  Converting:  Boolean = False;
     47  Abort:       Boolean = False;
     48
     49
     50function GetOpenMsg(msg: TStatusMessages): String;
     51begin
     52  case msg of
     53    SM_AlreadyOpened:    Result := 'File already opened.';
     54    SM_FileNotFound:     Result := 'File not found.';
     55    SM_UnknownExtension: Result := 'Unknown extension.';
     56    SM_IncompatibleFile: Result := 'Incompatible file format.';
     57    SM_UnknownError:     Result := 'Unknown error.';
     58  end;
     59end;
     60
     61
     62procedure TForm_LevelDB.CreateLevel(Source, Target: String);
     63var
     64  DatHeader:        THeader;
     65  FilesHeader:      TFilesMap;
    5666  NamedFilesHeader: TNamedFilesMap;
    5767  ExtensionsHeader: TExtensionsMap;
    58   Stream_Body, Stream_Names: TMemoryStream;
     68
     69  Stream_Body, Stream_Names:          TMemoryStream;
    5970  Stream_Dat, Stream_Raw, Stream_Sep: TFileStream;
    60   OniDataConnection: TOniData;
    61 
    62 
    63 
    64 
    65 procedure TForm_LevelDB.CreateLevel(Source, target: String);
    66 var
    67   files: LongWord;
    68 
    69   i, j:     LongWord;
    70   temps, temps2: String;
    71   Data, rawdata: Tdata;
    72   absolutebegintime, begintime: Double;
    73   step:     Byte;
    74   rawlist:  TRawList;
    75   extlist:  TExtensionsMap;
    76   fileinfo: TFileInfo;
    77   datlinks: TDatLinks;
    78   OniImage: TOniImage;
    79   levelid:  LongWord;
    80   timeformat: TFormatSettings;
    81 
    82   conIndex: Integer;
    83   connection: TOniData;
     71
     72//  FileCount: Integer;
     73//  temps, temps2: String;
     74//  Data, rawdata: Tdata;
     75  BeginTime, FileTime: Double;
     76  Step:     Integer;
     77//  rawlist:  TRawDataList;
     78//  extlist:  TExtensionsMap;
     79//  fileinfo: TFileInfo;
     80//  datlinks: TDatLinks;
     81  OniImage:   TOniImage;
     82  LevelID:    Integer;
     83  TimeFormat: TFormatSettings;
     84
     85  ConID:      Integer;
     86  Connection: TDataAccess;
     87  ConRepMsg:  TStatusMessages;
     88
     89  Strings:    TStrings;
     90  i, j:       Integer;
    8491const
    85   steps: Byte = 3;
    86 
    87 
    88 
    89 
    90   procedure DoStep(stepname: String);
    91   begin
    92     Inc(step);
    93     if stepname <> 'FIN' then
     92  Steps: Byte = 3;
     93
     94
     95  procedure DoStep(StepName: String);
     96  begin
     97    Inc(Step);
     98    if StepName <> 'FIN' then
    9499      group_progress.Caption :=
    95         'Creating Dat (Step ' + IntToStr(step) + '/' + IntToStr(steps) + ': ' + stepname + ')'
     100        'Creating Dat (Step ' + IntToStr(Step) + '/' + IntToStr(Steps) + ': ' + StepName + ')'
    96101    else
    97102      group_progress.Caption := 'Creating Dat (FINISHED)';
     
    104109  //
    105110
    106   timeformat.ShortTimeFormat := 'hh:nn:ss';
    107   timeformat.LongTimeFormat := 'hh:nn:ss';
    108   timeformat.TimeSeparator := ':';
    109 
    110   connection := ConnectionExists(target);
    111   if connection <> nil then
    112   begin
    113     ShowMessage('Destination-file is opened, close it in order to proceed conversion?');
     111  TimeFormat.ShortTimeFormat := 'hh:nn:ss';
     112  TimeFormat.LongTimeFormat := 'hh:nn:ss';
     113  TimeFormat.TimeSeparator  := ':';
     114
     115  ConID := ConManager.OpenConnection(Source, ConRepMsg);
     116  if not (ConRepMsg in [SM_OK, SM_AlreadyOpened]) then
     117  begin
     118    ShowMessage('Source-file couldn''t be opened! Aborting' + CrLf + GetOpenMsg(ConRepMsg));
    114119    Exit;
    115   end;
    116 
    117   connection := ConnectionExists(source);
    118   if connection <> nil then
    119   begin
    120     ShowMessage('Source-file is opened, close it in order to proceed conversion?');
    121     Exit;
    122   end;
    123 
    124 
    125   if CreateDataConnection(Source, ODB_ADB) = nil then
    126   begin
    127     ShowMessage('Could not connect to .oldb-file');
    128     Exit;
    129   end;
    130   levelid  := OniDataConnection.LevelInfo.LevelNumber;
    131   levelid  := (levelid * 2) * 256 * 256 * 256 + $01;
     120  end else
     121    Connection := ConManager.Connection[ConID];
     122
     123  ConID := ConManager.FileOpened(Target);
     124  if ConID >= 0 then
     125  begin
     126    if MessageBox(Self.Handle, PChar('Destination-file is opened, close it in ' +
     127          'order to proceed conversion?'), PChar('Destination-file opened'),
     128          MB_YESNO + MB_ICONQUESTION) = ID_YES then
     129    begin
     130      if Form_Main.CheckConnectionCloseable(ConID) then
     131        if not ConManager.CloseConnection(ConID, ConRepMsg) then
     132        begin
     133          ShowMessage('Couldn''t close destination-file. Aborting');
     134          Exit;
     135        end;
     136    end else begin
     137      ShowMessage('Aborting');
     138      Exit;
     139    end;
     140  end;
     141
     142  if FileExists(Target) then
     143  begin
     144    if MessageBox(Self.Handle, PChar('Destination-file exists. ' +
     145          'Overwrite it?'), PChar('Destination-file exists'),
     146          MB_YESNO + MB_ICONWARNING) = ID_YES then
     147    begin
     148      if not DeleteFile(Target) then
     149      begin
     150        ShowMessage('Couldn''t delete file. Aborting');
     151        Exit;
     152      end else if not DeleteFile(AnsiReplaceStr(Target, '.dat', '.raw')) then
     153      begin
     154        ShowMessage('Couldn''t delete file. Aborting');
     155        Exit;
     156      end else if not DeleteFile(AnsiReplaceStr(Target, '.dat', '.sep')) then
     157      begin
     158        ShowMessage('Couldn''t delete file. Aborting');
     159        Exit;
     160      end;
     161    end else begin
     162      ShowMessage('Aborting');
     163      Exit;
     164    end;
     165  end;
     166
     167  LevelID  := Connection.LevelNumber;
     168  LevelID  := (LevelID * 2) * 256 * 256 * 256 + $01;
    132169  OniImage := TOniImage.Create;
    133 
    134   absolutebegintime := Time;
    135170
    136171  Self.Visible := True;
    137172  Form_Main.Visible := False;
    138   step := 0;
    139   converting := True;
    140   abort := False;
     173  Step := 0;
     174  Converting := True;
     175  Abort := False;
    141176  btn_abortok.Caption := '&Abort...';
    142177  btn_abortok.Default := False;
    143   absolutebegintime := Time;
     178  BeginTime := Time;
    144179
    145180  Stream_Body  := TMemoryStream.Create;
    146181  Stream_Names := TMemoryStream.Create;
    147   Stream_Dat   := TFileStream.Create(target, fmCreate);
    148   Stream_Raw   := TFileStream.Create(AnsiReplaceStr(target, '.dat', '.raw'), fmCreate);
    149   if OniDataConnection.OSisMac then
    150     Stream_Sep := TFileStream.Create(AnsiReplaceStr(target, '.dat', '.sep'), fmCreate);
     182  Stream_Dat   := TFileStream.Create(Target, fmCreate);
     183  Stream_Raw   := TFileStream.Create(AnsiReplaceStr(Target, '.dat', '.raw'), fmCreate);
     184  if Connection.DataOS in [DOS_WINDEMO, DOS_MAC, DOS_MACBETA] then
     185    Stream_Sep := TFileStream.Create(AnsiReplaceStr(Target, '.dat', '.sep'), fmCreate);
    151186
    152187  DoStep('Creating header');
     
    156191  Application.ProcessMessages;
    157192
    158   NamedFilesHeader := TOniDataADB(OniDataConnection).GetNamedFilesMap;
     193  SetLength(NamedFilesHeader, 0);
     194  Strings := TStringList.Create;
     195  Strings := Connection.GetFilesList('', '', False, ST_ExtNameAsc);
     196  for i := 0 to Strings.Count - 1 do
     197  begin
     198    if MidStr(Strings.Strings[i],
     199          Pos('-', Strings.Strings[i]) + 1,
     200          Length(Strings.Strings[i]) -
     201            Pos('.', ReverseString(Strings.Strings[i])) -
     202            Pos('-', Strings.Strings[i])
     203        ) <> '' then
     204    begin
     205      SetLength(NamedFilesHeader, Length(NamedFilesHeader) + 1);
     206      NamedFilesHeader[High(NamedFilesHeader)].FileNumber := StrToInt(MidStr(Strings.Strings[i], 1, 5));
     207      NamedFilesHeader[High(NamedFilesHeader)].blubb := 0;
     208    end;
     209  end;
     210
     211 
    159212  extlist := OniDataConnection.GetExtendedExtensionsList;
    160213  for i := 0 to High(DatHeader.Ident) do
     
    172225  SetLength(ExtensionsHeader, DatHeader.Extensions);
    173226
     227
    174228  DoStep('Writing extensions-header');
    175229  progress.Max := Length(OniDataConnection.GetExtensionsList);
     
    190244    Application.ProcessMessages;
    191245  end;
     246
    192247
    193248  DoStep('Storing files-data');
     
    354409procedure TForm_LevelDB.CreateDatabase(Source, target: String);
    355410var
     411  DataBase:    TABSDatabase;
     412  Query:       TABSQuery;
     413  MimeCoder:   TStringFormat_MIME64;
     414
    356415  i, j:     LongWord;
    357416  temps, temps2: String;
  • oup/current/Main.pas

    r105 r112  
    255255    AppSettings.DatPath        := ExtractFilepath(Application.EXEname);
    256256    AppSettings.ExtractPath    := ExtractFilepath(Application.EXEname) + '\extract';
    257     AppSettings.FilenumbersAsHex := False;
    258257    AppSettings.CharSet        := DEFAULT_CHARSET;
    259258    AppSettings.HideUnusedData := False;
  • oup/current/OniUnPacker.bdsproj

    r106 r112  
    176176                        <Language Name="ProjectLang">$00000000</Language>
    177177                        <Language Name="RootDir"></Language>
    178                 </Language> 
    179    
    180    
    181     <Excluded_Packages>
     178                </Language>  <Excluded_Packages>
    182179      <Excluded_Packages Name="d:\programme\borland\bds\3.0\Bin\dbwebxprt.bpl">Borland Web Wizard Package</Excluded_Packages>
    183180    </Excluded_Packages>
  • oup/current/Settings.dfm

    r93 r112  
    44  BorderStyle = bsToolWindow
    55  Caption = 'Settings'
    6   ClientHeight = 235
     6  ClientHeight = 197
    77  ClientWidth = 321
    88  Color = clBtnFace
     
    2020  object label_charset: TLabel
    2121    Left = 8
    22     Top = 39
     22    Top = 8
    2323    Width = 145
    2424    Height = 26
     
    2727    WordWrap = True
    2828  end
    29   object check_filesashex: TCheckBox
    30     Left = 8
    31     Top = 8
    32     Width = 145
    33     Height = 17
    34     Caption = 'Show filenumbers as Hex'
    35     TabOrder = 0
    36   end
    3729  object btn_ok: TButton
    3830    Left = 8
    39     Top = 199
     31    Top = 168
    4032    Width = 57
    4133    Height = 23
    4234    Caption = 'OK'
    4335    Default = True
    44     TabOrder = 1
     36    TabOrder = 0
    4537    OnClick = btn_okClick
    4638  end
    4739  object btn_cancel: TButton
    4840    Left = 112
    49     Top = 199
     41    Top = 168
    5042    Width = 57
    5143    Height = 23
    5244    Cancel = True
    5345    Caption = 'Cancel'
    54     TabOrder = 2
     46    TabOrder = 1
    5547    OnClick = btn_cancelClick
    5648  end
    5749  object combo_charset: TComboBox
    5850    Left = 160
    59     Top = 40
     51    Top = 9
    6052    Width = 156
    6153    Height = 21
     
    6355    ItemHeight = 13
    6456    ItemIndex = 0
    65     TabOrder = 3
     57    TabOrder = 2
    6658    Text = 'default - 1'
    6759    Items.Strings = (
     
    7870  object check_hideunused: TCheckBox
    7971    Left = 8
    80     Top = 79
     72    Top = 48
    8173    Width = 209
    8274    Height = 17
    8375    Caption = 'Hide "Unused" data in StructureViewer'
    84     TabOrder = 4
     76    TabOrder = 3
    8577  end
    8678  object check_reg_dat: TCheckBox
    8779    Left = 8
    88     Top = 118
     80    Top = 87
    8981    Width = 180
    9082    Height = 17
    9183    Caption = 'Register .dat files with OUP'
    92     TabOrder = 5
     84    TabOrder = 4
    9385  end
    9486  object check_reg_oldb: TCheckBox
    9587    Left = 8
    96     Top = 141
     88    Top = 110
    9789    Width = 180
    9890    Height = 17
    9991    Caption = 'Register .oldb files with OUP'
    100     TabOrder = 6
     92    TabOrder = 5
    10193  end
    10294  object check_reg_opf: TCheckBox
    10395    Left = 8
    104     Top = 164
     96    Top = 133
    10597    Width = 180
    10698    Height = 17
    10799    Caption = 'Register .opf files with OUP'
    108     TabOrder = 7
     100    TabOrder = 6
    109101  end
    110102end
  • oup/current/Settings.pas

    r93 r112  
    77type
    88  TForm_Settings = class(TForm)
    9     check_filesashex: TCheckBox;
    109    btn_ok:     TButton;
    1110    btn_cancel: TButton;
     
    9897  temps: String;
    9998begin
    100   AppSettings.FilenumbersAsHex := check_filesashex.Checked;
    10199  AppSettings.CharSet := StrToInt(
    102100    MidStr(combo_charset.Items.Strings[combo_charset.ItemIndex], Pos(
     
    183181    check_reg_opf.Checked := False;
    184182
    185   check_filesashex.Checked := AppSettings.FilenumbersAsHex;
    186183  check_hideunused.Checked := AppSettings.HideUnusedData;
    187184
Note: See TracChangeset for help on using the changeset viewer.