|
|
Comments and Discussions
|
|
 |

|
Hi,
Does this control is compatible with windows mobile ((MFC apps in VS208) ?
Thx
|
|
|
|
|

|
I found that when COXStaticText was scrolling and SetBgColour was called, the scrolling text position was reset to the default which made it look jumpy. I have alternating colours on my CStaticText background so it looked a bit odd. I found that adding the following check to see if scrolling had started fixed my issue...
in OnPrepareBitmap...
if(!IsScrollingStarted())
GetInitialDisplacement(textRect);
|
|
|
|

|
Hello, I was just wondering if anyone has been able to get the UTB working with VS2012 yet? I was able to compile the UG without problem but I am having some issues with the UTB and wanted to check if anyone else has fixed the problems yet before I delve in to deep.
Shawn
|
|
|
|

|
Hi ,
I have used UGGrid in my application and built in both 64 as well as 32 bit . It was working fine . Now we started using new look of common controls #define _IMPROVE_LOOKANDFEEL InitCommonControlsEx then it started crashing and it seems to be a some paint issue. Got few updates from Code project could solve the paint in 64 bit but 32 bit it is still crashing . In 64 bit when we sort the list it crashes i.e CUGTopHdg::OnLButtonDown which intern points to OnDrawFocusRect of the client .
Is there any update for these new look of common controls and 64 bit crash .
|
|
|
|

|
Hello!
I wonder when we get full packages with the patches included?
|
|
|
|

|
I derived my own class from COXEdit, everything works fine till i switch compilation to UNICODE.
Now I'm getting strange link errors:
ultimateUnicode error LNK2001: unresolved external symbol "public: virtual int __thiscall COXEdit::SetInputData(wchar_t const *,int)" (?SetInputData@COXEdit@@UAEHPB_WH@Z)
ultimateUnicode error LNK2001: unresolved external symbol "protected: virtual int __thiscall COXEdit::InsertAt(int,wchar_t)" (?InsertAt@COXEdit@@MAEHH_W@Z)
ultimateUnicode error LNK2001: unresolved external symbol "protected: virtual int __thiscall COXEdit::SetAt(int,wchar_t)" (?SetAt@COXEdit@@MAEHH_W@Z)
ultimateUnicode error LNK2001: unresolved external symbol "public: virtual class ATL::CStringT<wchar_t,class StrTraitMFC_DLL<wchar_t,class ATL::ChTraitsCRT<wchar_t> > > __thiscall COXEdit::GetInputData(void)const " (?GetInputData@COXEdit@@UBE?AV?$CStringT@_WV?$StrTraitMFC_DLL@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@XZ)
does enyone konw why it happens?
myclass.h:
class CMEdit : public COXEdit
{
DECLARE_DYNCREATE(CMEdit)
public:
CMEdit();
virtual ~CMEdit();
inline COLORREF GetActiveFont(){return m_clrActiveFont; }
inline COLORREF GetActiveBack(){return m_clrActiveBack; }
inline void SetActiveFont(COLORREF clrNew){m_clrActiveFont = clrNew; }
inline void SetActiveBack(COLORREF clrNew) {m_clrActiveBack = clrNew; }
inline COLORREF GetNormalFont(){return m_clrNormalFont; }
inline COLORREF GetNormalBack(){return m_clrNormalBack; }
inline void SetNormalFont(COLORREF clrNew){m_clrNormalFont = clrNew; }
inline void SetNormalBack(COLORREF clrNew) {m_clrNormalBack = clrNew; }
inline COLORREF GetDisabledFont(){return m_clrDisabledFont; }
inline COLORREF GetDisabledBack(){return m_clrDisabledBack; }
inline void SetDisabledFont(COLORREF clrNew){m_clrDisabledFont = clrNew; }
inline void SetDisabledBack(COLORREF clrNew) {m_clrDisabledBack = clrNew; }
inline BOOL GetActiveMarking() {return m_bEnableActiveMarking;}
inline void SetActiveMarking(BOOL bVal) {m_bEnableActiveMarking = bVal; }
inline BOOL GetAlwaysReadOnly() {return m_bAlwaysReadOnly;}
inline void SetAlwaysReadOnly(BOOL bVal) {m_bAlwaysReadOnly = bVal; }
inline BOOL GetOffColors() {return m_bOffColors;}
inline void SetOffColors(BOOL bVal) {m_bOffColors = bVal; }
protected:
COLORREF m_clrNormalFont; COLORREF m_clrNormalBack;
COLORREF m_clrDisabledFont; COLORREF m_clrDisabledBack;
COLORREF m_clrActiveFont;
COLORREF m_clrActiveBack;
BOOL m_bEnableActiveMarking;
BOOL m_bAlwaysReadOnly;
BOOL m_bOffColors; public:
afx_msg HBRUSH CtlColor(CDC* , UINT );
afx_msg void OnKillFocus(CWnd* pNewWnd);
DECLARE_MESSAGE_MAP()
};
myclass.cpp:
IMPLEMENT_DYNCREATE(CMEdit, COXEdit)
CMEdit::CMEdit():
m_clrNormalBack (c_clrEnabledBack), m_clrNormalFont(c_clrEnabledFont),
m_clrActiveBack(c_clrActiveBack), m_clrActiveFont(c_clrActiveFont),
m_clrDisabledBack(c_clrDisabledBack), m_clrDisabledFont(c_clrDisabledFont),
m_bAlwaysReadOnly(FALSE), m_bEnableActiveMarking(TRUE), m_bOffColors(FALSE)
{
m_clrText = m_clrNormalFont;
m_clrBack = m_clrNormalBack;
EnableActiveAccessibility();
}
CMEdit::~CMEdit()
{
}
BEGIN_MESSAGE_MAP(CMEdit, COXEdit)
ON_WM_CTLCOLOR_REFLECT()
ON_WM_KILLFOCUS()
END_MESSAGE_MAP()
HBRUSH CMEdit::CtlColor(CDC* pDC, UINT nCtlColor)
{
UNREFERENCED_PARAMETER(nCtlColor);
COLORREF newTextColor;
COLORREF newBkColor ;
if(m_bOffColors) { newTextColor = !IsWindowEnabled() ? RGB (80, 80, 80) : GetSysColor(COLOR_WINDOWTEXT); newBkColor = GetSysColor(COLOR_WINDOW); }
else
{
if (!IsWindowEnabled())
{
newTextColor = m_clrDisabledFont;
newBkColor = m_clrDisabledBack;
}
else if(GetStyle()&ES_READONLY)
{
newTextColor = m_clrReadOnlyFont;
newBkColor = m_clrReadOnlyBack;
}
else if(this == GetFocus() && m_bEnableActiveMarking)
{
newTextColor = m_clrActiveFont;
newBkColor = m_clrActiveBack;
}
else
{
newTextColor = m_clrNormalFont ;
newBkColor = m_clrNormalBack ;
}
}
pDC->SetTextColor(newTextColor);
pDC->SetBkColor(newBkColor);
if((HFONT)m_font!=NULL)
pDC->SelectObject(&m_font);
static CBrush brush;
if((HBRUSH)brush!=NULL)
brush.DeleteObject();
brush.CreateSolidBrush(newBkColor);
return (HBRUSH)brush;
}
void CMEdit::OnKillFocus(CWnd* pNewWnd)
{
COXEdit::OnKillFocus(pNewWnd);
RedrawWindow();
}
|
|
|
|

|
I am using the ultimate toolbox for my application. I have two toolbars side by side in my application. keeping my application on top and if the system is locked and unlocked, the toolbars are at the same positions side by side. But if the application is minimized, and system is locked and unlocked, then the two tool bars which are side by side, become one below the other. how to fix this? Thanks pavan
|
|
|
|

|
UltimateToolbox\UltimateToolbox93_samples\Ultimate Toolbox\source\OXWABook.cpp(1361) : error C2440: '=' : cannot convert from 'char [260]' to 'unsigned short *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
UltimateToolbox\UltimateToolbox93_samples\Ultimate Toolbox\source\OXWABook.cpp(1669) : error C2664: 'LDAPUrl' : cannot convert parameter 4 from 'char [260]' to 'unsigned short *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
OXWatchedDir.cpp
#if (defined _UNICODE) && ((defined WABIMPORTPARAM) || (_MFC_VER >= 0x0600))
char szBuffer[_MAX_PATH];
#endif // _UNICODE
// v9.3 - update 04 fixes for unicode builds in vc6 CHANGED _MFC_VER - AAW 2009-03-29
#if (defined _UNICODE) && ((defined WABIMPORTPARAM) || (_MFC_VER >= 0x0600))
::WideCharToMultiByte(CP_ACP, WC_SEPCHARS, m_sBookPath, m_sBookPath.GetLength(),
szBuffer, _MAX_PATH, NULL, NULL);
stWabParam.szFileName = szBuffer;
#else
stWabParam.szFileName = (TCHAR*)(LPCTSTR) m_sBookPath;
#endif
}
// v9.3 - update 04 fixes for unicode builds in vc6 CHANGED _MFC_VER - AAW 2009-03-29
#if (defined _UNICODE) && ((defined WABIMPORTPARAM) || (_MFC_VER >= 0x0600))
char szBuffer[_MAX_PATH];
::WideCharToMultiByte(CP_ACP, WC_SEPCHARS, lpszLDAPURL, -1,
szBuffer, _MAX_PATH, NULL, NULL);
hRslt = m_pIWABObject->LDAPUrl(m_pIAddrBook, m_hWnd,ulFlags,
szBuffer, &pUser);
#else
hRslt = m_pIWABObject->LDAPUrl(m_pIAddrBook, m_hWnd,ulFlags,
lpszLDAPURL, &pUser);
#endif
|
|
|
|

