/*
* This file is autogenerated with bcop:
* The Compiz option code generator
*
* 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.
*
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <compiz.h>
#define _PUT_OPTIONS_INTERNAL
#include "put_options.h"
static int displayPrivateIndex;
static CompMetadata putOptionsMetadata;
static CompPluginVTable *putPluginVTable = NULL;
CompPluginVTable putOptionsVTable;
#define GET_PUT_OPTIONS_DISPLAY(d) \
((PutOptionsDisplay *) (d)->privates[displayPrivateIndex].ptr)
#define PUT_OPTIONS_DISPLAY(d) \
PutOptionsDisplay *od = GET_PUT_OPTIONS_DISPLAY (d)
#define GET_PUT_OPTIONS_SCREEN(s, od) \
((PutOptionsScreen *) (s)->privates[(od)->screenPrivateIndex].ptr)
#define PUT_OPTIONS_SCREEN(s) \
PutOptionsScreen *os = GET_PUT_OPTIONS_SCREEN (s, GET_PUT_OPTIONS_DISPLAY (s->display))
typedef struct _PutOptionsDisplay
{
int screenPrivateIndex;
CompOption opt[PutDisplayOptionNum];
putDisplayOptionChangeNotifyProc notify[PutDisplayOptionNum];
} PutOptionsDisplay;
typedef struct _PutOptionsScreen
{
CompOption opt[PutScreenOptionNum];
putScreenOptionChangeNotifyProc notify[PutScreenOptionNum];
} PutOptionsScreen;
CompAction * putGetPutViewport (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport].value.action;
}
void putSetPutViewportInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport].value.action.initiate = init;
}
void putSetPutViewportTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport].value.action.terminate = term;
}
CompOption * putGetPutViewportOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport];
}
void putSetPutViewportNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport] = notify;
}
CompAction * putGetPutViewport1 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport1].value.action;
}
void putSetPutViewport1Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport1].value.action.initiate = init;
}
void putSetPutViewport1Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport1].value.action.terminate = term;
}
CompOption * putGetPutViewport1Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport1];
}
void putSetPutViewport1Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport1] = notify;
}
CompAction * putGetPutViewport2 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport2].value.action;
}
void putSetPutViewport2Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport2].value.action.initiate = init;
}
void putSetPutViewport2Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport2].value.action.terminate = term;
}
CompOption * putGetPutViewport2Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport2];
}
void putSetPutViewport2Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport2] = notify;
}
CompAction * putGetPutViewport3 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport3].value.action;
}
void putSetPutViewport3Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport3].value.action.initiate = init;
}
void putSetPutViewport3Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport3].value.action.terminate = term;
}
CompOption * putGetPutViewport3Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport3];
}
void putSetPutViewport3Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport3] = notify;
}
CompAction * putGetPutViewport4 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport4].value.action;
}
void putSetPutViewport4Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport4].value.action.initiate = init;
}
void putSetPutViewport4Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport4].value.action.terminate = term;
}
CompOption * putGetPutViewport4Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport4];
}
void putSetPutViewport4Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport4] = notify;
}
CompAction * putGetPutViewport5 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport5].value.action;
}
void putSetPutViewport5Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport5].value.action.initiate = init;
}
void putSetPutViewport5Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport5].value.action.terminate = term;
}
CompOption * putGetPutViewport5Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport5];
}
void putSetPutViewport5Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport5] = notify;
}
CompAction * putGetPutViewport6 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport6].value.action;
}
void putSetPutViewport6Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport6].value.action.initiate = init;
}
void putSetPutViewport6Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport6].value.action.terminate = term;
}
CompOption * putGetPutViewport6Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport6];
}
void putSetPutViewport6Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport6] = notify;
}
CompAction * putGetPutViewport7 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport7].value.action;
}
void putSetPutViewport7Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport7].value.action.initiate = init;
}
void putSetPutViewport7Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport7].value.action.terminate = term;
}
CompOption * putGetPutViewport7Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport7];
}
void putSetPutViewport7Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport7] = notify;
}
CompAction * putGetPutViewport8 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport8].value.action;
}
void putSetPutViewport8Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport8].value.action.initiate = init;
}
void putSetPutViewport8Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport8].value.action.terminate = term;
}
CompOption * putGetPutViewport8Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport8];
}
void putSetPutViewport8Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport8] = notify;
}
CompAction * putGetPutViewport9 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport9].value.action;
}
void putSetPutViewport9Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport9].value.action.initiate = init;
}
void putSetPutViewport9Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport9].value.action.terminate = term;
}
CompOption * putGetPutViewport9Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport9];
}
void putSetPutViewport9Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport9] = notify;
}
CompAction * putGetPutViewport10 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport10].value.action;
}
void putSetPutViewport10Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport10].value.action.initiate = init;
}
void putSetPutViewport10Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport10].value.action.terminate = term;
}
CompOption * putGetPutViewport10Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport10];
}
void putSetPutViewport10Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport10] = notify;
}
CompAction * putGetPutViewport11 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport11].value.action;
}
void putSetPutViewport11Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport11].value.action.initiate = init;
}
void putSetPutViewport11Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport11].value.action.terminate = term;
}
CompOption * putGetPutViewport11Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport11];
}
void putSetPutViewport11Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport11] = notify;
}
CompAction * putGetPutViewport12 (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport12].value.action;
}
void putSetPutViewport12Initiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport12].value.action.initiate = init;
}
void putSetPutViewport12Terminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewport12].value.action.terminate = term;
}
CompOption * putGetPutViewport12Option (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewport12];
}
void putSetPutViewport12Notify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewport12] = notify;
}
CompAction * putGetPutViewportLeft (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewportLeft].value.action;
}
void putSetPutViewportLeftInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewportLeft].value.action.initiate = init;
}
void putSetPutViewportLeftTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewportLeft].value.action.terminate = term;
}
CompOption * putGetPutViewportLeftOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewportLeft];
}
void putSetPutViewportLeftNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewportLeft] = notify;
}
CompAction * putGetPutViewportRight (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewportRight].value.action;
}
void putSetPutViewportRightInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewportRight].value.action.initiate = init;
}
void putSetPutViewportRightTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewportRight].value.action.terminate = term;
}
CompOption * putGetPutViewportRightOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewportRight];
}
void putSetPutViewportRightNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewportRight] = notify;
}
CompAction * putGetPutViewportUp (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewportUp].value.action;
}
void putSetPutViewportUpInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewportUp].value.action.initiate = init;
}
void putSetPutViewportUpTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewportUp].value.action.terminate = term;
}
CompOption * putGetPutViewportUpOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewportUp];
}
void putSetPutViewportUpNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewportUp] = notify;
}
CompAction * putGetPutViewportDown (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewportDown].value.action;
}
void putSetPutViewportDownInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewportDown].value.action.initiate = init;
}
void putSetPutViewportDownTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutViewportDown].value.action.terminate = term;
}
CompOption * putGetPutViewportDownOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutViewportDown];
}
void putSetPutViewportDownNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutViewportDown] = notify;
}
CompAction * putGetPutCenter (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutCenter].value.action;
}
void putSetPutCenterInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutCenter].value.action.initiate = init;
}
void putSetPutCenterTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutCenter].value.action.terminate = term;
}
CompOption * putGetPutCenterOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutCenter];
}
void putSetPutCenterNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutCenter] = notify;
}
CompAction * putGetPutLeft (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutLeft].value.action;
}
void putSetPutLeftInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutLeft].value.action.initiate = init;
}
void putSetPutLeftTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutLeft].value.action.terminate = term;
}
CompOption * putGetPutLeftOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutLeft];
}
void putSetPutLeftNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutLeft] = notify;
}
CompAction * putGetPutRight (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutRight].value.action;
}
void putSetPutRightInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutRight].value.action.initiate = init;
}
void putSetPutRightTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutRight].value.action.terminate = term;
}
CompOption * putGetPutRightOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutRight];
}
void putSetPutRightNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutRight] = notify;
}
CompAction * putGetPutTop (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutTop].value.action;
}
void putSetPutTopInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutTop].value.action.initiate = init;
}
void putSetPutTopTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutTop].value.action.terminate = term;
}
CompOption * putGetPutTopOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutTop];
}
void putSetPutTopNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutTop] = notify;
}
CompAction * putGetPutBottom (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutBottom].value.action;
}
void putSetPutBottomInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutBottom].value.action.initiate = init;
}
void putSetPutBottomTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutBottom].value.action.terminate = term;
}
CompOption * putGetPutBottomOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutBottom];
}
void putSetPutBottomNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutBottom] = notify;
}
CompAction * putGetPutTopleft (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutTopleft].value.action;
}
void putSetPutTopleftInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutTopleft].value.action.initiate = init;
}
void putSetPutTopleftTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutTopleft].value.action.terminate = term;
}
CompOption * putGetPutTopleftOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutTopleft];
}
void putSetPutTopleftNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutTopleft] = notify;
}
CompAction * putGetPutTopright (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutTopright].value.action;
}
void putSetPutToprightInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutTopright].value.action.initiate = init;
}
void putSetPutToprightTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutTopright].value.action.terminate = term;
}
CompOption * putGetPutToprightOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutTopright];
}
void putSetPutToprightNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutTopright] = notify;
}
CompAction * putGetPutBottomleft (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutBottomleft].value.action;
}
void putSetPutBottomleftInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutBottomleft].value.action.initiate = init;
}
void putSetPutBottomleftTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutBottomleft].value.action.terminate = term;
}
CompOption * putGetPutBottomleftOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutBottomleft];
}
void putSetPutBottomleftNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutBottomleft] = notify;
}
CompAction * putGetPutBottomright (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutBottomright].value.action;
}
void putSetPutBottomrightInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutBottomright].value.action.initiate = init;
}
void putSetPutBottomrightTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutBottomright].value.action.terminate = term;
}
CompOption * putGetPutBottomrightOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutBottomright];
}
void putSetPutBottomrightNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutBottomright] = notify;
}
CompAction * putGetPutRestore (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutRestore].value.action;
}
void putSetPutRestoreInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutRestore].value.action.initiate = init;
}
void putSetPutRestoreTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutRestore].value.action.terminate = term;
}
CompOption * putGetPutRestoreOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutRestore];
}
void putSetPutRestoreNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutRestore] = notify;
}
CompAction * putGetPutPointer (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutPointer].value.action;
}
void putSetPutPointerInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutPointer].value.action.initiate = init;
}
void putSetPutPointerTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutPointer].value.action.terminate = term;
}
CompOption * putGetPutPointerOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutPointer];
}
void putSetPutPointerNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutPointer] = notify;
}
CompAction * putGetPutExact (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutExact].value.action;
}
void putSetPutExactInitiate (CompDisplay *d, CompActionCallBackProc init)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutExact].value.action.initiate = init;
}
void putSetPutExactTerminate (CompDisplay *d, CompActionCallBackProc term)
{
PUT_OPTIONS_DISPLAY(d);
od->opt[PutDisplayOptionPutExact].value.action.terminate = term;
}
CompOption * putGetPutExactOption (CompDisplay *d)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[PutDisplayOptionPutExact];
}
void putSetPutExactNotify (CompDisplay *d, putDisplayOptionChangeNotifyProc notify)
{
PUT_OPTIONS_DISPLAY(d);
od->notify[PutDisplayOptionPutExact] = notify;
}
int putGetPadLeft (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return os->opt[PutScreenOptionPadLeft].value.i;
}
CompOption * putGetPadLeftOption (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[PutScreenOptionPadLeft];
}
void putSetPadLeftNotify (CompScreen *s, putScreenOptionChangeNotifyProc notify)
{
PUT_OPTIONS_SCREEN(s);
os->notify[PutScreenOptionPadLeft] = notify;
}
int putGetPadRight (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return os->opt[PutScreenOptionPadRight].value.i;
}
CompOption * putGetPadRightOption (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[PutScreenOptionPadRight];
}
void putSetPadRightNotify (CompScreen *s, putScreenOptionChangeNotifyProc notify)
{
PUT_OPTIONS_SCREEN(s);
os->notify[PutScreenOptionPadRight] = notify;
}
int putGetPadTop (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return os->opt[PutScreenOptionPadTop].value.i;
}
CompOption * putGetPadTopOption (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[PutScreenOptionPadTop];
}
void putSetPadTopNotify (CompScreen *s, putScreenOptionChangeNotifyProc notify)
{
PUT_OPTIONS_SCREEN(s);
os->notify[PutScreenOptionPadTop] = notify;
}
int putGetPadBottom (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return os->opt[PutScreenOptionPadBottom].value.i;
}
CompOption * putGetPadBottomOption (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[PutScreenOptionPadBottom];
}
void putSetPadBottomNotify (CompScreen *s, putScreenOptionChangeNotifyProc notify)
{
PUT_OPTIONS_SCREEN(s);
os->notify[PutScreenOptionPadBottom] = notify;
}
Bool putGetUnfocusWindow (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return os->opt[PutScreenOptionUnfocusWindow].value.b;
}
CompOption * putGetUnfocusWindowOption (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[PutScreenOptionUnfocusWindow];
}
void putSetUnfocusWindowNotify (CompScreen *s, putScreenOptionChangeNotifyProc notify)
{
PUT_OPTIONS_SCREEN(s);
os->notify[PutScreenOptionUnfocusWindow] = notify;
}
Bool putGetWindowCenter (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return os->opt[PutScreenOptionWindowCenter].value.b;
}
CompOption * putGetWindowCenterOption (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[PutScreenOptionWindowCenter];
}
void putSetWindowCenterNotify (CompScreen *s, putScreenOptionChangeNotifyProc notify)
{
PUT_OPTIONS_SCREEN(s);
os->notify[PutScreenOptionWindowCenter] = notify;
}
Bool putGetAvoidOffscreen (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return os->opt[PutScreenOptionAvoidOffscreen].value.b;
}
CompOption * putGetAvoidOffscreenOption (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[PutScreenOptionAvoidOffscreen];
}
void putSetAvoidOffscreenNotify (CompScreen *s, putScreenOptionChangeNotifyProc notify)
{
PUT_OPTIONS_SCREEN(s);
os->notify[PutScreenOptionAvoidOffscreen] = notify;
}
float putGetSpeed (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return os->opt[PutScreenOptionSpeed].value.f;
}
CompOption * putGetSpeedOption (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[PutScreenOptionSpeed];
}
void putSetSpeedNotify (CompScreen *s, putScreenOptionChangeNotifyProc notify)
{
PUT_OPTIONS_SCREEN(s);
os->notify[PutScreenOptionSpeed] = notify;
}
float putGetTimestep (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return os->opt[PutScreenOptionTimestep].value.f;
}
CompOption * putGetTimestepOption (CompScreen *s)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[PutScreenOptionTimestep];
}
void putSetTimestepNotify (CompScreen *s, putScreenOptionChangeNotifyProc notify)
{
PUT_OPTIONS_SCREEN(s);
os->notify[PutScreenOptionTimestep] = notify;
}
CompOption * putGetDisplayOption (CompDisplay *d, PutDisplayOptions num)
{
PUT_OPTIONS_DISPLAY(d);
return &od->opt[num];
}
CompOption * putGetScreenOption (CompScreen *s, PutScreenOptions num)
{
PUT_OPTIONS_SCREEN(s);
return &os->opt[num];
}
static const CompMetadataOptionInfo putOptionsDisplayOptionInfo[] = {
{ "put_viewport", "action", 0, 0, 0 },
{ "put_viewport_1", "action", 0, 0, 0 },
{ "put_viewport_2", "action", 0, 0, 0 },
{ "put_viewport_3", "action", 0, 0, 0 },
{ "put_viewport_4", "action", 0, 0, 0 },
{ "put_viewport_5", "action", 0, 0, 0 },
{ "put_viewport_6", "action", 0, 0, 0 },
{ "put_viewport_7", "action", 0, 0, 0 },
{ "put_viewport_8", "action", 0, 0, 0 },
{ "put_viewport_9", "action", 0, 0, 0 },
{ "put_viewport_10", "action", 0, 0, 0 },
{ "put_viewport_11", "action", 0, 0, 0 },
{ "put_viewport_12", "action", 0, 0, 0 },
{ "put_viewport_left", "action", 0, 0, 0 },
{ "put_viewport_right", "action", 0, 0, 0 },
{ "put_viewport_up", "action", 0, 0, 0 },
{ "put_viewport_down", "action", 0, 0, 0 },
{ "put_center", "action", 0, 0, 0 },
{ "put_left", "action", 0, 0, 0 },
{ "put_right", "action", 0, 0, 0 },
{ "put_top", "action", 0, 0, 0 },
{ "put_bottom", "action", 0, 0, 0 },
{ "put_topleft", "action", 0, 0, 0 },
{ "put_topright", "action", 0, 0, 0 },
{ "put_bottomleft", "action", 0, 0, 0 },
{ "put_bottomright", "action", 0, 0, 0 },
{ "put_restore", "action", 0, 0, 0 },
{ "put_pointer", "action", 0, 0, 0 },
{ "put_exact", "action", 0, 0, 0 },
};
static Bool putOptionsSetDisplayOption (CompPlugin *plugin, CompDisplay *d, char *name, CompOptionValue *value)
{
PUT_OPTIONS_DISPLAY(d);
CompOption *o;
int index;
o = compFindOption (od->opt, PutDisplayOptionNum, name, &index);
if (!o)
return FALSE;
switch (index)
{
case PutDisplayOptionPutViewport:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport])
(*od->notify[PutDisplayOptionPutViewport]) (d, o, PutDisplayOptionPutViewport);
return TRUE;
}
break;
case PutDisplayOptionPutViewport1:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport1])
(*od->notify[PutDisplayOptionPutViewport1]) (d, o, PutDisplayOptionPutViewport1);
return TRUE;
}
break;
case PutDisplayOptionPutViewport2:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport2])
(*od->notify[PutDisplayOptionPutViewport2]) (d, o, PutDisplayOptionPutViewport2);
return TRUE;
}
break;
case PutDisplayOptionPutViewport3:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport3])
(*od->notify[PutDisplayOptionPutViewport3]) (d, o, PutDisplayOptionPutViewport3);
return TRUE;
}
break;
case PutDisplayOptionPutViewport4:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport4])
(*od->notify[PutDisplayOptionPutViewport4]) (d, o, PutDisplayOptionPutViewport4);
return TRUE;
}
break;
case PutDisplayOptionPutViewport5:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport5])
(*od->notify[PutDisplayOptionPutViewport5]) (d, o, PutDisplayOptionPutViewport5);
return TRUE;
}
break;
case PutDisplayOptionPutViewport6:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport6])
(*od->notify[PutDisplayOptionPutViewport6]) (d, o, PutDisplayOptionPutViewport6);
return TRUE;
}
break;
case PutDisplayOptionPutViewport7:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport7])
(*od->notify[PutDisplayOptionPutViewport7]) (d, o, PutDisplayOptionPutViewport7);
return TRUE;
}
break;
case PutDisplayOptionPutViewport8:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport8])
(*od->notify[PutDisplayOptionPutViewport8]) (d, o, PutDisplayOptionPutViewport8);
return TRUE;
}
break;
case PutDisplayOptionPutViewport9:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport9])
(*od->notify[PutDisplayOptionPutViewport9]) (d, o, PutDisplayOptionPutViewport9);
return TRUE;
}
break;
case PutDisplayOptionPutViewport10:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport10])
(*od->notify[PutDisplayOptionPutViewport10]) (d, o, PutDisplayOptionPutViewport10);
return TRUE;
}
break;
case PutDisplayOptionPutViewport11:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport11])
(*od->notify[PutDisplayOptionPutViewport11]) (d, o, PutDisplayOptionPutViewport11);
return TRUE;
}
break;
case PutDisplayOptionPutViewport12:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewport12])
(*od->notify[PutDisplayOptionPutViewport12]) (d, o, PutDisplayOptionPutViewport12);
return TRUE;
}
break;
case PutDisplayOptionPutViewportLeft:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewportLeft])
(*od->notify[PutDisplayOptionPutViewportLeft]) (d, o, PutDisplayOptionPutViewportLeft);
return TRUE;
}
break;
case PutDisplayOptionPutViewportRight:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewportRight])
(*od->notify[PutDisplayOptionPutViewportRight]) (d, o, PutDisplayOptionPutViewportRight);
return TRUE;
}
break;
case PutDisplayOptionPutViewportUp:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewportUp])
(*od->notify[PutDisplayOptionPutViewportUp]) (d, o, PutDisplayOptionPutViewportUp);
return TRUE;
}
break;
case PutDisplayOptionPutViewportDown:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutViewportDown])
(*od->notify[PutDisplayOptionPutViewportDown]) (d, o, PutDisplayOptionPutViewportDown);
return TRUE;
}
break;
case PutDisplayOptionPutCenter:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutCenter])
(*od->notify[PutDisplayOptionPutCenter]) (d, o, PutDisplayOptionPutCenter);
return TRUE;
}
break;
case PutDisplayOptionPutLeft:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutLeft])
(*od->notify[PutDisplayOptionPutLeft]) (d, o, PutDisplayOptionPutLeft);
return TRUE;
}
break;
case PutDisplayOptionPutRight:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutRight])
(*od->notify[PutDisplayOptionPutRight]) (d, o, PutDisplayOptionPutRight);
return TRUE;
}
break;
case PutDisplayOptionPutTop:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutTop])
(*od->notify[PutDisplayOptionPutTop]) (d, o, PutDisplayOptionPutTop);
return TRUE;
}
break;
case PutDisplayOptionPutBottom:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutBottom])
(*od->notify[PutDisplayOptionPutBottom]) (d, o, PutDisplayOptionPutBottom);
return TRUE;
}
break;
case PutDisplayOptionPutTopleft:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutTopleft])
(*od->notify[PutDisplayOptionPutTopleft]) (d, o, PutDisplayOptionPutTopleft);
return TRUE;
}
break;
case PutDisplayOptionPutTopright:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutTopright])
(*od->notify[PutDisplayOptionPutTopright]) (d, o, PutDisplayOptionPutTopright);
return TRUE;
}
break;
case PutDisplayOptionPutBottomleft:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutBottomleft])
(*od->notify[PutDisplayOptionPutBottomleft]) (d, o, PutDisplayOptionPutBottomleft);
return TRUE;
}
break;
case PutDisplayOptionPutBottomright:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutBottomright])
(*od->notify[PutDisplayOptionPutBottomright]) (d, o, PutDisplayOptionPutBottomright);
return TRUE;
}
break;
case PutDisplayOptionPutRestore:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutRestore])
(*od->notify[PutDisplayOptionPutRestore]) (d, o, PutDisplayOptionPutRestore);
return TRUE;
}
break;
case PutDisplayOptionPutPointer:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutPointer])
(*od->notify[PutDisplayOptionPutPointer]) (d, o, PutDisplayOptionPutPointer);
return TRUE;
}
break;
case PutDisplayOptionPutExact:
if (compSetDisplayOption (d, o, value))
{
if (od->notify[PutDisplayOptionPutExact])
(*od->notify[PutDisplayOptionPutExact]) (d, o, PutDisplayOptionPutExact);
return TRUE;
}
break;
default:
break;
}
return FALSE;
}
static CompOption * putOptionsGetDisplayOptions (CompPlugin *plugin, CompDisplay *d, int *count)
{
PUT_OPTIONS_DISPLAY(d);
*count = PutDisplayOptionNum;
return od->opt;
}
static const CompMetadataOptionInfo putOptionsScreenOptionInfo[] = {
{ "pad_left", "int", "<min>0</min><max>500</max>", 0, 0 },
{ "pad_right", "int", "<min>0</min><max>500</max>", 0, 0 },
{ "pad_top", "int", "<min>0</min><max>500</max>", 0, 0 },
{ "pad_bottom", "int", "<min>0</min><max>500</max>", 0, 0 },
{ "unfocus_window", "bool", 0, 0, 0 },
{ "window_center", "bool", 0, 0, 0 },
{ "avoid_offscreen", "bool", 0, 0, 0 },
{ "speed", "float", "<min>0.1</min><max>50.0</max>", 0, 0 },
{ "timestep", "float", "<min>0.1</min><max>50.0</max>", 0, 0 },
};
static Bool putOptionsSetScreenOption (CompPlugin *plugin, CompScreen *s, char *name, CompOptionValue *value)
{
PUT_OPTIONS_SCREEN(s);
CompOption *o;
int index;
o = compFindOption (os->opt, PutScreenOptionNum, name, &index);
if (!o)
return FALSE;
switch (index)
{
case PutScreenOptionPadLeft:
if (compSetScreenOption (s, o, value))
{
if (os->notify[PutScreenOptionPadLeft])
(*os->notify[PutScreenOptionPadLeft]) (s, o, PutScreenOptionPadLeft);
return TRUE;
}
break;
case PutScreenOptionPadRight:
if (compSetScreenOption (s, o, value))
{
if (os->notify[PutScreenOptionPadRight])
(*os->notify[PutScreenOptionPadRight]) (s, o, PutScreenOptionPadRight);
return TRUE;
}
break;
case PutScreenOptionPadTop:
if (compSetScreenOption (s, o, value))
{
if (os->notify[PutScreenOptionPadTop])
(*os->notify[PutScreenOptionPadTop]) (s, o, PutScreenOptionPadTop);
return TRUE;
}
break;
case PutScreenOptionPadBottom:
if (compSetScreenOption (s, o, value))
{
if (os->notify[PutScreenOptionPadBottom])
(*os->notify[PutScreenOptionPadBottom]) (s, o, PutScreenOptionPadBottom);
return TRUE;
}
break;
case PutScreenOptionUnfocusWindow:
if (compSetScreenOption (s, o, value))
{
if (os->notify[PutScreenOptionUnfocusWindow])
(*os->notify[PutScreenOptionUnfocusWindow]) (s, o, PutScreenOptionUnfocusWindow);
return TRUE;
}
break;
case PutScreenOptionWindowCenter:
if (compSetScreenOption (s, o, value))
{
if (os->notify[PutScreenOptionWindowCenter])
(*os->notify[PutScreenOptionWindowCenter]) (s, o, PutScreenOptionWindowCenter);
return TRUE;
}
break;
case PutScreenOptionAvoidOffscreen:
if (compSetScreenOption (s, o, value))
{
if (os->notify[PutScreenOptionAvoidOffscreen])
(*os->notify[PutScreenOptionAvoidOffscreen]) (s, o, PutScreenOptionAvoidOffscreen);
return TRUE;
}
break;
case PutScreenOptionSpeed:
if (compSetScreenOption (s, o, value))
{
if (os->notify[PutScreenOptionSpeed])
(*os->notify[PutScreenOptionSpeed]) (s, o, PutScreenOptionSpeed);
return TRUE;
}
break;
case PutScreenOptionTimestep:
if (compSetScreenOption (s, o, value))
{
if (os->notify[PutScreenOptionTimestep])
(*os->notify[PutScreenOptionTimestep]) (s, o, PutScreenOptionTimestep);
return TRUE;
}
break;
default:
break;
}
return FALSE;
}
static CompOption * putOptionsGetScreenOptions (CompPlugin *plugin, CompScreen *s, int *count)
{
PUT_OPTIONS_SCREEN(s);
*count = PutScreenOptionNum;
return os->opt;
}
static Bool putOptionsInitScreen (CompPlugin *p, CompScreen *s)
{
PutOptionsScreen *os;
PUT_OPTIONS_DISPLAY (s->display);
os = calloc (1, sizeof(PutOptionsScreen));
if (!os)
return FALSE;
s->privates[od->screenPrivateIndex].ptr = os;
if (!compInitScreenOptionsFromMetadata (s, &putOptionsMetadata, putOptionsScreenOptionInfo, os->opt, PutScreenOptionNum))
{
free (os);
return FALSE;
}
if (putPluginVTable && putPluginVTable->initScreen)
return putPluginVTable->initScreen (p, s);
return TRUE;
}
static void putOptionsFiniScreen (CompPlugin *p, CompScreen *s)
{
if (putPluginVTable && putPluginVTable->finiScreen)
return putPluginVTable->finiScreen (p, s);
PUT_OPTIONS_SCREEN (s);
compFiniScreenOptions (s, os->opt, PutScreenOptionNum);
free (os);
}
static Bool putOptionsInitDisplay (CompPlugin *p, CompDisplay *d)
{
PutOptionsDisplay *od;
od = calloc (1, sizeof(PutOptionsDisplay));
if (!od)
return FALSE;
od->screenPrivateIndex = allocateScreenPrivateIndex(d);
if (od->screenPrivateIndex < 0)
{
free(od);
return FALSE;
}
d->privates[displayPrivateIndex].ptr = od;
if (!compInitDisplayOptionsFromMetadata (d, &putOptionsMetadata, putOptionsDisplayOptionInfo, od->opt, PutDisplayOptionNum))
{
free (od);
return FALSE;
}
if (putPluginVTable && putPluginVTable->initDisplay)
return putPluginVTable->initDisplay (p, d);
return TRUE;
}
static void putOptionsFiniDisplay (CompPlugin *p, CompDisplay *d)
{
if (putPluginVTable && putPluginVTable->finiDisplay)
return putPluginVTable->finiDisplay (p, d);
PUT_OPTIONS_DISPLAY (d);
freeScreenPrivateIndex(d, od->screenPrivateIndex);
compFiniDisplayOptions (d, od->opt, PutDisplayOptionNum);
free (od);
}
static Bool putOptionsInit (CompPlugin *p)
{
displayPrivateIndex = allocateDisplayPrivateIndex();
if (displayPrivateIndex < 0)
return FALSE;
if (!compInitPluginMetadataFromInfo (&putOptionsMetadata, "put",putOptionsDisplayOptionInfo, PutDisplayOptionNum, putOptionsScreenOptionInfo, PutScreenOptionNum))
return FALSE;
compAddMetadataFromFile (&putOptionsMetadata, "put");
if (putPluginVTable && putPluginVTable->init)
return putPluginVTable->init (p);
return TRUE;
}
static void putOptionsFini (CompPlugin *p)
{
if (putPluginVTable && putPluginVTable->fini)
return putPluginVTable->fini (p);
if (displayPrivateIndex >= 0)
freeDisplayPrivateIndex(displayPrivateIndex);
compFiniMetadata (&putOptionsMetadata);
}
static CompMetadata *
putOptionsGetMetadata (CompPlugin *plugin)
{
return &putOptionsMetadata;
}
CompPluginVTable *getCompPluginInfo (void)
{
if (!putPluginVTable)
{
putPluginVTable = putOptionsGetCompPluginInfo ();
memcpy(&putOptionsVTable, putPluginVTable, sizeof(CompPluginVTable));
putOptionsVTable.getMetadata = putOptionsGetMetadata;
putOptionsVTable.init = putOptionsInit;
putOptionsVTable.fini = putOptionsFini;
putOptionsVTable.initDisplay = putOptionsInitDisplay;
putOptionsVTable.finiDisplay = putOptionsFiniDisplay;
putOptionsVTable.initScreen = putOptionsInitScreen;
putOptionsVTable.finiScreen = putOptionsFiniScreen;
putOptionsVTable.getDisplayOptions = putOptionsGetDisplayOptions;
putOptionsVTable.setDisplayOption = putOptionsSetDisplayOption;
putOptionsVTable.getScreenOptions = putOptionsGetScreenOptions;
putOptionsVTable.setScreenOption = putOptionsSetScreenOption;
}
return &putOptionsVTable;
}
syntax highlighted by Code2HTML, v. 0.9.1