18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/* 28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Copyright (C) 2006 Zack Rusin <zack@kde.org> 38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Copyright (C) 2007 Staikos Computing Services Inc. <info@staikos.net> 48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Redistribution and use in source and binary forms, with or without 68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * modification, are permitted provided that the following conditions 78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * are met: 88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 1. Redistributions of source code must retain the above copyright 98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * notice, this list of conditions and the following disclaimer. 108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 2. Redistributions in binary form must reproduce the above copyright 118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * notice, this list of conditions and the following disclaimer in the 128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * documentation and/or other materials provided with the distribution. 138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY 158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR 188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "config.h" 288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "ContextMenuItem.h" 29545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch 308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "ContextMenu.h" 318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectnamespace WebCore { 338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectContextMenuItem::ContextMenuItem(ContextMenu* subMenu) 358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.type = SubmenuType; 378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.action = ContextMenuItemTagNoAction; 388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project if (subMenu) 398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project setSubMenu(subMenu); 408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectContextMenuItem::ContextMenuItem(ContextMenuItemType type, ContextMenuAction action, 438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project const String& title, ContextMenu* subMenu) 448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.type = type; 468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.action = action; 478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.title = title; 488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project if (subMenu) 498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project setSubMenu(subMenu); 508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 526b70adc33054f8aee8c54d0f460458a9df11b8a5Russell BrennerContextMenuItem::ContextMenuItem(ContextMenuItemType, ContextMenuAction, const String&, bool, bool) 536b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner{ 546b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner // FIXME: Implement 556b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner} 566b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner 576b70adc33054f8aee8c54d0f460458a9df11b8a5Russell BrennerContextMenuItem::ContextMenuItem(ContextMenuAction, const String&, bool, bool, Vector<ContextMenuItem>&) 586b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner{ 596b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner // FIXME: Implement 606b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner} 616b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner 628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectContextMenuItem::~ContextMenuItem() 638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectPlatformMenuItemDescription ContextMenuItem::releasePlatformDescription() 678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project return m_platformDescription; 698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectContextMenuItemType ContextMenuItem::type() const 728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project return m_platformDescription.type; 748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid ContextMenuItem::setType(ContextMenuItemType type) 778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.type = type; 798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectContextMenuAction ContextMenuItem::action() const 820bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project return m_platformDescription.action; 848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid ContextMenuItem::setAction(ContextMenuAction action) 878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.action = action; 898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 910bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochString ContextMenuItem::title() const 928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project return m_platformDescription.title; 948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid ContextMenuItem::setTitle(const String& title) 978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.title = title; 998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 1008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectPlatformMenuDescription ContextMenuItem::platformSubMenu() const 1038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 1048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project return &m_platformDescription.subMenuItems; 1058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 1068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid ContextMenuItem::setSubMenu(ContextMenu* menu) 1088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 1098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.subMenuItems = *menu->platformDescription(); 1108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 1118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1126b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brennervoid ContextMenuItem::setSubMenu(Vector<ContextMenuItem>&) 1136b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner{ 1146b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner // FIXME: Implement 1156b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner} 1166b70adc33054f8aee8c54d0f460458a9df11b8a5Russell Brenner 1178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid ContextMenuItem::setChecked(bool on) 1188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 1198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.checked = on; 1208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 1218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 12228040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhubool ContextMenuItem::checked() const 12328040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu{ 12428040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu // FIXME - Implement 12528040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu return false; 12628040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu} 12728040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu 1288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid ContextMenuItem::setEnabled(bool on) 1298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 1308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project m_platformDescription.enabled = on; 1318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 1328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool ContextMenuItem::enabled() const 1348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{ 1358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project return m_platformDescription.enabled; 1368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 1378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 1398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project// vim: ts=4 sw=4 et 140