|
Dear All,
I'm using the SMTP function to send Email (the Mail example). Unfortunately every time I get error "There was no response from the server". With the same server in Outlook I can send Emails. Can anybody help here?
Thanks!
Best Regards,
Ahamade.
|
|
|
|

|
There seems to be a minor issue in the methods
COXMiniFrameSkinXP::COXMiniFrameSkinXP(COXSkinXP* pSkinXP) and
COXDockbarSkinXP::COXDockbarSkinXP(COXSkinXP* pSkinXP)
of OXSkins.cpp. The call
m_fontCaption.CreatePointFont(85, _T("Tahoma BOLD"));
may fail on non-English systems. The font names are different. E.g. "Tahoma fett" on my machine. The effect is that the text is not rendered properly. Especially if the orientation of the text is vertical.
Replacing the line with
LOGFONT lf;
memset(&lf, 0, sizeof(LOGFONT));
lf.lfHeight = 85;
lf.lfWeight = FW_BOLD;
strcpy_s(lf.lfFaceName, LF_FACESIZE, "Tahoma");
VERIFY(m_fontCaption.CreatePointFontIndirect(&lf, NULL));
fixes the problem.
Rasmus
|
|
|
|

|
I've just installed the current releases of UT along with the 4 updates. I'm running Vista Home Premium 64 bit with VS2008. I've loaded UT2008 into VS2008 (VS2008 updates the project). When the platform is set to x64 then the project settings (i.e. click on [Project][Properties]) cannot be viewed/edited. This generates the error "The operation could not be completed. Unspecified error". However, the project settings can be viewed/edited when the platform is changed to Win32. Aside from rebuilding the entire project from scratch, does any one have any ideas or suggestions of how to correct this problem?
thanks,
Ian
|
|
|
|

