meillo@0: unit unit_Editor_as; meillo@0: meillo@0: interface//#################################################################################### meillo@0: meillo@0: uses meillo@0: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, meillo@0: Dialogs, ExtCtrls, StdCtrls, ExtDlgs; meillo@0: meillo@0: type meillo@0: Tform_Editor_as = class(TForm) meillo@0: gbx_AutorunIcon: TGroupBox; meillo@0: btn_BrowseIcon: TButton; meillo@0: tbx_IconPath: TEdit; meillo@0: img_Icon: TImage; meillo@0: gbx_ZielDir: TGroupBox; meillo@0: tbx_CDRootPath: TEdit; meillo@0: btn_BrowseCDRoot: TButton; meillo@0: lbl_1: TLabel; meillo@0: lbl_2: TLabel; meillo@0: lbl_3: TLabel; meillo@0: btn_cancel: TButton; meillo@0: btn_apply: TButton; meillo@0: btn_restore: TButton; meillo@0: img_IconCDAR: TImage; meillo@0: GroupBox1: TGroupBox; meillo@0: lbl_4: TLabel; meillo@0: lbl_5: TLabel; meillo@0: tbx_StartsFD: TEdit; meillo@0: tbx_Warnings: TMemo; meillo@0: OpenDialog1: TOpenPictureDialog; meillo@0: procedure FormCreate(Sender: TObject); meillo@0: procedure FormClose(Sender: TObject; var Action: TCloseAction); meillo@0: procedure FormShow(Sender: TObject); meillo@0: procedure btn_BrowseIconClick(Sender: TObject); meillo@0: procedure btn_BrowseCDRootClick(Sender: TObject); meillo@0: procedure btn_restoreClick(Sender: TObject); meillo@0: procedure btn_applyClick(Sender: TObject); meillo@0: procedure btn_cancelClick(Sender: TObject); meillo@0: procedure tbx_StartsFDChange(Sender: TObject); meillo@0: procedure tbx_CDRootPathChange(Sender: TObject); meillo@0: private meillo@0: meillo@0: public meillo@0: { Public declarations } meillo@0: end; meillo@0: meillo@0: var meillo@0: form_Editor_as: Tform_Editor_as; meillo@0: meillo@0: implementation//############################################################################### meillo@0: uses unit_Editor, unit_Editor_as_BrowseDir; meillo@0: {$R *.dfm}//################################################################################### meillo@0: meillo@0: // forwardings meillo@0: procedure Warnings();forward; meillo@0: meillo@0: //------------------------------------------------------------------------------ form create meillo@0: procedure Tform_Editor_as.FormCreate(Sender: TObject); meillo@0: begin meillo@0: // set language meillo@0: if form_editor.englisch = true then meillo@0: begin // English meillo@0: form_editor_as.Caption := 'Autorun Settings'; meillo@0: btn_BrowseIcon.Caption := 'Browse'; meillo@0: btn_BrowseCDRoot.Caption := 'Browse'; meillo@0: lbl_1.Caption := 'Autorun-Icon of the CD'; meillo@0: lbl_2.Caption := 'Directory where the Files will be copied to'; meillo@0: lbl_3.Caption := '(This Directory represents the Root-Dir of the CD)'; meillo@0: btn_cancel.Caption := 'Cancel Changes'; meillo@0: btn_apply.Caption := 'Apply Changes'; meillo@0: btn_restore.Caption := 'CDAR-Icon'; meillo@0: lbl_4.Caption := 'Choose the File which will be started by CDAR'; meillo@0: lbl_5.Caption := '(Insert a Path relative to the CD-Root-Dir!)'; meillo@0: end meillo@0: else meillo@0: begin // German meillo@0: form_editor_as.Caption := 'Autorun Optionen'; meillo@0: btn_BrowseIcon.Caption := 'Durchsuchen'; meillo@0: btn_BrowseCDRoot.Caption := 'Durchsuchen'; meillo@0: lbl_1.Caption := 'Autorun-Icon der CD'; meillo@0: lbl_2.Caption := 'Ordner in den die Dateien kopiert werden'; meillo@0: lbl_3.Caption := '(Entspricht dem CD-Grund-Verzeichnis)'; meillo@0: btn_cancel.Caption := 'Abbrechen'; meillo@0: btn_apply.Caption := 'Übernehmen'; meillo@0: btn_restore.Caption := 'CDAR-Icon'; meillo@0: lbl_4.Caption := 'Datei, die von CDAR gestartet werden soll'; meillo@0: lbl_5.Caption := '(Pfad relativ zum CD-Grund-Verzeichnis)'; meillo@0: end; meillo@0: meillo@0: // set standard path in OpenDialog meillo@0: opendialog1.InitialDir := extractfilepath(paramstr(0)); meillo@0: end;//-------------------------------------------------------------------------- meillo@0: //------------------------------------------------------------------------------ form show meillo@0: procedure Tform_Editor_as.FormShow(Sender: TObject); meillo@0: begin meillo@0: // disable drag'n'drop meillo@0: form_editor.draggingstatus := 3; meillo@0: // disable menu meillo@0: form_editor.mnu_Tutorial.enabled := false; meillo@0: form_editor.mnu_WelcomeScreen.Enabled := false; meillo@0: form_editor.mnu_Autorun.Enabled := false; meillo@0: form_editor.mnu_CreateAR.enabled := false; meillo@0: form_editor.mnu_Sprache.enabled := false; meillo@0: meillo@0: // init meillo@0: tbx_IconPath.text := form_Editor.PfadIcon_alt; meillo@0: if form_Editor.PfadIcon_alt = '' then meillo@0: begin meillo@0: img_IconCDAR.show; meillo@0: img_icon.Hide; meillo@0: end meillo@0: else meillo@0: begin meillo@0: img_IconCDAR.hide; meillo@0: img_Icon.Show; meillo@0: img_icon.Picture.LoadFromFile(form_Editor.PfadIcon_alt); meillo@0: end; meillo@0: tbx_CDRootPath.text := form_Editor.CDRoot_alt; meillo@0: tbx_StartsFD.Text := form_Editor.StartsFD_alt; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: //------------------------------------------------------------------------------ form close meillo@0: procedure Tform_Editor_as.FormClose(Sender: TObject; meillo@0: var Action: TCloseAction); meillo@0: begin meillo@0: // enable drag'n'drop meillo@0: form_editor.draggingstatus := 0; meillo@0: // enable menu meillo@0: form_editor.mnu_Tutorial.enabled := true; meillo@0: form_editor.mnu_WelcomeScreen.Enabled := true; meillo@0: form_editor.mnu_Autorun.Enabled := true; meillo@0: form_editor.mnu_CreateAR.enabled := true; meillo@0: form_editor.mnu_Sprache.enabled := true; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: meillo@0: //############################################################################################# meillo@0: meillo@0: //------------------------------------------------------------------------------ browse icon meillo@0: procedure Tform_Editor_as.btn_BrowseIconClick(Sender: TObject); meillo@0: begin meillo@0: if opendialog1.Execute then meillo@0: begin meillo@0: tbx_IconPath.Text := opendialog1.FileName; meillo@0: // load picture meillo@0: img_Icon.Picture.LoadFromFile(tbx_IconPath.text); meillo@0: // show picture meillo@0: img_IconCDAR.hide; meillo@0: img_Icon.Show; meillo@0: end; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: //------------------------------------------------------------------------------ restore icon meillo@0: procedure Tform_Editor_as.btn_restoreClick(Sender: TObject); meillo@0: begin meillo@0: img_IconCDAR.show; meillo@0: img_icon.Hide; meillo@0: tbx_IconPath.Text := ''; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: meillo@0: //------------------------------------------------------------------------------ browse CD-root meillo@0: procedure Tform_Editor_as.btn_BrowseCDRootClick(Sender: TObject); meillo@0: begin meillo@0: application.CreateForm(tform_editor_as_browsedir, form_editor_as_browsedir); meillo@0: form_editor_as_browsedir.show; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: meillo@0: //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ meillo@0: meillo@0: //------------------------------------------------------------------------------ change CD-root meillo@0: procedure Tform_Editor_as.tbx_CDRootPathChange(Sender: TObject); meillo@0: begin meillo@0: // format check meillo@0: Warnings; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: //------------------------------------------------------------------------------ change startsFD meillo@0: procedure Tform_Editor_as.tbx_StartsFDChange(Sender: TObject); meillo@0: begin meillo@0: // format check meillo@0: Warnings; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: meillo@0: //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ meillo@0: meillo@0: //------------------------------------------------------------------------------ apply meillo@0: procedure Tform_Editor_as.btn_applyClick(Sender: TObject); meillo@0: begin meillo@0: form_Editor.PfadIcon_alt := tbx_IconPath.text; meillo@0: meillo@0: if copy(tbx_CDRootPath.text, length(tbx_CDRootpath.text), 1) <> '\' then meillo@0: begin meillo@0: form_Editor.CDRoot_alt := tbx_CDRootPath.Text + '\'; meillo@0: end meillo@0: else meillo@0: begin meillo@0: form_Editor.CDRoot_alt := tbx_CDRootPath.Text; meillo@0: end; meillo@0: meillo@0: form_Editor.StartsFD_alt := tbx_startsFD.text; meillo@0: meillo@0: // close meillo@0: form_editor_as.Close; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: //------------------------------------------------------------------------------ cancel meillo@0: procedure Tform_Editor_as.btn_cancelClick(Sender: TObject); meillo@0: begin meillo@0: // close meillo@0: form_editor_as.Close; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: meillo@0: //############################################################################################# meillo@0: meillo@0: //------------------------------------------------------------------------------ warnings meillo@0: procedure Warnings(); meillo@0: begin meillo@0: with form_Editor_as do meillo@0: begin meillo@0: tbx_Warnings.lines.clear; meillo@0: meillo@0: if copy(tbx_CDRootPath.text, 2, 2) <> ':\' then meillo@0: begin meillo@0: btn_apply.Enabled := false; meillo@0: tbx_Warnings.Show; meillo@0: tbx_Warnings.Lines.Add('2nd Path must be ABSOLUTE'); meillo@0: if pos(':', tbx_StartsFD.text) <> 0 then meillo@0: begin meillo@0: tbx_Warnings.Lines.Add('3rd Path must be RELATIVE'); meillo@0: end; meillo@0: end meillo@0: else meillo@0: begin meillo@0: if pos(':', tbx_StartsFD.text) <> 0 then meillo@0: begin meillo@0: btn_apply.Enabled := false; meillo@0: tbx_Warnings.Show; meillo@0: tbx_Warnings.Lines.Add('3rd Path must be RELATIVE'); meillo@0: end meillo@0: else meillo@0: begin meillo@0: btn_apply.Enabled := true; meillo@0: tbx_Warnings.hide; meillo@0: end; meillo@0: end; meillo@0: tbx_Warnings.Text := copy(tbx_Warnings.text, 1, length(tbx_Warnings.text)-2); meillo@0: end; meillo@0: end;//-------------------------------------------------------------------------- meillo@0: meillo@0: end.//#########################################################################################