static void TextElementDraw( void *clientData, void *elementRecord, Tk_Window tkwin, Drawable d, Ttk_Box b, Ttk_State state) { TextElement *text = elementRecord; if (TextSetup(text, tkwin)) { TextDraw(text, tkwin, d, b); TextCleanup(text); } }
int CMagneticView::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CView::OnCreate(lpCreateStruct) == -1) return -1; TextSetup(); m_iTimer = SetTimer(1,100,NULL); return 0; }
static void TextElementSize( void *clientData, void *elementRecord, Tk_Window tkwin, int *widthPtr, int *heightPtr, Ttk_Padding *paddingPtr) { TextElement *text = elementRecord; if (!TextSetup(text, tkwin)) return; *heightPtr = text->height; *widthPtr = TextReqWidth(text); TextCleanup(text); return; }
static void LabelSetup( LabelElement *c, Tk_Window tkwin, Ttk_State state) { Ttk_Compound *compoundPtr = &c->compound; Tk_GetPixelsFromObj(NULL,tkwin,c->spaceObj,&c->space); Ttk_GetCompoundFromObj(NULL,c->compoundObj,(int*)compoundPtr); /* * Deal with TTK_COMPOUND_NONE. */ if (c->compound == TTK_COMPOUND_NONE) { if (ImageSetup(&c->image, tkwin, state)) { c->compound = TTK_COMPOUND_IMAGE; } else { c->compound = TTK_COMPOUND_TEXT; } } else if (c->compound != TTK_COMPOUND_TEXT) { if (!ImageSetup(&c->image, tkwin, state)) { c->compound = TTK_COMPOUND_TEXT; } } if (c->compound != TTK_COMPOUND_IMAGE) TextSetup(&c->text, tkwin); /* * ASSERT: * if c->compound != IMAGE, then TextSetup() has been called * if c->compound != TEXT, then ImageSetup() has returned successfully * c->compound != COMPOUND_NONE. */ switch (c->compound) { case TTK_COMPOUND_NONE: /* Can't happen */ break; case TTK_COMPOUND_TEXT: c->totalWidth = c->text.width; c->totalHeight = c->text.height; break; case TTK_COMPOUND_IMAGE: c->totalWidth = c->image.width; c->totalHeight = c->image.height; break; case TTK_COMPOUND_CENTER: c->totalWidth = MAX(c->image.width, c->text.width); c->totalHeight = MAX(c->image.height, c->text.height); break; case TTK_COMPOUND_TOP: case TTK_COMPOUND_BOTTOM: c->totalWidth = MAX(c->image.width, c->text.width); c->totalHeight = c->image.height + c->text.height + c->space; break; case TTK_COMPOUND_LEFT: case TTK_COMPOUND_RIGHT: c->totalWidth = c->image.width + c->text.width + c->space; c->totalHeight = MAX(c->image.height, c->text.height); break; } }