Commit graph

31 commits

Author SHA1 Message Date
Enrico Ros
eed32c7654 FixPack 1: Small fix all over the code. Searwidget rewrite: looks good,
feels better. Updated TODO with interesting things.
Note: I feel performance loss. Need to check carefully all zoom functions,
relayouts and wasted paints. I'll love to do that after merging to HEAD.
Note to all: HEAD merge only after API will be final (the only 2 variables
are MemManager, ThreadedGen and maybe a DocumentDom (if I can make it next
weekend, but I think not)).

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=370404
2004-12-13 18:21:37 +00:00
Enrico Ros
f7406846d0 Added a wish by Pino Toscano and many other for sure: bookmarks.
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=370140
2004-12-12 17:10:59 +00:00
Enrico Ros
0c5cd4e01a Fixed a GeneratorPDF <-> KPDFOutputDev bug.
Abstracted xpdf's Outline to a Dom Tree. Fixed MERGE tags through the code.
Added comments (documentation) to KPDFDocument class and other classes in
document.h. Changed a little Generator interface.
Moved code from toc.h/.cpp to GeneratorPDF and shrinked a lot.

TODO (now): Convert TOC (widget) to use the Dom tree as data source.

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=369914
2004-12-11 17:25:03 +00:00
Enrico Ros
5f4236d801 Abstracted Generator and ported xpdf dependant code (most of) to the
GeneratorPDF class. Adapted the whole KPDFLink class to a hieracy of
classes and added a Viewport description associated to 'Goto' links.

Link hasn't got geometry properties. A PageRect class has born to describe
all 'active rects' on a page (hand pointed on mouse over). PageRect can
contain many type of objects such as Links or other active items (images,
...). The Page class now stores PageRects only (no more geometric Links,
as already said).

Added a DocumentInfo class filled in by generators and used by the
PropertiesDialog.

Outline hasn't been abstracted while now, but a DocumentSynopsis class
is in place and work needs to be done to make GeneratorPDF fill in a
DocumentSynopsis instance and pass it to the Toc widget.

