int menu(t_game *game) { int key; int i; i = 1; key = -1; while (key != ESCAPE && key != ENTER) { key = getch(); if (key == KEY_F(1)) { show_menubar(game); while ((key = getch()) && (key == KEY_UP || key == KEY_DOWN)) i = scroller(game, i); if (key != ENTER) i = 0; } if (key == ESCAPE) i = 0; } del_menu(game); //touchwin(stdscr); refresh(); return (i); }
void QtViewportInteractionEngine::reset() { ASSERT(!m_suspendCount); m_hadUserInteraction = false; scroller()->stop(); m_scaleAnimation->stop(); }
static INT_PTR CALLBACK memorybrowser_proc( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ) { switch( uMsg ) { case WM_INITDIALOG: memorybrowser_init( hwndDlg ); return TRUE; case WM_COMMAND: if( LOWORD( wParam ) == IDCLOSE ) { EndDialog( hwndDlg, 0 ); return 0; } break; case WM_CLOSE: { EndDialog( hwndDlg, 0 ); return 0; } case WM_VSCROLL: if( ( HWND ) lParam != NULL ) { if( ! scroller( hwndDlg, wParam ) ) return 0; } break; case WM_MOUSEWHEEL: /* FIXME: when one of the lines in the listview is selected, mouse wheel doesn't work */ scroller( hwndDlg, MAKEWPARAM( ( ( short ) HIWORD( wParam ) < 0 ) ? SB_LINEDOWN : SB_LINEUP, 0 ) ); return 0; } return FALSE; }
QtViewportInteractionEngine::QtViewportInteractionEngine(const QQuickWebView* viewport, QQuickWebPage* content) : m_viewport(viewport) , m_content(content) , m_suspendCount(0) , m_scaleAnimation(new ScaleAnimation(this)) , m_pinchStartScale(-1) { reset(); QScrollerProperties properties = scroller()->scrollerProperties(); // The QtPanGestureRecognizer is responsible for recognizing the gesture // thus we need to disable the drag start distance. properties.setScrollMetric(QScrollerProperties::DragStartDistance, 0.0); // Set some default QScroller constrains to mimic the physics engine of the N9 browser. properties.setScrollMetric(QScrollerProperties::AxisLockThreshold, 0.66); properties.setScrollMetric(QScrollerProperties::ScrollingCurve, QEasingCurve(QEasingCurve::OutExpo)); properties.setScrollMetric(QScrollerProperties::DecelerationFactor, 0.05); properties.setScrollMetric(QScrollerProperties::MaximumVelocity, 0.635); properties.setScrollMetric(QScrollerProperties::OvershootDragResistanceFactor, 0.33); properties.setScrollMetric(QScrollerProperties::OvershootScrollDistanceFactor, 0.33); scroller()->setScrollerProperties(properties); connect(m_content, SIGNAL(widthChanged()), this, SLOT(itemSizeChanged()), Qt::DirectConnection); connect(m_content, SIGNAL(heightChanged()), this, SLOT(itemSizeChanged()), Qt::DirectConnection); connect(m_scaleAnimation, SIGNAL(valueChanged(QVariant)), SLOT(scaleAnimationValueChanged(QVariant)), Qt::DirectConnection); connect(m_scaleAnimation, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State)), SLOT(scaleAnimationStateChanged(QAbstractAnimation::State, QAbstractAnimation::State)), Qt::DirectConnection); connect(scroller(), SIGNAL(stateChanged(QScroller::State)), SLOT(scrollStateChanged(QScroller::State)), Qt::DirectConnection); }
int VideoEnhancements() { int menu = 0; int quit = 0; short j; int redraw = 1; int i; unsigned char r,g,b; line = 0; scrollerx = 320 - MARGIN; while ( quit == 0) { if ( redraw ) DrawMenu(&vemenu[0], vecount, menu ); redraw = 0; j = PAD_ButtonsDown(0); if ( j & PAD_BUTTON_DOWN ) { menu++; redraw = 1; } if ( j & PAD_BUTTON_UP ) { menu--; redraw = 1; } if ( j & PAD_BUTTON_A ) { redraw = 1; switch ( menu ) { case 0: /*** Scaler ***/ screenscaler++; screenscaler = ( screenscaler > 2 ) ? 0 : screenscaler; switch ( screenscaler ) { case 2: strcpy(vemenu[0], "Screen Scaler - GX"); break; case 1: strcpy(vemenu[0], "Screen Scaler - Cheesy"); break; case 0: strcpy(vemenu[0], "Screen Scaler - 2x"); break; } break; case 1: /*** Palette ***/ currpal++; if ( currpal > MAXPAL ) currpal = 0; if ( currpal == 0 ) { strcpy(vemenu[1],"Palette - Default"); /*** Do palette reset ***/ FCEU_ResetPalette(); } else { strcpy(vemenu[1],"Palette - "); strcat(vemenu[1], palettes[currpal-1].name); /*** Now setup this palette ***/ for ( i = 0; i < 64; i++ ) { r = palettes[currpal-1].data[i] >> 16; g = ( palettes[currpal-1].data[i] & 0xff00 ) >> 8; b = ( palettes[currpal-1].data[i] & 0xff ); FCEUD_SetPalette( i, r, g, b); FCEUD_SetPalette( i+64, r, g, b); FCEUD_SetPalette( i+128, r, g, b); FCEUD_SetPalette( i+192, r, g, b); } } break; case 2: slimit ^=1; if ( slimit ) strcpy(vemenu[2], "8 Sprite Limit - ON "); else strcpy(vemenu[2], "8 Sprite Limit - OFF"); FCEUI_DisableSpriteLimitation( slimit ); break; case 3: timing ^= 1; if ( timing ) strcpy(vemenu[3], "Timing - PAL "); else strcpy(vemenu[3], "Timing - NTSC"); FCEUI_SetVidSystem( timing ); break; case 4: quit = 1; break; default: break; } } if ( j & PAD_BUTTON_B ) quit = 1; if ( menu < 0 ) menu = vecount - 1; if ( menu == vecount ) menu = 0; scroller(SCROLLY, &vestext[0], 2); VIDEO_WaitVSync(); }
int StateManager() { int menu = 0; int quit = 0; short j; int redraw = 1; //int i; line = 0; scrollerx = 320 - MARGIN; while ( quit == 0 ) { if ( redraw ){ sprintf(mcmenu[0], (slot == 0) ? "Use: SLOT A" : "Use: SLOT B"); sprintf(mcmenu[1], (device == 0) ? "Device: MCARD" : "Device: SDCARD"); DrawMenu(&mcmenu[0], mccount, menu); } redraw = 0; j = PAD_ButtonsDown(0); if ( j & PAD_BUTTON_DOWN ) { menu++; redraw = 1; } if ( j & PAD_BUTTON_UP ) { menu--; redraw = 1; } if ( j & PAD_BUTTON_A ) { redraw = 1; switch( menu ) { case 0 : slot ^= 1; break; case 1 : device ^= 1; break; case 2 : ManageState(0, slot, device); //Save break; case 3 : ManageState(1, slot, device); //Load break; case 4 : quit = 1;//return 0 ; break; default: break; } } if ( j & PAD_BUTTON_B ) quit = 1; if ( menu < 0 ) menu = mccount - 1; if ( menu == mccount ) menu = 0; scroller(SCROLLY, &sgmtext[0], 2); VIDEO_WaitVSync(); } return 0; }
void ConfigPAD() { int menu = 0; int quit = 0; short j; int redraw = 1; int i; for ( i = 0; i < 6; i++ ) { mpads[i] = padmenu[i][15] == 'A' ? 0 : padmenu[i][15] == 'B' ? 1 : padmenu[i][15] == 'X' ? 2 : padmenu[i][15] == 'Y' ? 3 : padmenu[i][15] == 'S' ? 4 : padmenu[i][15] == 'Z' ? 5 : 0; } line = 0; scrollerx = 320 - MARGIN; while ( quit == 0 ) { if ( redraw ) DrawMenu(&padmenu[0], configpadcount, menu); redraw = 0; j = PAD_ButtonsDown(0); if ( j & PAD_BUTTON_DOWN ) { menu++; redraw = 1; } if ( j & PAD_BUTTON_UP ) { menu--; redraw = 1; } if ( j & PAD_BUTTON_A ) { redraw = 1; switch( menu ) { case 0: i = 0; break; case 1: i = 1; break; case 2: i = 2; break; case 3: i = 3; break; case 4: i = 4; break; case 5: i = 5; break; case 6: i = -1; FSDisable ^= 1; if ( FSDisable ) strcpy(padmenu[6], " FOUR SCORE - OFF"); else strcpy(padmenu[6], " FOUR SCORE - ON "); FCEUI_DisableFourScore(FSDisable); break; case 7: i = -1; PADCAL += 5; if ( PADCAL > 90 ) PADCAL = 40; sprintf(padmenu[7]," ANALOG CLIP - %d", PADCAL); break; case 8: i = -1; PADTUR += 1; if ( PADTUR > 10 ) PADTUR += 4; if ( PADTUR > 30 ) PADTUR = 2; sprintf(padmenu[8]," TURBO SPEED - %.2f pps", (float)60/PADTUR); break; case 9: quit=1; return; break; default: break; } if ( i >= 0 ) { mpads[i]++; if ( mpads[i] == 6 ) mpads[i] = 0; padmenu[i][15] = PADMap( mpads[i], i ); } } if ( j & PAD_BUTTON_B ) { quit=1; return; } if ( menu < 0 ) menu = configpadcount - 1; if ( menu == configpadcount ) menu = 0; scroller(SCROLLY, &text[0], 2); VIDEO_WaitVSync(); } return; }
void filemenu(int mode) { getstats(mode); if (button(100,100,170,120,"OPTIMIZE",9,13,base2,false,mode)==DDgui_LeftClick && mode!=DD_AfterCheck) { optimizeproject(); waitleftbutton=true; } if (button(100,121,170,141,"TextureO",9,13,base2,false,mode)==DDgui_LeftClick && mode!=DD_AfterCheck) { savetextureusefile(); waitleftbutton=true; } if (mode==DD_Draw) { glColor4f(buttontextlit); rectangle(661,120,775,264); } if (mode==DD_Check) if (leftclickinwindow(661,121,774,263) && mouseinwindow(661,121,774,260)) fscnselected=min(fscnbarpos+(my-121) / 10,filenum(prjlist)-1); if ((mode ==DD_Check) && mouseinwindow(661,121,774,263)) fscnbarpos-=wheel*4; scroller(775,120,790,264,15,15,filenum(prjlist),14,fscnbarpos,mode); if (mode==DD_Draw) { pf = prjlist; for (x=1;x<=fscnbarpos;x++) pf=pf->next; for (x=0;x<=13;x++) { if (pf!=NULL) { if (fscnbarpos+x==fscnselected) glColor4f(col4); else glColor4f(buttontextlit); glRasterPos2i(665,130+x*10); strcpy(st,pf->filedata.cFileName); glPrint(st,base2,18); pf=pf->next; } } glColor4f(buttontextlit); sprintf(s,"%d PROJECTS.",filenum(prjlist)); glRasterPos2i(683,277); glPrint(s,base2); } glColor4f(1,1,1,1); if ((button(686,283,771,299,texbutton1,0,96.0/256.0,85.0/256.0,112.0/256.0,false,mode) == DDgui_LeftClick) && (mode!=DD_AfterCheck)) { pf = prjlist; for (x=1;x<=fscnselected;x++) pf=pf->next; //sprintf(s,"%s%s",scenedir,pf->filedata.cFileName); memset(lastfilename,0,256); memcpy(lastfilename,pf->filedata.cFileName,strlen(pf->filedata.cFileName)-4); sprintf(s,"%s%s",projectdir,pf->filedata.cFileName); //loadaDDictscene(*actualscene,NULL,s,true,true,true,true,true); LoadProject(s); modellviews[3].cam=actualscene->editview; modellviews[3].cam2=actualscene->editview; tTexture *tex=texturelist; while ((tex!=NULL) && (tex->number!=selectedtexture)) tex=tex->next; memcpy(generatedtexture.commands,tex->commands,sizeof(generatedtexture.commands)); memcpy(generatedtexture.texts,tex->texts,sizeof(generatedtexture.texts)); generatedtexture.commandnum=tex->commandnum; //memcpy(generatedtexture.layers,tex->layers,sizeof(generatedtexture.layers)); for (y=0;y<=3;y++) { glBindTexture(GL_TEXTURE_2D, texlayers[y]); glTexImage2D(GL_TEXTURE_2D,0,3,256,256,0,GL_RGBA,GL_UNSIGNED_BYTE,generatedtexture.layers[y]); } if (materiallist!=NULL) { matselected=0; material *mat=materiallist; for (x=1;x<=matselected;x++) mat=mat->next; mattexture=mat->handle; } waitleftbutton=true; } if (button(685,300,770,316,texbutton1,0,144.0/256.0,85.0/256.0,160.0/256.0,false,mode) == DDgui_LeftClick) { char *ss=readline("Enter Filename (.scn not needed)",210,0,base2,lastfilename); if (ss!="") { //sprintf(s,"%s%s.scn",scenedir,ss); //saveaDDictscene(*actualscene,NULL,s,scntexturesave, scncamerasave, scnselectionsave, scnlightsave, scnobjectsave); memset(lastfilename,0,256); memcpy(lastfilename,ss,strlen(ss)); sprintf(s,"%s%s.64k",projectdir,ss); SaveProject(s); } } if (button(685,317,770,333,texbutton1,0,160.0/256.0,85.0/256.0,176.0/256.0,false,mode) == DDgui_LeftClick) { char *ss=readline("Enter Filename (.scn not needed)",210,0,base2,""); if (ss!="") { sprintf(s,"%s%s.m64",minimaldir,ss); //SaveMinimalScene(*actualscene,NULL,s); saveminimalproject(s,2); } } /*RadioButton(681,341,scntexturesave,"TEXTURES",mode); RadioButton(681,355,scncamerasave,"CAMERAS",mode); RadioButton(681,369,scnselectionsave,"SELECTIONS",mode); RadioButton(681,383,scnlightsave,"LIGHTS",mode); RadioButton(681,397,scnobjectsave,"OBJECTS",mode);*/ }
GeneralPrefsView::GeneralPrefsView(BRect frame, const char* title, uint32 redraw, uint32 flags) : BView(frame, title, redraw, flags), fLastindex(0) { SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR)); fPrefsItems[piWindow] = new AppWindowPrefsView(BRect(0, 0, 0, 0)); fPrefsItems[piColor] = new ColorPrefsView(BRect(0, 0, 0, 0)); fPrefsBox = new BBox( BRect(0.0, 0.0, fPrefsItems[piColor]->Bounds().right + 10 + be_plain_font->StringWidth("W"), fPrefsItems[piWindow]->Bounds().bottom + be_plain_font->Size() / 2), "Bleat", B_FOLLOW_ALL_SIDES); fPrefsBox->AddChild(fPrefsItems[piWindow]); fPrefsBox->AddChild(fPrefsItems[piColor]); fPrefsList = new BListView(BRect(0.0, 0.0, fPrefsItems[piWindow]->Bounds().right / 2, fPrefsItems[piWindow]->Bounds().bottom), "PrefsList", B_SINGLE_SELECTION_LIST, B_FOLLOW_LEFT | B_FOLLOW_TOP_BOTTOM); fPrefsList->MoveTo(5, 5); fPrefsList->AddItem(new BStringItem(S_PREFGEN_ALIAS_ITEM)); fPrefsList->AddItem(new BStringItem(S_PREFGEN_APP_ITEM)); fPrefsList->AddItem(new BStringItem(S_PREFGEN_COLOR_ITEM)); fPrefsList->AddItem(new BStringItem(S_PREFGEN_FONT_ITEM)); fPrefsList->AddItem(new BStringItem(S_PREFGEN_COMMAND_ITEM)); fPrefsList->AddItem(new BStringItem(S_PREFGEN_EVENT_ITEM)); fPrefsList->AddItem(new BStringItem(S_PREFGEN_DCC_ITEM)); fPrefsList->AddItem(new BStringItem(S_PREFGEN_LOG_ITEM)); fPrefsList->SetSelectionMessage(new BMessage(M_GENERALPREFS_SELECTION_CHANGED)); BScrollView* scroller(new BScrollView("list scroller", fPrefsList, B_FOLLOW_LEFT | B_FOLLOW_TOP_BOTTOM, 0, false, true)); AddChild(scroller); ResizeTo(scroller->Frame().right + fPrefsBox->Bounds().Width() + 10, fPrefsBox->Bounds().Height() + 5); fPrefsBox->MoveTo(scroller->Frame().right + 5, 5); AddChild(fPrefsBox); BRect bounds(fPrefsBox->Bounds()); bounds.left += 3; bounds.right -= 3; bounds.top += 12; bounds.bottom -= 5; fPrefsItems[piAlias] = new AliasesPrefsView(bounds); fPrefsBox->AddChild(fPrefsItems[piAlias]); fPrefsItems[piWindow]->MoveTo(be_plain_font->StringWidth("i"), be_plain_font->Size() * 1.5); fPrefsItems[piWindow]->ResizeBy(be_plain_font->StringWidth("i") * 3, -1.2 * (be_plain_font->Size())); fPrefsItems[piWindow]->Hide(); fPrefsItems[piColor]->MoveTo(be_plain_font->StringWidth("i"), be_plain_font->Size() * 1.5); fPrefsItems[piColor]->ResizeTo(bounds.Width() - 3, bounds.Height() - 3); fPrefsItems[piColor]->Hide(); fPrefsItems[piFonts] = new FontPrefsView(bounds); fPrefsBox->AddChild(fPrefsItems[piFonts]); fPrefsItems[piFonts]->Hide(); fPrefsItems[piCommands] = new CommandPrefsView(bounds); fPrefsBox->AddChild(fPrefsItems[piCommands]); fPrefsItems[piCommands]->Hide(); fPrefsItems[piEvents] = new EventPrefsView(bounds); fPrefsBox->AddChild(fPrefsItems[piEvents]); fPrefsItems[piEvents]->Hide(); fPrefsItems[piDCC] = new DCCPrefsView(bounds); fPrefsBox->AddChild(fPrefsItems[piDCC]); fPrefsItems[piDCC]->Hide(); fPrefsItems[piLog] = new LogPrefsView(bounds); fPrefsBox->AddChild(fPrefsItems[piLog]); fPrefsItems[piLog]->Hide(); }
void QtViewportInteractionEngine::panGestureEnded(const QPointF& viewportTouchPoint, qint64 eventTimestampMillis) { scroller()->handleInput(QScroller::InputRelease, viewportTouchPoint, eventTimestampMillis); }
void QtViewportInteractionEngine::panGestureCancelled() { // Stopping the scroller immediately stops kinetic scrolling and if the view is out of bounds it // is moved inside valid bounds immediately as well. This is the behavior that we want. scroller()->stop(); }
void QtViewportInteractionEngine::panGestureRequestUpdate(const QPointF& viewportTouchPoint, qint64 eventTimestampMillis) { scroller()->handleInput(QScroller::InputMove, viewportTouchPoint, eventTimestampMillis); }
void QtViewportInteractionEngine::panGestureStarted(const QPointF& viewportTouchPoint, qint64 eventTimestampMillis) { m_hadUserInteraction = true; scroller()->handleInput(QScroller::InputPress, viewportTouchPoint, eventTimestampMillis); }