|
If you (like I did) forget to recompile your library which is dynamically linked to MFC, you'll find you have dependencies on both the old and new assemblies, and your program will no longer load, giving an error about the "Application configuration is incorrect".
Anthony Wieser
Wieser Software Ltd
Anthony Wieser
Wieser Software Ltd
|
|
|
|

|
HI All,
Hope Im posting this in the right place, if not, just flame me
Im using COXCoolToolBar in my COXSkinnedApp (office 2003 skin) with custom buttons (or, more specifically inserting combo boxes in various places of the COXCoolToolBars).
Everything works fine, it really looks quite flash!
Now I'm just grappling w/ one problem. Im not very good at inventing really useful icons to reflect the behavior of a button, so I rely pretty much on the text labels on the standard buttons to describe the command. (Eg if Ive got a button for the "Draw" command, Id rather have the word "Draw" on the button instead of a silly icon, that I made up myself, not being an artist it doesnt well reflect the button's behavior).
Now for STANDARD COXCoolToolBar buttons this is easy; its formally supported by the framework.
But how about the Combo Boxes that Ive inserted in the COXCoolToolBar as "custom buttons"...
Ive been fooling w/ 2 options here:
1) I can "indent" the "start point" of the buttons on the COXCoolToolBar, and, overriding "WM_PAINT" I can write by own text label in the blank space. This really looks quite nice but also is clearly only
useful to a) put a descriptive name on the bar, or b) on the first button in the bar.
2) Another, possibly better alternative is to use tool tips, but I have not been able to make them work for custom buttons.
Anyway my question(s) is(are):
* Can I make (easily) tooltips work for custom buttons on a COXCoolToolBar. It *appears* to me that they're not directly supported, but Im no guru!!!
* Any other clever ideas about how I can transmit to the user the function/meaning/use (by textual means, rather than an icon) of a custom combo inserted in a COXCoolToolBar.
Thanks in advance, all ideas gratefully received!!
Cheers
DaveC
|
|
|
|

