Issue 17

30th July 2006 by Danny Allen

This Week...

Work begins on integrating C# support in KDevelop, as the second phase of the "C# parser for KDevelop" Summer Of Code project, whilst a companion effort concurrently starts to support Java. Eigen, a matrix and vector mathematics library is begun. okular is ported to QGraphicsView. Infrastructure improvements in Solid and Kalzium. "Siox" tool ported to Krita.
On August 1st, (2 days time), KOffice 1.6 alpha will be released, with new features in Kexi, Krita, KChart and KFormula. KOffice 1.6 will be the last major release before KOffice 2.0 is released in Spring 2007. The final version of KOffice 1.6 will be released on October 10th, 2006, so get your testing in now!
The developers of a new matrix and vector mathematics library, named eigen, declare their arrival to the world:
A new library, eigen, is born.

Eigen is a simple matrix and vector package with some linear algebra and geometric stuff added for convenience. Eigen is not designed to be a high performance library, but rather be optimised for size - the current size of the library is 26kb, compared to several megabytes for familiar external ones. We do not expect the final size of eigen to exceed 100kb. This is not going to be an ever growing library with loads of features.

So far we've finished (but not written tests for) 3D vectors of doubles and matrixes. The next step is adding a lot of geometric helper functions and also do arbitrary size matrix - the arbitrary size stuff will use templates, so it could be used for complex numbers, for instance - and vector handling. Then there will be some additional linear algebra like eigenvalues, eigenvectors and solving of mequation systems and quaternions.

Anyway, whilst we have several things left to do, but the first vector and matrix implementation is done. It's all very simple, but as far as we know there are a lot of potential users within KDE - examples of applications that would benefit from using eigen include:
  • Kalzium
  • Kreative3D
  • KChart (for implementing 3d charts as defined in the OpenDocument standard)
  • and an exciting new application from kde-edu (to be announced next week).
People currently working on eigen are Inge Wallin, Casper Boemann and Benoît Jacob. The code is located in KDE SVN at

/trunk/kdesupport/eigen/

Note: we want to add test code before it's "official", so those who start to use it now should be regarded as testers. However, join us as #eigen (irc.freenode.net) and give us feedback!
Pino Toscano writes about his recent work on porting okular to use QGraphicsView:
The new okular-newpageview branch will allow the okular developers to convert the okular page view (one of the most important components of okular) to make use of one of the new technologies of the upcoming Qt 4.2, QGraphicsView. This should make the pageview simpler and easier to maintain and expand with new features - one such feature we plan is support for PDF forms.

Another reason why this branch was created is to safely working on the page view without interfering with the regular development work, and that of the two students working on the Summer of Code and Season of KDE projects - Commenting tools for KPDF and Improving pattern rendering in okular respectively.

The work of porting to QGraphicsView is going well; what needs work is the drawing of the annotations in real-time, and a few of the mouse modes (Panning, Zoom and Select).
This week, Andreas Kling closed an amazing 102 bugs! Breaking the 100 bug mark is an immense achievement, so a hearty congratulations to you, Andreas!

Statistics

Commits 2461 by 197 developers, 5529 lines modified, 1379 new files
Open Bugs 13050
Open Wishes 11348
Bugs Opened 236 in the last 7 days
Bugs Closed 224 in the last 7 days

Commit Summary

Module Commits
/trunk/www
469
 
/trunk/KDE
439
 
/trunk/l10n
348
 
/trunk/extragear
289
 
/branches/stable
173
 
/branches/work
157
 
/trunk/playground
135
 
/trunk/koffice
121
 
/branches/KDE
105
 
/branches/koffice
73
 
Lines Developer Commits
292
 
Laurent Montel
136
 
82
 
Ludovic Grossard
74
 
209
 
Stefan Nikolaus
57
 
91
 
Stephan Kulow
51
 
114
 
Gilles Caulier
49
 
107
 
Martin Aumüller
45
 
94
 
David Saxton
41
 
137
 
Adam Treat
37
 
71
 
Thomas Nagy
34
 
94
 
Allen Winter
33
 

Internationalization (i18n) Status

Language Percentage Complete
Swedish (sv)
99.99%
 
Portuguese (pt)
99.97%
 
Danish (da)
99.45%
 
Spanish (es)
95.9%
 
Dutch (nl)
94.48%
 
Italian (it)
94.37%
 
Estonian (et)
94.06%
 
French (fr)
93.95%
 
Greek (el)
93.44%
 
German (de)
90.76%
 

Bug Killers and Buzz

Person Bugs Closed
Andreas Kling
102
 
Tommi Tervo
16
 
Gilles Caulier
13
 
Seb Ruiz
12
 
Martin Aumüller
12
 
Alexandre Pereira de Oliveira
11
 
Olivier Goffart
11
 
Joris Guisson
8
 
Mark Kretschmann
7
 
Julian Seward
4
 
Program Buzz
Amarok
2873
 
Kopete
1299
 
K3B
1037
 
KMail
955
 
