Filemanager

Okno manažeru se skládá ze dvou částí - vpravo je komponenta listview, vlevo treeview. Listview zobrazuje soubory a adresáře v seznamu spolu s jejich základními atributy, treeview ukazuje strom adresářů. Tyto dvě komponenty jsou spolu propojeny. Kliknete-li na adresář v treeview, jeho obsah se ukáže v listview. Naopak procházením adresářů v listview, se odrazí v treeview. Dále se v okně nachází okénko editace Path, ze kterého můžeme spouštět programy přímo nebo s parametry. V dolní části okna je status bar, který zobrazuje informace o aktuálním adresáři a o vybraných souborech.

V horní části se nachází menu, které obsahuje různé užitečné funkce na vytváření souborů/adresářů, kopírování, přesouvání, mazaní a prohlížení souborů či adresářů. Můžete zde i zvolit typy zobrazovaných souborů či jejich masku nebo zjistit volné a celkové místo na disku (kvůli použitým starším funkcím jen do 2 GB). Většinu z těchto akcí lze také spustit klávesovými zkratkami nebo z popup menu, které se vyvolá po kliknutí pravým tlačítkem myši.

  • Strom v Treeview je uložen ve vlastnosti Items, ve vlastnosti Images je uložen odkaz na seznam zobrazovaných obrázků (ikon).
  • Soubory v Listview jsou uloženy ve vlastnosti Items, která ukazuje na seznam.
  • Při startu se nainicializují proměnné, vytvoří se seznam ikon pro Treeview a vytvoří se sloupce v Listview
  • Po Treeview a Listview se můžeme pohybovat pomocí šipek a Entru nebo pomocí myši. Obě komponenty spolu komunikují pomocí pomocí procedur OpenPath (pro Treeview) a SetDirectory (pro Listview). Obě také využívají společné podprogramy pro práci se soubory (kopírování, mazání apod.)

Ovládání programu je velice intuitivní, takže snad nemá cenu ho moc rozepisovat. Jak již bylo řečeno v komponentách a menu se pohybujete pomocí myši nebo kurzorových šipek, ENTER otevírá adresáře nebo spouští soubory. Šipky vlevo a vpravo v Treeview expandují/skryjí větev, Backspace v Listview je posun o patro výš. Lze využít i několika klávesových zkratek pro práci se soubory a adresáři. Tyto akce jsou též přístupné přes menu v horní části, nebo přes popup menu, vyvolávané kliknutím pravým tlačítkem myši.

Seznam použitých procedur, funkcí a proměnných

Proměnné:

  • FSelectedPath: Zobrazovaná cesta v treeview.
  • TreeViewPath: Cesta zjištěná funkcí MakePath (GetPathFromNode).
  • FDirectory: Zobrazovaná cesta v listview.
  • FMask: Maska zobrazovaných souborů.
  • FSortColumn: Index řadícího sloupce listview
  • FSortForward: Radit popředu?

Program také používá unitu Show, kde je formulář pro prohlížení souborů.

