Commit 1d56df07 authored by Mathieu Bouchard's avatar Mathieu Bouchard Committed by Barak A. Pearlmutter

Import Debian changes 0.4.1-1

xournal (0.4.1-1) unstable; urgency=low

  * New upstream release (Closes: #410909, #441222, #458684)
  * Fix FTBFS if build twice in a row (Closes: #442773)
  * Removed deprecated Encoding key from desktop files
  * Added Wl,--as-needed as linking options to remove linking to unused
    libraries
parents d5675430 8e1c17e4
Version 0.4.1 (Sep 15, 2007):
- bugfix: compatibility with new versions of pdftoppm (thanks to V. Ciancia)
- GTK+ 2.11 event processing bugfix
- minor bugfixes: hand tool, handling of filenames containing '&'
- desktop and MIME files (thanks to Mathieu Bouchard) + updated installer
- config options: left-handed scrollbar (contributed by Uwe Winter),
hide some menu items (customizable in config file), auto-save preferences
Version 0.4.0.1 (Sep 3, 2007):
- bugfixes for GTK+ 2.11 behavior (thanks to everyone who reported bugs)
Version 0.4 (Aug 15, 2007):
- text tool (handles most TrueType and Type1 fonts)
- font selection dialog and button
- keyboard mappings (arrow keys)
- menu mnemonics and shortcuts (suggestions by Jean-Baptiste Rouquier)
- more responsive hand tool
- bugfix for GTK+ 2.11 XInput behavior (thanks to Robert Gerlach)
- various minor bugfixes and enhancements
Version 0.3.3 (Jan 31, 2007):
- bugfix: upon loading a new file, zoom is set to default startup zoom
- config option to allow input from a mouse or other core pointer device
......
......@@ -56,7 +56,7 @@ Installation in /usr/local:
./autogen.sh
make
(as root) make install
(as root) make desktop-install
Installation in $HOME:
......@@ -64,3 +64,4 @@ Installation in $HOME:
./configure --prefix=$HOME
make
make install
make home-desktop-install
......@@ -4,8 +4,8 @@ SUBDIRS = src
EXTRA_DIST = \
autogen.sh \
xournal.glade \
xournal.gladep
xournal.glade xournal.gladep \
xournal.xml x-xoj.desktop xournal.desktop
install-data-local:
@$(NORMAL_INSTALL)
......@@ -27,6 +27,66 @@ install-data-local:
if test ! -e $(DESTDIR)$(pkgdatadir)/html-doc/pixmaps; then \
ln -s ../pixmaps $(DESTDIR)$(pkgdatadir)/html-doc/pixmaps; \
fi \
fi; \
echo "*** Desktop files, icons, MIME types not installed. Run 'make desktop-install'"; \
echo "*** (or 'make home-desktop-install' for installation in a home directory)."
desktop-install:
if test "$(datadir)" = "/usr/share"; then \
desktopdir=/usr/share; \
else \
desktopdir=/usr/local/share; \
fi; \
$(mkinstalldirs) $(DESTDIR)$$desktopdir/icons/hicolor/scalable/apps; \
$(mkinstalldirs) $(DESTDIR)$$desktopdir/icons/hicolor/scalable/mimetypes; \
$(mkinstalldirs) $(DESTDIR)$$desktopdir/mime/packages; \
$(mkinstalldirs) $(DESTDIR)$$desktopdir/applications; \
$(mkinstalldirs) $(DESTDIR)/usr/share/mimelnk/application; \
$(INSTALL_DATA) $(srcdir)/pixmaps/xournal.svg $(DESTDIR)$$desktopdir/icons/hicolor/scalable/apps; \
$(INSTALL_DATA) $(srcdir)/pixmaps/xoj.svg $(DESTDIR)$$desktopdir/icons/hicolor/scalable/mimetypes; \
if test ! -e $(DESTDIR)$$desktopdir/icons/hicolor/scalable/mimetypes/gnome-mime-application-x-xoj.svg; then \
ln -s xoj.svg $(DESTDIR)$$desktopdir/icons/hicolor/scalable/mimetypes/gnome-mime-application-x-xoj.svg; \
fi; \
$(INSTALL_DATA) $(srcdir)/xournal.xml $(DESTDIR)$$desktopdir/mime/packages; \
$(INSTALL_DATA) $(srcdir)/xournal.desktop $(DESTDIR)$$desktopdir/applications; \
$(INSTALL_DATA) $(srcdir)/x-xoj.desktop $(DESTDIR)/usr/share/mimelnk/application; \
if test -z "$(DESTDIR)"; then \
echo "Updating desktop, mime, and icon databases."; \
update-desktop-database; \
update-mime-database $$desktopdir/mime; \
gtk-update-icon-cache -f -t $$desktopdir/icons/hicolor; \
else \
echo "*** Not updating desktop, mime, and icon databases. After install, run:"; \
echo "*** update-desktop-database"; \
echo "*** update-mime-database $$desktopdir/mime"; \
echo "*** gtk-update-icon-cache -f -t $$desktopdir/icons/hicolor"; \
fi
home-desktop-install:
desktopdir=$(HOME)/.local/share; \
$(mkinstalldirs) $(DESTDIR)$$desktopdir/icons/hicolor/scalable/apps; \
$(mkinstalldirs) $(DESTDIR)$$desktopdir/icons/hicolor/scalable/mimetypes; \
$(mkinstalldirs) $(DESTDIR)$$desktopdir/mime/packages; \
$(mkinstalldirs) $(DESTDIR)$$desktopdir/applications; \
$(mkinstalldirs) $(DESTDIR)$(HOME)/.kde/share/mimelnk/application; \
$(INSTALL_DATA) $(srcdir)/pixmaps/xournal.svg $(DESTDIR)$$desktopdir/icons/hicolor/scalable/apps; \
$(INSTALL_DATA) $(srcdir)/pixmaps/xoj.svg $(DESTDIR)$$desktopdir/icons/hicolor/scalable/mimetypes; \
if test ! -e $(DESTDIR)$$desktopdir/icons/hicolor/scalable/mimetypes/gnome-mime-application-x-xoj.svg; then \
ln -s xoj.svg $(DESTDIR)$$desktopdir/icons/hicolor/scalable/mimetypes/gnome-mime-application-x-xoj.svg; \
fi; \
$(INSTALL_DATA) $(srcdir)/xournal.xml $(DESTDIR)$$desktopdir/mime/packages; \
$(INSTALL_DATA) $(srcdir)/xournal.desktop $(DESTDIR)$$desktopdir/applications; \
$(INSTALL_DATA) $(srcdir)/x-xoj.desktop $(DESTDIR)$(HOME)/.kde/share/mimelnk/application; \
if test -z "$(DESTDIR)"; then \
echo "Updating desktop, mime, and icon databases."; \
XDG_DATA_DIRS=$(HOME)/.local/share update-desktop-database; \
update-mime-database $$desktopdir/mime; \
gtk-update-icon-cache -f -t $$desktopdir/icons/hicolor; \
else \
echo "*** Not updating desktop, mime, and icon databases. After install, run:"; \
echo "*** update-desktop-database"; \
echo "*** update-mime-database $$desktopdir/mime"; \
echo "*** gtk-update-icon-cache -f -t $$desktopdir/icons/hicolor"; \
fi
dist-hook:
......
Version 0.3.3 (January 31, 2007)
Version 0.4.1 (September 15, 2007)
Installation: see INSTALL
User's manual: see html-doc/manual.html
......
Version 0.3.3 (January 31, 2007)
Version 0.4.1 (September 15, 2007)
Installation: see INSTALL
User's manual: see html-doc/manual.html
......
dnl Process this file with autoconf to produce a configure script.
AC_INIT(configure.in)
AM_INIT_AUTOMAKE(xournal, 0.3.3)
AM_INIT_AUTOMAKE(xournal, 0.4.1)
AM_CONFIG_HEADER(config.h)
AM_MAINTAINER_MODE
......
xournal (0.4.1-1) unstable; urgency=low
* New upstream release (Closes: #410909, #441222, #458684)
* Fix FTBFS if build twice in a row (Closes: #442773)
* Removed deprecated Encoding key from desktop files
* Added Wl,--as-needed as linking options to remove linking to unused
libraries
-- Mathieu Bouchard <mbouchar@bioinfo.ulaval.ca> Sat, 15 Sep 2007 23:18:10 -0400
xournal (0.3.3-1) unstable; urgency=low
* New upstream release
......
Source: xournal
Section: x11
Section: utils
Priority: optional
Maintainer: Mathieu Bouchard <mbouchar@bioinfo.ulaval.ca>
Build-Depends: debhelper (>= 5), autoconf, automake, libgtk2.0-dev (>= 2.4), libgnomecanvas2-dev, libgnomeprint2.2-dev, libgnomeprintui2.2-dev
Standards-Version: 3.7.2
Standards-Version: 3.7.3
Homepage: http://xournal.sourceforge.net/
Package: xournal
Architecture: any
Depends: ${shlibs:Depends}, gs, xpdf-reader (>= 3.0)
Depends: ${shlibs:Depends}, gs, poppler-utils
Description: GTK+ Application for note taking
Xournal is a GTK+ application for notetaking, sketching and
keeping a journal using a stylus. It can also be used to
add annotations to PDF files.
.
Homepage: http://xournal.sourceforge.net/
This is xournal, maintained by Mathieu Bouchard <mbouchar@bioinfo.ulaval.ca>
on Mon, 27 Feb 2006 11:35:09 -0500.
This package was debianized by Mathieu Bouchard <mbouchar@bioinfo.ulaval.ca> on
Mon, 27 Feb 2006 11:35:09 -0500.
The original source can always be found at:
http://xournal.sourceforge.net/
It was downloaded from <http://xournal.sourceforge.net/>
Copyright (C) 2006 Denis Auroux
Upstream Author:
Denis Auroux <auroux@math.mit.edu>
Copyright:
<Copyright (C) 2007 Denis Auroux>
License:
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This package is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this package; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
You should have received a copy of the GNU General Public License
along with this package; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
On Debian systems, the complete text of the GNU General
Public License can be found in `/usr/share/common-licenses/GPL'.
The Debian packaging is (C) 2007, Mathieu Bouchard <mbouchar@bioinfo.ulaval.ca> and
is licensed under the GPL, see above.
?package(xournal):needs="X11" section="Apps/Tools"\
?package(xournal):needs="X11" section="Applications/Editors"\
title="xournal" command="/usr/bin/xournal"
......@@ -25,9 +25,7 @@ configure-stamp:
touch configure-stamp
build: build-stamp
build-stamp: configure-stamp
dh_testdir
......@@ -39,15 +37,17 @@ build-stamp: configure-stamp
clean:
dh_testdir
dh_testroot
rm -f build-stamp configure-stamp
# Add here commands to clean up after the build process.
if test -d Makefile; then \
-$(MAKE) clean >& /dev/null; \
if test -f Makefile; then \
$(MAKE) distclean; \
else \
rm -f src/xournal; \
fi
rm -f configure-stamp build-stamp
rm -f depcomp install-sh missing configure
dh_clean
install: build
......@@ -58,7 +58,7 @@ install: build
# Add here commands to install the package into debian/xournal.
$(MAKE) install DESTDIR=$(CURDIR)/debian/xournal
$(MAKE) desktop-install DESTDIR=$(CURDIR)/debian/xournal
# Build architecture-independent files here.
binary-indep: build install
......@@ -72,6 +72,7 @@ binary-arch: build install
dh_installdocs
dh_installman debian/xournal.1
dh_installmenu
dh_desktop
dh_link
dh_strip
dh_compress
......
......@@ -24,7 +24,7 @@
Xournal User's Manual
</h2>
<p style="font-size: 0.95em; text-align: center; color: rgb(0,0,0)">
Version 0.3.3
Version 0.4.1
</p>
<hr />
<p>
......@@ -127,6 +127,28 @@ the Tools menu):
is yellow) and thicknesses. Use the color and thickness toolbar buttons
to change these settings.
</p>
<h3 class="subsub"><img src="pixmaps/text-tool.png"> The text tool</h3>
<p>
To insert a new text item, click at the location where the text is to be
inserted on the page, then type it in or paste it using the contextual
menu (note: no wrapping is performed). To modify a text item, click inside
it. The font and point size can be modified using the "Text Font" command
in the Tools menu (or the toolbar button). The color is the same as that
currently selected for the pen (and can be modified using the toolbar
buttons).
</p>
<p>
Text items can contain arbitrary Unicode characters, provided that a
suitable font is installed on your system. However, languages written
in a direction other than left-to-right might not be handled properly.
If a journal contains some items in a font that is unavailable on your
system, another one will be substituted. (Also, text items will be
lost if the document is opened in a version of Xournal prior to 0.4).
Finally, note that the printing and PDF export features only accept
TrueType and Type 1 scalable fonts (do not use any bitmap fonts), and
that the typesetting of the text may be slightly different in the
printout.
</p>
<h3 class="subsub"><img src="pixmaps/ruler.png"> The ruler</h3>
<p>
The ruler is not a tool by itself, but rather a special operating mode
......@@ -136,15 +158,17 @@ the Tools menu):
</p>
<h3 class="subsub"><img src="pixmaps/recycled.png"> Default tools</h3>
<p>
Each drawing tool (pen, eraser, highlighter) has a default setting
(color, thickness, ...) associated to it.
The "Default Pen", "Default Eraser", and "Default Highlighter" entries of
Each tool (pen, eraser, highlighter, text) has a default setting
(color, thickness, ... for the drawing tools, font and size for the
text tool) associated to it.
The "Default Pen", "Default Eraser", "Default Highlighter", and
"Default Text" entries of
the Tools menu select the appropriate tool and reset its settings to
the defaults. The toolbar also includes a "Default" button which
resets the currently selected drawing tool to its default settings,
resets the currently selected tool to its default settings,
and a "Default Pen" button. <br />
The "Set As Default" entry of the Tools menu takes the current settings
of the currently selected drawing tool and makes them the new default.
of the currently selected tool and makes them the new default.
</p>
<a name="thicknesses"></a>
<h3 class="subsub"><img src="pixmaps/thin.png"> <img src="pixmaps/medium.png">
......@@ -471,7 +495,8 @@ file is much more compact than those produced via gnome-print, and
its pages have the same size as in Xournal. Highlighter strokes
are rendered in a partially transparent manner (note however that
applications such as xpdf and ghostview do not always handle
PDF transparency properly).
PDF transparency properly). Text items are rendered by embedding
TrueType subsets or Type 1 fonts into the PDF document as appropriate.
</p>
<p>
Xournal also includes a PDF file parser compatible with PDF format
......@@ -495,7 +520,7 @@ configuration file include in particular:
<li>general display preferences: zoom level, window size, ...</li>
<li>default paper settings (as set by the "Set As Default" command in
the Journal menu)</li>
<li>default tool settings for the pen, eraser, and highlighter
<li>default settings for the pen, eraser, highlighter, and text tools
(as set by the "Set As Default" command in the Tools menu)</li>
<li>mappings for buttons 2 and 3</li>
<li>the various preferences set in the Options menu</li>
......@@ -530,6 +555,37 @@ Bug reports and suggestions can also be submitted on Xournal's
<a name="changelog"></a>
<h2 class="subtitle">Version history</h2>
<p>
Version 0.4.1 (Sep 15, 2007):
<ul>
<li> bugfix: compatibility with new versions of pdftoppm (thanks to
Vincenzo Ciancia)</li>
<li>GTK+ 2.11 event processing bugfix</li>
<li>minor bugfixes: hand tool, handling of filenames containing '&amp;'</li>
<li>desktop and MIME files (thanks to Mathieu Bouchard) + updated installer</li>
<li>config options: left-handed scrollbar (contributed by Uwe Winter),
hide some menu items (customizable in config file), auto-save
preferences</li>
</ul>
</p>
<p>
Version 0.4.0.1 (September 3, 2007):
<ul>
<li>bugfixes for GTK+ 2.11 behavior (thanks to everyone who reported bugs)</li>
</ul>
</p>
<p>
Version 0.4 (August 15, 2007):
<ul>
<li>text tool (handles most TrueType and Type1 fonts)</li>
<li>font selection dialog and button</li>
<li>keyboard mappings (arrow keys)</li>
<li>menu mnemonics and shortcuts (suggestions by Jean-Baptiste Rouquier)</li>
<li>more responsive hand tool</li>
<li>bugfix for GTK+ 2.11 XInput behavior (thanks to Robert Gerlach)</li>
<li>various minor bugfixes and enhancements</li>
</ul>
</p>
<p>
Version 0.3.3 (January 31, 2007):
<ul>
<li>bugfix: upon loading a new file, zoom is set to default startup zoom</li>
......@@ -627,17 +683,21 @@ Version 0.1 (January 2, 2006): initial release.
<p>
Xournal stores its data in gzipped XML-like files. The gzipped data consists
of a succession of XML tags describing the document. By convention, the
first few lines contain a header in the following format:
file header and trailer look like this:
<pre>
&lt;?xml version="1.0" standalone="no"?&gt;
&lt;xournal version="..."&gt;
&lt;title&gt;Xournal document - see http://math.mit.edu/~auroux/software/xournal/&lt;/title&gt;
&lt;xournal version="..."/&gt;
... sequence of pages ...
&lt;/xournal&gt;
</pre>
The &lt;title&gt; and &lt;xournal&gt; tags may only appear within the file
header (not within the pages of the document). The <i>version</i> attribute of
the &lt;xournal&gt; tag indicates which version of Xournal was used to
create the document; it is currently ignored, but may be used in a later
release if the file format changes in an incompatible manner.
(Following a suggestion of Matteo Abrate, starting with version 0.4 the
&lt;xournal&gt; tag is the document's root tag, and encloses all other tags).
</p>
<p>
The rest of the file is a sequence of pages, specified by a
......@@ -711,15 +771,15 @@ page of the PDF file.
After the line specifying the background, the remainder of a &lt;page&gt;
section is occupied by one or more layer sections
<pre>&lt;layer&gt; ... &lt;/layer&gt;</pre>
describing the various strokes within a layer. Every page must
describing the various items within a layer. Every page must
contain at least one layer; a layer may be empty. The successive layers
are listed in their stacking order, from bottom to top.
</p>
<p>
A layer consist of a collection of items, listed in the order in which
A layer consists of a collection of items, listed in the order in which
they should be drawn
(from bottom-most to top-most).
As of the current version, the only legal contents within a layer are
Up to version 0.3.3, the only legal contents within a layer are
strokes. The format of a stroke is:
<pre>&lt;stroke tool="..." color="..." width="..."&gt;
... list of coordinates ...
......@@ -753,6 +813,25 @@ appropriate (otherwise the eraser tool will not interact properly with the
stroke). The default precision used by Xournal for the x,y coordinates is
0.01 unit (1/7200 in).
</p>
<p>Starting with version 0.4, layers also contain text items.
The format of a text item is:
<pre>&lt;text font="..." size="..." x="..." y="..." color="..."&gt;... text ...&lt;/text&gt;
</pre>
The <i>font</i> attribute contains the font name, for example "Serif Bold
Italic"; if the font is not available, another font will be substituted.
The <i>size</i> attribute specifies the font size in points. The <i>x</i>
and <i>y</i> attributes specify the coordinates of the top-left corner
of the text box in page coordinates (measured in points from the top-left
corner of the page). Finally, the <i>color</i> attribute contains either
the name of a standard color or a hexadecimal RGBA value (see above).
</p>
<p>
The contents of the text are encoded in UTF-8, with the characters
<tt>'&amp;', '&lt;', '&gt;'</tt> replaced by <tt>&amp;amp;, &amp;lt;,
&amp;gt;</tt>. Whitespace and linefeeds are preserved (in particular,
no extraneous whitespace should be inserted between the enclosing tags
and the text itself).
</p>
<hr />
<a name="installation"></a>
<h2 class="subtitle">Installation issues</h2>
......@@ -805,6 +884,7 @@ installed on your system).
./autogen.sh
make
(as root) make install
(as root) make desktop-install
</pre>
</p>
<p>
......@@ -814,6 +894,7 @@ make
./configure --prefix=$HOME
make
make install
make home-desktop-install
</pre>
</p>
<p><b>Configure error message:</b> <br />
......
......@@ -6,14 +6,17 @@ if test `id -u` = 0; then
echo "Press Control-C to abort, or Enter to proceed."
read
echo "Installing xournal in /usr/local/bin..."
test -z /usr/local/bin || mkdir -p /usr/local/bin
install -c src/xournal /usr/local/bin/xournal
echo "Installing pixmaps in /usr/local/share/xournal/pixmaps..."
install -d /usr/local/share/xournal/pixmaps
for pixmap in pixmaps/*; do
install -c -m 644 $pixmap /usr/local/share/xournal/pixmaps
done
echo "Installing html-doc in /usr/local/share/xournal/html-doc..."
install -d /usr/local/share/xournal/html-doc
for docfile in html-doc/*; do
if test -f $docfile; then
......@@ -23,6 +26,24 @@ if test `id -u` = 0; then
if test ! -e /usr/local/share/xournal/html-doc/pixmaps; then
ln -s ../pixmaps /usr/local/share/xournal/html-doc/pixmaps
fi
echo "Installing desktop files and MIME info in /usr/local/share and /usr/share/mimelnk..."
install -d /usr/local/share/icons/hicolor/scalable/apps
install -d /usr/local/share/icons/hicolor/scalable/mimetypes
install -d /usr/share/mimelnk/application
install -d /usr/local/share/mime/packages
install -d /usr/local/share/applications
install -c -m 644 pixmaps/xournal.svg /usr/local/share/icons/hicolor/scalable/apps
install -c -m 644 pixmaps/xoj.svg /usr/local/share/icons/hicolor/scalable/mimetypes
if test ! -e /usr/local/share/icons/hicolor/scalable/mimetypes/gnome-mime-application-x-xoj.svg; then
ln -s xoj.svg /usr/local/share/icons/hicolor/scalable/mimetypes/gnome-mime-application-x-xoj.svg
fi
install -c -m 644 x-xoj.desktop /usr/share/mimelnk/application
install -c -m 644 xournal.xml /usr/local/share/mime/packages
install -c -m 644 xournal.desktop /usr/local/share/applications
update-desktop-database
update-mime-database /usr/local/share/mime
gtk-update-icon-cache -f -t /usr/local/share/icons/hicolor
else
echo "To install xournal in /usr/local, you must run this installer as root."
echo "This installer will now attempt to install xournal in your home directory."
......@@ -36,14 +57,17 @@ else
location=$HOME/bin
fi
echo "Installing xournal in $location..."
test -z $location || mkdir -p $location
install -c src/xournal $location/xournal
echo "Installing pixmaps in $location/pixmaps..."
install -d $location/pixmaps
for pixmap in pixmaps/*; do
install -c -m 644 $pixmap $location/pixmaps
done
echo "Installing html-doc in $location/html-doc..."
install -d $location/html-doc
for docfile in html-doc/*; do
if test -f $docfile; then
......@@ -53,4 +77,22 @@ else
if test ! -e $location/html-doc/pixmaps; then
ln -s ../pixmaps $location/html-doc/pixmaps
fi
echo "Installing desktop files and MIME info in $HOME/.local..."
install -d $HOME/.local/share/icons/hicolor/scalable/apps
install -d $HOME/.local/share/icons/hicolor/scalable/mimetypes
install -d $HOME/.kde/share/mimelnk/application
install -d $HOME/.local/share/mime/packages
install -d $HOME/.local/share/applications
install -c -m 644 pixmaps/xournal.svg $HOME/.local/share/icons/hicolor/scalable/apps
install -c -m 644 pixmaps/xoj.svg $HOME/.local/share/icons/hicolor/scalable/mimetypes
if test ! -e $HOME/.local/share/icons/hicolor/scalable/mimetypes/gnome-mime-application-x-xoj.svg; then
ln -s xoj.svg $HOME/.local/share/icons/hicolor/scalable/mimetypes/gnome-mime-application-x-xoj.svg
fi
install -c -m 644 x-xoj.desktop $HOME/.kde/share/mimelnk/application
install -c -m 644 xournal.xml $HOME/.local/share/mime/packages
install -c -m 644 xournal.desktop $HOME/.local/share/applications
XDG_DATA_DIRS=$HOME/.local/share update-desktop-database
update-mime-database $HOME/.local/share/mime
gtk-update-icon-cache -f -t $HOME/.local/share/icons/hicolor
fi
This diff is collapsed.
This diff is collapsed.
......@@ -18,4 +18,4 @@ xournal_SOURCES = \
xo-callbacks.c xo-callbacks.h
xournal_LDADD = @PACKAGE_LIBS@
xournal_LDFLAGS = -Wl,--as-needed
List of features to be implemented (not in any particular order)
----------------------------------------------------------------
- paste text directly into xournal, from xournal?
(instead of starting a text item and pasting into/from it)
- internationalization / translation of interface
- a command + keyboard shortcut to switch between mappings (1<->2, 1<->3)
(A. Rechnitzer Sept 11, 2007)
- rewrite printing using GtkPrint + Cairo as GnomePrint replacement
(keep GnomePrint option for compatibility with GTK+ <2.10)
- xournal_page-shadow.diff (Martin Kiefel Feb 5 2007)
- "organizer" side panel (hierarchy of notes), cf. gjots
- xoj2pdf on command line
- 'insert blank page after' command (more useful in PDF annot !)
- load images as bg if given on command-line (as with PDF on commandline)
- load PDF pages only on demand (create empty pixmaps at first if can
parse PDF geometry ourselves, else try pdfinfo ??)
- de-map space key from button bar
- lasso selection tool
(and config option to limit total memory usage for PDF bitmaps)
--- switch to poppler lib instead of pdftoppm
- lasso selection tool (see shoffsta patch)
(http://shoffsta.afraid.org/Projects/Xournal/)
- flatten (incl undo/redo...) - enabled only if nlayers>1
- resize selection
- text tool, font chooser, default font
- color chooser (papercolor, pen color); maybe more default colors
- printing: print-options, save printer settings (throughout a session,
and on disk) (maybe a separate config file .xournal/gnome-print-settings)
......@@ -19,19 +30,50 @@ List of features to be implemented (not in any particular order)
- more pen/highlighter shapes (chisel)
- convert to/from Jarnal format; to/from MS Journal format???
- recalibration upon screen resize / compensation for miscalibration
(use ConfigureNotify event and XInput? cf "Bugs" tracker 08/2007)
- find a better behavior for vertical space tool across page boundaries ?
- key mappings (pgup/dn for full page, up/dn for scroll)
(customize secondary mappings for tablet button use ?)
config options? 1) when there's not enough space at bottom of page:
- resize the page
- move stuff to next page
- move stuff to a new page
2) when moving to another page:
- move everything
- move only what doesn't fit (??? looks hard)
option for vert space tool to also move the background??
(PDF: cut-and-crop by running PDF code twice with 2 different clipboxes?)
- copy/paste of an entire page (beware if PDF bg is not compatible!)
- simple drawing tools: rectangles, ellipses
- option to save all annotated files within the .xoj
- non-antialiased version for handhelds
- customize autogenerated save file names
- optimize speed in hand tool (process groups of motion events)?
(setting 1 pixel min threshold doesn't help -- look at GTK+ scrollbar code?)
- layer dialog box to set visibility status of each layer regardless of
which layer is being edited
- display corruption on scroll down when bottom of window is obscured??
(probably a gnomecanvas or X bug -- expose event generated for wrong
region, or not processed?)
- bitmap preview for document icon in desktop environments?
- autosave at a regular interval in a given location
- keep only a few pages of a PDF file in memory at any given time; generate
pages by parsing pdf info rather than generating bitmaps for all of them.
- win32 port (Matteo Abrate)
- snap-to-grid tool? (Matteo Abrate)
- EPOS 7/24/07: Thumbnails pane
- EPOS: Connect to EPOS api which sends A4 mapped points
- EPOS: Cut and Paste into OpenOffice applications and the GIMP (as bitmap??)
- EPOS: Export pages to pictures in the Jpg and Png formats.
- EPOS: Rotate Ink in custom angle.
- handwriting recognition???? (cellwriter?) unlikely. we don't have grids
- handwritten stroke search in document (see cellwriter?)
- option: export to PDF with incremental pages for successive layers
(for presentations) (Daniel Brugarth 8/18/07)
- render page to bitmap: for export, preview, and copy-paste
(render using libart, see how gnomecanvas does it?)
(copy-paste: config option to render only current layer or all below?)
- cut-and-paste of selection into other apps (as bitmap; as SVG?)
- ability to select entire page for copy-paste (as bitmap / reorder xournal)
- Lukasz Kaiser 8/15/07 shapes patch (approximate stroke by geometric shapes)
(make it an optional mode of the pen, like the ruler)
(rewrite without gsl dependency?)
(config file should be loaded from share/... and .xournal/...)
(disconnected shapes: add timestamps to strokes?)
- Samuel Hoffstaetter: lasso, gettext localization, sidebar thumbnails, ...
#define ENABLE_XINPUT_BUGFIX 1
/* change the above to 0 if you are experiencing calibration problems with
XInput and want to try things differently
*/
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
......@@ -28,25 +23,6 @@ struct UndoItem *undo, *redo; // the undo and redo stacks
double DEFAULT_ZOOM;
void hide_unimplemented(void)
{
gtk_widget_hide(GET_COMPONENT("filePrintOptions"));
gtk_widget_hide(GET_COMPONENT("journalFlatten"));
gtk_widget_hide(GET_COMPONENT("papercolorOther"));
gtk_widget_hide(GET_COMPONENT("toolsText"));
gtk_widget_hide(GET_COMPONENT("buttonText"));
gtk_widget_hide(GET_COMPONENT("button2Text"));
gtk_widget_hide(GET_COMPONENT("button3Text"));
gtk_widget_hide(GET_COMPONENT("toolsSelectRegion"));
gtk_widget_hide(GET_COMPONENT("buttonSelectRegion"));
gtk_widget_hide(GET_COMPONENT("button2SelectRegion"));
gtk_widget_hide(GET_COMPONENT("button3SelectRegion"));
gtk_widget_hide(GET_COMPONENT("colorOther"));
gtk_widget_hide(GET_COMPONENT("toolsTextFont"));
gtk_widget_hide(GET_COMPONENT("toolsDefaultText"));
gtk_widget_hide(GET_COMPONENT("helpIndex"));
}
void init_stuff (int argc, char *argv[])
{
GtkWidget *w;
......@@ -71,6 +47,9 @@ void init_stuff (int argc, char *argv[])
// initialize preferences
init_config_default();
load_config_from_file();
ui.font_name = g_strdup(ui.default_font_name);
ui.font_size = ui.default_font_size;
ui.hiliter_alpha_mask = 0xffffff00 + (guint)(255*ui.hiliter_opacity);
// we need an empty canvas prior to creating the journal structures
canvas = GNOME_CANVAS (gnome_canvas_new_aa ());
......@@ -107,7 +86,7 @@ void init_stuff (int argc, char *argv[])
b->tool_type = i;
b->color_rgba = predef_colors_rgba[b->color_no];
if (i == TOOL_HIGHLIGHTER) {
b->color_rgba &= HILITER_ALPHA_MASK;
b->color_rgba &= ui.hiliter_alpha_mask;
}
b->thickness = predef_thickness[i][b->thickness_no];
}
......@@ -121,6 +100,7 @@ void init_stuff (int argc, char *argv[])
gtk_window_set_default_size(GTK_WINDOW (winMain), ui.window_default_width, ui.window_default_height);
if (ui.maximize_at_start) gtk_window_maximize(GTK_WINDOW (winMain));
update_toolbar_and_menu();
update_font_button();
gtk_check_menu_item_set_active(
GTK_CHECK_MENU_ITEM(GET_COMPONENT("journalApplyAllPages")), ui.bg_apply_all_pages);
......@@ -132,6 +112,8 @@ void init_stuff (int argc, char *argv[])
gtk_window_fullscreen(GTK_WINDOW(winMain));
}
allow_all_accels();
add_scroll_bindings();
// set up and initialize the canvas
......@@ -140,7 +122,6 @@ void init_stuff (int argc, char *argv[])
gtk_container_add (GTK_CONTAINER (w), GTK_WIDGET (canvas));
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (w), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
gtk_widget_set_events (GTK_WIDGET (canvas), GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK);
gtk_widget_set_extension_events(GTK_WIDGET (canvas), GDK_EXTENSION_EVENTS_ALL);
gnome_canvas_set_pixels_per_unit (canvas, ui.zoom);
gnome_canvas_set_center_scroll_region (canvas, TRUE);
gtk_layout_get_hadjustment(GTK_LAYOUT (canvas))->step_increment = ui.scrollbar_step_increment;
......@@ -182,7 +163,7 @@ void init_stuff (int argc, char *argv[])
device = (GdkDevice *)dev_list->data;
if (device != gdk_device_get_core_pointer()) {
/* get around a GDK bug: map the valuator range CORRECTLY to [0,1] */
#if ENABLE_XINPUT_BUGFIX
#ifdef ENABLE_XINPUT_BUGFIX
gdk_device_set_axis_use(device, 0, GDK_AXIS_IGNORE);
gdk_device_set_axis_use(device, 1, GDK_AXIS_IGNORE);
#endif
......@@ -196,30 +177,35 @@ void init_stuff (int argc, char *argv[])
ui.use_xinput = ui.allow_xinput && can_xinput;
gtk_check_menu_item_set_active(
GTK_CHECK_MENU_ITEM(GET_COMPONENT("optionsUseXInput")), ui.use_xinput);
gtk_check_menu_item_set_active(
GTK_CHECK_MENU_ITEM(GET_COMPONENT("optionsAntialiasBG")), ui.antialias_bg);
gtk_check_menu_item_set_active(
GTK_CHECK_MENU_ITEM(GET_COMPONENT("optionsProgressiveBG")), ui.progressive_bg);
gtk_check_menu_item_set_active(
GTK_CHECK_MENU_ITEM(GET_COMPONENT("optionsPrintRuling")), ui.print_ruling);
hide_unimplemented();
gtk_check_menu_item_set_active(
GTK_CHECK_MENU_ITEM(GET_COMPONENT("optionsLeftHanded")), ui.left_handed);
gtk_check_menu_item_set_active(
GTK_CHECK_MENU_ITEM(GET_COMPONENT("optionsShortenMenus")), ui.shorten_menus);
gtk_check_menu_item_set_active(
GTK_CHECK_MENU_ITEM(GET_COMPONENT("optionsAutoSavePrefs")), ui.auto_save_prefs);
/* config file only works with glib 2.6 */
if (glib_minor_version<6) {
gtk_widget_hide(GET_COMPONENT("optionsSavePreferences"));
}
hide_unimplemented();
update_undo_redo_enabled();
update_copy_paste_enabled();
update_vbox_order(ui.vertical_order[ui.fullscreen?1:0]);
gtk_widget_grab_focus(GTK_WIDGET(canvas));