|
In COXPropertyTree class, the function m_pPropertiesWnd->FinishEditing() is called in COXPropertyTree::OnKillEditFocus(), and COXPropertyTree::PreTranslateMessage(MSG* pMsg) WM_KEYDOWN -> VK_RETURN.
The problem is that m_pPropertiesWnd->FinishEditing() will be called twice when user enter value in any editable entry in PropertiesWnd and press enter, because in
void COXPropertiesWnd::FinishEditing(BOOL bSave)
{
if (m_hEditProp == NULL) {
return;
}
if (bSave)
{
CString strText;
COXMaskedEdit* pMaskedEdit = DYNAMIC_DOWNCAST(COXMaskedEdit, m_pEditWnd);
if (pMaskedEdit != NULL)
strText = pMaskedEdit->GetText();
else
m_pEditWnd->GetWindowText(strText);
BOOL bSaveValue = OnPropertyValueChanged(m_hEditProp,
GetPropertyValue(m_hEditProp), strText);
if (bSaveValue)
SetPropertyValue(m_hEditProp, strText);
}
m_pEditWnd->ShowWindow(SW_HIDE);
m_pEditWnd = NULL;
m_hEditProp = NULL;
m_wndTree.SelectItem(NULL);
}
the highlighted line will trigger COXPropertyTree::OnKillEditFocus() where m_pPropertiesWnd->FinishEditing() will be called for the second time.
This wrong behavior will lead to calling the overrided function OnPropertyValueChanged twice.
I tried a work around to solve this by modifying COXPropertyTree::OnKillEditFocus() as the following:
void COXPropertyTree::OnKillEditFocus()
{
if (m_pPropertiesWnd && m_pPropertiesWnd->m_pEditWnd->IsWindowVisible())
m_pPropertiesWnd->FinishEditing();
}
However the problem still exist with another scenario, when editing an entry and using mouse; focus on another entry.
I hope to get a solution for this.
Thanks a lot
Mina Saweres Yousef
Software Engineer - CITE Team
PSD (Pyramids Systems Development)
web : http://www.psd.com.eg
|
|
|
|

|
Howdy'
While upgrading our projects from VS2003 to VS2008...
I'm in the process of upgrading to the latest dundas toolkit code.
I've applied all the patches to our code.
I have a crash in COXBitmapMenuOrganizer::Init that confuse me.
BOOL COXBitmapMenuOrganizer::Init(UINT cx, UINT cy, UINT nCheckID, UINT nBulletID)
{
CDC memDC;
VERIFY(memDC.CreateCompatibleDC(NULL)); }
This happens when the COXBitmapMenuOrganizer is created in the main frame class.
Any hints ?
Thanks.
Max.
This signature was proudly tested on animals.
|
|
|
|

|
In function COXQuickString::GetString() the const chNull is defined as char causing a fail in UNICODE projects. To repair this fail do this change:
//Original
LPCTSTR COXQuickString::GetString() const
{
static const char chNull = TEXT('\0');
if (IsEmpty())
return (LPCTSTR)&chNull;
else
return (LPCTSTR)m_szText;
}
change line
static const char chNull = TEXT('\0');
to
static const TCHAR chNull = TEXT('\0');
|
|
|
|

