From 255fca9420ea0634a8c6ec4700f33771d9316166 Mon Sep 17 00:00:00 2001 From: "giwoong.kim" Date: Thu, 26 Jul 2012 14:37:26 +0900 Subject: [PATCH] [Title] using java reflection in getWindowHandleId() [Type] feature [Module] Emulator / skin [Priority] major [Jira#] [Redmine#] [Problem] [Cause] support mac [Solution] [TestCase] --- .../src/org/tizen/emulator/skin/EmulatorSkin.java | 52 ++++++++++++++-------- 1 file changed, 34 insertions(+), 18 deletions(-) diff --git a/tizen/src/skin/client/src/org/tizen/emulator/skin/EmulatorSkin.java b/tizen/src/skin/client/src/org/tizen/emulator/skin/EmulatorSkin.java index b34e5c2..677a569 100644 --- a/tizen/src/skin/client/src/org/tizen/emulator/skin/EmulatorSkin.java +++ b/tizen/src/skin/client/src/org/tizen/emulator/skin/EmulatorSkin.java @@ -306,39 +306,55 @@ public class EmulatorSkin { long windowHandleId = 0; - if ( SwtUtil.isLinuxPlatform() ) { + /* org.eclipse.swt.widgets.Widget */ + if (SwtUtil.isLinuxPlatform()) { try { - Field field = lcdCanvas.getClass().getField( "embeddedHandle" ); - windowHandleId = field.getLong( lcdCanvas ); - logger.info( "lcdCanvas.embeddedHandle:" + windowHandleId ); - } catch ( IllegalArgumentException e ) { - logger.log( Level.SEVERE, e.getMessage(), e ); + Field field = lcdCanvas.getClass().getField("embeddedHandle"); + windowHandleId = field.getLong(lcdCanvas); + logger.info("lcdCanvas.embeddedHandle:" + windowHandleId); + } catch (IllegalArgumentException e) { + logger.log(Level.SEVERE, e.getMessage(), e); shutdown(); - } catch ( IllegalAccessException e ) { - logger.log( Level.SEVERE, e.getMessage(), e ); + } catch (IllegalAccessException e ) { + logger.log(Level.SEVERE, e.getMessage(), e); shutdown(); - } catch ( SecurityException e ) { - logger.log( Level.SEVERE, e.getMessage(), e ); + } catch (SecurityException e ) { + logger.log(Level.SEVERE, e.getMessage(), e); shutdown(); - } catch ( NoSuchFieldException e ) { - logger.log( Level.SEVERE, e.getMessage(), e ); + } catch (NoSuchFieldException e) { + logger.log(Level.SEVERE, e.getMessage(), e); shutdown(); } - } else if ( SwtUtil.isWindowsPlatform() ) { + } else if (SwtUtil.isWindowsPlatform()) { - logger.info( "lcdCanvas.handle:" + lcdCanvas.handle ); - windowHandleId = lcdCanvas.handle; + try { + Field field = lcdCanvas.getClass().getField("handle"); + windowHandleId = field.getLong( lcdCanvas ); + logger.info("lcdCanvas.handle:" + windowHandleId); + } catch (IllegalArgumentException e) { + logger.log(Level.SEVERE, e.getMessage(), e); + shutdown(); + } catch (IllegalAccessException e) { + logger.log(Level.SEVERE, e.getMessage(), e); + shutdown(); + } catch (SecurityException e) { + logger.log(Level.SEVERE, e.getMessage(), e); + shutdown(); + } catch (NoSuchFieldException e) { + logger.log(Level.SEVERE, e.getMessage(), e); + shutdown(); + } - } else if ( SwtUtil.isMacPlatform() ) { + } else if (SwtUtil.isMacPlatform()) { // not supported windowHandleId = 0; } else { - logger.severe( "Not Supported OS platform:" + SWT.getPlatform() ); - System.exit( -1 ); + logger.severe("Not Supported OS platform:" + SWT.getPlatform()); + System.exit(-1); } return windowHandleId; -- 2.7.4