aboutsummaryrefslogtreecommitdiffstats
path: root/Source/SPTableStructure.m
Commit message (Collapse)AuthorAgeFilesLines
* Merge further revisions back from trunk to the 1.0.x release branch, ↵rowanbeentje2013-04-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | potentially comprising the last of 1.0.2: - r4066: Fix query status and error message title to not always suggest an error has occurred, addressing Issue #1670 - r4067: Fix validation of the "Add to Favorites" File menu item when editing past favorites; Fix the action of the "Add to Favorites" File menu item to correctly create the new favorite; These address Issue #1666 - r4068: Move the SPBeginWaitingAlertSheet function to a beginWaitingAlertSheetWithTitle:... class method on a new SPAlertSheets class, allowing us to use invocation forwarding to ensure the entire function is executing on the main thread. This allows runloop processing to happen on the main thread, addressing Issue #1676 - r4069: Fix newline warnings - r4070: Issue #1601: Fix menu items not being validated properly once a connection is established - r4071: Split the process list controller's table view data source and delegate methods into their own category - r4072: Fix process list kill query/connection actions not using the correct ID if the list was filtered - r4074: Correctly link the SSH name field, fixing issues editing and automatically filling in connection names on the SSH tab, addressing Issue #1686 - r4075: Specify the NULL status of fields when creating view placeholders on export, fixing problems with invalid timestamp NULL defaults, addressing Issue #1688 - r4076: Add a spotlight comment to allow easy location of Sequel Pro with other search terms than the name - r4077: Fix string type detection, addressing errors when converting string types to blob or binary fields (addressing Issue #1453) - r4078: Composite Foreign Keys will now show all columns in Relation view (workaround) - r4079: Changed a query (addressing issue #1687); Make some strings localizable - r4087: Fix another issue causing ALTER statements to error for binary column types being edited, further addressing Issue #1265 - r4088: Update version number to 1.0.2
* Merge further revisions back from trunk to 1.0.x release branch:rowanbeentje2013-04-281-0/+1
| | | | | | | | - r4062: Fix build warning - r4064: Combine the "Run All" and "Run Current/Previous/Selection" buttons into a single button with dropdown menu with ability to change the default action: Create a new SPComboPopupButton class; this subclasses NSPopupButton to retain the ability to show the popup menu, but only when the right-hand side of the button is pressed, allowing the rest of the button to perform the click action; Combine the previous two "Run" buttons on the Custom Query view into a new SPComboPopupButton; Move the Run menu items from the gear menu into the Run button popup menu so they can be discovered more easily (and the shortcuts seen more easily) ; Add a menu item to switch the button's default action, which also swaps all associated shortcuts; Clean up associated logic. This implements Issue #1569 - r4065: Alter the SPComboPopupButton to ignore clicks started in the left-hand part of the button but ended in the right-hand part of the button; Change the button to use "Run All" instead of "Run All Queries" to avoid localisation issues
* Merge further revisions from trunk back to the 1.0.x release branch:rowanbeentje2013-04-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - r4034: End editing for deleting content filter or query favourites, addressing exceptions and Issue #1648 - r4035: Apply schlabberdog's fix for log #3969, addressing Issue #1647 - r4036: Fix an error parsing SQL inside an unterminated delimiter statement causing an off-by-one error in positioning, addressing Issue #1643 - r4037: If date-type fields are cleared, and allow NULLs, save the cell value as NULL; this implements Issue #1638 - r4038: Alter the content filter manager and the query favourite manager to import items from a file into the Global group if the document is untitled, improving import UX and addressing Issue #1616 and Issue #1645. Also select and scroll to the newly imported items for clarity. - r4039: Fix crashes in the User Manager when fields don't validate but a save/cancel/tab switch is still triggered, addressing Issue #1627 - r4041: Tweak and improve the User Manager: Rework how data to populate the user manager is retrieved from the server, speeding up display of lots of users by a large factor; Fix support for schema permissions for the Anonymous user, and add support for '%' and '' hostnames (only showing if already set once), fixing Issue #1620; Highlight databases in the user manager that have permissions set for the selected user; Switch to using the centrally provided database list to reduce queries and remove the information_schema and performance_schema "databases"; Speed up a number of operations by tweaking the logic and queries used - r4042: Fix release builds after r4041; Update localizable strings - r4043: Set Sequel Pro to always run on Integrated Graphics on machines with both integrated and discrete, improving power consumption if nothing else is triggering the discrete GPU. This addresses Issue #1609 - r4044: Make the theme background apply to the query favourites editor - r4045: If the Custom Query editor view is active on window open, correctly set the focus in it, addressing Issue #1590 - r4046: Add support for querying the server default charset and collation; Move a bit of redundant code into a method - r4047: Restore tab bar label when cancelling a connection - r4048: Fix format string error in QueryKit - r4049: Alter the preferences favourite minimum version to avoid issues with previous runs of nightlies, which may partially address Issue #1588; Remove the old favourites key from the preferences now imports have succeeded - r4050: Allow Favorites import to read favorites from an old preferences .plist file, further addressing Issue #1588 - r4051: Change the string '=' and '!=' to be case- and collation-insensitive by default, using the Shift key (as documented in the tooltip) to trigger a BINARY exact match. This addresses Issue #1578 - r4052: When adding a database the servers default charset is now shown - r4053: Adjust keywords list to fix auto capitalisation of "ON" - r4054: Add a new SPMySQLEmptyResult class to SPMySQLFramework, returning it instead of nil if a query produces no result set. This allows per-result-set properties to be preserved, fixing issues where information like query execution time was lost - addressing Issue #1577 - r4056: Improve startup when loading from file, preventing overwrite of details read from a spf/spfs during startup. This addresses Issue #1619 - r4057: Correctly reset document state for setting it from file/when duplicating tab, further addressing Issue #1619 - r4058: Add a stub override to fix exceptions when code receiving a SPMySQLEmptyResult expects a SPMySQLStreamingResult/SPMySQLFastStreamingResult (Exception #3988) - r4060: Make some small tweaks to string BINARY handling: Correctly send the binary state/collation when reordering fields, addressing Issue #1265; Allow unticking of the binary box to save correctly, allowing conversion of fields to non-binary collations again - r4061: Fix errors when editing or moving columns on server vesions which do not support character sets/collations, addressing Issue #1629; Fix needless collation queries on those servers; Disable field enums and table encoding dropdown on those servers
* Remove useless init and dealloc method comments and perform general tidy up.stuconnolly2013-01-221-10/+1
|
* - Add names for most threads created by Sequel Pro for easier debugrowanbeentje2012-10-141-2/+3
|
* Filter window should observe use table view gridlines preference.stuconnolly2012-08-141-1/+0
|
* Change Sequel Pro's license from GPL (version 2) to MIT.stuconnolly2012-07-251-12/+20
|
* Move the table structure's loading logic into it's own category.stuconnolly2012-07-041-306/+2
|
* If available display the columns default encoding and collation in the ↵stuconnolly2012-07-041-26/+69
| | | | structure view. Implements issue #1355.
* - Clean up SPMySQL and QueryKit inclusion and search methods, which should ↵rowanbeentje2012-03-271-4/+0
| | | | | | | fix nightly builds - Fix warnings
* tweaks to compile on Xcode 4 / 10.6 SDK for SP_REFACTORsqlprodev2012-03-271-0/+9
|
* - Fix a possible race condition exception when switching between tables ↵rowanbeentje2012-03-211-3/+7
| | | | when th structure view was active, the collation column was visible, and fields had custom collations
* - Fix exceptions when using Show Optimized Field Type in the Structure pane ↵rowanbeentje2012-03-201-0/+1
| | | | contextual menu
* - Remove the GPL-licensed Colloquy-sourced NSNotificationAdditions category ↵rowanbeentje2012-03-171-8/+0
| | | | from the project, and replace with an MIT-licensed TCMPortMapper sources NSNotificationCenterThreadingAdditions category. This should fix method clashes in the SP_REFACTOR project, so remove behavioural/namespacing switches.
* More bugfixes to the SPMySQL integration branch:rowanbeentje2012-03-141-2/+2
| | | | | | - Fix background database structure checks throwing exceptions at the end of certain table operations - Fix incorrect timer access/overrelease when closing a SPNarrowDownCompletion window when database structure fetching is active
* Warning: this branch commit is largely untested, and known to throw ↵rowanbeentje2012-02-231-53/+45
| | | | | | | | | | | | exceptions as database structure retrieval is currently missing! Further work on SPMySQLFramework integration: - Improve SPMySQL framework build settings including correct ppc builds and a Distribution configuration for the build distributions to match - Add new convenience querying and result methods to the framework - Amend Sequel Pro source to use the new SPMySQL.framework methods everywhere, replacing MCPKit methods where they differ and improving some functions - Remove MCPKit from the source - Fix a number of warnings on Release-style builds
* - Cleanup: improve compatibility with 10.7 SDK to reduce compiler warningsrowanbeentje2012-02-081-7/+7
|
* Fix the indexes view not restoring the use vertical table view gridlines ↵stuconnolly2012-01-091-0/+1
| | | | preference.
* - Prevent export and indexes controller awakeFromNib: routines from being ↵rowanbeentje2011-08-251-0/+3
| | | | | | | run multiple times - Fix crashes and exceptions when using "Use monospaced fonts" or "Display vertical grid lines" preferences after closing at least one window
* - Fix thread-safety issues creating the encoding popupbuttoncell on the ↵rowanbeentje2011-07-111-4/+4
| | | | Structure view (addresses http://spbug.com/l/2123 )
* merging SP_REFACTOR branch with trunksqlprodev2011-05-191-0/+53
|
* - Add the ability to double-click in empty areas of the main tableviews to ↵rowanbeentje2011-04-251-0/+9
| | | | add new rows/records
* SP_REFACTOR: Workaround for naming conflict with ↵sqlprodev2011-04-141-31/+9
| | | | postNotificationOnMainThread: which also exists in TCMPortMapper.framework; NSUserDefaults access now permitted in SP_REFACTOR blocks for a few prefs keys
* Make some minor changes after reviewing r3271:rowanbeentje2011-04-141-14/+14
| | | | | | - Fix a few encoding issues - Recode a few [NSApp keyWindow] uses back to [SPDatabaseDocument parentWindow] following discussion; possibly for later refactoring into use of an error method
* initial commit of SP_REFACTOR ifdefs, the start of a long quest to separate ↵sqlprodev2011-04-111-22/+121
| | | | UI code from functional code
* Address Issue #984:rowanbeentje2011-03-211-2/+13
| | | | | | | - Fix potential reload loop when setTableDetails: deselects the table row, after the fields have been emptied but before any edits have been committed - Fix reload action not checking whether items need saving before comparisons occur - Save incomplete edits back to the table before processing changes to avoid changes requiring additional queries
* Fix more compiler warnings, including a few bugsrowanbeentje2011-03-081-26/+29
|
* fixed compiler warningssqlprodev2011-03-011-2/+0
|
* fixed compiler warningssqlprodev2011-03-011-1/+0
|
* - When resetting AUTO_INCREMENT for a table, always use the selected table ↵rowanbeentje2011-01-111-7/+1
| | | | name sourced from SPTablesList rather than a SPTableStructure cached value, which may not have been updated. This addresses Issue #945.
* - Rework the Add Index indexes menu and the auto_increment index required ↵rowanbeentje2011-01-041-2/+12
| | | | | | | | | | | | | menu to use tag-based values when generating queries, allowing localisation of menu contents without using those localised values in queries. This addresses I$ - Remove the ability to specify a FULLTEXT auto_increment index, as I believe this isn't possible. - Prevent sheet reuse from specifying invalid storage types for PRIMARY KEYs - Fix exceptions when adding indexes to a table where every field is already indexed - Fix initialField/indexedFieldNames check to improve on r3061 - Fix toggling advanced index view after closing the sheet with the view open - Update localisable strings
* - Don't specify DEFAULT '' when saving TEXT, BLOB or geometry field types; ↵rowanbeentje2010-12-081-2/+3
| | | | this avoids errors in strict mode
* Add a new category to SPDatabaseDocument, allowing code cleanup and moving ↵rowanbeentje2010-11-031-7/+7
| | | | | | | | | | | central functionality out of SPTablesList: - Centralise control over table loading, moving it away from SPTablesList and into SPDatabaseDocument and the new SPDatabaseViewController category - Centralise control over the main tab view, moving control away from SPTablesList and into SPDatabaseDocument and the new SPDatabaseViewController category - Simplify and clean up view loading logic - Improve thread safety - Update localisable strings
* • TableStructure sheet to ask for the to be used index of an ↵Bibiko2010-11-011-56/+51
| | | | | | auto_increment field now runs doc-modal not app-modal - the used strategy is to ask the user for an index whenever the user set the Extra field to 'auto_increment' and not as part of the 'addRowToDb' method
* • improved Structure editing logic to allow to choose auto_increment for ↵Bibiko2010-11-011-2/+18
| | | | | | Extra only if table has no auto_increment field set since MySQL allows only one auto column - the user has still the chance to type 'auto_increment' into the Extra manually
* Tidy up SPTableStructure including moving all the private field type ↵stuconnolly2010-10-281-169/+116
| | | | validation methods to their own class, SPTableFieldValidation.
* Add SPDefaultPasteboardDragType constant.stuconnolly2010-10-281-9/+5
|
* Split out all of SPTableStructure's delegate and datasource methods into ↵stuconnolly2010-10-261-530/+2
| | | | their own category.
* • improved the TableStructure handling of GEOMETRY fields and their ↵Bibiko2010-10-251-3/+3
| | | | validations against non-valid WKT notations - return NULL if no header
* - Split out all of SPExportController's delegate methods to their own category.stuconnolly2010-10-241-3/+0
| | | | | | | | - Prepare for the implementation of PDF and HTML export by hiding the export options box for export types that don't need it. - Fix some spacing issues on the export dialog. - Create a new SPCategoryAdditions header that is included in the apps precompiled header, making all additions available to all classes. - Update strings files.
* When adding or editing a field and the option to make it the primary key is ↵stuconnolly2010-10-201-30/+47
| | | | selected, also make the field unsigned if not already. Implemented issue #703.
* Considering nearly every class uses constants, import it via the prefix header.stuconnolly2010-10-191-1/+0
|
* • implemented for TableStructure's source table the possibility to ↵Bibiko2010-10-151-0/+57
| | | | | | hide/unhide the columns: Key, encoding, collation, comment by adding a gear menu 'View Columns'; the hide status will be saved inside the Pref key: 'NSTableView Hidden Columns SPTableStructureSource' - this implements the feature request issue 868
* • display SPA in the Key column if a field has a spatial keyBibiko2010-10-091-1/+4
| | | | Question: Is it possible to assign an index to a geometry field other than SPATIAL?
* • added spatial field types to field list suggestionsBibiko2010-10-081-3/+26
| | | | • adjusted gui validation for geometry field types
* • fixed issue836 by avoiding the fact that while selecting a new table ↵Bibiko2010-09-221-15/+18
| | | | | | | | the CREATE SYNTAX will be parsed twice under certain circumstances which led to this issue - introduced a isWorking mechanism to SPTableData; while SPTableData is updating its cache (ie the CREATE SYNTAX is being parsed) each request for values will return nil or an empty array; the caller is responsible to decide what to do • various commenting stuff • various speed improvements
* • TableStructureBibiko2010-09-211-25/+126
| | | | | | - started general cell editing validation due to currently set type and other parameters to help user while setting up/changing fields (must be tested) - set BINARY checked if collation ends with _bin since string fields stores that information in that way for convenience - added TINYTEXT as type suggestion
* Update Localizable.strings and resolve the use of multiple comments for the ↵stuconnolly2010-09-211-1/+0
| | | | same string.
* - Remove a number of invalid [NSTableView makeFirstResponder] calls that ↵rowanbeentje2010-09-181-3/+3
| | | | | | | had crept into the source, replacing with the correct [NSWindow makeFirstResponder:NSTableView]. This fixes a number of exceptions. - Update localisable strings.
* New add index sheet, which includes:stuconnolly2010-09-171-0/+3
| | | | | | | | | - The ability to easily index multiple columns - The ability to specify the storage type (HASH or BTREE) that should be used when available and permitted - The ability to specify a length prefix when indexing a specific column (required on TEXT columns) Requires lots of testing.