aboutsummaryrefslogtreecommitdiffstats
path: root/Source/TableDocument.m
Commit message (Collapse)AuthorAgeFilesLines
* Merge in a number of fixes from trunk (r2065, r2066, r2067, r2068, r2069, ↵rowanbeentje2010-04-241-63/+66
| | | | r2074, r2075, r2076, r2078, r2079, r2081, r2083, r2084, r2085, r2089, r2090, r2100, r2110, r2117, r2118, r2119, r2120, r2128, r2132, r2133, r2134, r2137, r2138, r2139, r2140, r2142, r2150, r2152, r2153, r2154, r2155, r2158, and r2160)
* • ensure that the global schema structure data for completion are updated ↵Bibiko2010-03-311-1/+1
| | | | even if SP is not active
* • if document window will close sent a ↵Bibiko2010-03-311-0/+11
| | | | | | 'cancelPreviousPerformRequestsWithTarget' to the custom query editor to stop auto-completion and auto-help timer to avoid crashes after closing • improved some minor stuff for completion's re-invocation
* • querying for db structure is queued for the same connection to avoid ↵Bibiko2010-03-311-3/+2
| | | | | | | | | | | 'overlapping' access to global variables • after querying db structure write back data on main thread • completion list displays animated sync images if connection is just querying db structure data • fixed some minor issue for completion list • make sure that if last window of a connection is closed all relevant data will be removed from global variables Note: please test!
* - Improve error checking for various actions, particularly permissions ↵rowanbeentje2010-03-311-0/+22
| | | | errors (NULL data returned) for views and stored procedures. This should fix http://log.sequelpro.com/view/27 , http://log.sequelpro.com/view/57 , and the last of http://log.sequelpro.com/view/53
* • fixed several issue for completion listsBibiko2010-03-291-0/+10
| | | | | | | • improved gathering and caching of structure data coming from connection windows with the same connection • made the structure querying more stable against threading issues • moved getUniqueDbIdentifierFor from MCPConnection to SPNavigatorController to be up-to-date in all connection windows • improved detection if db structure querying should be performed or not (not yet finished)
* Add the ability to sort the connection favorites table view in the ↵stuconnolly2010-03-271-0/+6
| | | | preferences. Sort options are by name, host or type as well as the option to be sorted in reverse order. This implements issue #490.
* - When switching tables, correctly catch disconnections and suppress error ↵rowanbeentje2010-03-271-8/+0
| | | | | | | | | dialogs and related crashes - Move connection error sheet close method to the connection delegate - Tweak the information_schema db schema building query to be much faster on busy servers by amending the VIEW part - Set the connection lock to nil after releasing, coping with connection unlocks deferred on the main thread until after dealloc
* • navigatorBibiko2010-03-261-6/+3
| | | | | - fixed issue if different connection windows are connected to the same connection - prepared structure querying method to be able to add user info containing which table/db was changed if we know it to reduce the future parsing cost
* • Navigator and completion listBibiko2010-03-261-1/+7
| | | | | | - fixed issues for deletion of a db like remove all relevant items and refresh the navigator - simplified and minimized code and memory usage while querying the connection structure - whether a schema name is an unique db or table will be evaluated on run-time via allKeysofDbStructure
* • first steps to ease the structure querying for auto-completion and navigatorBibiko2010-03-261-10/+20
| | | | | | | - now it accumulates the data and caches them db by db, ie one has to select a db before using its structure for completion and navigator - next step is to avoid querying info_schema as much as possible - it will only query the structure if something was changed - next steps follows as soon as possible
* Bunch of improvements to the server process list viewer, including:stuconnolly2010-03-251-1/+1
| | | | | | | | | | - It is now a separate window like the console to enable monitoring. - It now uses the same window style as the console. - The ability to show or hide the process ID, column. This could possibly be enabled for some of the other columns as well, suggestions? - The ability to enable or disable the use of SHOW FULL PROCESSLIST or just SHOW PROCESSLIST. This implements most of the enhancements requested in issue #607, with the exception of the option to enable auto-refresh, which is still being worked on.
* Add support for selecting the triggers view as the default in the general ↵stuconnolly2010-03-251-12/+20
| | | | preferences pane.
* • changed behaviour of ^⌥⌘F "Filter Table" or "Change Focus to Table ↵Bibiko2010-03-251-2/+8
| | | | | | | | List" - if > 20 tables are listed it sets the focus on the search field - if <= 20 it sets the focus on the table list, and - if no selection - it selects the first table item - this fixes i597
* • NavigatorBibiko2010-03-251-11/+1
| | | | | | - make usage of a notification sent by the [MCPConnection queryDbStructure] to update the navigator, and this decouples a doc window and MCPConnection from the navigator - minimized the tree update - now connectionID-based - any tree update will be now performed on main thread and waits until done to avoid 'overlapping' updates triggered by different notifications which normally ended up in an inchoate tree display
* - Make [MCPConnection getLastErrorMessage] more consistent by always ↵rowanbeentje2010-03-251-15/+15
| | | | | | | returning nil if no error occurred (previously a blank string was returned most of the time) - Add a new (BOOL)[MCPConnection queryErrored] method, changing all error message checks to use it for clarity
* General tidy up, with a focus on consolidating more constants in ↵stuconnolly2010-03-241-17/+18
| | | | SPConstants.h/m.
* - Add a new selectDatabase:item: method to TableDocument, to centralise ↵rowanbeentje2010-03-241-47/+97
| | | | | | | | | | 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.
* - Remove observers for key paths when dealloc'ing objects to fix later ↵rowanbeentje2010-03-231-0/+16
| | | | | | | crashes when changing those keyvalues (eg changing query editor background colour after closing windows - http://log.sequelpro.com/view/44 ) - Fix a memory leak of a prefs reference in CMTextView
* Before opening the user manager check that the current user has access to ↵stuconnolly2010-03-231-0/+18
| | | | the mysql.user table. If they don't display a warning message that they don't have the necessary privileges for user management.
* • NavigatorBibiko2010-03-231-3/+4
| | | | | | | | - gather more information - show infos for proc/func - improved error handling - reduced jittering while closing a connection window - still hidden - if navigator is not visible no navigator code will be executed
* - Simplify table source table setup and make thread safe. This should ↵rowanbeentje2010-03-221-3/+4
| | | | | | | | address http://log.sequelpro.com/view/43 , http://log.sequelpro.com/view/46 - Improve keepalive timer interaction - this should address http://log.sequelpro.com/view/74 and http://log.sequelpro.com/view/71 - Further thread safety improvements to Custom Query, Table Document, and the history controller
* • NavigatorBibiko2010-03-211-0/+30
| | | | | | | | | | - 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
* • NavigatorBibiko2010-03-211-0/+3
| | | | | - preserve selection; if generally possible check if selected item still exists if not select parent if still exists on so forth - a reload should only occurs if structure was changed
* Fix memory leak upon connection window close.stuconnolly2010-03-201-0/+1
|
* • further work on Navigator (not yet active but workable -> unHide menu item)Bibiko2010-03-191-1/+49
|
* • further progress for navigatorBibiko2010-03-181-1/+1
|
* • some progress of the navigator approach (not yet active - hidden main ↵Bibiko2010-03-181-3/+18
| | | | menu item)
* - Fix a couple of calls which crashed if the window had already been ↵rowanbeentje2010-03-181-0/+1
| | | | | | | closed, fixing window close on query startup or after queries; this fixes http://log.sequelpro.com/view/9 - Fix an exception caused in the NavigatorController if the dbstructure has not been fetched yet
* • initial commit to support a connection/schema navigator (not yet active ↵Bibiko2010-03-171-0/+34
| | | | - to try see line 1134 in TableDocument.m)
* Fix a couple more potential issues found during static analysis.stuconnolly2010-03-151-1/+1
|
* Fix some potential issues found during static analysis.stuconnolly2010-03-151-1/+1
|
* Following a manual code review, fix some local variables overriding global ↵rowanbeentje2010-03-151-2/+10
| | | | variables, a few leaks, and additional nil setting/checking to prevent overreleases or releases of random areas of memory.
* Peform the addition and removal of table indexes on a background thread with ↵stuconnolly2010-03-141-1/+0
| | | | the option to cancel the operation to prevent locking up the main thread. Fixes issue #591.
* • fixed printDocument validation if Custom Query is activeBibiko2010-03-131-5/+5
| | | | - allow to print the Custom Query result table even if no database/table is selected
* Perform HTML generation for printing on a background thread, displaying the ↵stuconnolly2010-03-131-2/+2
| | | | usual progress indicator with the ability to cancel it. Still need to add warnings when attempting to print a table content with a large number of rows or a lot of data.
* - Add toolbar item for Triggers interfaceavenjamin2010-03-131-0/+13
| | | | - Add table triggers toolbar icon
* - Fix some leaks and autoreleases after checking static analysisrowanbeentje2010-03-131-10/+0
|
* tiny improvement for printDocument: menu item validationBibiko2010-03-131-2/+7
|
* Lots more printing support enhancements, including:stuconnolly2010-03-131-3/+1
| | | | | | | | | - The ability to print the extended table information view using a new template. - The inclusion of NULL values diaplyed as the user's NULL value placeholder when printing a table's sturcture and indexes. - If enabled in the user's preferences, the inclusion of vertical gridlines in the table views. - Dynamic calculation of page margins based on the paper size of the selected printer as opposed to using hard coded values. - Lots of other little style enhancements.
* Various printing support enhancements, including:stuconnolly2010-03-121-164/+4
| | | | | | | | | - Splitting out all printing methods to SPPrintController which is category of TableDocument. - The ability to print table relations. - If present the inclusion of table indexes when printing a table's source. - If the user has use monospaced fonts enables, then the print out's tabular data will be in a monospaced font. - Lots of other style enhancements, including page headings and sections headings.
* Include the current table name in printing support. Fixes issue #501.stuconnolly2010-03-101-27/+34
|
* - Ensure endTask is called on the main thread, fixing various thread-safety ↵rowanbeentje2010-03-101-0/+6
| | | | issues including http://log.sequelpro.com/view/40 and http://log.sequelpro.com/view/21
* • improved tooltip behaviour of SPNarrowDownCompletion's tableViewBibiko2010-03-091-0/+13
| | | | • added "Filter Tables…" ^⌥⌘F" to main menu > Table which sets the focus to TablesList's search field if visible
* • Select Content Filter ^⌘FBibiko2010-03-081-1/+1
| | | | | - select first textfield for 1 or 2 argument(s); if no argument field is selectable select compareField - ensure the focus setting by calling "makeContentFilterHaveFocus" via performSelector:afterDelay
* Add a new 'Filter Content...' menu item to the 'Table' menu that switches to ↵stuconnolly2010-03-081-0/+15
| | | | the content view and places the focus on the filter field.
* Add a hidden preference to display or hide the MySQL server version in the ↵stuconnolly2010-03-071-2/+2
| | | | window title.
* • CSV Import Field MapperBibiko2010-03-051-17/+16
| | | | | | | | | | | - removed Advanced sheet, instead resize the main sheet and display these settings in it - added advanced options LOW/HIGH_PRIORITY - improved logic for adv. settings, disabling UPDATE if target table has less than 2 fields, etc. - fixed URL for displaying the source file name - removed Help text since it's too large - should be go to the general help • CMTextView - fixed bug if ESC Completion is invoked if caret position is 0 • fixed document URL handling to come up with the correct icons etc.
* • REPAIR, OPTIMIZE, ANALYZE, FLUSH, CHECKSUM now can be applied to more ↵Bibiko2010-02-261-88/+281
| | | | | | | | 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-17/+91
| | | | | | | | - 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