您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ window_addButton函数代码示例

51自学网 2021-06-03 09:57:38
  C++
这篇教程C++ window_addButton函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中window_addButton函数的典型用法代码示例。如果您正苦于以下问题:C++ window_addButton函数的具体用法?C++ window_addButton怎么用?C++ window_addButton使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了window_addButton函数的27个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: opt_keybinds

/** * @brief Opens the keybindings menu. */static void opt_keybinds( unsigned int wid ){   int w, h, lw, bw, bh;   /* Get dimensions. */   menuKeybinds_getDim( wid, &w, &h, &lw, NULL, &bw, &bh );   /* Close button. */   window_addButton( wid, -20, 20, bw, bh,         "btnClose", "Close", opt_close );   /* Set button. */   window_addButton( wid, -20 - bw - 20, 20, bw, bh,         "btnSet", "Set Key", opt_setKey );   /* Restore deafaults button. */   window_addButton( wid, -20, 20+bh+20, bw, bh,         "btnDefaults", "Defaults", opt_keyDefaults );   /* Text stuff. */   window_addText( wid, 20+lw+20, -40, w-(20+lw+20), 30, 1, "txtName",         NULL, &cDConsole, NULL );   window_addText( wid, 20+lw+20, -90, w-(20+lw+20), h-70-60-bh,         0, "txtDesc", &gl_smallFont, NULL, NULL );   /* Generate the list. */   menuKeybinds_genList( wid );}
开发者ID:Anatolis,项目名称:naev,代码行数:29,


示例2: menu_death

