aboutsummaryrefslogtreecommitdiffstats
path: root/Source/SPNavigatorController.m
Commit message (Collapse)AuthorAgeFilesLines
* Rename TableDocument to SPDatabaseDocument.stuconnolly2010-05-281-5/+5
|
* Rename TablesList to SPTablesList.stuconnolly2010-05-271-1/+1
|
* Initial implementation of tabs:rowanbeentje2010-05-231-8/+7
| | | | | | | | - Addition of PSMTabBar framework - Rework away from a document-based TableDocument - Support tabs throughout the application - Add menu items for creating tabs, and add support for dragging tabs to different windows
* • ensure that the global schema structure data for completion are updated ↵Bibiko2010-03-311-9/+8
| | | | even if SP is not active
* • querying for db structure is queued for the same connection to avoid ↵Bibiko2010-03-311-30/+34
| | | | | | | | | | | '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!
* • next trial to make getAllKeysOfDbStructure thread safeBibiko2010-03-301-59/+105
| | | | | | | | • some speed improvements for navigator - pre-calculate display string for type info to avoid doing it all the time while refreshing the outline view • suppress double-clicking at a not yet queried db structure if the same connection is querying another structure to avoid accessing the same storage objects from different threads (test) • reload outline view after filtering in navigator runs in its own thread to avoid blocking SP • fixed memory leaks while returning [obj copy]
* • some further code optimizations for navigator Bibiko2010-03-301-23/+45
|
* • some speed improvements and code simplifications for navigatorBibiko2010-03-301-34/+32
| | | | | | • avoid making the completion key list unique since it's possible to insert unique items only • added trigger to query db structure after SQL import • some work to avoid http://log.sequelpro.com/view/90 (not yet ideally - WIP)
* • fixed several threading issues due to threadingBibiko2010-03-291-10/+9
| | | | | - collection classes as NSMutableSet are NOT thread safe! • further tiny speed improvements for navigator
* • added some more sanity checks to avoid exceptions due to threadingBibiko2010-03-291-10/+19
|
* • improved completion suggestion for db schemataBibiko2010-03-291-38/+41
| | | | | | | | - if user typed "foo." and there's an unique schema path regardless cases (like there's an item Foo) show the content of the path Foo - now getUniqueDbIdentifierFor:term returns an array of found type (db or table) and the found string to handle case better for completion • tried to speed up the search in the navigator by using a NSPredicate • [MCPConennection allKeysofDbStructure] - fixed issue while returning if allKeysofDbStructure == nil
* • fixed several issue for completion listsBibiko2010-03-291-25/+79
| | | | | | | • 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)
* - db structure for tables and views will now be queried by using SHOW… ↵Bibiko2010-03-281-39/+28
| | | | | | | | | | | statements - completion now works for server versions < 5 as well - proc/func info will be queried by using information_schema for mysql >= 5 - changed completion logic to handle new format - completion will get the info from SPNavigator since this controller caches all information about db structure - optimization and fine-tuning will follow very soon
* fixed issue while selecting a db name in navigator which wasn't queried yetBibiko2010-03-261-1/+3
|
* • navigatorBibiko2010-03-261-1/+1
| | | | | - 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
* • first steps to ease the structure querying for auto-completion and navigatorBibiko2010-03-261-32/+65
| | | | | | | - 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
* • NavigatorBibiko2010-03-251-47/+188
| | | | | | | - first implementation of a search functionality, workable but tiny issues have to be improved - up to now the only search implemented is 'contains', regexp/fuzzy search will come soon - the search is only performed in the main outline view, the upper one is static - for the new search store all available schema paths uniquely in an array which will be set during queryDbStructure (this avoids re-parsing of a dict structure)
* • NavigatorBibiko2010-03-251-12/+33
| | | | | | - 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
* General tidy up, with a focus on consolidating more constants in ↵stuconnolly2010-03-241-2/+0
| | | | SPConstants.h/m.
* • NavigatorBibiko2010-03-241-48/+74
| | | | | | - ENTER and RETURN selects schema path in active connection window - outsourced some stuff to SPNavigatorOutlineView • added rotating sync arrows to project for future usage
* - Add a new selectDatabase:item: method to TableDocument, to centralise ↵rowanbeentje2010-03-241-10/+2
| | | | | | | | | | 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.
* • added SPNavigatorOutlineView class for future stuffBibiko2010-03-231-0/+1
| | | | • fixed some keytab indices for navigator window
* • TablesListBibiko2010-03-231-2/+38
| | | | | | - 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-231-30/+155
| | | | | | | | - 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
* • NavigatorBibiko2010-03-211-2/+135
| | | | | | | | | | - 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-40/+148
| | | | | - 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
* • Navigator progressBibiko2010-03-201-17/+181
| | | | | | | | - made expand status persistent for current SP session - added draft to display additional information about selected fields - tried the minimize the jittering while resizing outline views (test) Note: to test it simply unhide menu item in MainMenu.xib
* (no commit message)Bibiko2010-03-201-6/+1
|
* • some improvements for navigatorBibiko2010-03-191-39/+65
|
* • further work on Navigator (not yet active but workable -> unHide menu item)Bibiko2010-03-191-25/+49
|
* • some progress re NavigatorBibiko2010-03-191-18/+12
|
* • further progress for navigatorBibiko2010-03-181-17/+43
|
* • some progress of the navigator approach (not yet active - hidden main ↵Bibiko2010-03-181-46/+38
| | | | menu item)
* - Fix a couple of calls which crashed if the window had already been ↵rowanbeentje2010-03-181-2/+4
| | | | | | | 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/+273
- to try see line 1134 in TableDocument.m)