Kate
896
 
SuperKaramba
705
 
Kontact
654
 
KDevelop
632
 
Kicker
601
 
Quanta
437
 
Person Buzz
zogje
276
 
George Staikos
266
 
pipitas
262
 
wheels
255
 
telex
250
 
cornelius
236
 
David Faure
231
 
boud
230
 
Aaron J. Seigo
222
 
Stephan Kulow
207
 

Contents

  Bug Fixes Features Optimization Security Other

Accessibility

     

Development Tools

[] []    []

Educational

  [] []   

Graphics

  []    []

KDE Base

[] []    []

KDE-PIM

[] []    []

Office

[] [] []   []

Konqueror

     

Multimedia

[] [] []   []

Networking Tools

[] [] []   

User Interface

  []    

Utilities

[] []    []

Games

  []    

Other

     

There are 94 selections this week

Bug Fixes

Development Tools

Jakob Petsovits committed changes in /branches/work/kdevelop-pg/examples/csharp:

Bugfix time for the C# parser:
99.5% passed test cases is better than 95%.

There's a pretty tough corner case remaining, though.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 565645

KDE Base

Nikolas Zimmermann committed changes in /branches/work/unity/WebKit/WebCore/platform:

Fix bug currently causing kde.org to crash.

The ScrollViewQt constructor uses "if (1 ||isFrameView())" to determine when
to construct a CanvasQt. CanvasQt assumes that the passed "ScrollView" object
is static castable to a "FrameView" -> as it's not, it'll crash!

The problem is that isFrameView() can't be accessed in the ctor yet, when
operating on FrameView objects as the FrameView ctor is not yet called.
(as detected by Zack (tm) )

Solution: Add a non-virtual init() function to ScrollView, call it from
the FrameQt object, afer constructing FrameView objects. Now isFrameView()
properly returns true, and the CanvasQt magically works fine ;-)

Please review, kde.org and test/crashOne.html work again w/o crashes on destruction.

Diffs: 1, 2, 3 Revision 567404
Andreas Kling committed changes in /branches/KDE/3.5/kdebase/kdesktop/kdiconview.cc:

If icons are dragged outside the desktop area, jerk them back in.
Fixes the long-hated issue with the desktop becoming scrollable.

Maks Orlovich committed changes in /branches/KDE/3.5/kdebase/nsplugins/viewer:

If we get redirected when grabbing a file, tell the plugin about the final URL
and not the original one. Fixes playback of youtube videos embedded in other web sites.

Andreas Kling committed changes in /branches/KDE/3.5/kdebase/kioslave/media/mediamanager/halbackend.cpp:

Check the return value from dbus_connection_open_private().
Fixes KDED crashing on startup when D-BUS is unavailable.

If at all possible, this should go into 3.5.4.

KDE-PIM

Marco Gulino committed changes in /trunk/playground/pim/kmobiletools/kmobiletools/libkmobiletools:

Delete the receive buffer *before* sending the AT command, and not after, since this could delete incoming data if the phone is too fast.
First try of implementing an AT queue stack.

Office

Thomas Zander committed changes in /branches/koffice/1.6/koffice:

Much better fix for the 'ignore whitespace in oasis'. This makes the loading
follow the ODF spec, and where the spec is unclear, follow what OOo does.
Patch from "Benjamin K. Stuhl"

Diffs: 1, 2, 3, 4, 5 Revision 566634
Peter Simonsson committed changes in /trunk/koffice:

* Fix sorting
* Got it ok'd by the openusability people after minor rewording of the Fit* entries
* Implemented zoom menu entries after advice by the ou people in kivio

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 567535
Alfredo Beaumont Sainz committed changes in /branches/koffice/1.6/koffice/lib/kformula:

OASIS OpenDocument / MathML: Fix sequence loading and prepare for non text
support in token element's content (e.g. to support mglyph)

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 565436

Multimedia

Alexandre Pereira de Oliveira committed changes in /trunk/extragear/multimedia/amarok/src/collectionscanner/collectionscanner.cpp:

Collection Scanner resolves symlinks, what avoids duplicating files when there's links that point to other folders inside of the
collection. Please test, this might create problems.

Martin Aumüller committed changes in /trunk/extragear/multimedia/amarok:

Networking Tools

Joris Guisson committed changes in /trunk/extragear/network/ktorrent/libktorrent/torrent/torrentcontrol.cpp:

Made sure in case of import, the number of imported bytes gets saved properly, so that average speeds are OK.

Andreas Kling committed changes in /branches/KDE/3.5/kdenetwork/knewsticker/newsscroller.cpp:

Fixed flickering when scrolling (which is all the time.)

Brad Hards committed changes in /trunk/KDE/kdenetwork/krdc/preferencesdialog.cpp:

Fix the preferences / config stuff.

RDP is now closer to working. That is, it still doesn't work.

Eike Hein committed changes in /trunk/extragear/network/konversation/src:

