1 /* 2 * Copyright (C) 2001 Peter Kelly (pmk@post.com) 3 * Copyright (C) 2001 Tobias Anton (anton@stud.fbi.fh-darmstadt.de) 4 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) 5 * Copyright (C) 2003, 2004, 2005, 2006 Apple Computer, Inc. 6 * Copyright (C) 2013 Samsung Electronics. 7 * 8 * This library is free software; you can redistribute it and/or 9 * modify it under the terms of the GNU Library General Public 10 * License as published by the Free Software Foundation; either 11 * version 2 of the License, or (at your option) any later version. 12 * 13 * This library is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 * Library General Public License for more details. 17 * 18 * You should have received a copy of the GNU Library General Public License 19 * along with this library; see the file COPYING.LIB. If not, write to 20 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 21 * Boston, MA 02110-1301, USA. 22 * 23 */ 24 25 #ifndef BeforeUnloadEvent_h 26 #define BeforeUnloadEvent_h 27 28 #include "core/events/Event.h" 29 #include "core/events/ThreadLocalEventNames.h" 30 31 namespace WebCore { 32 33 class BeforeUnloadEvent : public Event { 34 public: 35 virtual ~BeforeUnloadEvent(); 36 create()37 static PassRefPtr<BeforeUnloadEvent> create() 38 { 39 return adoptRef(new BeforeUnloadEvent); 40 } 41 42 virtual bool isBeforeUnloadEvent() const OVERRIDE; 43 setReturnValue(const String & returnValue)44 void setReturnValue(const String& returnValue) { m_returnValue = returnValue; } returnValue()45 String returnValue() const { return m_returnValue; } 46 interfaceName()47 virtual const AtomicString& interfaceName() const OVERRIDE { return EventNames::BeforeUnloadEvent; } 48 49 private: 50 BeforeUnloadEvent(); 51 52 String m_returnValue; 53 }; 54 55 DEFINE_EVENT_TYPE_CASTS(BeforeUnloadEvent); 56 57 } // namespace WebCore 58 59 #endif // BeforeUnloadEvent_h 60