Exemple #1
0
void CColorSlide::DynamicStat(ENUM_SLIDERSTATE aState)
{
	if (m_nWidth <= 0)
	{
		return;
	}
	CDC* pDC =GetWindowDC();	
	if (pDC == NULL)
	{
		return;
	}
	pDC->SetBkColor(TRANSPARENT);
	CRect lrcClientRect;
	GetClientRect(lrcClientRect);
	m_nWidth = lrcClientRect.Width();
	lrcClientRect.bottom;
	m_nHeight = lrcClientRect.Height();

	CMemDC TempDC(pDC, CRect(lrcClientRect.left, lrcClientRect.top,lrcClientRect.right, lrcClientRect.bottom));
	PaintBK(lrcClientRect,TempDC.GetSafeHdc());
	if( m_SlideType != PERCENT_SLIDE ) 
	DrawSlider(aState,lrcClientRect,TempDC.GetSafeHdc());
	BitBlt(pDC->GetSafeHdc(),0,0,m_nWidth,m_nHeight,TempDC.GetSafeHdc(),0,0,SRCCOPY);
	ReleaseDC(pDC);
}
Exemple #2
0
// this function is called each frame
void glutDisplay (void)
{
	// Read next available data
	g_Context.WaitAndUpdateAll();

	// Process the data
	g_pSessionManager->Update(&g_Context);

	glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

	// Setup the OpenGL viewpoint
	glMatrixMode(GL_PROJECTION);
	glPushMatrix();
	glLoadIdentity();

	#ifdef USE_GLUT
	glOrtho(0, GL_WIN_SIZE_X, 0, GL_WIN_SIZE_Y, -1.0, 1.0);
	#else
	glOrthof(0, GL_WIN_SIZE_X, 0, GL_WIN_SIZE_Y, -1.0, 1.0);
	#endif

	glDisable(GL_TEXTURE_2D);

	// Draw the MyBoxes
	g_pBox[0]->Draw();
	g_pBox[1]->Draw();
	g_pBox[2]->Draw();

	// Draw the slider
	DrawSlider();

	#ifdef USE_GLUT
	glutSwapBuffers();
	#endif
}
Exemple #3
0
void
XmGaugeSetValue(Widget w, int value)
{
    XmGaugeWidget gw = (XmGaugeWidget)w;

    gw->gauge.value = value;
    DrawSlider(gw, True);
    XFlush(XtDisplay(w));
}
static void DrawOptionsMenu(void)
{
    if (messageson)
    {
        MN_DrTextB(DEH_String("ON"), 196, 50);
    }
    else
    {
        MN_DrTextB(DEH_String("OFF"), 196, 50);
    }
    DrawSlider(&OptionsMenu, 3, 10, mouseSensitivity);
}
Exemple #5
0
void cMenu::DrawMenu()
{
	//Body Stuff.
	GradientRect(10, 10, 300, 20, Grey, DGrey);
	DrawFilledRectangle(10,30,300,280,DGrey);
	DrawNonFilledRectangle(10,10,300,300,Outline);
	PrintText("Mentranium", 100,20,White,Font.g_pFont);
	
	//Tabs.
	sizeoftab = 291 / (TabCount);
	DrawNonFilledRectangle(15,61, sizeoftab * TabCount, 243,Outline);
	for (int i = 0; i < TabCount; i++)
	{
		DrawTab(i, 15 + (i*sizeoftab), 41,sizeoftab);
	}
	
	//Checks.
	int d = 0;
	for(int i = 0; i < CheckCount; i++)
	{
		if(ActiveName == Checks[i].Parent)
		{
			DrawCheckBox(i,30, 70 + (d*20));
			d++;
		}
	}

	//Sliders.
	d = 0;
	for(int i = 0; i < SliderCount; i++)
	{
		if(ActiveName == Sliders[i].Parent)
		{
			DrawSlider(i,150, 100 + (d*40));
			d++;
		}
	}

	//Text Boxes.
	d = 0;
	for(int i = 0; i < TextBoxCount; i++)
	{
		if(ActiveName == TextBoxes[i].Parent)
		{
			DrawTextBox(i,150, 100 + (d*40));
			d++;
		}
	}
}
Exemple #6
0
void
BSlider::Draw(BRect updateRect)
{
	// clear out background
	BRegion background(updateRect);
	background.Exclude(BarFrame());
	bool drawBackground = true;
	if (Parent() && (Parent()->Flags() & B_DRAW_ON_CHILDREN) != 0) {
		// This view is embedded somewhere, most likely the Tracker Desktop
		// shelf.
		drawBackground = false;
	}

	// ToDo: the triangle thumb doesn't delete its background, so we still have
	// to do it Note, this also creates a different behaviour for subclasses,
	// depending on the thumb style - if possible this should be avoided.
	if (Style() == B_BLOCK_THUMB) {
		BRect thumbFrame = ThumbFrame();
		if (be_control_look != NULL) {
			// fill background where shadow will be...
			// TODO: Such drawint dependent behavior should be moved into
			// BControlLook of course.
			thumbFrame.right--;
			thumbFrame.bottom--;
		}
		background.Exclude(thumbFrame);
	}

#if USE_OFF_SCREEN_VIEW
	if (!fOffScreenBits)
		return;

	if (fOffScreenBits->Lock()) {
		fOffScreenView->SetViewColor(ViewColor());
		fOffScreenView->SetLowColor(LowColor());
#endif

		if (drawBackground && background.Frame().IsValid())
			OffscreenView()->FillRegion(&background, B_SOLID_LOW);

#if USE_OFF_SCREEN_VIEW
		fOffScreenView->Sync();
		fOffScreenBits->Unlock();
	}
#endif

	DrawSlider();
}
Exemple #7
0
static void
ExposeProc(Widget w, XEvent *WXUNUSED(event), Region WXUNUSED(r))
{
    XmGaugeWidget gw = (XmGaugeWidget)w;
#define THIS gw->gauge
    int sht;

    sht = gw->primitive.shadow_thickness;
    _XmDrawShadows(XtDisplay(w), XtWindow(w),
        gw->primitive.top_shadow_GC,
        gw->primitive.bottom_shadow_GC,
        0, 0, w->core.width, w->core.height,
        (Dimension)sht, XmSHADOW_IN);
    DrawSlider(gw, False);
#undef THIS
}
Exemple #8
0
static void
UpdateSpeechGraphics (void)
{
	static TimeCount NextTime;
	CONTEXT OldContext;

	if (GetTimeCounter () < NextTime)
		return; // too early

	NextTime = GetTimeCounter () + OSCILLOSCOPE_RATE;

	OldContext = SetContext (RadarContext);
	DrawOscilloscope ();
	SetContext (SpaceContext);
	DrawSlider ();
	SetContext (OldContext);
}
Exemple #9
0
// Draw
void
PopupSlider::Draw(BRect updateRect)
{
	bool enabled = IsEnabled();
	rgb_color background = ui_color(B_PANEL_BACKGROUND_COLOR);
	rgb_color black;
	if (enabled) {
		black = tint_color(background, B_DARKEN_MAX_TINT);
	} else {
		black = tint_color(background, B_DISABLED_LABEL_TINT);
	}
	// draw label
	BRect r(Bounds());
	r.right = fSliderButtonRect.left - 1.0;
	font_height fh;
	GetFontHeight(&fh);
	BPoint textPoint(0.0, (r.top + r.bottom) / 2.0 + fh.ascent / 2.0);
	SetLowColor(background);
	SetHighColor(black);
	FillRect(r, B_SOLID_LOW);
	DrawString(fLabel.String(), textPoint);
	// draw slider button
	DrawSlider(fSliderButtonRect, enabled);
}
Exemple #10
0
void Menu_Draw()
{
	struct menu_entry *m=menu;
	OSD_Clear();
	menurows=0;
	while(m->type!=MENU_ENTRY_NULL)
	{
		int i;
		char **labels;
		OSD_SetX(2);
		OSD_SetY(menurows);
		switch(m->type)
		{
			case MENU_ENTRY_CYCLE:
				i=MENU_CYCLE_VALUE(m);	// Access the first byte
				labels=(char**)m->label;
				OSD_Puts("\x16 ");
				OSD_Puts(labels[i]);
				break;
			case MENU_ENTRY_SLIDER:
				DrawSlider(m);
				OSD_Puts(m->label);
				break;
			case MENU_ENTRY_TOGGLE:
				if((menu_toggle_bits>>MENU_ACTION_TOGGLE(m->action))&1)
					OSD_Puts("\x14 ");
				else
					OSD_Puts("\x15 ");
				// Fall through
			default:
				OSD_Puts(m->label);
				break;
		}
		++menurows;
		m++;
	}
Exemple #11
0
void TSliderView::SetValue(float value)
{
	fValue = value;
	DrawSlider();
}
Exemple #12
0
void SliderPanel::OnPaint(wxPaintEvent &WXUNUSED(event)) 
{
	wxPaintDC dc(this);
	DrawSlider(dc);
}
Exemple #13
0
void SliderPanel::OnSize(wxSizeEvent& event)
{
	wxPaintDC dc(this);
	DrawSlider(dc);
}
static void DrawOptions2Menu(void)
{
    DrawSlider(&Options2Menu, 1, 9, screenblocks - 3);
    DrawSlider(&Options2Menu, 3, 16, snd_MaxVolume);
    DrawSlider(&Options2Menu, 5, 16, snd_MusicVolume);
}
Exemple #15
0
void
GaugeDrag(Widget WXUNUSED(w), XEvent *WXUNUSED(e), String *WXUNUSED(args), Cardinal  *WXUNUSED(num_args))
{
    /* Commented out for a read-only gauge in wxWidgets */
#if 0
    XmGaugeWidget gw = (XmGaugeWidget)w;
#define THIS gw->gauge
    int sht, x, y, max, value;
    float ratio, nratio, size, nsize, fvalue, delta;
    XMotionEvent *event = (XMotionEvent *)e;

    if( ! THIS.dragging) return;

    x = event->x;
    y = event->y;
    sht = gw->primitive.shadow_thickness;

    ratio = (float)THIS.value / (float)((float)THIS.maximum -
        (float)THIS.minimum);
    switch(THIS.orientation) {
    case XmHORIZONTAL:
        max = (w->core.width - 2 * sht);
        size = (float)max * ratio;
        delta =  (float)x - (float)THIS.oldx;
        break;
    case XmVERTICAL:
        max = (w->core.height - 2 * sht);
        size = (float) max * ratio;
        delta =  (float)y - (float)THIS.oldy;
        break;
    }
    switch(THIS.processingDirection) {
    case XmMAX_ON_RIGHT:
    case XmMAX_ON_BOTTOM:
        nsize = size + delta;
        break;
    default:
        nsize = size - delta;
    }
    if(nsize > (float)max) nsize = (float)max;
    if(nsize < (float)0 ) nsize = (float)0;
    nratio =  nsize / (float)max;

    fvalue = (int)((float)THIS.maximum -
        (float)THIS.minimum) * (float)nsize / (float)max;
    value = wxRound(fvalue);

    THIS.value = value;
    THIS.oldx = x;
    THIS.oldy = y;

    /* clear old slider only if it was larger */
    DrawSlider(gw, (nsize < size));

    {
        XmGaugeCallbackStruct call;

        if(NULL  != THIS.dragCallback) {
            call.reason = XmCR_DRAG;
            call.event = e;
            call.value = THIS.value;
            XtCallCallbacks(w, XmNdragCallback, &call);
        }
    }
#undef THIS
#endif
}
void TSliderView::SetValue(float value)
{
	fValue = value;
	DrawSlider();
	callback(fValue, callback_arg);
}
Exemple #17
0
void TSliderView::Draw(BRect where)
{
	DrawSlider();
}
Exemple #18
0
void CMenuItem::Draw (int bIsCurrent, int bTiny)
{
SetColor (bIsCurrent, bTiny);
if (m_bRebuild) {
	Destroy ();
	m_bRebuild = 0;
	}
switch (m_nType) {
	case NM_TYPE_TEXT:
 // CCanvas::Current ()->Font () = TEXT_FONT);
		// fall through on purpose

	case NM_TYPE_MENU:
		DrawString (bIsCurrent, bTiny);
		break;

	case NM_TYPE_SLIDER: {
		SaveText ();
		if (m_value < m_minValue) 
			m_value = m_minValue;
		else if (m_value > m_maxValue) 
			m_value = m_maxValue;
		sprintf (m_text, "%s\t%s", m_savedText, SLIDER_LEFT);
		int l = int (strlen (m_text));
		int h = m_maxValue - m_minValue + 1;
		memset (m_text + l, SLIDER_MIDDLE [0], h);
		m_text [l + h] = SLIDER_RIGHT [0];
		m_text [l + h + 1] = '\0';
		m_text [m_value + 1 + strlen (m_savedText) + 1] = SLIDER_MARKER [0];
		DrawSlider (bIsCurrent, bTiny);
		RestoreText ();
		}
		break;

	case NM_TYPE_INPUT_MENU:
		if (m_group)
			DrawInputBox (m_w, m_x, m_y, m_text, bIsCurrent, bTiny);
		else
			DrawString (bIsCurrent, bTiny);
		break;

	case NM_TYPE_INPUT:
		DrawInputBox (m_w, m_x, m_y, m_text, bIsCurrent, bTiny);
		break;

	case NM_TYPE_GAUGE:
		DrawGauge (m_w, m_x, m_y, m_value, m_maxValue, bIsCurrent);
		break;

	case NM_TYPE_CHECK:
		DrawString (bIsCurrent, bTiny);
		if (m_value)
			DrawRightString (bIsCurrent, bTiny, CHECKED_CHECK_BOX);
		else														 
			DrawRightString (bIsCurrent, bTiny, NORMAL_CHECK_BOX);
		break;

	case NM_TYPE_RADIO:
		DrawString (bIsCurrent, bTiny);
		if (m_value)
			DrawRightString (bIsCurrent, bTiny, CHECKED_RADIO_BOX);
		else
			DrawRightString (bIsCurrent, bTiny, NORMAL_RADIO_BOX);
		break;

	case NM_TYPE_NUMBER:
		char text [20];
		m_value = NMCLAMP (m_value, m_minValue, m_maxValue);
		DrawString (bIsCurrent, bTiny);
		sprintf (text, "%d", m_value);
		DrawRightString (bIsCurrent, bTiny, text);
		break;
	}
}
Exemple #19
0
void tcOptionsView::Draw() 
{
	static unsigned int drawCount = 0;


    std::string activeTab = GetTab();

    StartDraw();

	wxASSERT(mpOptions);   


    UpdateButtonInfo();

    std::vector<tcOptions::OptionInfo>& optionList = mpOptions->maOptionInfo;

    for(size_t k=0; k<buttonInfo.size(); k++) 
    {
        if (!buttonInfo[k].isSlider)
        {
            int optionIdx = buttonInfo[k].optionIdx;
            int valueIdx = buttonInfo[k].valueIdx;

            tcString sText = optionList[optionIdx].mzCaption[valueIdx];

            float x = (float)buttonInfo[k].textX;
            float y = (float)buttonInfo[k].textY;

            DrawText(sText.c_str(), x, y, defaultFont.get(), 
                Vec4(0.86f, 0.86f, 1.0f, 1.0f), fontSize, LEFT_CENTER);

            if (optionList[optionIdx].mnValue == valueIdx) 
            {
                DrawButton(buttonInfo[k].buttonX, buttonInfo[k].buttonY, 1);
            }
            else 
            {
                DrawButton(buttonInfo[k].buttonX, buttonInfo[k].buttonY, 0);
            }
        }
        else
        {
            int optionIdx = buttonInfo[k].optionIdx;

            tcString sText = optionList[optionIdx].mzCaption[0];

            bool thisSliderActive = sliderDragActive && (sliderIdx == k);

            float sliderVal = thisSliderActive ? 
                                sliderDragValue : optionList[optionIdx].floatVal;
            float sliderMin = optionList[optionIdx].floatMin;
            float sliderMax = optionList[optionIdx].floatMax;
            float sliderFraction = (sliderVal - sliderMin) / (sliderMax - sliderMin);

  
            float xText = (float)buttonInfo[k].textX;
            float yText = (float)buttonInfo[k].textY;
            float xBar = (float)buttonInfo[k].buttonX;
            float yBar = (float)buttonInfo[k].buttonY;

            DrawText(sText.c_str(), xText, yText, defaultFont.get(), 
                Vec4(0.86f, 0.86f, 1.0f, 1.0f), fontSize, LEFT_CENTER);

            float xThumb = xBar + sliderFraction*sliderBarWidth;
            tcRect thumbRect(xThumb-2.0f, xThumb+2.0f, yBar-8.0f, yBar+8.0f);
            buttonInfo[k].thumbRect = thumbRect;

            // draw slider here
            DrawSlider(xBar, yBar, thumbRect, sliderVal, thisSliderActive);

        }

	}


	FinishDraw();
}