aboutsummaryrefslogtreecommitdiffstats
path: root/Source/TablesList.m
Commit message (Collapse)AuthorAgeFilesLines
* Address Issue #546 (format string bugs):rowanbeentje2010-01-201-17/+14
| | | | | | - Fix incorrect uses of [NSString stringWithFormat:] with preconstructed strings and no arguments in SPUserManager - To fix display issues, replace NSBeginAlertSheet (which includes automatic sprintf expansion of the message) with a safely-escaped SPBeginAlertSheet in many files
* • fixed several sheetDidEnd selectors to close a NSAlert or NSWindow ↵Bibiko2010-01-131-3/+20
| | | | | | | properly to avoid overlapping sheets • F5 completion - if a table is selected and no further parsing info is given show that table and its fields at the top of the suggestions
* • applied new detachNewThreadSelector:@selector(queryDbStructure) call to ↵Bibiko2010-01-121-1/+1
| | | | TablesList's updateTables method
* • further developments for the F5 completionBibiko2010-01-111-0/+5
| | | | Note: not yet finished!
* • further preparations to F5 completionBibiko2010-01-111-1/+9
| | | | Note: not yet active - only querying the data in background will be performed for testing
* • fixed showing the table list's search bar view by setting its initial ↵Bibiko2010-01-111-1/+3
| | | | splitview height to 1 instead of 0 to ensure that a next connection window which has more than 20 tables is showing the search bar as well
* • first preparations to improve the Custom Query database names/table ↵Bibiko2010-01-101-1/+4
| | | | | | | | | names/field names + type and encoding completion - after connecting and updating the table list a background task executed on a different connection will be performed to query the information_schema db (MySQL >= 5 only so far) - the MCPConnection object holds a NSDictionary with all structural data Note: not yet active
* - Upgrade Sequel Pro to be compiled as a 3-way PPC/i386/x86_64 binary for ↵rowanbeentje2010-01-091-100/+100
| | | | | | | release builds, including a large number of 64bit compatibility upgrades and tweaks - Upgrade RegexKitLite to 3.3
* • avoid querying the server for `information_schema` table for MySQL ↵Bibiko2010-01-061-27/+28
| | | | version < 5 - this speeds up SP esp. for slow connections
* - Ensure all results for server variable requests are returned as strings, ↵rowanbeentje2010-01-031-16/+11
| | | | | | | to avoid binary-mode result issues with certain versions of MySQL (including 4.1.14). This should address Issue #509. - TableDocument now requests the server version string from MCPConnection, aiding caching
* - Work through static analysis of the source, fixing a number of small ↵rowanbeentje2009-12-141-9/+3
| | | | memory leaks and fixing a couple of over-releases
* - Improve TablesList item selection by splitting out interface updates to a ↵rowanbeentje2009-12-081-96/+125
| | | | method to be called in the main thread; should improve stability
* - Improve upon r1560 by removing a couple of race conditions triggered on ↵rowanbeentje2009-11-221-13/+16
| | | | | | | encoding changes, status requests, or blob/text lookups on slower connections - Restore first responder in TableContent loads on the main thread to fix a potential crasher
* - Relocate the table changed notification, allowing table info pane to ↵rowanbeentje2009-11-211-3/+9
| | | | | | | update early in the change process, but ensure the change notification occurs on the main thread for stability. Added NSNotificationAdditions from the Colloquy project for this. - Change the design of the progress indicator layer, and tweak task progress for improved feedback and less flickering by correctly updating interface as appropriate, and delaying status changes for a short time. This partially addresses Issue #455.
* - Fix table list filter show/hide on database change by calling the toggle ↵rowanbeentje2009-11-181-2/+2
| | | | on the main thread
* Change the placeholder value of a few search fields to simply 'Filter' to ↵stuconnolly2009-11-171-3/+1
| | | | make them look less cramped.
* - Make some thread safety improvements to try to address Issue #460rowanbeentje2009-11-161-4/+4
|
* - Rewrite field mapping table selection logic - simplified logic, no longer ↵rowanbeentje2009-11-111-4/+0
| | | | | | | | | | tied to table list selection. Much faster selection of table to import into if, eg, content view is selected. Fixes weird crashes. - No longer display views as import targets - When one import has been cancelled, still allow new imports - Improve error reporting - No longer re-sort table/view/etc names returned by TablesList as preferred order is being used for display and the default compare: reverts this
* - Fix an issue when switching databases - allow the table selection to be ↵rowanbeentje2009-11-101-0/+5
| | | | | | | cleared/reset as necessary - Move the task progress layer to a child window, which can then be faded in - smooths the visual appearance and fixes drawing artifacts
* Set keyboard shortcut for Delete button in alert dialogs to command D.avenjamin2009-11-091-3/+9
| | | | Set keyboard shortcut for Truncate button in alert dialog to command T
* Don't run the add new index sheet modally, thus blocking the main thread. ↵stuconnolly2009-11-091-1/+1
| | | | Part of issue #357. Also some refactoring.
* - Support nested task levels to allow tasks to overlaprowanbeentje2009-11-081-6/+30
| | | | | | | - Thread history loading, thus using the nested task elvels and fixing history interaction in recent builds - Thread initial database loads - Improve progress indicator slightly
* - Alter query start/stop notifications to apply to only the originating ↵rowanbeentje2009-11-051-2/+2
| | | | window, regardless of key state, by passing in and looking for the table document instance
* - Use threaded loads when switching view tabs for unloaded tablesrowanbeentje2009-11-041-1/+12
|
* - Add task support to all the main interface viewsrowanbeentje2009-11-041-215/+238
| | | | | | | | - Improve task support on previously supported views - Use a threaded task load for all initial table loads - Support threaded task loads for table content loads, reloads, sorts, and filters - Improve upon previous threaded task loads by minimising view updates and supporting updates of the existing data arrays where valid
* - When performing threaded data loads, no longer disable the tables and ↵rowanbeentje2009-10-271-2/+16
| | | | instead prevent selection/editing/sorting in code; this prevents the tableviews from going grey during the load and minimises flicker and loss of focussed elements.
* - Set up TableSource to respond to task notifications to prepare for ↵rowanbeentje2009-10-271-0/+6
| | | | | | | threaded queries - Alter task notifications to pass the TableDocument as the notification object so that only the current window responds to the notification, allowing other windows to be fully used while a window is performing a task
* Don't run the add new database sheet modally, thus blocking the main thread. ↵stuconnolly2009-10-261-1/+0
| | | | Part of issue #357.
* Interface labeling.stuconnolly2009-10-211-1/+1
|
* Initial work on threaded task, with an implementation of Table Content view ↵rowanbeentje2009-10-201-0/+36
| | | | | | | | | data loading: - Removal of AMIndeterminateProgressIndicatorCell, and addition of a custom fork of YRKSpinningProgressIndicator which fixes bugs, adds threaded drawing, and adds a determinate mode. - Addition of a task system within TableDocument, triggering display of a large central progress indicator and stopping the window from being interacted with in any way that would cause a query while the task is running. - Add threaded TableContent content fetching, including use of the new task system and determinate progress bar; make fixes to improve threading stability and interaction.
* Replace the use of hard coded preference keys with constants to prevent ↵stuconnolly2009-10-171-3/+4
| | | | issues such as the one fixed in revision 1419. All future preference usage should be done so using these constants.
* When duplicating table, but not its contents strip out any occurrence of a ↵stuconnolly2009-10-021-1/+8
| | | | present AUTO_INCREMENT value. Fixes issue #391.
* When duplicating a table strip out the names of any occurrences of InnoDB ↵stuconnolly2009-10-021-0/+7
| | | | foreign key references as the names must be unique. MySQL will create the new names based on the new table name. Fixes issue #398.
* • first implementation of a Content Filter EditorBibiko2009-10-011-5/+5
| | | | | | | | | | | | | | - user-defined content filter can be saved globally (Prefs) or in SPF files - BETA - further tests are needed due to complexity - SPQueryController now handles the local user-defined content filters - tooltips are now generated automatically if not defined explicitly (incl. if $BINARY placeholder was used) • if user added local query favorites or content filters to an Untitled document and s/he wants to close it the standard sheet will be displayed (Don't Save - Cancel - Save) - due to that changed old [TableDocument displayName] to 'displaySPName' to be conform with Cocoa • changed behavior while importing query favorites - now they will append at the list (not inserted after selected row - makes more sense) • introduced to history filter dict the key 'menuLabel' which will be set to [TableContent tableFilterString] for displaying the history menu title and simplified the SPHistoryController logic for that • minor code changes
* - When adding tables, use standard selection update methods rather than ↵rowanbeentje2009-09-281-30/+2
| | | | custom (and partial) code; fixes issues of showing old columns/data from the previous table when creating new tables.
* • fixed issue if after displaying a sheet for renaming/duplicating/adding ↵Bibiko2009-09-241-11/+47
| | | | | | | | | | a table an error sheet will be ordered out (order out the first sheet explicitly in beforehand) - this solves issue 418 • improved table name check for renaming/duplicating/adding a table - it checks for trailing white spaces since 'foo ' is not valid - it checks for length - it checks whether the entered table name doesn't occur as table/view name in the current database (case-insensitively and only while entering the name in sheets)
* • fixed (hopefully) : While adding all procedures and functions do check ↵Bibiko2009-09-031-1/+3
| | | | for mysql errors - if information_schema is not accessible for some reasons omit adding procedures and functions silently
* - Fix exception/hang when an error occurs when deleting a table or tablesrowanbeentje2009-09-031-20/+36
| | | | | | - Improve error messages encountered when deleting multiple tables, asking whether to stop or continue; also now shows all errors, not just the last (if it showed any!) - Fix various exceptions caused by the table list attempting to redraw while the underlying data is being changed
* • simplified and unified the issue to set the title of a tableWindowBibiko2009-09-021-13/+10
| | | | | | | | | | | | | | - everything will be configured in [TableDocument displayName] - to update the title call [TableDocument setTitle:[TableDocument displayName]] - this removes dozens of lines • first steps to support more the document-based approach ( a document is nothing else than a connection with view properties and preferences ) - renamed/added/changed in Main Menu items into "New", "Open", "Save", and "Save As" - if user opened a spf file -> fileURL will be set - "Save" will save the current connection/view data according to the "Save As" setting - ie if one saved a doc with do not "Remember window state" - "Save" won't save the window state; to enable this hit "Save As" [this works for encrypted file data as well] - if the current doc was opened from file and the user closes it or quits the entire app all connection/document-based preferences (up to now query favs and history) will be updated silently [not yet implemented fully in CustomQuery] [works for encrypted file as well] • delete saveSPFAccessory view from DBView since it was outsourced • fixed some issues for the NSSecureTextField in the Save accessory panel (but still a warning appears)
* • further improvements to restore a SP session from spf fileBibiko2009-08-231-6/+6
|
* - The add, rename and copy table sheets should not block the main thread ↵stuconnolly2009-08-181-463/+504
| | | | | | | | (part of issue #357). - Improve the consistency of destructive confirmation dialogs by making the remove field and index dialogs default button 'Cancel' with a key equivalent of return. - Disable the remove field button when the currently selected table only has one field, removing the need for the extra check (and subsequent dialog) when the user attempts to remove a field.
* Fix some MainMenu references by index.mltownsend2009-08-111-1/+1
|
* - Fix some small memory leaks when changing tablesrowanbeentje2009-08-041-0/+3
| | | | | - Fix the history navigation to correctly switch across databases without invalid history states
* • button tooltip for "Show / Hide Table Information" toggles according to ↵Bibiko2009-08-021-0/+4
| | | | | | | its status • after editing a field in Custom Query table scroll to last selected row after data refreshing - (TODO: should be improved in near future)
* - Fix an errant NSLog in TableSourcerowanbeentje2009-08-011-0/+3
| | | | | | - Improve and make consistent state saving in TableContent; now saves filters and scroll position mor reliably on refresh/edit, and supports remembering and restoring which rows were selected - Significantly improve table history - only create entries for tables switches or filters, only remember 50 items, and save view/filters/scroll position/selections in table content view
* - Add an initial barebones version of the history controller, with a basic ↵rowanbeentje2009-07-301-0/+2
| | | | toolbar item to navigate backwards and forwards. TBC!
* - Added Splitview delegate method to hide the drag handle on the Table Info ↵avenjamin2009-07-291-0/+19
| | | | pane and Filter view.
* - Fix "endSheet:returnCode: requires a non-nil sheet" log lines during importsrowanbeentje2009-07-281-0/+6
| | | | | | - Enable threaded animation for import/export progress bars as it has minimal overhead and looks nicer - Fix exceptions caused by tablesList drawing during imports
* - Clear selection if user is filtering table list with multiple tables ↵rowanbeentje2009-07-281-4/+7
| | | | selected, to avoid issues
* Improve TablesList significantly:rowanbeentje2009-07-281-365/+652
| | | | | | | | - If there are twenty or more tables, show a table quicksearch/filter at the top of the list, and update the rest of the code to match. This addresses issue #178. - Select tables and views alphabetically by user's current locale (instead of default MySQL "A B C a b c") - When adding or duplicating tables, insert them at the correct point - Fix a number of minor display bugs caused by incorrect interaction with the tables list caches