eWindowStyleSimple::eWindowStyleSimple() { m_border_left = m_border_right = m_border_bottom = 2; m_border_top = 30; m_fnt = new gFont("Regular", 25); m_border_color_tl = gColor(0x1f); m_border_color_br = gColor(0x14); m_title_color_back = gColor(0x20); m_title_color = gColor(0x2f); m_background_color = gColor(0x19); }
void eWindowStyleSimple::setStyle(gPainter &painter, int what) { switch (what) { case styleLabel: painter.setForegroundColor(gColor(0x1F)); break; case styleListboxSelected: painter.setForegroundColor(gColor(0x1F)); painter.setBackgroundColor(gColor(0x1A)); break; case styleListboxNormal: painter.setForegroundColor(gColor(0x1C)); painter.setBackgroundColor(m_background_color); break; case styleListboxMarked: painter.setForegroundColor(gColor(0x2F)); painter.setBackgroundColor(gColor(0x2A)); break; case styleListboxMarkedAndSelected: painter.setForegroundColor(gColor(0x3F)); painter.setBackgroundColor(gColor(0x3A)); break; } }
eWidget::eWidget(eWidget *_parent, int takefocus) :helpID(0), parent(_parent ? _parent : root), shortcut(0), shortcutFocusWidget(0), focus(0), TLW(0), takefocus(takefocus), state( parent && !(parent->state&stateVisible) ? stateShow : 0 ), target(0), result(0), in_loop(0), have_focus(0), just_showing(0), font( parent ? parent->font : eSkin::getActive()->queryFont("global.normal") ), backgroundColor(_parent?gColor(-1):gColor(eSkin::getActive()->queryScheme("global.normal.background"))), foregroundColor(_parent?parent->foregroundColor:gColor(eSkin::getActive()->queryScheme("global.normal.foreground"))), pixmap(0) #ifndef DISABLE_LCD ,LCDTitle(0) ,LCDElement(0) ,LCDTmp(0) #endif { init_eWidget(); }
int gColor(int G[V][V], int C[V], int mC, int v) { int c; if(v == V) { return 1; } for(c = 1; c <= mC; c++) { if(isSafe(G, C, v, c)) { C[v] = c; if (gColor(G, C, mC, v+1) == 1) { return 1; } C[v] = 0; } } return 0; }
void main() { int i; int G[V][V] = { {0,1,1,1}, {1,0,1,0}, {1,1,1,1}, {1,0,1,0}}; int C[V]; for (i = 0; i < V; i++) C[i] = 0; int mC = 3; if ( gColor(G, C, mC, 0) == 1) { printSol(C); } else { printf("Not possible to color with %d colors.\n", mC); } }
int eProgress::setProperty(const eString &prop, const eString &value) { if (prop == "leftColor") left = eSkin::getActive()->queryColor(value); else if (prop == "rightColor") right = eSkin::getActive()->queryColor(value); else if (prop == "start") start = atoi(value.c_str()); else if (prop == "border") border = atoi(value.c_str()); else if (prop == "direction") direction = atoi(value.c_str()); else if (prop == "alphatest" && value == "on") left = gColor(-1); /* make 'left' transparent */ else if (prop == "sliderpixmap") setSliderPixmap(eSkin::getActive()->queryImage(value)); else return eWidget::setProperty(prop, value); return 0; }
void Map::draw(Canvas &canvas) { int xRes,yRes; game->get_screen_resolution(xRes,yRes); Gradient gColor(Colorf::lightblue,Colorf::darkblue); canvas.fill_rect(0,0,xRes,yRes,gColor); int yDrawPos = yRes; for(int i=0;i<4;i++) { background2.draw(canvas,(int)(256*i+back2_pos.x), (int)(yDrawPos-back2_pos.y)); } for(int i=0;i<3;i++) { background1.draw(canvas,(int)(512*i+back1_pos.x), (int)(yDrawPos-back1_pos.y)); } for(int i=0;i<4;i++) { title1.draw(canvas,(int)(256*i+pos_x),yDrawPos); } }
int eGauge::event(int event, void *data, void *data2) { switch (event) { case evtPaint: { ePtr<eWindowStyle> style; eSize s(size()); gPainter &painter = *(gPainter*)data2; gRGB pal[256]; pal[0] = 0; pal[1] = 0xff0000; pal[2] = 0xffFFff; pal[3] = 0x00ff00; for (int a=0; a<0x10; ++a) pal[a | 0x10] = (0x111111 * a) | 0xFF; painter.setPalette(pal, 0, 256); if (m_have_border_color) { painter.setBackgroundColor(gColor(1)); painter.setForegroundColor(gColor(1)); } else { painter.setBackgroundColor(gColor(2)); painter.setForegroundColor(gColor(2)); } painter.line(ePoint(basex, basey), ePoint(endx, endy)); painter.line(ePoint(basex, (basey -1)), ePoint(endx, endy)); painter.line(ePoint(basex, (basey +1)), ePoint(endx, endy)); painter.line(ePoint((basex -1), basey), ePoint(endx, endy)); painter.line(ePoint((basex +1), basey), ePoint(endx, endy)); if(basex < endx) painter.line(ePoint(basex, basey), ePoint((endx -1), endy)); if(basex > endx) painter.line(ePoint(basex, basey), ePoint((endx +1), endy)); if(basey > endy) painter.line(ePoint(basex, basey), ePoint(endx, (endy -1))); if(basey < endy) painter.line(ePoint(basex, basey), ePoint(endx, (endy +1))); return 0; } case evtChangedGauge: { int mystart = 0; int perc = m_value; basex = size().width() >> 1; basey = size().height() >> 1; double angle = (double) mystart + (double) perc * (double)(360 - (mystart<<1)) / 100.0; double rads = angle*M_PI/180; endx = basex + (int) (sin(rads) * (double)(size().width())/2.0); endy = basey - (int) (cos(rads) * (double)(size().height())/2.0); invalidate(); return 0; } default: return eWidget::event(event, data, data2); } }