Popis funkci a procedur:

  • AddDrive: Používá funkci GetDriveTypeStr, která vrací řetězec s typem připojeného zařízení. AddDrive zaplní ListView údaji o discích.
  • AddFiles: Používá funkci AttrStr, která vrací řetězec s atributy testovaného souboru. AddFiles zaplní ListView obsahem aktuálního adresáře. Maska a cesta k zobrazovaným souborům je v proměnné FileMask. V proměnné attr je uložen typ(atributy) zobrazovaných souborů.
  • AddSlash: Přidá za řetězec lomítko, pokud tam není.
  • AddSubs: Používá funkce IsDirectory, která testuje, je-li daná položka adresář, a HasSubs, která testuje, má-li adresář podadresáře. AddSubs rozvíjí daný Node v TreeView.
  • ColumnClick: Zpracovává událost kliknutí na jméno sloupečku u ListView - řazení
  • CompareFiles: Obslužná rutina pro řazení souborů v ListView
  • WMDeviceChange: Zpracovává zprávu o výměně CD
  • ConvertSize: Převádí velikost souboru na kilobyty.
  • CopyFiles: Rekurzivní funkce na kopírovaní adresářů a souborů.
  • CreateDriveColumns: Vytváří sloupce v ListView pro disky.
  • CreateFileColumns: Vytváří sloupce v ListView pro soubory a adresáře.
  • DeleteItem: Maže soubory a adresáře označené v ListView.
  • DeleteNode: Maže soubory a adresáře označené v TreeView.
  • DelSlash: Maže lomítko z řetězce, pokud tam je.
  • EditKeyPress: Reaguje na odentrování v okně Edit - spustí soubor.
  • ExecuteFile: Provede danou akci se souborem - otevře ho.
  • FileDirExist: Testuje, zda existuje adresář, nebo soubor daného jména.
  • FormCreate: Provádí se při spuštění programu a inicializuje proměnné.
  • GetNormalIcon: Zjistí normální ikonu
  • GetPathFromNode: Vrací plnou cestu k danému Nodu v TreeView.
  • GetSelectedIcon: Zjistí ikonu při označení
  • Jenproten1Click: Zobrazuje/skrývá soubory jen pro čtení.
  • Kapacitadisku1Click: Vypočítá kapacitu disku do 2 GB.
  • Kopruj1Click: Kopíruje označené soubory v ListView do zadaného adresáře.
  • LevelUp: Přejde v ListView o jednu úroveň nahoru, pokud lze.
  • ListViewClick: Reaguje na stisknuti tlačítka v oblasti ListView.
  • ListViewDblClick: Reaguje na dvojklik v oblasti ListView. Spouští soubory, otevírá adresáře.
  • ListViewEdited: Přejmenování souboru/adresářů kliknutím (nefunguje).
  • ListViewKeyDown: Reaguje na stisknuti klávesy v oblasti ListView. Enter spustí soubory, otevírá adresáře, Backspace volá LevelUp.
  • ListViewMouseDown: Popup menu na pravé tlačítko.
  • LoadDrives: Přidává zařízení do stromové struktury TreeView.
  • LoadRoot: Vytváříi strom TreeView.
  • MakePath: Pomoci rekurzivní MakeSubPath naplní TreeViewPath plnou cestou k danému Nodu.
  • Maska1Click: Zadání masky zobrazovaných souboru.
  • Najdi1Click: Spouští systémové hledání souboru nebo složky.
  • OpenPath: Otvírá daný adresář v TreeView.
  • Opus1Click: Dialog při ukončování programu.
  • Pesu1Click: Přesouvá/Přejmenovává označené soubory v ListView.
  • Prohldni1Click: Rychle prohlížení souboru.
  • ReLoad: Znovu načítá strukturu stromu v TreeView.
  • Select1Click: Rutina pro označování souboru pomoci uživatelem zadané masky.
  • SetDirectory: Otevírá daný adresář v ListView.
  • Skryt1Click: Zobrazuje/skrývá skryté soubory.
  • Sloka1Click: Vytváření adresáře v ListView nebo TreeView.
  • Sma1Click: Mazaní souboru/adresářů v ListView nebo TreeView.
  • Soubor1Click: Otevírá Notepad (Poznámkový blok) s prázdným souborem.
  • Spotejvelikost1Click: Projde všechny soubory a podadresáře a sečte jejich velikosti.
  • Systmov1Click: Zobrazuje/skrývá systémové soubory.
  • TreeViewEdited: Rychle přejmenování adresářů kliknutím.
  • TreeViewExpanding: Reaguje na požadavek rozvíjení stromové struktury TreeView
  • TreeViewKeyDown: Reaguje na stisknuti Entru v oblasti TreeView.
  • TreeViewMouseDown: Otvírá označený adresář z TreeView v ListView.
  • UpdateFileList: Obnovuje obsah ListView.
  • Volnmsto1Click: Zjisti volné místo na disku do 2 GB.
  • Vybervechny1Click: Označí všechny soubory a adresáře.

Ke stažení

Filemanager
Spustitelná verze.
Source
Zdrojové kódy v Delphi