/** * @brief Player death menu, appears when player got creamed. */void menu_death (void){   unsigned int wid;      wid = window_create( "Death", -1, -1, DEATH_WIDTH, DEATH_HEIGHT );   /* Propose the player to continue if the samegame exist, if not, propose to restart */   char path[PATH_MAX];   snprintf(path, PATH_MAX, "%ssaves/%s.ns", nfile_basePath(), player_name);   if (nfile_fileExists(path))      window_addButton( wid, 20, 20 + BUTTON_HEIGHT*2 + 20*2, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnContinue", "Continue", menu_death_continue );   else      window_addButton( wid, 20, 20 + BUTTON_HEIGHT*2 + 20*2, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnRestart", "Restart", menu_death_restart );   window_addButton( wid, 20, 20 + (BUTTON_HEIGHT+20),         BUTTON_WIDTH, BUTTON_HEIGHT,         "btnMain", "Main Menu", menu_death_main );   window_addButton( wid, 20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnExit", "Exit Game", menu_exit );   menu_Open(MENU_DEATH);   /* Makes it all look cooler since everything still goes on. */   unpause_game();}
开发者ID:Arakash,项目名称:naev,代码行数:29,


示例3: menu_small

/** * @brief Opens the small ingame menu. */void menu_small (void){   unsigned int wid;   /* Check if menu should be openable. */   if ((player == NULL) || player_isFlag(PLAYER_DESTROYED) ||         pilot_isFlag(player,PILOT_DEAD) ||         comm_isOpen() ||         dialogue_isOpen() || /* Shouldn't open over dialogues. */         (menu_isOpen(MENU_MAIN) ||            menu_isOpen(MENU_SMALL) ||            menu_isOpen(MENU_DEATH) ))      return;   wid = window_create( "Menu", -1, -1, MENU_WIDTH, MENU_HEIGHT );   window_setCancel( wid, menu_small_close );   window_addButton( wid, 20, 20 + BUTTON_HEIGHT*2 + 20*2,         BUTTON_WIDTH, BUTTON_HEIGHT,         "btnResume", "Resume", menu_small_close );   window_addButton( wid, 20, 20 + BUTTON_HEIGHT + 20,         BUTTON_WIDTH, BUTTON_HEIGHT,         "btnOptions", "Options", menu_options_button );   window_addButton( wid, 20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,          "btnExit", "Exit", menu_small_exit );   menu_Open(MENU_SMALL);}
开发者ID:Arakash,项目名称:naev,代码行数:32,


示例4: commodity_exchange_open

/** * @brief Opens the local market window. */static void commodity_exchange_open( unsigned int wid ){   int i, ngoods;   char **goods;   int w, h;   /* Get window dimensions. */   window_dimWindow( wid, &w, &h );   /* buttons */   window_addButton( wid, -20, 20,         LAND_BUTTON_WIDTH, LAND_BUTTON_HEIGHT, "btnCommodityClose",         "Takeoff", land_buttonTakeoff );   window_addButton( wid, -40-((LAND_BUTTON_WIDTH-20)/2), 20*2 + LAND_BUTTON_HEIGHT,         (LAND_BUTTON_WIDTH-20)/2, LAND_BUTTON_HEIGHT, "btnCommodityBuy",         "Buy", commodity_buy );   window_addButton( wid, -20, 20*2 + LAND_BUTTON_HEIGHT,         (LAND_BUTTON_WIDTH-20)/2, LAND_BUTTON_HEIGHT, "btnCommoditySell",         "Sell", commodity_sell );      /* cust draws the modifier */   window_addCust( wid, -40-((LAND_BUTTON_WIDTH-20)/2), 60+ 2*LAND_BUTTON_HEIGHT,         (LAND_BUTTON_WIDTH-20)/2, LAND_BUTTON_HEIGHT, "cstMod", 0, commodity_renderMod, NULL, NULL );   /* text */   window_addText( wid, -20, -40, LAND_BUTTON_WIDTH, 60, 0,         "txtSInfo", &gl_smallFont, &cDConsole,         "You have:/n"         "Market price:/n"         "/n"         "Free Space:/n" );   window_addText( wid, -20, -40, LAND_BUTTON_WIDTH/2, 60, 0,         "txtDInfo", &gl_smallFont, &cBlack, NULL );   window_addText( wid, -40, -120, LAND_BUTTON_WIDTH-20,         h-140-LAND_BUTTON_HEIGHT, 0,         "txtDesc", &gl_smallFont, &cBlack, NULL );   /* goods list */   if (land_planet->ncommodities > 0) {      goods = malloc(sizeof(char*) * land_planet->ncommodities);      for (i=0; i<land_planet->ncommodities; i++)         goods[i] = strdup(land_planet->commodities[i]->name);      ngoods = land_planet->ncommodities;   }   else {      goods    = malloc( sizeof(char*) );      goods[0] = strdup("None");      ngoods   = 1;   }   window_addList( wid, 20, -40,         w-LAND_BUTTON_WIDTH-60, h-80-LAND_BUTTON_HEIGHT,         "lstGoods", goods, ngoods, 0, commodity_update );   /* update */   commodity_update(wid, NULL);}
开发者ID:Dinth,项目名称:naev,代码行数:59,


示例5: comm_openPilot

/** * @brief Opens the communication dialogue with a pilot. * *    @param pilot Pilot to communicate with. *    @return 0 on success. */int comm_openPilot( unsigned int pilot ){   const char *msg;   unsigned int wid;   /* Get the pilot. */   comm_pilot = pilot_get( pilot );   if (comm_pilot == NULL)      return -1;     /* Must not be disabled. */   if (pilot_isFlag(comm_pilot, PILOT_DISABLED)) {      player_message("%s does not respond.", comm_pilot->name);      return 0;   }   /* Check to see if pilot wants to communicate. */   msg = comm_getString( "comm_no" );      if (msg != NULL) {      player_message( msg );      return 0;   }   /* Set up for the comm_get* functions. */   ai_setPilot( comm_pilot );   /* Create the generic comm window. */   wid = comm_open( ship_loadCommGFX( comm_pilot->ship ),         comm_pilot->faction,         pilot_isHostile(comm_pilot) ? -1 : pilot_isFriendly(comm_pilot) ? 1 : 0,         pilot_isFlag(comm_pilot, PILOT_BRIBED),         comm_pilot->name );   /* Add special buttons. */   window_addButton( wid, -20, 20 + BUTTON_HEIGHT + 20,         BUTTON_WIDTH, BUTTON_HEIGHT, "btnGreet", "Greet", NULL );   if (!pilot_isFlag(comm_pilot, PILOT_BRIBED) && /* Not already bribed. */         ((faction_getPlayer( comm_pilot->faction ) < 0) || /* Hostile. */            pilot_isHostile(comm_pilot)))      window_addButton( wid, -20, 20 + 2*BUTTON_HEIGHT + 40,            BUTTON_WIDTH, BUTTON_HEIGHT, "btnBribe", "Bribe", comm_bribePilot );   else      window_addButton( wid, -20, 20 + 2*BUTTON_HEIGHT + 40,            BUTTON_WIDTH, BUTTON_HEIGHT, "btnRequest",            "Refuel", comm_requestFuel );   /* Run hooks if needed. */   pilot_runHook( comm_pilot, PILOT_HOOK_HAIL );   return 0;}
开发者ID:zid,项目名称:naev,代码行数:57,


示例6: menu_options

/** * @brief Opens the options menu. */void menu_options (void){   unsigned int wid;   wid = window_create( "Options", -1, -1, OPTIONS_WIDTH, OPTIONS_HEIGHT );   window_addButton( wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnClose", "Close", menu_options_close );   window_addButton( wid, -20 - (BUTTON_WIDTH+20), 20,         BUTTON_WIDTH, BUTTON_HEIGHT,         "btnKeybinds", "Keybindings", menu_options_keybinds );   window_addButton( wid, -20 - 2 * (BUTTON_WIDTH+20), 20,         BUTTON_WIDTH, BUTTON_HEIGHT,         "btnAudio", "Audio", menu_options_audio );   menu_Open(MENU_OPTIONS);}
开发者ID:zid,项目名称:naev,代码行数:18,


示例7: menu_death

/** * @brief Player death menu, appears when player got creamed. */void menu_death (void){   unsigned int wid;      wid = window_create( "Death", -1, -1, DEATH_WIDTH, DEATH_HEIGHT );   window_addButton( wid, 20, 20 + (BUTTON_HEIGHT+20),         BUTTON_WIDTH, BUTTON_HEIGHT,         "btnMain", "Main Menu", menu_death_main );   window_addButton( wid, 20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnExit", "Exit Game", (void(*)(unsigned int, char*)) exit_game );   menu_Open(MENU_DEATH);   /* Makes it all look cooler since everything still goes on. */   unpause_game();}
开发者ID:pegue,项目名称:naev,代码行数:18,


示例8: info_setGui

/** * @brief Allows the player to set a different GUI. * *    @param wid Window id. *    @param name of widget. */static void info_setGui( unsigned int wid, char* str ){   (void)str;   int i;   char **guis;   int nguis;   char **gui_copy;   /* Get the available GUIs. */   guis = player_guiList( &nguis );   /* In case there are none. */   if (guis == NULL) {      WARN("No GUI available.");      dialogue_alert( "There are no GUI available, this means something went wrong somewhere. Inform the Naev maintainer." );      return;   }   /* window */   wid = window_create( "Select GUI", -1, -1, SETGUI_WIDTH, SETGUI_HEIGHT );   window_setCancel( wid, setgui_close );   /* Copy GUI. */   gui_copy = malloc( sizeof(char*) * nguis );   for (i=0; i<nguis; i++)      gui_copy[i] = strdup( guis[i] );   /* List */   window_addList( wid, 20, -50,         SETGUI_WIDTH-BUTTON_WIDTH/2 - 60, SETGUI_HEIGHT-110,         "lstGUI", gui_copy, nguis, 0, NULL );   toolkit_setList( wid, "lstGUI", gui_pick() );   /* buttons */   window_addButton( wid, -20, 20, BUTTON_WIDTH/2, BUTTON_HEIGHT,         "btnBack", "Cancel", setgui_close );   window_addButton( wid, -20, 30 + BUTTON_HEIGHT, BUTTON_WIDTH/2, BUTTON_HEIGHT,         "btnLoad", "Load", setgui_load );   /* Checkboxes */   window_addCheckbox( wid, 20, 20,         BUTTON_WIDTH, BUTTON_HEIGHT, "chkOverride", "Override GUI",         info_toggleGuiOverride, player.guiOverride );   info_toggleGuiOverride( wid, "chkOverride" );   /* default action */   window_setAccept( wid, setgui_load );}
开发者ID:Jazzkovsky,项目名称:naev,代码行数:54,


示例9: opt_menuAudio

/** * @brief Opens the audio settings menu. */void opt_menuAudio (void){   unsigned int wid;   /* Create the window. */   wid = window_create( "Audio", -1, -1, AUDIO_WIDTH, AUDIO_HEIGHT );   /* Sound fader. */   if (!sound_disabled) {      window_addFader( wid, 20, -40, 160, 20, "fadSound", 0., 1.,            sound_getVolume(), opt_setSFXLevel );      window_addText( wid, 200, -40, AUDIO_WIDTH-220, 20, 1, "txtSound",            NULL, NULL, "Sound Volume" );   }   else      window_addText( wid, 200, -40, AUDIO_WIDTH-220, 20, 1, "txtSound",            NULL, NULL, "Sound Disabled" );   /* Music fader. */   if (!music_disabled) {      window_addFader( wid, 20, -80, 160, 20, "fadMusic", 0., 1.,            music_getVolume(), opt_setMusicLevel );      window_addText( wid, 200, -80, AUDIO_WIDTH-220, 20, 1, "txtMusic",            NULL, NULL, "Music Volume" );   }   else      window_addText( wid, 200, -80, AUDIO_WIDTH-220, 20, 1, "txtMusic",            NULL, NULL, "Music Disabled" );   /* Close button */   window_addButton( wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnClose", "Close", window_close );}
开发者ID:zid,项目名称:naev,代码行数:36,


示例10: cli_open

/** * @brief Opens the console. */void cli_open (void){   unsigned int wid;   /* Lazy loading. */   if (cli_state == NULL)      if (cli_init())         return;   /* Must not be already open. */   if (window_exists( "Lua Console" ))      return;   /* Create the window. */   wid = window_create( "Lua Console", -1, -1, cli_width, cli_height );   /* Window settings. */   window_setAccept( wid, cli_input );   window_setCancel( wid, window_close );   window_handleKeys( wid, cli_keyhandler );   /* Input box. */   window_addInput( wid, 20, 20,         cli_width-60-BUTTON_WIDTH, BUTTON_HEIGHT,         "inpInput", LINE_LENGTH, 1 );   /* Buttons. */   window_addButton( wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnClose", "Close", window_close );   /* Custom console widget. */   window_addCust( wid, 20, -40,         cli_width-40, cli_height-80-BUTTON_HEIGHT,         "cstConsole", 0, cli_render, NULL );}
开发者ID:pegue,项目名称:naev,代码行数:38,


示例11: info_openWeapons

/** * @brief Opens the weapons window. */static void info_openWeapons( unsigned int wid ){   int w, h;   /* Get the dimensions. */   window_dimWindow( wid, &w, &h );   /* Buttons */   window_addButton( wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "closeCargo", "Close", info_close );   /* Checkboxes. */   window_addCheckbox( wid, 220, 20+2*(BUTTON_HEIGHT+20)-40, 250, BUTTON_HEIGHT,         "chkAutoweap", "Automatically handle weapons", weapons_autoweap, player.p->autoweap );   window_addCheckbox( wid, 220, 20+2*(BUTTON_HEIGHT+20)-10, 300, BUTTON_HEIGHT,         "chkFire", "Enable instant mode (only for weapons)", weapons_fire,         (pilot_weapSetTypeCheck( player.p, info_eq_weaps.weapons )==WEAPSET_TYPE_WEAPON) );   window_addCheckbox( wid, 220, 20+2*(BUTTON_HEIGHT+20)+20, 300, BUTTON_HEIGHT,         "chkInrange", "Only shoot weapons that are in range", weapons_inrange,         pilot_weapSetInrangeCheck( player.p, info_eq_weaps.weapons ) );   /* Custom widget. */   equipment_slotWidget( wid, 20, -40, 180, h-60, &info_eq_weaps );   info_eq_weaps.selected  = player.p;   info_eq_weaps.canmodify = 0;   /* Custom widget for legend. */   window_addCust( wid, 220, -220, w-200-60, 100, "cstLegend", 0,         weapons_renderLegend, NULL, NULL );   /* List. */   weapons_genList( wid );}
开发者ID:Jazzkovsky,项目名称:naev,代码行数:36,


示例12: info_licenses_menu

/** * @brief Opens the licenses menu. */static void info_licenses_menu( unsigned int parent, char* str ){   (void) str;   unsigned int wid;   char **licenses;   int nlicenses;   int i;   char **buf;   /* Create window */   wid = window_create( "Licenses", -1, -1, LICENSES_WIDTH, LICENSES_HEIGHT );   window_setParent( wid, parent );   /* List. */   buf = player_getLicenses( &nlicenses );   licenses = malloc(sizeof(char*)*nlicenses);   for (i=0; i<nlicenses; i++)      licenses[i] = strdup(buf[i]);   window_addList( wid, 20, -40, LICENSES_WIDTH-40, LICENSES_HEIGHT-80-BUTTON_HEIGHT,         "lstLicenses", licenses, nlicenses, 0, NULL );   /* Buttons */   window_addButton( wid, -20, 20,         BUTTON_WIDTH, BUTTON_HEIGHT,         "closeLicenses", "Close", window_close );}
开发者ID:pegue,项目名称:naev,代码行数:29,


示例13: land_checkAddRefuel

/** * @brief Checks if should add the refuel button and does if needed. */void land_checkAddRefuel (void){   char buf[ECON_CRED_STRLEN], cred[ECON_CRED_STRLEN];   unsigned int w;   /* Check to see if fuel conditions are met. */   if (!planet_hasService(land_planet, PLANET_SERVICE_REFUEL)) {      if (!widget_exists( land_windows[0], "txtRefuel" ))         window_addText( land_windows[0], -20, 20 + (LAND_BUTTON_HEIGHT + 20) + 20,                  200, gl_defFont.h, 1, "txtRefuel",                  &gl_defFont, &cBlack, "No refueling services." );      return;   }   /* Full fuel. */   if (player.p->fuel >= player.p->fuel_max) {      if (widget_exists( land_windows[0], "btnRefuel" ))         window_destroyWidget( land_windows[0], "btnRefuel" );      if (widget_exists( land_windows[0], "txtRefuel" ))         window_destroyWidget( land_windows[0], "txtRefuel" );      return;   }   /* Autorefuel. */   if (conf.autorefuel) {      spaceport_refuel( land_windows[0], "btnRefuel" );      w = land_getWid( LAND_WINDOW_EQUIPMENT );      if (w > 0)         equipment_updateShips( w, NULL ); /* Must update counter. */      if (player.p->fuel >= player.p->fuel_max)         return;   }   /* Just enable button if it exists. */   if (widget_exists( land_windows[0], "btnRefuel" )) {      window_enableButton( land_windows[0], "btnRefuel");      credits2str( cred, player.p->credits, 2 );      snprintf( buf, sizeof(buf), "Credits: %s", cred );      window_modifyText( land_windows[0], "txtRefuel", buf );   }   /* Else create it. */   else {      /* Refuel button. */      credits2str( cred, refuel_price(), 2 );      snprintf( buf, sizeof(buf), "Refuel %s", cred );      window_addButton( land_windows[0], -20, 20 + (LAND_BUTTON_HEIGHT + 20),            LAND_BUTTON_WIDTH,LAND_BUTTON_HEIGHT, "btnRefuel",            buf, spaceport_refuel );      /* Player credits. */      credits2str( cred, player.p->credits, 2 );      snprintf( buf, sizeof(buf), "Credits: %s", cred );      window_addText( land_windows[0], -20, 20 + 2*(LAND_BUTTON_HEIGHT + 20),            LAND_BUTTON_WIDTH, gl_smallFont.h, 1, "txtRefuel",            &gl_smallFont, &cBlack, buf );   }   /* Make sure player can click it. */   if (!player_hasCredits( refuel_price() ))      window_disableButton( land_windows[0], "btnRefuel" );}
开发者ID:Dinth,项目名称:naev,代码行数:63,


示例14: dialogue_alert

/** * @brief Displays an alert popup with only an ok button and a message. * *    @param fmt Printf style message to display. */void dialogue_alert( const char *fmt, ... ){   char msg[512];   va_list ap;   unsigned int wdw;   int h, done;   if (fmt == NULL) return;   else { /* get the message */      va_start(ap, fmt);      vsnprintf(msg, 512, fmt, ap);      va_end(ap);   }   h = gl_printHeightRaw( &gl_smallFont, 260, msg );   /* create the window */   wdw = window_create( "Warning", -1, -1, 300, 90 + h );   window_setData( wdw, &done );   window_addText( wdw, 20, -30, 260, h,  0, "txtAlert",         &gl_smallFont, &cBlack, msg );   window_addButton( wdw, 135, 20, 50, 30, "btnOK", "OK",         dialogue_close );   dialogue_open++;   toolkit_loop( &done );}
开发者ID:Superkoop,项目名称:naev,代码行数:32,


示例15: misn_open

/** * @brief Opens the mission computer window. */static void misn_open( unsigned int wid ){   int w, h;   int y;   /* Get window dimensions. */   window_dimWindow( wid, &w, &h );   /* Set window functions. */   window_onClose( wid, misn_close );   /* buttons */   window_addButton( wid, -20, 20,         LAND_BUTTON_WIDTH,LAND_BUTTON_HEIGHT, "btnCloseMission",         "Takeoff", land_buttonTakeoff );   window_addButton( wid, -20, 40+LAND_BUTTON_HEIGHT,         LAND_BUTTON_WIDTH,LAND_BUTTON_HEIGHT, "btnAcceptMission",         "Accept Mission", misn_accept );   /* text */   y = -60;   window_addText( wid, w/2 + 10, y,         w/2 - 30, 40, 0,         "txtSDate", NULL, &cDConsole,         "Date:/n"         "Free Space:");   window_addText( wid, w/2 + 110, y,         w/2 - 90, 40, 0,         "txtDate", NULL, &cBlack, NULL );   y -= 2 * gl_defFont.h + 50;   window_addText( wid, w/2 + 10, y,         w/2 - 30, 20, 0,         "txtSReward", &gl_smallFont, &cDConsole, "Reward:" );   window_addText( wid, w/2 + 70, y,         w/2 - 90, 20, 0,         "txtReward", &gl_smallFont, &cBlack, NULL );   y -= 20;   window_addText( wid, w/2 + 10, y,         w/2 - 30, h/2-90, 0,         "txtDesc", &gl_smallFont, &cBlack, NULL );   /* map */   map_show( wid, 20, 20,         w/2 - 30, h/2 - 35, 0.75 );   misn_genList(wid, 1);}
开发者ID:Dinth,项目名称:naev,代码行数:50,


示例16: info_openMain

/** * @brief Opens the main info window. */static void info_openMain( unsigned int wid ){   char str[128], **buf, creds[ECON_CRED_STRLEN];   char **licenses;   int nlicenses;   int i;   char *nt;   int w, h;   /* Get the dimensions. */   window_dimWindow( wid, &w, &h );   /* pilot generics */   nt = ntime_pretty( ntime_get(), 2 );   window_addText( wid, 40, 20, 120, h-80,         0, "txtDPilot", &gl_smallFont, &cDConsole,         "Pilot:/n"         "Date:/n"         "Combat Rating:/n"         "/n"         "Money:/n"         "Ship:/n"         "Fuel:"         );   credits2str( creds, player.p->credits, 2 );   snprintf( str, 128,         "%s/n"         "%s/n"         "%s/n"         "/n"         "%s Credits/n"         "%s/n"         "%.0f (%d Jumps)",         player.name,         nt,         player_rating(),         creds,         player.p->name,         player.p->fuel, pilot_getJumps(player.p) );   window_addText( wid, 140, 20,         200, h-80,         0, "txtPilot", &gl_smallFont, &cBlack, str );   free(nt);   /* menu */   window_addButton( wid, -20, 20,         BUTTON_WIDTH, BUTTON_HEIGHT,         "btnClose", "Close", info_close );   /* List. */   buf = player_getLicenses( &nlicenses );   licenses = malloc(sizeof(char*)*nlicenses);   for (i=0; i<nlicenses; i++)      licenses[i] = strdup(buf[i]);   window_addText( wid, -20, -40, w-80-200-40, 20, 1, "txtList",         NULL, &cDConsole, "Licenses" );   window_addList( wid, -20, -70, w-80-200-40, h-110-BUTTON_HEIGHT,         "lstLicenses", licenses, nlicenses, 0, NULL );}
开发者ID:AvanWolf,项目名称:naev,代码行数:62,


示例17: load_game_menu

/** * @brief Opens the load game menu. */void load_game_menu (void){   unsigned int wid;   char **files;   int nfiles, i, len;   /* window */   wid = window_create( "Load Game", -1, -1, LOAD_WIDTH, LOAD_HEIGHT );   window_setCancel( wid, load_menu_close );   /* load the saves */   files = nfile_readDir( &nfiles, "%ssaves", nfile_basePath() );   for (i=0; i<nfiles; i++) {      len = strlen(files[i]);      /* no save extension */      if ((len < 5) || strcmp(&files[i][len-3],".ns")) {         free(files[i]);         memmove( &files[i], &files[i+1], sizeof(char*) * (nfiles-i-1) );         nfiles--;         i--;      }      else /* remove the extension */         files[i][len-3] = '/0';   }   /* case there are no files */   if (files == NULL) {      files = malloc(sizeof(char*));      files[0] = strdup("None");      nfiles = 1;   }   window_addList( wid, 20, -50,         LOAD_WIDTH-BUTTON_WIDTH-50, LOAD_HEIGHT-110,         "lstSaves", files, nfiles, 0, NULL );   /* buttons */   window_addButton( wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnBack", "Back", load_menu_close );   window_addButton( wid, -20, 30 + BUTTON_HEIGHT, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnLoad", "Load", load_menu_load );   window_addButton( wid, 20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "btnDelete", "Del", load_menu_delete );   /* default action */   window_setAccept( wid, load_menu_load );}
开发者ID:isfos,项目名称:naev,代码行数:49,


示例18: dialogue_inputRaw

/** * @brief Creates a dialogue that allows the player to write a message. * * You must free the result if it's not null. * *    @param title Title of the dialogue window. *    @param min Minimum length of the message (must be non-zero). *    @param max Maximum length of the message (must be non-zero). *    @param msg Message to be displayed. *    @return The message the player typed or NULL if it was cancelled. */char* dialogue_inputRaw( const char* title, int min, int max, const char *msg ){   char *input;   int h, done;   /* get text height */   h = gl_printHeightRaw( &gl_smallFont, 200, msg );   /* create window */   input_dialogue.input_wid = window_create( title, -1, -1, 240, h+140 );   window_setData( input_dialogue.input_wid, &done );   window_setAccept( input_dialogue.input_wid, dialogue_inputClose );   window_setCancel( input_dialogue.input_wid, dialogue_cancel );   /* text */   window_addText( input_dialogue.input_wid, 30, -30, 200, h,  0, "txtInput",         &gl_smallFont, &cDConsole, msg );   /* input */   window_addInput( input_dialogue.input_wid, 20, -50-h, 200, 20, "inpInput", max, 1, NULL );   window_setInputFilter( input_dialogue.input_wid, "inpInput", "/" ); /* Remove illegal stuff. */   /* button */   window_addButton( input_dialogue.input_wid, -20, 20, 80, 30,         "btnClose", "Done", dialogue_inputClose );   /* tricky secondary loop */   dialogue_open++;   done  = 0;   input = NULL;   while ((done >= 0) && (!input ||         ((int)strlen(input) < min))) { /* must be longer than min */      if (input) {         dialogue_alert( "Input must be at least %d character%s long!",               min, (min==1) ? "s" : "" );         free(input);         input = NULL;      }      if (toolkit_loop( &done ) != 0) /* error in loop -> quit */         return NULL;      /* save the input */      if (done < 0)         input = NULL;      else         input = strdup( window_getInput( input_dialogue.input_wid,	                                  "inpInput" ) );   }   /* cleanup */   if (input != NULL) {      window_destroy( input_dialogue.input_wid );      dialogue_open--;   }   input_dialogue.input_wid = 0;   /* return the result */   return input;}
开发者ID:Superkoop,项目名称:naev,代码行数:69,


示例19: info_cargo_menu

/** * @brief Shows the player his cargo. * *    @param str Unused. */static void info_cargo_menu( unsigned int parent, char* str ){   (void) str;   unsigned int wid;   char **buf;   int nbuf;   int i;   /* Create the window */   wid = window_create( "Cargo", -1, -1, CARGO_WIDTH, CARGO_HEIGHT );   window_setParent( wid, parent );   /* Buttons */   window_addButton( wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "closeCargo", "Back", window_close );   window_addButton( wid, -40 - BUTTON_WIDTH, 20,         BUTTON_WIDTH, BUTTON_HEIGHT, "btnJettisonCargo", "Jettison",         cargo_jettison );   window_disableButton( wid, "btnJettisonCargo" );   /* List */   if (player->ncommodities==0) {      /* No cargo */      buf = malloc(sizeof(char*));      buf[0] = strdup("None");      nbuf = 1;   }   else {      /* List the player's cargo */      buf = malloc(sizeof(char*)*player->ncommodities);      for (i=0; i<player->ncommodities; i++) {         buf[i] = malloc(sizeof(char)*128);         snprintf(buf[i],128, "%s%s %d",               player->commodities[i].commodity->name,               (player->commodities[i].id != 0) ? "*" : "",               player->commodities[i].quantity);      }      nbuf = player->ncommodities;   }   window_addList( wid, 20, -40,         CARGO_WIDTH - 40, CARGO_HEIGHT - BUTTON_HEIGHT - 80,         "lstCargo", buf, nbuf, 0, cargo_update );   cargo_update(wid, NULL);}
开发者ID:pegue,项目名称:naev,代码行数:50,


示例20: info_openCargo

/** * @brief Shows the player his cargo. * *    @param str Unused. */static void info_openCargo( unsigned int wid ){   int w, h;   /* Get the dimensions. */   window_dimWindow( wid, &w, &h );   /* Buttons */   window_addButton( wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "closeCargo", "Close", info_close );   window_addButton( wid, -40 - BUTTON_WIDTH, 20,         BUTTON_WIDTH, BUTTON_HEIGHT, "btnJettisonCargo", "Jettison",         cargo_jettison );   window_disableButton( wid, "btnJettisonCargo" );   /* Generate the list. */   cargo_genList( wid );}
开发者ID:Jazzkovsky,项目名称:naev,代码行数:23,


示例21: bar_open

/** * @brief Opens the spaceport bar window. */static void bar_open( unsigned int wid ){   int w, h, iw, ih, bw, bh, dh, th;   /* Set window functions. */   window_onClose( wid, bar_close );   /* Get dimensions. */   bar_getDim( wid, &w, &h, &iw, &ih, &bw, &bh );   dh = gl_printHeightRaw( &gl_smallFont, w - iw - 60, land_planet->bar_description );   /* Buttons */   window_addButton( wid, -20, 20,         bw, bh, "btnCloseBar",         "Takeoff", land_buttonTakeoff );   window_addButton( wid, -20 - bw - 20, 20,         bw, bh, "btnApproach",         "Approach", bar_approach );   /* Bar description. */   window_addText( wid, iw + 40, -40,         w - iw - 60, dh, 0,         "txtDescription", &gl_smallFont, &cBlack,         land_planet->bar_description );   /* Add portrait text. */   th = -40 - dh - 40;   window_addText( wid, iw + 40, th,         w - iw - 60, gl_defFont.h, 1,         "txtPortrait", &gl_defFont, &cDConsole, NULL );   /* Add mission description text. */   th -= 20 + PORTRAIT_HEIGHT + 20 + 20;   window_addText( wid, iw + 60, th,         w - iw - 100, h + th - (2*bh+60), 0,         "txtMission", &gl_smallFont, &cBlack, NULL );   /* Generate the mission list. */   bar_genList( wid );}
开发者ID:Dinth,项目名称:naev,代码行数:43,


示例22: opt_setKey

/** * @brief Rebinds a key. */static void opt_setKey( unsigned int wid, char *str ){    (void) wid;    (void) str;    unsigned int new_wid;    int w, h;    /* Reset key. */    opt_lastKeyPress = 0;    /* Create new window. */    w = 20 + 2*(BUTTON_WIDTH + 20);    h = 20 + BUTTON_HEIGHT + 20 + 20 + 80 + 40;    new_wid = window_create( "Set Keybinding", -1, -1, w, h );    window_handleEvents( new_wid, opt_setKeyEvent );    window_setParent( new_wid, wid );    /* Set text. */    window_addText( new_wid, 20, -40, w-40, 60, 0, "txtInfo",                    &gl_smallFont, &cBlack,                    "To use a modifier key hit that key twice in a row, otherwise it "                    "will register as a modifier. To set with any modifier click the checkbox." );    /* Create button to cancel. */    window_addButton( new_wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,                      "btnCancel", "Cancel", window_close );    /* Button to unset. */    window_addButton( new_wid,  20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,                      "btnUnset",  "Unset", opt_unsetKey );    /* Checkbox to set any modifier. */    window_addCheckbox( new_wid, -20, 20 + BUTTON_HEIGHT + 20, w-40, 20,                        "chkAny", "Set any modifier", NULL, 0 );}
开发者ID:isfos,项目名称:naev,代码行数:39,


示例23: dialogue_addChoice

/** * @brief Add a choice to the dialog. * *    @param caption Caption to use for the dialogue (for sizing). *    @param msg Message to display (for sizing). *    @param *opt The value of the option. */void dialogue_addChoice( const char *caption, const char *msg, const char *opt){   int w,h;   if (choice_nopts < 1)      return;   dialogue_getSize( caption, msg, &w, &h );   /* buttons. Add one for each option in the menu. */   window_addButton( choice_wid, w/2-125, choice_nopts*40, 250, 30, (char *) opt,         (char *) opt, dialogue_choiceClose );   choice_nopts --;}
开发者ID:Superkoop,项目名称:naev,代码行数:22,


示例24: info_openShip

/** * @brief Shows the player what outfits he has. * *    @param str Unused. */static void info_openShip( unsigned int wid ){   int w, h;   /* Get the dimensions. */   window_dimWindow( wid, &w, &h );   /* Buttons */   window_addButton( wid, -20, 20,         BUTTON_WIDTH, BUTTON_HEIGHT,         "closeOutfits", _("Close"), info_close );   /* Text. */   window_addText( wid, 40, -60, 100, h-60, 0, "txtSDesc", &gl_smallFont,         &cDConsole,         _("Name:/n"         "Model:/n"         "Class:/n"         "Crew:/n"         "/n"         "Total CPU:/n"         "Mass:/n"         "Jump Time:/n"         "Thrust:/n"         "Speed:/n"         "Turn:/n"         "/n"         "Absorption:/n"         "Shield:/n"         "Armour:/n"         "Energy:/n"         "Cargo Space:/n"         "Fuel:/n"         "/n"         "Stats:/n")         );   window_addText( wid, 140, -60, w-300., h-60, 0, "txtDDesc", &gl_smallFont,         &cBlack, NULL );   /* Custom widget. */   equipment_slotWidget( wid, -20, -40, 180, h-60, &info_eq );   info_eq.selected  = player.p;   info_eq.canmodify = 0;   /* Update ship. */   ship_update( wid );}
开发者ID:nenau,项目名称:naev,代码行数:52,


示例25: land_createMainTab

/** * @brief Creates the main tab. * *    @param wid Window to create main tab. */static void land_createMainTab( unsigned int wid ){   glTexture *logo;   int offset;   int w,h;   /* Get window dimensions. */   window_dimWindow( wid, &w, &h );   /*    * Faction logo.    */   offset = 20;   if (land_planet->faction != -1) {      logo = faction_logoSmall(land_planet->faction);      if (logo != NULL) {         window_addImage( wid, 440 + (w-460-logo->w)/2, -20,               0, 0, "imgFaction", logo, 0 );         offset = 84;      }   }   /*    * Pretty display.    */   window_addImage( wid, 20, -40, 0, 0, "imgPlanet", gfx_exterior, 1 );   window_addText( wid, 440, -20-offset,         w-460, h-20-offset-60-LAND_BUTTON_HEIGHT*2, 0,         "txtPlanetDesc", &gl_smallFont, &cBlack, land_planet->description);   /*    * buttons    */   /* first column */   window_addButton( wid, -20, 20,         LAND_BUTTON_WIDTH, LAND_BUTTON_HEIGHT, "btnTakeoff",         "Takeoff", land_buttonTakeoff );   /*    * Checkboxes.    */   window_addCheckbox( wid, -20, 20 + 2*(LAND_BUTTON_HEIGHT + 20) + 40,         175, 20, "chkRefuel", "Automatic Refuel",         land_toggleRefuel, conf.autorefuel );   land_toggleRefuel( wid, "chkRefuel" );}
开发者ID:Dinth,项目名称:naev,代码行数:51,


示例26: info_openStandings

/** * @brief Displays the player's standings. */static void info_openStandings( unsigned int wid ){   int i;   int n, m;   char **str;   int w, h, lw;   /* Get dimensions. */   info_getDim( wid, &w, &h, &lw );   /* On close. */   window_onClose( wid, standings_close );   /* Buttons */   window_addButton( wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT,         "closeMissions", "Close", info_close );   /* Graphics. */   window_addImage( wid, 0, 0, 0, 0, "imgLogo", NULL, 0 );   /* Text. */   window_addText( wid, lw+40, 0, (w-(lw+60)), 20, 1, "txtName",         &gl_defFont, &cDConsole, NULL );   window_addText( wid, lw+40, 0, (w-(lw+60)), 20, 1, "txtStanding",         &gl_smallFont, &cBlack, NULL );   /* Gets the faction standings. */   info_factions  = faction_getAll( &n );   str            = malloc( sizeof(char*) * n );   /* Create list. */   for (i=0; i<n; i++) {      str[i] = malloc( 256 );      m = round( faction_getPlayer( info_factions[i] ) );      snprintf( str[i], 256, "%s   [ %+d%% ]",            faction_name( info_factions[i] ), m );   }   /* Display list. */   window_addList( wid, 20, -40, lw, h-60,         "lstStandings", str, n, 0, standings_update );   standings_update( wid , NULL );}
开发者ID:AvanWolf,项目名称:naev,代码行数:47,


示例27: dialogue_msgRaw

/** * @brief Opens a dialogue window with an ok button and a fixed message. * *    @param caption Window title. *    @param msg Message to display. */void dialogue_msgRaw( const char* caption, const char *msg ){   int w,h;   glFont* font;   unsigned int msg_wid;   int done;   font = dialogue_getSize( caption, msg, &w, &h );   /* create the window */   msg_wid = window_create( caption, -1, -1, w, 110 + h );   window_setData( msg_wid, &done );   window_addText( msg_wid, 20, -40, w-40, h,  0, "txtMsg",         font, &cBlack, msg );   window_addButton( msg_wid, (w-50)/2, 20, 50, 30, "btnOK", "OK",         dialogue_close );   dialogue_open++;   toolkit_loop( &done );}
开发者ID:Superkoop,项目名称:naev,代码行数:26,



注:本文中的window_addButton函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ window_addText函数代码示例
C++ windowTitle函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。