|
That's the 'perfect forwarding' problem[^], that will only be solved well with the introduction of rvalue references in C++0x.
I would suggest you take a look at the implementation of Boost.Signals[^] - that does exactly what you're trying to implement (by which I mean the delegate concept).
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
|
|
|
|
|
Hello everyone,
Thanks a million for all the help you have all provided so far.
I would like to use the CTabCtrl. All the searches and examples I have been through in order for me to use it I have to create a TestTabCtrl class that is derived from CTabCtrl class and create a CPropertyPage class.
Please could someone confirm this for me or have I missed on other ways.
Thanks a million.
|
|
|
|
|
My english is pool, I can't explain for english. so I put code to you!
class CProperty1Dlg : public CDialog
{
// Construction
public:
CProperty1Dlg(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CProperty1Dlg)
enum { IDD = IDD_PROPERTY1_DIALOG };
CButton m_button2;
CButton m_button1;
CTabCtrl m_tab;
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CProperty1Dlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
HICON m_hIcon;
// Generated message map functions
//{{AFX_MSG(CProperty1Dlg)
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnSelchangeTab1(NMHDR* pNMHDR, LRESULT* pResult);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
CProperty1Dlg::CProperty1Dlg(CWnd* pParent /*=NULL*/)
: CDialog(CProperty1Dlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CProperty1Dlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CProperty1Dlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CProperty1Dlg)
DDX_Control(pDX, IDC_BUTTON2, m_button2);
DDX_Control(pDX, IDC_BUTTON1, m_button1);
DDX_Control(pDX, IDC_TAB1, m_tab);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CProperty1Dlg, CDialog)
//{{AFX_MSG_MAP(CProperty1Dlg)
ON_NOTIFY(TCN_SELCHANGE, IDC_TAB1, OnSelchangeTab1)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CProperty1Dlg message handlers
BOOL CProperty1Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
// Add "About..." menu item to system menu.
// IDM_ABOUTBOX must be in the system command range.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
// Set the icon for this dialog. The framework does this automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
// TODO: Add extra initialization here
m_tab.InsertItem( 0, _T("Tab1") );
m_tab.InsertItem( 1, _T("Tab2") );
m_button2.ShowWindow( SW_HIDE );
return TRUE; // return TRUE unless you set the focus to a control
}
void CProperty1Dlg::OnSelchangeTab1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
int sel = m_tab.GetCurSel();
switch(sel)
{
case 0:
m_button1.ShowWindow( SW_SHOW );
m_button2.ShowWindow( SW_HIDE );
break;
case 1:
m_button2.ShowWindow( SW_SHOW );
m_button1.ShowWindow( SW_HIDE );
break;
}
*pResult = 0;
}
|
|
|
|
|
|
Hello,
I have a CRichEditCtrl box on a CMDIChildWnd. When I move the mouse over this edit box its cursor changes to caret pointer indicating that the box is there. This CMDIChildWnd is made by Create()of CMDIChildWNd
Now when I make a Child window by CreateNewChild() and the add CRichEditCTrl on the childwindow the edit box is seen but when I move the mouse cursor on the edit box the cursor doesnt change to caret pointer .
What is the difference or what must be the problem in making child
windows in diff ways?
Pritha
|
|
|
|
|
how to create 2 state hover button or many state?!!
can one tell me
|
|
|
|
|
If you have another question, click on the "new question" link - but read the "how to get answers" post at the top first. It makes things better for you and us.
Iain.
In the process of moving to Sweden for love (awwww).
If you're in Scandinavia and want an MVP on the payroll (or happy with a remote worker), give me a job!
|
|
|
|
|
hi
Can you help in asking the question?!
|
|
|
|
|
I'll try - when you post it as a new question, so other people can try to help / learn from the answers.
Iain.
In the process of moving to Sweden for love (awwww).
If you're in Scandinavia and want an MVP on the payroll (or happy with a remote worker), give me a job!
|
|
|
|
|
I sent you the question
If you rewrite it in your own words
thanks
|
|
|
|
|
Hello,
i managed to rotate a rectangle 45 degrees. Now i have an picture that i need to map to this reversed rectangle. I heard there is an inverse mapping way. Something about u and v. I am not familiar with it. Can someone tell me how to use this?
thanks
|
|
|
|
|
You've set yourself quite a difficult task. There isn't a normal windows "draw a bitmap using these four arbitrary corners" function.
The nearest I can find is: Graphics::DrawImage, part of the GDI+ library. But it will take some learning to be able to use it from scratch.
Good luck,
Iain.
In the process of moving to Sweden for love (awwww).
If you're in Scandinavia and want an MVP on the payroll (or happy with a remote worker), give me a job!
|
|
|
|
|
Luc Pattyn answered this question here: http://www.codeproject.com/script/Forums/View.aspx?fid=326859&select=2993859#xx2993859xx
|
|
|
|
|
Recently, I download a bunch of sample C++ programs from the URL: http://msdn.microsoft.com/en-us/library/7zx6z2e4.aspx. Unfortunately, I have been unable to build any of them. When I open up the project file and click build, I get the following output from the build:
1>------ Skipped Build: Project: Cube ------
1>
========== Build: 0 succeeded or up-to-date, 0 failed, 1 skipped ==========
When I try compiling just one of the sample programs, I get the message:
Operation could not be completed. Unspecified Error
This message appears in a “bomb box”. I am wondering if I am doing something wrong, or are these projects just bad? Please help.
Thanks
Bob
|
|
|
|
|
BobInNJ wrote: When I open up the project file...
Is that the same as opening the solution file?
"Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
|
|
|
|
|
David,
Thanks for the response. Yes, when I say project file, I mean solutions file.
Bob
|
|
|
|
|
""bomb box""
- S
50 cups of coffee and you know it's on!
A post a day, keeps the white coats away!
|
|
|
|
|
i am trying to plot a 1D line graph with in an openGL window in a MFC Dialog
there should be controls to zoom-in , zoom-out, scroll and also select a specific part of the graph such that i am able to get the values of the lower index and upper index of the selected part of the graph.
i am building this application in VC++6.0
Any help would be deeply appreciated.. Thank you
|
|
|
|
|
I am in the process of learning openGL also. I also found an example called cube that Microsoft
offers. This example can be found at the following URL:
msdn.microsoft.com/en-us/library/7zx6z2e4.aspx
However, I was unable to build it. I am not sure why. Maybe you can. In any case, it does seem like
nice demo program.
Bob
|
|
|
|
|
Thanks for your help
but i'm trying to build an application in a dialog based project
the url you suggested give info about Single Document Interface(SDI) project..
"The CUBE sample is a simple OpenGL application. It demonstrates how to integrate OpenGL with the MFC single document interface (SDI), and how OpenGL's resource contexts are used in conjunction with device contexts."
|
|
|
|
|
There's very little work in taking the OnDraw part of a CView object, and putting it on the OnPaint method of a static control on a dialog...
So the techniques in the article are still worth reading.
Maybe this article will be more help?
How to draw OpenGL to a window you created in a dialog box with the resource editor[^]
Iain.
In the process of moving to Sweden for love (awwww).
If you're in Scandinavia and want an MVP on the payroll (or happy with a remote worker), give me a job!
|
|
|
|
|
Hello, guys.
I am having trouble mixing two audio files.
I am looking for some info on " Mixing Two Audio files using the Right Shift by two bits".
Any kind of help is much appreciated.
Thank you.
|
|
|
|
|
How are you attempting to mix your two audio files? Are you writing a program, using a commercial progarm, or what?
And, really, you should tell us: WHAT FORMAT YOUR AUDIO FILES ARE IN. (that might be important)
|
|
|
|
|
Please do not misunderstand me.
I am mixing the PCM files using the shifting method.
After words, I will convert them into the WAV format but mixing is to be done 16 bit PCM Files only.
I have already mixed them using the formula:
C = A + B - A* B / 65536;
I got desired o/ps as well, the code is running smooth and fine.
Now, my task is to mix them using right or left shift using the two bit shifter.
I was unable fine any info on the net and I am just unable to start coding.
Can you please gime some direction ?
|
|
|
|
|
My apologies,...I had no idea that was even possible.
...my initial impression was that you had some bad intel and were attempting that with a WAVE or MP3 format file (They are the most common format types).
A bit shift is a fairly simple operator, though, and if you read through the documentation, you should find the explanation. Here is the MSDN page: Bitwise Shift Operators[^].
|
|
|
|