aboutsummaryrefslogtreecommitdiffstats
path: root/Source/SPExportController.m
Commit message (Collapse)AuthorAgeFilesLines
* fixed compiler warningssqlprodev2011-03-011-2/+2
|
* - Fix issues restoring the filename or advanced views in the export ↵rowanbeentje2011-01-241-0/+2
| | | | interface when they have been automatically collapsed when the sheet closed
* Apply a tweaked version of a patch by Aaron Linville ↵rowanbeentje2010-12-051-2/+16
| | | | | | | | | | (http://www.linville.org/) to handle table linking in .dot exports on case-insensitive servers: - Adds a new checkbox on the .dot export interface controlling the case sensitivty of link handling - Improve .dot export to use lowercase link references when the option is enabled, fixing .dot exports of table relations of table names with uppercase characters on case-insensitive servers - Check the server's case-sensitivity setting and use that to control the checkbox when using the export interface to select .dot export This addresses Issue #920.
* Complete the implementation of supporting MySQL's XML schema format when ↵stuconnolly2010-11-051-0/+17
| | | | exporting. Also, restore our old format and give the user the choice during export (defaults to MySQL schema). Completes the implementation of issue #840.
* - Split out all of SPExportController's delegate methods to their own category.stuconnolly2010-10-241-67/+47
| | | | | | | | - 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.
* Minor export controller init change.stuconnolly2010-10-211-1/+1
|
* Considering nearly every class uses constants, import it via the prefix header.stuconnolly2010-10-191-1/+0
|
* When checking for DB changes during an export, don't refresh the table list, ↵stuconnolly2010-09-271-59/+51
| | | | which results in wiping the user's selection. Fix for issue #832.
* Fix an issue where by an export would fail to begin when the check for ↵stuconnolly2010-09-221-2/+6
| | | | database changes was not required (functionality introduced in r2670). Fixes issue #835.
* - Before performing an export (except from a dot export), refresh the table ↵stuconnolly2010-09-191-46/+106
| | | | | | | list to accommodate cases where additional tables have been added to the database by external applications. If so inform the user of this, giving them the choice of whether or not to continue with the export. - Update Localizable.strings
* - Remember to manually update the export source when updating the UI ↵stuconnolly2010-09-141-7/+19
| | | | | | | programmatically as doing so does not fire the controls action. Fixes issue #821. - Improve UI validation on the export dialog when switching between export types.
* Revert the change made in r2536 which prevented the use of exporting the ↵stuconnolly2010-08-171-106/+106
| | | | selected tables. We'll need to find another way to fix the original issue of not showing procs and functions in CSV and XML exports as well as preserving the user's selection when switching between export types.
* On the export dialog make sure the tables list is refreshed when switching ↵stuconnolly2010-08-151-4/+4
| | | | export types to ensure procs and functions are only included for SQL exports.
* Various export enhancements and fixes, including:stuconnolly2010-08-121-14/+26
| | | | | | | | | | | | - A new SPExportFile class, providing an abstract interface to the handling and creation of export files. - Enables the centralisation of all file/file handle creation logic as well as better support for handling situations where files fail to be created, including files that already exist at the export location. - New SPExportFileHandleStatus constants to support the reporting of file handle creation. - Update SPExporter to use the new file class instead of directly using an instance of SPFileHandle. - Add the necessary logic to deal with files that already exist on disk, by providing the user with 3 options: cancel the export, ignore the files in question or overwrite them. We might want to enhance this to make new files sequential in name to prevent overwriting. Fixes issue #742. - New SPExportFileUtilities category, which centralises all the logic relating to writing export type headers as well as dealing with problems occurred during file/file handle creation. - Improve feedback given on the export progress sheet during export initialisation. - Tidy up and improve comments.
* During a CSV export if the user selects the tab as the separator update the ↵stuconnolly2010-07-251-0/+16
| | | | extension to be .tsv
* Tidy up SPExportController by splitting out all filename related methods to ↵stuconnolly2010-07-251-170/+7
| | | | a new category SPExportFilenameUtilities.
* Make the export dialog a little smarter with regard to the current context. ↵stuconnolly2010-07-251-0/+41
| | | | | | | | | | | For example: If either the table content or custom query editor views are active and there is data available, these options will be selected as the export source ('Filtered' or 'Query Result'). If either of these views are not active then the default source are the currently selected tables. If no tables are currently selected then all tables are checked. Note that in this instance the default export type is SQL where as in the case of filtered or query result export the default type is CSV. Also remove some old export methods. Related to issue #610.
* In addition to Gzip compression support when exporting SQL dumps add the ↵stuconnolly2010-07-241-1/+27
| | | | | | | | | | | | | | | | | | ability to use Bzip2 compression. Other changes include: + Enable the use of export compression (Gzip and Bzip2) for all export formats. + Move the compression options in the export dialog to the 'Advanced' export settings view. + Simplify the setting of common exporter properties (e.g. the connection, use of compression). + Fix a potential memory leak in the dot exporter. + Update the data importer to recognise Bzip2 compressed files. + Fix several display issues on export dialog. + Restore the default .csv file extension of CSV exports. + Correctly update the default export filename when selecting a output compression type. The addition of Bzip2 compression support implements issue #688.
* Make the 'Export' menu item in the 'File' menu behave more like the export ↵stuconnolly2010-07-151-8/+0
| | | | context menu by checking only the selecting tables. If no tables are selected all of them are checked by default (the same as before). Fixes issue #755.
* When searching for the location of the user's Desktop as the default ↵stuconnolly2010-07-091-1/+1
| | | | location of exports, change the search domain to NSAllDomainsMask to accommodate home directories which are not on the startup volume.
* On the export dialog, for the displayed custom filename don't attempt to ↵stuconnolly2010-07-081-1/+3
| | | | append a file extension for CSV exports.
* - Make the query info/error display collapsible.stuconnolly2010-07-061-3/+26
| | | | | | | - Add a 'gear menu' with the option to export the current result set as either CSV or XML. (Note, that the collapsiable view currently suffers from the same BWToolKit issue as the table information pane).
* Fix the resizing of the export dialog when the sheet is already ↵stuconnolly2010-07-051-0/+14
| | | | accommodating all available space. Also, change the cancel button's shortcut to escape. Thanks Hans.
* Simplify the ease at which export filename tokens can be localised as well ↵stuconnolly2010-07-051-9/+13
| | | | as how they are updated with respect to the selected export type.
* - Replace forward slashes with hyphens in export filenames generated from ↵stuconnolly2010-07-051-5/+35
| | | | | | | the use of custom tokens to accommodate dates which include them. - Ensure that the displayed custom export filename includes the default extension.
* Localise the custom export filename tokens.stuconnolly2010-07-021-15/+13
|
* Improve the preservation of the selected output path of exports between ↵stuconnolly2010-07-021-4/+2
| | | | openings of the export dialog.
* Prevent the background colour of the view custom filename format view of the ↵stuconnolly2010-07-021-0/+4
| | | | export dialog from changing when clicked.
* Fix the behaviour of the export dialog when toggling the customise filename ↵stuconnolly2010-07-021-13/+14
| | | | and advanced options views.
* When cancelling an export operation, keep the progress sheet on screen until ↵stuconnolly2010-07-021-4/+12
| | | | all the export files are removed.
* Preserve the selected output path of exports between openings of the export ↵stuconnolly2010-06-301-5/+5
| | | | dialog.
* Add tooltips to the export dialog's tableview.stuconnolly2010-06-301-1/+4
|
* • replaced @"sql" and @"spf" by their SPConstant definitionsBibiko2010-06-241-1/+1
| | | | | | | • further Save Session progress - store "saved as session accessory view data" globally to support "Save Session" - delete global "saved as session accessory view data" if last SP window will be closed - added to info.plist which tab is currently selected
* Remove NSLog() debug.stuconnolly2010-06-131-3/+1
|
* Exporter ehancements:stuconnolly2010-06-131-86/+91
| | | | | | | - Make sure the export button is disabled when the global structure, content and drop options are enabled, but the desellect all button is checked. - Replace the export dialog toolbar with a tabview, reducing the dialogs overall size. - Add the option to SQL dumps to specify when a new INSERT statement should be created, either after a certain amount of data or after a specific number of rows (defaults to every 250KiB). Known issue: incorrect VALUES clause generation of last row when creating a new INSERT after a specific number of rows.
* Exporter fixes:stuconnolly2010-06-101-7/+10
| | | | | | | - Correctly disable exporting custom query results as SQL and enable for all other formats. - Fix CSV exports when exporting from a source other than the selected tables. - Correctly export custom query results instead of all tables as a result of a missing IB connection.
* Exporter enhancements, including:stuconnolly2010-06-091-95/+205
| | | | | | | | - Move the custom filename options view to a drop down view on the main exporter dialog. - Change the export data source matrix to a popup button. - Fix the export button being enabled when no tables are selected to be exported. - Various interface validation fixes.
* When cancelling an export remove all files already written to disk.stuconnolly2010-06-071-1/+24
|
* A number of exporter improvements:rowanbeentje2010-06-071-7/+6
| | | | | | | | | | | | - Improve interface validation on the SQL view, including fixing no-content toggling - Fix the export of views to correctly construct placeholder tables and fix view syntax export (this addresses Issue #707) - Fix logic controlling Stored Procedure and Function export - fix hangs and allow correct export - Handle permission errors when retrieving Stored Pro/Function syntax - Improve export of linebreaks in CSV quoted cells for improved Excel compatibility - SQL export now retrieves table syntax as it progresses through the tables - more accurate progress bar and removes initial pause when exporting lots of tables - Alter filename construction to use centralised filename string: fixes end export Growl notification - Improve dump comments
* On the XML export dialog add the option to specify the placeholder of ↵stuconnolly2010-06-061-0/+1
| | | | exported NULL values. Fixes issue #718.
* - Exporter: SQL select/deselect all will now toggle structure/drop table if ↵rowanbeentje2010-06-061-2/+17
| | | | | | | | those are enabled - Exporter: SQL export now correctly excludes structure/drop table if the global structure/drop toggles are disabled - Exporter: Save exporter window size
* Fix export dialog interface validation when switching between data formats. ↵stuconnolly2010-06-011-3/+3
| | | | Fixes issue #714.
* Rename TableContent to SPTableContent.stuconnolly2010-05-281-1/+1
|
* Rename TablesList to SPTablesList.stuconnolly2010-05-271-1/+1
|
* Perform interface validation on the new export window on a background thread ↵stuconnolly2010-05-271-31/+69
| | | | to prevent locking up the main thread when dealing with databases with a large number (>100) of tables.
* - Fix SQL export progress displayrowanbeentje2010-05-271-1/+1
| | | | | - When compression is enabled, use .sql.gz as file extension instead of .gz
* Update Growl controller notify method selector when an export finishes. ↵stuconnolly2010-05-251-1/+1
| | | | Fixes logs http://spbug.com/l/521 and http://spbug.com/522.
* Merge export redesign branch back into trunk.stuconnolly2010-05-241-289/+477
| | | | | | | | | | | | | | | | | | | | | Includes a completely redesign approach to all export data types based on the use of NSOperation subclasses. CSV, SQL, XML and dot export types are currently functional, while the source files for PDF and HTML export types exist they are to be implemented, but are currently hidden from the interface. Also includes the following: - Completely redesigned export interface. - The ability to customize CSV NULL values. - The ability to specify whether the UTF-8 BOM should be used in SQL dumps. - The ability to specify whether BLOB fields are output as hex or plain text during SQL dumps. Defaults to hex. - Exporting currently selected tables via the tables list context menu. Outstanding issues: - Not all progress indicators for all export types are functional (or functioning correctly). - A few issues related to the introduction of only exporting the content and create and drop syntax of specific tables during SQL dumps. Needs some serious testing and benchmarking to ensure it replicates the current export functionality.
* Initial implementation of tabs:rowanbeentje2010-05-231-3/+15
| | | | | | | | - 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
* - Make [MCPConnection getLastErrorMessage] more consistent by always ↵rowanbeentje2010-03-251-1/+1
| | | | | | | 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