Esempio n. 1
0
void selector()
{
	char request[255];
	char *queryString = NULL;

	request[0] = '\0';
	queryString = getenv("QUERY_STRING");
	if(queryString != NULL && queryString[0] != '\0')
	{
		if(sscanf(queryString, "page=%s", request) == 1)
			selectPage(request);
		else if(sscanf(queryString, "file=%s", request) == 1)
			selectFile(request);
		else if(sscanf(queryString, "option=delete&file=%s", request) == 1)
			deleteFile(request);
		else if(sscanf(queryString, "auth=%s", request) == 1)
			validAuth(request);
		else
		{
			fprintf(stderr, "ça merdouille sur la query string\n");
			selectPage("");
		}
	}
	else
	{
		fprintf(stderr, "Direction page principale");
		selectPage("");
	}
}
Esempio n. 2
0
void validAuth(char *authType)
{
	if((strcmp(authType, "login") == 0) && (actualSession->login[0] != '\0'))
		selectPage("main");

	if(strcmp(authType, "inscription") == 0)
	{
		if(actualSession->login[0] == '\0')
			selectPage("index");
		else
			selectPage("main");
	}
}
Esempio n. 3
0
bool GuiTabBookCtrl::onMouseDownEditor(const GuiEvent &event, Point2I offset)
{
   bool handled = false;
   Point2I localMouse = globalToLocalCoord( event.mousePoint );

   if( mTabRect.pointInRect( localMouse ) )
   {
      GuiTabPageCtrl *tab = findHitTab( localMouse );
      if( tab != NULL )
      {
         selectPage( tab );
         handled = true;
      }
   }

#ifdef TORQUE_TOOLS
   // This shouldn't be called if it's not design time, but check just incase
   if ( GuiControl::smDesignTime )
   {
      // If we clicked in the editor and our addset is the tab book
      // ctrl, select the child ctrl so we can edit it's properties
      GuiEditCtrl* edit = GuiControl::smEditorHandle;
      if( edit  && ( edit->getAddSet() == this ) && mActivePage != NULL )
         edit->select( mActivePage );
   }
#endif

   // Return whether we handled this or not.
   return handled;

}
Esempio n. 4
0
void ofxTLPageTabs::mouseReleased(ofMouseEventArgs& args){
	for(int i = 0; i < pages.size(); i++){
		if(pages[i].bounds.inside(args.x, args.y)){
			selectPage(i);
		}
	}
}
Esempio n. 5
0
bool GuiTabBookCtrl::onWake()
{
   if (! Parent::onWake())
      return false;

   mHasTexture = mProfile->constructBitmapArray() > 0;
   if( mHasTexture )
   {
      mBitmapBounds = mProfile->mBitmapArrayRects.address();
      mTabHeight = mBitmapBounds[TabSelected].extent.y;
   }

   calculatePageTabs();
   
   if( mIsFirstWake )
   {
      // Awaken all pages, visible or not.  We need to do this so
      // any pages that make use of a language table for their label
      // are correctly initialized.
      for ( U32 i = 0; i < mPages.size(); ++i)
      {
         if ( !mPages[i].Page->isAwake() )
         {
            mPages[i].Page->awaken();
         }
      }

      if( mDefaultPageNum >= 0 && mDefaultPageNum < mPages.size() )
         selectPage( mDefaultPageNum );

      mIsFirstWake = false;
   }

   return true;
}
Esempio n. 6
0
void SettingsDlg::itemSelected() {
  QList<QTreeWidgetItem *> items = ui.settingsTree->selectedItems();
  SettingsPage *sp = 0;
  if(!items.isEmpty()) {
    sp = qobject_cast<SettingsPage *>(items[0]->data(0, SettingsPageRole).value<QObject *>());
  }
  selectPage(sp);
}
Esempio n. 7
0
void ofxTLPageTabs::selectPage(string name){
	for(int i = 0; i < pages.size(); i++){
		if(pages[i].name == name){
			selectPage(i);
		}
	}
	//ofLogError("ofxTLPageTabs -- Selecting page " + name + " not found");

}
Esempio n. 8
0
void CreateMode::mousePressEvent(QMouseEvent *m)
{
	const FPoint mousePointDoc = m_canvas->globalToCanvas(m->globalPos());
	modifiers = m->modifiers();
	
	double Rxp = 0, Ryp = 0;
	m_MouseButtonPressed = true;
	m_view->HaveSelRect = false;
	m_doc->DragP = false;
	m_doc->leaveDrag = false;
	inItemCreation = false;
//	oldClip = 0;
	m->accept();
	m_view->registerMousePress(m->globalPos());
	QRect mpo(m->x()-m_doc->guidesPrefs().grabRadius, m->y()-m_doc->guidesPrefs().grabRadius, m_doc->guidesPrefs().grabRadius*2, m_doc->guidesPrefs().grabRadius*2);
//	mpo.moveBy(qRound(m_doc->minCanvasCoordinate.x() * m_canvas->scale()), qRound(m_doc->minCanvasCoordinate.y() * m_canvas->scale()));
	canvasPressCoord = mousePointDoc;
	createObjectMode = m_doc->appMode;
	createObjectSubMode = m_doc->SubMode;
	createObjectPos  = m_doc->ApplyGridF(canvasPressCoord);
	
	Rxp  = m_doc->ApplyGridF(canvasPressCoord).x();
	canvasPressCoord.setX(qRound(Rxp));
	Ryp  = m_doc->ApplyGridF(canvasPressCoord).y();
	canvasPressCoord.setXY(qRound(Rxp), qRound(Ryp));

	canvasCurrCoord = canvasPressCoord;
	m_doc->ApplyGuides(&Rxp, &Ryp);
	m_doc->ApplyGuides(&Rxp, &Ryp,true);
	createObjectPos.setXY(Rxp, Ryp);

	if (m->button() == Qt::MidButton)
	{
		m_view->MidButt = true;
		if (m->modifiers() & Qt::ControlModifier)
			m_view->DrawNew();
		return;
	}
	
	if (m->button() == Qt::RightButton)
	{
		m_view->requestMode(modeNormal);
		return;
	}
	if (m->button() != Qt::LeftButton)
		return;
	selectPage(m);

	switch (m_doc->appMode)
	{
		case modeDrawTable2:
			m_view->Deselect(false);
			break;
	}

	inItemCreation = true;
}
Esempio n. 9
0
int Notebook::openPage(NotebookPage *np,bool sel) {
	np->tab.index = pages.size();
	pages << np;
	np->page->parent = this;
debug_output("Notebook::openPage(page->create(%s))\n",np->page->getInstance().getName());
	np->page->create(window,0);
	np->page->createAll(0,false);
#ifdef USE_GTK
	GtkWidget *t;
	if((style&NOTEBOOK_CLOSE_BUTTON)) {
		GValue val = { 0 };
		int w,h;
		GtkWidget *bt,*im,*l;

		t = gtk_hbox_new(FALSE,3);
		l = gtk_label_new(np->tab.name);

		bt = gtk_button_new();
		gtk_widget_set_name(bt,"tab-close-button");
		g_value_init(&val,G_TYPE_INT);
		g_value_set_int(&val,GTK_RELIEF_NONE); 
		g_object_set_property(G_OBJECT(bt),"relief",&val);
		g_value_unset(&val);
		im = gtk_image_new_from_stock(GTK_STOCK_CLOSE,GTK_ICON_SIZE_MENU);
		gtk_icon_size_lookup(GTK_ICON_SIZE_MENU,&w,&h);
		gtk_widget_set_size_request(bt,w+2,h+2);
		gtk_container_add(GTK_CONTAINER(bt),im);
		g_signal_connect(G_OBJECT(bt),"clicked",G_CALLBACK(close_tab_callback),(gpointer)&np->tab);
		gtk_box_pack_start(GTK_BOX(t),l,TRUE,TRUE,0);
		gtk_box_pack_start(GTK_BOX(t),bt,FALSE,FALSE,0);

		np->tab.button = bt;
		np->tab.label = l;

		gtk_widget_show_all(t);
	} else {
		t = gtk_label_new(np->tab.name);
	}
	gtk_widget_show_all(t);
	np->page->show();
	gtk_notebook_append_page(GTK_NOTEBOOK(component),(GtkWidget *)np->page->getComponent(),t);
#endif
#ifdef USE_WIN32
	np->status = 1;
//	SetParent((HWND)page->getComponent(),(HWND)parent->getComponent());
debug_output("Notebook::openPage(%s)\n",np->tab.name);
	if(type==WIDGET_NOTEBOOK) {
		TCITEM ti = {TCIF_TEXT};
		ti.pszText = tstrdup(np->tab.name);
		TabCtrl_InsertItem((HWND)component,np->tab.index,&ti);
		tfree(ti.pszText);
	}
#endif
	if(sel) selectPage(np->tab.index);
	return selected;
}
Esempio n. 10
0
void ofxTLPageTabs::addPage(string name){
	
	Tab newPage;
	newPage.name = name;
	pages.push_back(newPage);
	if(pages.size() == 1){
		selectPage(0);
	}
	drawRectChanged();
}
Esempio n. 11
0
void deleteFile(char *filename)
{
	char path[1024];

	sprintf(path, "/ESIEACloud/%s/%s", actualSession->login, filename);

	if(remove(path) == -1)
		fprintf(stderr, "Error: %s\n", strerror(errno));

	selectPage("main");
}
Esempio n. 12
0
void GuiTabBookCtrl::selectPage( S32 index )
{
   if( mPages.empty() || index < 0 )
      return;

   if( mPages.size() <= index )
      index = mPages.size() - 1;

   // Select the page
   selectPage( mPages[ index ].Page );
}
Esempio n. 13
0
bool GuiTabBookCtrl::reOrder(SimObject* obj, SimObject* target)
{
   if ( !Parent::reOrder(obj, target) )
      return false;

   // Store the Selected Page.
   GuiTabPageCtrl *selectedPage = NULL;
   if ( mSelectedPageNum != -1 )
      selectedPage = mPages[mSelectedPageNum].Page;

   // Determine the Target Page Index.
   S32 targetIndex = -1;
   for( S32 i = 0; i < mPages.size(); i++ )
   {
      const TabHeaderInfo &info = mPages[i];
      if ( info.Page == target )
      {
         targetIndex = i;
         break;
      }
   }

   if ( targetIndex == -1 )
   {
       return false;
   }

   for( S32 i = 0; i < mPages.size(); i++ )
   {
      const TabHeaderInfo &info = mPages[i];
      if ( info.Page == obj )
      {
         // Store Info.
         TabHeaderInfo objPage = info;

         // Remove.
         mPages.erase( i );
         // Insert.
         mPages.insert( targetIndex, objPage );

         break;
      }
   }

   // Update Tabs.
   calculatePageTabs();

   // Reselect Page.
   selectPage( selectedPage );

   return true;
}
Esempio n. 14
0
void GuiTabBookCtrl::selectPrevPage()
{
   if( mPages.empty() )
      return;

   if( mActivePage == NULL )
      mActivePage = mPages[0].Page;

   S32 nI = 0;
   for( ; nI < mPages.size(); nI++ )
   {
      GuiTabPageCtrl *tab = mPages[ nI ].Page;
      if( tab == mActivePage )
      {
         if( nI == 0 )
            selectPage( mPages.size() - 1 );
         else
            selectPage( nI - 1 );
         return;
      }
   }
}
Esempio n. 15
0
void OutlinePalette::slotSelect(QTreeWidgetItem* ite, int col)
{
	if (!m_MainWindow || m_MainWindow->scriptIsRunning())
		return;
	selectionTriggered = true;
	OutlineTreeItem *item = (OutlineTreeItem*)ite;
	uint pg = 0;
	PageItem *pgItem = NULL;
	switch (item->type)
	{
		case 0:
			emit selectMasterPage(item->PageObject->pageName());
			break;
		case 1:
			if (!currDoc->masterPageMode())
				emit selectMasterPage(item->PageItemObject->OnMasterPage);
			if (item->PageItemObject->Groups.count() == 0)
				emit selectElement(-1, item->PageItemObject->ItemNr, false);
			else
			{
				if (item->PageItemObject->isGroupControl)
					emit selectElement(-1, item->PageItemObject->ItemNr, false);
				else
					emit selectElement(-1, item->PageItemObject->ItemNr, true);
			}
			break;
		case 2:
			pg = item->PageObject->pageNr();
			m_MainWindow->closeActiveWindowMasterPageEditor();
			emit selectPage(pg);
			break;
		case 3:
		case 4:
			pgItem = item->PageItemObject;
			m_MainWindow->closeActiveWindowMasterPageEditor();
			if (pgItem->Groups.count() == 0)
				emit selectElement(pgItem->OwnPage, pgItem->ItemNr, false);
			else
			{
				if (pgItem->isGroupControl)
					emit selectElement(pgItem->OwnPage, pgItem->ItemNr, false);
				else
					emit selectElement(pgItem->OwnPage, pgItem->ItemNr, true);
			}
			break;
		default:
			break;
	}
	selectionTriggered = false;
}
Esempio n. 16
0
PreferencesDialog::PreferencesDialog(QString activePage, QWidget* parent):
    QDialog(parent) {
    ui.setupUi(this);
    setAttribute(Qt::WA_DeleteOnClose);
    warningCounter_ = 0;
    ui.warningLabel->hide();

    // resize the list widget according to the width of its content.
    ui.listWidget->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Expanding);
    ui.listWidget->setMaximumWidth(ui.listWidget->sizeHintForColumn(0) + ui.listWidget->frameWidth() * 2 + 4);

    initFromSettings();

    selectPage(activePage);
    adjustSize();
}
Esempio n. 17
0
void CheckDocument::slotSelect(QTreeWidgetItem* ite)
{
	if (itemMap.contains(ite))
	{
		// #10537 Check item has not been destroyed before requesting its selection
		if (itemMap[ite].isNull())
			return;
		ScCore->primaryMainWindow()->closeActiveWindowMasterPageEditor();
		m_Doc->setActiveLayer(itemMap[ite]->LayerNr);
		ScCore->primaryMainWindow()->changeLayer(m_Doc->activeLayer());
		emit selectElement(itemMap[ite]->OwnPage, itemMap[ite]->ItemNr);
		return;
	}
	if (pageMap.contains(ite))
	{
		// #10537 Get page index from pointer in case user has deleted a page
		// after preflight has been run
		int pageIndex = m_Doc->DocPages.indexOf(pageMap[ite]);
		if (pageIndex < 0)
			return;
		ScCore->primaryMainWindow()->closeActiveWindowMasterPageEditor();
		emit selectPage(pageIndex);
		return;
	}
	if (masterPageMap.contains(ite))
	{
		// #10537 Get page index from pointer in case user has deleted a page
		// after preflight has been run
		int pageIndex = m_Doc->MasterPages.indexOf(masterPageMap[ite]);
		if (pageIndex < 0)
			return;
		emit selectMasterPage(masterPageMap[ite]->pageName());
		return;
	}
	if (masterPageItemMap.contains(ite))
	{
		// #10537 Check item has not been destroyed before requesting its selection
		if (masterPageItemMap[ite].isNull())
			return;
		if (!m_Doc->masterPageMode())
			emit selectMasterPage(masterPageItemMap[ite]->OnMasterPage);
		m_Doc->setActiveLayer(masterPageItemMap[ite]->LayerNr);
		ScCore->primaryMainWindow()->changeLayer(m_Doc->activeLayer());
		emit selectElement(-1, masterPageItemMap[ite]->ItemNr);
		return;
	}
}
Esempio n. 18
0
void GuiTabBookCtrl::onMouseDown(const GuiEvent &event)
{
   mDraggingTab = false;
   mDraggingTabRect = false;
   Point2I localMouse = globalToLocalCoord( event.mousePoint );
   if( mTabRect.pointInRect( localMouse ) )
   {
      GuiTabPageCtrl *tab = findHitTab( localMouse );
      if( tab != NULL )
      {
         selectPage( tab );
         mDraggingTab = mAllowReorder;
      }
      else
      {
         mDraggingTabRect = true;
      }
   }
}
Esempio n. 19
0
void GuiTabBookCtrl::onChildAdded( GuiControl *child )
{
   GuiTabPageCtrl *page = dynamic_cast<GuiTabPageCtrl*>(child);
   if( !page )
   {
      Con::warnf("GuiTabBookCtrl::onChildAdded - attempting to add NON GuiTabPageCtrl as child page");
      SimObject *simObj = reinterpret_cast<SimObject*>(child);
      removeObject( simObj );
      if( mActivePage )
      {
         mActivePage->addObject( simObj );
      }
      else
      {
         Con::warnf("GuiTabBookCtrl::onChildAdded - unable to find active page to reassign ownership of new child control to, placing on parent");
         GuiControl *rent = getParent();
         if( rent )
            rent->addObject( simObj );
      }
      return;
   }

   TabHeaderInfo newPage;

   newPage.Page      = page;
   newPage.TabRow    = -1;
   newPage.TabColumn = -1;

   mPages.push_back( newPage );

   // Calculate Page Information
   calculatePageTabs();

   if( page->getFitBook() )
      fitPage( page );

   // Select this Page
   selectPage( page );
}
Esempio n. 20
0
void Notebook::closePage(int n) {
	if(n<0 || n>=(int)pages.size()) n = selected;
	if(pages.size()>0) {
debug_output("Notebook::closePage(n: %d, pages: %d)\n",n,(int)pages.size());
		int i;
		NotebookPage *np = (NotebookPage *)pages[n];
		if(n==selected) selectPage(n==0? n+1 : n-1);
#ifdef USE_GTK
		gtk_notebook_remove_page(GTK_NOTEBOOK(component),n);
#endif
#ifdef USE_WIN32
		if(type==WIDGET_NOTEBOOK) TabCtrl_DeleteItem((HWND)component,n);
#endif
		pages.removeAt(n);
		delete np;

		for(i=pages.size()-1; i>=n; --i) {
			np = (NotebookPage *)pages[i];
debug_output("Notebook::closePage(index=%d -> i=%d)\n",np->tab.index,i);
			np->tab.index = i;
		}
	}
}
Esempio n. 21
0
void GuiTabBookCtrl::onChildRemoved( GuiControl* child )
{
   for (S32 i = 0; i < mPages.size(); i++ )
   {
      GuiTabPageCtrl* tab = mPages[i].Page;
      if( tab == child )
      {
         mPages.erase( i );
         break;
      }
   }

   // Calculate Page Information
   calculatePageTabs();

   // Active Index.
   mSelectedPageNum = getMin( mSelectedPageNum, mPages.size() - 1 );

   if ( mSelectedPageNum != -1 )
   {
       // Select Page.
       selectPage( mSelectedPageNum );
   }
}
Esempio n. 22
0
INT_PTR TffdshowPageBase::msgProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
    switch (uMsg) {
        case WM_DESTROY: {
            for (ThtiPages::const_iterator htiPage = htiPages.begin(); htiPage != htiPages.end(); htiPage++) {
                delete *htiPage;
            }
            htiPages.clear();
            page = NULL;
            if (arrowsFont) {
                DeleteObject(arrowsFont);
            }
            arrowsFont = NULL;
            if (hil) {
                ImageList_Destroy(hil);
            }
            hil = NULL;
            for (int i = 0; i < countof(bmp1); i++) {
                DeleteObject(bmp1[i]);
                DeleteObject(bmp2[i]);
            }
            break;
        }
        case WM_FFONCHANGE:
            DPRINTF(_l("onChangeParam"));
            if (wParam == IDFF_alwaysOnTop && IsWindow(dlg)) {
                SetWindowPos(dlg, lParam ? HWND_TOPMOST : HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
            }
            if (wParam != 0) {
                setChange();
            }
            return TRUE;
        case WM_FFONFRAME: {
            MSG msg;
            if (PeekMessage(&msg, m_hwnd, WM_FFONFRAME, WM_FFONFRAME, PM_NOREMOVE)) {
                return TRUE;    // drop msg when next WM_FFONFRAME is already in the message queue.
            }
            for (ThtiPages::const_iterator hp = htiPages.begin(); hp != htiPages.end(); hp++)
                for (TconfPages::const_iterator i = (*hp)->begin(); i != (*hp)->end(); i++)
                    if ((*i)->m_hwnd) {
                        (*i)->onFrame();
                    }
            return TRUE;
        }
        case WM_COMMAND:
            switch (LOWORD(wParam)) {
                case IDC_BT_HELP:
                    if (HIWORD(wParam) == BN_CLICKED) {
                        onHelp();
                        return TRUE;
                    }
                    break;
            }
            break;
        case WM_CONTEXTMENU:
            if (translateTV()) {
                return TRUE;
            }
            break;
        case WM_NOTIFY: {
            NMHDR *nmhdr = LPNMHDR(lParam);
            if (nmhdr->hwndFrom == htv && nmhdr->idFrom == IDC_TV_TREE)
                switch (nmhdr->code) {
                    case TVN_SELCHANGED: {
                        NMTREEVIEW *nmtv = LPNMTREEVIEW(lParam);
                        if (nmtv->itemNew.hItem) {
                            selectPage(hti2page(nmtv->itemNew.hItem));
                            return TRUE;
                        }
                        break;
                    }
                    case TVN_ITEMEXPANDING: {
                        NMTREEVIEW *nmtv = LPNMTREEVIEW(lParam);
                        if (nmtv->action == TVE_COLLAPSE) {
                            setDlgResult(TRUE);
                        }
                        return TRUE;
                    }
                }
            break;
        }
    }
    return Twindow::msgProc(uMsg, wParam, lParam);
}
Esempio n. 23
0
void Notebook::tabEvent() {
	int i = TabCtrl_GetCurSel((HWND)component);
	selectPage(i);
}
Esempio n. 24
0
void TffdshowPageEnc::quick2dlg(bool redraw)
{
    static const int idQuickAll[] = {IDC_LBL_ENCODER, IDC_CBX_ENCODER, IDC_LBL_FOURCC, IDC_CBX_FOURCC, IDC_LBL_MODES, IDC_CBX_MODES, IDC_LBL_QUICK, IDC_TBR_QUICK, IDC_ED_QUICK, 0};
    if (isAbout) {
        enable(false, idQuickAll);
        return;
    }
    int mode = cfgGet(IDFF_enc_mode);
    int ii = cbxFindItemData(IDC_CBX_MODES, mode);
    if (ii == CB_ERR && cbxGetItemCount(IDC_CBX_MODES) > 0) {
        ii = 0;
        mode = (int)cbxGetItemData(IDC_CBX_MODES, 0);
        cfgSet(IDFF_enc_mode, mode);
    };
    cbxSetCurSel(IDC_CBX_MODES, ii);
    static const int idQuick[] = {IDC_LBL_QUICK, IDC_ED_QUICK, IDC_TBR_QUICK, 0};
    if (ii != CB_ERR) {
        if (redraw || oldmode != mode) {
            oldmode = mode;
            const char_t *text = _l("");
            valMin = 0;
            valMax = 0;
            valIdff = 0;
            switch (oldmode) {
                case ENC_MODE::CBR:
                    text = _l("Bitrate (kbps)");
                    valIdff = IDFF_enc_bitrate1000;
                    valMin = 1;
                    valMax = 10000;
                    break;
                case ENC_MODE::VBR_QUAL:
                    text = _l("Quality");
                    valIdff = IDFF_enc_qual;
                    valMin = 0;
                    valMax = 100;
                    break;
                case ENC_MODE::VBR_QUANT:
                    text = _l("Quantizer");
                    valIdff = IDFF_enc_quant;
                    valMin = qmin;
                    valMax = qmax;
                    break;
            }
            setDlgItemText(m_hwnd, IDC_LBL_QUICK, _(IDC_LBL_QUICK, text));
            tbrSetRange(IDC_TBR_QUICK, valMin, valMax, (valMax - valMin) / 10);
        }
        if (valIdff) {
            enable(1, idQuick);
            int val = cfgGet(valIdff);
            if (!isIn(val, valMin, valMax)) {
                val = limit(val, valMin, valMax);
                cfgSet(valIdff, val);
            }
            tbrSet(IDC_TBR_QUICK, val);
            SetDlgItemInt(m_hwnd, IDC_ED_QUICK, val, FALSE);
        } else {
            enable(0, idQuick);
            tbrSet(IDC_TBR_QUICK, 0);
            setDlgItemText(m_hwnd, IDC_ED_QUICK, _l(""));
        }
    } else {
        enable(0, idQuick);
    }

    if (page && redraw) {
        selectPage(page);
    }
    if (isGraph) {
        enable(false, idQuickAll);
    }
}
Esempio n. 25
0
INT_PTR TffdshowPageEnc::msgProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
    switch (uMsg) {
        case WM_HSCROLL:
            if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_TBR_QUICK)) {
                if (valIdff) {
                    cfgSet(valIdff, tbrGet(IDC_TBR_QUICK));
                    quick2dlg(false);
                }
                return TRUE;
            }
            break;
        case WM_FFONCHANGE:
            if (wParam == IDFF_lang && ve) {
                ve->commonOptionChanged(IID_IffdshowEnc, IDFF_lang);
            }
            break;
        case WM_COMMAND:
            switch (LOWORD(wParam)) {
                case IDC_CBX_ENCODER:
                    if (HIWORD(wParam) == CBN_SELCHANGE) {
                        cfgSet(IDFF_enc_codecId, ((Tencoder*)cbxGetCurItemData(IDC_CBX_ENCODER))->id);
                        codec2dlg();
                        HTREEITEM hti = TreeView_GetSelection(htv);
                        if (hti) {
                            selectPage(hti2page(hti));
                        }
                        return TRUE;
                    }
                    break;
                case IDC_CBX_FOURCC:
                    if (HIWORD(wParam) == CBN_SELCHANGE) {
                        cfgSet(IDFF_enc_fourcc, (int)cbxGetCurItemData(IDC_CBX_FOURCC));
                        fourcc2dlg();
                        return TRUE;
                    }
                    break;
                case IDC_CBX_MODES:
                    if (HIWORD(wParam) == CBN_SELCHANGE) {
                        cfgSet(IDFF_enc_mode, (int)cbxGetCurItemData(IDC_CBX_MODES));
                        quick2dlg(true);
                        return TRUE;
                    }
                    break;
                case IDC_ED_QUICK:
                    if (HIWORD(wParam) == EN_CHANGE && !isSetWindowText) {
                        HWND hed = GetDlgItem(m_hwnd, LOWORD(wParam));
                        if (hed != GetFocus()) {
                            return FALSE;
                        }
                        repaint(hed);
                        switch (LOWORD(wParam)) {
                            case IDC_ED_QUICK:
                                eval(hed, valMin, valMax, valIdff);
                                tbrSet(IDC_TBR_QUICK, cfgGet(valIdff));
                                break;
                        }
                        return TRUE;
                    }
                    break;
                case IDC_BT_PRESET:
                    if (HIWORD(wParam) == BN_CLICKED) {
                        showPresets();
                        return TRUE;
                    }
                    break;
                case IDC_CHB_NOT_REGISTRY:
                    cfgSet(IDFF_notreg, getCheck(IDC_CHB_NOT_REGISTRY));
                    return TRUE;
            }
            break;
        case WM_CTLCOLOREDIT: {
            HWND hwnd = HWND(lParam);
            bool ok;
            switch (getId(hwnd)) {
                case IDC_ED_QUICK:
                    ok = eval(hwnd, valMin, valMax);
                    break;
                default:
                    return FALSE;
            }
            if (!ok) {
                HDC dc = HDC(wParam);
                SetBkColor(dc, RGB(255, 0, 0));
                return INT_PTR(getRed());
            } else {
                return FALSE;
            }
        }
        case WM_DRAWITEM:
            if (wParam == IDC_CBX_ENCODER) {
                DRAWITEMSTRUCT *dis = (DRAWITEMSTRUCT*)lParam;
                COLORREF crOldTextColor = GetTextColor(dis->hDC);
                COLORREF crOldBkColor = GetBkColor(dis->hDC);
                HBRUSH br;
                if ((dis->itemAction | ODA_SELECT) && (dis->itemState & ODS_SELECTED)) {
                    SetTextColor(dis->hDC, GetSysColor(COLOR_HIGHLIGHTTEXT));
                    SetBkColor(dis->hDC, GetSysColor(COLOR_HIGHLIGHT));
                    br = CreateSolidBrush(GetSysColor(COLOR_HIGHLIGHT));
                } else {
                    br = CreateSolidBrush(crOldBkColor);
                }
                FillRect(dis->hDC, &dis->rcItem, br);
                if (int(dis->itemData) != CB_ERR) {
                    RECT r = dis->rcItem;
                    r.left += 2;
                    Tencoder *enc = (Tencoder*)dis->itemData;
                    DrawText(dis->hDC, enc->name, (int)strlen(enc->name), &r, DT_LEFT | DT_SINGLELINE | DT_VCENTER);
                    setDlgResult(TRUE);
                    r.left += 180;
                    FillRect(dis->hDC, &r, br);
                    MoveToEx(dis->hDC, r.left, r.top, NULL);
                    LineTo(dis->hDC, r.left, r.bottom);
                    SetTextColor(dis->hDC, GetSysColor(COLOR_GRAYTEXT));
                    r.left += 4;
                    char_t text[70];
                    SendMessage(hcbxE, CB_GETLBTEXT, dis->itemID, LPARAM(text));
                    DrawText(dis->hDC, text, (int)strlen(text), &r, DT_LEFT | DT_SINGLELINE | DT_VCENTER);
                }
                SetTextColor(dis->hDC, crOldTextColor);
                SetBkColor(dis->hDC, crOldBkColor);
                DeleteObject(br);
                return TRUE;
            }
            break;
    }
    return TffdshowPageBase::msgProc(uMsg, wParam, lParam);
}
Esempio n. 26
0
void TffdshowPageEnc::showPresets(void)
{
    if (!presets) {
        presets = new TpresetsEnc;
        presets->init();
    }
    enum {
        IDI_MNI_LOAD_ALL = 1000,
        IDI_MNI_LOAD_PAGE = 2000,
        IDI_MNI_SAVE_ALL = 3000,
        IDI_MNI_SAVE_PAGE = 4000,
        IDI_MNI_MANAGE   = 5000
    };
    HMENU hm = CreatePopupMenu();
    int ord = 0;
    insertSubmenu(hm, ord, _(IDC_BT_PRESET, _l("Load all")), createPresetsSubmenu(IDI_MNI_LOAD_ALL, false));
    insertSubmenu(hm, ord, _(IDC_BT_PRESET, _l("Load page")), createPresetsSubmenu(IDI_MNI_LOAD_PAGE, false));
    enable(hm, 1, pageIs && page->propsIDs ? true : false);
    insertSeparator(hm, ord);
    HMENU hmPresets = createPresetsSubmenu(IDI_MNI_SAVE_ALL, true);
    enable(hmPresets, 0, false);
    insertSubmenu(hm, ord, _(IDC_BT_PRESET, _l("Save all")), hmPresets);
    hmPresets = createPresetsSubmenu(IDI_MNI_SAVE_PAGE, true);
    enable(hmPresets, 0, false);
    insertSubmenu(hm, ord, _(IDC_BT_PRESET, _l("Save page")), hmPresets);
    enable(hm, 4, pageIs && page->propsIDs ? true : false);
    insertSeparator(hm, ord);
    insertMenuItem(hm, ord, IDI_MNI_MANAGE, _(IDC_BT_PRESET, _l("Manage presets...")), false);
    enable(hm, 6, presets->size() >= 2);
    RECT r;
    GetWindowRect(GetDlgItem(m_hwnd, IDC_BT_PRESET), &r);
    POINT p = {0, r.bottom - r.top};
    ClientToScreen(GetDlgItem(m_hwnd, IDC_BT_PRESET), &p);
    int cmd = TrackPopupMenu(hm, TPM_LEFTALIGN | TPM_TOPALIGN | TPM_RETURNCMD, p.x, p.y, 0, m_hwnd, NULL);
    PostMessage(m_hwnd, WM_NULL, 0, 0);
    if (cmd != 0)
        if (cmd == 5000) {
            TpresetsEncDlg pdlg(m_hwnd, deci, *presets);
        } else {
            int presetnum = cmd % 1000;
            TpresetEnc *preset = NULL;
            if (presetnum == 999) {
                char_t presetName[MAX_PATH] = _l("");
                if (inputString(_(IDC_BT_PRESET, _l("Save as new preset")), _(IDC_BT_PRESET, _l("Preset name")), presetName, MAX_PATH) && presetName[0]) {
                    preset = presets->getPreset(presetName);
                    if (!preset) {
                        preset = presets->createPreset(presetName);
                    }
                }
            } else {
                preset = &(*presets)[presetnum];
            }
            if (preset)
                switch (cmd = cmd / 1000) {
                    case 1:
                    case 2:
                        preset->apply(&localCfg, cmd == 1 ? &*allPropsIDs.begin() : page->propsIDs);
                        setChange();
                        if (cmd == 1) {
                            codec2dlg();
                        }
                        selectPage(page);
                        break;
                    case 3:
                    case 4:
                        preset->store(&localCfg, cmd == 3 ? &*allPropsIDs.begin() : page->propsIDs);
                        selectPage(page);
                        presets->save();
                        break;
                }
        }
    DestroyMenu(hm);
}
Esempio n. 27
0
void BezierMode::mousePressEvent(QMouseEvent *m)
{
	const FPoint mousePointDoc = m_canvas->globalToCanvas(m->globalPos());
	
	int z;
	double Rxp = 0;
	double Ryp = 0;
	double Rxpd = 0;
	double Rypd = 0;
	PageItem *currItem;
//	m_canvas->PaintSizeRect(QRect());
	FPoint npf, npf2;
	QRect tx;
	QTransform pm;
	m_MouseButtonPressed = true;
	m_view->HaveSelRect = false;
	m_doc->DragP = false;
	m_doc->leaveDrag = false;
	MoveGX = MoveGY = false;
//	inItemCreation = false;
//	oldClip = 0;
	m->accept();
	m_view->registerMousePress(m->globalPos());
	Mxp = mousePointDoc.x(); //qRound(m->x()/m_canvas->scale() + 0*m_doc->minCanvasCoordinate.x());
	Myp = mousePointDoc.y(); //qRound(m->y()/m_canvas->scale() + 0*m_doc->minCanvasCoordinate.y());
	QRect mpo(m->x()-m_doc->guidesPrefs().grabRadius, m->y()-m_doc->guidesPrefs().grabRadius, m_doc->guidesPrefs().grabRadius*2, m_doc->guidesPrefs().grabRadius*2);
//	mpo.moveBy(qRound(m_doc->minCanvasCoordinate.x() * m_canvas->scale()), qRound(m_doc->minCanvasCoordinate.y() * m_canvas->scale()));
	Rxp = m_doc->ApplyGridF(FPoint(Mxp, Myp)).x();
	Rxpd = Mxp - Rxp;
	Mxp = qRound(Rxp);
	Ryp = m_doc->ApplyGridF(FPoint(Mxp, Myp)).y();
	Rypd = Myp - Ryp;
	Myp = qRound(Ryp);
	SeRx = Mxp;
	SeRy = Myp;
	if (m->button() == Qt::MidButton)
	{
		m_view->MidButt = true;
		if (m->modifiers() & Qt::ControlModifier)
			m_view->DrawNew();
		return;
	}
	if (m->button() == Qt::RightButton)
	{
		m_view->stopGesture();
		return;
	}
	if (FirstPoly)
	{
		selectPage(m);
		undoManager->setUndoEnabled(false);
		z = m_doc->itemAdd(PageItem::PolyLine, PageItem::Unspecified, Rxp, Ryp, 1+Rxpd, 1+Rypd, m_doc->itemToolPrefs().lineWidth, CommonStrings::None, m_doc->itemToolPrefs().lineColor);
		currItem = m_doc->Items->at(z);
		m_doc->m_Selection->clear();
		m_doc->m_Selection->addItem(currItem);
		m_view->setCursor(QCursor(Qt::CrossCursor));
		m_canvas->setRenderModeFillBuffer();
		inItemCreation = true;
	}
	currItem = m_doc->m_Selection->itemAt(0);
	//			pm.translate(-m_doc->minCanvasCoordinate.x()*m_canvas->scale(), -m_doc->minCanvasCoordinate.y()*m_canvas->scale());
	pm = currItem->getTransform();
	npf = m_doc->ApplyGridF(mousePointDoc).transformPoint(pm, true);
	currItem->PoLine.addPoint(npf);
	npf2 = getMinClipF(&currItem->PoLine);
	if (npf2.x() < 0)
	{
		currItem->PoLine.translate(-npf2.x(), 0);
		m_doc->MoveItem(npf2.x(), 0, currItem);
	}
	if (npf2.y() < 0)
	{
		currItem->PoLine.translate(0, -npf2.y());
		m_doc->MoveItem(0, npf2.y(), currItem);
	}
	m_doc->SizeItem(currItem->PoLine.WidthHeight().x(), currItem->PoLine.WidthHeight().y(), currItem, false, false, false);
	currItem->setPolyClip(qRound(qMax(currItem->lineWidth() / 2, 1.0)));
	m_canvas->newRedrawPolygon();
	undoManager->setUndoEnabled(false);
}