diff options
author | rowanbeentje <rowan@beent.je> | 2013-03-31 23:05:36 +0000 |
---|---|---|
committer | rowanbeentje <rowan@beent.je> | 2013-03-31 23:05:36 +0000 |
commit | cca030a98637bec8e8a731efb7ad15b3f458b115 (patch) | |
tree | d2573148088d98d3ab7e765bf8933499169cc119 /Source/SPCustomQuery.h | |
parent | fb59ce3e1a183c8406912b9b21c5b5621497d54e (diff) | |
download | sequelpro-cca030a98637bec8e8a731efb7ad15b3f458b115.tar.gz sequelpro-cca030a98637bec8e8a731efb7ad15b3f458b115.tar.bz2 sequelpro-cca030a98637bec8e8a731efb7ad15b3f458b115.zip |
Combine the "Run All" and "Run Current/Previous/Selection" buttons into a single button with dropdown menu with ability to change the default action:
- Create a new SPComboPopupButton class; this subclasses NSPopupButton to retain the ability to show the popup menu, but only when the right-hand side of the button is pressed, allowing the rest of the button to perform the click action
- Combine the previous two "Run" buttons on the Custom Query view into a new SPComboPopupButton
- Move the Run menu items from the gear menu into the Run button popup menu so they can be discovered more easily (and the shortcuts seen more easily)
- Add a menu item to switch the button's default action, which also swaps all associated shortcuts
- Clean up associated logic
This implements Issue #1569
Diffstat (limited to 'Source/SPCustomQuery.h')
-rw-r--r-- | Source/SPCustomQuery.h | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/Source/SPCustomQuery.h b/Source/SPCustomQuery.h index 896889f1..4ce76b57 100644 --- a/Source/SPCustomQuery.h +++ b/Source/SPCustomQuery.h @@ -101,11 +101,16 @@ IBOutlet id affectedRowsText; IBOutlet id valueSheet; IBOutlet id valueTextField; - IBOutlet id runSelectionButton; + + // Hooks for old layouts using just the Run All button IBOutlet id runAllButton; - IBOutlet NSMenuItem *runSelectionMenuItem; - IBOutlet NSMenuItem *runAllMenuItem; + // Hooks for layouts using the new single button with interchangeable actions + IBOutlet id runPrimaryActionButton; + IBOutlet id runPrimaryActionButtonAsSelection; + IBOutlet NSMenuItem *runPrimaryActionMenuItem; + IBOutlet NSMenuItem *runSecondaryActionMenuItem; + IBOutlet NSMenuItem *shiftLeftMenuItem; IBOutlet NSMenuItem *shiftRightMenuItem; IBOutlet NSMenuItem *completionListMenuItem; @@ -144,8 +149,8 @@ NSString *usedQuery; NSRange currentQueryRange; NSArray *currentQueryRanges; + BOOL currentQueryBeforeCaret; - BOOL selectionButtonCanBeEnabled; NSString *mySQLversion; NSTableColumn *sortColumn; @@ -199,13 +204,16 @@ @property (assign) SPTablesList* tablesListInstance; @property (assign) SPTextView *textView; @property (assign) SPCopyTable *customQueryView; -@property (assign) NSButton* runAllButton; @property (assign) id affectedRowsText; #endif -@property(assign) BOOL textViewWasChanged; +@property (assign) NSButton* runAllButton; +@property (assign) BOOL textViewWasChanged; // IBAction methods +- (IBAction)runPrimaryQueryAction:(id)sender; +- (IBAction)runSecondaryQueryAction:(id)sender; +- (IBAction)switchDefaultQueryAction:(id)sender; - (IBAction)runAllQueries:(id)sender; - (IBAction)runSelectedQueries:(id)sender; - (IBAction)chooseQueryFavorite:(id)sender; @@ -238,6 +246,10 @@ - (NSRange)queryTextRangeForQuery:(NSInteger)anIndex startPosition:(NSUInteger)position; - (void) updateStatusInterfaceWithDetails:(NSDictionary *)errorDetails; +// Interface setup +- (void)updateQueryInteractionInterface; +- (void)updateContextualRunInterface; + // Query load actions - (void) initQueryLoadTimer; - (void) clearQueryLoadTimer; |