From d70bd5befb27a72e1b9ab6e44692ad67b2f437b9 Mon Sep 17 00:00:00 2001 From: dmoagx Date: Mon, 11 Mar 2013 01:52:05 +0000 Subject: * When adding a database the servers default charset is now shown --- Source/SPDatabaseData.m | 9 +++++++-- Source/SPDatabaseDocument.m | 4 +++- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'Source') diff --git a/Source/SPDatabaseData.m b/Source/SPDatabaseData.m index 787f5e1e..f2ac6a85 100644 --- a/Source/SPDatabaseData.m +++ b/Source/SPDatabaseData.m @@ -260,8 +260,13 @@ NSInteger _sortStorageEngineEntry(NSDictionary *itemOne, NSDictionary *itemTwo, } /** - * Returns all of the database's currently available character set encodings by querying - * information_schema.character_sets. + * Returns all of the database's currently available character set encodings + * @return [{Charset: 'utf8',Description: 'UTF-8 Unicode', Default collation: 'utf8_general_ci',Maxlen: 3},...] + * The Array is never empty and never nil but results might be unreliable. + * + * On MySQL 5+ this will query information_schema.character_sets + * On MySQL 4.1+ this will query SHOW CHARACTER SET + * Else a hardcoded list will be returned */ - (NSArray *)getDatabaseCharacterSetEncodings { diff --git a/Source/SPDatabaseDocument.m b/Source/SPDatabaseDocument.m index 03c4d919..bf1221f9 100644 --- a/Source/SPDatabaseDocument.m +++ b/Source/SPDatabaseDocument.m @@ -760,7 +760,9 @@ static NSString *SPRenameDatabaseAction = @"SPRenameDatabase"; // Populate the database encoding popup button with a default menu item [databaseEncodingButton removeAllItems]; - [databaseEncodingButton addItemWithTitle:@"Default"]; + NSString *defaultCharset = [databaseDataInstance getServerDefaultCharacterSet]; + NSString *defaultItemTitle = (defaultCharset)? [NSString stringWithFormat:NSLocalizedString(@"Default (%@)",@"Add Database Sheet : Charset : Use Server Default ($1 = Charset Name)"),defaultCharset] : NSLocalizedString(@"Default",@"Add Database Sheet : Charset : Use Server Default (unknown)"); + [databaseEncodingButton addItemWithTitle:defaultItemTitle]; // Retrieve the server-supported encodings and add them to the menu NSArray *encodings = [databaseDataInstance getDatabaseCharacterSetEncodings]; -- cgit v1.2.3