2002-12-23 13:55:21 +00:00
|
|
|
/*
|
|
|
|
* synergy -- mouse and keyboard sharing utility
|
|
|
|
* Copyright (C) 2002 Chris Schoeneman
|
|
|
|
*
|
|
|
|
* This package is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU General Public License
|
|
|
|
* found in the file COPYING that should have accompanied this file.
|
|
|
|
*
|
|
|
|
* This package 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.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef OPTIONTYPES_H
|
|
|
|
#define OPTIONTYPES_H
|
|
|
|
|
|
|
|
#include "BasicTypes.h"
|
|
|
|
#include "stdvector.h"
|
|
|
|
|
|
|
|
//! Option ID
|
|
|
|
/*!
|
|
|
|
Type to hold an option identifier.
|
|
|
|
*/
|
|
|
|
typedef UInt32 OptionID;
|
|
|
|
|
|
|
|
//! Option Value
|
|
|
|
/*!
|
|
|
|
Type to hold an option value.
|
|
|
|
*/
|
|
|
|
typedef SInt32 OptionValue;
|
|
|
|
|
|
|
|
// for now, options are just pairs of integers
|
|
|
|
typedef std::vector<UInt32> COptionsList;
|
|
|
|
|
|
|
|
// macro for packing 4 character strings into 4 byte integers
|
|
|
|
#define OPTION_CODE(_s) \
|
|
|
|
(static_cast<UInt32>(static_cast<unsigned char>(_s[0]) << 24) | \
|
|
|
|
static_cast<UInt32>(static_cast<unsigned char>(_s[1]) << 16) | \
|
|
|
|
static_cast<UInt32>(static_cast<unsigned char>(_s[2]) << 8) | \
|
|
|
|
static_cast<UInt32>(static_cast<unsigned char>(_s[3]) ))
|
|
|
|
|
|
|
|
//! @name Option identifiers
|
|
|
|
//@{
|
2003-02-22 15:03:31 +00:00
|
|
|
static const OptionID kOptionHalfDuplexCapsLock = OPTION_CODE("HDCL");
|
|
|
|
static const OptionID kOptionHalfDuplexNumLock = OPTION_CODE("HDNL");
|
|
|
|
static const OptionID kOptionHalfDuplexScrollLock = OPTION_CODE("HDSL");
|
|
|
|
static const OptionID kOptionModifierMapForShift = OPTION_CODE("MMFS");
|
|
|
|
static const OptionID kOptionModifierMapForControl = OPTION_CODE("MMFC");
|
|
|
|
static const OptionID kOptionModifierMapForAlt = OPTION_CODE("MMFA");
|
|
|
|
static const OptionID kOptionModifierMapForMeta = OPTION_CODE("MMFM");
|
|
|
|
static const OptionID kOptionModifierMapForSuper = OPTION_CODE("MMFR");
|
2003-02-22 16:20:23 +00:00
|
|
|
static const OptionID kOptionHeartbeat = OPTION_CODE("HART");
|
2003-02-22 21:53:25 +00:00
|
|
|
static const OptionID kOptionScreenSwitchDelay = OPTION_CODE("SSWT");
|
2003-02-23 19:29:08 +00:00
|
|
|
static const OptionID kOptionScreenSwitchTwoTap = OPTION_CODE("SSTT");
|
2003-05-03 14:38:36 +00:00
|
|
|
static const OptionID kOptionScreenSaverSync = OPTION_CODE("SSVR");
|
2003-05-17 13:44:24 +00:00
|
|
|
static const OptionID kOptionXTestXineramaUnaware = OPTION_CODE("XTXU");
|
2003-07-12 18:13:36 +00:00
|
|
|
static const OptionID kOptionIgnoreNumLock = OPTION_CODE("IGNL");
|
2002-12-23 13:55:21 +00:00
|
|
|
//@}
|
|
|
|
|
|
|
|
#undef OPTION_CODE
|
|
|
|
|
|
|
|
#endif
|