aboutsummaryrefslogtreecommitdiffstats
path: root/swtmenubar/src-darwin
diff options
context:
space:
mode:
authorTor Norbye <tnorbye@google.com>2012-04-04 18:40:26 -0700
committerTor Norbye <tnorbye@google.com>2012-04-05 11:41:15 -0700
commit60b85b4ced380973f627a5882b4faae0771f0d0b (patch)
treeeff9394dca4396ea49c9b7fcc42d86280d3d5cfe /swtmenubar/src-darwin
parentca22e778d384d8b632143bfa44512ca8f58da44f (diff)
downloadsdk-60b85b4ced380973f627a5882b4faae0771f0d0b.zip
sdk-60b85b4ced380973f627a5882b4faae0771f0d0b.tar.gz
sdk-60b85b4ced380973f627a5882b4faae0771f0d0b.tar.bz2
Switch libraries from Eclipse 3.4 to Eclipse 3.6.2
This reverts commit f3d3fa912a10e20cadae813b80a66e538f77131d. Change-Id: I72e28e21db3c7f959040c1fbb9df14e4d85d0df4
Diffstat (limited to 'swtmenubar/src-darwin')
-rwxr-xr-xswtmenubar/src-darwin/com/android/menubar/internal/MenuBarEnhancerCarbon.java134
1 files changed, 0 insertions, 134 deletions
diff --git a/swtmenubar/src-darwin/com/android/menubar/internal/MenuBarEnhancerCarbon.java b/swtmenubar/src-darwin/com/android/menubar/internal/MenuBarEnhancerCarbon.java
deleted file mode 100755
index 45dacfb..0000000
--- a/swtmenubar/src-darwin/com/android/menubar/internal/MenuBarEnhancerCarbon.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Eclipse Public License, Version 1.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.eclipse.org/org/documents/epl-v10.php
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.menubar.internal;
-
-import com.android.menubar.IMenuBarCallback;
-import com.android.menubar.IMenuBarEnhancer;
-
-import org.eclipse.swt.internal.Callback;
-import org.eclipse.swt.internal.carbon.HICommand;
-import org.eclipse.swt.internal.carbon.OS;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Menu;
-
-
-/**
- * Implementation of IMenuBarEnhancer for MacOS Carbon SWT.
- */
-public final class MenuBarEnhancerCarbon implements IMenuBarEnhancer {
-
- private static final int kHICommandPreferences = ('p'<<24) + ('r'<<16) + ('e'<<8) + 'f';
- private static final int kHICommandAbout = ('a'<<24) + ('b'<<16) + ('o'<<8) + 'u';
- private static final int kHICommandServices = ('s'<<24) + ('e'<<16) + ('r'<<8) + 'v';
-
- public MenuBarEnhancerCarbon() {
- }
-
- public MenuBarMode getMenuBarMode() {
- return MenuBarMode.MAC_OS;
- }
-
- public void setupMenu(
- String appName,
- Display display,
- final IMenuBarCallback callbacks) {
-
- // Callback target
- Object target = new Object() {
- @SuppressWarnings("unused")
- int commandProc(int nextHandler, int theEvent, int userData) {
- if (OS.GetEventKind(theEvent) == OS.kEventProcessCommand) {
- HICommand command = new HICommand();
- OS.GetEventParameter(
- theEvent,
- OS.kEventParamDirectObject,
- OS.typeHICommand,
- null,
- HICommand.sizeof,
- null,
- command);
- switch (command.commandID) {
- case kHICommandPreferences:
- callbacks.onPreferencesMenuSelected();
- return OS.eventNotHandledErr; // TODO wrong
- case kHICommandAbout:
- callbacks.onAboutMenuSelected();
- return OS.eventNotHandledErr;// TODO wrong
- default:
- break;
- }
- }
- return OS.eventNotHandledErr;
- }
- };
-
- final Callback commandCallback= new Callback(target, "commandProc", 3); //$NON-NLS-1$
- int commandProc = commandCallback.getAddress();
- if (commandProc == 0) {
- commandCallback.dispose();
- log(callbacks, "%1$s: commandProc hook failed.", getClass().getSimpleName()); //$NON-NLS-1$
- return; // give up
- }
-
- // Install event handler for commands
- int[] mask = new int[] {
- OS.kEventClassCommand, OS.kEventProcessCommand
- };
- OS.InstallEventHandler(
- OS.GetApplicationEventTarget(), commandProc, mask.length / 2, mask, 0, null);
-
- // create About Eclipse menu command
- int[] outMenu = new int[1];
- short[] outIndex = new short[1];
- if (OS.GetIndMenuItemWithCommandID(
- 0, kHICommandPreferences, 1, outMenu, outIndex) == OS.noErr && outMenu[0] != 0) {
- int menu = outMenu[0];
-
- // add About menu item (which isn't present by default)
- String about = "About " + appName;
- int l = about.length();
- char buffer[] = new char[l];
- about.getChars(0, l, buffer, 0);
- int str = OS.CFStringCreateWithCharacters(OS.kCFAllocatorDefault, buffer, l);
- OS.InsertMenuItemTextWithCFString(menu, str, (short) 0, 0, kHICommandAbout);
- OS.CFRelease(str);
-
- // add separator between About & Preferences
- OS.InsertMenuItemTextWithCFString(menu, 0, (short) 1, OS.kMenuItemAttrSeparator, 0);
-
- // enable pref menu
- OS.EnableMenuCommand(menu, kHICommandPreferences);
-
- // disable services menu
- OS.DisableMenuCommand(menu, kHICommandServices);
- }
-
- // schedule disposal of callback object
- display.disposeExec(
- new Runnable() {
- public void run() {
- commandCallback.dispose();
- }
- }
- );
- }
-
- private void log(IMenuBarCallback callbacks, String format, Object... args) {
- callbacks.printError(format , args);
- }
-
-}