|
How can I use a sub grid as a cell in grid?
is there a celltype for subgrid?
hh
|
|
|
|

|
utcertifman.cpp: CUT_CertificateManager::CertificateRequest
line 441:
_TCHAR *lpszBuffer =
(_TCHAR *)LocalAlloc(LMEM_FIXED, (SysStringLen(bstrResult) + 1024)*sizeof(_TCHAR));
line 476:
delete [] lpszBuffer;
LocalFree should be used!
|
|
|
|

|
For some time, I've been dismayed by the behavior of docking windows when docked in their own control bar. Simply by dragging, they seem to resize themself even if you don't move them away from their current position.
I don't know if this is by design or not, but if you want to get rid of this annoying behaviour, you can modify
DWORD COXDragDockContext::CanDock()
to be this:
DWORD COXDragDockContext::CanDock()
{
BOOL bStyleHorz;
DWORD dwDock = 0; DWORD dwCurr = 0;
ASSERT(m_dwStyle != 0);
bStyleHorz = HORZF(m_dwStyle);
m_pTargetDockBar = NULL;
if (dwDock == 0 && HORZF(m_dwDockStyle))
{
dwDock = m_pDockSite->CanDock(m_rectDragHorzAlone,
m_dwDockStyle & ~CBRS_ORIENT_VERT, (CDockBar**)&m_pTargetDockBar);
}
if (dwDock == 0 && VERTF(m_dwDockStyle))
{
dwDock = m_pDockSite->CanDock(m_rectDragVertAlone,
m_dwDockStyle & ~CBRS_ORIENT_HORZ, (CDockBar**)&m_pTargetDockBar);
}
if (dwDock != 0) {
if (HORZF(dwDock))
{
m_rectDragDock = m_rectDragHorzAlone;
dwCurr = m_pDockSite->CanDock(m_rectDragHorz,
m_dwDockStyle & ~CBRS_ORIENT_VERT, (CDockBar**)&m_pTargetDockBar);
if (dwCurr != 0)
{
int nBars=m_pTargetDockBar->BarsOnThisRow(m_pBar,m_rectDragHorzAlone);
if(nBars!=0)
{
m_rectDragDock = m_rectDragHorz;
if (m_pBar->m_pDockBar == m_pTargetDockBar)
{
CRect rct;
m_pBar->GetWindowRect(&rct);
m_rectDragDock.bottom = m_rectDragDock.right +
rct.Width();
}
else
{
m_rectDragDock.right = m_rectDragDock.left+
m_rectDragHorzAlone.Width()/(nBars+1);
}
}
}
}
if (VERTF(dwDock))
{
m_rectDragDock = m_rectDragVertAlone;
dwCurr = m_pDockSite->CanDock(m_rectDragVert,
m_dwDockStyle & ~CBRS_ORIENT_HORZ, (CDockBar**)&m_pTargetDockBar);
if (dwCurr != 0)
{
int nBars=m_pTargetDockBar->BarsOnThisRow(m_pBar,m_rectDragVertAlone);
if(nBars!=0)
{
m_rectDragDock = m_rectDragVert;
if (m_pBar->m_pDockBar == m_pTargetDockBar)
{ CRect rct;
m_pBar->GetWindowRect(&rct);
m_rectDragDock.bottom = m_rectDragDock.top +
rct.Height();
}
else
{
m_rectDragDock.bottom = m_rectDragDock.top+
m_rectDragVertAlone.Height()/(nBars+1);
}
}
}
}
}
return dwCurr;
}
Anthony Wieser
Wieser Software Ltd
|
|
|
|

|
I was getting an error popping up in my debug window while I ran my newly converted UNICODE app. It said:
_CrtDbgReport: String too long or IO Error
I've managed to track it down to some erroneous trace messages in OXMenuBar.cpp and OXBitmapMenuOrganizer.cpp
Where the source code says:
TRACE(_T("\nCreated menu at %x - Line: %d, %s"), pBitmapMenu, __LINE__, __FILE__);
It should say
TRACE(_T("\nCreated menu at %x - Line: %d, %s"), pBitmapMenu, __LINE__, TEXT( __FILE__ ));
which will cause it to use a unicode string.
I notice that this bug still is present in the latest set of patches.
|
|
|
|

