/*****************************************************************************
* macosx_dragdrop.hpp
*****************************************************************************
* Copyright (C) 2026 the VideoLAN team
*
* Authors: Fletcher Holt <fletcherholt649@gmail.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#ifndef MACOSX_DRAGDROP_HPP
#define MACOSX_DRAGDROP_HPP
#include "../src/skin_common.hpp"
#include "../src/generic_window.hpp"
@class NSWindow;
@class VLCDropView;
/// macOS drag and drop handler
class MacOSXDragDrop: public SkinObject
{
public:
MacOSXDragDrop( intf_thread_t *pIntf, NSWindow *pWindow,
bool playOnDrop, GenericWindow *pWin );
virtual ~MacOSXDragDrop();
/// Handle dropped files
void handleDrop( const char **files, int count );
/// Check if files should play immediately
bool getPlayOnDrop() const { return m_playOnDrop; }
/// Get the associated GenericWindow
GenericWindow *getWindow() const { return m_pWin; }
private:
/// Window
NSWindow *m_pWindow;
/// Drop view
VLCDropView *m_pDropView;
/// Should dropped files play immediately
bool m_playOnDrop;
/// Associated generic window
GenericWindow *m_pWin;
};
#endif
¤ Dauer der Verarbeitung: 0.2 Sekunden
¤
*© Formatika GbR, Deutschland