diff -p -up kdebase-3.5.8/kicker/libkicker/kickerSettings.kcfg.new_menu_top kdebase-3.5.8/kicker/libkicker/kickerSettings.kcfg --- kdebase-3.5.8/kicker/libkicker/kickerSettings.kcfg.new_menu_top 2008-02-01 17:17:23.000000000 -0200 +++ kdebase-3.5.8/kicker/libkicker/kickerSettings.kcfg 2008-02-01 17:17:31.000000000 -0200 @@ -342,9 +342,14 @@ <default>true</default> </entry> -<entry name="SideTopPixmapName" key="SideTopName" type="String" > +<entry name="LeftSideTopPixmapName" key="LeftSideTopName" type="String" > <label>The name of the file to use as the side image in the K Menu</label> - <default>kside_top.png</default> + <default>kside_top_left.png</default> + </entry> + +<entry name="RightSideTopPixmapName" key="RightSideTopName" type="String" > + <label>The name of the file to use as the side image in the K Menu</label> + <default>kside_top_right.png</default> </entry> <entry name="SideTopTileName" key="SideTopTileName" type="String" > diff -p -up kdebase-3.5.8/kicker/kicker/ui/popupmenutop.cpp.new_menu_top kdebase-3.5.8/kicker/kicker/ui/popupmenutop.cpp --- kdebase-3.5.8/kicker/kicker/ui/popupmenutop.cpp.new_menu_top 2008-02-01 17:19:28.000000000 -0200 +++ kdebase-3.5.8/kicker/kicker/ui/popupmenutop.cpp 2008-02-01 17:19:51.000000000 -0200 @@ -35,24 +35,24 @@ PopupMenuTop::PopupMenuTop() : void PopupMenuTop::init() { - QString sideName = KickerSettings::sideTopPixmapName(); + QString leftSideName = KickerSettings::leftSideTopPixmapName(); + QString rightSideName = KickerSettings::rightSideTopPixmapName(); QString sideTileName = KickerSettings::sideTopTileName(); //kdDebug()<<" sideName :"<<sideName<<endl; //kdDebug()<<" sideTileName : "<<sideTileName<<endl; - QImage image; - image.load(locate("data", "kicker/pics/" + sideName)); + leftSidePixmap.load(locate("data", "kicker/pics/" + leftSideName)); + rightSidePixmap.load(locate("data", "kicker/pics/" + rightSideName)); - sidePixmap.convertFromImage(image); - image.load(locate("data", "kicker/pics/" + sideTileName)); + sideTilePixmap.load(locate("data", "kicker/pics/" + sideTileName)); - if (image.isNull()) + if (sideTilePixmap.isNull()) { kdDebug(1210) << "Can't find a side tile pixmap" << endl; return; } - sideTilePixmap.convertFromImage(image); - if (sidePixmap.height() != sideTilePixmap.height()) + if (leftSidePixmap.height() != sideTilePixmap.height() || + leftSidePixmap.height() != rightSidePixmap.height()) { kdDebug(1210) << "Pixmaps have to be the same size" << endl; return; @@ -73,8 +73,9 @@ void PopupMenuTop::paint(QPainter* p, co { //kdDebug()<<" PopupMenuTop::paint\n"; p->save(); - p->drawPixmap( x,y, sidePixmap ); - p->drawTiledPixmap(QRect(x+sidePixmap.width(),y,w,h),sideTilePixmap); + p->drawPixmap( x,y, leftSidePixmap ); + p->drawTiledPixmap(QRect(x+leftSidePixmap.width(),y,w,h),sideTilePixmap); + p->drawPixmap( x + w - rightSidePixmap.width(), y, rightSidePixmap ); p->restore(); } diff -p -up kdebase-3.5.8/kicker/kicker/ui/popupmenutop.h.new_menu_top kdebase-3.5.8/kicker/kicker/ui/popupmenutop.h --- kdebase-3.5.8/kicker/kicker/ui/popupmenutop.h.new_menu_top 2008-02-01 17:19:45.000000000 -0200 +++ kdebase-3.5.8/kicker/kicker/ui/popupmenutop.h 2008-02-01 17:19:52.000000000 -0200 @@ -46,7 +46,8 @@ public: int x, int y, int w, int h); private: void init(); - QPixmap sidePixmap; + QPixmap leftSidePixmap; + QPixmap rightSidePixmap; QPixmap sideTilePixmap; };