diff --git a/src/AppDelegate.mm b/src/AppDelegate.mm
index 9064c71..ac8b630 100644
--- a/src/AppDelegate.mm
+++ b/src/AppDelegate.mm
@@ -35,6 +35,7 @@
 
 #import "Constants.h"
 #import "RingWizardWC.h"
+#import "DialpadWC.h"
 
 #if ENABLE_SPARKLE
 @interface AppDelegate() <SUUpdaterDelegate>
@@ -44,6 +45,7 @@
 
 @property RingWindowController* ringWindowController;
 @property RingWizardWC* wizard;
+@property DialpadWC* dialpad;
 @property (nonatomic, strong) dispatch_queue_t scNetworkQueue;
 @property (nonatomic, assign) SCNetworkReachabilityRef currentReachability;
 
@@ -198,13 +200,6 @@
     }
 }
 
-/**
- * click in MainMenu "Setup Ring"
- */
-- (IBAction)showWizard:(id)sender {
-    [self showWizard];
-}
-
 - (void) showWizard
 {
     if(self.wizard == nil) {
@@ -221,6 +216,15 @@
     [self.ringWindowController.window makeKeyAndOrderFront:self];
 }
 
+- (void) showDialpad
+{
+    if (self.dialpad == nil) {
+        self.dialpad = [[DialpadWC alloc] initWithWindowNibName:@"Dialpad"];
+    }
+    [self.dialpad.window makeKeyAndOrderFront:self];
+}
+
+
 - (BOOL) checkForRingAccount
 {
     BOOL foundRingAcc = NO;
