| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Implements issue #361. Note the sizing of the new controls still needs fine tuned.
|
|
|
|
| |
• added to TableContent's method filterSettings the dict key 'filterComparisonTag' in order to be able to rely on menu item tags instead on the title strings
|
|
|
|
|
|
| |
- Use the new MCPStreamingResult in TableContent, replacing the old standard query/fetchResultAsArray.
This appears to be much faster (and lower memory use) but I've left the old fetchResultAsArray in place for the time being until we see how we feel about it.
|
|
|
|
|
| |
- catch exceptions while retrieving the original table data while/before reloading/changing the table source data
- 'image' is now set to autorelease
|
| |
|
|
|
|
|
| |
- show images directly as a NSImage in a NSImageView (this decreases the memory usage enormously)
• applied new tooltip invocation for image blob data in Content Pane and Custom Query table
|
|
|
|
|
|
|
|
|
| |
- text strings are display with line breaks and tabs
- if cell content represents image data display that image as transparent thumbnail (by using base64 encoded HTML img tag)
Notes:
- SPTooltip implementation to show an image via a NSImageView will be implemented soon (the HTML way needs too much memory due to base64 encoded string)
- to discuss: Should we add a preference setting to display these tooltips?
|
|
|
|
|
|
|
|
| |
locations, and correcting the logic for fetching the count of rows so that the query is not used where not necessary.
- Update the Table Info pane and tab with a new row count if one is known - this addresses Issue #141
- This reverts r1090, and so needs to be discussed with stuart02 - the rest of the row logic changes may have fixed the 'larger issue' described there?
|
| |
|
|
|
|
|
|
|
|
|
| |
- Data loading now only occurs in one place in the code. This improves consistency and fixes a number of actions which used to trigger a full table reload followed instantly by a filter when the action was performed
- If "Reload data after..." prefs are unticked, no longer load the data (ie the preference now works)
- Make table count text more consistent and useful
- Fix a number of small position-saving type problems with filters and limits active. This fixes Issue #200.
- Clean up and standardise the code dealing with data storage - only one data storage array is now used.
|
|
|
|
|
|
| |
• added the max text length validation for the TableContent while editing in the FieldEditorSheet
• reinvoked the validation of the max text length for TableContent editing while editing in a cell
• fixed in TableContent: prevent the editing of data cells in gray if the cell displays the gray NULL value
|
|
|
|
|
|
| |
- initial support (not yet finished)
Note: maybe add information about field type, max length as attributed string
|
|
|
|
| |
already had it's content loaded, only load the data for the selected cell and not the entire row. Fixes issue #288.
|
| |
|
|
|
|
| |
NULLs are allowed is correct and we can color it if it also matches the user's NULL placeholder.
|
|
|
|
|
|
|
| |
- it inserts the value set in the preferences
• a NULL value will be displayed greyed in the Custom Query result
• make usage of NSArrayObjectAtIndex() in TableContent for tableView:willDisplayCell
- and negated the NULL checking for column (is NULL allowed)
|
|
|
|
| |
they are actually NULL.
|
|
|
|
| |
that aren't loaded.
|
|
|
|
| |
table's content. Fixes issue 337.#
|
|
|
|
|
|
| |
- Improve and make consistent state saving in TableContent; now saves filters and scroll position mor reliably on refresh/edit, and supports remembering and restoring which rows were selected
- Significantly improve table history - only create entries for tables switches or filters, only remember 50 items, and save view/filters/scroll position/selections in table content view
|
|
|
|
| |
search field can be resized. Addresses issue #339.
|
|
|
|
| |
cache within getNumberOfRows after the discovery of much larger issue.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Includes all custom code from subclasses CMMCPConnection and CMMCPResult, meaning they have subsequently been removed from the project.
- All previous Sequel Pro specific code in the above subclasses has been removed in favour of the delegate (currently set to TableDocumet) informing the framework of such information.
- All references to CMMCPConnection and CMMCPResult have subsequently been changed to MCPConnection and MCPResult.
- Framework includes MySQL 5.1.36 client libraries and source headers.
- Framework is now built as a 4-way (32/64 bit, i386/PPC arch) binary.
- All import references to <MCPKit_bundled/MCPKit_bundled.h> have been changed to <MCPKit/MCPKit.h>.
- New script 'build-mysql-client.sh' can be used to build the MySQL client libraries from the MySQL source. See the script's header for a list of available options or run it with no arguments to display it's usage.
Note that there are still a few changes to be made to the framework with regard to removing Sequel Pro specific calls to the delegate. These however can be made later on as they have no effect on functionality and are merely design changes.
Also, note that any future development done on the framework should be made to be as 'generic' as possible, with no Sequel Pro specific references. This should allow the framework to be integrated into another project without the need for SP specific code.
|
| |
|
|
|
|
|
| |
• added: spinning wheel background image
• removed warning in TableContent (unused 'j')
|
|
|
|
| |
than LIKE, so the quote methods were incorrect. We now use standard escaping without additional LIKE preparation. This resolves Issue #338
|
|
|
|
|
|
|
|
|
| |
addressing the first part of #209:
- For the first column linked by each foreign key, display a link arrow within the table cell
- When clicking on the link arrow, select the reference table and set the table filters to select the clicked value
- Also uses the table cell subclass to allow the entire cell to be editable, not just the contained text (addresses #250)
|
|
|
|
|
|
| |
- added the feature to set "isEditable"; according to "isEditable" GUI elements will be hidden or renamed
- if no blob data reduce the minimal sheet size since no segment or quicklook control is needed
|
|
|
|
| |
• deleted in DBVview.xib Field Editor Sheet (out-sourced)
|
|
|
|
|
|
|
|
|
|
| |
be closed when the window is closed, freeing the document's memory
- Update a number of dealloc methods to include more retained memory, and to avoid releasing non-retained memory
- Remove notification observers and delegates where appropriate to avoid issues after document closing
- Fix a couple of memory leaks
- Support window cascading for all windows past the first, using the first window as the autosave window
|
|
|
|
|
|
|
|
|
|
|
|
| |
arrays, and make some editable CustomQuery improvements:
- Switch to using arrays for row storage rather than dictionaries. Use the data column index for table column identifiers.
- This fixes Issue #316 and also allows sorting by all custom query result columns using a column index rather than the name
- Offers significant speed and memory advantages: result building is now 2x-3x faster, memory used for results storage is 30-40% lower, and result access is slightly faster. (Note full 2x-3x speed results won't be seen - result fetching and mysql binary work isn't included in the timing)
- No longer need to fetch the first column of data for tables containing only blob types
- Correctly escape strings when editing CustomQuery results
- Rewrite NSArrayObjectAtIndex to use the native CFArrayGetValueAtIndex rather than cached selectors - neater code and I think slightly faster
|
| |
|
|
|
|
| |
isn't deselected to prevent accidental loss of entered data
|
|
|
|
| |
by returning YES by default.
|
|
|
|
| |
Completes the implementation of issue #139 as all views now have contextual menus.
|
|
|
|
|
|
| |
- generate Hex representation on demand (this speeds up the working with images enormously)
- added support to paste image data via the pasteboard (data are stored as TIFF LZW compressed)
- if user switched to an other view (text/iamge/hex) that view will be become first responder explicity (fixes an issue that the Open button got the focus sometimes)
|
|
|
|
|
|
| |
- (NSString *) shortStringRepresentationUsingEncoding:
--mainly used for displaying large blob data in a tableView
• tiny speed improvements for tableView:objectValueForTableColumn and tableView:setObjectValueForTableColumn in Content Browser and Custom Query
|
|
|
|
| |
didEndSelector: of an other sheet
|
|
|
|
|
|
|
|
| |
• in Content Browser send only the first 255 bytes to the cell formatter (makes it a tick faster)
• fixed for editing in Content Browser if row contains binary blob data:
- use = instead of LIKE operator in UPDATE statement
- binary data will converted into X'...' representation
|
|
|
|
| |
SPDataAdditions in order to you that method in different classes
|
|
|
|
|
| |
- show NULL in the combobox only if NULL value is allowed for the current field
- display NULL value according to prefs' setting for NULL value
|
|
|
|
| |
for/while loops
|
|
|
|
|
|
|
| |
- base64EncodingWithLineLength:
• improved printing of blobs which contain image data
- not it supports PDF preview
- set maximum width to 100px or less
|
|
|
|
|
|
|
|
| |
- (NSArray * )currentDataResult
-- like currentResult but returns "BLOB" for blob data and a base64 encoded string for images à la <IMG SRC="data:image/auto;base64,">
- (NSString * ) base64EncodingOfData:(NSData * )data withLineLength:(unsigned int)lineLength
-- it returns a base64 encoded string of data
• changed: currentDataResult is now called for printing from the Table Content Browser
|
|
|
|
| |
copied as SQL INSERTS (up to now only in table content browser)
|
|
|
|
|
|
|
|
|
| |
- id o = NSArrayObjectAtIndex(anArray, index) :== id o = [anArray objectAtIndex:index]
- this speed up it ~3µs per call
- replaced that inline function for such calls within loops to speed up them
• used IMP function pointers for keepAlive calls within queryString:
• set -O3 (Fastest) compiler option
• allow in preference pane "Tables" to set the Limit up to 50000
|
| |
|
|
|
|
|
| |
- added drag&drop feature of file content or path resp.
- added feature to in/decrease font size via ⌘+/- or two-finger zoom gesture
|
|
|
|
|
|
|
|
| |
and for resetting it (a bit more transparent info)
- now also check the delegate if queryGaveError: method is implemented
• while adding/updating a row to the db Table Content's pane now indicates that process better via spinning wheel
• after TRUNCATE TABLE reload that table content
|
|
|
|
|
|
|
|
|
|
|
| |
SPTextViewAdditions
- that feature should be added by subclassing NSTextView
• fixed focus setting of editSheet
• fixed general issue if SP tries to execute a query which is longer than max_allowed_packet
- now it reconnects after changing max_allowed_packet (if it's editable)
- the user will be informed via a log entry about that change
- the new max_allowed_packet size will be valid during the current session; after reconnection to that db the default size will be used
|