Index: src/common/ipcstructs.h =================================================================== diff -u -N -rd2b121c78f510b5384b8ef0ca80afbfd7f77fef7 -rd5c3edd0d167db9b5d47d04248820fda49499a5e --- src/common/ipcstructs.h (.../ipcstructs.h) (revision d2b121c78f510b5384b8ef0ca80afbfd7f77fef7) +++ src/common/ipcstructs.h (.../ipcstructs.h) (revision d5c3edd0d167db9b5d47d04248820fda49499a5e) @@ -1,84 +1,84 @@ -/*************************************************************************** -* Copyright (C) 2001-2008 by J�zef Starosczyk * -* ixen@copyhandler.com * -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU Library General Public License * -* (version 2) as published by the Free Software Foundation; * -* * -* 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 Library General Public * -* License along with this program; if not, write to the * -* Free Software Foundation, Inc., * -* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * -***************************************************************************/ -#ifndef __SHAREDDATA_H__ -#define __SHAREDDATA_H__ - -// drag&drop flags -#define OPERATION_MASK 0x00ffffff -#define DD_COPY_FLAG 0x00000001 -#define DD_MOVE_FLAG 0x00000002 -#define DD_COPYMOVESPECIAL_FLAG 0x00000004 - -#define EC_PASTE_FLAG 0x00000010 -#define EC_PASTESPECIAL_FLAG 0x00000020 -#define EC_COPYTO_FLAG 0x00000040 -#define EC_MOVETO_FLAG 0x00000080 -#define EC_COPYMOVETOSPECIAL_FLAG 0x00000100 - -// messages used -#define WM_GETCONFIG WM_USER+20 - -// config type to get from program -#define GC_DRAGDROP 0x00 -#define GC_EXPLORER 0x01 - -// command properties (used in menu displaying) -#pragma pack(push, 1) -struct _COMMAND -{ - UINT uiCommandID; // command ID - would be send be - TCHAR szCommand[128]; // command name - TCHAR szDesc[128]; // and it's description -}; -#pragma pack(pop) - -#pragma pack(push, 1) -struct _SHORTCUT -{ - TCHAR szName[128]; - TCHAR szPath[_MAX_PATH]; -}; -#pragma pack(pop) - -// shared memory size in bytes -#define SHARED_BUFFERSIZE 65536 - -// structure used for passing data from program to DLL -// the rest is a dynamic texts -class CSharedConfigStruct -{ -public: - _SHORTCUT* GetShortcutsPtr() const { return (_SHORTCUT*)(byData + iCommandCount * sizeof(_COMMAND)); } - _COMMAND* GetCommandsPtr() const { return (_COMMAND*)byData; } - -public: - UINT uiFlags; // what items and how to display in drag&drop ctx menu & explorer.ctx.menu - - bool bShowFreeSpace; // showthe free space by the shortcuts ? - TCHAR szSizes[6][64]; // names of the kB, GB, ... - bool bShowShortcutIcons; // show shell icons with shortcuts ? - bool bOverrideDefault; // only for d&d - want to change menu default item to the one from ch ? - UINT uiDefaultAction; // default action for drag&drop when using above option - int iCommandCount; // count of commands stored at the beginning of a buffer - int iShortcutsCount; // count of shortcuts to display in submenus - - BYTE byData[SHARED_BUFFERSIZE]; // buffer for texts and other stuff -}; - -#endif +/*************************************************************************** +* Copyright (C) 2001-2008 by J�zef Starosczyk * +* ixen@copyhandler.com * +* * +* This program is free software; you can redistribute it and/or modify * +* it under the terms of the GNU Library General Public License * +* (version 2) as published by the Free Software Foundation; * +* * +* 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 Library General Public * +* License along with this program; if not, write to the * +* Free Software Foundation, Inc., * +* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * +***************************************************************************/ +#ifndef __SHAREDDATA_H__ +#define __SHAREDDATA_H__ + +// drag&drop flags +#define OPERATION_MASK 0x00ffffff +#define DD_COPY_FLAG 0x00000001 +#define DD_MOVE_FLAG 0x00000002 +#define DD_COPYMOVESPECIAL_FLAG 0x00000004 + +#define EC_PASTE_FLAG 0x00000010 +#define EC_PASTESPECIAL_FLAG 0x00000020 +#define EC_COPYTO_FLAG 0x00000040 +#define EC_MOVETO_FLAG 0x00000080 +#define EC_COPYMOVETOSPECIAL_FLAG 0x00000100 + +// messages used +#define WM_GETCONFIG WM_USER+20 + +// config type to get from program +#define GC_DRAGDROP 0x00 +#define GC_EXPLORER 0x01 + +// command properties (used in menu displaying) +#pragma pack(push, 1) +struct _COMMAND +{ + UINT uiCommandID; // command ID - would be send be + TCHAR szCommand[128]; // command name + TCHAR szDesc[128]; // and it's description +}; +#pragma pack(pop) + +#pragma pack(push, 1) +struct _SHORTCUT +{ + TCHAR szName[128]; + TCHAR szPath[_MAX_PATH]; +}; +#pragma pack(pop) + +// shared memory size in bytes +#define SHARED_BUFFERSIZE 65536 + +// structure used for passing data from program to DLL +// the rest is a dynamic texts +class CSharedConfigStruct +{ +public: + _SHORTCUT* GetShortcutsPtr() const { return (_SHORTCUT*)(byData + iCommandCount * sizeof(_COMMAND)); } + _COMMAND* GetCommandsPtr() const { return (_COMMAND*)byData; } + +public: + UINT uiFlags; // what items and how to display in drag&drop ctx menu & explorer.ctx.menu + + bool bShowFreeSpace; // showthe free space by the shortcuts ? + TCHAR szSizes[6][64]; // names of the kB, GB, ... + bool bShowShortcutIcons; // show shell icons with shortcuts ? + bool bOverrideDefault; // only for d&d - want to change menu default item to the one from ch ? + UINT uiDefaultAction; // default action for drag&drop when using above option + int iCommandCount; // count of commands stored at the beginning of a buffer + int iShortcutsCount; // count of shortcuts to display in submenus + + BYTE byData[SHARED_BUFFERSIZE]; // buffer for texts and other stuff +}; + +#endif