aboutsummaryrefslogtreecommitdiffstats
path: root/Source/TablesList.m
Commit message (Collapse)AuthorAgeFilesLines
* - Add a new selectDatabase:item: method to TableDocument, to centralise ↵rowanbeentje2010-03-241-9/+12
| | | | | | | | | | code for selecting databases and tables. Clean up database selection to use this new method, and avoid reloads when re-selecting the same database. - Convert the history controller to use this new call. This fixes history behaviour when a table list filter was active. - Convert the (hidden) navigator to use this new call. This fixes timing issues. - Make some thread safety tweaks to TablesList. - Change TablesList selectTableOrViewWithName: to selectItemWithName:, including procs etc.
* • TablesListBibiko2010-03-231-1/+2
| | | | | | - method selectTableOrViewWithName: scrolls to selected item • Navigator - double-click at db/table/view/field selects the chosen schema path in active connection window if chosen schema path and active connection window have the same connection ID
* • NavigatorBibiko2010-03-211-0/+15
| | | | | | | | | | - added 'sync' mode - the navigator follows the active window db/table selection if navigator has not multiple selected items - added drag support of selected items -- as comma separated and backtick quoted string for external apps -- as array of schema paths for SP • CMTextView - added drop support for selected items coming from the Navigator - insert them as comma list relative to current selected db/table
* - Make a number of changes to attempt to improve disconnection/quit ↵rowanbeentje2010-03-161-4/+4
| | | | | | | | | crashes: prevent multiple disconnects, add more checks, cancel current queries, and add a tiny delay to allow mysql cleanup. - Alter MCPStreamingResult to no longer return a retained instance, setting up correct result disposal on autorelease but changing callers to retain as soon as they receive. - Review and change a number of local variables shadowing/shielding other local or global variables.
* Fix a couple more potential issues found during static analysis.stuconnolly2010-03-151-3/+4
|
* Fix some potential issues found during static analysis.stuconnolly2010-03-151-1/+1
|
* Fix the enabling/disabling of the 'Table' menu items as a result of adding ↵stuconnolly2010-03-101-50/+52
| | | | the 'Filter Tables...' item. Note, that should ideally be moved to the menu item validation method to prevent future problems.
* • improved tooltip behaviour of SPNarrowDownCompletion's tableViewBibiko2010-03-091-0/+8
| | | | • added "Filter Tables…" ^⌥⌘F" to main menu > Table which sets the focus to TablesList's search field if visible
* Add a new 'Filter Content...' menu item to the 'Table' menu that switches to ↵stuconnolly2010-03-081-41/+41
| | | | the content view and places the focus on the filter field.
* • REPAIR, OPTIMIZE, ANALYZE, FLUSH, CHECKSUM now can be applied to more ↵Bibiko2010-02-261-0/+17
| | | | | | | | than one selected item in the TablesList; if no error alert OK, if not or for CHECKSUM list the output in a table view - while sheet is open showing the accessory table user can press ⌘C for copying it - added missing NSLocalizeStrings • fixed a tiny issue for $SP_SELECTED_TABLES
* • Query Favorites:Bibiko2010-02-251-0/+34
| | | | | | | | - added snippet variable $SP_SELECTED_TABLES which inserts `table1`,`table2`, etc. (ONLY tables) • improved "Check Table" - now one can select more than one table to execute "CHECK TABLE table1,table2,… ; if all tables passed successfully alert OK, if not show the result as accessory table in the sheet note: OPTIMIZE, REPAIR, FLUSH, CHECKSUM, ANALYZE follow
* • Reset AUTO_INCREMENT in Table Info Pane uses inline entering of the new ↵Bibiko2010-02-231-0/+3
| | | | | | | | | | value (no sheet) • "Delete all records" confirmation sheet shows a checkbox "Reset AUTO_INCREMENT after deletion" if PRI key is given for that table • minimized table data querying for auto_inc • optimized auto_inc change notification • if user changes tabVIew to Table Info Pane update data in beforehand • TRUNCATE query updates auto_inc value as well in TABLE INFORMATION
* Fix a number of memory leaks, and over-releases, as both a result of manual ↵rowanbeentje2010-02-101-4/+5
| | | | inspection of leaks and Clang static analysis.
* - Save and restore content table sorting, filter criteria, scroll position ↵rowanbeentje2010-02-091-0/+3
| | | | | | | and selection when switching tables and databases. This implements Issue #469. - Fix history bug causing column sorts to always be restored ascending
* • fixed endless loop if user selects a table whose name contains chars ↵Bibiko2010-02-051-1/+4
| | | | | | which are not support by the current set encoding • added DataMigrationDialog.xib to Xcode project
* - Rework SPSQLParser, extending DELIMITER support into all the original ↵rowanbeentje2010-02-051-0/+1
| | | | | | | | | | | functions (off by default). Remove the forked "...Sql..." functions, as they're now duplicates, and switch CustomQuery to using the original methods. - TableDump imports can now process DELIMITERs correctly as a result. - Alter the TableDump display of tables etc to use TablesList as the source of information, and used cached lists where appropriate for a small speedup. Also means we gain consistent sorting. - Display procedures and functions in the toggleable list when exporting as SQL - Tweak the procedure and function export to only export selected items, and also to respect the "export drop syntax" and "export create syntax" checkboxes - Fix a crash when removing items from the TablesList resulted in an errorneous selection by deselecting all rows before deleting (and preemptively applying the same fix to TableContent)
* * renaming a table/view/proc/func now doesn't open a sheet anymorejakob2010-01-281-117/+113
| | | | | * table name checks now correctly consider only functions when working with functions * when an empty table name is entered, the change is ignored (like in finder)
* * Fixed #484 (renaming tables where only the case changed)jakob2010-01-281-214/+184
| | | | * refactored the table/proc renaming code a bit
* Improve Disconnection on connection loss:rowanbeentje2010-01-241-1/+2
| | | | | | | | | - Set error strings on MCPConnection on user disconnect to allow existing error chcking to catch the state - Improve close behaviour from threads - Improve window close behaviour and appearance - Add new checks for disconnection in one or two crash-prone locations This addresses Issue #531, one of Issue #532, one of Issue #539, and probable reported crashes on Issue #541.
* • added call to update the completion list to neuralgic placesBibiko2010-01-211-1/+25
| | | | - next steps to minimize the traffic - ie manipulating the dict directly without querying - follows
* 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.