Beispiel #1
0
BOOL CWinFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
	
	if (!CreateBars(Panels,2))
		return -1;
	
	if ( !m_ToolBar.Create(m_ReBar->GetSafeHwnd()))
		return -1;


	m_ToolBar.LoadToolBar(IDR_TOOLBAR);
	m_ToolBar.AddTrueColor(IDB_TOOLBAR,TB_SETIMAGELIST);
	m_ToolBar.CreateCombo(&m_comboDebug,ID_COMBOBOX,150,WS_CHILD|WS_VISIBLE|CBS_DROPDOWN  | 
							WS_VSCROLL | CBS_HASSTRINGS |CBS_OWNERDRAWVARIABLE);

	AddBar(&m_ToolBar, IDR_TOOLBAR);

	SetPanelText(0,_T("nueva cadena ") );
	SetIcon(theApp->LoadIcon((LPCSTR)IDI_SMALL),FALSE);

	if (!m_Splitter.Create(this))
			return -1;

	if (!m_Splitright.Create(&m_Splitter))
		return -1;
	
	if (!m_SplitterList.Create(&m_Splitright))
		return -1;

	if (!cf.Create( &m_Splitter, CRect(0,0,0,0) ,WS_CHILD|WS_VISIBLE, 1000))
		return -1;

	if (!tc.Create(cf.GetSafeHwnd(),WS_CHILD | WS_VISIBLE | TVS_HASLINES | 
								TVS_LINESATROOT | TVS_HASBUTTONS, 2))
		return -1;

	if (!FolderList.Create(m_Splitright.GetSafeHwnd(),WS_CHILD | WS_VISIBLE | TVS_HASLINES | 
								TVS_LINESATROOT | TVS_HASBUTTONS, 2))
		return -1;
	
	
	if (!out2.Create(WS_VISIBLE,
		CRect(0,0,0,0), &cf, 1))
		return -1;
	
	if (!out1.Create(WS_VISIBLE,
		CRect(0,0,0,0), &cf, 2))
		return -1;
	out1.SetTypeLook(FALSE);
	if (!m_up.Create(m_SplitterList.GetSafeHwnd(), WS_CHILD|WS_VISIBLE, 1000))
		return -1;
	
	if (!m_down.Create(m_SplitterList.GetSafeHwnd(), WS_CHILD|WS_VISIBLE, 2000))
		return -1;

	

	out2.SetImageList(IDB_BITMAP1, 32, 0, RGB(255,0,0));
	out2.AddItem(IDO_OUTODAY,"Home",7);
	out2.AddItem(IDO_CALENDARIO,"Calendar",1);
	out2.AddItem(IDO_CONTACTO,"Contacts",2);
	out2.AddItem(IDO_TAREAS,"Tasks",3);
	out2.AddItem(IDO_NOTAS,"Notes",5);
	out2.AddItem(IDO_ELIMINAR,"Delete",6);
	
	cf.AddFolder(&out2,"Outlook Shortcuts");
	cf.AddFolder(&tc,"Other Shortcuts");
	
	m_Splitter.SetStyleSeparator(CSplitter::STYLE3D);

	m_Splitright.SeTypeALing(CSplitter::ALINGHORZ);
	m_Splitright.AddLeftCtrl(&m_up,3);
	m_Splitright.AddRightCtrl(&m_down,4);
	m_Splitright.SetStyleSeparator(CSplitter::STYLEFLAT);
	
	m_SplitterList.SeTypeALing(CSplitter::ALINGVERT);

	m_up.Create (m_SplitterList.GetSafeHwnd(),WS_CHILD | WS_VISIBLE | WS_VSCROLL | LVS_REPORT,7000);
	m_up.SendMessage (LVM_SETEXTENDEDLISTVIEWSTYLE, 0,LVS_EX_FULLROWSELECT );
	m_up.InsertColumn (0, _T("From"), LVCFMT_LEFT, 100,0);
	m_up.InsertColumn (1, _T("Subject"), LVCFMT_LEFT, 200,0);
	m_up.InsertColumn (2, _T("Received"), LVCFMT_LEFT, 100,0);
	m_up.InsertItemText (0, _T("francisco.campos"));
	m_up.InsertItemText (0, 1, _T("Pretty Winapi Class has been launched"));
	m_up.InsertItemText (0, 2, _T("May 30, 2007"));
	m_up.InsertItemText (1, _T("*****@*****.**"));
	m_up.InsertItemText (1, 1, _T("Bugs reporting"));
	m_up.InsertItemText (1, 2, _T("May 29, 2007"));

	//subclass the Header list
	HWND hWndHeader = m_up.GetDlgItem(0);
	m_header.SubclassWnd(hWndHeader);

	m_Splitter.AddLeftCtrl(&cf,200);
	m_Splitter.AddRightCtrl(&m_Splitright,400);
	m_Splitright.AddLeftCtrl(&FolderList,150);
	m_Splitright.AddRightCtrl(&m_SplitterList,350);
	m_SplitterList.AddLeftCtrl(&m_up,400);
	m_SplitterList.AddRightCtrl(&m_down,200);
	m_ClientView=(CSplitter*)&m_Splitter;
	cSpawn.LoadToolBarResource(IDR_TOOLBAR,IDB_TOOLBAR);

	//--------------------populate the tree

	if(!Image.CreateColor(IDB_TREE)) 
			return FALSE;
	FolderList.SetImageList(Image.GetImageHandle(),TVSIL_NORMAL);
	//FolderList.SetImageList(IDB_TREE, 32, 0, RGB(255,0,0));
	HTREEITEM hRoot = FolderList.InsertItem (_T("Outlook Today"), 0, 0);
		
		FolderList.InsertItem (_T("Calendar"), 1, 1, hRoot);
		FolderList.InsertItem (_T("Drafts"), 2, 2, hRoot);
		FolderList.InsertItem (_T("Inbox"), 3, 3, hRoot);
		FolderList.InsertItem (_T("Journal"), 4, 4, hRoot);
		FolderList.InsertItem (_T("Notes"), 5, 5, hRoot);
		FolderList.InsertItem (_T("Outbox"),6, 6, hRoot);
		FolderList.InsertItem (_T("Send Items"), 7, 7, hRoot);
		FolderList.InsertItem (_T("Tasks"), 8, 8, hRoot);
		FolderList.Expand (hRoot, TVE_EXPAND);
	//--------------------End populate tree	
	
	//--------------------populate the tree2

	tc.SetImageList(Image.GetImageHandle(),TVSIL_NORMAL);
	//FolderList.SetImageList(IDB_TREE, 32, 0, RGB(255,0,0));
	HTREEITEM hRoot1 = tc.InsertItem (_T("My PC"), 9, 9);
		
		tc.InsertItem (_T("Program Files"), 10, 10, hRoot1);
		tc.InsertItem (_T("Temp"), 10, 10, hRoot1);
		tc.InsertItem (_T("Windows"), 10, 10, hRoot1);
		tc.InsertItem (_T("Winold"), 10, 10, hRoot1);
		tc.Expand (hRoot1, TVE_EXPAND);
	//--------------------End populate tree	
	return 0;
}
Beispiel #2
0
void MythUIEditBar::Display(void)
{
    QRect keeparea = QRect();
    QRect cutarea  = QRect();
    MythUIType *position    = GetChild("position");
    MythUIType *keep        = GetChild("keep");
    MythUIType *cut         = GetChild("cut");
    MythUIType *cuttoleft   = GetChild("cuttoleft");
    MythUIType *cuttoright  = GetChild("cuttoright");
    MythUIType *keeptoleft  = GetChild("keeptoleft");
    MythUIType *keeptoright = GetChild("keeptoright");

    if (position)
        position->SetVisible(false);

    if (keep)
    {
        keep->SetVisible(false);
        keeparea = keep->GetArea();
    }

    if (cut)
    {
        cut->SetVisible(false);
        cutarea = cut->GetArea();
    }

    if (cuttoleft)
        cuttoleft->SetVisible(false);

    if (cuttoright)
        cuttoright->SetVisible(false);

    if (keeptoleft)
        keeptoleft->SetVisible(false);

    if (keeptoright)
        keeptoright->SetVisible(false);

    if (position && keeparea.isValid())
    {
        int offset = position->GetArea().width() / 2;
        int newx   = (int)(((float)keeparea.width() * m_editPosition) + 0.5f);
        int newy   = position->GetArea().top();
        position->SetPosition(newx - offset, newy);
        position->SetVisible(true);
    }

    ClearImages();

    if (!m_regions.size())
    {
        if (keep)
            keep->SetVisible(true);

        return;
    }

    MythUIShape *barshape   = dynamic_cast<MythUIShape *>(cut);
    MythUIImage *barimage   = dynamic_cast<MythUIImage *>(cut);
    MythUIShape *leftshape  = dynamic_cast<MythUIShape *>(cuttoleft);
    MythUIImage *leftimage  = dynamic_cast<MythUIImage *>(cuttoleft);
    MythUIShape *rightshape = dynamic_cast<MythUIShape *>(cuttoright);
    MythUIImage *rightimage = dynamic_cast<MythUIImage *>(cuttoright);

    QListIterator<QPair<float, float> > regions(m_regions);

    while (regions.hasNext() && cutarea.isValid())
    {
        QPair<float, float> region = regions.next();
        int left  = (int)((region.first * cutarea.width()) + 0.5f);
        int right = (int)((region.second * cutarea.width()) + 0.5f);

        if (left >= right)
            right = left + 1;

        if (cut)
        {
            AddBar(barshape, barimage, QRect(left, cutarea.top(), right - left,
                                             cutarea.height()));
        }

        if (cuttoleft && (region.second < 1.0f))
            AddMark(leftshape, leftimage, right, true);

        if (cuttoright && (region.first > 0.0f))
            AddMark(rightshape, rightimage, left, false);
    }

    CalcInverseRegions();

    barshape   = dynamic_cast<MythUIShape *>(keep);
    barimage   = dynamic_cast<MythUIImage *>(keep);
    leftshape  = dynamic_cast<MythUIShape *>(keeptoleft);
    leftimage  = dynamic_cast<MythUIImage *>(keeptoleft);
    rightshape = dynamic_cast<MythUIShape *>(keeptoright);
    rightimage = dynamic_cast<MythUIImage *>(keeptoright);

    QListIterator<QPair<float, float> > regions2(m_invregions);

    while (regions2.hasNext() && keeparea.isValid())
    {
        QPair<float, float> region = regions2.next();
        int left  = (int)((region.first * keeparea.width()) + 0.5f);
        int right = (int)((region.second * keeparea.width()) + 0.5f);

        if (left >= right)
            right = left + 1;

        if (keep)
        {
            AddBar(barshape, barimage, QRect(left, keeparea.top(), right - left,
                                             keeparea.height()));
        }

        if (keeptoleft && (region.second < 1.0f))
            AddMark(leftshape, leftimage, right, true);

        if (keeptoright && (region.first > 0.0f))
            AddMark(rightshape, rightimage, left, false);
    }

    if (position)
        position->MoveToTop();
}