Retire the "append underscore to last used nick after unsuccessfully
going through the identity's list of nicknames" behavior, which even-
tually runs into the NICKLEN wall. Instead, ask the user to enter a
new nick, or cancel the connection attempt on opt-out.
Patch by Raphael Kubo da Costa, and mentored by me.

Andre Duffeck committed changes in /trunk/KDE/kdenetwork/kopete/protocols/yahoo/libkyahoo:

Fix receiving of large YMSG packets.
Big packets that were splittet into several tcp packets were truncated and destroyed.
That fixes the problem of empty FileTransfer information in case of picture transfers. They have a small preview picture embedded which makes the
YMSG packet too big for one tcp packet.

Diffs: 1, 2, 3, 4 Revision 567651

Utilities

Jason Kivlighn committed changes in /trunk/extragear/utils/krecipes/src/dialogs/recipeimportdialog.cpp:

In the recipe import dialog, keep identical recipe items in sync.

For example, the recipe "Candy Cane Cookies" may be under both the "Christmas" and "Cookie" categories. The recipe will therefore appear twice in the list of recipes
to import. Now unselecting the entry under one category also unselects every other entry as well.

It was possible before to unselect a recipe and it would still be imported because it existed selected somewhere else in the list... that was rather annoying, though subtle, and I'm glad it's fixed ;-) (that's another annoyance that couldn't be in 1.0).

Features

Development Tools

Jakob Petsovits committed changes in /branches/work/kdevelop-pg/src:

jpetso proudly presents:
...Automatic Error Recovery for kdevelop-pg!

Using this feature, a parser doesn't give up when it
encounters a parsing error. Instead, it proceeds to where
the rule could possibly go on after the recovered part,
and continues parsing from there.
(For parser junkies: it proceeds to the first found token
of the recovered item's FOLLOW set.)

Usage: (easy!)
Wrap your favorite optional items into recover(...).
Like, "(#stmt=statement)*" becomes "recover(#stmt=statement)*".

Note that the star should be outside of recover(...),
otherwise you'd only recover at the end of all statements
and the parser would not try for another statement.

Also contained in this commit:
* A fix for the FOLLOW set calculation for star and plus items
* Generating a few more newlines for better readability

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 9 more) Revision 566625
C. Boemann committed changes in /trunk/kdesupport/eigen:

a start for a matrix interface
added some apidox

David Nolden committed changes in /branches/kdevelop/3.4/languages/cpp:

1. Ordering in the completion-box is much better now. First the items are ordered by access-level, and then by inheritance-depth(see QObject ;)
2. Most of the Code-Completion-Options are read from CppCodeCompletionConfig now(I added the options there), and used in the code. CppCodeCompletionConfig is not yet filled from the GUI though.

Diffs: 1, 2, 3, 4 Revision 565769
Jakob Petsovits committed changes in /branches/work/kdevelop-pg/examples/csharp:

A rather hackish solution to solve the difficult conflict
that made expressions like "a is SomeType ? if_exp : else_exp"
impossible. (Nullable expressions stole the question mark
from the conditional expression.)

