Exemplo n.º 1
0
void IppReportDlg::slotUser1()
{
	KPrinter	printer;
	printer.setFullPage(true);
	printer.setDocName(caption());
	if (printer.setup(this))
	{
		TQPainter	painter(&printer);
		TQPaintDeviceMetrics	metrics(&printer);

		// report is printed using TQSimpleRichText
		TQSimpleRichText	rich(m_edit->text(), font());
		rich.setWidth(&painter, metrics.width());
		int	margin = (int)(1.5 / 2.54 * metrics.logicalDpiY());	// 1.5 cm
		TQRect	r(margin, margin, metrics.width()-2*margin, metrics.height()-2*margin);
		int	hh = rich.height(), page(1);
		while (1)
		{
			rich.draw(&painter, margin, margin, r, colorGroup());
			TQString	s = caption() + ": " + TQString::number(page);
			TQRect	br = painter.fontMetrics().boundingRect(s);
			painter.drawText(r.right()-br.width()-5, r.top()-br.height()-4, br.width()+5, br.height()+4, Qt::AlignRight|Qt::AlignTop, s);
			r.moveBy(0, r.height()-10);
			painter.translate(0, -(r.height()-10));
			if (r.top() < hh)
			{
				printer.newPage();
				page++;
			}
			else
				break;
		}
	}
}
Exemplo n.º 2
0
ObjKsTheme::ObjKsTheme( const TQString& theme )
  :mActiveTheme (theme), mThemeDir("/"), mThemeConfig (0L), mThemePrefix( "Themes/" ), d(0)
{
  // Get Xinerama config.
  TDEConfig *config = kapp->config();
  config->setGroup( "Xinerama" );
  TQDesktopWidget *desktop = kapp->desktop();
  mXineramaScreen = config->readNumEntry("KSplashScreen", desktop->primaryScreen());

  // For Xinerama, let's put the mouse on the first head.  Otherwise it could appear anywhere!
  if (desktop->isVirtualDesktop() && mXineramaScreen != -2)
  {
    TQRect rect = desktop->screenGeometry( mXineramaScreen );
    if (!rect.contains(TQCursor::pos()))
      TQCursor::setPos(rect.center());
  }

  // Does the active theme exist?
  if( !loadThemeRc( mActiveTheme, false ) )
    if( !loadLocalConfig( mActiveTheme, false ) )
      if( !loadThemeRc( "Default", false ) )
        loadLocalConfig( "Default", true ); //force: we need some defaults
  loadCmdLineArgs(TDECmdLineArgs::parsedArgs());
  mThemePrefix += ( mActiveTheme + "/" );
}
Exemplo n.º 3
0
void Manager::paintEvent(TQPaintEvent *e)
{
   TQPainter p(widget());

   TQRect r(e->rect());

   bool intersectsLeft = r.intersects(TQRect(0, 0, 1, height()));

   bool intersectsRight =
      r.intersects(TQRect(width() - 1, 0, width(), height()));

   if (intersectsLeft || intersectsRight)
   {
      p.setPen(TQt::black);

      if (intersectsLeft)
         p.drawLine(0, r.top(), 0, r.bottom());

      if (intersectsRight)
         p.drawLine(width() - 1, r.top(), width() - 1, r.bottom());
   }

   Static * s = Static::instance();

   bool active = isActive();

   // Title bar.

   TQRect tr = titleSpacer_->tqgeometry();
   bitBlt(widget(), tr.topLeft(), &titleBuf_);

   // Resize bar.

   if (isResizable())
   {
      int rbt = height() - Static::instance()->resizeHeight(); // Resize bar top

      bitBlt(widget(), 0, rbt, &(s->resize(active)));
      bitBlt(widget(), 30, rbt, &(s->resizeMidLeft(active)));

      p.drawTiledPixmap(32, rbt, width() - 34,
                        Static::instance()->resizeHeight(),
                        s->resizeMidMid(active));

      bitBlt(widget(), width() - 32, rbt, &(s->resizeMidRight(active)));
      bitBlt(widget(), width() - 30, rbt, &(s->resize(active)));
   }
   else
      p.drawLine(1, height() - 1, width() - 2, height() - 1);
}
Exemplo n.º 4
0
TQWidget *KWMapEditor::beginEdit(int row, int col, bool replace) {
	//kdDebug(2300) << "EDIT COLUMN " << col << endl;
	if (col != 2) {
		return TQTable::beginEdit(row, col, replace);
	}

	TQRect geo = cellGeometry(row, col);
	TQTextEdit *e = new InlineEditor(this, row, col);
	e->setText(text(row, col));
	e->move(mapToGlobal(geo.topLeft()));
	e->resize(geo.width() * 2, geo.height() * 3);
	e->show();
	return e;
}
Exemplo n.º 5
0
bool NextClient::drawbound(const TQRect& geom, bool /* clear */)
{
    TQPainter p(workspaceWidget());
    p.setPen(TQPen(TQt::white, 3));
    p.setRasterOp(TQt::XorROP);
    p.drawRect(geom);
    int leftMargin = geom.left() + 2;
    p.fillRect(leftMargin, geom.top() + titleHeight - 1,
	    geom.width() - 4, 3, TQt::white);
    if (mustDrawHandle()) {
	p.fillRect(leftMargin, geom.bottom() - handleSize - 1,
		geom.width() - 4, 3, TQt::white);
    }	    
    return true;
}
Exemplo n.º 6
0
void NextClient::menuButtonPressed()
{
    // Probably don't need this null check, but we might as well.
    if (button[MENU_IDX]) {
	TQRect menuRect = button[MENU_IDX]->rect();
        TQPoint menuTop = button[MENU_IDX]->mapToGlobal(menuRect.topLeft());
        TQPoint menuBottom = button[MENU_IDX]->mapToGlobal(menuRect.bottomRight());
	menuTop += TQPoint(1, 1);
	menuBottom += TQPoint(1, 1);
        KDecorationFactory* f = factory();
        showWindowMenu(TQRect(menuTop, menuBottom));
        if( !f->exists( this )) // 'this' was deleted
            return;
	button[MENU_IDX]->setDown(false);
    }
}
Exemplo n.º 7
0
void NextClient::resizeEvent(TQResizeEvent *)
{
    if (widget()->isVisible()) {
	// TODO ? update border area only?
        widget()->update();
#if 0
        widget()->update(titlebar->tqgeometry());
        TQPainter p(widget());
	TQRect t = titlebar->tqgeometry();
	t.setTop( 0 );
	TQRegion r = widget()->rect();
	r = r.subtract( t );
	p.setClipRegion( r );
	p.eraseRect(widget()->rect());
#endif
    }
}
Exemplo n.º 8
0
void Manager::updateTitleBuffer()
{
   bool active = isActive();

   Static * s = Static::instance();

   TQRect tr = titleSpacer_->tqgeometry();

   if (tr.width() == 0 || tr.height() == 0)
      titleBuf_.resize(8, 8);
   else
      titleBuf_.resize(tr.size());

   TQPainter p(&titleBuf_);

   p.drawPixmap(0, 0, s->titleTextLeft(active));

   p.drawTiledPixmap(3, 0, tr.width() - 6, Static::instance()->titleHeight(),
                     s->titleTextMid(active));

   p.setPen(options()->color(KDecorationOptions::ColorFont, active));

   p.setFont(options()->font(active));

   p.drawText(4, 2, tr.width() - 8, Static::instance()->titleHeight() - 4,
              AlignCenter, caption());

   p.drawPixmap(tr.width() - 3, 0, s->titleTextRight(active));
}
Exemplo n.º 9
0
void KFileIVIDesktop::calcRect( const TQString& _text )
{
    TDEIconViewItem::calcRect( _text );

    if ( !iconView() || !m_shadow ||
         !wordWrap() || !( static_cast<KDesktopShadowSettings *>
             ( m_shadow->shadowSettings() ) )->isEnabled() )
        return;

    int spread = shadowThickness();
    TQRect itemTextRect = textRect();
    TQRect itemRect = rect();

    itemTextRect.setBottom( itemTextRect.bottom() + spread );
    itemTextRect.setRight( itemTextRect.right() + spread );
    itemRect.setBottom( itemRect.bottom() + spread );
    itemRect.setRight( itemRect.right() + spread );

    setTextRect( itemTextRect );
    setItemRect( itemRect );
}
Exemplo n.º 10
0
void KJotsEdit::print(TQString title)
{
    KPrinter printer;
    printer.setDocName(title);
    printer.setFullPage(false);
    printer.setCreator("KJots");

    if (printer.setup(this))
    {
        TQFont printFont = font();
        TQPainter painter( &printer );
        TQPaintDeviceMetrics metrics( &printer );
        int y = 0;
        int maxWidth = metrics.width();
        int maxHeight = metrics.height();
        TQString currentParagraph;

        for (int paragraphCount = 0; paragraphCount < paragraphs(); ++paragraphCount )
        {
            currentParagraph = text(paragraphCount);
            TQRect r = painter.boundingRect(0, y, maxWidth, maxHeight,
                    TQPainter::ExpandTabs | TQPainter::WordBreak,
                    currentParagraph);

            if ((y + r.height()) > maxHeight)
            {
                printer.newPage();
                y = 0;
            }

            painter.drawText(0, y, maxWidth, maxHeight - y,
                    TQPainter::ExpandTabs | TQPainter::WordBreak,
                    currentParagraph);
            y += r.height();
        }
        painter.end();
    }
}
Exemplo n.º 11
0
void
KdmRect::drawContents( TQPainter *p, const TQRect &r )
{
	// choose the correct rect class
	RectStruct::RectClass *rClass = &rect.normal;
	if (state == Sactive && rect.active.present) {
		rClass = &rect.active;
	}
	if (state == Sprelight && rect.prelight.present) {
		rClass = &rect.prelight;
	}

	if (rClass->alpha <= 0 || !rClass->color.isValid()) {
		return;
	}

	if (rClass->alpha == 1) {
		p->fillRect( area, TQBrush( rClass->color ) );
	}
	else {
// 		if (!argb_visual_available) {
			// Software blend only (no compositing support)
			TQRect backRect = r;
			backRect.moveBy( area.x(), area.y() );
			TQPixmap backPixmap( backRect.size() );
			bitBlt( &backPixmap, TQPoint( 0, 0 ), p->device(), backRect );
			TQImage backImage = backPixmap.convertToImage();
			KImageEffect::blend( rClass->color, backImage, rClass->alpha );
			p->drawImage( backRect.x(), backRect.y(), backImage );
			//  area.moveBy(1,1);
// 		}
// 		else {
// 			// We have compositing support!
// 		}
	}
}
Exemplo n.º 12
0
void EvaLVToolTip::maybeTip(const TQPoint &p)
{
	EvaListViewItem *item = dynamic_cast<EvaListViewItem *>(m_lv->itemAt(p));
	if(!item) return;

	int section = m_lv->header()->sectionAt(p.x());
	TQRect itemRect = m_lv->itemRect(item);
	TQRect headerRect = m_lv->header()->sectionRect(section);
	TQRect destRect(headerRect.left(), itemRect.top(), headerRect.width(), itemRect.height());
	
        tip(destRect, item->tip());
	
}
Exemplo n.º 13
0
void KJanusWidget::addPageWidget( TQFrame *page, const TQStringList &items,
				  const TQString &header,const TQPixmap &pixmap )
{
  connect(page, TQT_SIGNAL(destroyed(TQObject*)), TQT_SLOT(pageGone(TQObject*)));

  if( mFace == Tabbed )
  {
    mTabControl->addTab (page, items.last());
    d->mIntToPage[d->mNextPageIndex] = static_cast<TQWidget*>(page);
    d->mPageToInt[static_cast<TQWidget*>(page)] = d->mNextPageIndex;
    d->mNextPageIndex++;
  }
  else if( mFace == TreeList || mFace == IconList )
  {
    d->mIntToPage[d->mNextPageIndex] = static_cast<TQWidget*>(page);
    d->mPageToInt[static_cast<TQWidget*>(page)] = d->mNextPageIndex;
    mPageStack->addWidget( page, 0 );

    if (items.isEmpty()) {
      kdDebug() << "Invalid TQStringList, with zero items" << endl;
      return;
    }

    if( mFace == TreeList )
    {
      InsertTreeListItem(items, pixmap, page);
    }
    else // mFace == IconList
    {
      TQString itemName = items.last();
      IconListItem *item = new IconListItem( mIconList, pixmap, itemName );
      mIconListToPageStack.insert(item, page);
      mIconList->invalidateHeight();
      mIconList->invalidateWidth();

      if (mIconList->isVisible())
        mIconList->updateWidth();
    }

    //
    // Make sure the title label is sufficiently wide
    //
    TQString lastName = items.last();
    const TQString &title = (!header.isNull() ? header : lastName);
    TQRect r = mTitleLabel->fontMetrics().boundingRect( title );
    if( mTitleLabel->minimumWidth() < r.width() )
    {
      mTitleLabel->setMinimumWidth( r.width() );
    }
    d->mIntToTitle[d->mNextPageIndex] = title;
    if( d->mIntToTitle.count() == 1 )
    {
      showPage(0);
    }
    d->mNextPageIndex++;
  }
  else
  {
    kdDebug() << "KJanusWidget::addPageWidget: can only add a page in Tabbed, TreeList or IconList modes" << endl;
  }

}
Exemplo n.º 14
0
void MenuManager::kmenuAccelActivated()
{
    if (m_kmenu->isVisible())
    {
        m_kmenu->hide();
        return;
    }

    m_kmenu->initialize();

    if (m_kbuttons.isEmpty())
    {
        // no button to use, make it behave like a desktop menu
        TQPoint p;
        // Popup the K-menu at the center of the screen.
        TQDesktopWidget* desktop = TDEApplication::desktop();
        TQRect r;
        if (desktop->numScreens() < 2)
            r = desktop->geometry();
        else
            r = desktop->screenGeometry(desktop->screenNumber(TQCursor::pos()));
        // kMenu->rect() is not valid before showing, use sizeHint()
        p = r.center() - TQRect( TQPoint( 0, 0 ), m_kmenu->sizeHint()).center();
        m_kmenu->popup(p);

        // when the cursor is in the area where the menu pops up,
        // the item under the cursor gets selected. The single shot
        // avoids this from happening by allowing the item to be selected
        // when the event loop is enterred, and then resetting it.
        TQTimer::singleShot(0, this, TQT_SLOT(slotSetKMenuItemActive()));
    }
    else
    {
        // We need the kmenu's size to place it at the right position.
        // We cannot rely on the popup menu's current size(), if it wasn't
        // shown before, so we resize it here according to its sizeHint().
        const TQSize size = m_kmenu->sizeHint();
        m_kmenu->resize(size.width(),size.height());

        PanelPopupButton* button = findKButtonFor(m_kmenu->widget());

        // let's unhide the panel while we're at it. traverse the widget
        // hierarchy until we find the panel, if any
        TQObject* menuParent = button->parent();
        while (menuParent)
        {
            ExtensionContainer* ext = dynamic_cast<ExtensionContainer*>(menuParent);

            if (ext)
            {
                ext->unhideIfHidden();
                // make sure it's unhidden before we use it to figure out
                // where to popup
                tqApp->processEvents();
                break;
            }

            menuParent = menuParent->parent();
        }
        button->showMenu();
    }
}
Exemplo n.º 15
0
void NextClient::paintEvent( TQPaintEvent* )
{
    TQPainter p(widget());

    // Draw black frame
    TQRect fr = widget()->rect();
    p.setPen(TQt::black);
    p.drawRect(fr);

    // Draw title bar
    TQRect t = titlebar->tqgeometry();
    t.setTop(1);
    p.drawTiledPixmap(t.x()+1, t.y()+1, t.width()-2, t.height()-2,
                      isActive() ? *aTitlePix : *iTitlePix);
    qDrawShadePanel(&p, t.x(), t.y(), t.width(), t.height()-1,
                   options()->tqcolorGroup(KDecoration::ColorTitleBar, isActive()));
    p.drawLine(t.x(), t.bottom(), t.right(), t.bottom());

#if 0
    // Why setting up a clipping region if it is not used? (setClipping(false))
    TQRegion r = fr;
    r = r.subtract( t );
    p.setClipRegion( r );
    p.setClipping(false);
#endif

    t.setTop( 1 );
    t.setHeight(t.height()-2);
    t.setLeft( t.left() + 4 );
    t.setRight( t.right() - 2 );

    p.setPen(options()->color(KDecoration::ColorFont, isActive()));
    p.setFont(options()->font(isActive()));
    p.drawText( t, AlignCenter | AlignVCenter, caption() );

    // Draw resize handle
    if (mustDrawHandle()) {
        int corner = 16 + 3*handleSize/2;
	qDrawShadePanel(&p,
		fr.x() + 1, fr.bottom() - handleSize, corner-1, handleSize,
		options()->tqcolorGroup(KDecoration::ColorHandle, isActive()),
		false);
	p.drawTiledPixmap(fr.x() + 2, fr.bottom() - handleSize + 1,
		corner - 3, handleSize - 2, isActive() ? *aHandlePix : *iHandlePix);

	qDrawShadePanel(&p,
		fr.x() + corner, fr.bottom() - handleSize,
		fr.width() - 2*corner, handleSize,
		options()->tqcolorGroup(KDecoration::ColorFrame, isActive()),
		false);
	p.drawTiledPixmap(fr.x() + corner + 1, fr.bottom() - handleSize + 1,
		fr.width() - 2*corner - 2, handleSize - 2,
		isActive() ? *aFramePix : *iFramePix);

	qDrawShadePanel(&p,
		fr.right() - corner + 1, fr.bottom() - handleSize, corner - 1, handleSize,
		options()->tqcolorGroup(KDecoration::ColorHandle, isActive()),
		false);
	p.drawTiledPixmap(fr.right() - corner + 2, fr.bottom() - handleSize + 1,
		corner - 3, handleSize - 2, isActive() ? *aHandlePix : *iHandlePix);
    }
}
Exemplo n.º 16
0
/*
 *  Constructs a CustomFaceManagerUI as a child of 'parent', with the
 *  name 'name' and widget flags set to 'f'.
 */
