Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

73 lines
2.1 KiB

// edit.h
//
#ifndef DUI_CONTROL_EDIT_H_INCLUDED
#define DUI_CONTROL_EDIT_H_INCLUDED
#include "duihwndhost.h"
namespace DirectUI
{
////////////////////////////////////////////////////////
// Edit
// EditEnter event
struct EditEnterEvent : Event
{
};
// Class definition
class Edit : public HWNDHost
{
public:
static HRESULT Create(OUT Element** ppElement) { return Create(AE_MouseAndKeyboard, ppElement); }
static HRESULT Create(UINT nActive, OUT Element** ppElement);
// System events
virtual void OnPropertyChanged(PropertyInfo* ppi, int iIndex, Value* pvOld, Value* pvNew);
virtual void OnInput(InputEvent* pie);
// Control notifications
virtual bool OnNotify(UINT nMsg, WPARAM wParam, LPARAM lParam, LRESULT* plRet);
virtual UINT MessageCallback(GMSG* pGMsg);
// Rendering
SIZE GetContentSize(int dConstW, int dConstH, Surface* psrf);
// Event types
static UID Enter;
// Property definitions
static PropertyInfo* MultilineProp;
static PropertyInfo* PasswordCharacterProp;
static PropertyInfo* DirtyProp;
// Quick property accessors
int GetPasswordCharacter() DUIQuickGetter(int, GetInt(), PasswordCharacter, Specified)
bool GetMultiline() DUIQuickGetter(bool, GetBool(), Multiline, Specified)
bool GetDirty() DUIQuickGetter(bool, GetBool(), Dirty, Specified)
HRESULT SetPasswordCharacter(int v) DUIQuickSetter(CreateInt(v), PasswordCharacter)
HRESULT SetMultiline(bool v) DUIQuickSetter(CreateBool(v), Multiline)
HRESULT SetDirty(bool v);
// ClassInfo accessors (static and virtual instance-based)
static IClassInfo* Class;
virtual IClassInfo* GetClassInfo() { return Class; }
static HRESULT Register();
Edit() { }
virtual ~Edit() { }
HRESULT Initialize(UINT nActive) { return HWNDHost::Initialize(HHC_CacheFont | HHC_SyncText | HHC_SyncPaint, nActive); }
protected:
virtual HWND CreateHWND(HWND hwndParent);
};
} // namespace DirectUI
#endif // DUI_CONTROL_EDIT_H_INCLUDED