As a result, 99.94% of my test case collection pass.
I believe that 6 of the remaining 11 files are invalid (research pending).
3 others are using an unspecified extension (which is supported by
MS and Mono though, so I'm going to implement it sooner or later).
One file shows that UTF-8 recognition is still not perfect,
and the last one is a virtually unsolvable very-last-corner case.

What I'm saying is that for now, I'm satisfied with the
parser's correctness, and now I'm going for real KDevelop code.
(C# part, here we come!)

Diffs: 1, 2, 3 Revision 565795
David Nolden committed changes in /branches/kdevelop/3.4/languages/cpp:

1. Shut of the verbose-mode by default. That shoud speed up everything about the evaluation, but had caused problems in the past(but not anymore).
2. Add an addition level to the sorting of the completion-box: first the access-level, then the inheritance-depth, then the item-type.
3. Use the popup-box to show additional interesting information like the item's container-class, the item's type, source-file, and other interesting information that does not fit into the completion-box within the popup that was previously used exclusively for the comments. Comments are shown below now. This additionally solves the problem that emplty comments caused the wrong popup-box to stay, because every item has a comment now.

Diffs: 1, 2, 3 Revision 565897
Adam Treat committed changes in /trunk/KDE/kdevelop/languages:

* Begin the Java language support part while jpetso
does the C# language support part! WOOHOO!

Diffs: 1, 2, 3, 4, 5, 6 Revision 566151
Jakob Petsovits committed changes in /trunk/KDE/kdevelop/languages:

Begin the C# language part in parallel to manyoso's Java part.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 14 more) Revision 566163
Adam Treat committed changes in /trunk/KDE/kdevelop/languages/java:

And we're parsing java files... :)

All you need to start parsing java files is to change
the line PrimaryLanguage=C++ in the global project file
to PrimaryLanguage=Java.

Right now the codemodel is not hooked up and the AST is
not integrated.

I don't think CMake knows how to deal with .ll files, so
add the .cc file instead.

The kdevelop-pg loads the _G_contents char array in a weird way. Need
to change this so that it uses QByteArray or however the c++ parser
does it.

I commented out a few lines in java-io.cpp that were referencing main.cpp
these methods in main.cpp need to be moved into a separate file if we
want to keep them.

Next steps would be to integrate the AST so that it inherits KDevAST and then
we need to generate an actual codemodel that inherits KDevCodeModel. Once
this is done, we'll be able to see the codemodel in the codeview :)

Cheers,Adam

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 566340
Allen Winter committed changes in /trunk/KDE/kdesdk/scripts:

Add a new program that does some simple sanity checks on CMakeLists.txt files.
Usage:
cmakelint.pl CMakeLists.txt
or
find . -name CMakeLists.txt | xargs cmakelint.pl

Matt Rogers committed changes in /branches/kdevelop/3.4:

Patch from Andreas Pakulat to start providing better Qt 4 support for KDevelop 3.4
This patch:

-provides a new tab on the C++ configuration for Qt options
-moves the include-style option to the new tab
-provides configuration options for qt version, qt directory and designer
integration on the new tab page
-removes the designer integration configuration from kdevelop's settings page
-uses the already existing qt root entry in the project dom to create paths for
designer and qmake
-makes the configured qt directory override the qt dir setting in trollprojectpart.cpp
but keeps an explicitly defined QTDIR environment variable
-changes the logic of qt version and include style so that the include style can be
chosen freely for qt4. only the qt3 style is available for qt3.

More to come, thanks for the patch!

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 566380
David Nolden committed changes in /branches/work/kdevelop-teamwork.kdevelop:

- message-history works correctly
- user-message-tabs work correctly
- in-document-conversation uses the message-history now
- users are more consistent now
- more stuff I forgot

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 19 more) Revision 566413

Educational

Jason Harris committed changes in /trunk/KDE/kdeedu/kstars/kstars/tools:

Begin work on making the calculator work. Most of the interactive moes work now, I haven't checked any batch modes yet.

I'd like to try to make the module layouts simpler and more intuitive.
Ideas are welcome!

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 13 more) Revision 567137
Jason Harris committed changes in /trunk/KDE/kdeedu/kstars/kstars:

Improvements to AltVsTime tool. I restored the crosshairs that appear when clicking or dragging the mouse to aid in measuring altitudes and times in the plot. In addition, the altitude and time of the crosshairs are now labeled on the plot. The time of the "Now" line is also labeled.

Diffs: 1, 2, 3 Revision 565654
Eric Kjeldergaard committed changes in /trunk/KDE/kdeedu/kiten:

Moved kitenEdit to derive from KHistoryCombo (as Konq's bar does) for consistency and because doing it made it VERY easy to nick konqy code and make it display a searchbar. Next step for me: make it do something.

Diffs: 1, 2, 3, 4 Revision 565691
Benoît Jacob committed changes in /trunk/KDE/kdeedu/kalzium/src:

Added OpenGL selection code.

Single left click on an atom now selects/deselects it, if the mouse
didn't move between button press and button release. Some tolerance (2
pixels) added to make that usable with imprecise pointing devices.

