Delete Duplicate File GUI

From OpenCircuits
Jump to navigation Jump to search

Overview[edit]

The GUI or graphical user interface is the key to using the Delete Duplicates Application. Root documentation at: Python Delete Duplicates This page is the documentation for the GUI.

Screen Shot[edit]

This is what it looks like, details on each part below. Still working on it. Note that this screen shot was taken during a debugging session and has some artifacts that will soon disappear, then a new screen shot will be placed here.


What Does What[edit]

General[edit]

Before using there are some concepts/vocabulary that need to be established. You are intend to select some part of your file system where you want to keep all the files, that is not delete any duplicates. And there is some other part of your file system where you suspect duplicate files and want to delete the duplicates. Currently a file is considered a duplicate if it has the same name, later we will make a check on the file size as well.

The part of the file system you want to keep is called the keeps, and the part with possible duplicates is called the dups, so far suspected by not convicted.

Each part of the file system the keeps and dups are specified by a list of directories you set in the parameter file, parameters.py ( see reference at:..... ).

Additionally you may specify how down from a starting directory you want to search and what filter you want to apply to the files.

The application then has 4 phases, 0 to 3.

0 -- show you the setup of the application. 1 -- build and empty database for indexing files 2 -- scan and index the dups or possible duplicate files 3 -- scan and process the dups deleting ( or otherwise processing the files )

The Controls[edit]

Control is mostly through buttons. Outside of the GUI there is also a parameter file which controls start up, your preferred system editor, and many other setting. This application relys more on the parameter file than many of my other applications with settings for:

  • A list of "keep file" directories'
  • A list of "dup file" or possible duplicate file directories.
  • Settings for directory depth.
  • Construction of a file filter.
  • Setting of delete mode.

All of the bullited items above can be seen with the <0-Show Setup> button.

Working from top to bottom:

At the Top[edit]

  • <Window title> Program name and some additional info including version, mode, and the name of any "extra" parameter file ( see Smart Terminal Parameter Examples ).
  • <ID Color Band >The red band under the title is an optional component, its height and color is set in the parameter file. It is normally useful only if you are running 2 similar looking applications and want a quick way to tell them apart.


Top Button Row[edit]

  • <Edit Log> opens an editor on the system ( needs to be configured in parameter file self.ex_editor = <name of executable or link> ) to view the python logging file for the app.
  • <Edit Parms > opens an editor on the system to edit the parameters.py file. See <Edit Log>.
  • <Restart> Restarts the application ( usually fast ) using new values ( if any ) in the parameter file(s).
  • <Help> Will open some sort of help file, text, pdf, or url, depending on configuration in parameter file.
  • <About> More or less standard help box.
  • <Test> May not be present, for debugging, not generally useful or predictable, you would need to look through the code to see what it might be doing, press at your own risk.

Second Button Row[edit]

Phases of the Delete Duplicate Operations:

  • 0 Show Setup -- Show the most important parameters for delting the duplicates -- all in the parameter file
  • 1 Define DB -- Define the database used to index the dups.
  • 2 Explore Dups -- Scan through the dups ( possible duplicate file directories ) and index them for later processing.
  • 3 Explore Keeps -- Scan through the keeps ( keep file directories ) and check against the dups ( ) deleting ( or otherwise processing ) them if they test as duplicates.

The above buttons will become inactive during the operations. The next set of buttons are always active: