[Title] added Diagnosis menuitem
authorgiwoong.kim <giwoong.kim@samsung.com>
Tue, 28 Aug 2012 08:38:29 +0000 (17:38 +0900)
committergiwoong.kim <giwoong.kim@samsung.com>
Tue, 28 Aug 2012 08:38:29 +0000 (17:38 +0900)
[Type] feature
[Module] Emulator / menu
[Priority] major
[Jira#]
[Redmine#]
[Problem]
[Cause] RAM dump
[Solution]
[TestCase]

tizen/src/skin/client/src/org/tizen/emulator/skin/EmulatorSkin.java
tizen/src/skin/client/src/org/tizen/emulator/skin/comm/ICommunicator.java
tizen/src/skin/maruskin_operation.c
tizen/src/skin/maruskin_operation.h
tizen/src/skin/maruskin_server.c

index c9ed794..6924171 100644 (file)
@@ -1905,6 +1905,24 @@ public class EmulatorSkin {
 
        }
 
+       private Menu createDiagnosisMenu(Shell shell) {
+               Menu menu = new Menu(shell, SWT.DROP_DOWN);
+
+               final MenuItem ramdumpItem = new MenuItem(menu, SWT.PUSH);
+               ramdumpItem.setText("&Ram Dump");
+
+               ramdumpItem.addSelectionListener(new SelectionAdapter() {
+                       @Override
+                       public void widgetSelected( SelectionEvent e ) {
+                               logger.info("Ram dump menu is selected");
+
+                               communicator.sendToQEMU(SendCommand.RAM_DUMP, null);
+                       }
+               });
+
+               return menu;
+       }
+
        private Menu createAdvancedMenu( final Shell shell ) {
 
                final Menu menu = new Menu( shell, SWT.DROP_DOWN );
@@ -1971,8 +1989,8 @@ public class EmulatorSkin {
                                if ( item.getSelection() ) {
                                        boolean on = item.equals( usbOnItem );
                                        isOnUsbKbd = on;
-                                       communicator
-                                                       .sendToQEMU( SendCommand.USB_KBD, new BooleanData( on, SendCommand.USB_KBD.toString() ) );
+                                       communicator.sendToQEMU(
+                                                       SendCommand.USB_KBD, new BooleanData(on, SendCommand.USB_KBD.toString()) );
                                }
 
                        }
@@ -1983,11 +2001,14 @@ public class EmulatorSkin {
 
                usbKeyboardItem.setMenu( usbKeyBoardMenu );
 
-               /*
-               // Diagnosis menu
-               final MenuItem diagnosisItem = new MenuItem(menu, SWT.PUSH);
-               diagnosisItem.setText("Diagnosis");
+               /* Diagnosis menu */
+               final MenuItem diagnosisItem = new MenuItem(menu, SWT.CASCADE);
+               diagnosisItem.setText("&Diagnosis");
+               //diagnosisItem.setImage(imageRegistry.getIcon(IconName.XXX));
+               Menu diagnosisMenu = createDiagnosisMenu(menu.getShell());
+               diagnosisItem.setMenu(diagnosisMenu);
 
+               /*
                // Force close menu
                final MenuItem forceCloseItem = new MenuItem(menu, SWT.PUSH);
                forceCloseItem.setText("Force Close");
index f185d27..b2cac84 100644 (file)
@@ -170,6 +170,7 @@ public interface ICommunicator extends Runnable {
                USB_KBD( (short)15 ),
                SCREEN_SHOT( (short)16 ),
                DETAIL_INFO( (short)17 ),
+               RAM_DUMP( (short)18 ),
                
                RESPONSE_HEART_BEAT( (short)900 ),
                CLOSE( (short)998 ),
index 786db82..0789878 100644 (file)
@@ -383,6 +383,11 @@ void onoff_usb_kbd( int on )
     mloop_evcmd_usbkbd(on);
 }
 
+void ram_dump(void) {
+    INFO("ram dump!\n");
+
+    //TODO:
+}
 
 void request_close( void )
 {
index 7409d7a..4c83260 100644 (file)
@@ -71,6 +71,8 @@ void open_shell(void);
 
 void onoff_usb_kbd( int on );
 
+void ram_dump(void);
+
 void request_close( void );
 
 void shutdown_qemu_gracefully( void );
index 6e352a3..6ecc726 100644 (file)
@@ -102,6 +102,7 @@ enum {
     RECV_USB_KBD = 15,
     RECV_SCREEN_SHOT = 16,
     RECV_DETAIL_INFO = 17,
+    RECV_RAM_DUMP = 18,
     RECV_RESPONSE_HEART_BEAT = 900,
     RECV_CLOSE = 998,
     RECV_RESPONSE_SHUTDOWN = 999,
@@ -751,6 +752,13 @@ static void* run_skin_server( void* args ) {
 
                     break;
                 }
+                case RECV_RAM_DUMP: {
+                    log_cnt += sprintf(log_buf + log_cnt, "RECV_RAM_DUMP ==\n");
+                    TRACE(log_buf);
+
+                    ram_dump();
+                    break;
+                }
                 case RECV_RESPONSE_HEART_BEAT: {
                     log_cnt += sprintf( log_buf + log_cnt, "RECV_RESPONSE_HEART_BEAT ==\n" );
 //                    TRACE( log_buf );