|
Hi Ultimate!
Thank you for this awesome peace of code!
I've got some update for the OXSkins.cpp file to reflect Vista skin style. Thought that my fixes are already part of the latest (9.3) release. Do you like to import my fixes?
jung-kreidler
|
|
|
|

|
Could be improved, works for my needs .. I love you UT .. thanks for al these wonderful years
int CUGCtrl::StartDragDrop(){
ReleaseCapture();
CString SelectString;
size_t len;
CreateSelectedString(SelectString,FALSE);
len = (SelectString.GetLength()+1) * sizeof(TCHAR);
HGLOBAL hglobal = GlobalAlloc(GMEM_ZEROINIT,len);
int res = 1;
# ifdef _UNICODE
wchar_t* string = (wchar_t*)GlobalLock(hglobal);
memcpy(string, (wchar_t*)SelectString.GetBuffer(), len);
# else
LPTSTR string = (LPTSTR)GlobalLock(hglobal);
UGStr::tcscpy(string, SelectString.GetLength() + 1, SelectString);
# endif
GlobalUnlock(hglobal);
if(res) m_dataSource.CacheGlobalData(CF_TEXT,hglobal,NULL);
# ifdef _UNICODE
HGLOBAL hglobalu = GlobalAlloc(GMEM_ZEROINIT,len);
LPTSTR stringu = (LPTSTR)GlobalLock(hglobalu);
UGStr::tcscpy(stringu, SelectString.GetLength() + 1, SelectString);
GlobalUnlock(hglobalu);
m_dataSource.CacheGlobalData(CF_UNICODETEXT,hglobalu,NULL);
# endif
m_dataSource.DoDragDrop(DROPEFFECT_COPY,NULL,NULL);
m_dataSource.Empty();
return UG_SUCCESS;
}
|
|
|
|

|
I use GetAttachmentNumber(), GetAttachmentInfo(.....) ,
But how to return real attachment file / emebbed img in htmlbody / other ?
hh
|
|
|
|

|
Hi. I downladed UT for the first time today and spent some time reading the help. Some things looked good so I decided to build the DLLs. Unzipped and opened the UT2003 solution. It converted to VS2005 w/o error. Then tried to build the debug version and got a list of errors and warnings. First one is:
Error 1 error C2039: 'bWin95' : is not a member of 'AUX_DATA' c:\ultimatetb\source\oxzoomvw.cpp 1284 UT2003
Sure enough bWin95 is not a member.
Most times I would dig into these problems and try to figure out what is wrong myself, but after reading all the info in the help file about how perfectly everything should build under VC2005, I decided maybe you have unknown issues, so this question. Am I doing something wrong, or is the library project faulty?
Below are the other errors and warnigns.
Thanks, Russ
Error 1 error C2039: 'bWin95' : is not a member of 'AUX_DATA' c:\ultimatetb\source\oxzoomvw.cpp 1284 UT2003
Warning 2 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Warning 3 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Warning 4 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Warning 5 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Warning 6 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Warning 7 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Error 8 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 9 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 10 error C2039: 'bWin95' : is not a member of 'AUX_DATA' c:\ultimatetb\source\oxscrollwnd.cpp 2063 UT2003
Warning 11 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Warning 12 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Warning 13 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Error 14 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Warning 15 warning C4005: 'TVGN_NEXTSELECTED' : macro redefinition c:\ultimatetb\include\oxtreectrl.h 535 UT2003
Error 16 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 17 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 18 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 19 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 20 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 21 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 22 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 23 error C2555: 'COXMenuBar::GetMenu': overriding virtual function return type differs and is not covariant from 'CWnd::GetMenu' c:\ultimatetb\include\oxmenubar.h 611 UT2003
Error 24 error C2039: 'bWin95' : is not a member of 'AUX_DATA' c:\ultimatetb\source\ox3dtabview.cpp 390 UT2003
|
|
|
|

