Changeset e63e74a in mainline for uspace/app/taskbar/tbsmenu.c
- Timestamp:
- 2024-02-21T20:26:35Z (12 months ago)
- Branches:
- master
- Children:
- 95e2967
- Parents:
- 5f3188b8
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/taskbar/tbsmenu.c
r5f3188b8 re63e74a 129 129 tbarcfg_t *tbcfg = NULL; 130 130 smenu_entry_t *sme; 131 bool separator; 131 132 const char *caption; 132 133 const char *cmd; … … 140 141 sme = tbarcfg_smenu_first(tbcfg); 141 142 while (sme != NULL) { 142 caption = smenu_entry_get_caption(sme); 143 cmd = smenu_entry_get_cmd(sme); 144 terminal = smenu_entry_get_terminal(sme); 145 146 rc = tbsmenu_add(tbsmenu, caption, cmd, terminal, &tentry); 147 if (rc != EOK) 148 goto error; 143 separator = smenu_entry_get_separator(sme); 144 if (separator == false) { 145 caption = smenu_entry_get_caption(sme); 146 cmd = smenu_entry_get_cmd(sme); 147 terminal = smenu_entry_get_terminal(sme); 148 149 rc = tbsmenu_add(tbsmenu, caption, cmd, terminal, 150 &tentry); 151 if (rc != EOK) 152 goto error; 153 } else { 154 rc = tbsmenu_add_sep(tbsmenu, &tentry); 155 if (rc != EOK) 156 goto error; 157 } 149 158 150 159 (void)tentry; … … 272 281 if (entry->cmd != NULL) 273 282 free(entry->cmd); 283 free(entry); 284 return rc; 285 } 286 287 /** Add separator entry to start menu. 288 * 289 * @param tbsmenu Start menu 290 * @param entry Start menu entry 291 * @return @c EOK on success or an error code 292 */ 293 errno_t tbsmenu_add_sep(tbsmenu_t *tbsmenu, tbsmenu_entry_t **rentry) 294 { 295 errno_t rc; 296 tbsmenu_entry_t *entry; 297 298 entry = calloc(1, sizeof(tbsmenu_entry_t)); 299 if (entry == NULL) 300 return ENOMEM; 301 302 rc = ui_menu_entry_sep_create(tbsmenu->smenu, &entry->mentry); 303 if (rc != EOK) 304 goto error; 305 306 ui_menu_entry_set_cb(entry->mentry, tbsmenu_smenu_entry_cb, 307 (void *)entry); 308 309 entry->tbsmenu = tbsmenu; 310 list_append(&entry->lentries, &tbsmenu->entries); 311 *rentry = entry; 312 return EOK; 313 error: 274 314 free(entry); 275 315 return rc;
Note:
See TracChangeset
for help on using the changeset viewer.