TODO: notify the treeview (currently it doesn't get updated).

Diffs: 1, 2, 3, 4 Revision 566121
Benoît Jacob committed changes in /trunk/KDE/kdeedu/kalzium/src:

Change some things in the way OpenGL selection is done

It now happens on button press, instead of happening on button release. The clicked atom is highlighted in a separate color (currently some shade of purple, tell me what you think) even if it is not selected. The point of that is that this clicked atom is going to play a very important role in the mouse navigation system I plan to write. Any rotation/move will be done with respect to it. So I thought that this special role of this atom should correspond to a visual highlighting.

Jason Harris committed changes in /trunk/KDE/kdeedu/kstars/kstars/locationdialog.cpp:

The "DST Rule" label now looks like an HTML link (the text is blue and underlined), and clicking on it will open the window explaining the available DST rules.

This window was a KMessageBox::informationList(), but I'm now creating my own KDialog, because I wanted to be able to increase the width of the window so there's no need for a horizontal scrollbar. Apparently the KMessageBox can't resize itself to fit the contents.

Graphics

Gilles Caulier committed changes in /trunk/extragear/graphics/digikam/utilities/cameragui:

digikam from trunk : improvement of camera interface : Restoring an old feature from digiKam 0.6.2 to upload pictures to camera.

In fact the interface to upload into gphoto2 camera have been never removed but the interface with the new digiKam folder view have never written by renchi.

All camera type are supported : Gphoto2, PTP, UMS, etc. This implementation have been tested with my Olympus C3000Z and my Minolta Dynax 5D.

By this commit, there is 2 ways to upload pictures in your camera :

- Drag digikam from trunk : improvement of camera interface : Restoring an old feature from digiKam 0.6.2 to upload pictures to camera.

In fact the interface to upload into gphoto2 camera have been never removed but the interface with the new digiKam folder view have never written by renchi.

All camera type are supported : Gphoto2, PTP, UMS, etc. This implementation have been tested with my Olympus C3000Z and my Minolta Dynax 5D.

By this commit, there is 2 ways to upload pictures in your camera :

- Drag & drop between digiKam main interface (or quesror if you want), and camera interface.
- Copy and Paste like between digiKam album.

Todo : add a new 'Upload' button on the bottom of Camera Interface. I need a feedback from user before to do it... This one is really mandatory ?

Note : with Gphoto2 camera, check if the camera dirver support upload using the new camera info dialog available by Camera Interface Help menu.

Gilles Caulier committed changes in /trunk/extragear/graphics/digikamimageplugins:

digikam from trunk: use same menu mnemonic for Filter as Krita and Photoshop

Wilfried Huss committed changes in /trunk/KDE/kdegraphics/kviewshell/plugins/pdf:

Add table of contents support for PDF files.

Gilles Caulier committed changes in /trunk/extragear/graphics/digikam/utilities/scripts:

Add script from Rainer Krienke to export digiKam tags from database.

Clarence Dang committed changes in /trunk/KDE/kdegraphics/kolourpaint/kpmainwindow_view.cpp:

Support the user adding a new zoom level by typing in one and pressing enter. Zooming is now five by five again.

Clarence Dang committed changes in /trunk/playground/graphics/okular/ui/pageview.cpp:

Allow entering of "123" zoom instead of only "123%". Previously, if it couldn't find a % to chop, it would kill the last digit (the '3' in "123", giving an incorrect, 12%).

Add hack to get around "10&0%" action text which sometimes happens with kdelibs4.

okular developers: after updating kdelibs, zooming should work perfectly - please let me know if it doesn't.

KDE Base

Aaron J. Seigo committed changes in /branches/KDE/3.5/kdebase/kicker/applets/minipager/pagerapplet.cpp:

allow manually turning on of previews in the pager at low screen
resolutions
thanks to vinay shastry for testing the patch.

Jakob Petsovits committed changes in /trunk/KDE/kdelibs/mimetypes/text/x-csharp.desktop:

Add C# mimetype for KDE 4. (This is a temporary solution
until fd.o's XDG MIME-type database is supported.)

The "x-csharp" MIME-type is what XDG also uses
(see <a href="https://bugs.freedesktop.org/show_bug.cgi?id=231">https://bugs.freedesktop.org/show_bug.cgi?id=231</a>;)
and does not yet have a corresponding icon in the
Crystal or Oxygen iconsets.

There won't be a C# mimetype for KDE 3.x anymore.

Sandro Giessl committed changes in /trunk/KDE/kdelibs/kdefx:

Implement a (unique for toolkits?) feature suggested on
<a href="http://holehan.blogspot.com/2006/07/small-steps-to-fittser-kde.html">http://holehan.blogspot.com/2006/07/small-steps-to-fittser-kde.html</a>;

Makes all KStyle styled QLabels an additional clickable area which
sets keyboard focus on the corresponding buddy widget. Behaves exactly
like the given example, including mouse click visualisation using a
focus rect.

Nikolas Zimmermann committed changes in /branches/work/unity/WebKit/WebCore/platform:

First stab at text/line edit rendering. Reviewed by Zack.

* Introduce new "Widget::setParentWidget" logic similar to "setWindowHandle" (windows backend) and/or "setDrawable" (gdk backend), which will create the actual widgets of ie. a LineEdit and associate the right parent with it.

Once a ie. <input type=password> object is constructed a new PlatformLineEdit will be created by the RenderText* objects, and ScrollView::addChild(Widget*) will be called. There we now know the parent widget and can properly construct our QLineEdit, as PlatformLineEdit::setParentWidget() actually handles the creation.

I hope this is flexible enough. Comments please :-)

* Remove parentQObject stuff from FrameQt (obsolete now)
* Adapt PlatformLineEdit/PlatformTextEdit and their *Qt implementations to that logic.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 567633
Kevin Ottens committed changes in /branches/work/kdehw/backends/fake:

First step at making the fake backend useful:
1) capabilities are now exposed through D-Bus, so you can simulate button activation for example
2) the exposed computer is now much more complex and realistic

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 13 more) Revision 567692

KDE-PIM

Marco Gulino committed changes in /trunk/playground/pim/kmobiletools:

GUI: Some instructions and howto on the bluetooth pairing wizard.
Also, allow the user to cancel scanning, and added a button to resume services scan.
Some gui changes to make it look nicer.

Diffs: 1, 2, 3, 4, 5 Revision 567474

Office

Jan Hambrecht committed changes in /trunk/koffice/libs/flake:

added a new command for changing the background of shapes

Sven Langkamp committed changes in /trunk/koffice:

added command for aligning shapes

Diffs: 1, 2, 3, 4 Revision 566769
Gábor Lehel committed changes in /trunk/koffice/libs/kofficeui:

add infrastructure for showing context menus

Diffs: 1, 2, 3, 4 Revision 567145
C. Boemann committed changes in /trunk/koffice/libs/flake/KoShapeShearStrategy.cpp:

progress - status right now is
-Simple shearing of a single non-rotated object works
-Simple shearing of mulitple non rotated objects works
-Shearing already sheared objects does not work (correctly)
-Shearing rotated object(s) does not work

Michael Thaler committed changes in /branches/koffice/1.6/koffice/krita/plugins/tools/tool_siox:

A port of the siox tool from gimp / inkscape to krita. It is mainly based on inkscapes code, but uses some algorithms from gimp.
Unfortunately it is not finished yet. But I go on holiday tomorrow and I want to commit it before I leave.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 565936
Martin Pfeiffer committed changes in /trunk/koffice/libs/kformula/UnderOverElement.h:

Introduce the class UnderOverElement which will replace OverlineElement and UnderlineElement with a more general, more MathML compliant implementation.
It will support all kind of under and over scripts something we miss at the moment. This class will be used for munder, mover and munderover MathML tags.
APIDOX and functionality are yet to come.

Cyrille Berger Skott committed changes in /branches/koffice/1.6/koffice/filters:

reimport old olefilters for powerpoint as it gives better results than the new one

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 17 more) Revision 566347
Jarosław Staniek committed changes in /trunk/koffice/kexi:

* Kexi supports database-aware combo boxes *
KexiDB - added support for db-aware lookup fields

Table View - added support for db-aware combobox fields
- displaying values in combo box popup fixed

2.0: merged

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 33 more) Revision 566350

Multimedia

Koos Vriezen committed changes in /trunk/extragear/multimedia/kmplayer/src:

Add playlist tree, needs work for adding items (cp recent.xml
playlist.xml for a start). Had to figure out how to put an item/group in the active tree w/o the playlist tree starting to play all the way, solved by cloning the tree at item or group via outerXML and readXML.

Diffs: 1, 2, 3, 4 Revision 566566
Jocke Andersson committed changes in /trunk/extragear/multimedia/amarok/src/scripts/score2rating:

New version of Score2Rating! (will hit kde-apps after packaging...)
* Better error handling, prints a list of failed tracks (together with my mail address) to STDERR when unsuccessful
(It prepares its own "backtrace", which ends up in Amarok's error dialog).
* Escapes all (?) bad characters which confuses the dcop query commands (now also including "double quotes").

Martin Aumüller committed changes in /trunk/extragear/multimedia/amarok:

love, skip love, skip & ban for last.fm streams in playlist right-click menu

Jeff Mitchell committed changes in /trunk/extragear/multimedia/amarok:

Add DCOP call playlist: filenames which returns a list of the current filenames in the playlist. Might be more useful for some
people if it returned urls, but that should probably be a separate function, as this calls the MetaBundle's filename() method.
Thanks to Arash Abedinzadeh

Diffs: 1, 2, 3, 4 Revision 566790
Alexandre Pereira de Oliveira committed changes in /trunk/extragear/multimedia/amarok/src/playlist.cpp:

Enable/disable prev/next buttons as playlist filter changes

Christoph Pfister committed changes in /trunk/extragear/multimedia/kaffeine/src/input/dvb:

add ATSC channel file and tuning support

This patch adds channel file and tuning for ATSC to kaffeine.
Note: Scanning isn't supported yet.

Diffs: 1, 2, 3, 4, 5, 6 Revision 565771
Jeff Mitchell committed changes in /trunk/extragear/multimedia/amarok:

1) Use all ATF features that only require reading the UID at all times. GUI option now controls whether new UIDs are
written to files. Note that this helps generalize ATF; we can use this to now enable other writes to metadata if we
wish and have it be a global "yes you can touch my files" setting.
2) Only force a rescan/playlist clear the first time ATF is turned on (err, since this commit...)
3) If Amarok is closed before rescan finished, don't force it on restart...takes too long for some people.
4) ChangeLog updates.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 565899
Alexandre Pereira de Oliveira committed changes in /trunk/extragear/multimedia/amarok/src:

"Some" work on tagdialog:
- Now we have statistics tab enabled when in multiple tags mode. Information there is pretty much a stub, I gotta improve that;
- It's now possible to edit scores/ratings for multiple tracks;
- Tag writing is done in a thread;
- Some clean up here and there, cutting some member variables we don't need anymore;
And of course, new bugs and regressions! Enjoy.

Alexandre Pereira de Oliveira committed changes in /trunk/extragear/multimedia/amarok/src:

Lyrics can now be edited inside of context browser, no need to use tagdialog only for fixing some typos anymore.

Martin Aumüller committed changes in /trunk/extragear/multimedia/amarok:

sk if transfer to media device should be finished for all queued tracks or should be interrupted after current track when pressing disconnect

Networking Tools

Andreas Kling committed changes in /trunk/KDE/kdenetwork/krdc/rdp/rdpprefs.ui:

Added resolution options for 1280x1024 and 1600x200, and changed the resolution names to better reflect the times.

