view src/VisVim/DSAddIn.h @ 11416:32aed0993813 v8.0.0592

patch 8.0.0592: if a job writes to a buffer screen is not updated commit https://github.com/vim/vim/commit/29ae377ea7039874337bc79ace9ab2b37b9056e5 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Apr 30 19:39:39 2017 +0200 patch 8.0.0592: if a job writes to a buffer screen is not updated Problem: If a job writes to a buffer and the user is typing a command, the screen isn't updated. When a message is displayed the changed buffer may cause it to be cleared. (Ramel Eshed) Solution: Update the screen and then the command line if the screen didn't scroll. Avoid inserting screen lines, as it clears any message. Update the status line when the buffer changed.
author Christian Brabandt <cb@256bit.org>
date Sun, 30 Apr 2017 19:45:03 +0200
parents 3fc0f57ecb91
children
line wrap: on
line source

// DSAddIn.h : header file
//

#if !defined(AFX_DSADDIN_H__AC726715_2977_11D1_B2F3_006008040780__INCLUDED_)
#define AFX_DSADDIN_H__AC726715_2977_11D1_B2F3_006008040780__INCLUDED_

#include "commands.h"

// {4F9E01C0-406B-11d2-8006-00001C405077}
DEFINE_GUID (CLSID_DSAddIn,
	0x4f9e01c0, 0x406b, 0x11d2, 0x80, 0x6, 0x0, 0x0, 0x1c, 0x40, 0x50, 0x77);

/////////////////////////////////////////////////////////////////////////////
// CDSAddIn

class CDSAddIn :
	public   IDSAddIn,
	public   CComObjectRoot,
	public   CComCoClass < CDSAddIn,
		 &CLSID_DSAddIn >
{
    public:
	DECLARE_REGISTRY (CDSAddIn, "VisVim.DSAddIn.1",
			  "VisVim Developer Studio Add-in", IDS_VISVIM_LONGNAME,
			  THREADFLAGS_BOTH)

	CDSAddIn ()
	{
	}

	BEGIN_COM_MAP (CDSAddIn)
	COM_INTERFACE_ENTRY (IDSAddIn)
	END_COM_MAP ()
	DECLARE_NOT_AGGREGATABLE (CDSAddIn)

	// IDSAddIns
    public:
	STDMETHOD (OnConnection) (THIS_ IApplication * pApp, VARIANT_BOOL bFirstTime,
				  long dwCookie, VARIANT_BOOL * OnConnection);
	STDMETHOD (OnDisconnection) (THIS_ VARIANT_BOOL bLastTime);

    protected:
	bool AddCommand (IApplication* pApp, char* MethodName, char* CmdName,
			 UINT StrResId, UINT GlyphIndex, VARIANT_BOOL bFirstTime);

    protected:
	CCommandsObj * m_pCommands;
	DWORD m_dwCookie;
};

//{{AFX_INSERT_LOCATION}}

#endif // !defined(AFX_DSADDIN_H__AC726715_2977_11D1_B2F3_006008040780__INCLUDED)