Ejemplo n.º 1
0
Archivo: handler.c Proyecto: aosm/X11
/*ARGSUSED*/
void
OptionCallback(Widget w, XtPointer pointer, XtPointer junk)
{
  ManpageGlobals * man_globals = (ManpageGlobals *) pointer;
  String params;
  Cardinal num_params = 1;

  if ( w == man_globals->search_entry )
    PopupSearch(XtParent(w), NULL, NULL, NULL);
  else if (w == man_globals->dir_entry) {       /* Put Up Directory */
    params = "Directory";
    GotoPage(XtParent(w), NULL, &params, &num_params);
  }
  else if (w == man_globals->manpage_entry ) {  /* Put Up Man Page */
    params = "ManualPage";
    GotoPage(XtParent(w), NULL, &params, &num_params);
  }
  else if ( w == man_globals->help_entry )      /* Help */
    PopupHelp(XtParent(w), NULL, NULL, NULL);
  else if ( w == man_globals->both_screens_entry ) /*Toggle Both_Shown State.*/
    ToggleBothShownState(man_globals);
  else if ( w == man_globals->remove_entry)     /* Kill the manpage */
    RemoveThisManpage(XtParent(w), NULL, NULL, NULL);
  else if ( w == man_globals->open_entry)       /* Open new manpage */
    CreateNewManpage(XtParent(w), NULL, NULL, NULL);
  else if ( w == man_globals->version_entry)    /* Get version */
    ShowVersion(XtParent(w), NULL, NULL, NULL);
  else if ( w == man_globals->quit_entry)      /* Quit. */
    Quit(XtParent(w), NULL, NULL, NULL);
}
Ejemplo n.º 2
0
bool CWizardWindow::GoNext() 
{
	bool			ok;
	CPropPage	*	page = CurrentPage();
	if ( abs( (long)page->m_Next ) < 1024 )
		ok = GotoPage( m_CurrentPage + (long)page->m_Next, true );
	else
		ok = GotoPage( page->m_Next, true );
	return ok;
}
Ejemplo n.º 3
0
bool CWizardWindow::GoBack()
{
	bool			ok;
	CPropPage	*	page = CurrentPage();
	if ( page->m_Back == NULL )
		ok = GotoPage( page->m_Previous, false );
	else if ( abs( (long)page->m_Back ) < 1024 )
		ok = GotoPage( m_CurrentPage + (long)page->m_Back, false );
	else
		ok = GotoPage( page->m_Back, false );
	return ok;
}
Ejemplo n.º 4
0
void PageSelector::GotoPage()
{
	static QRegExp rx("^([0-9])+.*");
	int p = rx.cap(1).toInt();
	if (p < 1)
		p=1;
	if (p > LastPG)
		p = LastPG;
	GotoPg(p-1);
	emit GotoPage(p);
}
Ejemplo n.º 5
0
Archivo: handler.c Proyecto: aosm/X11
static void
PutUpManpage(ManpageGlobals * man_globals, FILE * file)
{
  String params = "ManualPage";
  Cardinal num_params = 1;
  
  if (file == NULL)
    return;

  OpenFile(man_globals, file);

  if (!man_globals->both_shown) {
    Arg arglist[1];
    XtSetArg(arglist[0], XtNsensitive, TRUE);
    XtSetValues(man_globals->manpage_entry, arglist, ONE);
    XtSetValues(man_globals->both_screens_entry, arglist, ONE);
  }
  GotoPage(man_globals->manpagewidgets.manpage, NULL, &params, &num_params);
}
Ejemplo n.º 6
0
void SelectNextRow(DmOpenRef db, Int16 step)
{
	UInt16 oldPage = g_CurrentPage;
	UInt16 oldSel = g_CurrentSelection;
	
	CalculateNextRow(db, step);
	
	if (g_CurrentPage == oldPage) {
		if (oldSel != g_CurrentSelection) {
			FormPtr form = FrmGetActiveForm();
			if (!FormIsNot(form, FormMain)) {
				TablePtr table = (TablePtr) GetObjectPtr(form, SMSTable);
				TblMarkRowInvalid(table, oldSel);
				TblMarkRowInvalid(table, g_CurrentSelection);
				TblRedrawTable(table);
			}
		}
	} else {
		GotoPage(db, g_CurrentPage);
	}
	
	UpdatePos(db);
}
Ejemplo n.º 7
0
void CProjectInfoPage::Notify( TNotifyUI& msg )
{
	if (0 == _tcsicmp(DUI_MSGTYPE_WINDOWINIT, msg.sType))
	{
		HandleWindowInitEvent(msg);
	}

	if (msg.sType != DUI_MSGTYPE_CLICK )
	{
		return;
	}

	DuiLib::CDuiString strName = msg.pSender->GetName();

	//"第一页"
	if (_tcsicmp(strName.GetData(), "btn_page_first") == 0)
	{
		if (!IsCacheEmpty()&& !IsFirstPage())
		{
			GotoPage(1);
		}	
	}
	//"上一页"
	else if (_tcsicmp(strName.GetData(), "btn_page_prev") == 0)
	{
		if (!IsCacheEmpty() && !IsFirstPage())
		{
			if (m_nCurrentPageIndex>1)
			{
				GotoPage(m_nCurrentPageIndex-1);
			}
		}
	}
	//"下一页"
	else if (_tcsicmp(strName.GetData(), "btn_page_next") == 0)
	{
		if (!IsCacheEmpty() && !IsEndPage())
		{
			if (m_nCurrentPageIndex<m_nEndPageIndex)
			{
				GotoPage(m_nCurrentPageIndex+1);
			}
		}
	}
	//"最后一页"
	else if (_tcsicmp(strName.GetData(), "btn_page_end") == 0)
	{
		if (!IsCacheEmpty()&& !IsEndPage())
		{
			if (m_nEndPageIndex>0)
			{
				GotoPage(m_nEndPageIndex);
			}	
		}
	}
	//1--10页按钮
	else if (strName.Find("btn_page_")>=0)
	{
		//tstring strSearch = "btn_page_";
		//tstring strBtnIndex = strName.Right(strName.GetLength()-strSearch.length());
		//int nIndex = atoi(strBtnIndex.c_str());

		int nIndex = atoi(msg.pSender->GetText());
		GotoPage(nIndex);
		return;
	}

	if (_tcsicmp(strName.GetData(), "OptionToday") == 0)
	{
		time_t tToday = time(0);
		FetchProjects(GetYMDTimeString(tToday));
	}
	else if (_tcsicmp(strName.GetData(), "OptionWeek") == 0)
	{
		time_t tToday = time(0);
		time_t tOneWeekAgo = tToday - const_one_week_seconds;
		FetchProjects(GetYMDTimeString(tOneWeekAgo));
	}
	else if (_tcsicmp(strName.GetData(), "OptionMonth") == 0)
	{
		time_t tToday = time(0);
		time_t tOneMonthAgo = tToday - const_one_month_seconds;
		FetchProjects(GetYMDTimeString(tOneMonthAgo));
	}
	else if (_tcsicmp(strName.GetData(), "OptionAll") == 0)
	{
		FetchProjects(tstring(_T("")));
	}
	else if (msg.pSender->GetName() == "btn_get_project_info")
	{
		sProjectItem* pData = (sProjectItem*)msg.pSender->GetParent()->GetParent()->GetParent()->GetTag();
		if (NULL != pData)
		{
			CFrameBusinessData::Instance()->ShowWindow(true);
			CFrameBusinessData::Instance()->setProjectItem(pData);
		}
	}
	else if (msg.pSender->GetName() == "btn_bussiness_chat")
	{
		sProjectItem* pData = (sProjectItem*)msg.pSender->GetParent()->GetParent()->GetParent()->GetTag();
		if (NULL != pData)
		{
			//没有创建房间,就需要重新选人。
			if (pData->strRoomID.empty())
			{
				
				CAddNewGroupMember* pAddGroupMemWnd = new CAddNewGroupMember(m_PaintManager);
				if (NULL != pAddGroupMemWnd)
				{
					pAddGroupMemWnd->SetShowMode(true);
					pAddGroupMemWnd->CreateWnd();
					pAddGroupMemWnd->Initialize();//初始化一次。
				}
				
				//bool bWithProperty = m_pComboResProperty->GetCurSel() == 1;
				pAddGroupMemWnd->SetResProperty(false, pData->strProjID, pData->strProjName);
				pAddGroupMemWnd->ShowWindow(true);
			}
			else
			{
				//我有可能不是这个群里面的成员,就需要判断下。如果我不是这个群里面的人,就不能进去。
				tstring strMyPhone = CController::Instance()->GetXmppClient()->jid().username();
				tstring strMyAccount = strMyPhone+MMPC_ACCOUNT;
				if(CController::Instance()->GetRoomManager()->IsInThisRoom(pData->strRoomID, strMyAccount ))
				{
					CController::Instance()->GetRoomManager()->EnterRoom(pData->strRoomID, strMyPhone);
					if (pData->strDestOrgID.empty() && pData->strDestOrgName.empty())
					{
						if (pData->vecDestParticipants.size()>0)
						{
							mainDlg::getInstance()->OnShowGroupChatWnd_Personal(pData->vecDestParticipants[0], pData->strRoomID);
						}
					}
					else
					{
						mainDlg::getInstance()->OnShowGroupChatWnd(pData->strDestOrgID, pData->strDestOrgName, pData->strRoomID);
					}
				}
				else
				{
					CMsgBox* pMsgBox = new CMsgBox("错误","您不是该群组成员!");
					pMsgBox->ShowModal();
				}
			}
			
		}		
	}	
	//增加搜索功能 by HQ 20160519
	else if (msg.pSender->GetName() == "btn_Search")
	{	
		COptionUI* OptionToday = static_cast<COptionUI*>(m_PaintManager->FindControl("OptionToday"));
		COptionUI* OptionWeek = static_cast<COptionUI*>(m_PaintManager->FindControl("OptionWeek"));
		COptionUI* OptionMonth = static_cast<COptionUI*>(m_PaintManager->FindControl("OptionMonth"));
		COptionUI* OptionAll = static_cast<COptionUI*>(m_PaintManager->FindControl("OptionAll"));

		tstring sSelectedTime=(_T(""));
		if (OptionToday->IsSelected())
		{
			time_t tToday = time(0);
			sSelectedTime = GetYMDTimeString(tToday);
		}
		else if (OptionWeek->IsSelected())
		{
			time_t tToday = time(0);
			time_t tOneWeekAgo = tToday - const_one_week_seconds;
			sSelectedTime = GetYMDTimeString(tOneWeekAgo);
		}
		else if (OptionMonth->IsSelected())
		{
			time_t tToday = time(0);
			time_t tOneMonthAgo = tToday - const_one_month_seconds;
			sSelectedTime = GetYMDTimeString(tOneMonthAgo);
		}
		else if (OptionAll->IsSelected())
		{
			//do nothing...
		}

		CEditUI* edtSearchString = static_cast<CEditUI*>(m_PaintManager->FindControl("edt_SearchString"));
		tstring sSearchString = edtSearchString->GetText();

		//允许空字符串查询 by HQ 20160519
		//if(sSearchString == "")
		//{
		//	CMsgBox* pMsgBox = new CMsgBox("错误","请输入查找条件!");
		//	pMsgBox->ShowModal();
		//	edtSearchString->SetFocus();
		//}
		//else
		//{
			FetchProjects(sSelectedTime,sSearchString);
		//}
	}	
}
Ejemplo n.º 8
0
void FormNoteBook :: PageSelected(wNBPageMsg m)
{
	wNoteBookPage *pw;
	static bool fReSelect = FALSE;
	static bool fFirstCall = TRUE;

	if (fFirstCall)
	{
		// This event always occurs when the first page is added to
		// a notebook.  Since we want the second page to be at the
		// top, we'll skip this event and set the top page after all
		// pages have been constructed.

		fFirstCall = FALSE;
		return;
	}

	if (fReSelect)
	{
		fReSelect = FALSE;
		return;
	}

	pw = m.CurrentTopPage();
	wFormWindow *pgWin;

	// If there is a current top page, dismiss it's form (dialog)
	//
	if (pw)
	{
		if (pw == m.NewTopPage())
			return;

		if ((pgWin = (wFormWindow *)pw->GetWindow()) != NULL)
		{
			if (!pgWin->Exit(AcFormExit, NULL))
			{
				fReSelect = TRUE;	// validation error occured
				GotoPage(pw);		// re-select current top page
				return;
			}
			pgWin->Dismiss();
			pw->SetWindow(NULL);
		}
	}

	// For a new page, find the form associated with the new page
	// and create its window.
	//
	if ((pw = m.NewTopPage()) != NULL)
	{
		if (pw->GetPageHandle() >= IdMajorSections)
		{
			// major tab was selected in section with minor tab pages
			wNoteBookPageList *pl = Pages();
			pl->Find(pw);
			if (pl->Next())		// select the page after the major tab page
				GotoPage(pl->Current());

			return;
		}
		wFormWindow **forms = ((AppWindow *)ParentWindow())->GetDataForms();
		wFormWindow *fp = forms[pw->GetPageHandle()];

		fp->FormUp(this);
		fp->ChangePosition(wPointl(0, 0));
		pw->SetWindow(fp);
		fp->Show();
		(ThisThread->HelpInstance())->SetActiveWindow(fp);
	}
}
Ejemplo n.º 9
0
void GotoPageOf(DmOpenRef db, Int16 page, Int16 category)
{
	g_SelectedCategory = category;
	GotoPage(db, page);
}
Ejemplo n.º 10
0
void RefreshPage(DmOpenRef db)
{
	GotoPage(db, g_CurrentPage);
}
Ejemplo n.º 11
0
void PrevPage(DmOpenRef db)
{
	GotoPage(db, g_CurrentPage - 1);
}
Ejemplo n.º 12
0
void NextPage(DmOpenRef db)
{
	GotoPage(db, g_CurrentPage + 1);
}
Ejemplo n.º 13
0
void FirstPage(DmOpenRef db)
{
	GotoPage(db, 0);
}
Ejemplo n.º 14
0
void PageSelector::GotoPgE(int a)
{
	clearFocus();
	GotoPg(a);
	emit GotoPage(a+1);
}
Ejemplo n.º 15
0
HRESULT MuPDFDoc::UpdatePage(int pageNumber, unsigned char *bitmap, int x, int y, int width, int height, bool invert)
{
	int index = FindPageInCache(pageNumber);
	if (index < 0)
	{
		//TODO: get rid of this side effect!!!
		HRESULT result = GotoPage(pageNumber);
		if (FAILED(result))
		{
			return result;
		}
		return DrawPage(bitmap, x, y, width, height, invert);
	}
	fz_device *dev = nullptr;
	fz_pixmap *pixmap = nullptr;
	fz_var(dev);
	fz_var(pixmap);
	PageCache *pageCache = &m_pages[m_currentPage];
	fz_try(m_context)
	{
		fz_interactive *idoc = fz_interact(m_document);
		// Call fz_update_page now to ensure future calls yield the
		// changes from the current state
		if (idoc)
			fz_update_page(idoc, pageCache->page);

		if (!pageCache->pageList)
		{
			/* Render to list */
			pageCache->pageList = fz_new_display_list(m_context);
			dev = fz_new_list_device(m_context, pageCache->pageList);
			fz_run_page_contents(m_document, pageCache->page, dev, fz_identity, nullptr);
		}
		if (!pageCache->annotList)
		{
			if (dev)
			{
				fz_free_device(dev);
				dev = nullptr;
			}
			pageCache->annotList = fz_new_display_list(m_context);
			dev = fz_new_list_device(m_context, pageCache->annotList);
			for (fz_annot *annot = fz_first_annot(m_document, pageCache->page); annot; annot = fz_next_annot(m_document, annot))
				fz_run_annot(m_document, pageCache->page, annot, dev, fz_identity, nullptr);
		}
		fz_bbox rect;
		rect.x0 = x;
		rect.y0 = y;
		rect.x1 = x + width;
		rect.y1 = y + height;
		pixmap = fz_new_pixmap_with_bbox_and_data(m_context, fz_device_bgr, rect, bitmap);
		//
		fz_matrix ctm = CalcConvertMatrix();
		fz_bbox bbox = fz_round_rect(fz_transform_rect(ctm, pageCache->mediaBox));
		/* Now, adjust ctm so that it would give the correct page width
		 * heights. */
		float xscale = (float)width/(float)(bbox.x1-bbox.x0);
		float yscale = (float)height/(float)(bbox.y1-bbox.y0);
		ctm = fz_concat(ctm, fz_scale(xscale, yscale));
		bbox = fz_round_rect(fz_transform_rect(ctm, pageCache->mediaBox));
		if (dev)
		{
			fz_free_device(dev);
			dev = nullptr;
		}
		fz_annot *annot;
		while (idoc && (annot = fz_poll_changed_annot(idoc, pageCache->page)))
		{
			fz_bbox abox = fz_round_rect(fz_transform_rect(ctm, fz_bound_annot(m_document, annot)));
			abox = fz_intersect_bbox(abox, rect);

			if (!fz_is_empty_bbox(abox))
			{
				fz_clear_pixmap_rect_with_value(m_context, pixmap, 0xff, abox);
				dev = fz_new_draw_device_with_bbox(m_context, pixmap, abox);
				if (pageCache->pageList)
					fz_run_display_list(pageCache->pageList, dev, ctm, abox, nullptr);
				if (pageCache->annotList)
					fz_run_display_list(pageCache->annotList, dev, ctm, abox, nullptr);
				fz_free_device(dev);
				dev = nullptr;
				if (invert)
					fz_invert_pixmap_rect(pixmap, abox);
			}
		}
	}
	fz_always(m_context)
	{
		if (dev)
		{
			fz_free_device(dev);
			dev = nullptr;
		}
		if (pixmap)
		{
			fz_drop_pixmap(m_context, pixmap);
		}
	}
	fz_catch(m_context)
	{
		return E_FAIL;
	}
	return S_OK;
}
Ejemplo n.º 16
0
HRESULT MuPDFDoc::LoadTwoPages(unsigned char *bitmap1, int pageNum1, unsigned char *bitmap2, int pageNum2, int width, int height, Data **data1, Data **data2)
{
	GotoPage(pageNum1);

	fz_device *dev = nullptr;
	fz_pixmap *pixmap = nullptr;
	fz_var(dev);
	fz_var(pixmap);
	PageCache *pageCache = &m_pages[m_currentPage];
	fz_try(m_context)
	{
		m_cts->abort = 0;

		fz_interactive *idoc = fz_interact(m_document);
		// Call fz_update_page now to ensure future calls yield the
		// changes from the current state
		if (idoc)
			fz_update_page(idoc, pageCache->page);

		if (!pageCache->pageList)
		{
			/* Render to list */
			pageCache->pageList = fz_new_display_list(m_context);
			dev = fz_new_list_device(m_context, pageCache->pageList);

			fz_run_page_contents(m_document, pageCache->page, dev, fz_identity, nullptr);
		}
		if (!pageCache->annotList)
		{
			if (dev)
			{
				fz_free_device(dev);
				dev = nullptr;
			}
			pageCache->annotList = fz_new_display_list(m_context);
			dev = fz_new_list_device(m_context, pageCache->annotList);
			for (fz_annot *annot = fz_first_annot(m_document, pageCache->page); annot; annot = fz_next_annot(m_document, annot))
				fz_run_annot(m_document, pageCache->page, annot, dev, fz_identity, nullptr);
		}

		fz_bbox rect;
		rect.x0 = 0;
		rect.y0 = 0;
		rect.x1 = width;
		rect.y1 = height;
		pixmap = fz_new_pixmap_with_bbox_and_data(m_context, fz_device_bgr, rect, bitmap1);
		if (!pageCache->pageList && !pageCache->annotList)
		{
			fz_clear_pixmap_with_value(m_context, pixmap, 0xd0);
			break;
		}
		fz_clear_pixmap_with_value(m_context, pixmap, 0xff);

		*data1 = (Data*)CoTaskMemAlloc(sizeof(Data));

		(*data1)->pagenumber = pageNum1;
		(*data1)->cacheNumber = m_currentPage;
		(*data1)->ctx = m_context;
		(*data1)->list = pageCache->pageList;
		(*data1)->annotList = pageCache->annotList;
		(*data1)->bbox = rect;
		(*data1)->rect = pageCache->mediaBox;
		(*data1)->pix = pixmap;
		(*data1)->width = width;
		(*data1)->height = height;
	}
	fz_catch(m_context)
	{
		return E_FAIL;
	}

	GotoPage(pageNum2);

	fz_device *dev1 = nullptr;
	fz_pixmap *pixmap1 = nullptr;
	fz_var(dev1);
	fz_var(pixmap1);
	PageCache *pageCache1 = &m_pages[m_currentPage];
	fz_try(m_context)
	{
		fz_interactive *idoc = fz_interact(m_document);
		// Call fz_update_page now to ensure future calls yield the
		// changes from the current state
		if (idoc)
			fz_update_page(idoc, pageCache1->page);

		if (!pageCache1->pageList)
		{
			/* Render to list */
			pageCache1->pageList = fz_new_display_list(m_context);
			dev1 = fz_new_list_device(m_context, pageCache1->pageList);

			fz_run_page_contents(m_document, pageCache1->page, dev1, fz_identity, nullptr);
		}
		if (!pageCache1->annotList)
		{
			if (dev1)
			{
				fz_free_device(dev1);
				dev1 = nullptr;
			}
			pageCache1->annotList = fz_new_display_list(m_context);
			dev1 = fz_new_list_device(m_context, pageCache1->annotList);
			for (fz_annot *annot = fz_first_annot(m_document, pageCache1->page); annot; annot = fz_next_annot(m_document, annot))
				fz_run_annot(m_document, pageCache1->page, annot, dev1, fz_identity, nullptr);
		}

		fz_bbox rect;
		rect.x0 = 0;
		rect.y0 = 0;
		rect.x1 = width;
		rect.y1 = height;
		pixmap1 = fz_new_pixmap_with_bbox_and_data(m_context, fz_device_bgr, rect, bitmap2);
		if (!pageCache1->pageList && !pageCache1->annotList)
		{
			fz_clear_pixmap_with_value(m_context, pixmap1, 0xd0);
			break;
		}
		fz_clear_pixmap_with_value(m_context, pixmap1, 0xff);

		*data2 = (Data*)CoTaskMemAlloc(sizeof(Data));

		(*data2)->pagenumber = pageNum2;
		(*data2)->cacheNumber = m_currentPage;
		(*data2)->ctx = m_context;
		(*data2)->list = pageCache1->pageList;
		(*data2)->annotList = pageCache->annotList;
		(*data2)->bbox = rect;
		(*data2)->rect = pageCache1->mediaBox;
		(*data2)->pix = pixmap1;
		(*data2)->width = width;
		(*data2)->height = height;
	}
	fz_catch(m_context)
	{
		return E_FAIL;
	}

	return S_OK;
}