Andreas Kling committed changes in /trunk/KDE/kdenetwork/krdc/rdp:

Adding a bunch of new RDP keymaps.
Will backport this to 3.5 if we do a new release.

Olivier Goffart committed changes in /trunk/KDE/kdenetwork/kopete/kopete:

Add a "merge metacontact" action.

Patch by "Michael D. Stemle, Jr."
Thanks
<a href="http://lists.kde.org/?l=kopete-devel&m=115408872318115&w=2">http://lists.kde.org/?l=kopete-devel&m=115408872318115&w=2</a>;

Diffs: 1, 2, 3 Revision 567639
Andre Duffeck committed changes in /trunk/KDE/kdenetwork/kopete/protocols/yahoo/libkyahoo/filetransfernotifiertask:

Decode and store the embedded preview picture that is sent with all picture transfer invites.

The preview could be displayed in the filetransfer notification dialog.

Percy Leonhardt committed changes in /trunk/extragear/network/knemo/knemod:

Another step to support different backends.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 566358

User Interface

Nuno Fernades Pinheiro committed changes in /trunk/playground/artwork/Oxygen/theme/svg/actions:

new action icons

Diffs: 1, 2, 3 Revision 566624
Nuno Fernades Pinheiro committed changes in /trunk/playground/artwork/Oxygen/theme/svg:

new icons action/apps icons and fixing some names

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 567101
Nuno Fernades Pinheiro committed changes in /trunk/playground/artwork/Oxygen/theme/svg/actions:

new action icons for the ark program not sure the box is neaded at all

Diffs: 1, 2, 3, 4 Revision 566369

Utilities

Jason Kivlighn committed changes in /trunk/extragear/utils/krecipes/src/dialogs:

The "Details..." button works now ;-)

In the Ingredient tab of recipe input, the "Details..." button now pops up a non-modal dialog that displays what information is missing for complete nutrient analysis.

The dialog is updated as ingredients are added and removed and is automatically closed if nutrient information is complete.

The status messages should be complete information-wise, but might be tweaked or re-worded for clarity and aesthetics (I do need to make the 'can't convert from any of..." message clearer).

Thomas Kadauke committed changes in /trunk/playground/utils/kate:

initial import of a WorKflow command library for the Kate editor

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 70 more) Revision 566240
Jason Kivlighn committed changes in /trunk/extragear/utils/krecipes/src:

Update ingredient weights to also include how the ingredient is prepared. CAUTION: For updating the database structure, it just wipes
out any existing weight info!

There is also a yellow status for approximations, and if a prep method is used, but there isn't a weight for it, the status will be
yellow and it will use an entry without a prep method. Note that the status will be red if there is missing info and approximations,
and will be yellow if there is no missing information (red status) but just approximations.

Most of the work is done, but it needs some tweaking (when editting, the prep method combo box is hidden unless you resize the Per
Amount column)

No further work has been done on loading USDA data, so imported USDA data still won't automatically use prep methods.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 10 more) Revision 566373

Games

Dmitry Suzdalev committed changes in /trunk/KDE/kdegames/kbounce:

Got it!
Backgrounds from some image dir are now wokring.
(if you find the way to enable them. Ha-ha ;) )

Diffs: 1, 2, 3 Revision 566120

Optimization

Educational

David Saxton committed changes in /trunk/KDE/kdeedu/kmplot/kmplot/view.cpp:

When drawing plots, merge together segments of the curve that are roughly straight into one straight line before telling QPainter to draw it. Advantages:
- Painting is faster.
- Exporting to operation-based image formats (e.g. PDF, SVG) gives a smaller file size.
- QPaintEngines that can't handle small line segments (hello QPrintEngine!) are now happier.

Office

Thomas Zander committed changes in /trunk/koffice/krita:

Speed optimalisation.
Do not needlessly create a KoID and deep copy it as well as creating
empty strings for each of these calls.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 565573

Multimedia

Jeff Mitchell committed changes in /trunk/extragear/multimedia/amarok/src:

Speed up ATF by using the entries in the database whenever possible instead of always re-reading the metadata.

Note: I have yet to verify that this code works as intended. I'll test ASAP, but I believe it should be correct. Hopefully I've
introduced no new bugs... :-)

Martin -- can you give it a go with your 6300-song playlist and let me know how much of a speedup (if any) is gained with this code?
Thanks!

Diffs: 1, 2, 3 Revision 565996
Jocke Andersson committed changes in /trunk/extragear/multimedia/amarok/src/scripts/score2rating:

Ok, I'm stupid. Why the HELL didn't I do the conversions this way earlier, it's about 500 times faster (seriosly!)
Anyway, here is Score2Rating v3.0, which is TOTALLY immune to strange file names, because it doesn't care about them. Can someone with PgSQL try this before I upload it to kde-apps? I've tested with MySQL and SQLite, so no need for that.

Jeff Mitchell committed changes in /trunk/extragear/multimedia/amarok/src:

Make ATF a bit more efficient, and fix a stupid regression caused by the optimizations from two nights ago that would cause moved files to have their IDs scanned as empty.

