* xpdf/gpdf-persist-stream.h, xpdf/gpdf-control.h, pdf-view.h
(#includes): update, use gpdf-g-switch.h,
s/BEGIN_GNOME_DECLS/G_BEGIN_DECLS/
* xpdf/gpdf-persist-stream.cc (#includes): update
(load_pdf_from_stream): Bonobo_Unknown_ref our stream
(delete_pdf_doc_full): unref our stream
(all around) update for new GObject, GSignal, Bonobo signatures
(gpdf_persist_stream_new, gpdf_persist_stream_construct): take iid
parameter to be passed on to bonobo_persist_stream_construct
* xpdf/gpdf-embeddable-view.cc: don't include
bonobo-application-x-pdf.h
* xpdf/gpdf-control.cc: PARENT_TYPE is BONOBO_TYPE_CONTROL;
update for new GObject, GtkWidget, Bonobo signatures
* xpdf/gpdf-control-ui.xml: use gtk-stock-pixmaps
* xpdf/bonobo-application-x-pdf.cc (#includes): use
gpdf-g-switch.h, update
(gpdf_factory): don't create embeddable, gpdf_persist_stream_new
takes iid parameter
(init_gpdf_factory, init_corba, init_bonobo): kill
(main): no need to init gdk_rgb; use BONOBO_FACTORY_INIT,
bonobo_generic_factory_main
* xpdf/Makefile.am (INCLUDES, LDADD): update
(bin_PROGRAMS): move gnome-pdf-viewer to libexec_PROGRAMS
(gnome_pdf_viewer_SOURCES): nobody needs
bonobo-application-x-pdf.h, don't build embeddable stuff
(oafdir, oaf_DATA): kill
(server_in_files, serverdir): add, do libexec sed job on
.server.in.in file, add @INTLTOOL_SERVER_RULE@
(uidir): s/gnome/gnome-2.0/
* xpdf/GOutputDev.cc (#includes): use gpdf-g-switch.h
(GOutputDev::GOutputDev): get size and depth of pixmap with
gdk_drawable_get_foo background color to white
(all around): gdk_region_foo now destructively update their first
argument, use gdk_rgb to find colors
(drawImageMask): don't gdk_image_new_bitmap
* xpdf/gpdf-g-switch.h: new file, include it when switching
between goo and glib headers
* xpdf/GNOME_PDF.server.in.in: factory is in @LIBEXECDIR@
s|GNOME/GenericFactory|Bonobo/GenericFactory|, make it
translatable, kill embeddable stanza
* xpdf/GNOME_PDF.oafinfo: remove
* xpdf/BonoboStream.cc:
s/Bonobo_Stream_SEEK_SET/Bonobo_Stream_SeekSet/ et al. (see
libbonobo/ChangeLog#2002-03-31)
* shell/gpdf.c (#includes): use G2 headers
(main): copy from eog
(struct _Component): kill (was embeddable code)
(USE_CONTROL): kill #define, kill all code surrounded by #if
!USE_CONTROL (i.e. embeddable code)
(all around): add Corba_Environment argument where it's needed now
(gw_control_load_pdf): s/BonoboStream \*stream/Bonobo_Stream
stream/. get the stream using monikers, unref it later
(gw_drag_data_received): use uri handling code from gnome-vfs
(verb_HelpAbout_cb): update for new gnome_about_new
(verb_DebugDumpXml_cb): kill
(gw_destroy): may be called more than once, so update assertions
(gw_finalize): is a GObject method now, chain up to parent
(class_init): update for GObject methods
(gw_setup_window): blend of bonobo_window_construct and old
gw_setup_geometry
(gw_setup_geometry): kill
(gw_setup_toplevel_ui): use BonoboUIContainer from BonoboWindow
(gpdf_window_construct): use gw_setup_window, not
bonobo_window_construct, not gw_setup_geometry
* shell/gpdf-window.h: s/BEGIN_GNOME_DECLS/G_BEGIN_DECLS/, kill
struct _Component decl (was used for embeddable)
* configure.in: clean it a bit; set version to 0.100 (version was
at 0.90.1 for ever and I don't want to call it 1.01.1, this is not
1.something quality code); use GNOME2 macros;
(i18n): update according to G2 porting guide
(gnome-lib-checks): use PKG_CHECK
* xpdf/gpdf-embeddable-view.cc (gev_set_pdf_cb)
(gpdf_embeddable_view_construct): see gc_set_pdf_cb entry below
* xpdf/gpdf-control.cc (GPdfControlPrivate: store persist_stream
(gpdf_control_destroy): write, install
(gc_setup_persist, gc_set_pdf_cb): pdf_view_set_pdf_doc on set_pdf
signal from persist_stream (used to be done in PdfView)
(gc_setup_widgets): pdf_view_new takes no parameter
* xpdf/pdf-view.h: s/extern "C" {// around headers
update declarations
* xpdf/pdf-view.cc (PdfViewPrivate): store only a PDFDoc, not a
GPdfPersistStream
(view_is_good): replace with IS_PDF_VIEW_WITH_DOC macro, use that
(last_page, next_page): get pdf_doc from priv
(setup_size): ditto, add parameter assertion
(render_page, pdf_view_get_page_width): get pdf_doc from priv
(pdf_view_set_zoom): only render_page if pdf_poc != NULL
(set_pdf_cb): inline into:
(pdf_view_set_pdf_doc): new method, eventually we can switch the
pdf to be displayed
(pv_destroy, pdf_view_construct, pdf_view_new): don't store a
GPdfPersistStream
* xpdf/gtkgesture.h: include gtk.h, protect with BEGIN_GNOME_DECLS
* xpdf/gpdf-persist-stream.h: move GPdfPersistStreamPrivate to
gpdf-persist-stream.cc
(gpdf_persist_stream_get_pdf_doc): declare
* xpdf/gpdf-persist-stream.cc (gpdf_persist_stream_get_pdf_doc):
new accessor method
* shell/gpdf-window-ui.xml: new file, based on xpdf/gpdf-ui.xml
* shell/gpdf.c (GPDF_IS_NON_NULL_WINDOW): add macro
(GW_RETURN_UNLESS_GW, GW_RETURN_VAL_UNLESS_GW): kill macros, use
GPDF_IS_NON_NULL_WINDOW with g_return_bla instead, this looks
more G'ish to me
* xpdf/.cvsignore: ignore gnome-pdf-viewer binary
* xpdf/Makefile.am (XML_FILES): don't distribute gpdf-ui.xml
(EXTRA_DIST): no ChangeLog here
* xpdf/gpdf-ui.xml: remove
* xpdf/gpdf-control-ui.xml: new file, based on
bonobo-application-x-pdf-ui.xml, half-hearted attempts to be
HIG-compliant
* xpdf/gpdf-control.cc (GPDF_IS_NON_NULL_CONTROL): add, use it
(gc_key_press_event): keyhandling mostly copied from embeddable
(verb_GoPagePrev_cb, verb_GoPageNext_cb, verb_GoPageFirst_cb)
(verb_GoPageLast_cb, gc_verbs []): add page verbs
(gc_set_ui_container, gc_unset_ui_container)
(gpdf_control_activate): install UI merging
(gc_set_zoom_items_visibility): only a dummy
(gpdf_control_construct): decompose into:
(gc_setup_persist, gc_setup_widgets): construct helpers
* xpdf/gpdf-embeddable-view.cc: use pdf_view_page_bla
* xpdf/pdf-view.cc (first_page, last_page, next_page, prev_page):
static again
(pdf_view_page_prev, pdf_view_page_next, pdf_view_page_first)
(pdf_view_page_last): methods to be called by the control (and the
embeddable view) to do what their names say
(IS_NON_NULL_PDF_VIEW): like IS_PDF_VIEW with obvious extra check
* xpdf/bonobo-application-x-pdf.cc: include GlobalParams.h,
(embeddable_factory): create a GPdfPersistStream first, then
create an embeddable.
* xpdf/gpdf-embeddable.cc (bed_free_data): move to
gpdf-persist-stream.cc as delete_pdf_doc_full
(load_pdf_from_stream): move to gpdf-persist-stream.cc
(finalize): free priv field
(class_init): kill pdf_changed signal, GPdfPersistStream has
set_pdf signal, use finalize
(gpdf_embeddable_add_interfaces): kill
(gpdf_embeddable_construct): take GPdfPersistStream param,
use bonobo_object_add_interface not gpdf_embeddable_add_intf
(gpdf_embeddable_new): take GPdfPersistStream param
* xpdf/gpdf-embeddable.h: remove extern "C" around bonobo
includes, they protect themselves. Introduce private struct,
still public. Use GPdfPersistStream
* xpdf/gpdf-persist-stream.cc, xpdf/gpdf-persist-stream.h:
files for new GPdfPersistStream class. Contains PDF loading code
* xpdf/BonoboStream.h: hide GList before including gnome headers
don't try to check for catalog after having discovered that !pdf->isOk and
2002-09-17 Martin Kretzschmar <Martin.Kretzschmar@inf.tu-dresden.de>
* gpdf-embeddable.cc (load_pdf_from_stream): don't try to check
for catalog after having discovered that !pdf->isOk and having
already deleted it. I introduced my first goto to this code.
Edsger Dijkstra in memoriam
2002-09-14 Martin Kretzschmar <Martin.Kretzschmar@inf.tu-dresden.de>
* gpdf-embeddable-view.h (GPdfEmbeddableView): kill bed member
* gpdf-embeddable-view.cc: removed newlines from g_message calls
(class_init): use checked casts, we now have destroy, no need to
keep a ref to our embeddable here
(gev_destroy): new destructor
s/printf/g_message/ (view_create_menus, view_remove_menus): rename to
2002-09-14 Martin Kretzschmar <Martin.Kretzschmar@inf.tu-dresden.de>
* xpdf/gpdf-embeddable-view.cc (gpdf_embeddable_view_new):
s/printf/g_message/
(view_create_menus, view_remove_menus): rename to
(gev_set_ui_container, gev_unset_ui_container): and rewrite in EOG
style
don't initialize embeddable (where did that come from?)
2002-09-13 Martin Kretzschmar <Martin.Kretzschmar@inf.tu-dresden.de>
* bonobo-application-x-pdf.cc (embeddable_factory): don't
initialize embeddable (where did that come from?)
* gpdf-embeddable-view.cc (gpdf_embeddable_view_construct): don't
handle "activate" by connecting...
(class_init): ...install a default signal handler...
(gev_activate): cleaned up "activate" handler, renamed from
(view_activate)
2002-09-13 Martin Kretzschmar <Martin.Kretzschmar@inf.tu-dresden.de>
* xpdf/Makefile.am: add pdf-view.cc, pdf-view.h
* xpdf/gpdf-embeddable-view.cc (view_is_good, first_page, last_page)
(next_page, prev_page, configure_size, setup_size, setup_pixmap)
(render_page, realize_mainbox, redraw_view_all, real_redraw_view)
(redraw_view): kill
(first_page, last_page, next_page, prev_page, redraw_view_all):
only declare here, use definitions from pdf-view.cc
(page_first_cb, page_next_cb, page_prev_cb, page_last_cb):
s/view_data_t/PdfView/ etc.
(view_switch_page): kill
(zoom_to_fit): leave only declaration
(view_zoom_verb, page_zoom_fit_width_cb, page_zoom_fit_height_cb)
(page_enlarge_cb, page_shrink_cb, view_zoom_query): s///
(verbs[]): make static
(view_create_menus, view_remove_menus, view_activate): s///
(button_press_event_cb, gesture_page_event_cb)
(gesture_zoom_event_cb): kill
(key_press_event_cb): s///, only handle scrolling here
(mainbox_realize): kill
(destroy_view): comment out for now
(init): empty
(gpdf_embeddable_view_construct): mainbox = pdf_view_new,
remove mainbox construction code
* xpdf/pdf-view.cc (view_is_good): s/view_data_t/PdfView/
(first_page, last_page, next_page, prev_page): non-static
(setup_pixmap): view_data is our mainbox now
(render_page): s/view_data_t/PdfView/ s/view_data/view/
(redraw_view_all): ditto
(realize_mainbox): /GPdfEmbeddableView/PdfView/ etc.
(real_redraw_view): ditto
(redraw_view): ditto, view is our mainbox now
(page_first_cb, page_next_cb, page_prev_cb, page_last_cb): kill
here (verb implementations)
(view_switch_page): s/// as above
(zoom_to_fit): non-static, commented out for now
(view_zoom_verb, view_zoom_query): s/// as above
(page_zoom_fit_width_cb, page_zoom_fit_height_cb)
(page_enlarge_cb, page_shrink_cb): kill here (verb impl)
(verbs[], view_create_menus, view_remove_menus, view_activate):
kill here (bonobo stuff)
(gesture_page_event_cb, gesture_zoom_event_cb): s///
(key_press_event_cb): don't handle scrolling here, s///
(destroy_view): kill here
(pdf_view_construct): kill everything except mainbox construction
* xpdf/gpdf-embeddable-view.h: view_data_t is no longer a typedef'd
GPdfEmbeddableView. Remove PdfView related members from
GPdfEmbeddableView
* xpdf/pdf-view.h: s/GPdfEmbeddableView/PdfView/ with some AI ;)
GPdfEmbeddableView still typedef'd view_data_t. Super class
is GtkEventBox
Split bonobo / non-bonobo parts of GPdfEmbeddableView:
* xpdf/pdf-view.h: new file (cvs copy of gpdf-embeddable.h)
* xpdf/pdf-view.c: ditto. These will contain non-bonobo parts
2002-09-08 Martin Kretzschmar <Martin.Kretzschmar@inf.tu-dresden.de>
* xpdf/GOutputDev.h: add missing gdk include
* xpdf/GOutputDev.cc (GOutputDev::drawLink): don't #if 0, just don't
use it
(GOutputDev::drawImage, GOutputDev::drawImageMask): use Michael's
broken image handling code from gpdf 0.90.1 instead of my even
more broken code
* xpdf/gpdf-embeddable-view.cc (render_page): disable links here.
(realize_mainbox): view == view_data now. Don't have to
gtk_object_get_data anymore
(real_redraw_view): ditto
(redraw_view): ditto, make it static again
(gpdf_embeddable_view_construct): connect redraw_view to
pdf_changed signal, don't gtk_object_set_data "view_data"
(view_switch_page, view_zoom_verb, view_activate)
(button_press_event_cb, gesture_page_event_cb)
(gesture_zoom_event_cb, key_press_event_cb, mainbox_realize): make
them static again
bed_t: Replace Data Value with Object [Fowler] i.e. turn it into the
2002-08-31 Martin Kretzschmar <Martin.Kretzschmar@inf.tu-dresden.de>
* xpdf/gpdf-embeddable.cc:
* xpdf/gpdf-embeddable.h: bed_t: Replace Data Value with Object
[Fowler] i.e. turn it into the GPdf::Embeddable class.
* xpdf/bonobo-application-x-pdf.cc: temporarily make some functions
non-static
(view_is_good): move up in file, use it in more places.
(setup_pixmap): remove window parameter, get it from view_data
(destroy_embed): move to GPdfEmbeddable::destroy
(embeddable_factory): drastically simplify, work is done in
GPdfEmbeddable::new and friends
remove count of running_objects.
* xpdf/gpdf-util.h: new file
(E_MAKE_TYPE): copied from gal
Synched with Xpdf 0.92
this adds "decryption" support
testing this code after six weeks immediately gives me segfaults (image drawing) :-O
must have fixed that later without knowing :-O
Ravi Pratap [Sun, 12 Aug 2001 14:11:25 +0000 (14:11 +0000)]
Add ZoomFitHeight verb and toolbar item.
2001-08-12 Ravi Pratap <ravi@che.iitm.ac.in>
* xpdf/bonobo-application-x-pdf-ui.xml : Add ZoomFitHeight verb and toolbar
item.
* xpdf/bonobo-application-x-pdf.h (VERB_Z_FIT): Rename to VERB_Z_FIT_WIDTH
(VERB_Z_FIT_HEIGHT): Add
* xpdf/bonobo-application-x-pdf.cc (verbs): Update to use the new
verbs and names.
(view_zoom_verb): update accordingly
(zoom_to_fit): Modify to take an extra argument determining type of fit. Use
the scrolled_window to determine allocation height and width.
* xpdf/Makefile.am : Comment out unnecessary targets
2001-08-10 Ravi Pratap <ravi@che.iitm.ac.in>
* xpdf/stock-zoom-in.xpm : Add
* xpdf/stock-zoom-out.xpm : Add
* xpdf/stock-zoom-fit.xpm : Add
* xpdf/stock-zoom-fit-wide.xpm : Add
* xpdf/stock-zoom-fit-tall.xpm : Add
* xpdf/Makefile.am : Update, add targets etc.
* xpdf/bonobo-application-x-pdf.cc (view_zoom_verb): Change zoom
factor to 1.2 which is more correct
(zoom_to_fit): Small tweak to enable better approximation
* xpdf/bonobo-application-x-pdf-ui.xml : Change ZoomFit to ZoomFitWidth.
* xpdf/bonobo-application-x-pdf.cc : Update to use the new name.
2001-08-09 Ravi Pratap <ravi@che.iitm.ac.in>
* xpdf/bonobo-application-pdf-ui.xml: Add Zoom items to the
toolbar
2001-07-10 Ravi Pratap <ravi@che.iitm.ac.in>
* xpdf/gpdf.cc (main): Make indentation consistent with the
rest of the source
2001-07-01 Ravi Pratap <ravi@che.iitm.ac.in>
* xpdf/gpdf-ui.xml: Make the print menu item visible.
* gpdf.cc (container_launch_component): update for ItemContainer
rename. (container_new): update to bonobo-win stuff.
(container_set_view): use compat_get_container.
* bonobo-application-x-pdf.cc (embeddable_factory): s/gtk/bonobo/
on unref. Junk 2 stop tabs throught, Derek can have my kittens.
(view_create_menus): create the pdf toolbar before using it.
(button_press_event_cb): return a value.
Darin Adler [Fri, 26 May 2000 17:08:39 +0000 (17:08 +0000)]
Updated for new PersistStream interface. I mostly just passed NULLs. Not
* xpdf/bonobo-application-x-pdf.cc (load_pdf_from_stream),
(embeddable_factory):
* xpdf/gpdf.cc: (open_pdf):
Updated for new PersistStream interface. I mostly just passed
NULLs. Not 100% sure that's correct.
* configure.in, aclocal.m4: Detect when Bonobo is built with OAF
support, and if so use OAF.
* xpdf/Makefile.am: When using OAF, link against OAF and install
oafinfo file.
* xpdf/gpdf.cc: Include oaf headers when using OAF.
(openpdf): Use OAFIID to activate the component when using OAF.
(container_set_view), (container_launch_component),
(container_new): Put the view in an EventBox, not a
ScrolledWindow; the component now handles scrolling itself.
(key_press_event_cb): Removed; key press handling moved to
component.
(main): Initialize OAF instead of GOAD when using OAF.
* xpdf/bonobo-application-x-pdf.cc: Include OAF headers when using
OAF.
(redraw_view): Handle the case where we are loading before the
view is realized by connecting to the "realize" signal handler
and deferring redrawing until then in that case.
(real_redraw_view): Function to do the real redrawing.
(load_pdf_from_stream): Don't call `realize_mainbox' directly, let
`real_redraw_view' do it.
(key_press_event_cb): In response to various key bindings, scroll
the view, navigate pages, or zoom in/out.
(button_press_event_cb): Grab the keyboard focus on a press of
button 1.
(view_create_menus): Rename menus to be more standard, and provide
accelerators for menus and items.
(realize_mainbox): Get window ourselves if we have to.
(view_factory): Put the view in a scrolled window so scrolling can
be handled by the component itself. Connect to "key_press" and
"button_press" for keyboard and focus handling. Set the
GTK_CAN_FOCUS flag for the main view widget.
(init_bonobo_application_x_pdf_factory, init_server_factory): Use
OAF when appropriate.
* xpdf/application-x-pdf.oafinfo: New file, OAF activation record.