/*
* Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
package com.sun.webkit;
import com.sun.webkit.graphics.
WCFont;
public abstract class
PopupMenu {
private long
pdata;
protected abstract void
show(
WebPage page, int
x, int
y, int
width);
protected abstract void
hide();
protected abstract void
setSelectedItem(int
index);
protected abstract void
appendItem(
String itemText, boolean
isLabel, boolean
isSeparator,
boolean
isEnabled, int
bgColor, int
fgColor,
WCFont font);
protected void
notifySelectionCommited(int
index) {
twkSelectionCommited(
pdata,
index);
}
protected void
notifyPopupClosed() {
twkPopupClosed(
pdata);
}
private static
PopupMenu fwkCreatePopupMenu(long
pData) {
PopupMenu popupMenu =
Utilities.
getUtilities().
createPopupMenu();
popupMenu.
pdata =
pData;
return
popupMenu;
}
private void
fwkShow(
WebPage page, int
x, int
y, int
width) {
assert(
page != null);
show(
page,
x,
y,
width);
}
private void
fwkHide() {
hide();
}
private void
fwkSetSelectedItem(int
index) {
setSelectedItem(
index);
}
private void
fwkAppendItem(
String itemText, boolean
isLabel, boolean
isSeparator,
boolean
isEnabled, int
bgColor, int
fgColor,
WCFont font)
{
appendItem(
itemText,
isLabel,
isSeparator,
isEnabled,
bgColor,
fgColor,
font);
}
private void
fwkDestroy() {
pdata = 0;
}
private native void
twkSelectionCommited(long
pdata, int
index);
private native void
twkPopupClosed(long
pdata);
}