summaryrefslogtreecommitdiff
path: root/plugins/Modernb/_disabled_src/ExtFrames/modern_ext_frames_services.c
diff options
context:
space:
mode:
authorKirill Volinsky <mataes2007@gmail.com>2012-05-18 22:10:43 +0000
committerKirill Volinsky <mataes2007@gmail.com>2012-05-18 22:10:43 +0000
commit725f68b6808a8a30778f58223fac75386f082785 (patch)
treeccba410760749d45139e5e78fd5e08f416ade1a0 /plugins/Modernb/_disabled_src/ExtFrames/modern_ext_frames_services.c
parentf920ef497f3299ae24fe783ce03bdd93b419f764 (diff)
plugins folders renaming
git-svn-id: http://svn.miranda-ng.org/main/trunk@61 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/Modernb/_disabled_src/ExtFrames/modern_ext_frames_services.c')
-rw-r--r--plugins/Modernb/_disabled_src/ExtFrames/modern_ext_frames_services.c386
1 files changed, 386 insertions, 0 deletions
diff --git a/plugins/Modernb/_disabled_src/ExtFrames/modern_ext_frames_services.c b/plugins/Modernb/_disabled_src/ExtFrames/modern_ext_frames_services.c
new file mode 100644
index 0000000000..e56be79255
--- /dev/null
+++ b/plugins/Modernb/_disabled_src/ExtFrames/modern_ext_frames_services.c
@@ -0,0 +1,386 @@
+/**************************************************************************\
+
+Miranda IM: the free IM client for Microsoft* Windows*
+
+Copyright 2000-2008 Miranda ICQ/IM project,
+all portions of this code base are copyrighted to Artem Shpynov and/or
+the people listed in contributors.txt.
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+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 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.
+
+****************************************************************************
+
+Created: Mar 19, 2007
+
+Author and Copyright: Artem Shpynov aka FYR: ashpynov@gmail.com
+
+****************************************************************************
+
+File contains realization of service procedures
+for modern_ext_frames.c module.
+
+This file have to be excluded from compilation and need to be adde to project via
+#include preprocessor derective in modern_ext_frames.c
+
+\**************************************************************************/
+
+#include "..\commonheaders.h" //only for precompiled headers
+
+#ifdef __modern_ext_frames_c__include_c_file //protection from adding to compilation
+
+static void _ExtFrames_InitServices()
+{
+ //Create services here
+ /*
+ CreateServiceFunction( MS_CLIST_FRAMES_ADDFRAME, _ExtFramesSrv_AddFrame );
+ CreateServiceFunction( MS_CLIST_FRAMES_REMOVEFRAME, _ExtFramesSrv_RemoveFrame );
+ CreateServiceFunction( MS_CLIST_FRAMES_SHOWALLFRAMES, _ExtFramesSrv_ShowAllFrames );
+ CreateServiceFunction( MS_CLIST_FRAMES_SHOWALLFRAMESTB, _ExtFramesSrv_ShowAllFramesTB );
+ CreateServiceFunction( MS_CLIST_FRAMES_HIDEALLFRAMESTB, _ExtFramesSrv_HideAllFramesTB );
+ CreateServiceFunction( MS_CLIST_FRAMES_SHFRAME, _ExtFramesSrv_SHFrame );
+ CreateServiceFunction( MS_CLIST_FRAMES_SHFRAMETITLEBAR, _ExtFramesSrv_SHFrameTitleBar );
+ CreateServiceFunction( MS_CLIST_FRAMES_ULFRAME, _ExtFramesSrv_ULFrame );
+ CreateServiceFunction( MS_CLIST_FRAMES_UCOLLFRAME, _ExtFramesSrv_UCollFrame );
+ CreateServiceFunction( MS_CLIST_FRAMES_SETUNBORDER, _ExtFramesSrv_SetUnBorder );
+ CreateServiceFunction( MS_CLIST_FRAMES_UPDATEFRAME, _ExtFramesSrv_UpdateFrame );
+ CreateServiceFunction( MS_CLIST_FRAMES_GETFRAMEOPTIONS, _ExtFramesSrv_GetFrameOptions );
+ CreateServiceFunction( MS_CLIST_FRAMES_SETFRAMEOPTIONS, _ExtFramesSrv_SetFrameOptions );
+
+ //TODO Frame menu stuff services
+
+ //register event hook here
+ ExtFrames.hookSBShowTooltip = CreateHookableEvent( ME_CLIST_FRAMES_SB_SHOW_TOOLTIP );
+ ExtFrames.hookSBHideTooltip = CreateHookableEvent( ME_CLIST_FRAMES_SB_HIDE_TOOLTIP );
+ ExtFrames.hookPrebuildFrameMenu = CreateHookableEvent( ME_CLIST_PREBUILDFRAMEMENU );
+ */
+
+ //Hook other events
+ HookEvent(ME_OPT_INITIALISE,_ExtFrames_OptionsDlgInit);
+}
+
+static void _ExtFrames_UninitServices()
+{
+ if (ExtFrames.hookSBShowTooltip) UnhookEvent( ExtFrames.hookSBShowTooltip );
+ if (ExtFrames.hookSBHideTooltip) UnhookEvent( ExtFrames.hookSBHideTooltip );
+ if (ExtFrames.hookPrebuildFrameMenu) UnhookEvent( ExtFrames.hookPrebuildFrameMenu );
+
+ ExtFrames.hookSBShowTooltip = NULL;
+ ExtFrames.hookSBHideTooltip = NULL;
+ ExtFrames.hookPrebuildFrameMenu = NULL;
+}
+
+//////////////////////////////////////////////////////////////////////////
+//want show tooltip for statusbar
+//wparam=(char *)protocolname
+//lparam=0
+//#define ME_CLIST_FRAMES_SB_SHOW_TOOLTIP "CListFrames/StatusBarShowToolTip"
+
+//////////////////////////////////////////////////////////////////////////
+//want hide tooltip for statusbar
+//wparam=lparam=0
+//#define ME_CLIST_FRAMES_SB_HIDE_TOOLTIP "CListFrames/StatusBarHideToolTip"
+
+//////////////////////////////////////////////////////////////////////////
+//adds a frame window
+//wParam=(CLISTFrame*)
+//lParam=0
+//returns an integer, the frame id.
+//#define MS_CLIST_FRAMES_ADDFRAME "CListFrames/AddFrame"
+/**static*/ int _ExtFramesSrv_AddFrame(WPARAM wParam, LPARAM lParam)
+{
+ CLISTFrame *clfrm=(CLISTFrame *)wParam;
+ int frameId = -1;
+
+ // the clfrm->name is used as id in DB and frames without it will not be supported
+ if ( !clfrm || pcli->hwndContactList == NULL || clfrm->cbSize!=sizeof(CLISTFrame) || clfrm->name==NULL)
+ return frameId;
+
+ efcheck frameId;
+ eflock;
+ {
+ EXTFRAMEWND * pExtFrm=(EXTFRAMEWND *)mir_alloc(sizeof(EXTFRAMEWND));
+ memset(pExtFrm,0,sizeof(EXTFRAMEWND));
+ pExtFrm->dwFrameID = ExtFrames.dwNextFrameID++;
+ pExtFrm->hwndFrame = clfrm->hWnd;
+ pExtFrm->efrm.szFrameNameID = mir_strdup(clfrm->name);
+
+ //fill frame info by caller provided values
+ pExtFrm->efrm.dwFlags = clfrm->Flags;
+ // frame alignment
+ pExtFrm->efrm.nEdge = clfrm->align;
+ pExtFrm->efrm.nType = (clfrm->align&alVertFrameMask) ? EFT_VERTICAL : EFT_HORIZONTAL;
+
+ if (pExtFrm->efrm.nType == EFT_VERTICAL)
+ pExtFrm->efrm.minCX = clfrm->minSize;
+ else
+ pExtFrm->efrm.minCY = clfrm->minSize;
+
+ _ExtFrames_GetFrameDBOption(pExtFrm);
+ _ExtFramesUtils_CheckAlighment(pExtFrm);
+ li.List_Insert(ExtFrames.List, pExtFrm, 0);
+ //clfrm->hIcon
+ //clfrm->TBname
+
+ frameId=pExtFrm->dwFrameID;
+ }
+ efunlock;
+ return frameId; //frame id
+}
+//////////////////////////////////////////////////////////////////////////
+// remove frame. It does not destroy your window
+//
+//#define MS_CLIST_FRAMES_REMOVEFRAME "CListFrames/RemoveFrame"
+static int _ExtFramesSrv_RemoveFrame(WPARAM wParam, LPARAM lParam)
+{
+ efcheck 0;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return 0;
+}
+//////////////////////////////////////////////////////////////////////////
+//shows all frames
+//wParam=lParam=0
+//returns 0 on success, -1 on failure
+//#define MS_CLIST_FRAMES_SHOWALLFRAMES "CListFrames/ShowALLFrames"
+static int _ExtFramesSrv_ShowAllFrames(WPARAM wParam, LPARAM lParam)
+{
+ efcheck -1;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return 0;
+}
+//////////////////////////////////////////////////////////////////////////
+//shows the titlebars of all frames
+//wParam=lParam=0
+//returns 0 on success, -1 on failure
+//#define MS_CLIST_FRAMES_SHOWALLFRAMESTB "CListFrames/ShowALLFramesTB"
+static int _ExtFramesSrv_ShowAllFramesTB(WPARAM wParam, LPARAM lParam)
+{
+ efcheck -1;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return 0;
+}
+
+//////////////////////////////////////////////////////////////////////////
+//hides the titlebars of all frames
+//wParam=lParam=0
+//returns 0 on success, -1 on failure
+//#define MS_CLIST_FRAMES_HIDEALLFRAMESTB "CListFrames/HideALLFramesTB"
+static int _ExtFramesSrv_HideAllFramesTB(WPARAM wParam, LPARAM lParam)
+{
+ efcheck -1;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return 0;
+}
+//////////////////////////////////////////////////////////////////////////
+//shows the frame if it is hidden,
+//hides the frame if it is shown
+//wParam=FrameId
+//lParam=0
+//returns 0 on success, -1 on failure
+//#define MS_CLIST_FRAMES_SHFRAME "CListFrames/SHFrame"
+static int _ExtFramesSrv_SHFrame(WPARAM wParam, LPARAM lParam)
+{
+ efcheck -1;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return 0;
+}
+//////////////////////////////////////////////////////////////////////////
+//shows the frame titlebar if it is hidden,
+//hides the frame titlebar if it is shown
+//wParam=FrameId
+//lParam=0
+//returns 0 on success, -1 on failure
+//#define MS_CLIST_FRAMES_SHFRAMETITLEBAR "CListFrame/SHFrameTitleBar"
+static int _ExtFramesSrv_SHFrameTitleBar(WPARAM wParam, LPARAM lParam)
+{
+ efcheck -1;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return 0;
+}
+
+//////////////////////////////////////////////////////////////////////////
+//locks the frame if it is unlocked,
+//unlock the frame if it is locked
+//wParam=FrameId
+//lParam=0
+//returns 0 on success, -1 on failure
+//#define MS_CLIST_FRAMES_ULFRAME "CListFrame/ULFrame"
+static int _ExtFramesSrv_ULFrame(WPARAM wParam, LPARAM lParam)
+{
+ efcheck -1;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return 0;
+}
+//////////////////////////////////////////////////////////////////////////
+//collapses the frame if it is uncollapsed,
+//uncollapses the frame if it is collapsed
+//wParam=FrameId
+//lParam=0
+//returns 0 on success, -1 on failure
+//#define MS_CLIST_FRAMES_UCOLLFRAME "CListFrame/UCOLLFrame"
+static int _ExtFramesSrv_UCollFrame(WPARAM wParam, LPARAM lParam)
+{
+ efcheck -1;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return 0;
+}
+//////////////////////////////////////////////////////////////////////////
+//trigger border flags
+//wparam=frameid
+//lparam=0
+//#define MS_CLIST_FRAMES_SETUNBORDER "CListFrame/SetUnBorder"
+static int _ExtFramesSrv_SetUnBorder(WPARAM wParam, LPARAM lParam)
+{
+ efcheck -1;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return 0;
+}
+
+//////////////////////////////////////////////////////////////////////////
+//redraws the frame
+//wParam=FrameId, -1 for all frames
+//lparam=FU_flags
+//returns a pointer to option, -1 on failure
+//#define MS_CLIST_FRAMES_UPDATEFRAME "CListFrame/UpdateFrame"
+static int _ExtFramesSrv_UpdateFrame(WPARAM wParam, LPARAM lParam)
+{
+ int ret=-1;
+ efcheck ret;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return ret;
+}
+//////////////////////////////////////////////////////////////////////////
+//gets the frame options
+//(HIWORD)wParam=FrameId
+//(LOWORD)wParam=FO_flag
+//lParam=0
+//returns a pointer to option, -1 on failure
+//#define MS_CLIST_FRAMES_GETFRAMEOPTIONS "CListFrame/GetFrameOptions"
+static int _ExtFramesSrv_GetFrameOptions(WPARAM wParam, LPARAM lParam)
+{
+ int ret=-1;
+ efcheck ret;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return ret;
+}
+//sets the frame options
+//(HIWORLD)wParam=FrameId
+//(LOWORD)wParam=FO_flag
+//lParam=value
+//returns 0 on success, -1 on failure
+//#define MS_CLIST_FRAMES_SETFRAMEOPTIONS "CListFrame/SetFrameOptions"
+static int _ExtFramesSrv_SetFrameOptions(WPARAM wParam, LPARAM lParam)
+{
+ int ret=-1;
+ efcheck ret;
+ eflock;
+ {
+ // DO HERE
+ }
+ efunlock;
+ return ret;
+}
+//////////////////////////////////////////////////////////////////////////
+//Frames related menu stuff
+//////////////////////////////////////////////////////////////////////////
+
+//////////////////////////////////////////////////////////////////////////
+//add a new item to the context frame menu
+//wParam=0
+//lParam=(LPARAM)(CLISTMENUITEM*)&mi
+//returns a handle to the new item
+//popupposition=frameid
+//contactowner=advanced parameter
+//#define MS_CLIST_ADDCONTEXTFRAMEMENUITEM "CList/AddContextFrameMenuItem"
+
+//////////////////////////////////////////////////////////////////////////
+//remove a item from context frame menu
+//wParam=hMenuItem returned by MS_CLIST_ADDCONTACTMENUITEM
+//lParam=0
+//returns 0 on success, nonzero on failure
+//#define MS_CLIST_REMOVECONTEXTFRAMEMENUITEM "CList/RemoveContextFrameMenuItem"
+
+//////////////////////////////////////////////////////////////////////////
+//builds the context menu for a frame
+//wparam=frameid
+//lParam=0
+//returns a HMENU on success, or NULL on failure
+//#define MS_CLIST_MENUBUILDFRAMECONTEXT "CList/BuildContextFrameMenu"
+
+//////////////////////////////////////////////////////////////////////////
+// the frame menu is about to be built
+// wparam=frameid
+// lparam=
+// -1 for build from titlebar,
+// use
+// MS_CLIST_ADDCONTEXTFRAMEMENUITEM
+// MS_CLIST_REMOVECONTEXTFRAMEMENUITEM
+//
+// >0 for build in main menu,
+// must be popupname=lparam to place your items in right popup of main menu.
+// use
+// MS_CLIST_ADDMAINMENUITEM
+// MS_CLIST_REMOVEMAINMENUITEM
+//
+//#define ME_CLIST_PREBUILDFRAMEMENU "CList/PreBuildFrameMenu"
+
+//////////////////////////////////////////////////////////////////////////
+//needed by cluiframes module to add frames menu to main menu.
+//it just calls NotifyEventHooks(hPreBuildFrameMenuEvent,wParam,lParam);
+//#define MS_CLIST_FRAMEMENUNOTIFY "CList/ContextFrameMenuNotify"
+#endif \ No newline at end of file