static void handleSubviewResized(void *self, WMNotification * notif) { WMSplitView *sPtr = (WMSplitView *) self; CHECK_CLASS(sPtr, WC_SplitView); if (WMGetNotificationName(notif) == WMViewSizeDidChangeNotification) { W_SplitViewSubview *p; int i, count, done; WMView *view = WMGetNotificationObject(notif); count = _GetSubviewsCount(); done = 0; for (i = 0; i < count; i++) { p = _GetPSubviewStructAt(i); if (p->view == view) { done = 1; break; } } if (done) { /* TODO !!! */ resizeView(sPtr, p->view, p->size); moveView(sPtr, p->view, p->pos); } } }
void MainWindow::downloadList() { QSettings settings; QString oldVersion = settings.value("updates/version", "0.0").toString(); delete _model; _model = new BamModel; ui->addonList->setModel(_model); //_model->downloadList(QUrl("http://127.0.0.1:8000/bam/addon_pack/" + oldVersion + "/")); _model->downloadList(QUrl("http://hh.unit22.org/bam/addon_pack/" + oldVersion + "/")); connect(_model, SIGNAL(xmlProcessed()), this, SLOT(resizeView())); connect(ui->addonList ,SIGNAL(clicked(QModelIndex)), _model, SLOT(setCheckBox(QModelIndex)), Qt::UniqueConnection ); connect(ui->install, SIGNAL(clicked()), _model, SLOT(installChecked())); connect(_model, SIGNAL(newVersionFound(bool, QString, QString)), this, SLOT(setNewVersionInfo(bool, QString, QString))); connect(_model, SIGNAL(totalFilesSizeChanged(int)), this, SLOT(setTotalFilesSize(int))); connect(_model, SIGNAL(runGame()), this, SLOT(runGame())); }
static void updateSubviewsGeom(WMSplitView * sPtr) { int i, count; W_SplitViewSubview *p; count = _GetSubviewsCount(); for (i = 0; i < count; i++) { p = _GetPSubviewStructAt(i); resizeView(sPtr, p->view, p->size); moveView(sPtr, p->view, p->pos); } }
void TopLevel::prevPage() { if(!thispage) return; if (thispage->prev) { thispage = thispage->prev; newPage(); resizeView(); putImage(); } updateGoActions(); }
void TopLevel::nextPage() { if(!thispage) return; if (thispage->next) { thispage = thispage->next; newPage(); resizeView(); putImage(); } updateGoActions(); }
void TopLevel::faxClose() { FreeFax(); setCaption(i18n("KFax")); // TODO replace this with unmapping the window. if(display_is_setup) XResizeWindow(qtdisplay,Win,1,1); // we want a clear gray background. resizeView(); vsb->hide(); hsb->hide(); fileURL = QString::null; updateActions(); }
void TopLevel::firstPage() { if(!thispage) return; if ( thispage->prev ) { while(thispage->prev != NULL) thispage = thispage->prev; newPage(); resizeView(); putImage(); } updateGoActions(); }
void TopLevel::lastPage() { if(!thispage) return; if ( thispage->next ) { while(thispage->next != NULL) thispage = thispage->next; newPage(); resizeView(); putImage(); } updateGoActions(); }
void TopLevel::zoom( int factor ) { if(!thispage || !Image || !faxqtwin || !display_is_setup) return; Resize = Refresh = 1; Image = generateZoomImages(factor); PaneWidth = Image->width; PaneHeight = Image->height; resizeView(); putImage(); uiUpdate(); updateZoomActions(); }
void TopLevel::openadd(QString filename) { auxpage = lastpage; loadfile(filename); if( firstpage != lastpage ) { if(auxpage->next) auxpage = auxpage->next; } // auxpage should now point to the first pagenode which was created for // the newly added fax file. have_no_fax = false; thispage = auxpage; newPage(); resizeView(); putImage(); }
void resizeViewAndAttach() { // Resize the view to make room for the inspector. resizeView(gMinimumAttachedInspectorWidth, (gMinimumAttachedInspectorHeight + 1) * 4 / 3); webkit_web_inspector_attach(m_inspector); }
static void dragDivider(WMSplitView * sPtr, int clickX, int clickY) { int divider, pos, ofs, done, dragging; int i, count; XEvent ev; WMScreen *scr; int minCoord, maxCoord, coord; if (sPtr->constrainProc) { updateConstraints(sPtr); checkSizes(sPtr); distributeOffsetFormEnd(sPtr, _GetSplitViewSize() - getTotalSize(sPtr)); checkPositions(sPtr); updateSubviewsGeom(sPtr); } scr = sPtr->view->screen; divider = ofs = pos = done = 0; coord = (sPtr->flags.vertical) ? clickX : clickY; count = _GetSubviewsCount(); if (count < 2) return; for (i = 0; i < count - 1; i++) { pos += _GetSizeAt(i) + DIVIDER_THICKNESS; if (coord < pos) { ofs = coord - pos + DIVIDER_THICKNESS; done = 1; break; } divider++; } if (!done) return; getMinMaxDividerCoord(sPtr, divider, &minCoord, &maxCoord); done = 0; dragging = 0; while (!done) { WMMaskEvent(scr->display, ButtonMotionMask | ButtonReleaseMask | ExposureMask, &ev); coord = (sPtr->flags.vertical) ? ev.xmotion.x : ev.xmotion.y; switch (ev.type) { case ButtonRelease: done = 1; if (dragging) drawDragingRectangle(sPtr, pos); break; case MotionNotify: if (dragging) drawDragingRectangle(sPtr, pos); if (coord - ofs < minCoord) pos = minCoord; else if (coord - ofs > maxCoord) pos = maxCoord; else pos = coord - ofs; drawDragingRectangle(sPtr, pos); dragging = 1; break; default: WMHandleEvent(&ev); break; } } if (dragging) { W_SplitViewSubview *p1, *p2; int totSize; p1 = _GetPSubviewStructAt(divider); p2 = _GetPSubviewStructAt(divider + 1); totSize = p1->size + DIVIDER_THICKNESS + p2->size; p1->size = pos - p1->pos; p2->size = totSize - p1->size - DIVIDER_THICKNESS; p2->pos = p1->pos + p1->size + DIVIDER_THICKNESS; resizeView(sPtr, p1->view, p1->size); moveView(sPtr, p2->view, p2->pos); resizeView(sPtr, p2->view, p2->size); sPtr->flags.subviewsWereManuallyMoved = 1; } }
// signals are protected, emitting them is therefore wrapped with such funcs void emitResizeView(int id, int wd, int ht){ emit resizeView(id,wd,ht); }
void TopLevel::handle_X_event(XEvent Event) { if(!thispage || !Image || !faxqtwin || !display_is_setup) return; bool putimage = false; // Do we actually have to write the image to the scree? do { switch(Event.type) { case MappingNotify: XRefreshKeyboardMapping((XMappingEvent *)(&Event)); break; case LeaveNotify: /* buttondown = false; XDefineCursor(qtdisplay, Win, ReadyCursor); XFlush(qtdisplay);*/ break; case Expose: { if(Event.xexpose.count != 0) break; if(!Image) break; putimage = TRUE; } break; case KeyPress: if (ExpectConfNotify && (Event.xkey.time < (Lasttime + PATIENCE))) break; Lasttime = Event.xkey.time; ExpectConfNotify = 0; switch(XKeycodeToKeysym(qtdisplay, Event.xkey.keycode, 0)) { case XK_m: mirrorPage(); if (Event.xkey.state & ShiftMask) TurnFollowing(TURN_M, thispage->next); break; case XK_o: zoomout(); break; case XK_i: zoomin(); break; case XK_Up: ypos-= qwindow_height / 3; putimage = TRUE; break; case XK_Down: ypos+= qwindow_height / 3; putimage = TRUE; break; case XK_Left: xpos-= qwindow_width / 4; putimage = TRUE; break; case XK_Right: xpos+= qwindow_width / 4; putimage = TRUE; break; case XK_Home: case XK_R7: if (Event.xkey.state & ShiftMask) { thispage = firstpage; newPage(); resizeView(); putImage(); break; } xpos= 0; ypos= 0; putImage(); break; case XK_End: case XK_R13: if (Event.xkey.state & ShiftMask) { thispage = lastpage; newPage(); resizeView(); putImage(); break; } xpos= Image->width; ypos= Image->height; putImage(); break; case XK_l: case XK_r: rotatePage(); if (Event.xkey.state & ShiftMask) TurnFollowing(TURN_L, thispage->next); break; case XK_p: case XK_minus: case XK_Prior: case XK_R9: case XK_BackSpace: prevPage(); break; case XK_n: case XK_plus: case XK_space: case XK_Next: case XK_R15: nextPage(); break; case XK_u: flipPage(); if (Event.xkey.state & ShiftMask) TurnFollowing(TURN_U, thispage->next); break; case XK_q: if (viewpage) { thispage = viewpage; viewpage = NULL; newPage(); resizeView(); putImage(); } } break; case ButtonPress: if (ExpectConfNotify && (Event.xbutton.time < (Lasttime + PATIENCE))) break; Lasttime = Event.xbutton.time; ExpectConfNotify = 0; switch (Event.xbutton.button) { case Button1: buttondown = true; switch (((Image->width > qwindow_width)<<1) | (Image->height > qwindow_height)) { case 0: break; case 1: XDefineCursor(qtdisplay, Win, UDCursor); break; case 2: XDefineCursor(qtdisplay, Win, LRCursor); break; case 3: XDefineCursor(qtdisplay, Win, MoveCursor); } XFlush(qtdisplay); offx = Event.xbutton.x; offy = Event.xbutton.y; break; } break; case MotionNotify: if(!buttondown) break; do { nx = Event.xmotion.x; ny = Event.xmotion.y; } while (XCheckTypedEvent(qtdisplay, MotionNotify, &Event)); xpos+= offx - nx; ypos+= offy - ny; offx = nx; offy = ny; putimage = TRUE; break; case ButtonRelease: if (Event.xbutton.button == Button1) { buttondown = false; XDefineCursor(qtdisplay, Win, ReadyCursor); XFlush(qtdisplay); } } } while (XCheckWindowEvent(qtdisplay, Win, KeyPressMask|ButtonPressMask, &Event)); if(putimage == TRUE) { Refresh = Resize = 1; putImage(); } }
void TopLevel::resizeEvent(QResizeEvent *e) { KMainWindow::resizeEvent(e); resizeView(); }