/*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, ¶ms, &num_params); } else if (w == man_globals->manpage_entry ) { /* Put Up Man Page */ params = "ManualPage"; GotoPage(XtParent(w), NULL, ¶ms, &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); }
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; }
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; }
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); }
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, ¶ms, &num_params); }
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); }
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); //} } }
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); } }
void GotoPageOf(DmOpenRef db, Int16 page, Int16 category) { g_SelectedCategory = category; GotoPage(db, page); }
void RefreshPage(DmOpenRef db) { GotoPage(db, g_CurrentPage); }
void PrevPage(DmOpenRef db) { GotoPage(db, g_CurrentPage - 1); }
void NextPage(DmOpenRef db) { GotoPage(db, g_CurrentPage + 1); }
void FirstPage(DmOpenRef db) { GotoPage(db, 0); }
void PageSelector::GotoPgE(int a) { clearFocus(); GotoPg(a); emit GotoPage(a+1); }
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; }
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; }