--- oup/current/Main.pas 2007/06/18 14:22:53 222 +++ oup/current/Main.pas 2007/11/26 11:02:28 248 @@ -44,7 +44,7 @@ type menu_windows_previous: TTBItem; menu_sep2: TTBSeparatorItem; menu_About: TTBItem; - Toolbar: TTBToolbar; + Toolbar_main: TTBToolbar; tbOpen: TTBItem; DockLeft: TTBDock; DockRight: TTBDock; @@ -57,15 +57,7 @@ type menu_view_statusbar: TTBItem; menu_view_toolbar: TTBItem; tb_separator1: TTBSeparatorItem; - tb_preview: TTBItem; - tb_structure: TTBItem; - tb_compare: TTBItem; - tb_extractor: TTBItem; - tb_txmpreplacer: TTBItem; - tb_rawedit: TTBItem; - tb_datedit: TTBItem; menu_windows_tilevert: TTBItem; - tb_meta: TTBItem; menu_meta: TTBItem; TBSeparatorItem1: TTBSeparatorItem; tb_db2dat: TTBItem; @@ -75,6 +67,18 @@ type Images_Close: TImageList; menu_conns: TTBSubmenuItem; menu_windows: TTBSubmenuItem; + menu_filemanager: TTBItem; + Toolbar_tools: TTBToolbar; + tb_preview: TTBItem; + tb_datedit: TTBItem; + tb_rawedit: TTBItem; + tb_txmpreplacer: TTBItem; + tb_extractor: TTBItem; + tb_meta: TTBItem; + tb_filemanager: TTBItem; + tb_compare: TTBItem; + tb_structure: TTBItem; + menu_view_toolbar_tools: TTBItem; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormResize(Sender: TObject); procedure FormCreate(Sender: TObject); @@ -89,7 +93,7 @@ type Shift: TShiftState; X, Y: Integer); procedure MDITabMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); - procedure ToolbarDockChanged(Sender: TObject); + procedure Toolbar_mainDockChanged(Sender: TObject); procedure CreateConnection(filename: String); function CheckConnectionCloseable(index: Integer): Boolean; @@ -124,6 +128,8 @@ type procedure menu_AboutClick(Sender: TObject); procedure WMCopyData(var Msg: TWMCopyData); message WM_COPYDATA; + procedure menu_filemanagerClick(Sender: TObject); + procedure menu_view_toolbar_toolsClick(Sender: TObject); private public function open_child(window_context: String; Connection, FileID: Integer): TForm_BaseTemplate; overload; @@ -138,7 +144,7 @@ var implementation uses - LevelDB, MetaEditor; + LevelDB, MetaEditor, FileManager; {$R *.dfm} @@ -211,7 +217,7 @@ begin begin ShowMessage('Load OPF-File: ' + ParamStr(2)); end - else if (strings.Strings[0] = 'oldb') or (strings.Strings[0] = 'dat') then + else if (strings.Strings[0] = 'oldb') or (strings.Strings[0] = 'dat') or (strings.Strings[0] = 'oni') then begin CreateConnection(strings.Strings[1]); end; @@ -247,6 +253,9 @@ begin ConManager.OnCoonnectionListChanged := UpdateConLists; + Application.HintPause := 250; + Application.HintHidePause := 5000; + if FileExists(ExtractFilepath(Application.EXEname) + '\oniunpacker.ini') then begin AssignFile(AppSettingsFile, ExtractFilepath(Application.EXEname) + @@ -271,7 +280,7 @@ begin begin ShowMessage('Load OPF-File: ' + ParamStr(2)); end - else if (MidStr(ParamStr(1), 1, 4) = 'oldb') or (MidStr(ParamStr(1), 1, 3) = 'dat') then + else if (MidStr(ParamStr(1), 1, 4) = 'oldb') or (MidStr(ParamStr(1), 1, 3) = 'dat') or (MidStr(ParamStr(1), 1, 3) = 'oni') then begin CreateConnection(ParamStr(2)); end; @@ -447,7 +456,7 @@ end; -procedure TForm_Main.ToolbarDockChanged(Sender: TObject); +procedure TForm_Main.Toolbar_mainDockChanged(Sender: TObject); var toolbar: TTBToolbar; position: TTBDockPosition; @@ -499,7 +508,6 @@ begin entry.Name := 'menu_conn_' + IntToStr(i); entry.OnClick := menu_conns_itemClick; menu_conns.Add(entry); - entry := nil; end; end; end; @@ -510,9 +518,9 @@ var i: Integer; begin opend.InitialDir := AppSettings.DatPath; - opend.Filter := 'Compatible level files|*.dat;*.oldb|Oni level (*.dat)|*.dat|OUP level database (*.oldb)|*.oldb|Any (*.*)|*'; + opend.Filter := 'Compatible level files|*.dat;*.oni;*.oldb|Oni level (*.dat)|*.dat|OniSplit Archive (*.oni)|*.oni|OUP level database (*.oldb)|*.oldb|Any (*.*)|*'; if typedb then - opend.FilterIndex := 3 + opend.FilterIndex := 4 else opend.FilterIndex := 2; if opend.Execute then @@ -617,7 +625,12 @@ begin end; - {#################################} + procedure TForm_Main.menu_filemanagerClick(Sender: TObject); +begin + open_child('filemanager'); +end; + +{#################################} {##### View-Menu-Handlers #####} {#################################} procedure TForm_Main.menu_windows_cascadeClick(Sender: TObject); @@ -702,7 +715,13 @@ end; procedure TForm_Main.menu_view_toolbarClick(Sender: TObject); begin menu_view_toolbar.Checked := not menu_view_toolbar.Checked; - Toolbar.Visible := menu_view_toolbar.Checked; + Toolbar_main.Visible := menu_view_toolbar.Checked; +end; + +procedure TForm_Main.menu_view_toolbar_toolsClick(Sender: TObject); +begin + menu_view_toolbar_tools.Checked := not menu_view_toolbar_tools.Checked; + Toolbar_tools.Visible := menu_view_toolbar_tools.Checked; end; procedure TForm_Main.menu_view_statusbarClick(Sender: TObject); @@ -738,12 +757,13 @@ type classt: TTemplate; end; const - Tools: array[0..4] of TTool = ( + Tools: array[0..6] of TTool = ( (name: 'binedit'; icon: 5; caption: 'Binary .dat-Editor'; classt: TForm_BinEdit), (name: 'extractor'; icon: 8; caption: 'Extractor'; classt: TForm_Extractor), (name: 'preview'; icon: 4; caption: 'Preview-Window'; classt: TForm_Preview), (name: 'rawedit'; icon: 6; caption: 'Binary .raw-Editor'; classt: TForm_RawEdit), -// (name: 'txmpreplace'; icon: 7; caption: 'TXMP Replacer'; classt: TForm_TxmpReplace), + (name: 'txmpreplace'; icon: 7; caption: 'TXMP Replacer'; classt: TForm_TxmpReplace), + (name: 'filemanager'; icon:-1; caption: 'FileManager'; classt: TForm_FileManager), (name: 'meta'; icon: 11; caption: 'MetaEditor'; classt: TForm_Meta) ); var @@ -794,12 +814,12 @@ end; function TForm_Main.open_child(window_context: String; Connection: Integer): TForm_BaseTemplate; begin - open_child(window_context, Connection, -1); + Result := open_child(window_context, Connection, -1); end; function TForm_Main.open_child(window_context: String): TForm_BaseTemplate; begin - open_child(window_context, -1, -1); + Result := open_child(window_context, -1, -1); end; end.