existing ones, updated 'tools.xml' with new names and made generator_pdf
parse pdf icon names as lowercase. Added SVG sources too for the icons.
- note that I suck as icon maker, so plz make good looking icons and don't
complain about these - :-))
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=405395
a bug in Annotation::Window.
PDFGenerator: added postprocessing for handle the special pdf cases on
TextAnnotations (where window geometry is embedded in annotation, not
in popup and the annotation should be represented as an icon).
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=404023
Warning before running out of memory and stop pixmap request.
CCMAIL: 103435@bugs.kde.org
PagePainter:
Not related to the bug: avoid scaling up slow pixmaps.
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=403884
and retrieval xml test. This second rewrite seems better than the
previous one. Maybe it's not perfect bug finally it's good enought
to move ahead now.
Annotations:
Restored and verified XML loading/saving with recursive storing and
retrieval of referenced objects. 100% verified and tested. Finally
all is working as expected. The structure is clean and it's simple
to choose the way to go now: rendering. Updated AnnotationUtils, More
comments, removed leak.
Page:
Adapted to changes to AnnotationUtils and Annotation, changed context
saving.
Misc updates on TODO and PDFGenerator (fixed Ext flag).
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=403863
Better flow in annotations parser.
Annotation:
Cleanups in header.
PageView:
Adjusted a squelch.. I think a neural network it's the least we can do
to choose that float number between 0.6 and 0.7.
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=403319
PDFGenerator:
Changed parser to deal with the new data structures:
1) Popups are not inserted anymore as annotations, but parsed and
scheduled for later merging with other annotations. Shared popups are
permitted (the pdf reference doesn't clarify on this, so we better
support them).
2) Annotations can have an internal hieracy. When an IRT annotation is
found, it's parsed and scheduled for later merging in the parent's
tree.
The merges take place at the end of the annotation retrieval. At that
point all cross-objects are in memory and we can resolve/reparent
stuff.
README.Annotations:
Note on internal parser.
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=403219
all the reviews on the document (pretty unuseful now, but that will
change ;-). Another step to good kpdf annotations.
Part:
Added Reviews toolbox pane. Added (commented out while doing it right)
searchline for toc; just works.
Misc:
Observer: added id for Reviews pane (as document observer it monitors
document/annotations changes). Page: added 2 temporary accessors for
annotations (will change soon). Makefile: added side_reviews.cpp to
compilation. Searchwidget: slight better spacing to look consistant with
the review panel.
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=400307
annotations in the 'document tie file'. Every attribute of kpdf dss
can be dumped to disk. Only rendering prevents HEAD merging now! :-)
Annotations:
Storage: full annotations saving/loding on the tied XML is implemented.
every annotation put on a page (either loaded from a pdf or created
internally is loaded and saved when opening/closing a document).
Attributes are dumped to XML and reloaded from it via qdom
DataStructures: internal changes, better naming, some attributes fused.
PopupAnnotation has become WindowAnnotation
PDF16Parser: 100% completeness for the types we support
PDFGenerator:
adapted to annotation ds changes. better parsing on a couple of attrs.
correctly handle 'F'.
Misc:
Document: remove/cleanup debugs, Page: performance testing stuff added,
PagePainter: setPen( annot->color ), PageV..or: typo,
TODO: many changes
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=398789
Changed loadDocumentInfo/saveDocumentInfo semantics. Document settings
are saved by Document, but page related stuff (bookmark state,
annotations, ...) are loaded/saved by the KPDFPage itself.
Annotation:
Better usage of dom entities (QDomElement(s) -> QDomNode(s)). Added const
modifier to 'saveSettings' methods.
Part:
Use setCheckedState for the show/hide left panel menu entry. Use icon
too. Bumped .rc revision.
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=397236
AFAIK the kpdf team is once again the first opensource reader to get
support for a cool feature. All annotations in pdf file are read and
converted to our internal data structures. Then they'll be rendered on
screen and changed/saved to our xml file.
Annotations completely supported and parsed from PDF: [markup], popup,
text, freetext, line, polygon, polyline, highlight, underline, squiggly,
strikeout, stamp, ink. Partial support for: [base], geom.
Annotations:
Added/Changed the passive annotation data structures to contain and
generalize the attributes of annotation classes. Missing attributes
(won't be handled by kpdf): base{P,AP,AS,A,AA,StructPar,OC}, geom{RD}.
Little changes to the PDF1.6 summary in header.
PDFGenerator:
Internal parser (discussed with Albert) directly in top of xpdf. Read
object nodes of type 'Annot' and parse the whole set of attributes as
defined in the PDF1.6 spec (for supported annotations).
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=396909
Annotation: the class has been passivized. It's only a data container now,
no more active manipulation of events/paints.
PageViewAnnotator: this class has been created to handle creating annots.
PageView creates its 'Annotator on demand. The annotator parses tool
definition from the 'tool.xml' file.
The Annotator internally uses AnnotatorEngine(s) to react to mouse events
and the annotation is created when the job is really finished.
Page: added a (maybe temporary) NormalizedPoint to complement Norm..Rect.
PageViewUtils: removed PageViewEditTools and cleaned up header.
conf/: added a debug option for showing annotation boundary while creating
one and added a temporary 'debug' toolbox in the config dialogs.
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=394959
--enable-force-kpdf-drm is a configure option, it defaults to NO, if YES DRM is ALLWAYS obeyed
skip_drm is a kiosk option, it defaults to YES, if NO, means the user is not authorized to skip DRM and DRM is ALLWAYS obeyed
if previous options are no and yes, the user sees a GUI option called Obey DRM limitations that defaults to YES but the user can set to NO from the GUI
svn path=/trunk/kdegraphics/kpdf/; revision=394412
How it is going to end:
- Exists a configure option called --enable-kpdf-drm that is DISABLE by default and you can use to FORCE kpdf obeying DRM
- Exists a kiosk option called skip_drm that is true by default and the admin can set to TRUE to FORCE kdpf obeying DRM
- Exists a GUI option called Obey pdf limitations that is shown if skip_drm is true, that option is ON by default, that means DRM is obeyed but the user can disable it from the GUI
Hope that will please everyone
Please can somebody with better english than me check that the wording i used is actually correct english? Thanks
svn path=/trunk/kdegraphics/kpdf/; revision=394212
Olaf can you check that fixes your wrong paper format complaining printer too?
CCMAIL: 98837@bugs.kde.org
BUGS: 100003
svn path=/trunk/kdegraphics/kpdf/; revision=393859
pageviewtoolbox.cpp/.h: Removed.
PageViewToolBar (was PageViewToolbox): Moved def/impl inside the
pageviewutils.c/.h files. Uses eventfilter to get notified when the
anchorWidget changes in size. Cleaned up code.
Annotations: added empty code.
PageView: removed some code. fixed rmb popup menu hidden if no document
was opened.
Updated TODO.
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=393302
SearchWidget). Splitted SearchType::GoogleLike in GoogleAll and GoogleAny
to mark pages if all words are present or at least one is present resp.
--TODOs;
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=391354
really nice (and well documented) API! Passwords of protected files are
stored in the 'KPdf' folder of the Network wallet.
Updated todo.
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=391251
IMHO this is not a feaute but a bug-fix as if this is not implemented we let the user copy text and print from PDF that are protected against and wether we may like it or not is what the spec says and we could get in problems if someone copies text from a protected PDF using our tool.
svn path=/trunk/kdegraphics/kpdf/; revision=390866
implement annotations now (and create the save/load procedure).
Annotations: converging to a stable Annotation definition. Changed a bit
the paint functions. Added a first 'template' annotation, a simple
pen-like segments recorder for framework testing purposes only. This
has events filters in place and the rough paint function implemented.
PageView: removed the MouseEdit mode and using that button for toggling
the editToolBox instead. Added Annotation support. When the Annotation
is created, all pageView events flow through that new object. Repaint
of damaged/old areas is done internally and is based on the geometry
of the annotation we're creating. When an Annotation is complete, it
is reparented to the Page that adds it to its internal list.
From that point on the annotation will be rendered by pagePainter
using the pixmap-based paint function provided by the annotation
itself.
PagePainter: draws annotations stored in pages when rendering (using the
'rought paint function' till the good pixmap based one will be in
place.
Page: added preliminary support for adding Annotation(s) to the page
and deleting them all.
Document: added the pass-through call to add an Annotation to the Page
and notify observers.
PageViewToolbox: can be draged and attached to any side. Position is
remembered between runs (choose your side and that the toolbox will
always be there). Available on Right and Bottom sides too. Emits -1
when the current tool is deselected.
Misc: added Annotations to both the 'observers changed flags' and the
'pagepainter' ones and updated ui classes accordingly.
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=390638
User Interface: added a toolbox for selecting an annotation tool without
polluting the toolbar (pageviewtoolbox animated widget). Icons of that
toolbar are gimped version of ones in nuvola icontheme.
Core: added annotation class. this will support all features (except for
silly ones (really there are some!)) from pdf 1.6 specs but abstracted
in the kdpf way. (api changes in progress...)
About annotations: only some incomplete interfaces are in plasefor now.
Every type of pdf annotations has tens of parameters. I think we'll render
correctly everything but provide only simple and useful tools for making
annotations over the pages, otherwise a 'Qt designer like' property view
will be required to do fine adjustment over the crappy thousands of
settings. (and we're aiming at a quick and simple viewer with lots of
coolness, not chaos).
Note: the code has been wrongly committed to HEAD before,but soon reverted.
Have fun!
svn path=/branches/kpdf_annotations/kdegraphics/kpdf/; revision=388768
User Interface: added a toolbox for selecting an annotation tool without
polluting the toolbar (pageviewtoolbox animated widget). Icons of that
toolbar are gimped version of ones in nuvola icontheme.
Core: added annotation class. this will support all features (except for
silly ones (really there are some!)) from pdf 1.6 specs but abstracted
in the kdpf way. (api changes in progress...)
About annotations: only some incomplete interfaces are in plasefor now.
Every type of pdf annotations has tens of parameters. I think we'll render
correctly everything but provide only simple and useful tools for making
annotations over the pages, otherwise a 'Qt designer like' property view
will be required to do fine adjustment over the crappy thousands of
settings. (and we're aiming at a quick and simple viewer with lots of
coolness, not chaos).
Have fun!
svn path=/trunk/kdegraphics/kpdf/; revision=388699