- // spec-dlgs\P4SpecSheet.cpp : implementation file
- //
- #include "stdafx.h"
- #include "P4win.h"
- #include "P4SpecSheet.h"
- #include "P4Command.h"
- #include "MainFrm.h"
- // CP4SpecSheet dialog
- IMPLEMENT_DYNAMIC(CP4SpecSheet, CDialog)
- CP4SpecSheet::CP4SpecSheet(CWnd* pParent /*=NULL*/)
- : CDialog(CP4SpecSheet::IDD, pParent)
- {
- m_pParent = pParent;
- m_LastFocus= 0;
- m_BtnId[0] = ID_UPDATE;
- m_BtnId[1] = ID_EDITOR;
- m_BtnId[2] = ID_CANCEL;
- m_BtnId[3] = ID_HELPNOTES;
- m_BtnId[4] = ID_HELP;
- m_bShowReopen = m_bShowRevertUnchg = m_IsMinimized = FALSE;
- m_MainFRmSignaled = TRUE;
- m_Pad = 0;
- m_UnchangedFlag = 0;
- }
- CP4SpecSheet::~CP4SpecSheet()
- {
- if (m_pParent && !m_MainFRmSignaled)
- ::PostMessage(MainFrame()->m_hWnd, WM_P4DLGDESTROY, 0, (LPARAM)this);
- }
- void CP4SpecSheet::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- //{{AFX_DATA_MAP(CP4SpecSheet)
- DDX_Control(pDX, ID_HELP, m_bHelpHelp);
- DDX_Control(pDX, ID_HELPNOTES, m_bHelp);
- DDX_Control(pDX, ID_EDITOR, m_bEditor);
- DDX_Control(pDX, ID_UPDATE, m_bOK);
- DDX_Control(pDX, ID_ACTION_1, m_bAlternate);
- DDX_Control(pDX, ID_CANCEL, m_bCancel);
- DDX_Control(pDX, IDC_REOPEN, m_bReopen);
- DDX_Radio(pDX, IDC_RADIOSUBMIT, m_UnchangedFlag);
- //}}AFX_DATA_MAP
- }
- BEGIN_MESSAGE_MAP(CP4SpecSheet, CDialog)
- //{{AFX_MSG_MAP(CP4SpecSheet)
- ON_BN_CLICKED(IDOK, OnEnter)
- ON_BN_CLICKED(ID_UPDATE, On_OK)
- ON_BN_CLICKED(ID_ACTION_1, OnAlternate)
- ON_BN_CLICKED(ID_CANCEL, On_Cancel)
- ON_BN_CLICKED(ID_HELPNOTES, OnHelpnotes)
- ON_BN_CLICKED(ID_EDITOR, OnEditor)
- ON_BN_CLICKED(ID_HELP, OnHelp)
- ON_BN_CLICKED(IDC_REOPEN, OnReopen)
- ON_BN_CLICKED(IDC_RADIOSUBMIT, OnRadioUnchg)
- ON_BN_CLICKED(IDC_RADIOREVERT, OnRadioUnchg)
- ON_BN_CLICKED(IDC_RADIOLEAVE, OnRadioUnchg)
- ON_WM_SIZE()
- ON_WM_SIZING()
- ON_WM_GETMINMAXINFO()
- ON_WM_SHOWWINDOW()
- ON_WM_HELPINFO()
- ON_WM_CLOSE()
- ON_WM_DESTROY()
- ON_WM_SYSCOMMAND()
- //}}AFX_MSG_MAP
- ON_MESSAGE(WM_MODIFYSTYLE, OnModifyStyle)
- ON_MESSAGE(WM_P4ENDDESCRIBE, OnP4EndHelpnotes )
- ON_MESSAGE(WM_QUITTING, OnQuitting )
- ON_MESSAGE(WM_ENABLEDISABLE, OnEnableDisable )
- ON_MESSAGE(WM_FORCEFOCUS, OnForceFocus )
- ON_WM_ACTIVATE()
- END_MESSAGE_MAP()
- // CP4SpecSheet message handlers
- BOOL CP4SpecSheet::OnInitDialog()
- {
- CDialog::OnInitDialog();
- if (m_pParent)
- {
- MainFrame()->SetModelessWnd(this);
- m_MainFRmSignaled = FALSE; // indicate that we need to let MainFrame know when we end
- }
- else
- {
- long style = GetWindowLong(m_hWnd, GWL_STYLE);
- style ^= WS_MINIMIZEBOX;
- SetWindowLong(m_hWnd, GWL_STYLE, style);
- }
- // For Submit forms, we need the value of m_UnchangedFlag before we call m_P4SpecDlg.Create();
- // so compute it here and show/hide the Reopen checkbox & Unchanged radio buttons.
- if( m_P4SpecDlg.m_SpecType == P4CHANGE_SPEC && m_P4SpecDlg.m_AllowSubmit )
- {
- if (GET_SERVERLEVEL() >= 13)
- {
- m_bReopen.SetCheck(GET_P4REGPTR()->GetAutoReopen());
- m_bShowReopen = TRUE;
- if (GET_SERVERLEVEL() >= 21) // 2006.1 or later?
- {
- if (GET_P4REGPTR()->UseClientSpecSubmitOpts() // do they want to use cli spec opts?
- && TheApp( )->m_ClientSubOpts && GET_SERVERLEVEL() >= 22) // 2006.2 or later?
- {
- switch(TheApp( )->m_ClientSubOpts)
- {
- case SUBMITUNCHANGED:
- case SUBMITUNCHANGED_REOPEN:
- m_UnchangedFlag = 0;
- break;
- case REVERTUNCHANGED:
- case REVERTUNCHANGED_REOPEN:
- m_UnchangedFlag = 1;
- break;
- default:
- case LEAVEUNCHANGED:
- case LEAVEUNCHANGED_REOPEN:
- m_UnchangedFlag = 2;
- break;
- }
- m_bReopen.SetCheck(TheApp( )->m_ClientSubOpts > REOPEN_MASK);
- }
- else
- {
- if (!GET_P4REGPTR()->GetSubmitOnlyChged())
- m_UnchangedFlag = 0;
- else
- m_UnchangedFlag = GET_P4REGPTR()->GetRevertUnchged() ? 1 : 2;
- }
- m_bShowRevertUnchg = TRUE;
- }
- else
- {
- GetDlgItem( IDC_STATICUNCHANGED )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_RADIOSUBMIT )->EnableWindow(FALSE);
- GetDlgItem( IDC_RADIOSUBMIT )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_RADIOREVERT )->EnableWindow(FALSE);
- GetDlgItem( IDC_RADIOREVERT )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_RADIOLEAVE )->EnableWindow(FALSE);
- GetDlgItem( IDC_RADIOLEAVE )->ShowWindow(SW_HIDE);
- m_UnchangedFlag = GET_P4REGPTR()->GetSubmitOnlyChged() ? 2 : 0;
- }
- }
- else
- {
- m_bReopen.SetCheck(FALSE);
- GetDlgItem( IDC_REOPEN )->EnableWindow(FALSE);
- GetDlgItem( IDC_REOPEN )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_STATICUNCHANGED )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_RADIOSUBMIT )->EnableWindow(FALSE);
- GetDlgItem( IDC_RADIOSUBMIT )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_RADIOREVERT )->EnableWindow(FALSE);
- GetDlgItem( IDC_RADIOREVERT )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_RADIOLEAVE )->EnableWindow(FALSE);
- GetDlgItem( IDC_RADIOLEAVE )->ShowWindow(SW_HIDE);
- m_UnchangedFlag = GET_P4REGPTR()->GetSubmitOnlyChged() ? 2 : 0;
- }
- }
- else
- {
- GetDlgItem( IDC_REOPEN )->EnableWindow(FALSE);
- GetDlgItem( IDC_REOPEN )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_STATICUNCHANGED )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_RADIOSUBMIT )->EnableWindow(FALSE);
- GetDlgItem( IDC_RADIOSUBMIT )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_RADIOREVERT )->EnableWindow(FALSE);
- GetDlgItem( IDC_RADIOREVERT )->ShowWindow(SW_HIDE);
- GetDlgItem( IDC_RADIOLEAVE )->EnableWindow(FALSE);
- GetDlgItem( IDC_RADIOLEAVE )->ShowWindow(SW_HIDE);
- GetDlgItem( ID_ACTION_1 )->EnableWindow(FALSE);
- GetDlgItem( ID_ACTION_1 )->ShowWindow(SW_HIDE);
- SendMessage(DM_SETDEFID, ID_UPDATE, 0);
- }
- CRect clientRect, newClientRect, windowRect, newWindowRect;
- // Create the SpecDlg property page - this runs CP4SpecDlg::OnInitDialog()
- m_P4SpecDlg.m_UnchangedFlag = m_UnchangedFlag;
- m_P4SpecDlg.m_WinPos.SetWindowPtr(this);
- m_P4SpecDlg.Create(m_P4SpecDlg.m_psp.pszTemplate, this);
- m_P4SpecDlg.SetWindowPos(&CWnd::wndBottom, 0, 0, 0, 0, SWP_NOSIZE);
- // Change the font in the dialog & on the buttons
- SetFont(&m_P4SpecDlg.m_Font);
- ChgFont(ID_ACTION_1);
- ChgFont(ID_UPDATE);
- ChgFont(ID_CANCEL);
- ChgFont(ID_HELPNOTES);
- ChgFont(ID_EDITOR);
- ChgFont(ID_HELP);
- ChgFont(IDC_REOPEN);
- ChgFont(IDC_STATICUNCHANGED);
- ChgFont(IDC_RADIOSUBMIT);
- ChgFont(IDC_RADIOREVERT);
- ChgFont(IDC_RADIOLEAVE);
- // Position SpecDlg and reposition our buttons
- CRect rect, rectCancel;
- GetClientRect(&rect);
- GetDlgItem( ID_CANCEL )->GetWindowRect( &rectCancel );
- ScreenToClient( &rectCancel );
- // Now that m_P4SpecDlg has been created, we can position the buttons on a submit form
- if( m_P4SpecDlg.m_SpecType == P4CHANGE_SPEC && m_P4SpecDlg.m_AllowSubmit )
- {
- if (m_bShowReopen)
- {
- GetDlgItem( IDC_REOPEN )->GetWindowRect( &rect );
- m_Pad += rect.Height();
- }
- GetDlgItem( ID_UPDATE )->GetWindowRect( windowRect );
- ScreenToClient( windowRect );
- GetDlgItem( m_BtnId[0] = ID_ACTION_1 )->MoveWindow( windowRect );
- GetDlgItem( ID_EDITOR )->GetWindowRect( windowRect );
- ScreenToClient( windowRect );
- GetDlgItem( m_BtnId[1] = ID_UPDATE )->MoveWindow( windowRect );
- GetDlgItem( ID_EDITOR )->EnableWindow(FALSE);
- GetDlgItem( ID_EDITOR )->ShowWindow(SW_HIDE);
- m_P4SpecDlg.m_EditorBtnDisabled = TRUE;
- SendMessage(DM_SETDEFID, ID_ACTION_1, 0);
- }
- OnReopen();
- CWnd *pButton=GetDlgItem(ID_HELP);
- pButton->GetWindowRect(&rect);
- int w=rect.Width();
- int xtra = w/16;
- GetWindowRect(&rect);
- rect.right= max( rect.right, rect.left + 5 * w + 8 * xtra );
- // Yeah, this is stupid, but it seems to
- // be necessary to make the buttons show
- rect.top += 1;
- MoveWindow(&rect);
- rect.top -= 1;
- MoveWindow(&rect);
- UpdateData(FALSE);
- return FALSE; // return TRUE unless you set the focus to a control
- }
- void CP4SpecSheet::ChgFont(int id)
- {
- CRect windowRect;
- CWnd *pChildWnd = GetDlgItem( id );
- pChildWnd->SetFont( &m_P4SpecDlg.m_Font );
- pChildWnd->GetWindowRect( windowRect );
- ScreenToClient( windowRect );
- windowRect.left= windowRect.left * m_P4SpecDlg.m_NewAveCharWidth / m_P4SpecDlg.m_OldAveCharWidth;
- windowRect.right= windowRect.right * m_P4SpecDlg.m_NewAveCharWidth / m_P4SpecDlg.m_OldAveCharWidth;
- windowRect.top= windowRect.top * m_P4SpecDlg.m_NewHeight / m_P4SpecDlg.m_OldHeight;
- windowRect.bottom= windowRect.bottom * m_P4SpecDlg.m_NewHeight / m_P4SpecDlg.m_OldHeight;
- pChildWnd->MoveWindow( windowRect );
- }
- void CP4SpecSheet::OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized)
- {
- CDialog::OnActivate(nState, pWndOther, bMinimized);
- if (nState == WA_ACTIVE)
- {
- if (m_LastFocus)
- {
- if (!IsBadWritePtr(m_LastFocus, sizeof(CWnd))
- && IsWindow(m_LastFocus->m_hWnd))
- PostMessage(WM_FORCEFOCUS, 2, (LPARAM)m_LastFocus->m_hWnd);
- m_LastFocus = 0;
- }
- }
- else if (nState == WA_INACTIVE)
- {
- if (!m_LastFocus)
- {
- CWnd *w = GetFocus();
- if (!w || w->GetParent()->m_hWnd == m_P4SpecDlg.m_hWnd)
- m_LastFocus = w;
- }
- }
- }
- LRESULT CP4SpecSheet::OnForceFocus(WPARAM wParam, LPARAM lParam)
- {
- if (wParam)
- PostMessage(WM_FORCEFOCUS, --wParam, lParam);
- else
- {
- HWND hWnd = (HWND)lParam;
- ::SetForegroundWindow(m_P4SpecDlg.m_hWnd);
- ::SetFocus(m_P4SpecDlg.m_hWnd);
- ::SetForegroundWindow(hWnd);
- ::SetFocus(hWnd);
- }
- return wParam;
- }
- void CP4SpecSheet::OnShowWindow(BOOL bShow, UINT nStatus)
- {
- CDialog::OnShowWindow(bShow, nStatus);
- }
- int CP4SpecSheet::DoModal()
- {
- m_P4SpecDlg.SetIsModal(TRUE);
- int retcode=CDialog::DoModal();
- m_P4SpecDlg.DoCleanup();
- return retcode;
- }
- void CP4SpecSheet::OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI)
- {
- RECT rect;
- SystemParametersInfo(SPI_GETWORKAREA, 0, &rect, 0);
- m_ScreenHeight = rect.bottom - rect.top;
- lpMMI->ptMinTrackSize.y = 240;
- lpMMI->ptMaxTrackSize.y = m_ScreenHeight;
- CDialog::OnGetMinMaxInfo(lpMMI);
- }
- void CP4SpecSheet::OnSizing(UINT fwSide, LPRECT pRect)
- {
- CDialog::OnSizing(fwSide, pRect);
- pRect->bottom= max( pRect->bottom, pRect->top + 240 );
- pRect->bottom= min( pRect->bottom, m_ScreenHeight );
- CWnd *pButton=GetDlgItem(ID_HELP);
- if (!pButton || !IsWindow(pButton->m_hWnd))
- return;
- CRect rect;
- pButton->GetWindowRect(&rect);
- int w=rect.Width();
- int xtra = w/16;
- pRect->right= max( pRect->right, pRect->left + 5 * w + 8 * xtra );
- }
- void CP4SpecSheet::OnSize(UINT nType, int cx, int cy)
- {
- CDialog::OnSize(nType, cx, cy);
- if (nType == SIZE_MINIMIZED)
- {
- m_IsMinimized = TRUE;
- return;
- }
- else if (m_IsMinimized)
- {
- m_IsMinimized = FALSE;
- if (nType != SIZE_MAXIMIZED)
- return;
- }
- CWnd *pButton=GetDlgItem(ID_HELP);
- if (!pButton || !IsWindow(pButton->m_hWnd))
- return;
- CRect rect, rect2, rectCancel;
- pButton->InvalidateRect(NULL, TRUE);
- pButton->GetWindowRect(&rect);
- int x;
- int w=rect.Width();
- int xtra = w/16;
- int end = cx - xtra;
- int y = cy - xtra - rect.Height();
- pButton->SetWindowPos(NULL, end - w, y, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- pButton=GetDlgItem(m_BtnId[3]);
- pButton->InvalidateRect(NULL, TRUE);
- pButton->SetWindowPos(NULL, end - (w*2 + xtra), y, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- pButton=GetDlgItem(m_BtnId[2]);
- pButton->InvalidateRect(NULL, TRUE);
- pButton->SetWindowPos(NULL, end - (w*3 + xtra*2), y, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- pButton=GetDlgItem(m_BtnId[1]);
- pButton->InvalidateRect(NULL, TRUE);
- pButton->SetWindowPos(NULL, end - (w*4 + xtra*3), y, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- pButton=GetDlgItem(m_BtnId[0]);
- pButton->InvalidateRect(NULL, TRUE);
- pButton->SetWindowPos(NULL, end - (w*5 + xtra*4), y, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- GetClientRect(&rect);
- GetDlgItem( ID_CANCEL )->GetWindowRect( &rectCancel );
- ScreenToClient( &rectCancel );
- if (!m_Pad)
- m_Pad = (rect.bottom - rectCancel.bottom) * 2;
- m_P4SpecDlg.SetWindowPos(&CWnd::wndBottom, 0, 0,
- rect.Width(), rect.Height() - rectCancel.Height() - m_Pad, 0);
- // Place the bottom of the Reopen Checkbox 3 pixels above the top of the buttons
- pButton=GetDlgItem(IDC_REOPEN);
- pButton->GetClientRect(&rect);
- pButton->InvalidateRect(NULL, TRUE);
- pButton->SetWindowPos(NULL, end - (w*5 + xtra*4),
- rectCancel.top - rect.Height() - 3, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- pButton=GetDlgItem(IDC_STATICUNCHANGED);
- pButton->InvalidateRect(NULL, TRUE);
- pButton->SetWindowPos(NULL, x = end - (w*5 + xtra*4) + rect.Width(),
- rectCancel.top - rect.Height() - 3 + 1, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- pButton->GetWindowRect(&rect2);
- pButton=GetDlgItem(IDC_RADIOSUBMIT);
- pButton->InvalidateRect(NULL, TRUE);
- pButton->SetWindowPos(NULL, x = x + rect2.Width(),
- rectCancel.top - rect.Height() - 3, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- pButton->GetWindowRect(&rect2);
- pButton=GetDlgItem(IDC_RADIOREVERT);
- pButton->InvalidateRect(NULL, TRUE);
- pButton->SetWindowPos(NULL, x = x + rect2.Width(),
- rectCancel.top - rect.Height() - 3, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- pButton->GetWindowRect(&rect2);
- pButton=GetDlgItem(IDC_RADIOLEAVE);
- pButton->InvalidateRect(NULL, TRUE);
- pButton->SetWindowPos(NULL, x = x + rect2.Width(),
- rectCancel.top - rect.Height() - 3, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
- }
- // The user pressed the Enter key and we got a button click for IDOK
- void CP4SpecSheet::OnEnter()
- {
- m_P4SpecDlg.OnEnter();
- }
- void CP4SpecSheet::On_OK()
- {
- m_P4SpecDlg.On_OK();
- }
- void CP4SpecSheet::OnAlternate()
- {
- if (GET_SERVERLEVEL() >= 21) // 2006.1 or later?
- OnRadioUnchg();
- m_P4SpecDlg.OnAlternate();
- }
- void CP4SpecSheet::On_Cancel()
- {
- m_P4SpecDlg.On_Cancel();
- }
- void CP4SpecSheet::OnCancel()
- {
- // Eat ESC while sending spec, so the server's reply can
- // be properly processed. Don't confuse this with On_Cancel(),
- // which is called when the cancel button is hit.
- // m_P4SpecDlg.OnCancel() does all the work
- m_P4SpecDlg.OnCancel();
- }
- void CP4SpecSheet::OnHelpnotes()
- {
- m_P4SpecDlg.OnHelpnotes();
- }
- void CP4SpecSheet::OnEditor()
- {
- m_P4SpecDlg.OnEditor();
- }
- void CP4SpecSheet::OnHelp()
- {
- m_P4SpecDlg.OnHelp();
- }
- void CP4SpecSheet::OnClose()
- {
- On_Cancel();
- }
- LRESULT CP4SpecSheet::OnQuitting(WPARAM wParam, LPARAM lParam)
- {
- if (m_pParent)
- {
- CP4Command *pCmd = (CP4Command *)m_P4SpecDlg.GetCallingCommand();
- m_pParent->SendMessage(WM_P4ENDSPECEDIT, (WPARAM)pCmd, IDABORT);
- }
- m_P4SpecDlg.DoCleanup();
- return 0;
- }
- // This signals the closing of a modeless dialog
- // to MainFrame which will delete the 'this' object
- void CP4SpecSheet::OnDestroy()
- {
- if (m_pParent)
- {
- ::PostMessage(MainFrame()->m_hWnd, WM_P4DLGDESTROY, 0, (LPARAM)this);
- m_MainFRmSignaled = TRUE;
- }
- }
- BOOL CP4SpecSheet::OnHelpInfo(HELPINFO* pHelpInfo)
- {
- return m_P4SpecDlg.OnHelpInfo(pHelpInfo);
- }
- void CP4SpecSheet::OnReopen()
- {
- m_P4SpecDlg.m_bReopen = m_bReopen.GetCheck();
- }
- void CP4SpecSheet::OnRadioUnchg()
- {
- UpdateData();
- m_P4SpecDlg.m_CheckOnlyChgedFiles = (m_UnchangedFlag == 2);
- m_P4SpecDlg.ResetFileChecks((m_P4SpecDlg.m_UnchangedFlag = m_UnchangedFlag) != 2);
- }
- LRESULT CP4SpecSheet::OnEnableDisable( WPARAM wParam, LPARAM lParam )
- {
- GetDlgItem( IDC_STATICUNCHANGED )->EnableWindow(lParam);
- GetDlgItem( IDC_RADIOREVERT )->EnableWindow(lParam);
- GetDlgItem( IDC_RADIOSUBMIT )->EnableWindow(lParam);
- GetDlgItem( IDC_RADIOLEAVE )->EnableWindow(lParam);
- return 0;
- }
- LRESULT CP4SpecSheet::OnModifyStyle( WPARAM wParam, LPARAM lParam )
- {
- for (int i = -1; ++i < 5; )
- GetDlgItem(m_BtnId[i])->ModifyStyle((DWORD)wParam, (DWORD)lParam, 0);
- if (m_bShowReopen)
- GetDlgItem(IDC_REOPEN)->ModifyStyle((DWORD)wParam, (DWORD)lParam, 0);
- if (m_bShowRevertUnchg)
- {
- GetDlgItem( IDC_STATICUNCHANGED )->ModifyStyle((DWORD)wParam, (DWORD)lParam, 0);
- GetDlgItem( IDC_RADIOREVERT )->ModifyStyle((DWORD)wParam, (DWORD)lParam, 0);
- GetDlgItem( IDC_RADIOSUBMIT )->ModifyStyle((DWORD)wParam, (DWORD)lParam, 0);
- GetDlgItem( IDC_RADIOLEAVE )->ModifyStyle((DWORD)wParam, (DWORD)lParam, 0);
- }
- return 0;
- }
- LRESULT CP4SpecSheet::OnP4EndHelpnotes(WPARAM wParam, LPARAM lParam)
- {
- return m_P4SpecDlg.OnP4EndHelpnotes(wParam, lParam);
- }
- void CP4SpecSheet::OnSysCommand(UINT nID, LPARAM lParam)
- {
- switch(nID)
- {
- case SC_MINIMIZE:
- GetDesktopWindow()->ArrangeIconicWindows();
- break;
- }
- CDialog::OnSysCommand(nID, lParam);
- }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 19924 | YourUncleBob |
Populate -o //guest/perforce_software/p4win/... //guest/YourUncleBob/p4win/..... |
9 years ago | |
//guest/perforce_software/p4win/main/gui/spec-dlgs/P4SpecSheet.cpp | |||||
#1 | 16169 | perforce_software | Move files to follow new path scheme for branches. | 9 years ago | |
//guest/perforce_software/p4win/gui/spec-dlgs/P4SpecSheet.cpp | |||||
#1 | 8562 | Matt Attaway | These feet never stop running. Initial commit of the P4Win source code. To the be...st of our knowledge this compiles and runs using the 2013.3 P4 API and VS 2010. Expect a few changes as we refine the build process. Please post any build issues to the forums. « |
11 years ago |