Networking Tools

Tommi Rantala committed changes in /trunk/KDE/kdenetwork/kopete/libkopete/kopetemessage.cpp:

Commit the patch partially.

Reduces time taken by HistoryLogger::readMessages(QDate) from 25 seconds to 0.5 seconds with a 200kb log file.

Other

Development Tools

Adam Treat committed changes in /trunk/KDE.kdevelop:

Abstract the backgroundparser so it can be shared
by multiple language parts. As mattr said, we don't
need no stinking separate background parser for every
piddling language part... Gosh!

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 16 more) Revision 566309
Andreas Pakulat committed changes in /branches/kdevelop/qmake4_branch:

- creating a branch for starting to work on qmake4 support for KDevelop3.4

C. Boemann committed changes in /trunk/kdesupport/eigen:

create a directory for a linear algebra library

Andreas Pakulat committed changes in /branches/work/kdevelop-qmake4/buildtools/qmake4:

After consulting with kdevelop devels it's not feasible to provide a separate qmake4 build system, thus removing it again.

Graphics

Pino Toscano committed changes in /branches/work/okular-newpageview:

First big step in porting the PageView as subclass of the new shining QGraphicsView.
PageViewItem's are QGraphicsViewItem's, and are responsible for painting a page each. Similar thing for the rubber band selection, represented by a QGraphicsViewItem placed - when needed - over the pages.
The mouse modes are in the way of porting to the new view, and some have been improved.

The text selection now it's moved in an own mode (more logical); the text selections of a page are hold in the respective KPDFPage, and painted using PagePainter when the right flag is added.

What is left to do? The mouse drag for scrolling the view is not working, as well as the zoom-by-selected-area, that does not center the selected area. And - of course - clean the code and remove the old parts (when we are sure they won't be needed anymore).

Fixed also two really small bugs in part.cpp and area.cpp, I'll forwardport them soon.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 5 more) Revision 567623

KDE Base

David Saxton committed changes in /trunk/KDE/kdelibs/kdeprint:

Ported KPrinter to Qt4's painting system.
The main change is KPrinter's interception of QPainter::begin, QPainter::end
before they are passed to QPrint*. Before, QPaintDevice::cmd was used - but
since this no longer exists, KPrinter uses its own QPaintEngine and passes on
all the calls to QPrintEngine*. This is probably not the most elegant solution,
but it works.

Diffs: 1, 2, 3, 4, 5, 6 Revision 565703

KDE-PIM

Allen Winter committed changes in /trunk/KDE/kdepimlibs/kabc:

yet more include directive cleanups.
I'm finding all these with a new krazy plugin. Be afraid :>

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 25 more) Revision 566929

Office

Martin Pfeiffer committed changes in /trunk/koffice/libs/kformula:

We won't anymore convert MathML to KFormula for loading,
we will directly parse MathML, so I defined the new interface for the loader and commented the old converter, who's code will just be altered a bit to fit the new task

Diffs: 1, 2, 3 Revision 566353

Multimedia

Bart Cerneels committed changes in /trunk/extragear/multimedia/amarok/src/playlistbrowseritem.cpp:

Start work on new way to update podcastchannels, this approach should work with all feed's you can throw at it.
Remeber: podcastepisodes are never removed from the db, only the files are removed when purging.

Koos Vriezen committed changes in /trunk/extragear/multimedia/kmplayer/src:

Merge tvdocument and recents to common FileDocument base for reading and
writing XML, needed to remove tv setting support kmplayer < 0.9
Add source for lists, instead of abusing others, mainly for allowing
lazy loading files

Diffs: 1, 2, 3, 4 Revision 566147
Mark Kretschmann committed changes in /trunk/extragear/multimedia/amarok/README:

MySQL v5 now required!

Utilities

Jason Kivlighn committed changes in /trunk/extragear/utils/krecipes:

Update *every* dialog to be KDE-standards compliant. The biggest visible change is probably slightly different margins/spacing, but it uses KDialogBase to automatically apply standard behavior.

These are the changed dialogs:
-Ingredient Parser
-Category selection dialog
-Author selection dialog
-All dialogs for entering in a new ingredient, prep method, category, weight, etc.
-Shopping list (this was also updated to use the unit abbreviation setting)
-Diet results
-Rating editor
-Measurement converter
-Database import dialogs
-Resize recipe dialog
-Load USDA data dialog
-Border selection dialog
-And probably a few I forgot...

All dialogs now inherit KDialogBase instead of QWidget/KDialog/QDialog. KDialogBase automatically creates buttons like "OK" and "Cancel" and places them either along the bottom or right and also takes care of signals generated by these buttons. It adds other handy/standard behavior such as making "Esc" close the dialog, uses standard keyboard shortcuts, and follows the KDE setting of whether or not buttons display icons on them.
Basically, it adds standard KDE dialog behavior with no effort on my part and with less code ;-) (around 500 less lines total)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 35 more) Revision 566039