From 6d018a4e2eb0505776092e6f626d70b1ad3d5295 Mon Sep 17 00:00:00 2001 From: Bibiko Date: Mon, 22 Feb 2010 14:24:17 +0000 Subject: =?UTF-8?q?=E2=80=A2=20initial=20work=20to=20give=20the=20chance?= =?UTF-8?q?=20to=20reset=20the=20table's=20AUTO=5FINCREMENT=20value=20-=20?= =?UTF-8?q?not=20yet=20active?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Interfaces/English.lproj/DBView.xib | 589 +++++++++++++++++++++++++++++++++--- Source/TableDocument.m | 21 ++ Source/TableSource.h | 3 + Source/TableSource.m | 25 ++ 4 files changed, 593 insertions(+), 45 deletions(-) diff --git a/Interfaces/English.lproj/DBView.xib b/Interfaces/English.lproj/DBView.xib index a54582fb..0b372e69 100644 --- a/Interfaces/English.lproj/DBView.xib +++ b/Interfaces/English.lproj/DBView.xib @@ -23,7 +23,7 @@ YES - + YES @@ -873,7 +873,7 @@ source - + 256 YES @@ -2135,6 +2135,7 @@ {{10, 7}, {706, 544}} + Structure @@ -2891,7 +2892,7 @@ customQuery - + 256 YES @@ -3798,7 +3799,6 @@ {{10, 7}, {706, 544}} - Custom Query @@ -5284,14 +5284,14 @@ - + 134217731 YES YES YES - + @@ -6267,7 +6267,7 @@ {600, 127} {260, 127} - + 256 YES @@ -6371,6 +6371,7 @@ {260, 127} + {{0, 0}, {1440, 878}} {260, 149} @@ -6836,6 +6837,190 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {213, 129} {3.40282e+38, 3.40282e+38} + + 7 + 2 + {{131, 407}, {255, 95}} + 611845120 + Reset Auto Increment + NSWindow + + {3.40282e+38, 3.40282e+38} + {255, 95} + + + 301 + + YES + + + 268 + {{175, 13}, {65, 28}} + + 1 + YES + + 67239424 + 134348800 + OK + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + + 268 + {{112, 13}, {65, 28}} + + YES + + 67239424 + 134348800 + Cancel + + + -2038284033 + 129 + + Gw + 200 + 25 + + + + + 268 + {{17, 58}, {153, 14}} + + YES + + 68288064 + 272761856 + Reset AUTO_INCREMENT to: + + + + + + + + + 268 + {{175, 55}, {60, 19}} + + YES + + -1804468671 + 4326400 + + + + YES + + YES + allowsFloats + formatterBehavior + lenient + minimum + minimumIntegerDigits + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + -∞ + + + +∞ + + + #0 + #0 + + + + + + + + NaN + + YES + + + YES + + + + + + 0 + 0 + YES + NO + 1 + AAAAAAAAAAAAAAAAAAAAAA + + + 3 + YES + YES + YES + + . + , + NO + YES + NO + + + YES + + + + + + + 12 + {{-3, 92}, {264, 5}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + 3 + 2 + 0 + NO + + + {255, 95} + + {{0, 0}, {1280, 1002}} + {255, 117} + {3.40282e+38, 3.40282e+38} + 1 2 @@ -7458,7 +7643,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {3.40282e+38, 3.40282e+38} {329, 348} - + 256 YES @@ -7859,7 +8044,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {329, 348} - {{0, 0}, {1680, 1028}} {329, 370} @@ -8157,7 +8341,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {3.40282e+38, 3.40282e+38} {350, 200} - + 256 YES @@ -8166,7 +8350,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 257 {{320, 5}, {76, 28}} - YES 67239424 @@ -8188,7 +8371,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 257 {{246, -215.5}, {76, 28}} - YES 67239424 @@ -8210,7 +8392,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 260 {{15, 5}, {111, 28}} - YES -2080244224 @@ -8231,7 +8412,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 266 {{9, 316}, {385, 14}} - YES 68288064 @@ -8258,7 +8438,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 2322 {411, 14} - @@ -8320,7 +8499,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {{1, 1}, {411, 264}} - @@ -8332,7 +8510,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 -2147483392 {{-100, -100}, {11, 133}} - 256 _doScroller: @@ -8343,7 +8520,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 -2147483392 {{-100, -100}, {87, 18}} - 1 _doScroller: @@ -8353,7 +8529,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {{-1, 42}, {413, 266}} - 514 @@ -8365,7 +8540,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 260 {{124, 5}, {76, 28}} - YES 67239424 @@ -8384,8 +8558,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {411, 341} - - {{0, 0}, {1680, 1028}} {350, 222} @@ -8404,7 +8576,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {3.40282e+38, 3.40282e+38} {213, 107} - + 256 YES @@ -8413,7 +8585,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 264 {{20, 233}, {140, 14}} - YES 67239424 @@ -8440,7 +8611,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 2322 {352, 14} - @@ -8490,7 +8660,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {{1, 1}, {352, 178}} - @@ -8502,7 +8671,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 256 {{353, 1}, {11, 178}} - 256 _doScroller: @@ -8513,7 +8681,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 -2147483392 {{-100, -100}, {87, 18}} - 257 _doScroller: @@ -8523,7 +8690,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {{20, 45}, {365, 180}} - 18 @@ -8535,7 +8701,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 257 {{314, 13}, {76, 28}} - YES 67239424 @@ -8557,7 +8722,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 257 {{350, -130}, {80, 28}} - YES 67239424 @@ -8576,8 +8740,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {405, 267} - - {{0, 0}, {1440, 878}} {213, 129} @@ -9001,7 +9163,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {600, 127} {260, 127} - + 256 YES @@ -9010,7 +9172,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 266 {{17, 93}, {235, 14}} - YES 67239488 @@ -9027,7 +9188,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 266 {{19, 67}, {220, 18}} - YES -1804468671 @@ -9045,7 +9205,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 289 {{166, 13}, {79, 28}} - 1 YES @@ -9069,7 +9228,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 257 {{91, 13}, {77, 28}} - YES 67239424 @@ -9091,7 +9249,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 266 {{18, 43}, {224, 18}} - YES 67239424 @@ -9111,8 +9268,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 {260, 127} - - {{0, 0}, {1680, 1028}} {260, 149} @@ -11362,6 +11517,24 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 + + + YES + YES + + + 2147483647 + + + + + + Reset AUTO_INCREMENT… + + 2147483647 + + + @@ -15397,6 +15570,86 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 6828 + + + resetAutoIncrement: + + + + 6831 + + + + resetAutoIncrementSheet + + + + 6843 + + + + resetAutoIncrementValue + + + + 6844 + + + + closeSheet: + + + + 6845 + + + + closeSheet: + + + + 6846 + + + + initialFirstResponder + + + + 6847 + + + + nextKeyView + + + + 6848 + + + + nextKeyView + + + + 6849 + + + + nextKeyView + + + + 6850 + + + + delegate + + + + 6851 + @@ -20211,6 +20464,8 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 YES + + Table Indexes Menu @@ -21705,6 +21960,109 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 + + 6829 + + + + + 6830 + + + + + 6832 + + + YES + + + + Reset Auto Increment Sheet + + + 6833 + + + YES + + + + + + + + + + 6834 + + + YES + + + + + + 6835 + + + + + 6836 + + + YES + + + + + + 6837 + + + + + 6838 + + + YES + + + + + + 6839 + + + + + 6840 + + + YES + + + + + + 6841 + + + YES + + + + + + 6842 + + + + + 6852 + + + @@ -23030,6 +23388,29 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 6823.IBPluginDependency 6823.ImportedFromIB2 6824.IBPluginDependency + 6829.IBPluginDependency + 6830.IBPluginDependency + 6832.IBEditorWindowLastContentRect + 6832.IBPluginDependency + 6832.IBWindowTemplateEditedContentRect + 6832.NSWindowTemplate.visibleAtLaunch + 6832.windowTemplate.hasMaxSize + 6832.windowTemplate.hasMinSize + 6832.windowTemplate.maxSize + 6832.windowTemplate.minSize + 6833.IBPluginDependency + 6834.IBPluginDependency + 6835.IBPluginDependency + 6836.IBPluginDependency + 6837.IBPluginDependency + 6838.IBPluginDependency + 6839.IBPluginDependency + 6840.IBPluginDependency + 6841.IBPluginDependency + 6842.IBNumberFormatterBehaviorMetadataKey + 6842.IBNumberFormatterLocalizesFormatMetadataKey + 6842.IBPluginDependency + 6852.IBPluginDependency 69.ImportedFromIB2 711.IBPluginDependency 711.ImportedFromIB2 @@ -23840,10 +24221,10 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{95, 206}, {944, 550}} + {{62, 156}, {944, 550}} com.apple.InterfaceBuilder.CocoaPlugin - {{95, 206}, {944, 550}} + {{62, 156}, {944, 550}} {{62, 352}, {845, 504}} @@ -24541,7 +24922,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{873, 547}, {141, 23}} + {{825, 570}, {233, 53}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin {{886, 867}, {231, 113}} @@ -24958,6 +25339,29 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{580, 784}, {255, 95}} + com.apple.InterfaceBuilder.CocoaPlugin + {{580, 784}, {255, 95}} + + + + {3.40282e+38, 3.40282e+38} + {255, 95} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -25102,7 +25506,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 - 6828 + 6852 @@ -26712,6 +27116,101 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8 + + YES + + TableSource + NSObject + + YES + + YES + addField: + chooseIndexType: + closeKeySheet: + closeSheet: + copyField: + openIndexSheet: + reloadTable: + removeField: + removeIndex: + resetAutoIncrement: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + addFieldButton + addIndexButton + chooseKeyButton + copyFieldButton + editTableButton + indexNameField + indexSheet + indexTypeField + indexView + indexedColumnsField + keySheet + reloadFieldsButton + reloadIndexesButton + removeFieldButton + removeIndexButton + resetAutoIncrementSheet + resetAutoIncrementValue + structureGrabber + tableDataInstance + tableDocumentInstance + tableSourceView + tableWindow + tablesListInstance + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + IBDocumentRelativeSource + ../../Source/TableSource.h + + + YES diff --git a/Source/TableDocument.m b/Source/TableDocument.m index 2d15e4e2..b8261a8e 100644 --- a/Source/TableDocument.m +++ b/Source/TableDocument.m @@ -3608,6 +3608,27 @@ } +#pragma mark - +#pragma mark General sheet delegate methods + +- (NSRect)window:(NSWindow *)window willPositionSheet:(NSWindow *)sheet usingRect:(NSRect)rect { + + // Locate the sheet "Reset Auto Increment" just beneath the chosen index row + if([[sheet title] isEqualToString:@"Reset Auto Increment"]) { + + id it = [tableSourceInstance valueForKeyPath:@"indexView"]; + NSRect mwrect = [[NSApp mainWindow] frame]; + NSRect ltrect = [[tablesListInstance valueForKeyPath:@"tablesListView"] frame]; + NSRect rowrect = [it rectOfRow:[it selectedRow]]; + rowrect.size.width = mwrect.size.width - ltrect.size.width; + rowrect.origin.y -= [it rowHeight]/2.0f+2; + return [it convertRect:rowrect toView:nil]; + + } else + return rect; + +} + #pragma mark - #pragma mark SplitView delegate methods diff --git a/Source/TableSource.h b/Source/TableSource.h index 10c82dae..e09dd16b 100644 --- a/Source/TableSource.h +++ b/Source/TableSource.h @@ -35,6 +35,8 @@ IBOutlet id tableWindow; IBOutlet id indexSheet; IBOutlet id keySheet; + IBOutlet id resetAutoIncrementSheet; + IBOutlet id resetAutoIncrementValue; IBOutlet id tableSourceView; IBOutlet id indexView; IBOutlet id addFieldButton; @@ -73,6 +75,7 @@ - (IBAction)copyField:(id)sender; - (IBAction)removeField:(id)sender; - (IBAction)removeIndex:(id)sender; +- (IBAction)resetAutoIncrement:(id)sender; // Index sheet methods - (IBAction)openIndexSheet:(id)sender; diff --git a/Source/TableSource.m b/Source/TableSource.m index 79a7f4ae..f704dcec 100644 --- a/Source/TableSource.m +++ b/Source/TableSource.m @@ -456,6 +456,20 @@ loads aTable, put it in an array, update the tableViewColumns and reload the tab [alert beginSheetModalForWindow:tableWindow modalDelegate:self didEndSelector:@selector(sheetDidEnd:returnCode:contextInfo:) contextInfo:(hasForeignKey) ? @"removeIndexAndForeignKey" : @"removeIndex"]; } +- (IBAction)resetAutoIncrement:(id)sender +{ + + // Begin the sheet + [NSApp beginSheet:resetAutoIncrementSheet + modalForWindow:tableWindow + modalDelegate:self + didEndSelector:@selector(sheetDidEnd:returnCode:contextInfo:) + contextInfo:@"resetAutoIncrement"]; + + [resetAutoIncrementValue setStringValue:@"1"]; + +} + #pragma mark - #pragma mark Index sheet methods @@ -925,6 +939,12 @@ fetches the result as an array with a dictionary for each row in it return ([indexView numberOfSelectedRows] == 1); } + // Reset AUTO_INCREMENT + if ([menuItem action] == @selector(resetAutoIncrement:)) { + return NO; + return ([indexView numberOfSelectedRows] == 1 ); + } + return YES; } @@ -988,6 +1008,11 @@ fetches the result as an array with a dictionary for each row in it else if ([contextInfo isEqualToString:@"cannotremovefield"]) { ; } + else if ([contextInfo isEqualToString:@"resetAutoIncrement"]) { + if (returnCode == NSAlertDefaultReturn) { + // ALTER TABLE tbl_name AUTO_INCREMENT = N + } + } else alertSheetOpened = NO; } -- cgit v1.2.3