Note1: Document has nothing more to do with xpdf, it only commands its
generator.
Note2: 2 remaining classes to be abstracted: Outline, TextPage. But
waning..

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=369651
2004-12-10 16:04:45 +00:00
Albert Astals Cid
d2fab9ae82 PDF properties dialog
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=368769
2004-12-05 22:47:32 +00:00
André Wöbbeking
e40e78672e no QObject no moc
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=363953
2004-11-18 13:26:19 +00:00
Enrico Ros
7befe4e9f6 Fix switching Paper color on the fly. Fix clearing viewport when can't open
a document. Fix countour drawing on links and images. Synced TODO.

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=362414
2004-11-12 10:58:33 +00:00
Enrico Ros
b1ad685b54 Small API fixes. Preparing for mem-manager / async-gen. Removed KPDFDocument
dependancy from QObject. Kpdf_Part is now a Document Observer (only monitors
page changes to update actions).
Modified Accessibility(Recolor) settings and config dialog, fixed a bug,
page color change on-the-fly (pixmap refresh mechanism to add..).

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=361759
2004-11-09 17:20:19 +00:00
Enrico Ros
5c80b0d140 misc
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=361223
2004-11-07 17:16:04 +00:00
Enrico Ros
a02490d1eb Decoupling drawing code and KPDFPage class. Work to get a common and shared
rendering function is underway ...

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=360883
2004-11-06 00:56:55 +00:00
Albert Astals Cid
4fca42dd6d *** empty log message ***
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=360211
2004-11-03 21:37:21 +00:00
Enrico Ros
dec5dbb31b rework for adding mem management / thread gen in preogress...
public slots -> public functions. they were slots, but wrongly.
merget setPage and setPagePosition using overloading.

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=358204
2004-10-27 14:07:24 +00:00
Laurent Montel
ee6357d4bb Add const
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=357310
2004-10-24 13:08:31 +00:00
Albert Astals Cid
fbc3b2fff3 Add the possibility of opening links to files that are not pdfs. I have tested with the only one i have that points to a .avi.
CCMAIL:eros.kde@email.it

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=355363
2004-10-17 18:40:02 +00:00
Enrico Ros
424eb8944c Misc cleanups pending on my hd.
slotSetCurrentPagePosition -> slotSetCurrentPageViewport. Not completely
implemented but working. After implementation clicking on links will do the
right job on the viewport.

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=353365
2004-10-10 13:21:30 +00:00
Enrico Ros
cc7d8b676d Reworked the KPDFLink class. Links are functional now. TOC is working.
Only Movies and (XPDF's) LinkDestKind (that defines 'anchor place' for
link destination) aren't implemented as of now.
Fixed a bug in text selection. This commit will probably generate a fake
unsafe warning. Note: I'm committing from work :-P
CCMAIL: tsdgeos@terra.es

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=353078
2004-10-09 08:10:56 +00:00
Enrico Ros
e058e60858 Small pending things. ++Link handling (~70% done now). New: Hands-free
reading (well, this could also be called view-auto-scrolling :-). The
behavior is *exactly* the same we have in konqueror but we use actions, so
shortcuts are configurable. Shift+Up/Down sets scroll speed. Ctrl/Shift
suspend (toggle) scrolling, etc.. This is useful when used in "continous
single page mode".

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=352244
2004-10-06 00:05:49 +00:00
Enrico Ros
d905b1fd0b Single page mode back to work laying out in the qscrollview only current
page, hiding others and redefining contents area. Bookmark action moved to
document, that updates observers state after each operation. Many fixes in
pageview. Pixmapwidget returns a const KPDFPage*. No scroll-on-drag and
go-to-page only with left click onThumbnailList. Starting to reorganize
PageView events (link test with cursor changing on page sample impl.).

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=350583
2004-09-30 18:16:12 +00:00
Enrico Ros
40cb0b1c93 NEW: Continous mode + multiple pages per view + break up what was working.
Code in thumbnail.* is ported into pixmapwidget and shared with a new class
that renders the page inside the (also new) pageview that borns over the
old kpdf_pagewidget class.
This commit features a 'state of the art' working-by-chance, buggy,
segfault prone view-layout algo.. :-) maybe that's stuff to fix soon!!

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=349598
2004-09-26 23:39:39 +00:00
Enrico Ros
92fee56a82 Assign a different id to toc, to not masks thumnailList observer.
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=349026
2004-09-24 12:43:20 +00:00
Albert Astals Cid
545117b379 Here comes the TOC
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=348922
2004-09-23 21:33:53 +00:00
Enrico Ros
b9db06f874 Some cleanups. Some experiments. Nothing cool, boring stuf.
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=347252
2004-09-17 17:58:42 +00:00
Enrico Ros
7cd6bbf139 Added "search-as-you-tipe" feature. Note:takes lots of ram for big
documents but you can try it for 200 pages pdfs. It's pretty fast. You
type in some words and only pages containing that sting are displayed.

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=347060
2004-09-16 21:27:34 +00:00
Enrico Ros
4569e4eea9 Backported search. Clean, elegant and SOO FAST after the 1st loop (well, if
you have enough ram). Based on aacid's search code. This implements case
sensitive search too (a little tricky but it worths). Finally done.

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=347051
2004-09-16 21:04:49 +00:00
Enrico Ros
727d5dd57a More refactoring. Big internal changes but nothing visible.. apart from a
memory reduction on the displayed page. OutputDev under big changes.
Now DocumentObservers have an unique ID so they can queue requests to
documents and they get their data stored in Page(s). No more Pixmaps or
Thumbnails requests, every observer can request a custom-sized pixmap for
a given page. That makes room for new observers (like a cool perspective
book like page viewer or stacked viewer or what your fantasy suggests :-).

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=346792
2004-09-15 20:45:00 +00:00
Enrico Ros
cf3b8a9467 Misc updates.
svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=346097
2004-09-13 08:51:36 +00:00
Enrico Ros
e548f40439 Optimized syncronous thumbnails/pixmap loaders. Moved some actions from the
part to the two sub-widgets. Cleanups and commented stuff. I love comments.

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=345701
2004-09-11 15:59:32 +00:00
Enrico Ros
712dd1e8c0 Reworked the page class. Added in-place (only a non-threaded quick test,
but will change soon!) thumbnail generator. Previews are shown and rescaled
smoothly. Some optimizations and fixes (over my buggy code :-P). kpdf rocks

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=345508
2004-09-10 17:44:05 +00:00
Enrico Ros
cc007b6ba5 A big performance enhance. Bypassed QTable and reimplemented QScrollview to
mimic the same behavior. Dynamic zooming previews.

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=345314
2004-09-09 21:16:26 +00:00
Enrico Ros
078b81b780 More cleanups and code refactoring. Changes: goToPage dialog, previews use
different ratio for pages, splitter between previews and page widgets.
_Part porting is nearly done..

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=345216
2004-09-09 13:25:40 +00:00
Enrico Ros
9392dd2709 Break everything I can. (still compiles but I don't want it to do! :-).
Cleaned up a lot. Added 2 classes, reorganized the code. Also reindented
the part to please AACid's style. I'll resort some of the funcitonalities
soon. Plz, wait for the end of breakings before making changes.

svn path=/branches/kpdf_experiments/kdegraphics/kpdf/; revision=344958
2004-09-08 12:41:14 +00:00