***************************************************************************************************
                                       Map of Classes (54 Files)
***************************************************************************************************

- XPg is conformed by this set of Classes:

     [  Constructor: Short Description. ]

     0* XPg(): Main File. It initializes the GUI.

     1* ConfigFileReader(String fileX,int oper) : It manipulates the settings file "xpg.cfg"

     2* Language(String word) : It loads the idiom to use, and it calls to:
        3- SpanishGlossary() : Spanish Idiom Class
        4- EnglishGlossary() : English Idiom Class

     5* ConnectWin (Language dicc, JTextArea monitor, JFrame father): It captures the connection user 
        data and it call to:
        6- ErrorDialog(JDialog parent, String[] messages, Language glossary) :
           Show Error Messages

     7* DBStructure(String db,boolean open,Vector vecTables,PGConnection link) : 
        Data Structure for a DB, it requires:
        8- Table(String nTable,TableHeader strucTable) : Data Structure for a table, it requires:
           9* TableHeader(Vector columns) : Data Structure for a Table Header; 
              it requires:
              10- FieldReg(String NameField,String NameType,OptionField opc) :
                  Data Structure for a field on a table; it requires:
                  11* OptionField(...) : Data Structure for the options of a field.

     12* ConnectionWatcher(String host, int port, XPg frame) : It verifies the connection state to the DB 
         server.

     13* Structures(JFrame parent, Language glossary) : Folder 1 on the Main Interface, it calls
         to:
           - MyTableModel : Modelo Logico de una JTable (Class included inside anothers files)

     14* Registers(Language glossary,JFrame xframe) : Folder 2 on the Main Interface, it calls to::
         15- InsertData(Table table,JFrame frame) : Insert a record into a table.
         16- Deleter(Table table,JFrame frame) : Delete one or several records into a table. 
         17- UpdateTable(Table table,JFrame frame) : Update one or several records into a table.
             it calls to:           
             18* UpWhere(Table table,JDialog parent) : "Where" Window for UpdateTable
         19- ReportMaker(Vector columnas,Vector datos) : Report Interface, it calls to:
             20- HtmlFilter() : Filter to files with "html" extension 
         21- AdvancedFilter(Table table,JFrame frame) : Querys Advanced Filter
         22- CustomizeFilter(Table table,JFrame frame) : Querys Customize Filter

     23* Querys (JFrame frame,Language glossary,JTextArea monitor) : Folder 3 on the Main 
         Interface, it calls to:
         24- SQLCompiler(File file) : Check and Format a SQL querys file
         25- ExportSeparatorField(Frame aFrame, Language lang) : Choose the data split to import a query.

     26* BoolOption(JFrame p, String button1, String button2, String title, String message):
         Dialog to show one question with two options (yes/no)

     27* CreateDB(Frame aFrame, Language lang, PGConnection currentConn) : Dialog to create a data
         base.

     28* DropDB(Frame aFrame, Language lang, PGConnection currentConn) :
         Dialog to drop a data base.

     29* CreateTable(Frame aFrame) : Dialog to create a data base. It calls to:
         30- Inherit(JDialog jframe, Language language,String as[], Vector ht): Dialog to redefine 
         the group of tables to inherit in the creation of one table.
         31- Constraint(JDialog jframe, Language language, Vector names, Vector descrip): Dialog to define
             the constraints for a table to create.

     32* DropTable(JFrame aFrame,Vector dbnm,Vector VecC) : Dialog to drop a table.

     33* CreateUser(JFrame aFrame, Language lang, PGConnection pg, JTextArea area) : Dialog to 
         create a postgres user.

     34* AlterUser(JFrame jframe, Language language, PGConnection pg_konnection, 
         JTextArea jtextarea) : Dialog to modify the settings for a postgres user.

     35* DropUser(JFrame aFrame, Language lang, PGConnection pg, JTextArea area) : Dialog to drop
         a postgres user.

     36* CreateGroup(JFrame jframe, Language language, PGConnection pg_konnection, 
         JTextArea jtextarea) : Dialog to create a group of users.

     37* AlterGroup(JFrame aFrame, Language lang,PGConnection pg, JTextArea area) : Dialog to modify
         the values of a group.

     38* DropGroup(JFrame jframe, Language language, PGConnection pg_konnection, 
         JTextArea jtextarea) : Dialog to drop a group.

     39* PGConnection(ConRegister User_Entry, Language idiom) : Interface between the JDBC Driver y 
         the XPg application.

     40* ConRegister(String Host, String DB, String User,int numPort,String sel): Data Structure for
         one connection.

     41* DumpTable(JFrame aFrame,Vector dbnames,Hashtable ListDataBases) : Dialog to dump one or
         several tables of a data base.

     42* ChooseIdiomButton(XPg aFrame, Language lang) : Dialog to choose the default idiom value of 
         the application.

     43* ChooseIdiom(Frame frame) : Initial Window to choose the idiom for XPg.

     44* UpdateDBTree(XPg app,Vector DBs) : Update silently the data base list for the user.

     45* BuildConfigFile(array,language) : Configure the file xpg.cfg

     46* ReportDesigner(JFrame aframe,Vector ColumNames,Vector Datos, Language lang) : Dialog to define
         the fields that conform one report. It calls to:
         47- ReportAppearance(JDialog extern, JFrame aframe, Language lang) : Dialog to define the 
         Report Appearance to build, it calls to::
             48- HtmlProperties(int type) : Data Structure which contains the settings asociated to 
             the parts of one report.

     49* ReportFooter(JDialog dialog,JFrame parent) : Dialog to define the footer of one report.

     50* TablesGrant(JFrame aFrame,Language lang,PGConnection pg, JTextArea area,String[] tb) : Dialogo 
         to assign or revoke permissions to one or several tables.

     51* ReportHeader(JDialog diag,JFrame parent, Language lang) : Dialog to define the appearance of 
         the header of one report.
     
     52* InsertTableField(JFrame frame,String TName,Language lang) : Dialog to include an aditional field 
         into the structure of one table.

     53* PropertiesTable(JFrame aFrame,PGConnection kon,String Ctable,Language lang,JTextArea LW):
         Component with several folders with information about the properties of one tabla.

     54* StyleSelector(JDialog dialog,Language leng) : Dialog to choose a predefined appearance to 
         one report.

     55* DumpDb(JFrame aFrame,String dbname,PGConnection dbConn,Language lang) : Dialog to dump 
         all the tables of a data base.

***************************************************************************************************
                                              THE END ;)
***************************************************************************************************
