summaryrefslogtreecommitdiff
path: root/plugins/AsSingleWindow/src/AsSingleWindow.h
blob: e32bc6f9481c7969999da6f23ea9a6d58dc9f3cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#pragma once

#ifndef _ASSINGLEWINDOW_H
#define _ASSINGLEWINDOW_H

#include "stdafx.h"
#include "WindowsManager.h"

#define ASW_CLWINDOWPOS_RIGHT 0x01
#define ASW_CLWINDOWPOS_LEFT 0x02
#define ASW_CLWINDOWPOS_DISABLED 0x03

#define ASW_WINDOWS_MERGEALL 0x01
#define ASW_WINDOWS_MERGEONE 0x02
#define ASW_WINDOWS_MERGEDISABLE 0x03

//typedef std::map<HWND, sWindowInfo> windowsList;
typedef std::list<sWindowInfo> windowsList;

struct sPluginVars {
    HINSTANCE hInst;
    CRITICAL_SECTION m_CS;

    HWND contactListHWND;
    windowsList allWindows;

    HANDLE heModulesLoaded;
    HANDLE heOptionsLoaded;
    HANDLE heMsgWndEvent;

    bool IsUpdateInProgress;

    struct {
        UINT8 DrivenWindowPos;
        UINT8 WindowsMerging;
    } Options;
};

extern sPluginVars pluginVars;
extern PLUGININFOEX pluginInfo;

int OnModulesLoaded(WPARAM, LPARAM);
int MsgWindowEvent(WPARAM, LPARAM);

#endif

// end of file