|
At destructor memory (string list and it's content) allocated in function CUT_MimeEncode::AddFileHeaderTag is not freed
function EmptyAttachmentList must be
void CUT_MimeEncode::EmptyAttachmentList() {
MIMEATTACHMENTLISTITEM *item;
while (m_ptrAttachList != NULL) {
item = m_ptrAttachList->next;
if(m_ptrAttachList->ptrDataSource)
delete m_ptrAttachList->ptrDataSource;
if (m_ptrAttachList->lpszName != NULL)
delete[] m_ptrAttachList->lpszName;
if (m_ptrAttachList->lpszContentType != NULL)
delete[] m_ptrAttachList->lpszContentType;
if (m_ptrAttachList->lpszCharSet != NULL)
delete[] m_ptrAttachList->lpszCharSet;
if (m_ptrAttachList->lpszAttachType != NULL)
delete[] m_ptrAttachList->lpszAttachType;
if(m_ptrAttachList->ptrHeaders)
{
m_ptrAttachList->ptrHeaders->ClearList();
delete m_ptrAttachList->ptrHeaders;
}
delete m_ptrAttachList;
m_ptrAttachList = item;
}
}
|
|
|
|

|
both functions contain some error
pItem->lpszName = new char[::strlen(lpszEncoded)];
::strcpy(pItem->lpszName, lpszEncoded);
must be
pItem->lpszName = new char[::strlen(lpszEncoded)+1];
::strcpy(pItem->lpszName, lpszEncoded);
finaly:
int CUT_MimeEncode::EncodeAttachmentFileName(int iIndex, enumEncodingType EncodingType, LPCSTR lpszCharSet)
{
MIMEATTACHMENTLISTITEM* pItem = m_ptrAttachList;
int iCount = 0;
while (pItem != NULL)
{
if (iIndex == iCount)
{
CUT_HeaderEncoding HE;
LPCSTR lpszEncoded = HE.Encode(pItem->lpszName, lpszCharSet, EncodingType);
delete [] pItem->lpszName;
pItem->lpszName = new char[::strlen(lpszEncoded)+1];
::strcpy(pItem->lpszName, lpszEncoded);
}
pItem = pItem->next;
iCount++;
}
return UTE_SUCCESS;
}
int CUT_MimeEncode::DecodeAttachmentFileName(int iIndex, LPSTR lpszCharSet)
{
MIMEATTACHMENTLISTITEM* pItem = m_ptrAttachList;
int iCount = 0;
while (pItem != NULL)
{
if (iIndex == iCount)
{
CUT_HeaderEncoding HE;
if (HE.IsEncoded(pItem->lpszName))
{
LPCSTR lpszDecoded = HE.Decode(pItem->lpszName, lpszCharSet);
delete [] pItem->lpszName;
pItem->lpszName = new char[::strlen(lpszDecoded)+1];
::strcpy(pItem->lpszName, lpszDecoded);
}
}
pItem = pItem->next;
iCount++;
}
return UTE_SUCCESS;
}
|
|
|
|

|
Thank you very much for this wonderful Toolbox!!
I hope it will still support VS 7.1 for the next time, even my VS is very old! =)
Cu
|
|
|
|

|
The WM_COMMAND notifications in function COXComboPickerCtrl::ShowDropDown(...) are sent incorrect to the parent. Instead of
pParentWnd->SendMessage(WM_COMMAND,MAKEWPARAM(CBN_DROPDOWN,GetDlgCtrlID()));
it should be
pParentWnd->SendMessage(WM_COMMAND,MAKEWPARAM(GetDlgCtrlID(),CBN_DROPDOWN));
This wrong order of LOWORD and HIWORD appears two times in this function.
Regards,
Chris
|
|
|
|

|
Thanks so much for your updates to VS2008. I've used UTB and UG for more years than I can count. I used UTB before Dundas bought it from MFC Weekly . I've been stuck with VS2003 until just now due to customer requirements and finally have been able to update to VS2008. I was very happy to see you all had updated the projects to 2008. Thanks and great work!
Phil McAdams
|
|
|
|

|
Hi all
I've put together a second Ultimate Grid update (02) with changes for 64-bit compilation.
As with the Ulitmate Toolbox 64-bit update, these are just basic compilation adjustments - testers needed.
Thanks
Tim
|
|
|
|

