view unit_Editor_as_BrowseDir.pas @ 0:ef71164288c1

begin of using hg for cdar
author "Meillo r e t u r n s <meillo@marmaro.de>"
date Sun, 03 Dec 2006 21:54:43 +0100
parents
children
line wrap: on
line source

unit unit_Editor_as_BrowseDir;

interface//####################################################################################

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, FileCtrl;

type
  Tform_Editor_as_BrowseDir = class(TForm)
    dirlbx_1: TDirectoryListBox;
    tbx_Path: TEdit;
    btn_NewDir: TBitBtn;
    btn_Apply: TButton;
    btn_Cancel: TButton;
    dcobx_1: TDriveComboBox;
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure dcobx_1Change(Sender: TObject);
    procedure btn_NewDirClick(Sender: TObject);
    procedure btn_ApplyClick(Sender: TObject);
    procedure dirlbx_1Change(Sender: TObject);
    procedure btn_CancelClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  form_Editor_as_BrowseDir: Tform_Editor_as_BrowseDir;

implementation//###############################################################################
uses unit_Editor_as, unit_Start, unit_Editor;
{$R *.dfm}//###################################################################################

//------------------------------------------------------------------------------ Form Create
procedure Tform_Editor_as_BrowseDir.FormCreate(Sender: TObject);
begin
  // disable autorun settings
    form_editor_as.Enabled := false;

  // set language
    if form_editor.englisch = true then
      begin // English
        form_editor_as_BrowseDir.Caption := 'Chose Directory';
        btn_NewDir.Caption := 'Create new Dir';
        btn_Apply.Caption := 'Apply Changes';
        btn_Cancel.Caption := 'Cancel Changes';
      end
    else
      begin // German
        form_editor_as_BrowseDir.Caption := 'Wähle ein Verzeichnis';
        btn_NewDir.Caption := 'Ordner erstellen';
        btn_Apply.Caption := 'Übernehmen';
        btn_Cancel.Caption := 'Abbrechen';
      end;
end;//--------------------------------------------------------------------------
//------------------------------------------------------------------------------ Form Show
procedure Tform_Editor_as_BrowseDir.FormShow(Sender: TObject);
  var i : integer;
      typ : cardinal;
begin
{
  // dont show floppy and cdrom drives
    for i := 0 to 25 do
      begin
        typ := getdrivetype(pchar(chr(i + 65) + ':\')) ;
        if (typ = Drive_Removable) or (typ = Drive_CDRom) then
          begin
            dcobx_1.Drive := chr(i+65);               // this must be avoided
            dcobx_1.Items.Delete(dcobx_1.ItemIndex);  // how to delete without setting the item??
          end;
      end;
}
  // Init
    dcobx_1.Drive := 'c';
    dirlbx_1.Drive := 'c';
    tbx_path.Text := dirlbx_1.Directory;
end;//--------------------------------------------------------------------------
//------------------------------------------------------------------------------ Form Close
procedure Tform_Editor_as_BrowseDir.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  // activate autorun settings
    form_editor_as.enabled := true;
end;//--------------------------------------------------------------------------

//#############################################################################################

//------------------------------------------------------------------------------ Change Drive
procedure Tform_Editor_as_BrowseDir.dcobx_1Change(Sender: TObject);
begin
  dirlbx_1.Drive := dcobx_1.drive ;
  dirlbx_1.Refresh;
end;//--------------------------------------------------------------------------
//------------------------------------------------------------------------------ Change Dir
procedure Tform_Editor_as_BrowseDir.dirlbx_1Change(Sender: TObject);
begin
  tbx_path.Text := dirlbx_1.Directory;
end;//--------------------------------------------------------------------------

//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//------------------------------------------------------------------------------ New Dir
procedure Tform_Editor_as_BrowseDir.btn_NewDirClick(Sender: TObject);
  var NewDir : string;
begin
  // create new dir
    if form_editor.englisch = true then
      begin // english
        if inputquery('Create new Dir','Enter the name of the new Dir', NewDir) then
          begin
            if not directoryexists(dirlbx_1.directory + '\' + NewDir) then
              begin
                mkdir(dirlbx_1.directory + '\' + NewDir);
              end;
          end;
      end
    else
      begin // German
        if inputquery('Neuen Ordner erstellen','Name des neuen Ordners', NewDir) then
          begin
            if not directoryexists(dirlbx_1.directory + '\' + NewDir) then
              begin
                mkdir(dirlbx_1.directory + '\' + NewDir);
              end;
          end;
      end; 
  // go to new dir and refresh
    dirlbx_1.Directory := dirlbx_1.directory + '\' + NewDir;
    dirlbx_1.Update;
end;//--------------------------------------------------------------------------

//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//------------------------------------------------------------------------------ apply
procedure Tform_Editor_as_BrowseDir.btn_ApplyClick(Sender: TObject);
begin
  form_editor_as.tbx_CDRootPath.Text := tbx_path.text;
  form_editor_as_browsedir.Close;
end;//--------------------------------------------------------------------------
//------------------------------------------------------------------------------ cancel
procedure Tform_Editor_as_BrowseDir.btn_CancelClick(Sender: TObject);
begin
  form_editor_as_browsedir.Close;
end;//--------------------------------------------------------------------------

end.//#########################################################################################