|
At first: Thank you for this excellent piece of code!
If the menu of the SkinsDemo-App is between the 2 Monitors, the pull-down menu is drawn at a wrong xPos.
I changed a little in COXBitmapMenu.cpp:
void COXBitmapMenu::DeterminePosition(...)
...
if (dwStyle & CBRS_ORIENT_HORZ)
{
// Horizontal menu
ptTopLeft.x = lpItemRect->left;
if (ptTopLeft.x < iMixScreenX)
ptTopLeft.x = iMixScreenX;
if (ptTopLeft.x + sizeMenu.cx > iMaxScreenX)
{
//////////////////////////////////////////////////////////////////////////
// changed by Manfred Drasch
if (ptTopLeft.x < 0)
ptTopLeft.x = -1;
else
ptTopLeft.x = iMaxScreenX-1;
// Orig: ptTopLeft.x = iMaxScreenX - sizeMenu.cx;
//////////////////////////////////////////////////////////////////////////
}
...
Tested with XP/SP2 and Vista
|
|
|
|
|
Picky picky picky...
Thanks.
|
|
|
|
|
Awesome guys -- Thanks!
Just one note: The Address Book sample will not compile in VS2005 out of the box. Here are the steps taken to correct that:
1) The dependent library EDKGUID.LIB is not in the current SDK, so you either have to download an old SDK or download the MAPI Kit. However if you set an include path to an old SDK the compiler will load other modules from that path, so you need to copy the EDKGUID.LIB file to another folder or to the project folder and set the path to that.
2) Since there is no project for UTSampleAbout and thus no dependencies set for any such project, you need to add UTBStrOp.cpp and HtmlCtrl.cpp to the Address Book project so they will get compiled and linked in, otherwise you will get external link errors.
That's it -- it compiles and runs perfectly after that.
Thanks again guys. That's an awesome gesture on your part. We sincerely appreciate it.
In business, if two people always agree, one of them is unnecessary.
|
|
|
|
|
I'm trying to move an application to UTB93 and UG72 from UTB7 and UG5.
I'm compiling on VS2005; I did have the older version compiling and linking under VS2005.
Using the older version of the toolkits, the COXCoolToolBar displayed with the XP style toolbar shading.
When I compile with the newer versions, I am gettings a flat grey toolbar.
How can I get the new style of toolbars with the new versions?
Also, if there is a better place to ask these questions, please let me know.
|
|
|
|
|
Hi Sheri
Sheri Steeves wrote: Using the older version of the toolkits, the COXCoolToolBar displayed with the XP style toolbar shading.
When I compile with the newer versions, I am gettings a flat grey toolbar.
How can I get the new style of toolbars with the new versions?
That's going back through a few versions - but the COXCoolToolBar code is pretty much unchanged from v7.51 - (which is the earlest version I have on this machine).
The OXSkins code has a lot of changes, however.
If the application does not have a skin set, the toolbar should use a classic skin. This code shows the decision process:
COXToolbarSkin* COXCoolToolBar::GetToolbarSkin()
{
COXSkinnedApp* pSkinnedApp = DYNAMIC_DOWNCAST(COXSkinnedApp, AfxGetApp());
if (pSkinnedApp != NULL && pSkinnedApp->GetCurrentSkin() != NULL)
return pSkinnedApp->GetCurrentSkin()->GetToolbarSkin();
else
{
if (m_pToolbarSkin == NULL)
m_pToolbarSkin = new COXToolbarSkinClassic();
return m_pToolbarSkin;
}
}
The drawing routines for the toolbar use this call to determine which skins class to use - e.g. GetToolbarSkin()->DrawNonClientArea(&dc, rect, this); . The code in the COXToolbarSkinClassic class will certainly be different between the two versions.
But I don't see where the impact you are decsribing would come from - I wonder if the old code was modified to create a COXToolbarSkinXP by default?
And, yes, maybe this thread would be better placed in the Application Skins[^] page, but no biggie
|
|
|
|
|
I'd just like to say thanks for both this and Ultimate Grid. We have used both of these toolkits for several years in our products.
C++\MFC is still alive and well!
I am now in the process of moving one of these products to VC2005. In the project, I was linking in directly only the classes I am using. I found in the Ultimate Toolbox \include directory there is a file UGStrop.h, which contains the UGStr class. This file is also in the Ultimate Grid \include directory but with different contents - it contains the UTBStr class..
As I am using both toolkits, and Ultimate Toolbox was on my include path first, the UltimateGrid source would not compile, it complained about not being able to find the UGStr class.
I solved this by deleting the header file from the UTB \include directory.
-- modified at 15:58 Wednesday 29th August, 2007
|
|
|
|
|
Sheri Steeves wrote: I solved this by deleting the header file from the UTB \include directory.
Thank you so much.
Same issue here in maintaining an almost old app when moving it to VS 2008 and your solution saved me minutes or maybe even hours of time.
Thank you again for the great tip.
Cheers.
"In the end it's a little boy expressing himself." Yanni
|
|
|
|
|
I can't believe it's open source now, and why do you stop the business?
Good Luck!
|
|
|
|
|
First of all,thanks a lot,this is really a fantastic lib, I love it.
When i compile parser sample , i find a problem ,
file OXParser.cpp,OXHTMLParser.cpp have such code :
ParserEntity COXParser::m_Entity[] =
{
{TEXT("gt"), TEXT(">")},
{TEXT("lt"), TEXT("<")},
{TEXT("amp"), TEXT("&")},
{TEXT("apos"), TEXT("\'")},
{TEXT("quot"), TEXT("\"")},
{TEXT("quot"), TEXT("\"")},
{TEXT("amp"), TEXT("&")},
{TEXT("apos"), TEXT("\'")},
{TEXT("lt"), TEXT("<")},
{TEXT("gt"), TEXT(">")},
{TEXT("nbsp"), TEXT(" ")},
{TEXT("iexcl"), TEXT("?)},
{TEXT("cent"), TEXT("?)},
{TEXT("pound"), TEXT("?)},
{TEXT("curren"), TEXT("?)},
{TEXT("yen"), TEXT("?)},
{TEXT("brvbar"), TEXT("?)},
{TEXT("sect"), TEXT("?)},
{TEXT("uml"), TEXT("?)},
{TEXT("copy"), TEXT("?)},
{TEXT("ordf"), TEXT("?)},
{TEXT("laquo"), TEXT("?)},
{TEXT("not"), TEXT("?)},
{TEXT("shy"), TEXT("?)},
{TEXT("reg"), TEXT("?)},
{TEXT("macr"), TEXT("?)},
{TEXT("deg"), TEXT("?)},
{TEXT("plusmn"), TEXT("?)},
{TEXT("sup2"), TEXT("?)},
{TEXT("sup3"), TEXT("?)},
{TEXT("acute"), TEXT("?)},
{TEXT("micro"), TEXT("?)},
{TEXT("para"), TEXT("?)},
{TEXT("middot"), TEXT("?)},
{TEXT("cedil"), TEXT("?)},
{TEXT("sup1"), TEXT("?)},
{TEXT("ordm"), TEXT("?)},
{TEXT("raquo"), TEXT("?)},
{TEXT("frac14"), TEXT("?)},
{TEXT("frac12"), TEXT("?)},
{TEXT("frac34"), TEXT("?)},
{TEXT("iquest"), TEXT("?)},
{TEXT("Agrave"), TEXT("?)},
{TEXT("Aacute"), TEXT("?)},
{TEXT("Acirc"), TEXT("?)},
{TEXT("Atilde"), TEXT("?)},
{TEXT("Auml"), TEXT("?)},
{TEXT("Aring"), TEXT("?)},
{TEXT("AElig"), TEXT("?)},
{TEXT("Ccedil"), TEXT("?)},
{TEXT("Egrave"), TEXT("?)},
{TEXT("Eacute"), TEXT("?)},
{TEXT("Ecirc"), TEXT("?)},
{TEXT("Euml"), TEXT("?)},
{TEXT("Igrave"), TEXT("?)},
{TEXT("Iacute"), TEXT("?)},
{TEXT("Icirc"), TEXT("?)},
{TEXT("Iuml"), TEXT("?)},
{TEXT("ETH"), TEXT("?)},
{TEXT("Ntilde"), TEXT("?)},
{TEXT("Ograve"), TEXT("?)},
{TEXT("Oacute"), TEXT("?)},
{TEXT("Ocirc"), TEXT("?)},
{TEXT("Otilde"), TEXT("?)},
{TEXT("Ouml"), TEXT("?)},
{TEXT("times"), TEXT("?)},
{TEXT("Oslash"), TEXT("?)},
{TEXT("Ugrave"), TEXT("?)},
{TEXT("Uacute"), TEXT("?)},
{TEXT("Ucirc"), TEXT("?)},
{TEXT("Uuml"), TEXT("?)},
{TEXT("Yacute"), TEXT("?)},
{TEXT("THORN"), TEXT("?)},
{TEXT("szlig"), TEXT("?)},
{TEXT("agrave"), TEXT("?)},
{TEXT("aacute"), TEXT("?)},
{TEXT("acirc"), TEXT("?)},
{TEXT("atilde"), TEXT("?)},
{TEXT("auml"), TEXT("?)},
{TEXT("aring"), TEXT("?)},
{TEXT("aelig"), TEXT("?)},
{TEXT("ccedil"), TEXT("?)},
{TEXT("egrave"), TEXT("?)},
{TEXT("eacute"), TEXT("?)},
{TEXT("ecirc"), TEXT("?)},
{TEXT("euml"), TEXT("?)},
{TEXT("igrave"), TEXT("?)},
{TEXT("iacute"), TEXT("?)},
{TEXT("icirc"), TEXT("?)},
{TEXT("iuml"), TEXT("?)},
{TEXT("eth"), TEXT("?)},
{TEXT("ntilde"), TEXT("?)},
{TEXT("ograve"), TEXT("?)},
{TEXT("oacute"), TEXT("?)},
{TEXT("ocirc"), TEXT("?)},
{TEXT("otilde"), TEXT("?)},
{TEXT("ouml"), TEXT("?)},
{TEXT("divide"), TEXT("?)},
{TEXT("oslash"), TEXT("?)},
{TEXT("ugrave"), TEXT("?)},
{TEXT("uacute"), TEXT("?)},
{TEXT("ucirc"), TEXT("?)},
{TEXT("uuml"), TEXT("?)},
{TEXT("yacute"), TEXT("?)},
{TEXT("thorn"), TEXT("?)},
{TEXT("yuml"), TEXT("")},
{ NULL, NULL } // must be last
};
look at this :
TEXT("?)},
compile error, I don't know what "?" means .
wangniu
|
|
|
|
|
You are really a Niu,Have you ever tried your regional settings?
|
|
|
|
|
Hi wangniu
This has been reported before, in the context of compiling on a machine whose default language was Traditional Chinese. Switching to English resolved the issue, and it wasn't persued beyond that.
If you compile the static library versions of the code, you should be able to switch back to your regular charset and continue working with the static libs.
I'm still scratching my head on this one - it seems very odd that this is the only place the code has problems with that language setting.
|
|
|
|
|
Why don't you just use the ASCII code?! Such as '\x61' for 'a'. It should be the best way to solve this problem on any platform.
|
|
|
|
|
Don't get me wrong. I would’ve killed for such library... 10 years ago. Does the release as open source means, that there is no money left in type of development? End of an era?
|
|
|
|
|
Nikolay Avrionov wrote: Does the release as open source means, that there is no money left in type of development?
Absolutely not. MFC is alive and well otherwise we would not have released this library. There is a massive MFC and C++ community and we've been planning this release for a while now. Microsoft themselves have continued to reaffirm their support for MFC and C++ and we're pushing to get as much information out of them in terms of the suprises in store for C++ development in Visual Studio 2008.
cheers,
Chris Maunder
CodeProject.com : C++ MVP
|
|
|
|
|
Thanks a lot for your excellent contribution. I think this is the best contribution on codeproject.
|
|
|
|
|
Thank you for your contribution.
旧日重来
|
|
|
|
|
This is absolutely fantastic. I never thought I'd be able to get my mits on this stuff. My company just doesn't stretch to buying.
Thank you so much
Cheers
Tom
Philosophy: The art of never getting beyond the concept of life.
Religion: Morality taking credit for the work of luck.
"The object of life is not to be on the side of the majority, but to escape finding oneself in the ranks of the insane."
- Marcus Aurelius
|
|
|
|
|
Many thanks in deed. My 5!
|
|
|
|
|
hye,
in my project,i m usind a DVR card which gives 4 channel video
now i have increased the width and height of my all 4 video channels....but the recorded file is not very clear.....
can anybody tell me what should i do????
Do i have to change video parameters like brightness,contrast or i have to change video standard like 4CIF,2CIF.
please help!!!!!
NT
|
|
|
|
|
Hi
I think maybe you've chosen the wrong forum for your question - you might get a better response in the hardware[^] forum.
Cheers
Tim
|
|
|
|
|
Wow.
Thank you Chris and David. As if Code Project itself wasn't such a great resource.
I'd also like to take this opportunity to let folks know that we use Dundas' ASP Chart for .NET at work, and that's also a great product. We're really happy with the results and the how much this product cut our development time.
Keep up the great work guys!
Matt
|
|
|
|
|
Firstly, thanks for putting the libraries out as open source. Hopefully we can get improvements coming thick and fast.
Now, what will the process be to submit any fixes, improvements, etc? We've been working with the Toolbox and Grid for a number of years now and have made some changes and fixes to make our lives easier.
We would naturally like to make those changes available to everyone else but would need a simple method of sending the required changes to possibly be incorporated into the libraries. There are far too many of these to simply post here in the message area.
Cheers,
Brett
|
|
|
|
|
Brett, this is great!
As someone who has done some support (off and on) for the libs over the years, I am well aware that you and others like you have made changes in the code that it would be great to share.
In fact, we're hoping that a few CPians who are also familiar with the code will be able to contribute some time to help maintain things, and you are now dangerously close to being conscripted
For now, for extensive changes, I think it would be best to bend the CP model slightly and allow for a 'beta' as well as 'stable' downloads. Which would allow you and your team to update the entire download, and it could be posted as a beta, with notes on what has changed. Then the community will decide when it should be considered a stable version.
For smaller changes and fixes, the forums would be fine.
I guess the issue then is the work involved - would you and others feel comfortable in updating and packaging up the code base in this manner?
We're open for comments - and contributions!
Thanks
Tim
|
|
|
|
|
Hi Tim,
As a first off we have no problem updating the download as we could incorporate all our fixes/changes at once. For smaller fixes (changing lines in one or two files) the forum is also no problem.
What does puzzle me however is how all contributions from people wanting to submit fixes and updates would be incorporated into the base code. The mention of SourceForge in an earlier post is not a bad one except that we would no longer be on CodeProject. Maybe you could consider a SVN installation for the code. I myself have no experience with SVN as such but we do use a client to get hold of some other library code and that all works pretty well.
Cheers,
Brett
|
|
|
|
|
That's why I suggested Sourceforge...BTW the "main page" of the project could be this one
|
|
|
|
|