|
I've placed an 'alpha' of the 64-bit changes for the main source and include files for the Ultimate Toolbox lib here for testing as Update 03.
Most of the changes can be examined with a grep for 'update 03' in the source files. I've added some brief notes to the ChangeHistory.
The JPEG library builds are not modified, but can be built by adding x64 platform configurations to the jpg.sln in the libs/JPEG dir.
Casualties: 1) The OXSysInfo classes, which rely on the Intel cpuinf32 library. Code in this project relys on inline assembly, which is not supported in the Microsoft 64-bit compilers. 2) The DAO class - DAO is not supported in Win64.
I don't have a Win64 platform, so obviously would appreciate some testing. I'll updgrade the 'alpha' status to beta once I get some comments and corrections.
The code compiles sucessfully (DLL and Static Lib builds) on the 64-bit cross compiler under VS2008.
There are some warnings that arise that I've left in until someone with Win64 can do some runtime testing.
There are also some macros in UTB64Bit.h that might be debateable - switching on _WIN64 when switching on _MSC_VER might be more appropriate. Trying to avoid some VC6 headaches for now.
The goal here is to enable the core codebase for both platforms and preserve compatibility back to VC6, so that the 64-bit folks aren't left to maintain their own versions.
Comments welcome - please test. Any comments on the sample builds in Win64 appreciated as well.
Thanks,
Tim
|
|
|
|

|
Please welcome Jerry Evans as our first co-author of the Ultimate Toolbox Updates and User Contributions. Jerry will be helping to coodinate and deploy revisions to the Ultimate Grid code base that we hope to be rolling out in the weeks ahead.
Cheers,
Tim
|
|
|
|

|
The diff below shows changes I made to our copy of UGCtrl.cpp to fix a problem noticed when testing an override of CUGCtrl::OnGetCell().
The fault in the original code is that the first call to CUGCtrl::OnGetCell() was being made with an inappropriate application of column translation.
Regards,
John
Index: UGCtrl.cpp
===================================================================
--- UGCtrl.cpp (revision 58691)
+++ UGCtrl.cpp (revision 58692)
@@ -2766,13 +2766,13 @@
//get the cell from the datasource
if(col >=0 && col < m_GI->m_numberCols){
ds->GetCell(m_GI->m_colInfo[col].colTranslation,row,cell);
- OnGetCell(m_GI->m_colInfo[col].colTranslation,row,cell);
}
else{
ds->GetCell(col,row,cell);
- OnGetCell(col,row,cell);
}
+ OnGetCell(col,row,cell);
+
//use format class
if(cell->IsPropertySet(UGCELL_FORMAT_SET)){
cell->GetFormatClass()->ApplyDisplayFormat(cell);
|
|
|
|

|
Hi All
Just had a look at the Ultimate Grid source with VS 2008 and this seems to be the only compile issue at this point.
In UGXPThemes.cpp at line 562, the #ifdef below should be added to the GetThemeRect call:
bool UGXPThemes::GetThemeRect(LPCWSTR theme, int iPartId, int iStateId, RECT *pRect)
{
bool success = false;
if (useThemes)
{
HANDLE themeHandle = OpenThemeData(NULL, theme);
if (themeHandle)
{
#if !defined(__VSSYM32_h__)
const int TMT_DEFAULTPANESIZE = 5002;
#endif
HRESULT hr = GetThemeRect(themeHandle, iPartId, iStateId, TMT_DEFAULTPANESIZE, pRect);
success = SUCCEEDED(hr);
}
}
return success;
}There may be other subtleties in this - see comments in Tmschema.h in the Microsoft SDKs\Windows\v6.0A\Include directory.
Thanks
Tim
modified on Thursday, June 19, 2008 8:32 PM
|
|
|
|
 |
|
|
General News Suggestion Question Bug Answer Joke Rant Admin
|
Updates and User Contributions for the Ultimate Toolbox Libraries
| Type | Article |
| Licence | CPOL |
| First Posted | 22 Apr 2008 |
| Views | 133,566 |
| Bookmarked | 151 times |
|
|