WMTabView *WMCreateTabView(WMWidget * parent) { TabView *tPtr; WMScreen *scr = WMWidgetScreen(parent); tPtr = wmalloc(sizeof(TabView)); tPtr->widgetClass = WC_TabView; tPtr->view = W_CreateView(W_VIEW(parent)); if (!tPtr->view) { wfree(tPtr); return NULL; } tPtr->view->self = tPtr; tPtr->view->delegate = &delegate; tPtr->lightGray = WMCreateRGBColor(scr, 0xd9d9, 0xd9d9, 0xd9d9, False); tPtr->tabColor = WMCreateRGBColor(scr, 0x8420, 0x8420, 0x8420, False); tPtr->font = WMRetainFont(scr->normalFont); tPtr->flags.type = WTTopTabsBevelBorder; tPtr->flags.bordered = 1; tPtr->flags.uniformTabs = 0; tPtr->flags.enabled = 1; WMCreateEventHandler(tPtr->view, ExposureMask | StructureNotifyMask | ButtonPressMask, handleEvents, tPtr); WMResizeWidget(tPtr, DEFAULT_WIDTH, DEFAULT_HEIGHT); tPtr->tabHeight = WMFontHeight(tPtr->font) + 3; return tPtr; }
void testColorWell(WMScreen * scr) { WMWindow *win; WMColorWell *well1, *well2; windowCount++; win = WMCreateWindow(scr, "testColor"); WMResizeWidget(win, 300, 300); WMSetWindowCloseAction(win, closeAction, NULL); well1 = WMCreateColorWell(win); WMResizeWidget(well1, 60, 40); WMMoveWidget(well1, 100, 100); WMSetColorWellColor(well1, WMCreateRGBColor(scr, 0x8888, 0, 0x1111, True)); well2 = WMCreateColorWell(win); WMResizeWidget(well2, 60, 40); WMMoveWidget(well2, 200, 100); WMSetColorWellColor(well2, WMCreateRGBColor(scr, 0, 0, 0x8888, True)); WMRealizeWidget(win); WMMapSubwidgets(win); WMMapWidget(win); }
int main (int argc, char **argv){ int i,j; WMColor *color; WMWindow * win; RImage *image; struct _pict pict; Drawable de; RColor one, two={0xaf, 0x0f,0xff,0x33}; one.red=247; one.green=251; one.blue=107; one.alpha=0xff; WMInitializeApplication("DrawWin", &argc, argv); display = XOpenDisplay(""); screen = WMCreateScreen(display, DefaultScreen(display)); win = WMCreateWindow(screen, ""); WMResizeWidget(win, WINWIDTH, WINHEIGHT); WMSetWindowCloseAction(win, closeAction, NULL); WMSetWindowTitle(win,"Graphics"); color = WMCreateRGBColor(screen,124<<9,206<<8,162<<8, False); WMSetWidgetBackgroundColor((WMWidget *)win, color); /* end setup main window */ image=RCreateImage( 100,100,0.5); RFillImage(image, &two); RDrawLine(image, 50,10,90,90,&one); RDrawLine(image, 10,90,50,10,&one); RDrawLine(image, 10,90,90,90,&one); g3=WMColorGC(screen->gray); XSetLineAttributes(display,g3,3,LineSolid,CapButt,JoinMiter); pict.segments[1].x1= pict.segments[0].x1=HOFF; pict.segments[0].x2=HOFF; pict.segments[0].y1=VOFF; pict.segments[1].y2= pict.segments[0].y2=VOFF; pict.segments[1].x2= HOFF+10; pict.segments[1].y1=VOFF+10; pict.seglen=2; for (i=9;i>0;i--){ j=2*(10-i); pict.segments[j+1].x1= pict.segments[j].x1=HOFF; pict.segments[j+1].y2= pict.segments[j].y2=VOFF; pict.segments[j].x2= i+pict.segments[j-1].x2; pict.segments[j].y1=i+pict.segments[j-1].y1; pict.segments[j+1].x2= i+pict.segments[j].x2; pict.segments[j+1].y1=i+pict.segments[j].y1; pict.seglen+=2; }; WMRealizeWidget(win); pict.dwin=W_VIEW_DRAWABLE(WMWidgetView(win)); pixmap=WMCreatePixmapFromRImage(screen, image,1); WMCreateEventHandler(WMWidgetView(win), ExposureMask,drawProcedure,&pict); WMMapWidget(win); WMScreenMainLoop(screen); }
void testGradientButtons(WMScreen * scr) { WMWindow *win; WMButton *btn; WMPixmap *pix1, *pix2; RImage *back; RColor light, dark; WMColor *color, *altColor; windowCount++; /* creates the top-level window */ win = WMCreateWindow(scr, "testGradientButtons"); WMSetWindowTitle(win, "Gradiented Button Demo"); WMResizeWidget(win, 300, 200); WMSetWindowCloseAction(win, closeAction, NULL); light.red = 0x90; light.green = 0x85; light.blue = 0x90; dark.red = 0x35; dark.green = 0x30; dark.blue = 0x35; color = WMCreateRGBColor(scr, 0x5900, 0x5100, 0x5900, True); WMSetWidgetBackgroundColor(win, color); WMReleaseColor(color); back = RRenderGradient(60, 24, &dark, &light, RGRD_DIAGONAL); RBevelImage(back, RBEV_RAISED2); pix1 = WMCreatePixmapFromRImage(scr, back, 0); RReleaseImage(back); back = RRenderGradient(60, 24, &dark, &light, RGRD_DIAGONAL); RBevelImage(back, RBEV_SUNKEN); pix2 = WMCreatePixmapFromRImage(scr, back, 0); RReleaseImage(back); color = WMWhiteColor(scr); altColor = WMCreateNamedColor(scr, "red", True); btn = WMCreateButton(win, WBTMomentaryChange); WMResizeWidget(btn, 60, 24); WMMoveWidget(btn, 20, 100); WMSetButtonBordered(btn, False); WMSetButtonImagePosition(btn, WIPOverlaps); WMSetButtonImage(btn, pix1); WMSetButtonAltImage(btn, pix2); WMSetButtonText(btn, "Cool"); WMSetButtonTextColor(btn, color); WMSetButtonAltTextColor(btn, altColor); WMSetBalloonTextForView("This is a cool button", WMWidgetView(btn)); btn = WMCreateButton(win, WBTMomentaryChange); WMResizeWidget(btn, 60, 24); WMMoveWidget(btn, 90, 100); WMSetButtonBordered(btn, False); WMSetButtonImagePosition(btn, WIPOverlaps); WMSetButtonImage(btn, pix1); WMSetButtonAltImage(btn, pix2); WMSetButtonText(btn, "Button"); WMSetButtonTextColor(btn, color); WMSetBalloonTextForView("Este é outro balão.", WMWidgetView(btn)); WMReleaseColor(color); color = WMCreateNamedColor(scr, "orange", True); btn = WMCreateButton(win, WBTMomentaryChange); WMResizeWidget(btn, 60, 24); WMMoveWidget(btn, 160, 100); WMSetButtonBordered(btn, False); WMSetButtonImagePosition(btn, WIPOverlaps); WMSetButtonImage(btn, pix1); WMSetButtonAltImage(btn, pix2); WMSetButtonText(btn, "Test"); WMSetButtonTextColor(btn, color); WMSetBalloonTextForView("This is yet another button.\nBut the balloon has 3 lines.\nYay!", WMWidgetView(btn)); WMReleaseColor(color); WMReleaseColor(altColor); WMRealizeWidget(win); WMMapSubwidgets(win); WMMapWidget(win); }
int main(int argc, char **argv) { Display *dpy; WMScreen *scr; int x, y, i; WMInitializeApplication("Puzzle", &argc, argv); dpy = XOpenDisplay(""); if (!dpy) { printf("could not open display\n"); exit(1); } scr = WMCreateScreen(dpy, DefaultScreen(dpy)); win = WMCreateWindow(scr, "puzzle"); WMResizeWidget(win, WinSize, WinSize); WMSetWindowTitle(win, "zuPzel"); WMSetWindowMinSize(win, 80, 80); WMSetWindowAspectRatio(win, 2, 2, 2, 2); WMSetWindowResizeIncrements(win, Size, Size); WMSetViewNotifySizeChanges(WMWidgetView(win), True); WMAddNotificationObserver(resizeObserver, NULL, WMViewSizeDidChangeNotification, WMWidgetView(win)); for (i = y = 0; y < Size && i < Size*Size-1; y++) { for (x = 0; x < Size && i < Size*Size-1; x++) { char buf[32]; WMColor *color; RColor col; RHSVColor hsv; hsv.hue = i*360/(Size*Size-1); hsv.saturation = 120; hsv.value = 200; RHSVtoRGB(&hsv, &col); color = WMCreateRGBColor(scr, col.red<<8, col.green<<8, col.blue<<8, False); MAP(x,y) = i; Button[i] = WMCreateButton(win, WBTMomentaryLight); WMSetWidgetBackgroundColor(Button[i], color); WMReleaseColor(color); WMSetButtonAction(Button[i], buttonClick, (void*)i); WMResizeWidget(Button[i], WinSize/Size, WinSize/Size); WMMoveWidget(Button[i], x*(WinSize/Size), y*(WinSize/Size)); sprintf(buf, "%i", i+1); WMSetButtonText(Button[i], buf); WMSetButtonTextAlignment(Button[i], WACenter); i++; } } WMMapSubwidgets(win); WMMapWidget(win); WMRealizeWidget(win); ResetGame(); WMScreenMainLoop(scr); return 0; }
static void createPanel(Panel *p) { _Panel *panel = (_Panel*)p; WMScreen *scr = WMWidgetScreen(panel->parent); WMTabViewItem *tab; panel->white = WMWhiteColor(scr); panel->black = WMBlackColor(scr); panel->gray = WMGrayColor(scr); panel->red = WMCreateRGBColor(scr, 0xffff, 0, 0, True); panel->font = WMSystemFontOfSize(scr, 12); panel->box = WMCreateBox(panel->parent); WMSetViewExpandsToParent(WMWidgetView(panel->box), 2, 2, 2, 2); panel->tabv = WMCreateTabView(panel->box); WMMoveWidget(panel->tabv, 12, 10); WMResizeWidget(panel->tabv, 500, 215); /* icon path */ panel->icoF = WMCreateFrame(panel->box); WMSetFrameRelief(panel->icoF, WRFlat); WMResizeWidget(panel->icoF, 230, 210); tab = WMCreateTabViewItemWithIdentifier(0); WMSetTabViewItemView(tab, WMWidgetView(panel->icoF)); WMAddItemInTabView(panel->tabv, tab); WMSetTabViewItemLabel(tab, _("Icon Search Paths")); panel->icoL = WMCreateList(panel->icoF); WMResizeWidget(panel->icoL, 480, 147); WMMoveWidget(panel->icoL, 10, 10); WMSetListUserDrawProc(panel->icoL, paintItem); WMHangData(panel->icoL, panel); panel->icoaB = WMCreateCommandButton(panel->icoF); WMResizeWidget(panel->icoaB, 95, 24); WMMoveWidget(panel->icoaB, 293, 165); WMSetButtonText(panel->icoaB, _("Add")); WMSetButtonAction(panel->icoaB, browseForFile, panel); WMSetButtonImagePosition(panel->icoaB, WIPRight); panel->icorB = WMCreateCommandButton(panel->icoF); WMResizeWidget(panel->icorB, 95, 24); WMMoveWidget(panel->icorB, 395, 165); WMSetButtonText(panel->icorB, _("Remove")); WMSetButtonAction(panel->icorB, pushButton, panel); WMMapSubwidgets(panel->icoF); /* pixmap path */ panel->pixF = WMCreateFrame(panel->box); WMSetFrameRelief(panel->pixF, WRFlat); WMResizeWidget(panel->pixF, 230, 210); tab = WMCreateTabViewItemWithIdentifier(0); WMSetTabViewItemView(tab, WMWidgetView(panel->pixF)); WMAddItemInTabView(panel->tabv, tab); WMSetTabViewItemLabel(tab, _("Pixmap Search Paths")); panel->pixL = WMCreateList(panel->pixF); WMResizeWidget(panel->pixL, 480, 147); WMMoveWidget(panel->pixL, 10, 10); WMSetListUserDrawProc(panel->pixL, paintItem); WMHangData(panel->pixL, panel); panel->pixaB = WMCreateCommandButton(panel->pixF); WMResizeWidget(panel->pixaB, 95, 24); WMMoveWidget(panel->pixaB, 293, 165); WMSetButtonText(panel->pixaB, _("Add")); WMSetButtonAction(panel->pixaB, browseForFile, panel); WMSetButtonImagePosition(panel->pixaB, WIPRight); panel->pixrB = WMCreateCommandButton(panel->pixF); WMResizeWidget(panel->pixrB, 95, 24); WMMoveWidget(panel->pixrB, 395, 165); WMSetButtonText(panel->pixrB, _("Remove")); WMSetButtonAction(panel->pixrB, pushButton, panel); WMMapSubwidgets(panel->pixF); WMRealizeWidget(panel->box); WMMapSubwidgets(panel->box); showData(panel); }