TODO Items
==========

Essentials
----------

- Recreate views after column type change
- Confirm existing password against the DB when changing the current password.

Refactoring
-----------

- Rewrite cast, operator, operatorclass to use pgDatatype

Enhancements / wishes
---------------------

- Allow SQL 'macros' to be programmed in the query tool, with a place holder to
  be substituted with highlighted text - eg. Ctrl-F1 could run SELECT relname 
  FROM pg_class WHERE relname like '$PLACEHOLDER$%' to list matching relations.
- Ability to search a database for objects with a specific name.
- Add infrastructure to allow databases to be renamed. This requires that the 
  SQL be executed in a database other than the current one.
- Attempt to reconnect to the server following a connection failure.
- Allow the user to disconnect individual databases
- detect serial columns from pg_depend, not column default (observe deviating 
  serial name)
- Slony-I failover
- Drop object using replication
- Restrict subscription provider to origin and subscribers
- Extract partially or whole schema/db and edit it with Query Tool
- Track connection usage by property dialogs to prevent closing used
  connections
- Allow Sequence to be attached to existing int4/int8 columns
- Sequence: calculate next value to be expected
- Language update check
- Import from CSV
- Create FK: PK/unique detection
- Global object modification logging
- Keyboard navigation (wx issue)
- EditGrid: allow editing if unique key existent, but no PK/OID
- EditGrid: better editing (color, validation)
- Columns of Views: show properties
- Object display: strip lf/cr/tab from comments
- Updateable View wizard
- Most property dlgs: check for readOnly if no sufficient rights are available
- CREATE TABLE LIKE table
- Operator class property: to implement
- List column defaults on views.
- Find solution for dlgProperty::AppendQuoted if schemaname has a dot
- Allow EditGrid to use comboboxes filled from FK tables.

Major Projects
--------------

- Python scripting engine
- Data Import/Export tool, for file & external database IO. Including data
  transformation.
- Index Checker. A tool to check for missing indexes on FK columns.
