moved lobby from separate module to below /src
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
// DirectoryDialog.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "smlobby.h"
|
||||
#include "DirectoryDialog.h"
|
||||
#include "dlgs.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CDirectoryDialog
|
||||
|
||||
IMPLEMENT_DYNAMIC(CDirectoryDialog, CFileDialog)
|
||||
|
||||
CDirectoryDialog::CDirectoryDialog(BOOL bOpenFileDialog, LPCTSTR lpszDefExt, LPCTSTR lpszFileName,
|
||||
DWORD dwFlags, LPCTSTR lpszFilter, CWnd* pParentWnd) :
|
||||
CFileDialog(bOpenFileDialog, lpszDefExt, lpszFileName, dwFlags, lpszFilter, pParentWnd)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CDirectoryDialog, CFileDialog)
|
||||
//{{AFX_MSG_MAP(CDirectoryDialog)
|
||||
ON_WM_PAINT()
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
|
||||
void CDirectoryDialog::OnPaint()
|
||||
{
|
||||
CPaintDC dc(this); // device context for painting
|
||||
|
||||
// TODO: Add your message handler code here
|
||||
|
||||
//This code makes the directory listbox "highlight" an entry when it first
|
||||
//comes up. W/O this code, the focus is on the directory listbox, but no
|
||||
//focus rectangle is drawn and no entries are selected. Ho hum.
|
||||
|
||||
if (m_bDlgJustCameUp)
|
||||
{
|
||||
m_bDlgJustCameUp=FALSE;
|
||||
SendDlgItemMessage(lst2, LB_SETCURSEL, 0, 0L);
|
||||
}
|
||||
|
||||
// Do not call CFileDialog::OnPaint() for painting messages
|
||||
}
|
||||
|
||||
BOOL CDirectoryDialog::OnInitDialog()
|
||||
{
|
||||
CenterWindow();
|
||||
|
||||
//Let's hide these windows so the user cannot tab to them. Note that in
|
||||
//the private template (in cddemo.dlg) the coordinates for these guys are
|
||||
//*outside* the coordinates of the dlg window itself. Without the following
|
||||
//ShowWindow()'s you would not see them, but could still tab to them.
|
||||
|
||||
GetDlgItem(stc2)->ShowWindow(SW_HIDE);
|
||||
GetDlgItem(stc3)->ShowWindow(SW_HIDE);
|
||||
GetDlgItem(edt1)->ShowWindow(SW_HIDE);
|
||||
GetDlgItem(lst1)->ShowWindow(SW_HIDE);
|
||||
GetDlgItem(cmb1)->ShowWindow(SW_HIDE);
|
||||
|
||||
//We must put something in this field, even though it is hidden. This is
|
||||
//because if this field is empty, or has something like "*.txt" in it,
|
||||
//and the user hits OK, the dlg will NOT close. We'll jam something in
|
||||
//there (like "Junk") so when the user hits OK, the dlg terminates.
|
||||
//Note that we'll deal with the "Junk" during return processing (see below)
|
||||
|
||||
SetDlgItemText(edt1, "Junk");
|
||||
|
||||
//Now set the focus to the directories listbox. Due to some painting
|
||||
//problems, we *must* also process the first WM_PAINT that comes through
|
||||
//and set the current selection at that point. Setting the selection
|
||||
//here will NOT work. See comment below in the on paint handler.
|
||||
|
||||
GetDlgItem(lst2)->SetFocus();
|
||||
|
||||
m_bDlgJustCameUp=TRUE;
|
||||
|
||||
CFileDialog::OnInitDialog();
|
||||
|
||||
return(FALSE);
|
||||
}
|
||||
Reference in New Issue
Block a user