UIShortcutPool.h revision 17076caa32ee3ae5f96c1af902bb9c11bf7a5475
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
* UIShortcutPool class declaration
*/
/*
* Copyright (C) 2011-2013 Oracle Corporation
*
* This file is part of VirtualBox Open Source Edition (OSE), as
* available from http://www.virtualbox.org. This file is free software;
* General Public License (GPL) as published by the Free Software
* Foundation, in version 2 as it comes in the "COPYING" file of the
* VirtualBox OSE distribution. VirtualBox OSE is distributed in the
* hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
*/
#ifndef __UIShortcutPool_h__
#define __UIShortcutPool_h__
/* Qt includes: */
#include <QMap>
/* GUI includes: */
#include "VBoxGlobal.h"
/* Forward declarations: */
/* Shortcut descriptor: */
{
/* Constructor: */
/* API: Description stuff: */
const QString& description() const;
/* API: Sequence stuff: */
const QKeySequence& sequence() const;
/* API: Conversion stuff: */
/* Variables: */
};
/* Singleton shortcut pool: */
{
/* Notifiers: Extra-data stuff: */
void sigSelectorShortcutsReloaded();
void sigMachineShortcutsReloaded();
/* API: Singleton stuff: */
static UIShortcutPool* instance();
static void create();
static void destroy();
/* API: Shortcut stuff: */
/* API: Action-pool stuff: */
/* Handlers: Extra-data stuff: */
void sltReloadSelectorShortcuts();
void sltReloadMachineShortcuts();
/* Constructor/destructor: */
~UIShortcutPool();
/* Helpers: Prepare stuff: */
void prepare();
void prepareConnections();
/* Helper: Cleanup stuff: */
void cleanup() {}
/* Helpers: Shortcuts stuff: */
void loadDefaults();
void loadOverrides();
/* Helper: Shortcut stuff: */
/* Variables: */
static UIShortcutPool *m_pInstance;
static const QString m_strShortcutKeyTemplate;
};
#endif /* __UIShortcutPool_h__ */