| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
- preserve table width/order after editing
- updated data source code to avoid having the data twice in the memory
|
|
|
|
|
|
| |
- 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)
|
|
|
|
|
|
| |
- All menu items which show a panel of some kind before completing the action need to have "..." after the menu item name.
- All menu items which do something destructive (drop table, truncate table) need to default to the CANCEL button in their alert message.
|
|
|
|
|
|
|
|
| |
into sheets)
• changed the alert for "Truncate table"
- "Are you sure you want to delete ALL table records in the..."
• added BWToolkitFramework copyright notice to credits.rtf
|
|
|
|
| |
master data cache; removes the duplicate CREATE TABLE command on table load, reducing overall queries and so improving speed further
|
|
|
|
|
|
| |
- (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
|
|
|
|
|
|
|
| |
- Add TABLE INFORMATION toggle button - shows/hides pane
- Used new UI elements in Copy Table Syntax HUD window
- Misc other changes
- NOTE: more splitview changes to be made
|
|
|
|
|
|
|
| |
other table
• fixed issue while moving a field description row in Structure View that "Extra" field content wasn't moved
• fixed issue that "Extra" field content was appended without leading space in "addRowToDB"
|
|
|
|
|
|
|
|
|
| |
selector of an other sheet:
- introduced -(void)showErrorSheetWithTitle:(id)error
-- error is an array of title and message
- this can be called via [self performSelector:@selector(showErrorSheetWithTitle:) withObject: afterDelay:]
- this avoids a crash of the current table window
|
|
|
|
|
|
|
|
| |
• 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
|
| |
|
|
|
|
|
|
| |
containing a `
• some minor code cleaning and commenting
|
|
|
|
| |
containing NULL values and editing data in tables with names containing backticks
|
|
|
|
| |
such fields which can be identified bijectively by the given table data
|
|
|
|
| |
cause of the content tab not loading for some users
|
|
|
|
| |
name (not that one defined via "AS") if the result columns' table source is the same, otherwise <table>.
|
|
|
|
|
|
| |
- CustomQuery table now allows to copy selected rows as SQL INSERT (table name is set to "<table>"
- if a field is a blob display only the first 255 bytes/chars in the CQ table for speed reasons
- blob fields in CQ does not listen to the pref setting for "LoadBlobsAsNeeded" because it could happen that no one-to-one relation to their original data will be found
|
|
|
|
|
|
|
|
|
| |
if 127.0.0.1 was retried automatically.
- Store the SSH debug logs and allow viewing on connection error
- Clean up CMMCPConnections on connection failure
- Fix connection keepalive instantiation
|
|
|
|
|
| |
- 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
|
| |
|
|
|
|
| |
delegate globally.
|
| |
|
|
|
|
| |
before Sparkle relaunches the app.
|
| |
|
|
|
|
|
|
|
|
| |
- Since we are using mysql_real_query() there is no need to generate a \0 terminated cString.
- The disadvantage of using UTF8String is that it returns NULL if the encoding fails.
- To process each encoding equally we can now use [NSString dataUsingEncoding:enc allowLossyConversion:lossy]. In oder to avoid the overhead while calling it the following inline function is introduced:
NSStringDataUsingLossyEncoding(aStr, enc, lossy) := [aStr dataUsingEncoding:enc allowLossyConversion:lossy]
• import of CSV: code cleaned and optimized for speed a little
|
|
|
|
|
|
|
| |
- base64EncodingWithLineLength:
• improved printing of blobs which contain image data
- not it supports PDF preview
- set maximum width to 100px or less
|
|
|
|
| |
friendlier error message dialogs.
|
|
|
|
|
|
|
|
| |
- (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)
|
|
|
|
|
| |
- minimum resolution now is set to 0.1ms
- display “< 0,1ms” if time is less than minimum resolution
|
|
|
|
|
|
|
| |
to editSheet
• fixed tiny issue for narrow-down completion
|
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
|
|
|
| |
- NSData *d = [aStr UTF8String]; :== NSData *d = NSStrignUTF8String(aStr) but a tick faster
• implemented NSStringUTF8String() in queryString: and for the lex parser (syntax highlighting)
|
|
|
|
|
|
| |
- cStringFromString function pointer is cached
- if utf8 encoding make usage of UTF8String but implemented inside of queryString (otherwise no effect)
• tiny code cosmetics
|
| |
|
|
|
|
|
|
| |
- now [delegate willQueryString:] will only be called if user set ConsoleEnableLogging to YES (~8% faster)
--Note: this option to disable logging should be placed in the Import dialog with default = NO for importing as well
|
|
|
|
|
|
|
|
|
| |
- cache the function pointer for delegate willPerformQuery:
- if Console Log window is NOT visible suppress reloadData and scrolling to last line (this speeds it up remarkably); if user opens the Console log window it will be synchronized
- timeIntervall for execution time will be divide by CLOCKS_PER_SEC in [NSString stringForTimeInterval]
- removed for utf8 enc in cString the return UTF8String (no significant difference)
• now execution time shows only the time for mysql_real_query
|
|
|
|
|
|
|
| |
- caching of delegate && respondsToSelector
- use clock() to calculate query's execution time
• converting to cString: if utf8 encoding make usage of UTF8String
• added to StringAddition to display µs for a timeIntervall
|
|
|
|
|
| |
- now it also recognizes such keywords with leading comments
- still further improvements are needed
|
|
|
|
|
|
|
| |
after the selected one was commented out
- it's fixed now
- improved code to ensure that in this case AFTER ... will be only appended for a new field
|
|
|
|
|
|
|
|
|
|
| |
- Restored MySQL 3 compatibility
- max_packet_size details are now cached per connection for query speedup and to fix network recovery problems
- Improved disconnection recovery
- Errors during results fetching are correctly detected for the first time
- Error strings are now correctly set in several places
- The correct number of rows affected is now returned for queries which triggered reconnects or max_packet_size increases
|
|
|
|
|
|
|
|
|
|
|
| |
- register notification "SMySQLQueryWillBePerformed" to be able to identify the sender of the current query
- (void)willPerformQuery:(NSNotification *)notification
-- receives the "SMySQLQueryWillBePerformed" notification
-- if CustomQuery was the sender retryAllowed will be set to NO
• changed: now using mysql_real_query() because we've already calculated the length of the current query
• changed: now the query length will be checked in beforehand against max_allowed_packet
- if max_allowed_packet is editable increase it and reconnect
- if not outputs an informative error alert
|
|
|
|
| |
is not a BASE TABLE
|
|
|
|
| |
- if no field definition is selected "Duplicate Field" copies the last field structure defined in the table
|
|
|
|
| |
table show an alert saying that this isn't allowed
|