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
- Rewrite the grid cell text editor to use wxStyledTextCtrl rather than a
  wxTextCtrl. This avoids the need to use the RichEdit control on Windows, thus
  eliminating problems with hyperlink formatting creeping into pasted data, as
  well as the extra line ends that get appended to RTF text.

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

- Add an option (or change the UI to something more usable with lots of types)
  to include table types in the data type combo boxes where appropriate.
- 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
- Allow Sequence to be attached to existing int4/int8 columns
- Sequence: calculate next value to be expected
- Create FK: PK/unique detection
- Global object modification logging
- EditGrid: allow editing if unique key existent, but no PK/OID
- EditGrid: better editing (color, validation)
- Updateable View wizard
- Most property dlgs: check for readOnly if no sufficient rights are available
- Find solution for dlgProperty::AppendQuoted if schemaname has a dot
- Allow EditGrid to use comboboxes filled from FK tables.
- Add an option to the Query Tool to exclusively lock files whilst they're 
  being edited.

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.