CustomFaceManagerUI::CustomFaceManagerUI( TQWidget* parent, const char* name, WFlags fl )
    : TQWidget( parent, name, fl )
{
    TQImage img;
    img.loadFromData( image0_data, sizeof( image0_data ), "PNG" );
    image0 = img;
    img.loadFromData( image1_data, sizeof( image1_data ), "PNG" );
    image1 = img;
    img.loadFromData( image2_data, sizeof( image2_data ), "PNG" );
    image2 = img;
    if ( !name )
	setName( "CustomFaceManagerUI" );
    CustomFaceManagerUILayout = new TQGridLayout( this, 1, 1, 3, 0, "CustomFaceManagerUILayout"); 

    layout9 = new TQVBoxLayout( 0, 0, 6, "layout9"); 

    frame7 = new TQFrame( this, "frame7" );
    frame7->setSizePolicy( TQSizePolicy( (TQSizePolicy::SizeType)1, (TQSizePolicy::SizeType)1, 0, 0, frame7->sizePolicy().hasHeightForWidth() ) );
    frame7->setFrameShape( TQFrame::TabWidgetPanel );
    frame7->setFrameShadow( TQFrame::Raised );
    frame7Layout = new TQGridLayout( frame7, 1, 1, 2, 0, "frame7Layout"); 

    layout1 = new TQHBoxLayout( 0, 0, 6, "layout1"); 

    tbtnImport = new TQToolButton( frame7, "tbtnImport" );
    tbtnImport->setAutoRaise( TRUE );
    layout1->addWidget( tbtnImport );

    tbtnExport = new TQToolButton( frame7, "tbtnExport" );
    tbtnExport->setAutoRaise( TRUE );
    layout1->addWidget( tbtnExport );

    tbtnAddGroup = new TQToolButton( frame7, "tbtnAddGroup" );
    tbtnAddGroup->setIconSet( TQIconSet( image0 ) );
    tbtnAddGroup->setUsesTextLabel( TRUE );
    tbtnAddGroup->setAutoRaise( TRUE );
    tbtnAddGroup->setTextPosition( TQToolButton::BesideIcon );
    layout1->addWidget( tbtnAddGroup );

    tbtnEditGroup = new TQToolButton( frame7, "tbtnEditGroup" );
    tbtnEditGroup->setIconSet( TQIconSet( image1 ) );
    tbtnEditGroup->setUsesTextLabel( TRUE );
    tbtnEditGroup->setAutoRaise( TRUE );
    tbtnEditGroup->setTextPosition( TQToolButton::BesideIcon );
    layout1->addWidget( tbtnEditGroup );

    tbtnRemoveGroup = new TQToolButton( frame7, "tbtnRemoveGroup" );
    tbtnRemoveGroup->setIconSet( TQIconSet( image2 ) );
    tbtnRemoveGroup->setUsesBigPixmap( TRUE );
    tbtnRemoveGroup->setUsesTextLabel( TRUE );
    tbtnRemoveGroup->setAutoRaise( TRUE );
    tbtnRemoveGroup->setTextPosition( TQToolButton::BesideIcon );
    layout1->addWidget( tbtnRemoveGroup );

    frame7Layout->addLayout( layout1, 0, 0 );
    layout9->addWidget( frame7 );

    layout7 = new TQHBoxLayout( 0, 0, 6, "layout7"); 

    frame6 = new TQFrame( this, "frame6" );
    frame6->setPaletteForegroundColor( TQColor( 0, 124, 206 ) );
    frame6->setFrameShape( TQFrame::Box );
    frame6->setFrameShadow( TQFrame::Plain );
    frame6Layout = new TQGridLayout( frame6, 1, 1, 1, 0, "frame6Layout"); 

    lvGroups = new TQListView( frame6, "lvGroups" );
    lvGroups->setSizePolicy( TQSizePolicy( (TQSizePolicy::SizeType)5, (TQSizePolicy::SizeType)7, 0, 0, lvGroups->sizePolicy().hasHeightForWidth() ) );
    lvGroups->setMinimumSize( TQSize( 100, 0 ) );
    lvGroups->setMaximumSize( TQSize( 250, 32767 ) );
    lvGroups->setFrameShape( TQListView::NoFrame );
    lvGroups->setFrameShadow( TQListView::Plain );
    lvGroups->setLineWidth( 1 );
    lvGroups->setHScrollBarMode( TQListView::AlwaysOff );
    lvGroups->setSorting( -1 ); // don't sort

    frame6Layout->addWidget( lvGroups, 0, 0 );
    layout7->addWidget( frame6 );

    frmMain = new TQFrame( this, "frmMain" );
    frmMain->setPaletteForegroundColor( TQColor( 0, 124, 206 ) );
    frmMain->setPaletteBackgroundColor( TQColor( 255, 255, 255 ) );
    frmMain->setFrameShape( TQFrame::Box );
    frmMain->setFrameShadow( TQFrame::Plain );
    frmMainLayout = new TQGridLayout( frmMain, 1, 1, 11, 6, "frmMainLayout"); 

    layout6 = new TQHBoxLayout( 0, 0, 6, "layout6"); 

    tblFaceList = new TQTable( frmMain, "tblFaceList" );
    tblFaceList->setNumCols( tblFaceList->numCols() + 1 );
    tblFaceList->horizontalHeader()->setLabel( tblFaceList->numCols() - 1, i18n("No." ) );
    tblFaceList->setNumCols( tblFaceList->numCols() + 1 );
    tblFaceList->horizontalHeader()->setLabel( tblFaceList->numCols() - 1, i18n("Smiley" ) );
    tblFaceList->setNumCols( tblFaceList->numCols() + 1 );
    tblFaceList->horizontalHeader()->setLabel( tblFaceList->numCols() - 1, i18n("Shortcut" ) );
    tblFaceList->setFrameShape( TQTable::GroupBoxPanel );
    tblFaceList->setFrameShadow( TQTable::Plain );
    tblFaceList->setHScrollBarMode( TQTable::AlwaysOff );
    tblFaceList->setNumRows( 0 );
    tblFaceList->setNumCols( 3 );
    tblFaceList->setSelectionMode( TQTable::MultiRow );
    tblFaceList->setFocusStyle( TQTable::FollowStyle );
    layout6->addWidget( tblFaceList );

    layout5 = new TQVBoxLayout( 0, 0, 6, "layout5"); 

    btnAdd = new TQPushButton( frmMain, "btnAdd" );
    layout5->addWidget( btnAdd );

    btnRemove = new TQPushButton( frmMain, "btnRemove" );
    layout5->addWidget( btnRemove );

    btnEdit = new TQPushButton( frmMain, "btnEdit" );
    layout5->addWidget( btnEdit );

    btnUp = new TQPushButton( frmMain, "btnUp" );
    layout5->addWidget( btnUp );

    btnDown = new TQPushButton( frmMain, "btnDown" );
    layout5->addWidget( btnDown );

    btnMoveTo = new TQPushButton( frmMain, "btnMoveTo" );
    layout5->addWidget( btnMoveTo );
    spacer1 = new TQSpacerItem( 20, 20, TQSizePolicy::Minimum, TQSizePolicy::Expanding );
    layout5->addItem( spacer1 );

    lblPreview = new TQLabel( frmMain, "lblPreview" );
    lblPreview->setSizePolicy( TQSizePolicy( (TQSizePolicy::SizeType)0, (TQSizePolicy::SizeType)0, 0, 0, lblPreview->sizePolicy().hasHeightForWidth() ) );
    lblPreview->setMinimumSize( TQSize( 100, 85 ) );
    lblPreview->setMaximumSize( TQSize( 100, 85 ) );
    lblPreview->setPaletteForegroundColor( TQColor( 0, 124, 206 ) );
    lblPreview->setFrameShape( TQLabel::Box );
    layout5->addWidget( lblPreview );
    layout6->addLayout( layout5 );

    frmMainLayout->addLayout( layout6, 0, 0 );
    layout7->addWidget( frmMain );
    layout9->addLayout( layout7 );

    layout8 = new TQHBoxLayout( 0, 0, 6, "layout8"); 
    spacer2 = new TQSpacerItem( 91, 20, TQSizePolicy::Expanding, TQSizePolicy::Minimum );
    layout8->addItem( spacer2 );

    btnOK = new TQPushButton( this, "btnOK" );
    layout8->addWidget( btnOK );

    btnCancel = new TQPushButton( this, "btnCancel" );
    layout8->addWidget( btnCancel );
    layout9->addLayout( layout8 );

    CustomFaceManagerUILayout->addLayout( layout9, 0, 0 );
    languageChange();
    resize( TQSize(521, 382).expandedTo(minimumSizeHint()) );
    clearWState( WState_Polished );

    TQRect scr = TDEApplication::desktop()->screenGeometry();
    move(scr.center()-rect().center());
}
Exemplo n.º 17
0
bool Manager::animateMinimize(bool iconify)
{
   int style = Static::instance()->animationStyle();

   switch (style)
   {
      case 1:
      {
         // Double twisting double back, with pike ;)

         if (!iconify) // No animation for restore.
            return true;

         // Go away quick.
         helperShowHide(false);
         tqApp->syncX();

         TQRect r = iconGeometry();

         if (!r.isValid())
            return true;

         // Algorithm taken from Window Maker (http://www.windowmaker.org)

         int sx = geometry().x();
         int sy = geometry().y();
         int sw = width();
         int sh = height();
         int dx = r.x();
         int dy = r.y();
         int dw = r.width();
         int dh = r.height();

         double steps = 12;

         double xstep = double((dx-sx)/steps);
         double ystep = double((dy-sy)/steps);
         double wstep = double((dw-sw)/steps);
         double hstep = double((dh-sh)/steps);

         double cx = sx;
         double cy = sy;
         double cw = sw;
         double ch = sh;

         double finalAngle = 3.14159265358979323846;

         double delta  = finalAngle / steps;

         TQPainter p(workspaceWidget());
         p.setRasterOp(TQt::NotROP);

         for (double angle = 0; ; angle += delta)
         {
            if (angle > finalAngle)
               angle = finalAngle;

            double dx = (cw / 10) - ((cw / 5) * sin(angle));
            double dch = (ch / 2) * cos(angle);
            double midy = cy + (ch / 2);

            TQPoint p1(int(cx + dx), int(midy - dch));
            TQPoint p2(int(cx + cw - dx), p1.y());
            TQPoint p3(int(cx + dw + dx), int(midy + dch));
            TQPoint p4(int(cx - dx), p3.y());

            grabXServer();

            p.drawLine(p1, p2);
            p.drawLine(p2, p3);
            p.drawLine(p3, p4);
            p.drawLine(p4, p1);

            p.flush();

            usleep(500);

            p.drawLine(p1, p2);
            p.drawLine(p2, p3);
            p.drawLine(p3, p4);
            p.drawLine(p4, p1);

            ungrabXServer();

            cx += xstep;
            cy += ystep;
            cw += wstep;
            ch += hstep;

            if (angle >= finalAngle)
               break;
         }
      }
      break;

      case 2:
      {
         // KVirc style ? Maybe. For qwertz.

         if (!iconify) // No animation for restore.
            return true;

         // Go away quick.
         helperShowHide(false);
         tqApp->syncX();

         int stepCount = 12;

         TQRect r(geometry());

         int dx = r.width() / (stepCount * 2);
         int dy = r.height() / (stepCount * 2);

         TQPainter p(workspaceWidget());
         p.setRasterOp(TQt::NotROP);

         for (int step = 0; step < stepCount; step++)
         {
            r.moveBy(dx, dy);
            r.setWidth(r.width() - 2 * dx);
            r.setHeight(r.height() - 2 * dy);

            grabXServer();

            p.drawRect(r);
            p.flush();
            usleep(200);
            p.drawRect(r);

            ungrabXServer();
         }
      }
      break;


      default:
      {
         TQRect icongeom = iconGeometry();

         if (!icongeom.isValid())
            return true;

         TQRect wingeom = geometry();

         TQPainter p(workspaceWidget());

         p.setRasterOp(TQt::NotROP);
#if 0
         if (iconify)
            p.setClipRegion(TQRegion(workspaceWidget()->rect()) - wingeom);
#endif
         grabXServer();

         p.drawLine(wingeom.bottomRight(), icongeom.bottomRight());
         p.drawLine(wingeom.bottomLeft(), icongeom.bottomLeft());
         p.drawLine(wingeom.topLeft(), icongeom.topLeft());
         p.drawLine(wingeom.topRight(), icongeom.topRight());

         p.flush();

         tqApp->syncX();

         usleep(30000);

         p.drawLine(wingeom.bottomRight(), icongeom.bottomRight());
         p.drawLine(wingeom.bottomLeft(), icongeom.bottomLeft());
         p.drawLine(wingeom.topLeft(), icongeom.topLeft());
         p.drawLine(wingeom.topRight(), icongeom.topRight());

         ungrabXServer();
      }
      break;
   }
   return true;
}
Exemplo n.º 18
0
void ExtensionManager::reduceArea(TQRect &area, const ExtensionContainer *extension) const
{
    if (!extension ||
        extension->hideMode() == ExtensionContainer::AutomaticHide ||
        !extension->reserveStrut())
    {
        return;
    }

    TQRect geom = extension->initialGeometry(extension->position(), extension->alignment(),
                                            extension->xineramaScreen());

    // reduce given area (TQRect) to the space not covered by the given extension
    // As simplification: the length of the extension is not taken into account
    // which means that even a small extension e.g. on the left side of the desktop
    // will remove the available area with its with

    switch (extension->position())
    {
        case KPanelExtension::Left:
        {
            area.setLeft(TQMAX(area.left(), geom.right()));
            break;
        }
        case KPanelExtension::Right:
        {
            area.setRight(TQMIN(area.right(), geom.left()));
            break;
        }
        case KPanelExtension::Top:
        {
            area.setTop(TQMAX(area.top(), geom.bottom()));
            break;
        }
        case KPanelExtension::Bottom:
        {
            area.setBottom(TQMIN(area.bottom(), geom.top()));
            break;
        }
        default: ;  // ignore KPanelExtension::Floating ... at least for now
    }
}
Exemplo n.º 19
0
void KFileIVIDesktop::drawShadowedText( TQPainter *p, const TQColorGroup &cg )
{
  bool drawRoundedRect = TDEGlobalSettings::iconUseRoundedRect();

  int textX;
  if (drawRoundedRect == true)
    textX = textRect( FALSE ).x() + 4;
  else
    textX = textRect( FALSE ).x() + 2;
  int textY = textRect( FALSE ).y();
  int align = ((TDEIconView *) iconView())->itemTextPos() == TQIconView::Bottom
    ? AlignHCenter : AlignAuto;
  // FIXME
  // Work around incorrect shadow position detailed in Bug 1807
  bool rebuild = true; // shouldUpdateShadow(isSelected());

  KDesktopShadowSettings *settings = (KDesktopShadowSettings *) (m_shadow->shadowSettings());

  unsigned long uid = settings->UID();

  p->setFont(iconView()->font());
  paintFontUpdate(p);
  TQColor shadow;
  TQColor text;
  int spread = shadowThickness();

  if ( isSelected() && settings->selectionType() != KShadowSettings::InverseVideoOnSelection ) {
    text = cg.highlightedText();
    TQRect rect = textRect( false );
    rect.setRight( rect.right() - spread );
    rect.setBottom( rect.bottom() - spread + 1 );
    if (drawRoundedRect == true) {
      p->setBrush( TQBrush( cg.highlight() ) );
      p->setPen( TQPen( cg.highlight() ) );
      p->drawRoundRect( rect,
		      1000 / rect.width(),
		      1000 / rect.height() );
    }
    else {
      p->fillRect( textRect( false ), cg.highlight() );
    }
  }
  else {
    // use shadow
    if ( isSelected() ) {
      // inverse text and shadow colors
      shadow = settings->textColor();
      text = settings->bgColor();
      if ( rebuild ) {
        setSelectedImage( buildShadow( p, align, shadow ) );
        _selectedUID = uid;
      }
    }
    else {
      text = settings->textColor();
      shadow = ( settings->bgColor().isValid() ) ? settings->bgColor() :
               ( tqGray( text.rgb() ) > 127 ) ? black : white;
      if (rebuild) {
        setNormalImage(buildShadow(p, align, shadow));
        _normalUID = uid;
      }
    }

    // draw the shadow
    int shadowX = textX - spread + settings->offsetX();
    int shadowY = textY - spread + settings->offsetY();

    p->drawImage(shadowX, shadowY,
      (isSelected()) ? *selectedImage() : *normalImage(),
      0, 0, -1, -1, DITHER_FLAGS);
  }

  // draw the text
  p->setPen(text);
  wordWrap()->drawText( p, textX, textY, align | KWordWrap::Truncate );
}