//------------------------------------------------------------------------------ // Name: createMenu // Desc: //------------------------------------------------------------------------------ QMenu *QGmailNotifier::createMenu() { QMenu *const menu = new QMenu(this); QAction *const view = menu->addAction(tr("View Inbox"), this, SLOT(doView())); menu->addAction(tr("Compose a Message"), this, SLOT(doCompose())); menu->addAction(tr("Check Mail Now"), this, SLOT(doCheck())); menu->addAction(tr("Tell me Again..."), this, SLOT(doTell())); menu->addAction(tr("Options"), this, SLOT(doOptions())); menu->addAction(tr("About"), this, SLOT(doAbout())); if(currentMails_.size() != 0) { menu->addSeparator(); QMenu *const convsations = menu->addMenu(tr("Unread Conversations")); QSettings settings; const int maxCons = settings.value("max_conversations", 10).value<int>(); int index = 0; Q_FOREACH(GMailEntry entry, currentMails_) { QAction *const action = convsations->addAction(entry.author_name + " : " + entry.title, this, SLOT(readConversation())); action->setData(index++); if(index >= maxCons) { break; } }
void fileViewCb(Widget w, XtPointer client_data, XtPointer call_data) { FileWindowRec *fw = (FileWindowRec *) client_data; int item; XtVaGetValues(fw->form, XmNuserData, (XtPointer) &item, NULL); doView(fw->directory, fw->files[item]->name); }
void fileOpenCb(Widget w, XEvent *event, String *params, Cardinal *num_params) { FileWindowRec *fw; FileRec *file; int item; char path[MAXPATHLEN]; String *argv, push_action; if (!(fw = findFileWidget(w, &item))) return; zzz(); file = fw->files[item]; strcpy(path, fw->directory); if (path[strlen(path)-1] != '/') strcat(path, "/"); strcat(path, file->name); if (S_ISDIR(file->stats.st_mode)) { contractPath(path); chFileDir(fw, path); } else if (file->stats.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)) { String arguments = XtNewString(file->name); String action = (String) XtMalloc((strlen(path) + 6) * sizeof(char)); strcat(strcpy(action, "exec "), path); argv = makeArgv(action, 1, &arguments); executeApplication(user.shell, fw->directory, argv); XTFREE(action); freeArgv(argv); } else if (file->type) { if (*(push_action = file->type->push_action)) { if (!(strcmp(push_action, "EDIT"))) doEdit(fw->directory, file->name); else if (!(strcmp(push_action, "VIEW"))) doView(fw->directory, file->name); else if (!(strcmp(push_action, "LOAD"))) { zzz(); newApplicationWindow(path, NULL); wakeUp(); } else { argv = (String *) XtMalloc(sizeof(String)); argv[0] = XtNewString(file->name); performAction(fw->shell, file->type->icon_pm.bm, push_action, fw->directory, 1, argv); XTFREE(argv); } } } else doEdit(fw->directory, file->name); wakeUp(); }
/*---------------------------------------------------------------------------*/ void fileExecAction(Widget w, XEvent *event, String *params, Cardinal *num_params) { int i; FileWindowRec *fw; char **argv; i = findWidget(w, &fw); if (i == -1 || !fw) { /* error("Internal error:","widget not found in fileExecAction"); */ return; } if (fw->files[i]->type) { if (*fw->files[i]->type->push_action) if (!strcmp(fw->files[i]->type->push_action, "EDIT")) doEdit(fw->directory, fw->files[i]->name); else if (!strcmp(fw->files[i]->type->push_action, "VIEW")) doView(fw->directory, fw->files[i]->name); else if (!strcmp(fw->files[i]->type->push_action, "IMAGE")) doImage(fw->directory, fw->files[i]->name); else if (!strcmp(fw->files[i]->type->push_action, "SIAGHELP")) doSiaghelp(fw->directory, fw->files[i]->name); else { int k = 0; char *action = varPopup(fw->files[i]->type->icon_bm, fw->files[i]->type->push_action); if (!action) return; argv = (char **) XtMalloc( (user.arg0flag ? 6 : 5) * sizeof(char *)); argv[k++] = user.shell; argv[k++] = "-c"; argv[k++] = action; if (user.arg0flag) argv[k++] = user.shell; argv[k++] = fw->files[i]->name; argv[k] = NULL; executeApplication(user.shell, fw->directory, argv); XTFREE(argv); } } else doEdit(fw->directory, fw->files[i]->name); }
static void iconFileViewCb(Widget w, XtPointer client_data, XtPointer call_data) { AppRec *app = &((DTIconRec *) client_data)->app; char path[MAXPATHLEN]; if (app->directory[0]) { strcpy(path, app->directory); fnexpand(path); } else strcpy(path, user.home); doView(path, app->fname); }
void BoxContainerItem::mouseButtonPressed(Qt::ButtonState state) { int button; if(state & Qt::LeftButton) button = 0; else if(state & Qt::RightButton) button = 2; else if(state & Qt::MidButton) button = 1; else return; //Invalid mouse button if(_recheckSettings[ button ]) doRecheck(); if(_resetSettings[ button ]) doReset(); if(_viewSettings[ button ]) doView(); if(_runSettings[ button ]) runCommand(); if(_popupSettings[ button ]) doPopup(); }
void BoxContainerItem::view() { doView(); }