aboutsummaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* 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
* removed:Bibiko2010-01-091-1/+0
| | | | | | | | | [taskProgressWindow orderWindow:NSWindowAbove relativeTo:[tableWindow windowNumber]]; since it causes Console <error> messages mentioning "kCGErrorIllegalArgument" and it is not necessary anymore [thanks to Rowan for the hint]