⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dialogs.cpp

📁 guide and some example with visualC++
💻 CPP
📖 第 1 页 / 共 2 页
字号:
//    snprintf( title, 100, "%d", camera);        cvvInitSystem(0, 0);    /* Creating main dialog window */    vf->dialog = XtVaAppCreateShell( title, "video", topLevelShellWidgetClass,                                XtDisplay( /*(void*)*/cvvTopLevelWidget ),                                XtNminWidth, 10, XtNminHeight, 10,                                XtNinput, 1, 0 );    /* Creating main paned window... It will parent for all smaller elements */    vf->paned = XtVaCreateManagedWidget( "CvVisual_paned", panedWidgetClass, vf->dialog,                                     0 );    /* Resolution elements */    vf->label_res = XtVaCreateManagedWidget( "resolution", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNlabel, "camera resolution",                                     XtNjustify, XtJustifyCenter, 0 );    vf->paned_res = XtVaCreateManagedWidget( "resolution_res", panedWidgetClass, vf->paned,                                         XtNshowGrip, False,                                         XtNorientation, XtorientHorizontal,                                         0 );        sprintf( title, "%dx%d", vf->descr.minwidth, vf->descr.minheight );    vf->res_min = XtVaCreateManagedWidget( "res min", toggleWidgetClass, vf->paned_res,                                       XtNlabel, title,                                       XtNshowGrip, False,                                       XtNradioData, &select_res,                                       0 );    XtAddCallback( vf->res_min, "callback", (XtCallbackProc)on_min, vf );    vf->min_w = vf->descr.minwidth;    vf->min_h = vf->descr.minheight;    vf->res_middle = XtVaCreateManagedWidget( "res middle", toggleWidgetClass, vf->paned_res,                                       XtNlabel, "320x240",                                       XtNshowGrip, False,                                       XtNradioData, &select_res,                                       XtNradioGroup, vf->res_min,                                       0 );    XtAddCallback( vf->res_middle, "callback", (XtCallbackProc)on_mid, vf );    vf->mid_w = 320;    vf->mid_h = 240;    sprintf( title, "%dx%d", vf->descr.maxwidth, vf->descr.maxheight );    vf->res_max = XtVaCreateManagedWidget( "res max", toggleWidgetClass, vf->paned_res,                                       XtNlabel, title,                                       XtNshowGrip, False,                                       XtNradioData, &select_res,                                       XtNradioGroup, vf->res_min,                                       0 );    XtAddCallback( vf->res_max, "callback", (XtCallbackProc)on_max, vf );    vf->max_w = vf->descr.maxwidth;    vf->max_h = vf->descr.maxheight;    /* Video format elements */    vf->label_format = XtVaCreateManagedWidget( "format", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNlabel, "data format",                                     XtNjustify, XtJustifyCenter, 0 );    vf->paned_format = XtVaCreateManagedWidget( "format", panedWidgetClass, vf->paned,                                         XtNshowGrip, False,                                         XtNorientation, XtorientHorizontal,                                         0 );    vf->format_24 = XtVaCreateManagedWidget( "bpp24", toggleWidgetClass, vf->paned_format,                                         XtNlabel, "RGB24",                                         XtNshowGrip, False,                                         XtNradioData, &select_format,                                         0 );    XtAddCallback( vf->format_24, "callback", (XtCallbackProc)on_24, vf );    vf->format_32 = XtVaCreateManagedWidget( "bpp32", toggleWidgetClass, vf->paned_format,                                       XtNlabel, "RGB32",                                       XtNshowGrip, False,                                       XtNradioData, &select_format,                                       XtNradioGroup, vf->format_24,                                       0 );    XtAddCallback( vf->format_32, "callback", (XtCallbackProc)on_32, vf );    vf->format_yuv420p = XtVaCreateManagedWidget( "yuv420p", toggleWidgetClass, vf->paned_format,                                         XtNlabel, "YUV420P",                                         XtNshowGrip, False,                                         XtNradioData, &select_format,                                         XtNradioGroup, vf->format_24,                                         0 );    XtAddCallback( vf->format_yuv420p, "callback", (XtCallbackProc)on_yuv420p, vf );    /* Brightness, contrast, color & hue elements */    /* brightness */    vf->label_brightness = XtVaCreateManagedWidget( "brigthness", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNlabel, "brigthness",                                     XtNjustify, XtJustifyCenter, 0 );    vf->brightness_w = XtVaCreateManagedWidget( "brigthness", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNjustify, XtJustifyCenter, 0 );    vf->br.w = vf->brightness_w;    vf->br_w = XtVaCreateManagedWidget( "br", scrollbarWidgetClass, vf->paned,                                  XtNshowGrip, False,                                  XtNorientation, XtorientHorizontal, 0 );    XtAddCallback( vf->br_w, "jumpProc", (XtCallbackProc)on_track, &vf->br );    /* contrast */    vf->label_contrast = XtVaCreateManagedWidget( "contrast", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNlabel, "contrast",                                     XtNjustify, XtJustifyCenter, 0 );    vf->contrast_w = XtVaCreateManagedWidget( "brigthness", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNjustify, XtJustifyCenter, 0 );    vf->con.w = vf->contrast_w;    vf->con_w = XtVaCreateManagedWidget( "con", scrollbarWidgetClass, vf->paned,                                  XtNshowGrip, False,                                  XtNorientation, XtorientHorizontal, 0 );    XtAddCallback( vf->con_w, "jumpProc", (XtCallbackProc)on_track, &vf->con );    /* colour */    vf->label_color = XtVaCreateManagedWidget( "color", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNlabel, "color",                                     XtNjustify, XtJustifyCenter, 0 );    vf->color_w = XtVaCreateManagedWidget( "brigthness", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNjustify, XtJustifyCenter, 0 );    vf->col.w = vf->color_w;    vf->col_w = XtVaCreateManagedWidget( "col", scrollbarWidgetClass, vf->paned,                                  XtNshowGrip, False,                                  XtNorientation, XtorientHorizontal, 0 );    XtAddCallback( vf->col_w, "jumpProc", (XtCallbackProc)on_track, &vf->col );    /* hue */    vf->label_hue = XtVaCreateManagedWidget( "hue", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNlabel, "hue",                                     XtNjustify, XtJustifyCenter, 0 );    vf->hue_w = XtVaCreateManagedWidget( "brigthness", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNjustify, XtJustifyCenter, 0 );    vf->hue.w = vf->hue_w;    vf->h_w = XtVaCreateManagedWidget( "h", scrollbarWidgetClass, vf->paned,                                  XtNshowGrip, False,                                  XtNorientation, XtorientHorizontal, 0 );    XtAddCallback( vf->h_w, "jumpProc", (XtCallbackProc)on_track, &vf->hue );    updatevalues(vf);    /* Buttons */    vf->buttons = XtVaCreateManagedWidget( "buttons", panedWidgetClass, vf->paned,                                         XtNshowGrip, False,                                         XtNorientation, XtorientHorizontal,                                         0 );    vf->b_ok = XtVaCreateManagedWidget( "b_ok", toggleWidgetClass, vf->buttons,                                       XtNlabel, "Ok",                                       XtNshowGrip, False,                                       XtNstate, False,                                       0 );    XtAddCallback( vf->b_ok, XtNcallback, (XtCallbackProc)on_ok, (void*)vf );    vf->b_apply = XtVaCreateManagedWidget( "b_apply", toggleWidgetClass, vf->buttons,                                       XtNlabel, "Apply",                                       XtNshowGrip, False,                                       XtNstate, False,                                       0 );    XtAddCallback( vf->b_apply, XtNcallback, (XtCallbackProc)on_apply, (void*)vf );    vf->b_cancel = XtVaCreateManagedWidget( "b_cancel", toggleWidgetClass, vf->buttons,                                       XtNlabel, "Cancel",                                       XtNshowGrip, False,                                       XtNstate, False,                                       0 );    XtAddCallback( vf->b_cancel, XtNcallback, (XtCallbackProc)on_cancel, (void*)vf );    vf->n = camera;    XtRealizeWidget( vf->dialog );    {        /* fixating window size */        int width = 10;        int height = 10;        XtVaGetValues( vf->dialog, XtNwidth, &width, XtNheight, &height, 0 );        XtVaSetValues( vf->dialog, XtNminWidth, width, XtNminHeight, height,                               XtNmaxWidth, width, XtNmaxHeight, height, 0 );    }}////////////////////////////////////////////////////////////////////////////////static void on_enable( Widget w, CameraWidget* data ){    int status = 1;    XtVaGetValues( w, XtNstate, &status, 0 );    data->enable = status;}static void on_render( Widget w, CameraWidget* data ){    int status = 1;    XtVaGetValues( w, XtNstate, &status, 0 );    data->render = status;}static void on_cam_apply( Widget w, CameraWidget* data ){    cvcamSetProperty( data->n, "enable", &data->enable );    cvcamSetProperty( data->n, "render", &data->render );    XtVaSetValues( w, XtNstate, False, 0 );}static void on_cam_cancel( Widget w, CameraWidget* data ){    XtDestroyWidget( data->dialog );    free( data );}static void on_cam_ok( Widget w, CameraWidget* data ){    on_cam_apply( w, data );    on_cam_cancel( w, data );}void icvVideoCameraPPDialog(int camera){    int    res;    char title[100];    CameraWidget* vf = (CameraWidget*)malloc( sizeof(*vf) );    cvcamGetProperty(camera, "description", &vf->descr);    snprintf( title, 100, "%s, %s (%s): Camera options", vf->descr.device, vf->descr.DeviceDescription, vf->descr.ChannelDescription );        cvvInitSystem(0, 0);    /* Creating main dialog window */    vf->dialog = XtVaAppCreateShell( title, "camera", topLevelShellWidgetClass,                                XtDisplay( cvvTopLevelWidget ),                                XtNminWidth, 10, XtNminHeight, 10,                                XtNinput, 1, 0 );    /* Creating main paned window... It will parent for all smaller elements */    vf->paned = XtVaCreateManagedWidget( "CvCamera_paned", panedWidgetClass, vf->dialog,                                     0 );    /* Resolution elements */    sprintf( title, "%s on %s", vf->descr.DeviceDescription, vf->descr.device );    vf->label = XtVaCreateManagedWidget( "desriprion", labelWidgetClass, vf->paned,                                     XtNshowGrip, False,                                     XtNlabel, title,                                     XtNjustify, XtJustifyCenter, 0 );    cvcamGetProperty(camera, "enable", &res);    vf->enable_w = XtVaCreateManagedWidget( "enable", toggleWidgetClass, vf->paned,                                      XtNlabel, "enable",                                      XtNshowGrip, False,                                      XtNradioData, &select_res,                                      XtNstate, res,                                      0 );    XtAddCallback( vf->enable_w, "callback", (XtCallbackProc)on_enable, vf );    cvcamGetProperty(camera, "render", &res);    vf->render_w = XtVaCreateManagedWidget( "render", toggleWidgetClass, vf->paned,                                      XtNlabel, "render",                                      XtNshowGrip, False,                                      XtNradioData, &select_res,                                      XtNstate, res,                                      0 );    XtAddCallback( vf->render_w, "callback", (XtCallbackProc)on_render, vf );    /* Buttons */    vf->buttons = XtVaCreateManagedWidget( "buttons", panedWidgetClass, vf->paned,                                         XtNshowGrip, False,                                         XtNorientation, XtorientHorizontal,                                         0 );    vf->b_ok = XtVaCreateManagedWidget( "b_ok", toggleWidgetClass, vf->buttons,                                     XtNlabel, "Ok",                                     XtNshowGrip, False,                                     XtNstate, False,                                     0 );    XtAddCallback( vf->b_ok, XtNcallback, (XtCallbackProc)on_cam_ok, (void*)vf );    vf->b_apply = XtVaCreateManagedWidget( "b_apply", toggleWidgetClass, vf->buttons,                                       XtNlabel, "Apply",                                       XtNshowGrip, False,                                       XtNstate, False,                                       0 );    XtAddCallback( vf->b_apply, XtNcallback, (XtCallbackProc)on_cam_apply, (void*)vf );    vf->b_cancel = XtVaCreateManagedWidget( "b_cancel", toggleWidgetClass, vf->buttons,                                         XtNlabel, "Cancel",                                         XtNshowGrip, False,                                         XtNstate, False,                                         0 );    XtAddCallback( vf->b_cancel, XtNcallback, (XtCallbackProc)on_cam_cancel, (void*)vf );    XtRealizeWidget( vf->dialog );        vf->n = camera;    {        /* fixating window size */        int width = 10;        int height = 10;        XtVaGetValues( vf->dialog, XtNwidth, &width, XtNheight, &height, 0 );        XtVaSetValues( vf->dialog, XtNminWidth, width, XtNminHeight, height,                               XtNmaxWidth, width, XtNmaxHeight, height, 0 );    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -