[MSE][GStreamer] Remove dead code in MediaPlayerPrivateGStreamer::doSeek()
[WebKit-https.git] / Source / WebCore / platform / ContextMenuItem.cpp
1 /*
2  * Copyright (C) 2010 Apple Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
17  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
23  * THE POSSIBILITY OF SUCH DAMAGE.
24  */
25
26 #include "config.h"
27 #include "ContextMenuItem.h"
28
29 #include "ContextMenu.h"
30
31 #if ENABLE(CONTEXT_MENUS)
32
33 namespace WebCore {
34
35 ContextMenuItem::ContextMenuItem(ContextMenuItemType type, ContextMenuAction action, const String& title, ContextMenu* subMenu)
36     : m_type(type)
37     , m_action(action)
38     , m_title(title)
39     , m_enabled(true)
40     , m_checked(false)
41 {
42     if (subMenu)
43         setSubMenu(subMenu);
44 }
45
46 ContextMenuItem::ContextMenuItem(ContextMenuItemType type, ContextMenuAction action, const String& title, bool enabled, bool checked)
47     : m_type(type)
48     , m_action(action)
49     , m_title(title)
50     , m_enabled(enabled)
51     , m_checked(checked)
52 {
53 }
54         
55 ContextMenuItem::ContextMenuItem(ContextMenuAction action, const String& title, bool enabled, bool checked, const Vector<ContextMenuItem>& subMenuItems)
56     : m_type(SubmenuType)
57     , m_action(action)
58     , m_title(title)
59     , m_enabled(enabled)
60     , m_checked(checked)
61     , m_subMenuItems(subMenuItems)
62 {
63 }
64
65 ContextMenuItem::ContextMenuItem()
66     : m_type(SeparatorType)
67     , m_action(ContextMenuItemTagNoAction)
68     , m_enabled(false)
69     , m_checked(false)
70 {
71 }
72
73 ContextMenuItem::~ContextMenuItem() = default;
74
75 bool ContextMenuItem::isNull() const
76 {
77     // FIXME: This is a bit of a hack. Cross-platform ContextMenuItem users need a concrete way to track "isNull".
78     return m_action == ContextMenuItemTagNoAction && m_title.isNull() && m_subMenuItems.isEmpty();
79 }
80
81 void ContextMenuItem::setSubMenu(ContextMenu* subMenu)
82 {
83     if (subMenu) {
84         m_type = SubmenuType;
85         m_subMenuItems = subMenu->items();
86     } else {
87         m_type = ActionType;
88         m_subMenuItems.clear();
89     }
90 }
91
92 void ContextMenuItem::setType(ContextMenuItemType type)
93 {
94     m_type = type;
95 }
96
97 ContextMenuItemType ContextMenuItem::type() const
98 {
99     return m_type;
100 }
101
102 void ContextMenuItem::setAction(ContextMenuAction action)
103 {
104     m_action = action;
105 }
106
107 ContextMenuAction ContextMenuItem::action() const
108 {
109     return m_action;
110 }
111
112 void ContextMenuItem::setChecked(bool checked)
113 {
114     m_checked = checked;
115 }
116
117 bool ContextMenuItem::checked() const
118 {
119     return m_checked;
120 }
121
122 void ContextMenuItem::setEnabled(bool enabled)
123 {
124     m_enabled = enabled;
125 }
126
127 bool ContextMenuItem::enabled() const
128 {
129     return m_enabled;
130 }
131
132 } // namespace WebCore
133
134 #endif // ENABLE(CONTEXT_MENUS)