Subject |
Author |
Date |
|
Kevin Murray
|
Aug 19, 2008 - 2:30 PM
|
Using the VS2005 theme/skin/thing, and of course when you drag a dockable window somewhere else it can dock you get the "docking guides" that show the four hours and the tab option in the center: [/\]
[<] [tab] [>]
[\/] What I want to do is disable the four arrow buttons. I can make sure my window(s) won’t dock to them utilizing _CanDockLTRB and make sure tabbing is still allowed via _CanDockToTabbedContainers, but the four arrow buttons are still visible. They don’t do anything, but they are visible. Is there any way to remove them when I am using a window I don’t want to dock LTRB? K.
|
|
Technical Support
|
Aug 20, 2008 - 11:33 AM
|
The docking markers (also known as guide diamonds) and resizable control bars are working together with each other. We did not implement support for partially visible guide diamonds because the resizable control bars were designed as windows without any restrictions on positions and sizes. In Visual Studio the user typically configures all the needed bars only once and then never changes bar positions. The resizable bars mostly designed for advanced users which know what is a dockable window and can use them freely. If your software is oriented for less experienced users, you should implement some UI options which will allow to restore some default layout of docking windows. In some cases less experienced users will be even more happy if your software do not have support for drag-n-dropping nor dockable windows can be closed..
|
|
howard liu
|
Aug 19, 2008 - 8:28 AM
|
Hi, In a popup menu using CExtPopupMenuwnd we are modifying popup menu and within that menu item we are enabling and disabling certain items using EnableMenuItem( ) method in MFC. Is there a equivalent for EnableMenuItem( ) method in Prof-UI. If not how to achieve this functionality in Prof-UI Thanks Howard
|
|
Technical Support
|
Aug 19, 2008 - 11:54 AM
|
There are two types of menu command items in a Prof-UIS popup menu:
1) Menu command items which are based on MFC’s command updating mechanism. Such command items are inserted using the CExtPopupMenuWnd::ItemInsert() method.
2) Menu command items which are NOT based on MFC’s command updating mechanism. Such command items are inserted using the CExtPopupMenuWnd::ItemInsertCommand() method.
By default, all the command items in a popup menu are based on the command manager and you should use MFC’s command updating mechanism for enabling/disabling menu command items and for setting on/off their check or radio marks. You should add the command updating methods for all the menu commands by default.
The CExtPopupMenuWnd::LoadMenu() and CExtPopupMenuWnd::UpdateFromMenu() methods also initialize popup menus with menu command items which are based on MFC’s command updating mechanism. If you invoke these methods and specify false() in the bNoRefToCmdMngr parameter, all the menu command items in the initialized menu tree will not be based on MFC’s command updating mechanism. The same happens when you are using the CExtPopupMenuWnd::ItemInsertCommand() method. Such command items in popup menus should be enabled/disabled manually: CExtPopupMenuWnd * pPopup = . . .
UINT nCmdID = . . .
bool bEnable = . . .
UINT nIndex = pPopup->ItemFindPosForCmdID( nCmdID );
if( nIndex < 0 )
return . . .
CExtPopupMenuWnd::MENUITEMDATA & _mii = pPopup->ItemGetInfo( nIndex );
_mii.Enable( bEnable );
|
|
Dominik Braendlin
|
Aug 19, 2008 - 12:59 AM
|
Is there an article about how to add additional buttons to the CExtPropertyGridToolBar control? Is it at all possible to do so?
I would like to add additional buttons to the CExtPropertyGridToolBar and also handle there ON_BTN_CLICK event. Could you provide an example on how to do that?
Thanks
|
|
Technical Support
|
Aug 19, 2008 - 11:49 AM
|
The specialized version of the CExtPPVW template class for the CExtPropertyGridCtrl class demonstrates how to do this. The CExtPPVW template class implements printing and print previewing for other controls. It adds print and print preview buttons to the toolbar of the property grid control. The CExtPPVW < CExtPropertyGridCtrl > :: OnPgcCreateBars() virtual method modifies the toolbar of property grid control by adding new buttons to it. The CExtPPVW < CExtPropertyGridCtrl > :: OnCmdMsg () virtual method handles and updates the state of toolbar commands.
|
|
Dominik Braendlin
|
Aug 19, 2008 - 7:56 AM
|
I found some articles about adding buttons on your page but none of them seams to work at least in my project. I get the button but it does not show the icon nor does it trigger a CN_COMMAND event. I have implemented the OnPgcCreateBars and the OnCmdMsg function.
|
|
tera t
|
Aug 19, 2008 - 12:42 AM
|
Hello. 1, I want to make CExtContorlBar by non-display.
2, In addition, I want you to teach a called virtual function when it was displayed for the first time
|
|
Technical Support
|
Aug 21, 2008 - 1:28 PM
|
All the Prof-UIS control bars are created through invocation of the CExtControlBar::Create() method which is declared as: virtual BOOL Create(
__EXT_MFC_SAFE_LPCTSTR lpszWindowName,
CWnd * pParentWnd,
UINT nID = AFX_IDW_DIALOGBAR,
DWORD dwStyle =
WS_CHILD|WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPSIBLINGS
|CBRS_TOP|CBRS_GRIPPER|CBRS_TOOLTIPS
|CBRS_FLYBY|CBRS_SIZE_DYNAMIC
|CBRS_HIDE_INPLACE
); The WS_VISIBLE style is present in the default parameter value. You can create the bar without this style to make it invisible. You can also simply hide the bar at the end of the CMainFrame::OnCreate() method using the CFrameWnd::ShowControlBar() method.
|
|
Technical Support
|
Aug 19, 2008 - 11:47 AM
|
You can hide a control bar using the CFrameWnd::ShowControlBar() method. But first, you should check whether the bar is auto-hidden using the CExtControlBar::AutoHideModeGet() method. The auto-hidden control bars can be switched into the simple hidden state using the CExtControlBar::AutoHideModeSet() method. Then you can set the CExtControlBar::m_bAppearInDockSiteControlBarPopupMenu() property to false() if you want to hide the command displaying the control bar from all the built-in context menus displayed by Prof-UIS over frame window areas.
|
|
tera t
|
Aug 21, 2008 - 2:32 AM
|
Hello. When I did Create of bar.
I want to make bar non-display.
Is it impossible?
|
|
Chris Anderson
|
Aug 15, 2008 - 7:29 PM
|
We have a class derived from CExtScrollBar, this class is used to subclassed an existing scroll bar window. There is a problem when the up/down arrow key is clicked : WM_VSCROLL ( wParam = SB_LINEDOWN ) message is sent more than once. The number is random, in the test, it ranges from 15 - 30 times. in the following function void CExtScrollBar::ScrollBar_TrackMouseLButtonDown( ) you will see the code snipplet case (CExtPaintManager::__ESBMHT_BUTTON_DOWN):
// bSendScrollingNotification = false;
if( m_bSendActionNotifications )
::SendMessage(
hWndParent,
_psbd.m_bHorzBar ? WM_HSCROLL : WM_VSCROLL,
MAKEWPARAM(
( _psbd.m_bHorzBar ? SB_LINERIGHT : SB_LINEDOWN ),
0
),
LPARAM(m_hWnd)
); ...
if you put a break point here, then WM_SCROLL message is generated only once. But if you put a TRACE here, you will see the message is generated many times ?
looks like the loop is intended to simulate auto repeat behavior, but it cause a side effect here, is there any attribute or property that can avoid this behavior ? Thanks
|
|
Kevin Eshbach
|
Aug 15, 2008 - 8:56 AM
|
I’m trying to detect if a CFrameWnd contained within a CExtDynAutoHideSlider has been activated by the user clicking on it. How do I determine that a pinnable window has been activated by a mouse click? I can’t find anything looking through CExtDynAutoHideSlider. Kevin Eshbach
|
|
Technical Support
|
Aug 15, 2008 - 3:34 PM
|
The CExtControlBar window implements a control bar. It’s designed as a container for only one child window. This child window is automatically resized for covering the entire bar’s client area and when the bar window becomes focused, it immediately sets focus to its child window. The CExtDynAutoHideSlider window does the same and looks exactly like the control bar. There is only one CExtDynAutoHideSlider window that is always created inside main frame window. When the bar is auto hidden and CExtDynAutoHideSlider window is invisible, the bar’s child window is inside the bar window. When CExtDynAutoHideSlider becomes visible, the bar’s child window is moved into the CExtDynAutoHideSlider window using the SetParent() Win32 API. When the CExtDynAutoHideSlider window becomes invisible then its child window returned back into the control bar window using the same API. The SetParent() Win32 API causes the WM_WINDOWPOSCHANGED Win32 API standard message be sent to bar’s child window. You can simply handle this message in bar’s child window and analyze its parent window.
|
|
miles waldron
|
Aug 14, 2008 - 6:25 PM
|
I want my application to look professional. Is there a version of CListView that I should be using?
|
|
Technical Support
|
Aug 15, 2008 - 3:25 PM
|
Yes, it already exists in the beta version of Prof-UIS 2.84. Here is the compiled test project:
NewControls3.zip
|
|
miles waldron
|
Aug 17, 2008 - 9:56 AM
|
Thanks! My general confusion is that your grid class can be used for more than just grids. The single row select row grid class works like a super fancy CListView. I will look at your suggestions as well, but so far using the grid class from the sample grids example seems to be a fit for what I am doing.
|
|
howard liu
|
Aug 14, 2008 - 2:47 PM
|
Hi, After applying Prof-UI over the (MFC based ) user interfaces present in our application, we see a kind of performance problem. When we try to resize the user interface we see that the painting process/ getting back to normal appearence take a resonably long time. Is there a way to speed up the performance ( of repainting) after an operation like resizing Thanks Howard
|
|
Technical Support
|
Aug 15, 2008 - 3:32 PM
|
Please provide us with more details about the performance problem in your project. Which project type it is? Dialog or frame window based? Which controls are used in it? Do you use any heavy code in the command updating methods and/or in the timer event handler methods?
|
|
howard liu
|
Aug 14, 2008 - 2:06 PM
|
Hi, Is there a way to disable Navigator option in page navigator ctrl in prof-ui/ Page Navigator button come on the right click of the page navigator Thanks, Howard
|
|
Technical Support
|
Aug 21, 2008 - 8:15 AM
|
We are sorry but it’s not clear what you mean. Could you provide some screenshot that clarifies your question? Thank you.
|
|
howard liu
|
Aug 14, 2008 - 2:03 PM
|
Hi, Is there any specific prof-ui API for insertion of dynamic menu item in CExtMenuPopupWindow We tried to insert using MFC API insert menu item & delete menu item to perform some dynamic updations in the drop down and popup menu Thanks, Howard
|
|
Technical Support
|
Aug 15, 2008 - 3:27 PM
|
The CExtPopupMenuWnd::ItemInsert() method inserts a menu item based on the command manager or menu separator item or classic menu popup item. The CExtPopupMenuWnd::ItemInsertCommand() method inserts a menu command item which is not based on the command manager. The CExtPopupMenuWnd::InsertSpecPopup() method can be used for inserting any Prof-UIS specific advanced sub menu: color picker menu, undo-redo menu, date picker menu, list box menu or any your custom popup menu object. The CExtPopupMenuWnd::g_nMsgPrepareOneMenuLevel() registered message is sent by all the popup menus at any level before menu window appear on the screen. You can handle this message like demonstrated in our sample applications (ProfUIS_Controls for example) and implement dynamic menu construction.
|
|
miles waldron
|
Aug 14, 2008 - 1:21 PM
|
I want my entire application to look professional. Is there some supported method for having a get folders dialog box that looks nice?
|
|
Technical Support
|
Aug 19, 2008 - 1:08 PM
|
Here is the demonstration of beta shell dialogs including a browse for folder dialog:
BetaShellDialogs.zip
|
|
Technical Support
|
Aug 15, 2008 - 3:31 PM
|
Completely new, written from scratch and un-comparable with any existing shell tree/list controls and common file dialog and brows for folder/file dialog will appear in the nearest Prof-UIS version. We can provide you with beta code.
|
|
miles waldron
|
Aug 17, 2008 - 9:58 AM
|
Also, to answer my own question, in case anyone else is interested, this code works pretty well, until the new system dialogs are ready.
/////////////////////////////////////////////////////////////////////////////
// BrowseFolderCallBack
int
CALLBACK BrowseFolderCallBack(HWND hwnd,UINT uMsg,LPARAM lp, LPARAM pData)
{
TCHAR szDir [MAX_PATH];
switch(uMsg) {
SendMessage case BFFM_INITIALIZED: if(GetCurrentDirectory(sizeof(szDir), szDir)) (hwnd, BFFM_SETSELECTION, TRUE, (LPARAM)szDir);
break;
case BFFM_SELCHANGED:
if(SHGetPathFromIDList((LPITEMIDLIST)lp, szDir))
SendMessage (hwnd, BFFM_SETSTATUSTEXT, 0, (LPARAM)szDir);
break;
default:
break;
}
} return(0);
/////////////////////////////////////////////////////////////////////////////
// BrowseFolder
BOOL CMy4150App ::BrowseFolder(const CString& strInDir, CString& strOutDir)
{
BOOL fSuccess = FALSE;
BROWSEINFO bi ;
TCHAR szDir [MAX_PATH];
LPITEMIDLIST pidl ;
LPMALLOC pMalloc ;
if(SUCCEEDED(SHGetMalloc(&pMalloc))) {
ZeroMemory (&bi,sizeof(bi));
bi .hwndOwner = m_pMainWnd->m_hWnd;
bi .pszDisplayName = 0;
bi .pidlRoot = 0;
bi .ulFlags = BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT | BIF_USENEWUI;
bi .lpfn = BrowseFolderCallBack;
SetCurrentDirectory (strInDir);
pidl = SHBrowseForFolder(&bi);
if(pidl) {
if(SHGetPathFromIDList(pidl,szDir))
{
strOutDir = szDir;
fSuccess = TRUE;
}
pMalloc
pMalloc ->Free(pidl); ->Release();
}
}
} return(fSuccess);
|
|
miles waldron
|
Aug 14, 2008 - 1:19 PM
|
I want my whole application to look professional. Is there a currently supported way or an alternative to AfxMessageBox that looks nice?
|
|
Technical Support
|
Aug 15, 2008 - 3:21 PM
|
We have started working on skinned common dialogs. They should appear in the next release. We will include a skinned message box replacement too.
|
|
David Skok
|
Aug 14, 2008 - 7:47 AM
|
Is it possible to fix the width of some columns while the rest are proportional? Thanks, Dave
|
|
Technical Support
|
Aug 15, 2008 - 3:13 PM
|
Both proportional widths and pixel widths are supported for columns in a grid window at the same time. The proportional widths are applied during resizing for changing current widths of each of columns. The minimal and maximal column widths in pixels can be used for restricting the current column width both during proportional resizing and drag-n-drop based resizing by the user. You can set the minimal/current/maximal column width in pixels to the same values using CExtGridCell::ExtentSet() method of a column header cell and this column will not be resized proportionally, the user will not be able to resize it manually and the resizing cursor will not appear when the mouse is near separator at the right side of header cell.
|
|
Offer Har
|
Aug 14, 2008 - 7:05 AM
|
When is this feature / bug-fix going to be available? we need it badly. Thanks,
Ron.
|
|
Technical Support
|
Aug 16, 2008 - 1:20 PM
|
This feature is not finished yet. It requires some serious changes in tree grid’s source code including some loops that find grid cells during hit-testing and partial grid re-painting. It will be added in the next release.
|
|
Offer Har
|
Aug 23, 2008 - 9:54 AM
|
Any date to this release? Will the next release solve also the problem of tabs not looking good for with embeded dialogs?
|
|
Technical Support
|
Aug 25, 2008 - 6:54 AM
|
v.2.84 is scheduled for the first half of September.
|
|
Mike Van Duzee
|
Aug 12, 2008 - 1:08 PM
|
We are currently having problems with the input of key codes (ALT + character sequence). For instance, in ProfStudio if you attempt to enter ALT + 0176 to input a "degree" symbol you get the "spade" or ALT+6. It appears as though all but the last character are being ignored.
This seems consistent in all prof controls (i.e. in the profstudio child window or in either of the edit controls in the tool bars).
Any help would be much appreciated.
|
|
Technical Support
|
Aug 13, 2008 - 12:49 PM
|
This issue is not fixed yet. We are working on it.
|
|
Mike Van Duzee
|
Aug 12, 2008 - 1:10 PM
|
|
|
Offer Har
|
Aug 12, 2008 - 9:30 AM
|
Hi, I have a popup menu which display icons next to the items in it. When the menu is displayed I need to chnage one of the icons according to some conditions in the code. Can this be done? How? Thanks,
Ron.
|
|
Technical Support
|
Aug 12, 2008 - 1:49 PM
|
The popup menu uses icons stored in the command manager. The following code gets an icon object by command identifier: UINT nCmdID = . . .
CExtCmdIcon * pIcon = g_CmdManager->CmdGetIconPtr( . . . , nCmdID );
if( pIcon != NULL )
{
// this command has no icon, you can use one of the overloaded
// CExtCmdManager::CmdSetIcon() methods for assign icon to this command
return . . .
} The CExtCmdIcon::m_bmpNormal property of CExtBitmap type contains an icon’s image in 32-bit format with alpha channel. You can re-load this image, scale it out or apply visual effects using the methods of the CExtBitmap class. The customizable menus are also based on the icons stored in the command manager. But the command items in customizable menus can display customized/edited version of icons which are stored in the command tree nodes.
|
|
Ian McIntosh
|
Aug 12, 2008 - 2:55 AM
|
Hi, Is it possible to set the icon size for a CExtPopupMenuWnd?
|
|
Ian McIntosh
|
Aug 14, 2008 - 5:20 AM
|
The last reply does not seem to be relevant. I am using a stand-alone popup menu, calling TrackPopupMenu(). A simplified code extract is:
CExtPopupMenuWnd* pMenu =
pMenu->CreatePopupMenu(hWnd); new CExtPopupMenuWnd;
pMenu->ItemInsertCommand(1, -1, "Item without icon");
pMenu->ItemInsertCommand(2, -1, "Item with icon", true, hIcon, bCheck); // I would like not to have to do the following:
{
SIZE size; size.cx = 16; size.cy = 16;
pMenu->ItemGetIcon(pMenu->ItemGetCount()-1).Scale(size);
}
// end of bit I would like not to do
pMenu->TrackPopupMenu(CExtPopupMenuWnd::__AT_NOISE, pos.x, pos.y);
I have 2 issues:
1. I would like the items with an icon to be the same height as the items without an icon.
2. I would like icons to show at size 16x16 by default (without having to explicitly set each one) if possible. if (hIcon)
|
|
Technical Support
|
Aug 16, 2008 - 1:15 PM
|
We suspect you are using the LoadIcon() Win32 API which always loads a 32x32 icon image regardless of the image format stored inside the icon. If our guess is correct, you should simply use the LoadImage() Win32 API for loading 16x16 icons.
|
|
Technical Support
|
Aug 13, 2008 - 12:45 PM
|
If you are constructing popup menus by handling the CExtPopupMenuWnd::g_nMsgPrepareOneMenuLevel registered message, you should inform Prof-UIS about whether any of menu items were modified: <code><pre>LRESULT CYourClass::OnExtMenuPrepareLevel( WPARAM wParam, LPARAM lParam )
{
lParam;
CExtPopupMenuWnd::MsgPrepareMenuData_t * pData =
reinterpret_cast
< CExtPopupMenuWnd::MsgPrepareMenuData_t * >
( wParam );
ASSERT( pData != NULL );
CExtPopupMenuWnd * pPopup = pData->m_pPopup;
. . .
// if the pPopup menu was modified, then you should invoke the following:
pData->m_bMenuChanged = true;
. . .
|
|
Ian McIntosh
|
Aug 13, 2008 - 2:10 AM
|
I am using ItemInsertCommand, so icons are not taken from command manager. I use the version of ItemInsertCommand that passes in an HICON. The default seems to be an icon size larger that 16x16 (looks more like 24x24). I have found I can use ItemGetIcon to get the icon then call scale to set it to 16x16. This correctly sets the icon to 16x16, but the height of the menu item is still larger than one which does not have an icon set.
Ideally, I would like to set the default icon size so that I can pass in icons as HICONs and not have to resize them.
|
|
Technical Support
|
Aug 12, 2008 - 1:44 PM
|
The Prof-UIS popup menu uses icons stored in the command manager. In most cases the command icons are appeared in the command manager due to updating it from toolbar resources and these icons have the size of 16x16. You can update the command manager from a toolbar resource based on larger images so you can have exactly the same larger icons in menus. The popup menus displayed from the menu bar in the FunnyBars sample application contain command menu items with icons of different sizes. The CExtPopupMenuWnd window displays menu icons "as is" without resizing. If you need different size icons for the same command in toolbar and in menu, then you should use different command identifiers for menu item and toolbar button, update command icons for these two commands in the command manager from different toolbar resources and connect these two commands to the same command updating and/or handler methods in the message map.
|
|
Sergio Buonanno
|
Aug 8, 2008 - 2:38 AM
|
I post once again my question because I noticed that it was ignored so far (I really need your help).... I have an application with MS Outlook look and feel. The page navigation control on the left is divided in two panes: a standard pane and a Favorites pane. The Favorites pane is located at the top of the navigation control as in Outlook and its height is calculated in the following way: The height must be enough to show all the tree items inside the control but it cannot be higher than half of the entire navigation control client area that is occupied by the Favorites and Main tree controls (each inside a pane), because the Standard Tree (that looks like the Main Folders in Outlook) has higher priority and it must occupied an area that at least is half the height of the page navigation control client area, and it can never be shorter than the Favorites tree control. The behavior of my application is slightly different from that of Outlook, where the Favorites pane has higher priority and its height could be higher than that of the Main Folders’. In my case is exactly the opposite, even if the UI of the page navigation control is exactly like Outlook’s. I succeed to manage this situation when the page navigation control is docked to the application main window using the methods: CExtPageNavigatorWnd::ITEM_PANE_INFO->HeightSet(hFavPane);
CExtPageNavigatorWnd::ITEM_PANE_INFO->HeightSet(hMainPane); (In other words: hFavPane cannot be greater than hMainPane and in any case it must be <= of half the page navigation control client area’s height) But that doesn’t work when the navigation pane is floating. May you please suggest me a better way to calculate and set panes height at run-time so that I can have full control in settings panes’ height especially when the page navigation control is floating and not docked ?
|
|
Sergio Buonanno
|
Aug 13, 2008 - 6:51 AM
|
I’m sorry, I had a problem with the Paste command....my code is: CExtPageNavigatorWnd::PAGE_ITEM_INFO *pPage = m_pParentNav->ItemGetInfo(m_iPage /*idxPage*/);
CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane1 = pPage->PaneGetInfo(INDEX_PANE_FAVORITES);
CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane2 = pPage->PaneGetInfo(INDEX_PANE_NAVIGATION); CRect rcPage;
m_pParentNav->GetClientRect(rcPage);
int iMinH = (rcPage.Height() / 2) - 10;
long lHalfH = iMinH / 2; The value of lHalfH is the problem, because m_pParentNav->GetClientRect(rcPage) fails to return the correct value when the pane is floating. I need to calculate the value of half the height of the Page Navigation control’s client area and that doesn’t work correctly when the Page Navigation control is floating.
|
|
Sergio Buonanno
|
Aug 13, 2008 - 6:47 AM
|
CExtPageNavigatorWnd::PAGE_ITEM_INFO *pPage = m_pParentNav->ItemGetInfo(m_iPage
/*idxPage*/); int iMinH = (rcPage.Height() / 2) - 10;if (iMinH < 150)long lHalfH = iMinH / 2; CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane1 = pPage->PaneGetInfo(INDEX_PANE_FAVORITES); CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane2 = pPage->PaneGetInfo(INDEX_PANE_NAVIGATION); CRect rcPage; m_pParentNav->GetClientRect(rcPage); iMinH = 150;
|
|
Sergio Buonanno
|
Aug 13, 2008 - 6:47 AM
|
CExtPageNavigatorWnd::PAGE_ITEM_INFO *pPage = m_pParentNav->ItemGetInfo(m_iPage
/*idxPage*/); int iMinH = (rcPage.Height() / 2) - 10;if (iMinH < 150)long lHalfH = iMinH / 2; CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane1 = pPage->PaneGetInfo(INDEX_PANE_FAVORITES); CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane2 = pPage->PaneGetInfo(INDEX_PANE_NAVIGATION); CRect rcPage; m_pParentNav->GetClientRect(rcPage); iMinH = 150;
|
|
Sergio Buonanno
|
Aug 13, 2008 - 6:47 AM
|
CExtPageNavigatorWnd::PAGE_ITEM_INFO *pPage = m_pParentNav->ItemGetInfo(m_iPage
/*idxPage*/); int iMinH = (rcPage.Height() / 2) - 10;if (iMinH < 150)long lHalfH = iMinH / 2; CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane1 = pPage->PaneGetInfo(INDEX_PANE_FAVORITES); CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane2 = pPage->PaneGetInfo(INDEX_PANE_NAVIGATION); CRect rcPage; m_pParentNav->GetClientRect(rcPage); iMinH = 150;
|
|
Sergio Buonanno
|
Aug 13, 2008 - 6:47 AM
|
CExtPageNavigatorWnd::PAGE_ITEM_INFO *pPage = m_pParentNav->ItemGetInfo(m_iPage
/*idxPage*/); int iMinH = (rcPage.Height() / 2) - 10;if (iMinH < 150)long lHalfH = iMinH / 2; CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane1 = pPage->PaneGetInfo(INDEX_PANE_FAVORITES); CExtPageNavigatorWnd::ITEM_PANE_INFO *pPane2 = pPage->PaneGetInfo(INDEX_PANE_NAVIGATION); CRect rcPage; m_pParentNav->GetClientRect(rcPage); iMinH = 150;
|
|
Technical Support
|
Aug 12, 2008 - 1:37 PM
|
Unfortunately we failed to reproduce this bug. Here is the test project in which a page navigator is created inside a control bar. You can make the control bar floating and make sure that the panes are resized correctly. Would you create a new one or modify this project to reproduce the problem and send it to us?
TestPageNavigatorInsideCB.zip
|
|
Offer Har
|
Aug 7, 2008 - 5:40 AM
|
Dear support, We have been dicussing this for years now, and it’s time to end this problems
1) When you have a tab control with a grid inside, it looks very bad, because the panels do not have any frame
2) When you have a tab control with a dialog inside, it looks very bad, because the color of the tab control is light, and the back color of the dialog is dark - the normal dialog back-color, and it does not look connected to the tab. again, some frame might help. You said that you will work on fixiong these problems, but never did. Please give some details as to how and when you are going to fix these problems - it causes a major set-back for us. Regards
Ron.
|
|
Technical Support
|
Sep 18, 2008 - 3:35 AM
|
We thought about this problem. It depends on the UI theme and it does not have 100% equal solution for all the themes. That’s is why we still haven’t resolved this. It looks like it would be easier to implement a grid window with all the required border lines and remove any borders from the parent container window at all.
|
|
Offer Har
|
Sep 18, 2008 - 5:29 AM
|
There must be a solution to these issue. What do you mean by: "implement a grid window with all the required border lines and remove any borders from the parent container window at all."? What about the problem of tab container with dialogs - the second problem? The tab control must have some bottom border, and have some gradient taht will tranform into the dialog’s color.
|
|
Dominik Braendlin
|
Aug 6, 2008 - 2:57 AM
|
Hi
While surfing the web seeking for a more advanced progress bar ctrl I came across the following code sample on code project.
http://www.codeproject.com/KB/miscctrl/text_progressctrl.aspx
This progress ctrl features a marquee and text.
Are there plans to include these features in the CExtProgressWnd anytime soon?
Thanks
|
|
Technical Support
|
Aug 6, 2008 - 11:30 AM
|
We never include ready-to-use components from sites like www.codeproject.com and www.codeguru.com into Prof-UIS. The progress with text in the article referred in your message looks like historic. The same progress controls were present in Windows 3.xx. We plan to include the endless progress control into Prof-UIS as a stand-alone control not related to classic progress common control. But such control also present on the codeproject:
http://www.codeproject.com/KB/miscctrl/nonprogressbar.aspx
So, we need some idea how to code similar control with some extended features. Otherwise we have no reason simply to code a class that already exists.
|