aboutsummaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* • bound Custom Query gear menu item "Completion List" (CTRL key is ↵Bibiko2010-01-222-14/+15
| | | | | | | recognized) • use regexp to get a list of current words and reduced that method to invoked if the text buffer is less than 60KB to speed up the completion (it's more likely that the user wants to complete a sql related term) • some code cosmetics
* Restore default behaviour of bringing the most recent window to the front ↵stuconnolly2010-01-221-1/+3
| | | | when clicking the dock icon.
* - When exporting CSVs containing linebreaks, no longer escape those ↵rowanbeentje2010-01-221-7/+5
| | | | linebreaks if they are within a quoted cell, improving compatibility with other applications (notably Excel)
* • updated/added syntax highlighting tokens and completion suggestionsBibiko2010-01-212-8/+25
|
* Trim leading and trailing whitespace and newlines from the host and SSH host ↵stuconnolly2010-01-211-0/+6
| | | | input fields in the connection view. Fixes issue #545.
* • tiny undo improvement for completionBibiko2010-01-211-0/+1
|
* • added call to update the completion list to neuralgic placesBibiko2010-01-214-2/+45
| | | | - next steps to minimize the traffic - ie manipulating the dict directly without querying - follows
* • avoid updating TablesList for queries in Custom Query Editor à la "SHOW ↵Bibiko2010-01-211-1/+1
| | | | CREATE …"
* • completionBibiko2010-01-213-41/+79
| | | | | | | - CTRL+ESC invokes the fuzzy search completion; eg: i_s.pcss. will show all fields from `information_schema`.`PROCESSLIST`. if no other matches are found; the search is a regexp ".*?i.*?_.*?s.*?\. …" etc. by using RegexKitLite which is much more faster than NSPredicate and can handle long regexps - improved type display: if a type definition contains a , split it to avoid splitting of the tokenFields - while insertion of an item and holding down the CTRL key the list keeps open to allow to insert more suggestions separated by ", " from the current list (very useful if one wants to insert only selected fields from a table)
* - Correctly escape field names when creating foreign keys, and escape the ↵rowanbeentje2010-01-211-3/+3
| | | | database name when looking up tables to add to the dropdown. Addresses Issue #537.
* - Fix an incorrect bounds check in the data storage class, fixing crashes ↵rowanbeentje2010-01-211-1/+1
| | | | when removing records in a range - seen in Issue #542.
* • completion enhancementsBibiko2010-01-214-38/+147
| | | | | | | - TAB and mouse double-click inserts suggestion - field type info for 'set' and 'enum' is fixed; in addition show an arrow to show the definition - preparations for fuzzy search completion (not yet active) - reduced the font size by 1pt to avoid truncating
* Address Issue #546 (format string bugs):rowanbeentje2010-01-2015-79/+176
| | | | | | - 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
* • completionBibiko2010-01-203-102/+74
| | | | | | | | - auto-completes the common prefix of all suggestions - makes typing much more faster - “ ” as allowed character to be typed for narrow-down the list is set automatically if at least one suggestion contains a “ ” - fixed two tiny memory leaks - fixed detecting db/table/field names containing ` as char - removed ⇥ binding to complete the common prefix since it's done automatically
* • improved completion for Query Editor bound to ESCBibiko2010-01-194-258/+336
| | | | | | | | | | | | | | | - up to now for MySQL >4 available - implemented by narrow-down, i.e. write/delete to narrow-down/expand the suggestion list - ↩ inserts the suggestion, if suggestion is db/table/field/proc/func name inserts backtick quoted - for a db/table/field/proc/func name press ⇧↩ to insert à la `db`.`table`.`field` relatively to the current selected db - context-sensitive to leading db. or table. or db.table. or .table if uniquely identifiable - mysql and information_schema if available and not selected appear at the end - `|` | := caret shows the current table's fields if any or the current selected db if selected at the top; suggestions are hierarchically arranged by db, table; easiest way to insert a table/field name - e.g. type `max_c` and press ⇧↩ to insert `mysql`.`user`.`max_connections` - for table/field name suggestions press at the right column to get the path info • F5 invokes completion based on spell checker and selected language - since it is not possible to auto-detect if the user wants to complete MySQL statements or prose text Note: GUI needs improvements; completion should be tested exhaustively
* • added missing PROCEDURE ANALYSE to syntax highlightingBibiko2010-01-191-2/+2
|
* - Remove some unintentionally committed debugrowanbeentje2010-01-181-2/+0
|
* Add a new SPDataStorage class, and use it in TableContent and CustomQuery:rowanbeentje2010-01-178-106/+621
| | | | | | | | - SPDataStorage is a class designed for a 2D array of fixed-width data storage, replacing the current method of nested NSMutableArrays. NSFastEnumerator compatible. - Overall memory overhead for table storage in memory reduced by 1.2-1.4x - this almost gains back the large memory jump seen for 64 bit - Some operations (adding data, retrieving a single cell's data) are faster than nested NSMutableArrays; some operations (requesting a row as an NSArray) are slightly slower as the data needs to be converted, but overall result is a slight speed gain. (- Could be used in future to store SQL results in C datatypes, avoiding very high NSObject overhead for numbers and short strings)
* - removed F5 completion debug outputBibiko2010-01-152-17/+18
| | | | - fixed issue while ‘normal’ completion after “table.” completion
* • refactored parsing code for F5 completionBibiko2010-01-153-189/+120
| | | | | - improved ⇧↩ insertion - improved backtick behaviour
* • removed from each open panel:Bibiko2010-01-153-3/+6
| | | | | | [panel setResolvesAliases:YES] For some reasons it could happen that the panel didn't response to dragging files into it correctly and sometimes SP crashed after selecting a directory in its sidebar. By removing "resolve aliases" the panel seems to work properly. This has to be verified by further tests.
* Issue 517: Export MySQL Dump does not include triggers or functionsbamse162010-01-141-58/+65
| | | | | | - added support for dump functions. If no errors are found, Issue 517 can be closed.
* Issue 517: Export MySQL Dump does not include triggers or functionsbamse162010-01-141-5/+71
| | | | | | - included export for proceduers. Need to add support for functions and test on different databases.
* • added "componentsJoinedByPeriodAndBacktickQuoted" to NSArrayAdditionsBibiko2010-01-143-39/+20
| | | | • updated some methods in in SPStringAdditions to 10.5 code which avoid mutableCopy and they're faster
* Replace COUNT(*) with COUNT(1) which is usually faster, and much faster in ↵bamse162010-01-143-5/+5
| | | | certain conditions
* • fixed several sheetDidEnd selectors to close a NSAlert or NSWindow ↵Bibiko2010-01-135-10/+51
| | | | | | | 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
* • avoid querying for collations if passed var "encoding" for method ↵Bibiko2010-01-131-1/+1
| | | | getDatabaseCollationsForEncoding is equal to NULL
* • F5 compeltionBibiko2010-01-133-6/+48
| | | | | - fixed issues if no db is selected - trial: ⇧↩ inserts the entire path db.table or db.table.field; if invoked inside of backticks backticked
* • further improvements for F5 completionBibiko2010-01-134-72/+274
| | | | | | | - first steps for context-sensitive completion: parse left side of current word to look for db.table.field constructions - eg type: mysql.user. and press F5 Note: work in progress :)
* • fix for i529: set the savePanel's delegate to self in order to handle ↵Bibiko2010-01-131-1/+3
| | | | changes of the accessory view (ie avoid disappearing of selected items)
* • CMTextView: Bibiko2010-01-121-2/+37
| | | | | - re-defined 34 tab stops for better editing behaviour - soft wrapped lines are slightly indented
* • If TableDocument is performing a task suppress any context menu in ↵Bibiko2010-01-121-0/+6
| | | | SPTableViews to prevent unstable circumstances
* • fixed: escape new entered comments in the Table Info Pane before ↵Bibiko2010-01-121-1/+1
| | | | applying changes to the db
* • fixed reading encrypted SPF files on the 64bit SP version (for now)Bibiko2010-01-121-4/+5
| | | | | | - make usage of UInt32 instead of NSUInteger for checking whether decryption was successful and for retrieving the correct data size TODO: it should be possible to change it to NSUInteger by applying the correct pointer arithmetics
* Issue 517: Export MySQL Dump does not include triggers or functions bamse162010-01-121-36/+46
| | | | | | | I've moved the export triggers part after the [streamResult release], so we can export triggers for empty tables too.
* • applied new detachNewThreadSelector:@selector(queryDbStructure) call to ↵Bibiko2010-01-121-1/+1
| | | | TablesList's updateTables method
* - Move the query for the database structure to a background processing ↵rowanbeentje2010-01-121-1/+1
| | | | thread, as well as the existing background database connection, for a smoother experience
* - Fix incorrect pagination task text ("Filtering table...") when no ↵rowanbeentje2010-01-121-9/+24
| | | | | | | filtering is occurring, just pagination - If the table count is estimated (eg InnoDB), but the end is reached via pagination, make the row count accurate based on the known number of rows
* - Testing found that r1653 fixed the warnings but for some reason disabled ↵rowanbeentje2010-01-111-0/+1
| | | | the "Stop" button; switch to orderFront: to re-enable without the warnings (thanks to Hans for assistance!)
* • fix for i525: do not escape the \ for \_ or \% and changed "contains" 's ↵Bibiko2010-01-111-5/+6
| | | | | | | behaviour to escape _ % automatically since it could be confusing to the user because it uses LIKE '%...%' • reimplemented: scroll to newly added row in Content View
* • fixed issue for "Copy as SQL INSERT" after filteringBibiko2010-01-111-1/+7
| | | | | - accessing table data from [dataSource:tableView:objectValueForTableColumn:row] directly - maybe related to issue 506
* • further developments for the F5 completionBibiko2010-01-115-5/+32
| | | | Note: not yet finished!
* Issue 517: Export MySQL Dump does not include triggers or functionsbamse162010-01-111-8/+43
| | | | | | | | | | | | | | First draft on export triggers. Known issues: - Now it exports only triggers for the table that have some content in it. If I move the write triggers part outside of the if (rowCount), the SHOW TRIGGERS query never finishes. - Sequel Pro complains when it tries to import the same file again. The error message is related to DELIMITER command. Still, the triggers seem to be present. This might be a different issue with Sequel Pro.
* • further preparations to F5 completionBibiko2010-01-116-96/+190
| | | | 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-103-1/+9
| | | | | | | | | 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
* • made lexer 64bit compatibleBibiko2010-01-104-8/+28
| | | | | | - 'int' has to be replaced by 'size_t' • F5 completion - if inside of backticks after completion move caret one char rightwards to go out of the backticks
* • F5 completionBibiko2010-01-092-2/+4
| | | | | - fixed forgotten range checking to suppress Console warning - `|` [ | := caret ] shows all field names - up to now only those from the current table - table/db/proc/func names
* • reimplemented the F5 completion for quoted text i.e. completion based on ↵Bibiko2010-01-091-7/+15
| | | | NSSpellChecker only; language is selectable via right-click "Spelling and Grammar"
* Improve row deselection and error handling in Table Source and Content views:rowanbeentje2010-01-092-18/+26
| | | | | | | | - Change the error dialog buttons to "Edit row" and "Discard changes" instead of "OK" and "Cancel" - Correctly refocus the deselected row - Edit the first cell in the row after errors. - Fix row deselection and error handling on the Table Source view