pax_global_header00006660000000000000000000000064147454244740014531gustar00rootroot0000000000000052 comment=3fd7bd16d03724916153ae43b1a32996e03a8842 .editorconfig000066400000000000000000000006331474542447400135540ustar00rootroot00000000000000# EditorConfig is awesome: # https://EditorConfig.org root = true # Global rules (applies to all files). [*] end_of_line = lf indent_style = space insert_final_newline = true trim_trailing_whitespace = true indent_size = 4 # Define rules for individual file names. [*.{py,c,h,cpp}] max_line_length = 80 # Meson reads better with short lines. [meson.build] max_line_length = 60 [*.{c,h,cpp}] indent_size = 2 .gitignore000066400000000000000000000002051474542447400130620ustar00rootroot00000000000000# We only need to ignore meson build directories build/ build-release/ .vscode *.pyc build-aux/flatpak/build/ .flatpak-builder *.swp .gitlab-ci.yml000066400000000000000000000016061474542447400135340ustar00rootroot00000000000000include: 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml' .cache-paths: &cache-paths paths: - _ccache/ variables: GIT_SUBMODULE_STRATEGY: recursive flatpak: variables: MANIFEST_PATH: "build-aux/flatpak/org.gnome.Dia.json" FLATPAK_MODULE: "dia" RUNTIME_REPO: "https://nightly.gnome.org/gnome-nightly.flatpakrepo" APP_ID: "org.gnome.Dia" BUNDLE: "dia-dev.flatpak" extends: .flatpak nightly: extends: '.publish_nightly' .mingw-defaults: &mingw-defaults tags: - win32-ps script: - C:\msys64\usr\bin\pacman --noconfirm -Syyuu - C:\msys64\usr\bin\bash -lc "bash -x ./.gitlab-ci/msys.sh" cache: key: "${env:CI_JOB_NAME}" <<: *cache-paths msys2-mingw32: variables: MSYSTEM: "MINGW32" CHERE_INVOKING: "yes" <<: *mingw-defaults .gitlab-ci/000077500000000000000000000000001474542447400130065ustar00rootroot00000000000000.gitlab-ci/msys.sh000066400000000000000000000021611474542447400143350ustar00rootroot00000000000000#!/bin/bash set -e if [[ "$MSYSTEM" == "MINGW32" ]]; then export MSYS2_ARCH="i686" else export MSYS2_ARCH="x86_64" fi # Update everything pacman --noconfirm -Suy # Install the required packages pacman --noconfirm -S --needed \ base-devel \ git \ mingw-w64-$MSYS2_ARCH-toolchain \ mingw-w64-$MSYS2_ARCH-ccache \ mingw-w64-$MSYS2_ARCH-pkgconf \ mingw-w64-$MSYS2_ARCH-gobject-introspection \ mingw-w64-$MSYS2_ARCH-python-gobject \ mingw-w64-$MSYS2_ARCH-meson \ mingw-w64-$MSYS2_ARCH-adwaita-icon-theme \ mingw-w64-$MSYS2_ARCH-atk \ mingw-w64-$MSYS2_ARCH-cairo \ mingw-w64-$MSYS2_ARCH-gdk-pixbuf2 \ mingw-w64-$MSYS2_ARCH-glib2 \ mingw-w64-$MSYS2_ARCH-graphene \ mingw-w64-$MSYS2_ARCH-pango \ mingw-w64-$MSYS2_ARCH-shared-mime-info \ mingw-w64-$MSYS2_ARCH-desktop-file-utils \ mingw-w64-$MSYS2_ARCH-gtk3 mkdir -p _ccache export CCACHE_BASEDIR="$(pwd)" export CCACHE_DIR="${CCACHE_BASEDIR}/_ccache" # Build ccache --zero-stats ccache --show-stats export CCACHE_DISABLE=true meson _build -Ddoc=false unset CCACHE_DISABLE ninja -C _build ccache --show-stats AUTHORS000066400000000000000000000030501474542447400121430ustar00rootroot00000000000000Dia is a program for drawing structured diagrams. Dia is a GNU program, and is Free Software. It is the work of many people, and includes many bits of code originating from other Free Software projects. See the COPYING file in the same directory as this file for the licence. Dia has been written directly or indirectly by many people; this project has been started by Alexander Larsson. Copyright (C) 1998-2000 Alexander Larsson Copyright (C) 1999-2001 James Henstridge Copyright (C) 1984-2002 Free Software Foundation, Inc. Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald Copyright (C) 1997 Juliusz Chroboczek Copyright (C) 1999 Tim Janik Copyright (C) 1999-2002 Lars R. Clausen Copyright (C) 1999-2000 Helix Code, Inc. Copyright (C) 2000-2002 Hans Breuer Copyright (C) 2000-2002 Cyrille Chepelov Copyright (C) 2000-2002 Steffen Macke Copyright (C) 2000 Henk Jan Priester Copyright (C) 2000 Jacek Pliszka Copyright (C) 2000 Stefan Seefeld Copyright (C) 2001 Chris Sperandio Copyright (C) 2001 Hubert Figuiere Copyright (C) 2001 Jose A Ortega Ruiz Copyright (C) 2002 Alejandro Sierra Copyright (C) 2002 M.C. Nelson Copyright (C) 2003 Vadim Berezniker Copyright (C) 2018-19 Zander Brown The above list is believed to be complete with respect to copyright information. However, many more people have contributed; a more complete list of authors of dia can be found by looking at the git history. Alternatively, the authors' names can be found in the dia About box, or in $(top_srcdir)/app/authors.h. BUILDING.md000066400000000000000000000062011474542447400126130ustar00rootroot00000000000000# Compiling Dia from source ## Requirements ### General Dia is currently built using [meson](https://github.com/mesonbuild/meson). Meson can be installed either via a package manager or run directly from source code. Please take 2 minutes to read their [Quick Guide](https://mesonbuild.com/Quick-guide.html). It provides all the needed information to obtain meson and run it. Build requirements are documented in the root [meson.build](/meson.build) file. Meson is designed to be readable so please have a skim through the file. Some dependencies are required, while others are optional. As can be seen from `meson.build`, the main requirements are **GTK3** 3.24, **graphene**, **libxml2** and **zlib**. For reference, a number of other libraries are recommended for extra features. However, not all these have been moved to meson. It is recommended you run `meson build` (to configure the build directory) and then check which optional dependencies are not found: - Libxslt allows export through XSLT translation schemas: - ftp://ftp.gnome.org/pub/GNOME/sources/libxslt/ - **Python scripting is also possible** by installing Python 3 and PyGObject. ### Windows Currently (as of 1f930b94) the Windows build is under heavy development and not all features are supported. Help is always welcome! Please read MSYS2 instructions on https://www.msys2.org/ and their wiki carefully before installing MSYS2. They have three different environments: MSYS2, Mingw64 and Mingw32. **ALL** packages must be installed from MSYS2 environment, and all development needs to be performed from Mingw64 one. Assuming you are all set and that pacman is up to date, you'll need to install at least the following packages: ``` base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-gtk3 mingw-w64-x86_64-python ``` You might need to install additional packages. Please file an issue / merge request with the updated packages to ensure others know what to install also. ## Building and Running Please make sure you at least skim the Meson [Quick Guide](https://mesonbuild.com/Quick-guide.html) before building. There are currently (as of 1f930b94) two ways to run Dia: ### 1. Installing to a local prefix ``` cd path/to/dia path/to/meson.py build -Dprefix=`pwd`/build/install cd build ninja install ## Wait for meson to configure, build and install ## If missing dependencies, please check "Requirements" section ./install/bin/dia ``` ### 2. Using `meson devenv` ``` cd path/to/dia path/to/meson.py build cd build path/to/meson.py devenv ninja ./app/dia ``` ### Running tests Build dia then simply do `ninja test`. ### Windows issues The most common issue currently on MSYS2 is that paths are incorrect. There are two potential types of issues that you need to be aware of: 1. "libdia.dll not found": This happens because PATH does not contain the directory where libdia.dll is located. Simply add that directory to PATH, e.g. `PATH=$(pwd)/lib/:$PATH meson devenv ./app/dia` 2. "Python site module not found": This is because PYTHONPATH or PYTHONHOME are not set. Simply set both to /mingw64/lib/python3. and that should resolve the issue. ## Installing Simply do `ninja install`. COPYING000066400000000000000000000431221474542447400121320ustar00rootroot00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 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. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ChangeLog.pre-git000066400000000000000000033373121474542447400142310ustar00rootroot000000000000002009-04-21 Steffen Macke * makefile.msc: Adjustments for libart.dll, deploye diaw.exe * installer/win32/dia.nsi: Remove drs.dll for the time being, re-add libart.dll, adjust for current libart 2.3.20 DLL from ftp.gnome.org 2009-04-17 Steffen Macke * app/commands.c: Updated copyright date 2009-04-15 Steffen Macke * makefile.msc: cairo, drs, locale build fixes * dia.nsi: Various updates for 0.97-pre3 2009-04-13 Hans Breuer * NEWS config.h.win32 configure.in : updated for dia-0.97-pre3 * plug-ins/python/python.c : found and fixed the immediate crash when loading the Python plug-in under win32 with Python version newer than 2.3. Still did not get prebuilt pygtk running with it, so the requirement of Python 2.3 (on win32) remains the same. * data/integrated-ui.xml app/menus.c : removed Layers/Layers... from the integrated UI menu and assigned L also to ShowLayers (the two menu entries are never available together, so no conflict) Fixes bug #576879. * app/preferences.[ch] :removed "Integrated UI" option here ... (together with the annoying change-needs-restart message) * app/app_procs.c : ... and made it a start-up option, aka. command line switch. If the UI type some day can be switch at runtime the prefernce setting may be added again. 2009-04-11 Hans Breuer * lib/propdialogs.c : derive initial scrolling area of properties dialog from screen size, only use hardcoded values as fallback * app/app_procs.c : patch from Arunan Balasubramaniam, bug #573921 to to reduce wakeups prefer g_timeout_add_seconds() over g_timeout_add() * app/modify_tool.c(modify_button_press) : don't got to single handle movement if there is more than one object selected, bug #525011 * app/handle_ops.c : consider the selection state in choosing the handle color, to give some feedback on the handles behavior change 2009-04-06 Hans Breuer * app/display.c : something called ddisplay_flush() while we were already in ddisplay_destroy() - moved removing the idle handler to ddisplay_really_destroy(), the last possible moment - bug #578173 2009-04-05 Hans Breuer * objects/AADL/aadlbox.c : one const too much, build error with gcc * plug-ins/python/wdeps.py : intended tinting on win32, too. * plug-ins/python/dot2dia.py : don't let a single unknown color make the whole import fail * objects/AADL/aadlbox.c(aadlbox_destroy) : free ports after calling element_destroy(), which needs valid handles, should fix bug #575224 Replaced some leaking, superfluous heap allocations with stack allocs. * lib/diarenderer.c(get_text_width) : complain if the derived renderer does not implement the method and does not maintian DiaRenderer::font. * plug-ins/cairo/diacairo-renderer.c : actually maintain the font field to make text cursor position calculation work, part of bug #576548 * app/display.c : make the tab use the short name again and adjust the (integrated UI) application title HIC compliant, fixing bug #527288 * objects/network/basestation.c : don't move non-movable handles, fixing bug #574637 * objects/UML/association.c : force an internal state update after changing properties, fixes bug #576843 * lib/persistence.c : instead of trying to manage the open state of our windows 'by hand' just use GTK_WIDGET_MAPPED(window), fixes bug #574388 2009-04-04 Hans Breuer * app/interface.c : don't translate g_warning * lib/sheet.c : fix typo in translatebale string 2009-03-31 Hans Breuer * plug-ins/python/wdeps.py : tinting of nodes now working as intended (also on windows) * samples/Self/dia-win32-2.dot samples/Self/dia-win32-2.dia : sample dependency graph with instructions 2009-03-30 Hans Breuer * plug-ins/python/wdeps.py : implement another coloring theme, fix the previous tinting; allow to leave out C-Runtime on Linux, too * plug-ins/python/dot2dia.py : the assumption of every node name being in quotes broke with dia-linux.dot; now fixed and ... * samples/Self/dia-linux-2.dia : ... updated the diagram also with new colors and passing --remove-crt to wdeps.py * app/find.and-replace.c : ensure visibility of the object found * app/display.[ch](ddisp_present_object) : new function to move an object into view with minimum scrolling 2009-03-29 Hans Breuer * app/app_procs.c : slightly hacked version to avoid double request of "Exit without save" for integrated UI case, bug #573635 * app/display.c : the interactive cairo renderer has highlighting issues (bug #576548). For now default to the libart renderer for the antialiased display renderer (only fall back to cairo if the libart plug-in is not loaded) * plug-ins/libart/dialibartrenderer : initialize DiaRenderer::is_interactive to allow entering text edit mode * app/display.h : increased the arbitrary zoom limits to make my current stress test diagram fit * plug-ins/python/wdeps.py : my dependency analysis script is finally running on Linux and together with dot can produce pretty nice images (last change was the introduction of tinting by layer) * samples/Self/dia-linux-2.dia : dependency graph of Dia * samples/Self/dia-linux-2.dot : dot file produced by wdeps.py and preocessed by dot 2009-03-28 Hans Breuer * plug-ins/cairo/diacairo-renderer.c : apparently I've found a workaround for pango bug #341481. Or maybe bug #573261 always we mine. * lib/prop_text.c : for 'multistring' connect to the 'change' signal of the TextBuffer rather than to the unreliable 'insert-at-cursor' of the TextView -> "Chronogram - line" works again, bug #576905 * lib/propinternals.h lib/prop_attr.c lib/prop_geomtypes.c lib/prop_inttypes.c lib/prop_text.c lib/prop_widgets.c lib/propdialogs.c : make prophandler_connect() take a GObject* to do the above without warnings 2009-03-27 Hans Breuer * plug-ins/python/dot2dia.py plug-ins/python/Makefile.am : initial version of dot (http://www.graphviz.org) import for Dia 2009-03-26 Hans Breuer * plug-ins/python/pydia-property.c : check for a correct number of bezier points before assigning them. So evem a broken PyDia script can not crash the core (this way) 2009-03-25 Hans Breuer * plug-ins/diapsrenderer.c : dont't throw away alignment information an don't scale text arbitrary, we can't predict the Latin-1 font size exactly enough. Fiyes bug #575186. * lib/textline.[ch] : more const correct, avoids warning above 2009-03-24 Hans Breuer * plug-ins/python/diastddia.py : almost finished, a bug left in Arc's curve_distance calculation. Implemented the insane load/save property name mapping - bug #576468, implemented draw_text and draw_arc. Some comments on bezier related file format weakness. Write some paper info; convert strings before writing to avoid invalid XML (text and filename) * plug-ins/python/otypes.py : 'meta' is part of every object type * samples/Self/dia-standard-objects.dia : new file documenting the structure of Dia's "Standard - *" objects, see also bug #576468 2009-03-23 Hans Breuer * plug-ins/python/diastddia.py : a new renderer implementation which outputs Dia's native format, but restricted to "Standard - *"-objects. Initial version: buggy and incomplete (e.g. bug #576468). * plug-ins/python/Makefile.am : added to EXTRA_DIST * plug-ins/python/pydia-render.c : if the PyDia renderer does not implement an optional method just fall back to the base classes render implementation. Also (try to) warn about missing, not optional methods with PyErr_Warn(), but can't find these messages yet. * plug-ins/python/diasvg.py : self.line_width was not initialized * samples/UML-demo.dia : converted to be readable, not a single line of uncpompresed XML. 2009-03-22 Hans Breuer * plug-ins/UML/class_dialog.c : some more NULL pointer checks to avoid crash bug #576247 2009-03-15 Hans Breuer * doc/en/usage-objects-basic.xml : removed old workaround for DEL, we have put quite some work to make it behave as expected. Still it would be nice to have described the new text edit mode in more detail ... * doc/en/usage-customization.xml doc/en/graphics/file-preferences-*.png doc/en/graphics/preferences-gridlines.png : updated to show the new layout, also initial description of the Favorites pane. Whitespace changes to have it more readable with tab width 8. * doc/en/graphics/preferences-fig.png : unused -> deleted * doc/en/Makefile.am : reflect above changes * doc/en/usage-objects-basic.xml en/graphics/toolbox-basic.png : reflect the recent addition of the twelves basic object - Outline * en/usage-quickstart.xml : add more appeal(ees) * plug-ins/cairo/diacairo-renderer.c : some unused test-code attempting to work around bug #573261 but no luck. * plug-ins/python/allprops.py : alpha-numeric sorting by type; after by number of users * plug-ins/python/aobjects.py : to make the resulting diagram more interesting we set every sting property with it's name * plug-ins/python/bbox.py : create annotated bounding boxes * plug-ins/python/diagx.py : handling more tags/types like Ellipsis, EnumValue and Function, some other are silently ignored * plug-ins/python/doxrev.py : try to arrange before inserting the classes into the diagram * plug-ins/python/arrange.py : added for the above * plug-ins/python/otypes.py : a better fix for running standalone or from the toolbox menu * plug-ins/python/pydiadoc.py : work better from toolbox and filter out the SWIG noise when running from the other bindings, some more objects * plug-ins/python/pydia-paperinfo.c : fixed typo in docu * samples/Self/PyDiaObjects.dia : updated to 0.97 interface (e.g. PaperInfo and fixed the same typo) * objects/Database/compound.c : now there is no DiaObject any longer which does not deliver at least OBJECT_COMMON_PROPERTIES * bindings/test.py : make it work again (on win32) 2009-03-13 Hans Breuer * plug-ins/cairo/diacairo.c : rather than using broken ellipse approximation convert to translate/scale/arc dance, fixes bug #574868 2009-03-09 Hans Breuer * plug-ins/python/codegen.py : PascalRenderer by Johann Glaser and some adjustments to (Cxx/Py/Java)Renderer to almost get on par (now really commited) 2009-03-08 Hans Breuer * lib/filter.c(filter_guess_*_filter) : make the no-guess flag work as intended, i.e. when there is just one filter per extension it's no guess * plug-ins/python/pydia-property.c : implement PyDia_set_Arrow() to allow modification of line ends from python scripts, like: o.properties["start_arrow"] = (17, .5, .5) * app/filedlg.c : drop using GTK_WIN_POS_MOUSE on the file dialogs. Nowadays that almost inevitable would lead to a partial off-screen dialog, see e.g. bug #314084 and bug #512580 * lib/dia_xml_libxml.h lib/dia_xml.[ch] lib/prop_geomtypes.h plug-ins/shape/shape-export.c : removed some cruft from lixml1 days while investigating bug #570592 * config.h.win32 : insignificant changes slightly related bug #570592 * app/menus.c : don't pass diagram and filename to plug-ins called from the toolbox-menu, otherwise the pydia help series could unintentinally modify unrelated open diagrams 2009-03-07 Hans Breuer * app/menus.c(create_or_ref_display_actions) : only create the action group once, not per display, so the right actions are sensitive for the "Use menu bar", too. Fixes bug #574472 * app/layer_dialog.[ch] : implement "Add Layer" and "Rename Layer" also without the indirection Layer dialog * app/menus.c : activate both commands * lib/diagramdata.[ch] lib/libdia.def : implement and export data_layer_get_index() used for the above * data/display-ui.xml data/integrated-ui.xml data/popup-ui.xml app/menus.c : move "Edit/Properties" to "File/Diagram Properties" as suggested by bug #573259, also create a Layers submenu to hold formerly "Edit/Layers", "Objects/Move (selection) to layer [...]" * app/pixmaps/objects-layer-above.png app/pixmaps/layer-add.png app/pixmaps/objects-layer-below.png app/pixmaps/layers.png app/pixmaps/layer-rename.png : stock icons stolen from Inkscape for the new Layers menu * app/Makefile.am app/makefile.msc : generate inline icons * app/commands.[ch] : new callbacks for layer add/rename (not enabled) * app/preferences.c(prefs_set_value_in_widget) : don't choke on val==NULL and have a matching default initialization for units, both fixing bug #573625 (prefs_get_value_from_widget) : only call the props update function if something has changed, get rid of spurious restart message, bug #574387 * lib/persistence.c : updating/serializing window positions had issues, now hopefully fixed, bug #574388 * app/textedit_tool.c : ensure the action sensitivity is updated after entering textedit mode. No tool activation by entering text, bug #572307 * app/menus.c : unique accelerators again, bug #573257 2009-03-01 Steffen Macke * makefile.msc: Fixed typo (dia.exe was copied to dia-app.dll when doing "make full") * installer/win32/dia.nsi: Don't install Desktop shortcut. Patch from Niels Martin Hansen 2009-02-26 Steffen Macke * po/POTFILES.in: * configure.in: * installer/win32/Makefile.am: * installer/win32/gennsh.c: * Makefile.am: Add gennsh.c, a dummy C program to create NSIS installer locale files. Bugzilla bug #572202 2009-02-25 Steffen Macke * app/sheets_dialog_callbacks.c: * lib/libdia.def: * lib/sheet.c: * lib/dia_dirs.[ch]: Save relative path for icons in user created sheets; allow icon loader to fall back to system directoy if icon is not found in config directory; fixes bug #573027 2009-02-24 Steffen Macke * app/sheets_dialog_callbacks.c: Write to instead of , fixes part of bug #573027 2009-02-20 Steffen Macke * doc/en/dia.xml: Bumped revisions and dates to indicate progress for 0.97 release. 2009-02-19 Steffen Macke * installer/win32/dia.nsi: Include missing SISSI icons 2009-02-16 Steffen Macke * installer/win32/dia.nsi: Various small updates * installer/win32/locale/*.nsh: Use Python 2.3 instead of 2.2 * makefile.msc: Consequent use of build/win32 2009-02-15 Hans Breuer * configure.in config.h.win32 NEWS : dia-0.97-pre2 * plug-ins/python/Makefile.am : every script to be installed for --with-python must be available with EXTRA_DIST, bug #571862 (pyplugin_SCRIPTS_TO_INSTALL) : one variable to be used for both cases, removed group_props.py there, the built-in dialog works better * configure.in config.h.win32 : release of dia-0.97-pre1, finally;) * INSTALL NEWS : updated * tests/test-objects.c : g_assert(o->ops->get_object_menu == NULL || o->ops->get_object_menu(o, &point) != NULL); see below * plug-ins/dxf/dxf-import.c : no localization of debug messages * app/interface.c : don't add "Standard - Outline" when !HAVE_CAIRO * app/create_tool.c : the error message for failing to create an object was assuming the typename to be valid (crashing during message) * objects/standard/outline.c objects/standard/standard.c : pollute with #ifdef HAVE_CAIRO, otherwise Dia won't start when built --without-cairo ( Couldn't find standard objects ... ) [warningectomy - not sure where I've counted the 30;) ] * lib/diarenderer.c : fix constness to produce no warnings anymore * lib/diagdkrenderer.c : pointer targets ... differ in signedness * objects/chronogram/chronoline_event.c : dereferencing type-punned pointer will break strict-aliasing rules * objects/Misc/measure.c : object_menu() now returning NULL, see below * objects/Database/table_dialog.c : use GPOINTER_TO_UINT to avoid warning: cast from pointer to integer of different size * lib/object_defaults.c objects/FS/flow.c : use GPOINTER_TO_INT() * lib/sheet.c : use GINT_TO_POINTER() * lib/object.c : use GPOINTER_TO_UINT() * plug-ins/wmf/wmf.cpp : explicit accept int precision for margins * plug-ins/xslt.c : pointer targets ... differ in signedness * app/disp_callbacks.c : allow obj->ops->get_object_menu() return NULL objects/standard/outline.c : use it for outline_get_object_menu * app/disp_callbacks.c : make empty_menu a really empty DiaMenu with menu_items==0 to avoid superfluous separators (bug #532534) (ddisplay_canvas_events) : warning - integral size mismatch in argument 2009-02-14 Hans Breuer * plug-ins/python/scascale.py : check input feasibility, bug #440884 * app/preferences.[ch] app/display.c : allow to configure the initial mainpoint magnetism, aka. "Snap to Object", bug #571724 * app/diagram.c(diagram_load_into) : cleanup to remember the original path of an import file (bug #570862) and also avoid to not simply save the newly created diagram without asking for confirmation of the filename. Also reflect the filename in the window title. * plug-ins/wmf/wmf_gdi.h : define LPCWSTR type, bug #571125 2009-02-08 Hans Breuer [warningectomy - about 30 left] * configure.in : disable -Wunused, add a lot more useful, see: http://blogs.gnome.org/otte/2008/12/22/warning-options/ * lib/dia_xml.c plug-ins/svg/render_svg.c : pointers differ in signedness * lib/diagramdata.c : declared static but never defined * lib/prop_dict.c lib/plug-ins.c : unused variable * plug-ins/python/diamodule.c : dereferencing type-punned pointer will break strict-aliasing rules, unused variables * plug-ins/custom_line/line_info.c : mostly pointer targets differ in signedness, but also some superfluous allocations * lib/prop_sdarray.c lib/prefs.c objects/standard/line.c plug-ins/libart/dialibartrenderer.[ch] plug-ins/libart/render_libart.c objects/AADL/aadl.c app/layer_dialog.c : no previous prototype (aka: should be static, prototyped or deleted) * plug-ins/dxf/autocad_pal.c : maybe used uninitialized * app/confirm.c : format not a string literal and no format arguments * plug-ins/postscript/paginate_psprint.c : use g_object_(g|s)et_data() * (diagram_print_ps) : format not a string literal and no format arguments and g_free(g_get_home_dir()) - agood reason for crashing later on * app/load_save.c(diagram_data_save) : may be used uninitialized * objects/UML/association.c : removed unused functions * app/exit_dialog.c : unused variable, format not a string literal and no format arguments * app/menus.c : format not a string literal and no format arguments * persistence.c : defined but not used * objects/SISSI/*.[ch] : from around 100 warnings down to 2 ... * objects/standard/arc.c : removed unused function * lib/message.c : assignment discards qualifiers from pointer target type * app/pixmaps/magnify.xpm app/pixmaps/scroll.xpm app/pixmaps.h : removed * app/Makefile.am : adapted * app/interfaces.c : added remaining XPMs directly * lib/diagramdata.c : signed/unsigned mismatch * lib/diagdkrenderer.c : different 'const' qualifiers * lib/persistence.[ch] lib/message.c : constness * app/autosave.c : doe not take a GCallback, but a GSourseFunc * app/layer_dialog.c : gtk_button_set_image() takes a GtkWidget* * app/textedit.c : s/ObjectChangeApplyFunc/UndoApplyFunc/ etc. * plug-ins/wmf/wmf.cpp : explicit cast 'gunichar2 *' to 'W32::LPCWSTR' * lib/makefile.msc : add -DG_DISABLE_DEPRECATED * lib/filter.c lib/font.c lib/paper.c lib/widgets.c : s/g_strcasecmp/g_ascii_strcasecmp/ 2009-02-07 Hans Breuer * lib/dia_svg.c : map special svg font name "sanserif" to special dia font name "sans" * lib/dia_image.c(dia_image_get_broken) : was broken * plug-ins/svg/svg-import.c : don't try to create_standard_image() with fileanme==NULL, rather set an invalid name. Better than crashing on * lib/libdia.def : s/dia_image_release/dia_image_unref/ [two less leaks - thanks valgrind] * lib/dia_image.c : free filename * plug-ins/svg/svg-import.c(read_poly_svg) : free points * plug-ins/xslt/xsltdialog.c : add #undef GTK_DISABLE_DEPRECATED to fix bug #570850 - should be ported some day * lib/dia_image.c : turn DiaImage into a GObject, plugs memory leak fixing bug #570850 * plug-ins/svg/svg-import.c : actually implement read_image_svg(), part of bug #570863 (strange this was not reporeted before) (read_text_svg) : was creating two much whitespace for * lib/diatypes.h : typedef _DiaImage DiaImage, i.e. make DiaImage follow the naming pattern of every other struct in Dia's source ... * lib/dia_image.[ch] : ... and also sprinkled const and rename dia_image_release to dia_image_unref (too seldom used!) * objects/SISSI/sissi.h objects/SISSI/sissi.c objects/KAOS/metabinrel.c objects/standard/image.c objects/custom/shape_info.h lib/diarenderer.[ch] lib/diasvgrenderer.c lib/diagdkrenderer.c plug-ins/python/pydia-render.c plug-ins/python/pydia-image.[ch] plug-ins/dxf/dxf-export.c plug-ins/drs/dia-render-script-renderer.c plug-ins/hpgl/hpgl.c plug-ins/metapost/render_metapost.c plug-ins/cairo/diacairo-renderer.c plug-ins/pgf/render_pgf.c plug-ins/pstricks/render_pstricks.c plug-ins/cgm/cgm.c plug-ins/postscript/diapsrenderer.c plug-ins/wpg/wpg.c plug-ins/libart/dialibartrenderer.c plug-ins/wmf/wmf.cpp plug-ins/xfig/xfig-export.c plug-ins/vdx/vdx-export.c : adapted accordingly in prepartion to fix bug #570850 * objects/SISSI/sissi.c : don't leak ObjectSISSI::image 2009-02-06 Hans Breuer * lib/beziershape.c(beziershape_update_data): remove stray semicolon leading to leaking all connections on num_points change and the attempt to free memory which was not allocated; fixes bug #570808. * objects/standard/textobj.c : optionally draw the bounding box of text with the given fill_color (Enrico Minack, bug #436560) * app/disp_callbacks.c app/tool.h app/modify_tool.c : also allow TextEdit entry via Button Press and Hold - patch from Robert Young fixing bug #570304 * plug-ins/python/diasvg_import.py : remove exception for error output 2009-02-01 Hans Breuer * plug-ins/svg/svg-import.c : reset_arrows() to not create standard objects with toolbox defaults during svg import, fixes bug #537103 (if the effect is desired it is still available with diasvg_import.py) * lib/persitence.c : use g_hash_table_new_full() to get rid of a lot of g_warnings for double allocations, the better fix for bug #564890 * lib/prop_dict.c(dictprop_load) : make it work, too. * lib/dia_dirs.c(dia_get_canonical_path) : shortcut for pathes not including ".." or "./" to keep UNC pathes intact; bug #362397 * po/POTFILES.in : +objects/Misc/grid_object.c * plug-ins/drs/dia-render-script-renderer.c plug-ins/drs/dia-render-script.c : wrap calls, save by default * plug-ins/drs/dia-render-script-import.c : more code, still unused * app/menus.c : stop complains during plug-in callback menu registration for the integrated UI case * lib/object.[ch] lib/dia_xml.[ch] lib/prop_dict.[ch] lib/properties.[ch] lib/propinternals.h lib/Makefile.am lib/libdia.def po/POTFILES.in : allow to serialize meta info with every DiaObject - no UI to modify it yet * lib/plug-ins.h : bump api version because object size has changed * plug-ins/python/pydia-property.c : handle translation between Python and Dia dictionary to make accessible. Also s/g_warning/g_debug/ * plug-ins/python/diasvg_import.c : generate object meta info to test the above. Also fixes regarding text color. * objects/makefile.msc : Grid object on win32, too 2009-01-31 Hans Breuer * lib/dia_xml.[ch] lib/libdia.def : implement data_(add_)bezpoint to serialize bezier points * lib/prop_geomtypes.c : use it instead of g_error() for an attempt to save a bezpoint array (not used by any object implementation yet) * plug-ins/python/diasvg_import.py : fixed typo * objects/Misc/grid_object.c : give ranges to rows/columns properties to avoid crashing on negative numbers, similar for line_width * objects/Misc/pixmaps/grid_object.xpm objects/Misc/grid_object.c objects/Misc/libmisc.c objects/Misc/Makefile.am sheets/Misc.sheet.in: patch from Don Blaheta adding a Grid object, bug #534118 * doc/en/intro.xml doc/en/usage-quickstart.xml : moved "try Dia" flowchart to introduction. * configure.in : configure failed to locate libpython when building GARNOME, bug #338368 (Hans de Goede) * omf.make : bug #306737 - installation fails in install-data-hook-omf if omffile variable is empty (patch from Thomas Harding) * doc/en/*.xml : remove undefined entity '.&pngfile' * po/POTFILES.in lib/sheetc : more strings to translate ;) * doc/en/Makefile.am : added new images ('make distcheck' passes) [ Huge documentation update from Mark Dexter, bug #455400, hope I didn't break anything during merge. ] * doc/en/*.xml doc/en/graphics/*.png : 1. major edits to the following XML files: usage-quickstart.xml, usage-canvas.xml, usage-objects.xml, usage-objects-basic.xml, usage-objects-special.xml, usage-objects-selecting.xml. Added documentation for items not previously documented (e.g., Diagram Tree, Sheets and Objects, etc.) and expanded other documentation. 2. Added 78 screenshots (for a total of 82). 3. Minor edit to authors.xml. (Still need to fix broken links and bad e-mails). 4. Updated images. These changes obsolete the following bugs: #347209, #439974, #144128. * app/display.[ch] app/diagram.[ch] app/menus.[ch] : get rid of nearly unmaintainable UpdatableMenuItems and a lot of ui-variant-specific code by dynamic action lookup when updating sensitivity. This not only fixes bug #527565 but also bug #322190 and allows ... * app/interface.c : make Tool accelerator single key strokes - e.g. no more L to draw a line but just "L" - another benefit of the dedicated test edit mode ;) - bug #439854. 2009-01-30 Hans Breuer * app/object_ops.[ch] : implement object_list_nudge() ... * app/disp_callbacks.c : ... use it to move selected objects by keyboard keys (arrow/shift-arrow for small/bigger step), bug #137433 (The viewable area can still be moved as before if nothing is selected) Make PageUp, Ctrl-PageUp, PageDown, Ctrl-PageDown scroll selected view by one page up/left/down/right, bug #94015 Home/End to align the top-left/bottom-right corner of the diagram with the viewable area [ "a minor maintenance update" from Ian Redfern, bug #477679 ] * plug-ins/vdx/vdx-import.c : it replaces the g_assert() calls with attempts to handle errors, and adds a bit more sanity checking - this should make it more robust with unusual or malformed files, particularly those exported from applications other than Visio (thank you OmniGraffle). It also fixes assorted small bugs that people have raised with nested shapes, disconnected polygons, font handling and layers, but there's no new features such as embedded EMF or even rounded rectangles, and it makes no attempt to handle new Visio 2007 features. * objects/SISSI/area.c objects/SISSI/faraday.c objects/SISSI/room.c objects/SISSI/sissi_object.c objects/SISSI/site.c : quite some allocation/deallocation mismatch removed, fixes bug #569725 * objects/Jackson/domain.c : remove superfluous allocation to avoid leaking it, fixes bug #569720 * app/load_save.c : do not complain about missing object types per layer but just once per diagram * app/confirm.c : there is no glib-3.16 yet 2009-02-27 Steffen Macke * doc/en/usage-objects.xml: Finished incomplete sentence. Fixes bug #569369 2009-01-24 Hans Breuer * lib/message.[ch] lib/libdia.def : new function dia_log_message() which prints the given string together with a time-stamp, but only if logging is enabled * app/app_procs.c lib/dialib.[ch] : when given --verbose enable logging * lib/plug-ins.c lib/sheet.c : sprinkled some dia_log_message() to get a grip on Dia's start-up performance (4 secs for python plug-in, 5 secs for custom plug-in - when started from cold caches) * app/confirm.[ch] : new function confirm_export_size() which let's the user confirm an unusal diagram size (conditionalized glib-2-16 function) * app/Makefile.am app/makefile.msc po/POTFILES.in : add new files * app/commands.c app/filedlg.c : use it before export and print to avoid possibly unintended numbers of pages printed or memory used for export. (Bug #540477, Martin Wegner) app/preferences.[ch] : removed obsolete print preference * objects/SISSI/area.c objects/SISSI/faraday.c objects/SISSI/room.c objects/SISSI/sissi.[ch] objects/SISSI/sissi_dialog.c objects/SISSI/sissi_object.c objects/SISSI/site.c : fixed object method DiaObject::apply_props_from_dialog() for the last known issue with changing multiple objects properties, bug #60331 (It did not crash because the SISSI object don't contribute anything to the property list.) * objects/SISSI/sissi_object.c(280) : local variable 'filename' used without having been initialized * objects/SISSI/sissi_dialog.c(380) : incompatible types - from 'struct _GtkWidget *' to 'struct _GtkScrolledWindow *' [ One menu entry File/Print is enough. The not any longer experimental cairo plug-in together with GtkPrint from gtk+-2-12 and cairo-1- or above superseds both former print facilities. ] * app/menus.[ch] : introduce /InvisibleMenu as target for known actions registered from plug-ins supposed to be available only once. Currently there is just one of these actions "FilePrint" which gets routed to FilePrintGTK, FilePrintGDI or FilePrintPS in that order, i.e. depending on the plug-ins being loaded * plug-ins/cairo/diacairo.c plug-ins/postscript/postscript.c plug-ins/wmf/wmf.cpp : register print actions to invisible menu * shapes/Civil/civil_basin.shape shapes/Civil/civil_motor.shape : foreground for stroke * objects/UML/class_dialog.c(umlclass_dialog_free) : avoid double free of the dialog struct. Is is already destroyed by destroy-signal Fixes bug #569013 * objects/UML/fork.c : fix property get/set by using the right methods, not object_return_void/object_return_null, bug #568524 * lib/object.[ch] lib/libdia.def : remove object_return_* helpers. They are not used anymore now and were causing more harm than good. * lib/diarenderer.h : moved draw_rounded_polyline to the high-level methods of DiaRenderer, which are seldom implemented by "normal" renderers * lib/diarenderer.c : just coding style * lib/plug-ins.h : bump DIA_PLUGIN_API_VERSION for all of the above [ Start of plug-in implementation around idea "DiaRenderScript", an XML-dialect modelled after the DiaRenderer API. Currently it is only useful for debugging other parts of Dia or itsef ;) ] * plug-ins/drs/dia-render-script.dtd : to verify the xml files * plug-ins/drs/dia-render-script-renderer.c : implementing allmost all required and medium-level methods a renderer should have * plug-ins/drs/dia-render-script.[ch] : registration of the exporter and some dedicated diagram/layer render functions to preserve invisble layers when writing .drs * plug-ins/drs/dia-render-script-import.c : unfinished (some helpers to parse back .drs, but far away from real import) * plug-ins/drs/dia-render-script-object.c : mostly empty (should later include the implementation of a DiaObject capable to render .drs * plug-ins/makefile.msc : build it * configure.in plug-ins/Makefile.am plug-ins/drs/Makefile.am : build drs on *NIX, too. But do not install it. plug-ins/drs/*.[hc] : no warnings with gcc except defined but not used * po/POTFILES.in : not much to translate, just silence 'make distcheck' 2009-01-20 Hans Breuer * lib/persistence.c : use g_warning() instead of printf() for pathological cases, also don't leak memory than; bug #564890. * app/app_procs.c : cosmetical change when dumping pango version * app/undo.[ch] app/commands.[ch] app/menus.c app/diagram.c data/*-ui. : implement "Objects/Move to layer above/below" (maintaining connections between layers). Fixes bug #59105. * samples/undo-check.dia a diagram to play with the above * app/load_save.c doc/diagram.dtd : load, save and document , fixes bug #568497 2009-01-18 Hans Breuer * app/app_procs.[ch] : implement command line switches -I and -O to give input and output directories independent of filenames, bug #438842 * plug-ins/postscript/diapsrenderer.c : don't unref the postscript renderer font twice, fixing a crash spotted while testing the above * lib/dia_image.c : oops, commited before compiling - now it uses for message_warning() for invalid pathes _and_ includes "message" * app/load_save.c(read_connections) : while playing with "All Objects" I've got "connection point %d does not exists", now I get the more useful "connection point 14 does not exist on 'SISSI - area'" Also there was some flaw with the wants_update calculation. * makefile.msc lib/libdia.def : build the unit test on win32, too. * lib/diagramdata.c lib/layer.c : split the latter from the former to have more manageable pieces (one class per file) * lib/Makefile.am lib/makefile.msc po/POTFILES.in : updated accordingly * objects/custom/shape_info.c(load_shape_info) : default-(width|height) was still in points. Now it is cm fixing bug #568099 [xmllint --dtdvalid doc/shape.dtd shapes/**/*.shape >/dev/null] * shapes/Contact/c_ifnot.shape shapes/RDP/t_transition.shape shapes/RDP/transition.shape shapes/SDL/comment.shape shapes/SDL/function.shape shapes/SDL/macro.shape shapes/SDL/return.shape shapes/SDL/stop.shape : removed superfluous 'svg:' prefix on style attribute * shapes/RDP/place_marquee.shape : removed attribute 'color' from svg:circle element; it would be ambiguous and did not validate. Both foreground and background color are set in the style attribute. * docs/shape.dtd : changed circle attribute cy to be IMPLIED only Together this reduces the complaints of xmllint down to zero. Given the recent updates on http://svn.gnome.org/viewvc/dia/trunk/doc/custom-shapes?view=log IMO enough to close bug #86402 2009-01-17 Hans Breuer * app/defaults.c app/gtkvwrapbox.c app/gtkwrapbox.c app/properties-dialog.c app/gtkhwrapbox.c lib/dialinechooser.c : patch from Robert Young to build again with GLib 2.8, bug #567558 * tests/test-objects.c : now passes for all objects ... (_test_movement) : ... due to an ugly long list of shapes skipped due to probable bounding box miscalculation for bezier pathes, bug #568115 (_test_change) : some test of ObjectChange creation/destruction * objects/UML/node.c objects/UML/object.c : text tinting was missing for string or underline (bug #568009) * lib/text.c : improved algorithm for bounding box calculation with better understanding of the ascent/descent/font-height relation. Fixes bug #567556 without reopening bug #528642. * objects/standard/image.c : #include to fix part of the issue with building with GLib < 2.10 (bug #567559, Robert Young) * app/app_procs.c : don't dump built-with-cairo twice, instead inform about pangocairo, too. * INSTALL : improved consistency between configure.in and this file. Also remove trace of CVS. * lib/prop_geomtypes.c(fontsizeprop_set_from_offsets, fontsizeprop_load) : implement clipping to min/max values to protect the Dia core against plug-ins playing havoc (see e.g. bug #488935) * plug-ins/cgm/cgm.c(CgmRenderer::set_font) : a second call with an already set font (with refcount 1) would have destroyed the font before referencing it. * plug-ins/vdx/vdx-import.c : one instruction per line to allow putting a breakpoint on the g_debug() line * RELEASE-PROCESS : updated from CVS to SVN usage, also clarify the difference between tag and branch creation * objects/UML/classicon.c objects/UML/implements.c objects/UML/message.c objects/UML/node.c objects/AADL/aadlbox.c objects/Jackson/phenomenon.c objects/KAOS/metaandorrel.c : reverted part of revision 3958 "same name, same type", nowadays I'm weighting forward-compatibility higher than following unwritten rules 2009-01-14 Steffen Macke * installer/win32/dia.nsi: Some updates for GTK 2.14.7 * app/interface.c: Include gtkhwrapbox.h in order to compile with MSVC 2009-01-12 Hans Breuer * app/sheets_dialog_callbacks.c : don't leak a superfluous SheetObject fixes bug #564677 2009-01-11 Hans Breuer [make "./configure ---enable-gnome=yes" work again] * app/interface.h : was including too much e.g. itself and gnome.h. The latter gave compiling errors for --enable-gnome=yes * app/interface.c app/commands.c app/recent_files.c app/display.c app/app_procs.c app/disp_callbacks.c : updated accordingly, basically adding #undef GTK_DISABLE_DEPRECATED before inclusing gnome.h but also adjusting include order (gnome before gtk) to make it have an effect [make "make distcheck" work again] * objects/FS/flow-poly.c : obsolete, finally removed * po/POTFILES.in : added app/create_object.c * po/POTFILES.skip : added some *.py to stop complains * configure.in : default is no doc creation ... * hardcopies.make : ... and thus not touching read-only directories. Lowers the priority of bug #567385 * lib/dia_svg.c(read_text_svg) : support for text alignment, less warnings and text colors corrected even for DIA_SVG_COLOUR_NONE (read_items) : switched from if-continue to a more common if-else-if * plug-ins/svg/svg-import.c : use DIA_SVG_COLOUR_NONE instead of (-1) * plug-ins/svg/svg-import.c(read_text_svg) : the text style was not properly intialize leading e.g. to random text colors. Also it now supports multi-line text elements "". Both can be booked under bug #108502 - but that bug will never get fixed;) * plug-ins/render_svg.c(draw_text) : implementation supporting multi-line text via 2009-01-10 Hans Breuer * objects/standard/arc.c(arc_move_handle) : maintain a minimum distance between the three arc handles. Two or even all three handles in at the same position did produce unstable results. As a side-effect this is fixing bug #501696 * objects/standard/outline.c(outline_move_handle) : maintain minimum distance between the two handles here as well. Otherwise a meaningless font-size of zero could occur. 2009-01-09 Hans Breuer * plug-ins/xslt/Makefile.am : if !HAVE_XSLT prevent installation bug #566842 * lib/propobject.c(object_list_get_propdescriptions) : for single object in the list use the "intersection" because otherwise props with PROP_FLAG_DONT_MERGE would not be accessible anymore, e.g. for "Standard - Outline" there was no way to change the text anymore (hopefully final regression introduced by fixing bug #60331) * samples/render-test.dia : adapt font size check to concrete font names commonly available on X and win32 * plug-ins/svg/render_svg.c : must use DIA_SVG_RENDERER_GET_CLASS to cast from instance, otherwise it is crashing with GLib debug support * lib/font.h : declare dia_font_get_size() * lib/libdia.def : export it * lib/font.c : use pango_font_description_set_absolute_size() - the magic factor which tried to compensate for fontmap resolution issues _and_ the difference between Dia's intention of "font_height" and Pango's "font size" is gone. There is a much less magic factor just compensating the second issue. Dia's font-height always meant something like line height, i.e. a good difference between two consecutive lines baselines (Pango itself is using line_height=ascent+descent). Instead of searching the right size for a given height a new factor got introduced, which unfortunately changes the font-size on win32 and X, but all this finally fixes bug the OS dependent part of bug #108293 * plug-ins/cairo/diacairo-renderer.c : use dia_font_get_size() and pango_font_description_set_absolute_size instead of magic number 0.7 fixing bug #538499 * plug-ins/wmf/wmf.cpp : same here * lib/diasvgrenderer.c(draw_string): moved #if-0-ed original ... * plug-ins/svg/render_svg.c : ... implementation to be used in SVG export but not for shape export. For SVG export we apparently want the font-size instead of it's line-height - although my interpretation of the specs differs ... should fix bug #345538 * lib/font-height.c : test program evaluating font size relations * lib/makefile.msc : build it [bugs found along the way] * lib/text.c : don't use font_ref when a copy is needed * lib/textline.c : removed superfluous g_warning 2009-01-06 Hans Breuer * app/menus.c : bind "EditReplace" to "H" (rather than ^F) * plug-ins/wmf/Makefile.am : remove -lstdc++ from LIBADD line (Matt Keenan, bug #558263); install the plug-in in case of libEMF being available * plug-ins/wmf/wmf.cpp : avoid double close of 'ofile' * bindings/Makefile.am : tweaked once more to not break 'make distcheck' * plug-ins/cairo/diacairo-renderer.c : compiles without warnings ... * plug-ins/cairo/diacairo-interactive.c : ... intialize parent_class and actually use cairo_interactive_renderer_finalize 2009-01-05 Hans Breuer * app/diagram.c(diagram_save) : for links resolve to the real filename before calculating the backup filename and actually overwriting the file. Fixes bug #501777 2009-01-03 Hans Breuer * lib/font.c : style changes to increase readability, behaviour change in the next commit ;) * lib/textline.c : remove obsolete 'renderer_cache' and superfuous g_warning() * objects/standard/outline.c : don't use dia_font_ref in outline_copy * plug-ins/cairo/diacairo-interactive.c plug-ins/cairo/diacairo-renderer.c : Dia's implicit fill-rule is even-odd, make it explicit with cairo * plug-ins/makefile.msc : updated 2009-01-02 Hans Breuer Patch from Takao Fujiwara fixing bug #564850 – dia crashes on none UTF-8 * app/diagram.c : don't initialize unused filename (with the wrong locale) * app/filedlg.c : gtk_file_chooser_set_current_name() wants utf-8, not filename encoding * plug-ins/cairo/diacairo.c : export_data() first filename already is in the GLib's filename encoding - but on win32 this is always utf-8, i.e. not appropriate to be used with cairo * app/preferences.c : don't try to set transient without shell * lib/prop_text.c : don't leak prop->attr.font * object/standard/textobj.c : fixed accordingly * objects/UML/class.c(umlclass_copy) : don't use a font reference where a copy is needed * plug-ins/cairo/diacairo.c : fix scaling for clipboard use * plug-ins/python/diamodule.c : whitespace changes * plug-ins/python/group_props.py : better error message for missing pygtk (bug #563094) Patch from Sameer D. Sahasrabuddhe fixing bug #565720 En passant fixing bug #564799 and bug #564916 * objects/SISSI/sissi.[ch] : introduced a new local function that returns the correct sheets directory for SISSI * objects/SISSI/site.c objects/SISSI/faraday.c objects/SISSI/area.c objects/SISSI/room.c objects/SISSI/sissi_object.c : use it * sheets/SISSI/*.xml : relative path removed from * app/create_object.c : don't crash if object creation fails (bug #565567, Sameer D. Sahasrabuddhe) * bindings objects/custom_lines objects/Database plug-ins/postscript plug-ins/libart : updated svn:ignore property * Makefile.am bindings/Makefile.am data/icons/48x48/apps/Makefile.am : get rid of "variable `*' is used but `*' is undefied" warnings * configure.in : remove traces of gnome print here as well 2008-12-19 Hans Breuer * app/preferences.c : fixed compiler errors with gcc without introducing warnings again with msvc * lib/filter.c : removed debug spew * po/POTFILES.in : reflect file renaming 2008-12-18 Hans Breuer * app/properties.[ch] : renamed to properties-dialog.* to have unique filenames (avoids debugger confusion) * app/Makefile.am app/makefile.msc app/makefile.mingw app/commands.c app/defaults.c app/diagram.c app/diagram_tree.c app/modify_tool.c : adapted accordingly * app/properties-dialog.c : restored nullification of the static 'object_part' on dialog destroy to avoid double destruction 2008-12-14 Hans Breuer * lib/textline.[ch] : removed obsolete RenderCache stuff while investigating bug #562574 * app/preferences.[ch] lib/filter.[ch] lib/libdia.def : allow to select a preferred export filter used when selecting exporter by extension (Bug #535179 - export to png does not use AntiAliasing, now up to user) * lib/persistence.c : don't use g_ascii_strncasecmp as GCompareFunc, fixing crashes introduced by patch from bug #559671 * app/diagram.[ch] app/display.c : replace Diagram::display_count with g_slist_count(diagram->displays), no benefit in keeping both in sync. 2008-12-09 Hans Breuer * lib/diasvgrenderer.c lib/persistence.c lib/prop_basic.c : reduced use of long time deprecated functions ( Kjartan Maraas, bug #559671) * objects/Database/table.c app/preferences.c : fixed the fix and a comment about it (Sameer Sahasrabuddhe, bug #60331) 2008-12-08 Hans Breuer * objects/UML/class.c : don't crash when umlclass_apply_props_from_dialog() get callesd without umlclass_get_properties(), instead fall back to object_apply_props_from_dialog() than * objects/Database/table.c : same here * app/properties.c : for a single object let Object::get_properties() create the "object part" of the property dialog * plug-ins/makefile.msc : remove obsolete plug-ins from build 2008-12-07 Hans Breuer * app/commands.c app/diagram_tree.c app/modify_tool.c app/properties.c app/properties.h lib/group.c lib/object.h lib/propdesc.c lib/propdialogs.c lib/properties.h lib/propinternals.h lib/propobject.c : : patch from Sameer Sahasrabuddhe almost fixing Dia's oldest bug #60331 - Object properties should handle multiple objects (but it breaks with UM - Class) * lib/libdia.def : updated 2008-12-03 Hans Breuer * app/menus.c : map help to "F1", patch Matt Keenan, bug #563110 * app//diapagelayout.c : one gtk_adjustment_new call was not adjusted. Patch from Matt Keenan fixing bug #563106. 2008-11-30 Steffen Macke * makefile.msc: Create *.mo files in build/win32 * installer/win32/dia.nsi: Reflect documentation updates 2008-11-22 Hans Breuer * objects/Database/table.c objects/UML/class.c : less warnings, patch by Sameer Sahasrabuddhe 2008-11-21 Hans Breuer * objects/custom_lines/custom_linetypes.c objects/Database/compound.c objects/Database/reference.c objects/Database/table.c objects/UML/actor.c objects/UML/class.c objects/UML/large_package.c objects/UML/note.c objects/UML/object.c objects/UML/small_package.c objects/UML/usecase.c : consitent use PROP_STDNAME_LINE_WIDTH instead of "line_width", patch from Sameer Sahasrabuddhe 2008-11-18 Steffen Macke * doc/en/dia.xml: * doc/eu/dia.xml: * doc/fr/dia.xml: * doc/pl/dia.xml: Consistently use DocBook 4.5 DTD from oasis-open.org 2008-11-16 Hans Breuer * plug-ins/gprint/* : back to the attic * plug-ins/Makefile.am po/POTFILES.in configure.in : adjusted * plug-ins/cairo/diacairo.c : register "Edit/Copy Diagram" to copy the whole diagram into the clipboard (currently win32 only) * app/dia-props.c app/diapagelayout.c app/preferences.c lib/dialogs.c lib/prop_geomtypes.c lib/prop_inttypes.c lib/widgets.c objects/Database/table_dialog.c objects/SISSI/sissi_dialog.c objects/UML/class_dialog.c : stop newer gtk+ complaining about non-zero page size for spin buttons 2008-11-15 Steffen Macke * makefile.msc: * installer/win32/dia.nsi: * installer/win32/wikifaq2installerfaq.sed: Small script to generate the installer FAQ file from the Wiki 2008-11-02 Hans Breuer * objects/Istar/link.c objects/GRAFCET/vergent.c objects/Database/reference.c objects/Database/table_dialog.c objects/UML/class_dialog.c : spelling fixes, bug #554233 and bug #554238 - Duarte Loreto * app/find-and-replace.c : no C++ comment and not other warnings * lib/text.c : ignore single carriage return, work around for bug #547173 * lib/lib_dia. : removed (should never have been added) * plug-ins/UML/class_dialog.c : don't crash if the selection callbacks get called after dialog destruction. Fixes bug #558650 2008-10-17 Hans Breuer * lib/libdia.def : export prop_list_add_list for ... * app/find-and-replace.c : patch from Johann Tienhaara adding the ability to find and/or replace (almost) any text content of the objects * plug-ins/dxf/dxf-import.c : dxfcode now calculated as inside the read function, reduces code lines and en passant fixes load error of #321539 * plug-ins/dxf/dxf-import.c : bulge was calculated against the wrong vertices, now it at least does not produce huge errors. See bug #556547 2008-10-17 Steffen Macke * installer/win32/dia.nsi: Don't include the AADL sheet any more 2008-10-16 Steffen Macke * installer/win32/dia.nsi: Small updates for the new build system 2008-10-15 Hans Breuer * INSTALL : updated minimal version requirements (the real thing still in configure.in * app/find-and-replace.c : consistent line ends 2008-10-12 Steffen Macke * makefile.msc: Small updates to sync makefile with compilation guide 2008-10-12 Hans Breuer * objects/UML/actor.c objects/UML/class.[ch] objects/UML/class_dialog.c objects/UML/large_package.c objects/UML/note.c objects/UML/object.c objects/UML/small_package.c objects/UML/usecase.c : configurable line-width for UML elements, patch from Pablo Gra\~na 2008-09-20 Hans Breuer * app/filedlg.c : global usage of GTK_DISABLE_DEPRECATED broke this file with gtk+-2-14 * app/prefernces.c : avoid setting uninitialized (NULL) units, fixes a crash when starting with an old configuation file * lib/text.c : also accept GDK_KP_Enter to ccreate a new line. Fixes bug #539476 * lib/makefile.msc : reflect renaming of libdia.c to dialib.c * NEWS : mention Find&Replace feature * plug-ins/python/autolayoutforce.py : more comment * samples/render-test.dia samples/Self/PyDiaObjects.dia : update 2008-08-10 Hans Breuer * app/prefernces.c : don't call pref_set_*_unit with NULL * objects/custom/custom_object.c : add user configurable text padding and properly consider it during bounding box calculation. Additionally elements (fixed text parts) are finally tinted and scaled with the rest of the shape * configure.in : one more step to build bindings on Linux * lib/libdia.[hc] : renamed to dialib.[hc] to avoid confusion with libdia.la (libdia.lo) * lib/Makefile.am app/app_procs.c bindings/dia-extra.cpp plug-ins/python/diamodule.c tests/test-objects.c tests/test-boundingbox.c : adapted to name change * objects/UML/Makefile.am plug-ins/cairo/Makefile.am : add $(module)_la_LIBADD = $(OTHER_LIBS) $(top_builddir)/lib/libdia.la * bindings/dia.swig : don't crash on passing None to do_export() * bindings/Makefile.am bindings/test.py : now work start to work on Linux, too. * plug-ins/python/pydiadoc.py plug-ins/python/otypes.py : don't assume there is always a display. In the bindings non-interactive test case there is not * app/layer_dialog.c : don't access layer_dialog while not initialized * objects/standard/outline.c : conditionalize on CAIRO_HAS_SVG_SURFACE * tests/test-objects.c tests/test-boundingbox.c : conditionalize on GLIB_CHECK_VERSION(2,16,0) - together this make Dia compile an run on a standard Dapper Drake (gtk+-2.8, glib-2.10, cairo-1.0.4) * objects/custom/shape_info.[hc] objects/custom/custom_object.c : don't normalize ShapeInfo::default_(width|height) to points; everything else is in cm. Also some formatting/coding style issues. 2008-08-09 Hans Breuer * app/Makefile.am plug-ins/xslt/xslt.c : finally stop complaing about missing XSLT configuration files when running app/run_dia.sh * tests/Makefile.am : start of unit test usage on *NIX * lib/Makefile.am : add libdia_la_LIBADD = $(GTK_LIBS) fixing bug #545450 * lib/newgroup.c : disable call to diagram_unselect_objects() on *NIX as well, it collides with --no-undefined and libdia use in unit-test * tests/test-boundingbox.c : some bounding box unit test tests/test-object.c tests/makefile.msc : updated * app/display.[hc] app/dia.def : factor out ddisplay_show_all() from * app/commands.c : ... view_show_all_callback ... to make the functions signature more appropriate to be called by a plug-in * plug-ins/python/autolayoutforce.py : my playground for Fred Morcos' 'force based autolayout' algorithm, see: http://mail.gnome.org/archives/dia-list/2008-August/msg00030.html * plug-ins/python/Makefile.am : to EXTRA_DIST (not to be installed) * lib/bezier_conn.c lib/bezier_shape.c : use g_new0 for Handle allocation to ensure they pointers are not referencing random objects * lib/connectionpoint.c(connpoint_is_autogap): an unconnected ConnectionPoint can not matter for autogap * lib/bezier.c : allows to remove the hack to disable the bounding box calculation in bezier_load() * lib/connectionpoint.h : turned ConnectionPoint(Flags|Dir) to enums, helps documentation and graphical debuggers * lib/geometry.h(Rectangle): swap top/left and bottom/right to a more usual order (after debugging quite some bounding box code) finally because of it's use in bezierline_update_data() * lib/plug-ins.h : increment DIA_PLUGIN_API_VERSION * lib/libdia.def : rectangle_in_rectangle export * object/SISSI/sissi.c : don't try to load an image file from NULL filename; some formatting near that. 2008-08-02 Hans Breuer * lib/libdia.def : updated exports * lib/libdia.h : C++ guards * bindings/dia-extra.cpp : simplification by use of libdia_init() * bindings/dia-object.h bindings/dia-properties.h : mark binding internal helpers as such * lib/orth_conn.h : small docu update * objects/makefile.msc : remove bondgraph here as well * objects/standard/bezier.c objects/standard/polyline.c objects/standard/zigzagline.c objects/UML/actor.c : correct bounding box calculation * tests/test-objects.c tests/makefile.msc : start of unit tests 2008-07-27 Hans Breuer [Patch from Thomas Harding updating documentation, bug #544222] * doc/en/dia.xml: docbook version => 4.5 (use of docbook elements not disponible in 1.2. book valids now against db dtd 4.5) * doc/en/custom-shapes.xml: updated to reflect changes in doc/custom-shapes file 2008-07-26 Hans Breuer * doc-custom-shapes : shapes svg path can contain arc elements as well * doc/shape.dtd : fixed so that most of the shapes delivered with Dia pass 'xmllint --dtdvalid shape.dtd'. Remaining are some shapes having e.g. place.shape:22: element circle: validity error : Element circle does not carry attribute cy and the use of dublin core in some of Assorted * shape/(Contact|Electric|Pneumatic)/*.shape : remove the superfluous 'svg:' prefix from style attribute * sanples/Self/dia-renderer.dia : added the idea of renderer decorator * app/display.c(ddisplay_zoom) : reverted changes from bug #540210, it broke the other use cases, mainly zoom all (ctrl^e) 2008-07-25 Hans Breuer * app/display.c(ddisplay_zoom) : improved zoom behavior when using ctrl+mouse wheel around the cursor position, based on code by Ithai Levi, bug #540210 * app/mavigation.c : don't divide by zero when using the navigation window with an empty diagram 2008-07-20 Hans Breuer * objects/custom/custom_object.c(custom_copy): use object_copy_props() instead of memcpy to support extended attribues where copy by reference is not enough, e.g. Simplifies the code and fixes bug #543874 * doc/custom-shapes doc/shapes.dtd : some documentation for subshapes, ext_attributes and some usefull atrributes on 2008-07-19 Hans Breuer * configure.in : when building debug also define GTK_DISABLE_DEPRECATED * lib/prop_inttypes.c : removed #undef GTK_DISABLE_DEPRECATED * objects/UML/Makefile.am : use $(DEBUG_FLAGS) * objects/UML/class.[ch] objects/UML/class_dialog.c : moved some stuff to restrict the #undef GTK_DISABLE_DEPRECATED to class_dialog.c * objects/bondgraph/* : removed, it was empty from the beginning * objects/sybase/* : removed, unused since 2002 * objects/Makefile.am configure.in po/POTFILES.in : adapted * objects/chronogram/Makefile.am objects/ER/Makefile.am objects/flowchart/Makefile.am objects/GRAFCET/Makefile.am objects/Istar/Makefile.am objects/Jackson/Makefile.am objects/KAOS/Makefile.am objects/network/Makefile.am objects/SADT/Makefile.am : add $(DEBUG_FLAGS) * objects/custom/Makefile.am : add $(DEBUG_FLAGS) * objects/custom/custom_object.c objects/custom/shape_info.c objects/custom/shape_typeinfo.c : warningectomy * objects/Database/Makefile.am : use $(DEBUG_FLAGS) * objects/Database/table.[ch] objects/Database/table_dialog.c : moved some stuff to restrict the #undef GTK_DISABLE_DEPRECATED to table_dialog.c * objects/FS/flow-ortho.c : warningectomy * objects/SISSI/Makefile.am : add $(DEBUG_FLAGS) * objects/SISSI/sissi_dialog.c : #undef GTK_DISABLE_DEPRECATED * objects/standard/Makefile.am : add $(DEBUG_FLAGS) * objects/standard/outline.c : warningectomy * plug-ins/*/Makefile.am : propagate $(DEBUG_FLAGS) * doc/*/Makefile.am : add html.xsl to EXTRA_DIST 2008-07-18 Hans Breuer [ on the way to compile dia with GTK_DISABLE_DEPRECATED ] * app/makefile.msc lib/makefile.msc : -DGTK_DISABLE_DEPRECATED * app/app_procs.c : s/gtk_timeout_add/g_timeout_add/ * app/autosave.c : g(tk)_idle_remove_by_data () * app/color_area.c : remove gtk_color_selection_set_update_policy () - it does not have any effect anymore * app/defaults.c : use g_object_ref_sink() * app/diagram_tree.c app/diagram_tree_menu.c : #undef GTK_DISABLE_DEPRECATED for GtkCList * app/diapagelayout.[ch] : information hiding to not pollute all users with deprecated stuff * app/disp_callbacks.c : remove gtk_menu_item_set_show_toggle (), it's deprecated and doesn't have any effect anymore, use g_signal_connect () * app/display.c : replace gtk_idle_*() and gtk_object_get_user_data () * app/dynamic_refresh.c : port away from gtk_timeout_*() * app/filedlg.c : not gtk_object_get_user_data () anymore * app/gtkhwrapbox.[ch] app/gtkvwrapbox.[ch] app/gtkwrapbox.[ch] : copied already ported version from The GIMP * app/interface.c : away from gtk_object_get_user_data () * app/interface.h app/sheets.h : #ifdefed GtkTooltips * app/layer_dialog.[ch] : information hiding of deprecated stuff * app/linewidth_area.c app/navigation.c : s/gtk_drawing_area_size/gtk_widget_set_size_request/ * app/menus.c : #undef GTK_DISABLE_DEPRECATED for GtkTooltips * app/pagesetup.c : replace gtk_object_set_data_full () and adapt to DiaPageLayout information hiding * app/preferences.c : GtkComboBox instead of GtkOptionMenu * app/properties.c : g_object_ref_sink () [ #undef GTK_DISABLE_DEPRECATED ...] * app/splash.c : ... for GtkPixmap * lib/diaarrowchooser.[ch] : ... for GtkTooltips * app/sheets.c app/sheets_dialog.c app/sheets_dialog_callbacks.c : ... for GtkOptionMenu and GtkTooltips * lib/dialinechooser.c : use g_object_ref_sink() * lib/dialogs.c : replace gtk_box_pack_start_defaults() * lib/messages.c : removed #undef GTK_DISABLE_DEPRECATED * lib/prop_inttypes.c : use gtk_combo_box_new_text () instead of deprecated gtk_option_menu_new(), also g_signal_*() * lib/prop_sdarray.c : use g_signal_connect() * lib/propdialogs.c : g_object_set_data (), g_signal_connect () * lib/widgets.[ch] : moved struct _DiaDynamicMenu to implemention to hide _deprecated_ internals (GtkOptionMenu * objects/UML/class_dialog.c(umlclass_update_connectionpoints) : dont crash when called without having used the properties dialog before 2008-07-14 Hans Breuer [ Patch from Patrick Hallinan integrating the layers dialog into the integrated UI ] * app/app_procs.[ch] : only register the dialog for not integrated ui * app/interface.[ch] : creation of the new widget and ... * app/commands.[ch] : ... menu callbacks * app/layer_dialog.[ch] : conditionalized to resue most of the code in the integrated UI context * app/menus.[ch] data/integrated-ui.xml : move layer visibility toggle to View/Layers 2008-07-13 Hans Breuer * app/modify_tool.c : mouse position and bounding box on statusbar when resizing objects * NEWS : mention wmf plug-in and libEMF * shapes/Cybernetics/*.png shapes/Gane_and_Sarson/*.png shapes/Logic/*.png shapes/Map/Isometric/*.png shapes/Misc/*.png shapes/MSE/*.png : some icons were smaller than the usual 22x22, now they are expanded by an empty border 2008-07-06 Hans Breuer * lib/font.[hc] : some cleanup and test code to get on the real reason for Dia's notorious font-size mismatch, see e.g. bug #108293, #345538, #538499, ... not supposed to change behaviour yet * samples/font-sizes.dia : new test file using concrete fonts 2008-07-06 Hans Breuer [Patch from Thomas Harding fixing help finally fixing bug #536334] * doc/Makefile.am hardcopies.make : - documentation uninstall was not complete - symlinks are done on $(helpdocdir) instead of $(DESTDIR)$(helpdocdir) to make packagers life easier (this results in dangling symlinks while $(DESTDIR) != "", then symlinks are correct while the package is installed from $(DESTDIR) to "/") 2008-06-29 Hans Breuer [Patch from Thomas Harding fixing help generation for non-gnome case] * xmldocs.make : without gnome install to $(helpdocdir) * configure.in : initialize HAVE_XSLTPROC * hardcopies.make : conditionalize on HAVE_GNOME [Third iteration on patch from Thomas Harding improving the documentation generation, closing bug #465460] * doc/en/Makefile.am doc/fr/Makefile.am doc/eu/Makefile.am doc/pl/Makefile.am : deleting $(xmlsources) * hardcopies.make : corrected paths to fit --psdir --pdfdir --htmldir ./configure switches; corrected targets $(progname)(.pdf|.ps|_html) and .jw: to depend on $(xml_files) instead of (duplicate of xml_files) * doc/fr/dia-cmdline.xml doc/eu/dia-1.xml : added, bug #465460 * doc/eu/dia.1 : updated * configure.in bindings/Makefile.am : some more autotools trial and error not fixing bug #540694 - help appreciated 2008-06-27 Hans Breuer [Second iteration on patch from Thomas Harding improving the documentation generation, now 'make distcheck' succeeds again. fixing bug #539848] * doc/html/images/*.png doc/html/images/callouts/*.png : added the missing png images and callouts * doc/fr/dia-cmdline.xml : updated * doc/eu/dia-1.xml : added (data out from dia.dbk) NOTE: don't know why an English man page is in "eu". * doc/eu/dia.xml : added entities placeholders (commenteds out) for commandline/manpage content * hardcopies.make : - added $(DESTDIR) to $(sysdoc) path. - html: deleted insane ;) dependency on $(progname)-cmdline.xml, as $(xmlsources) will list it in individual languages; rewritten file-to-compile as 'first target' == $(progname).xml - pdf: deleted insane dependency on $(progname)-cmdline.xml - ps: the same... - pdf and ps dependencies,"jw" build way: the same... * omf.make : solved inconsistency in omf files path between install/uninstall [$(DESTDIR)] 2008-06-22 Hans Breuer * doc/(en|fr)/Makefile.am : remove $(progname).$(progfiles_extension) from examples * hardcopies.make : resurrect example installation 2008-06-22 Hans Breuer [Patch from Thomas Harding improving the documentation generation] * doc/*/hardcopies.makefile : moved to $(top) directory * hardcopies.make : now uses dblatex or fallback on jw (jade/openjade wrapper). * doc/*/README.hardcopies : removed, now handled by configure * configure.in : check for and do documentation generation when given --with-hardbooks * doc/**/*.xml : dropping HTML entities, making dia-1.xml independent from dia-cmdline.xml, dropping file extension from graphics * doc/*dia-dbk-to-chapter.sed: removed leftovers from previous doc patch (was too fragile) * doc/html/images/caution.svg doc/html/images/important.svg doc/html/images/note.svg doc/html/images/tip.svg doc/html/images/prev.svg doc/html/images/home.svg doc/html/images/next.svg doc/html/images/warning.svg doc/html/images/up.svg doc/html/css/dia.css: new files - images for admonitions and callouts (for html version) * doc/fr/dia.xml: switched encoding to utf8 (more versatile for inexperienced maintainers (needs no entities for specific glyphs such as ISO entity "oelig" or "laquo"...) * doc/pl/*.xml: updated some from *.sgml, corrected encoding to iso-8859-2. Corrected graphics "filetype" attribute to uppercase "PNG". * Adding Changelog-tmp, which may be dropped at any time. * doc/*/dia-*.omf: make indexation really works with scrollkeeper (which extends omf format). Now yelp shows dia manual in its TOC/whatever. * doc/(en|fr)/dia-cmdline.xml : added from my working copy, not sure where it came from ;) The 'fr' version needs translation. * doc/Makefile.am : temporary disabled due to build problems * doc/*/*.dia : svn mv doc/en/dia.dia ../samples/Self/ svn rm fr/dia.dia - there is no relation to the rest of docs * doc/hardcopies.make : don't (un)install-examples 2008-06-07 Steffen Macke * shapes/Cisco/telecommuter_house_router.png: * shapes/Cisco/layer3_switch.png: * shapes/Cisco/gigabit_switch_router_atm_tag.png: * shapes/Cisco/dpt.png: * shapes/Cisco/svx.png: * shapes/Cisco/dot_dot.png: * shapes/Cisco/man_woman.png: * shapes/Cisco/workstation.png: * shapes/Cisco/communications_server.png: Standard icon size 22x22 2008-06-07 Hans Breuer * app/makefile.msc : need to link cairo for getting it's version * lib/libdia.def : color_init still used outside of libdia * plug-ins/svg/svg-import.c : if the drawing size was giving in points the scaling was going in the wrong direction leading to huge diagrams 2008-06-01 Hans Breuer * app/display.c : get rid of HAVE_LIBART, there is antialiased rendering with cairo, too. Update menu by plug-ins types being available. * lib/font.c : now that I can look at the cairo renderer interactively the renderers font-size mismatch raised it's ugly head again. Some code in comment which does not solve the issue * app/app_procs.c : updated version dump for cairo and pango * configure.in : updated pango version required (to the same already dragged in by gkt+ (still 2.6 as minimum) 2008-05-31 Hans Breuer * lib/libdia.[ch] : new files containing the initialization code ... * app/app_procs.c : ... removed here ... * plug-ins/python/diamodule.c : ... to be useable from here * lib/Makefile.am lib/makefile.msc lib/libdia.def : adapted * app/diagram.c : there is no diagram_tree to update when not running interactively, also no display to update [warningectomy] * lib/diaarrowchooser.c lib/persistence.[ch] : constness * lib/diagramdata.c : signedness * lib/font.c : initialization * objects/UML/association.c : moved calculation of the direction triangle into it's own function and use it for bounding box calculation and drawing. Fixes bug #158265 * lib/diagtkfontsel.[ch] : not used for quite some time -> removed * lib/widgets.c lib/Makefile.am po/POTFILES.in : adapted/updated 2008-05-30 Hans Breuer [ Moved libart rendering and it's PNG export to a plug-in. So it can be switched off before being deprecated in favour of cairo. ] * plug-ins/libart/dialibartrenderer.[hc] : from lib/* * plug-ins/libart/export_png.c : moved from app/* * plug-ins/libart/render_libart.[hc] : moved from app/* * lib/dialogs.[hc] : moved from app/* * app/app_procs.[hc] : parse_size moved to plug-in * app/display.c : dynamically create the aa renderer like it is done for the cairo renderer * app/Makefile.am app/makefile.msc plug-ins/makefile.msc lib/libdia.def lib/Makefile.am lib/makefile.msc plug-ins/Makefile.am configure.in po/POTFILES: adapted * plug-ins/libart/Makefile.am : build it on Linux (untested) app/menus.c : View/Antialiased currently always enabled * lib/filter.h plug-ins/cairo/diacairo.c plug-ins/libart/dialibart.c : put the renderer tpye in the export filter struct, at least it avoids optimizing away it's side effect * plug-ins/libart/dialibartrenderer.c plug-ins/libart/render_libart.c : now the libart renderer has always the interactive interface which make it work as display renderer again 2008-05-26 Hans Breuer * lib/diagdkrenderer.c : don't rely on shortcut evaluation working with the preprocessor, fixes bug #534801 * sheets/checktrans.py : gracefully fail on missing dependencies. The translation report is not crucial for building. Fixes bug #391965 data/popup-ui.xml : get rid of Diagram menu here as well 2008-05-25 Hans Breuer * app/commands.c(file_print_callback) : implement by querying for print plug-ins in order of preference for different platforms * app/display.c(ddisplay_set_cursor) : don't try to set a cursor on a window not yet created * app/interface.c(use_integrated_ui_for_display_shell) : pass the renderer preference when ddisplay_set_renderer() - too early * app/render_gdk.c(set_size): handle being called without a window gracefully. Together this allows to start the Integrated UI without g_warning(). * app/menu.[ch] : make add_plugin_actions() work for all GUI variants, get rid of add_toolbox_plugin_actions(). Fixes bug #526146 * plug-ins/cairo/diacairo.c plug-ins/postscript/postscript.c plug-ins/wmf/wmf.cpp : don't crash on data being NULL (integrated UI does not yet properly disable menu items) * data/display-ui.xml : get rid of the "/Diagram" by moving the *two* entries to the Edit menu (like with Integrated UI) * data/integrated-ui.xml : add Find & Replace * app/interface.c : use fallback window icon code for Integrated UI, too. Fixes bug #526147 [ Patch from Thomas Harding: Bug 534656 - French manual update + addressing bug #510537 ] * doc/en/dia-1.xml doc/fr/dia-1.xml doc/en/dia.dbk doc/en/dia.xml doc/en/Makefile.am doc/fr/custom-shapes.xml doc/fr/dia.dbk doc/fr/dia.xml doc/fr/Makefile.am doc/fr/ps/graphics/preferences-fig.eps doc/fr/ps/graphics/preferences_fig.eps doc/fr/usage-customization.xml doc/fr/usage-objects-basic.xml : - rename /doc/fr/ps/graphics/preferences-fig.ps -> ..../preferences_fig.ps - fix typo in usage-customization.xml about above (png). - Makefile.am: - re-enable above png file - disable sed-script (Bug #510537), superceded by inclusion of dia-1.xml as SYSTEM ENTITY in dia-cmdline.xml and dia.dbk (for en/fr) - usage-objects-basic.xml: add the tricks about text entries cut and paste - dia.xml: delete attribute lang from 0) 2008-05-24 Steffen Macke * sheets/SISSI/analyse.png: * sheets/SISSI/personne.png: * sheets/SISSI/pda_icon.png: * sheets/SISSI/sauvegarde.png: * sheets/SISSI/logiciel.png: * sheets/SISSI/barriere_icon.png: * sheets/SISSI/meuble.png: * sheets/SISSI/camera_interphone_icon.png: * sheets/SISSI/safe_icon.png: * sheets/SISSI/si.png: * sheets/SISSI/info.png: * sheets/SISSI.sheet.in: Standard icon size 22x22 2008-05-23 Steffen Macke * sheets/SISSI/capteur_brise_glace_icon.png: * sheets/SISSI/detecteur_fumee_icon.png: * sheets/SISSI/capteur_faisceau_icon.png: * sheets/SISSI/detecteur_enthalpie_icon.png: * sheets/SISSI/condensateur_icon.png: * sheets/SISSI/detecteur_mouvement_icon.png: * sheets/SISSI.sheet.in: Standard icon size 22x22 2008-05-22 Steffen Macke * sheets/SISSI/46.xml: Fixed XML problem that prevented the object from being used * sheets/SISSI/detecteur_vibration_icon.png: * sheets/SISSI/detecteur_mouvement_video_icon.png: * sheets/SISSI/detecteur_vehicule_icon.png: * sheets/SISSI.sheet.in: Standard icon size 22x22 2008-05-21 Steffen Macke * sheets/SISSI/digi_code_icon.png: * sheets/SISSI/filtre_air_icon.png: * sheets/SISSI/lecteur_badge_icon.png: * sheets/SISSI.sheet.in: Standard icon size 22x22 2008-05-19 Steffen Macke * sheets/SISSI/pompe_icon.png: * sheets/SISSI/pompe_rotative_icon.png: * sheets/SISSI/lecteur_biometrique_icon.png: * sheets/SISSI/ventilateur_axial_icon.png: * sheets/SISSI/porte_tambour_icon.png: * sheets/SISSI.sheet.in: Standard icon size 22x22 2008-05-18 Steffen Macke * sheets/SISSI/extincteur_icon.png: * sheets/SISSI/onduleur_icon.png: * sheets/SISSI/extracteur_humidite_icon.png: * sheets/SISSI/aircooler_icon.png: * sheets/SISSI.sheet.in: Standard icon size 22x22 2008-05-18 Hans Breuer * app/properties.c : work around the disability of Gtk on win32 to shrink the property dialog when it is hidden (by destroying instead) Fixes bug #333751. * lib/diagdkrenderer.c lib/diarenderer.c plug-ins/cairo/diacairo-renderer.c (*_rounded_rect) : fall back to (draw|fill}_rect if the radius is so small (smaller than one device unit) it will only produce artifacts. Fixes bug #446854 [finally use dia_object_get_enclosing_box() to ... ] * app/commands.c : ... have bezier control points in field of view when "show all" with selected bezier objects * app/object_ops.c ... get rid of bezier control line traces, because they are not included with the bounding box. Fixes bug #300055 * objects/standard/bezier.c objects/standard/beziergon.c : calculate the enclosing box as control points plus bounding box * objects/Database/table.c : don't use dia_object_get_enclosing_box() where dia_object_get_bounding_box() was meant * lib/libdia.def lib/bounding_box.[hc] : export some bezier helper functions instead of copy and pasting them to ... * objects/Istar/link.c : ... other users * lib/bounding_box.c : added some API documentation for the helpers (bicubicbezier_extrema) : special casing for quadratic curves to avoid division by (almost) zero and improve/fix bounding box calculation for symmetric bezier curves 2008-05-18 Steffen Macke * SISSI/lecteur_badge_clavier_icon.png: * SISSI/detecteur_alimentation_icon.png: * SISSI/ventilateur_centrifuge_icon.png: * SISSI/detecteur_courant_icon.png: * SISSI/detecteur_tension_icon.png: * SISSI/detecteur_humidite_icon.png: * SISSI/detecteur_qualite_air_icon.png: * SISSI/detecteur_pression_icon.png: * SISSI/detecteur_lumiere_icon.png: * SISSI.sheet.in: Standard icon size 22x22 * app/disp_callbacks.c: Return NULL from ddisplay_drop_object() if no object could be created instead of segfaulting; fixes bug #533679 2008-05-17 Hans Breuer * app/Makefile.am : no paginate_*.* here, removed from EXTRA_DIST * plug-ins/wmf/Makefile.am : updated EXTRA_DIST * plug-ins/postscript/Makefile.am : updated EXTRA_DIST 2008-05-17 Steffen Macke * shapes/Lights/*.png: Standard icon size 22x22 2008-05-16 Steffen Macke * lib/propobject.c: prevent crash when shapes could not be parsed correctly. Fixes bug #533459 2008-05-12 Hans Breuer * shapes/BPMN/*.png : cropped/scaled to 22x22 * app/sheets.c : attempt to add some robustness * app/sheets_dialog_callbacks.c : g_new0() to catch mis-initialization (on_sheet_new_dialog_button_ok_clicked) : a newly created sheet was not selected after creation (on_sheets_dialog_button_move_clicked) : a move was not considered a modification of the source sheet (on_sheets_dialog_button_apply_clicked) : when finally registering the a new sheet the struct was not properly passed, same for new object Together this should fix bug #393526 * app/find-and-replace.c : replace (all) part is working, too. 2008-05-11 Hans Breuer * lib/filer.h app/menus.c : changed signature of DiaCallbackFunc to additionally take an optional file name * plug-ins/cairo/diacairo-print.[ch] plug-ins/python/diamodule.c : adapted to the new signature * app/paginate_gdiprint.(h|cpp) : move to ... plug-ins/wmf/paginate_gdiprint.(h|cpp) plug-ins/wmf/wmf.cpp : ... and make it work as a plug-in, temporary registered as "Print (GDI)" * plug-ins/postscript/* copied mainly from app/* : * plug-ins/postscript/postscript.c : register Dia's formerly built-in PS filters as plug-in, so they can be switched off when obsoleted by cairo or the user does not want them, printing temporary registered as "Print (PS)" * postscript/paginate_psprint.c(diagram_print_ps) : filename handling * configure.in plug-ins/Makefile.am plug-ins/postscript/Makefile.am plug-ins/postscript/postscript.c : build the plug-in and ... * app/diapsft2renderer.[ch] app/diapsrenderer.[ch] app/render_eps.[ch] app/paginate_psprint.[ch] app/win32print.[ch] : ... remove ... app/app_procs.c app/commands.c app/Makefile.am app/makefile.msc : ... postscript handling from core * app/diagram.c app/app_procs.c : removed dangling includes * po/POTFILES.in : reflect movement of files * lib/ps-utf8.[ch] : moved to plug-ins/postscript/ps-utf8.[ch] * lib/Makefile.am lib/makefile.msc plug-ins/makefile.msc plug-ins/postscript/Makefile.am lib/libdia.def : updated accordingly * objects/standard/outline.c : don't try to render a bezier with 0 points 2008-05-10 Hans Breuer * objects/standard/outline.c(move_handle) : initial implementation * objects/Misc/measure.c : object position should be start point * lib/widget.c(DiaSizeSelector): initialize static variable, avoid division by zero, don't compare floating points for identiy; together fixing bug #479591 * lib/font.c(dia_font_get_sizes) : use the maximum width of logical- and ink-rect to make the always glyphs fit the bounding box. Probably fixes bug #455651 but needs checking with DiaRenderer using Freetype. * lib/diagramdata.c(layer_update_extents) : don't consider empty objects for the overall extents. Fixes bug #531687 and lowers priority of bug #99375. * plug-ins/wmf/wmf.cpp : don't assume pango_context_load_font() can not fail. It does for font descriptions pointing to fonts not available on the particular system. * lib/text.c(text_calc_boundingbox) : the bounding box did include one descent too much, which caused wrong placement for "Standard - Text" which calculates the vertical text positioning from the bounding box. Fixes bug #528642 but not bug #438020. * lib/grid.c(grid_draw_*_lines) : the major lines were sometimes off by one due to rounding problems. Fixes bug #382212. * objects/standard/outline.c : forgot to call update_data after copy * objects/Misc/measure.c objects/Misc/pixmaps/measure.xpm objects/Misc/libmisc.c objects/Misc/Makefile.am objects/makefile.msc sheets/Misc.sheet.in : a new object to measure and show the distance between two connection points. * plug-ins/python/select_empty.py : allows to find objects with empty bounding boxes like empty text. See bug #99375. * plug-ins/python/Makefile.am : install it * app/display.c(selection_changed) : update menu sensitivity in the signal handler for selection changed. Could replace a lot of explicit updates, but is needed when the selection is changed from a plug-in * app/diagram.c(diagram_update_menu_sensitivity) : maybe called with ddisplay_active() returning NULL, don't crash on that. 2008-05-06 Steffen Macke * installer/win32/dia.nsi: * installer/win32/locale/slovenian.nsh: Slovenian translations for the installer. Patch from Martin Srebotnjak 2008-05-04 Hans Breuer * plug-ins/xfig/xfig-import.c(fig_read_arc): acccept pie-wedge although not completely supported. Better than refusing the whole file (fig_read_text) : fixed probable typo 3.54/72.0 * lib/geometry.[hc] lib/libdia.def: three_point_circle() calculate center point and radius given 3 points on a circle, fixed prototype and implementation to ... * plug-ins/xfig/xfig-export.c : corrected arc export for both draw_arc and fill_arc methods * plug-ins/xfig/xfig-import.c lib/create.h(create_standard_arc) : the fifth parameter was named and treated as radius alsthough it set the "curve_distance" * lib/create.c(create_standard_arc) : also the second point passed in was simply ignored. Now it moves the second handle. Part of bug #436148 * plug-ins/cairo/diacairo.c : more exporters marked as FILTER_DONT_GUESS Fixes writing of (old) WMF, but text is missing for both EMF and WMF. * samples/render-test.dia : fixed some alignments and colors 2008-05-03 Hans Breuer * app/filedlg.c : adapt the "Supported Formats" filter so that the files shown are matching the extensions of the slected import filter. Fixes bug #503117 * objects/UML/association.c : the transition to full StdProps broke the restoration of autorouting swicthed off in version 1 shapes * samples/Self/PyDiaObjects.dia : documentation of PyDia which showed the problem * plug-ins/xslt/xslt.c(xslt_ok) : the directory name passed into xslt needs to be an uri (*NIX being more tolerant). Fixes bug #472143. * samples/Self/dia-renderer.dia : updated one more * app/load_save.c : only update handle positions if the bounding box is empty after creation of the object * plug-ins/wmf/wmf.cpp : use Pango for loading the font but not for rendering (taking the better part of my patch to fix bug #350726) * plug-ins/makefile.msc : link wmf with pangowin32.lib, clean-up * app/find-and-replace.c : reset last found if we start a new search * app/render_gdk.c(draw_pixel_rect, draw_pixel_line) : clip early to avoid passing out-of-range parameters to Gdk 2008-05-02 Hans Breuer * objects/FS/flow-ortho.c objects/FS/flow-poly.c objects/FS/flow.c : objects/FS/flow.c : Object::copy() was not calling Object::update() resulting in uninitialized memory, crashing or corrupted diagrams. Not anymore, fixing bug #456270 * plug-ins/dxf/dxf-import.c : either add the objects directly to a layer or use them in a group. Otherwise memory corruption will occur at the latest at diagram destruction time * app/diagram_tree.c : there was a pixmap and mask created for every object in the diagram; not only waste of cpu cycles but also a resource problem making Gdk fail for a diagram with >7000 objects. Now the type specific pixmap and mask are hold in a hashtable and only ref'd for use in the GtkCTree. Also a pixbuf leak was plugged. * app/preferences.[hc] app/display.c : antialized view default selectable from prefernces, bug #338832 * plug-ins/dxf/dxf-export.c : the TABLES section was missing the TABLE start, should fix bug #528741 * lib/filter.[hc] : introduce the ability to influence guessing of import/export -filters. If one is marked as FILTER_DONT_GUESS it is only selected by the guessing if it is the only one registering a certain extension * lib/plug-in.h : increase DIA_PLUGIN_API_VERSION * plug-ins/python/diamodule.c : set FILTER_DONT_GUESS for all filters implemented in Python * plug-ins/pixbuf/pixbuf.c : set FILTER_DONT_GUESS for vector formats supported by GdkPixbuf. This way a Dia importer capable to process vectors gets preferred 2008-05-01 Hans Breuer * app/find-and-replace.[hc] : inital version of find&replace - find already working, replace does nothing yet (to be continued) * app/Makefile.am app/makefile.msc : build find-and-replace.c * lib/diagramdata.[hc] : new function data_foreach_object() to simplify the iteration over objects * lib/libdia.def : export it * data/display-ui.xml data/popup-ui.xml app/menus.c : Find&Replace in the menus * samples/Self/dia-renderer.dia : updated 2008-04-28 Hans Breuer * lib/diagdkrenderer.c : another cheap optimization, clip the requested sub-pixbuf to the visible area 2008-04-28 Steffen Macke * shapes/Cisco/router.png: Standard icon size 22x22; Thanks to Ian Redfern 2008-04-27 Hans Breuer * shapes/Cisco/*.png shapes/RDP/*.png shapes/Cisco/Makefile.am shapes/RDP/Makefile.am : removed unrefernced icons * lib/dia_image.h : include gdkpixbuf.h rather than forward declaring typedef struct _GdkPixbuf GdkPixbuf; gcc does not like the latter * objects/custom/custom_object.c : 'default_properties' were not initialized as intended, e.g. show_backgound was random data * shapes/Lights/ACL.png shapes/MSE/large_extension_node.png shapes/Logic/and.png shapes/MSE/small_extension_node.png shapes/ChemEng/*.png : desired icon size is 22x22 * sheets/UML/aggregation.png : rotated/flipped to show the usual direction [ finally restores the feature to have different defaults for the same object by 'intdata' in sheet file, e.g. Class and Template in UML. Strange that I can't find any bug report related to this ;) ] * app/defaults.[hc] lib/object.h lib/object_defaults.c : pass user_data to dia_object_default_get(), although not using it yet. Remove unused function dia_object_default_make(). (dia_object_default_create) : direct hashtable access to avoid creating a default object for every object used. Only the default dialog created from double-clicking the tools toolbox icon creates a new default object now. Also only copy ~PROP_FLAG_NO_DEFAULTS to preserve intdata initialized properties over stored ones * objects/GRAFCET/vergent.c objects/Istar/actor.c objects/Istar/goal.c objects/Istar/link.c objects/Istar/other.c objects/Jackson/domain.c objects/Jackson/phenomenon.c objects/KAOS/goal.c objects/KAOS/metaandorrel.c objects/KAOS/metabinrel.c objects/UML/association.c objects/UML/component_feature.c : mark properties modified by intdata/GPOINTER_TO_INT(user_data) as PROP_FLAG_NO_DEFAULTS, thus they are no longer over-written by the object defauts system. * objects/UML/class.c : no default name anymore * doc/custom-shapes : mention and * shapes/circuit/(h|v)*.shape : use them to have more recognizable shapes. Fixes bug #493237. * lib/prop_widgets.c : set the unfoldbutton to insensitive when invisible to stop propagating key events to it. Fixes bug #491028 * objects/standard/(bezier|line|polyline).c : added PROP_OFFSET_FRAME_BEGIN("gaps"), PROP_OFFSET_FRAME_END("gaps") to get symmetry between PropDescriptions and PropOffsets * lib/widgets.c : no more singned/unsigned mismatch and get rid of incompatible types - from 'struct _GtkWidget *' to 'struct _GtkFileSelection *', the DiaFileSelector::dialog is a GtkFileChooser for quite a long time 2008-04-26 Hans Breuer * objects/UML/association.c : one more selfmade dialog gone, 'UML - Association' now use StdProps, too. * objects/UML/transition.c : move text positions by same delta than the center handle, fixes bug #528738 [ there is an unwritten rule for std-props: same name, same type ] * objects/AADL/aadlbox.c objects/Jackson/phenomenon.c objects/UML/message.c objects/UML/node.c : what is called text should be of type text * objects/KAOS/metaandorrel.c objects/UML/implements.c : 'name' is of type string * objects/GRAFCET/step.c : font_size as fontsize not real * objects/standard/box.c : corner_radius as real * objects/UML/classicon.c : stereotype is a string * plug-ins/python/allprops.py : creates a diagram extracting common properties from all registered objects, warns about name/type clashes * plug-ins/python/Makefile.am : add allprops.py, remove diasvg_import.py from installed plug-ins * plug-ins/python/pydia-properties.c : exclude PROP_FLAG_LOAD_ONLY (compatibility) properties from the property dictionary * bindings/test.py : added allprops test * lib/propdialogs.c : use &= ~PXP_NOTSET to reset the property experience flag 2008-04-25 Hans Breuer * lib/diagdkrenderer.c dia_image.[ch] : don't use dia_image_draw() for up-scaling of images to reduce memory consumption (bug #439885) * objects/custom/shape_info.c : don't mess with info->icon after preload (valgrind complained about invalid reads of free'd strings and sometimes there was a missing icon in the toolbox. Also fixed some type cast warnings * lib/diagdkrenderer.c lib/diasvgrenderer.c lib/dialibartrenderer.c app/diapsrenderer.c app/diapsft2renderer.c : all DiaRenderer::draw_string() methods were leaking their text_line * lib/textline.c(text_line_destroy) : use clear_layout_offset() instead of leaking cached values * lib/autoroute.c : othconn_set_points does not eat points * app/diagram.c : return of diagram_get_name() must be free'd * objects/standard/line.c : connpointline_create must be paired with connpointline_destroy() * objects/standard/outline.c : object_init() needs object_destroy() * objects/UML/state.c : don't miss to free action strings * objects/UML/transition.c : also leaking strings * plug-ins/vdx/vdx-import.c : minimal handling of vdx:PolylineTo to avoid an endless loop, fixes bug #529882 * lib/propdialogs.c(property_signal_handler) : get rid of signed/unsigned warning (prop_dialog_add_properties) : better guess on the required size of the scrollable area. Never make it bigger than the full content. * lib/properties.h : remove defintions for PROP_STD_MULTICOL_*, these format helpers need to be unique in case of being combined in the group properties dialog across such objects * objects/chronogram/chronoref.c objects/Database/reference.c objects/Database/table.c objects/UML/class.c : updated accordingly * objects/misc/misc.c : remove registration of newgroup here * app/app_procs.c : use USE_NEWGROUP to conditionally register newgroup_type (default disabled, because it is unfinished) ... * lib/newgroup.h : ... make newgroup_type a DIAVAR to be useable in principle on win32. Together fixes bug #505513 * lib/newgroup.c : #warning is a gcc extension, conditionalize * lib/makefile.msc : build newgroup.obj 2008-04-20 Hans Breuer * objects/UML/object.c : also write 'name' in text_color * objects/UML/association.c : line_color and text_color * objects/UML/component_feature.c : added line_color * objects/UML/fork.c : added fill_color * objects/UML/state_term.c : fill_color and line_color * objects/UML/transition.c : fill_color and text_color => all UML shapes can be tinted now, closing bug #169107 * app/load_save.c : use 'obl->ops-move(obj,obj->position)' 2008-04-19 Hans Breuer * app/diagram.c : put the modification mark ('*') in the window title like other programs do, ... * app/display : ... remove "Diagram modified" from the statusbar ... * app/create_object.c app/modify_tool.c : ... and clean out temporary positions in button_release * app/interface.[ch] : removed specialized handling of modification for integrated ui, it is not needed anymore * app/tool.h : remove unused struct _ToolInfo * lib/textline.c : an empyt text created bogus ascent/descent, it used to mean the fonts ascent/descent. Fixes e.g. the positioning of 'UML - LargePackage' label, fixes bug #439862 * objects/standard/textobj.c(textobj_load) : intialize TextObj::attrs from TextObj::text (bug #528903, Leon Stringer) * objects/Istar/goal.c objects/Istar/other.c objects/Jackson/domain.c objects/SADT/box.c : had a similar problem leaving attrs uninitialized in their create method 2008-04-15 Steffen Macke * shapes/Cisco/content_service_router.png: * shapes/Cisco/voice_switch2.png: * shapes/Cisco/router_in_building.png: Resized icons to standard size 22x22; partial fix for #528251 2008-04-14 Steffen Macke * shapes/BPMN/compensation.shape: Further improvment of the shape, foreground color can now be choosen in Dia * shapes/BPMN/*.shape: Fill color can now be specified in Dia instead of hardcoded white fill; Patch from David Nguyen * bindings/dia-properties.cpp: * lib/diatypes.h: Patch from Stefan Husmann to fix compiler errors 2008-04-14 Gabor Kelemen * app/menus.c: Corrected typo spotted while updating translation. 2008-04-14 Gabor Kelemen * installer/win32/locale/hungarian.nsh: Updated translation. 2008-04-13 Hans Breuer * lib/propdialogs.c : if there are more than a dozen properties make the dialog scrollable * lib/propdesc.c(prop_desc_lists_union) : even the union of properties must not contain properties maked by PROP_FLAG_DONT_MERGE * lib/prop_widgets.c : fixed long-standing bug of MULTICOL properties not being in the expected order [more robustness for incomplete (i.e. usually generated) diagrams] * app/load_save.c : adjust the connections positions automatically, it is impossible to do so while generating * lib/element.h lib/object.h lib/orth_conn.h lib/properties.h objects/UML/generalization.c : marked more properties optional - if they are properly initialized - to get rid of a lot of g_warnings() and one step further to fix #56233 * samples/gobj-parse.c : a simple parser to generate a class diagram out of GObject using headers to test the above [currently unused: first step for property editor with GtkTreeView] * lib/diamarshal.list : add marshaler * lib/diacellrendererproperty.[hc] : boilerplate for CellRenderers * lib/makefile.msc lib/Makefile.am : build new files * lib/prop_sdarray.c : prepare to make the list editable * lib/diatypes.h lib/widgets.h : moved #include "units.h" to widgets.h diatypes.h is supposed to contain _only_ type forward declares * plug-ins/python/diagx.py : importer for XML generated by gccxml 2008-04-12 Hans Breuer * lib/plug-ins.c : not being able to load a plug-in is not a critical issue, get rid of message_error() for these. Fixes bug #402320 On windows also use SetErrorMode() to to suppress the systems error dialog. Finally we are rewriting the error reason if the plug-in file exists but can not be loaded. 2008-04-10 Steffen Macke * installer/win32/locale/german.nsh: Fixed typo * installer/win32/locale/hungarian.nsh: Added Python texts * installer/win32/locale/slovak.nsh: Updated Slovak installer translations. Patch from Ivan Masar * installer/win32/dia.nsi: Added splash image, updates for the location of some translation files 2008-04-09 Steffen Macke * installer/win32/dia.nsi: Updates for the location of some translation files 2008-04-08 Hans Breuer * NEWS app/authors.h : updated * lib/object.c(object_copy_list) : if we can't find the object to to connect to ensure there is no dangling reference. Fixes bug #497070 * lib/group.c(group_copy) : some comment * lib/font.c(dia_font_string_width) : no need to create multiple TextLines to calculate the length of an empty string. * lib/text.c(text_key_event) : no text change for modifiers 2008-04-08 Steffen Macke * makefile.msc: Don't use the --use-fuzzy option with msgfmt, updated ALL_LINGUAS * installer/win32/dia.nsi: Updates for Dia, GTK+ and Installer locale files; Hungarian and Slovak translations are again available in the installer 2008-04-07 Steffen Macke * installer/win32/dia.nsi: Various small updates; the sample files are now included in the installer build (fixes bug #518094) 2008-04-06 Hans Breuer * plug-ins/python/codegen.py : use a list for attributes rather than a dictionary to preserve the order of attributes. Fixes bug #519162 * objects/UML/class.c : switching comment visibility via object menu produced an invalid change object: bug #512848 * lib/objchange.c(new_object_state_change): g_return_val_if_fail() on invalid arguments * objects/UML/class_dialog.c : a lot of stuff from the 'UML - Class' was not considered for undo * lib/newgroup.c : only avoid linking app/ for G_OS_WIN32 does _not_ fix the crash from bug #505513 2008-04-05 Hans Breuer * lib/widgets.c : setup pixbuf file formats filter for "Load Image" fixing bug #439847 * objects/standard/image.c : not only check for a different filename but also for different modification time when setting changing "Standard - Image". Fixes bug #439849 * plug-ins/pixbuf/pixbuf.c : plug a memory leak * app/menus.c(ensure_menu_path) : allow plug-ins to create a menu path again. Does not yet work fopr the integrated ui, see bug #526146 (_ui_manager_connect_proxy) : resurrection of menuitem tooltips, especially for recent file menu. They were lost in trnaslation to the GtkAction framework: bug #340352 * app/load_save.c : disable remaining g_access() for win32, otherwise we can not save to a preexisting file * app/app_procs.c(app_exit) : don't g_free() const strings, dia_open_diagrams() returns a GList, not a GSList Also evaluate the return value of diagram_save() and don't simply assume saving can't fail. Related to bug #501703 (process_opts) : by accident I had removed the gtk options which broke also --help * app/display.c : removed "Key input ..." debug spew * app/interface.c app/sheets : enforce Dia's toolbox icon size by cropping icons which are too huge * lib/makefile.msc : cosmetic change * plug-ins/cairo/diacairo-print.c : with_alpha does not make sense in conjunction with printing 2008-04-04 Steffen Macke * app/interface.c: Patch from Patrick Hallinan : Make the notebook scrollable. 2008-03-16 Hans Breuer * plug-ins/cairo/diacairo-renderer.c(_rounded_rect) : use cairo_arc() instead of approximating arcs with beziers * plug-ins/cairo/diacairo.c plug-ins/makefile.msc : resurrection of EMF via cairo (cairo-1.6 will support EMF creation via win32-printing surface so my own cairo patch is finally obsolete) * sheets/*/*.xpm shapes/**/*.xpm : removed all those obsolete XPM 2008-03-10 Hans Breuer * app/display.c(are_you_sure_close_dialog_respond) : don't close the display when saving failed. Fixes bug #501703 2008-03-09 Hans Breuer * app/load_save.c(diagram_data_save) : not using g_access() because 'My Documents' is write protected by default on XP but still can contain writable files. With extended security attributes becoming more common this change may even become necessary for *nix? Fixes bug #504469. * objects/standard/outline.c : don't make Dia crash by returning NULL from get_object_menu. Fixes bug #503899. * plug-ins/cairo/Makefile.am : forgot diacairo-print.h here as well * lib/persistence.c : listen again to the configure-event and remove debug spew (the fix for bug #501475 broke the size storing completely) * plug-ins/cairo/diacairo-print.c : fix reference counting for cairo_t * bindings/test.py : make it work on windoze again * plug-ins/cairo/diacairo-renderer.c : hairline support 2008-03-08 Hans Breuer * plug-ins/cairo/diacairo-print.c : use the cairo renderer for integration with the Gtk+ print framework * plug-ins/cairo/diacairo.c : gtk-print implementation for paginated output of PDF (bug #513226) and register for printing, also ... plug-ins/cairo/diacairo-renderer.c : ... split off the renderer implementation in it's own file. Some tweaking for use in the print context. * plug-ins/cairo/diacairo.h : calback function to be registered in the menu (later to replace native printing?) * plug-ins/cairo/Makefile.am plug-ins/makefile.msc : adapted * data/display-ui.xml data/popup-ui.xml : more *ExtensionStart to allow placement of plug-in function in all sub-menus. Above it is used for "File/Print with Gtk+/cairo ..." * plug-ins/cairo/diacairo-interactive.c : also compile with Gtk+ < 2.8 2008-03-05 Hans Breuer * lib/font.c lib/focus.c lib/diagdkrenderer.c objects/standard/arc.c object/standard/outline.c : less warnings by (re)moving (dead|some) code * objects/standard/Makefile.am : remove whitespace after '\' * po/POTFILES.in : now really removed app/diaconv.c * objects/standard/(bezier|polyline|zigzagline).c : reverted changes from revision 3878. Object plug-in internals must not be made public. Also the way it was done was not portable. * objects/standard/(bezier|polyline|zigzagline).h : deleted * objects/custom_lines/custom_linetypes.c : almost complete rewrite using only public APIs * objects/custom_lines/custom_lines.c objects/custom_lines/custom_linetypes.h : custom_linetypes_init(); not any longer necessary. * objects/standard/Makefile.am objects/custom_lines/Makefile.am objects/makefile.msc : adapted (reverting the tricks to make 'make distcheck' pass 2008-03-04 Hans Breuer * objects/EML/* sheets/EML.sheet.in : removed * objects/Makefile.am : almost 7 years being disabled is enough * po/POTFILES.in sheets/Makefile.am : adapted * app/app_procs.c configure.in : removed obsolete POPT cruft * app/diaconv.c : removed - cruft must die * app/Makefile.am : adapted * configure.in : removed obsoltete check for dirent.h * objects/standard/Makefile.am : ooops, was not built anymore;)gedit [autobreak trial and error - finally makes 'make distcheck' pass] * bindings/Makefile.am : dont try to install anything * data/Makefile.am : add dia-splash.png to EXTRA_DIST * doc/en/Makefile.am : add dia-dbk-to-chapter.sed to EXTRA_DIST * xmldocs.make : s/docdir/helpdocdir/ * po/POTFILES.(in|skip) : updated 2008-03-03 Hans Breuer * lib/makefile.msc : compile units.c and ensure definition of GLIB_GEN_MARSHAL 2008-03-01 Hans Breuer * objects/Misc/analog_clock.c : move hour hand by the minute Patch from Paul McGuire fixing bug #516469 * lib/font.c : dia_font_get_sizes() was wrongly assuming single line passed in. Patch inspired by Saurabh Nanda, fixes bug #482585 2008-03-01 Hans Breuer * objects/custom_lines/custom_linetypes.c objects/custom_lines/Makefile.am : make the hack to include stuff from objects/standard pass 'make distcheck'. Looks very suspicous from the design point of view. ObjectTypeOps are not meant to be reused. * objects/SISSI/Makefile.am objects/standard/Makefile.am objects/Database/Makefile.am doc/fr/Makefile.am lib/newgroup.c : changes to make 'make distcheck' work ... * bindings/Makefile.am : ... almost ;) 2008-03-01 Hans Breuer * bindings/* : make it compile again after DiaObject method renaming * lib/units.[ch] : gobal variables need to be explicit exported - or better avoided * objects/custom/custom_object.c objects/custom/shape_info.c : fix missing includes and gccisms (c99isms) 2008-02-20 Lars Clausen * objects/standard/line.c (line_adjust_for_absolute_gap): Fix compilation problem for MacOS by not redefining the same function. 2008-02-12 Lars Clausen * objects/custom/custom_object.c: * objects/custom/shape_info.h: * objects/custom/shape_info.c: * lib/widgets.c: * lib/widgets.h: * lib/diatypes.h: * lib/Makefile.am: * lib/geometry.c: * lib/units.c: * lib/units.h: Patch from Marcel Toele : Shapes can now have sub-shapes that can be scaled or not when the main shape is scaled. Also, it is now possible to specify that shapes are created with their stated sizes. 2008-01-17 Lars Clausen * configure.in: * objects/custom_lines/*: * objects/standard/zigzagline.[ch]: * objects/standard/polyline.[ch]: * objects/standard/bezier.[ch]: Patch from Marcel Toele : Custom line objects -- sorta like shapes, but for lines. Limited to a way to preset attributes on the standard lines. * lib/widgets.[ch]: * lib/geometry.c (units): * lib/geometry.h: * lib/diatypes.h: Moved units array to be generally accessible. 2008-01-10 Hans Breuer * app/create_object.c(create_object_button_release) : don't crash on tool->obj being NULL, just do nothing than. * app/undo.c(310) : error C4033: 'undo_remove_to' must return a value app/undo.c(312) : error C4047: '!=' : ' void (__cdecl *)(struct _Change *,struct _Diagram *)' differs in levels of indirection from 'void (__cdecl ** )(struct _Change *,struct _Diagram *)' * lib/libdia.def : reflect recent libdia API changes 2007-12-11 Lars Clausen * plug-ins/shape/shape-export.c (export_shape): Fix crash of non-.shape export by disallowing it. 2007-12-09 Lars Clausen * lib/persistence.c: Fixed window update events such that show/hide and map/unmap are symmetrical and gets the right info stored. Fixes bug #501475. 2007-12-03 Lars Clausen * app/undo.[ch]: New function undo_remove_to removes items from the undo stack until hitting a specific kind of undo item. Needed for text edit undo collapsing, but not used yet. * app/modify_tool.c: * app/diagram.c: * app/disp_callbacks.c: * app/textedit_tool.c: * app/layer_dialog.c: * app/display.[ch]: * app/commands.c: * lib/diagramdata.[ch]: * lib/text.c: * lib/focus.[ch]: Focus list and active focus now per-diagram. Selection kept when switching between diagrams. 2007-12-01 Lars Clausen * po/LINGUAS: Added Punjabi (pa), as pointed out by http://l10n.gnome.org/module/dia. Closes bug #500745. * po/POTFILES.in: Added diacairo-interactive.c, tree.c and outline.c, as suggested on http://l10n.gnome.org/module/dia. Closes bug #500739. 2007-11-20 Lars Clausen * shapes/Cisco/Makefile.am: Fixed wrong numbering of shape list. 2007-11-11 Hans Breuer * objects/standard/outline.c : avoid drawing invalid number of bezier points (and thus crashing) [ Much decreased start-up time and memory usage by delay loading custom shapes. Closing bug #491142 ] * objects/custom/shape_typeinfo.c : (new file) extracting the type information of the custom shape by reading the first 512 bytes using libxml SAX. Instead of DOM it does not load the whole file into memory. * objects/custom/custom.c : implement and use custom_object_preload() based on the above. Use it in load_shape_from_tree() - the routine scanning all shapes at start-up * objects/custom/shape_info.[ch] : adapt infrastructure to to the complete loading of the shape file on demand [ there were 5 - out of ~700 shapes - which failed the size assumption (reading only the first 512 bytes of the shape). They are modified instead of making the (pre-)loading of all shapes slower. ] * shapes/Map/Isometric/Car1.shape shapes/Map/Isometric/Car2.shape shapes/Misc/expended-node.shape shapes/Misc/expensible-node.shape shapes/Map/Isometric/RedCar.shape : moved and tag early in the file to silence preload 2007-11-10 Hans Breuer * objects/standard/outline.c(outline_draw) : first the whole text path from cairo is converted to Dia BezPoint(s). Afterwards it is interpreted regarding 'land' and 'holes'. Thanks to Behdad Esfahbod and Carl Worth for the ideas. The holes are currently drawn by blanking with color_white. This could probably be improved by implementing some beziergon math. * samples/render-test.dia : more Outline variations * lib/object.c lib/prop_inttypes.c objects/UML/constraint.c objects/UML/lifeline.c : more tolerance for very old files written by Dia (< 0.90) by checked cast from int to enum and marking some more properties optional 2007-11-08 Lars Clausen * plug-ins/pgf/render_pgf.c (pgf_arc): Patch from Jeppe Fock : Render PGF arcs correctly. Fixes bug #494942. 2007-11-04 Hans Breuer * app/pixmaps/dia-app.png app/pixmaps/dia-diagram.png : restored from dia_gnome_icon.png, dia-diagram.png revision 3838 * app/interface.c : if there is no window_icon set by the theme use the inline icons again. Fixes bug #491100 without reverting to the behaviour before bug #463115 * app/commands.c : use the splash screen again in the about box * app/Makefile.am app/makefile.msc : build integration * objects/standard/outline.c : oops, the cairo context was leaked * app/menus.c data/display-ui.xml data/integrated-ui.xml data/popup-ui.xml : put Outline to the menus * objects/standard/outline.c : need PROP_STD_TEXT_*_OPTIONS, otherwise the font specific stuff would not be saved/restored (outline_copy) : copy also the font information and colors * objects/makefile.msc : build Outline on win32 * samples/render-test.dia : updated to also use Outline * plug-ins/dxf/dxf-import.c : the logic to detect a 4 point 'SOLID' was flawed, it is enough if x or y is different 2007-11-03 Hans Breuer * objects/standard/outline.c : an object drawing text outlines, even rotateable. Backdoor making Dia finally support some rotated text, compatible with all existing renderers ;) * objects/standard/pixmaps/outline.png : an ugly icon * objects/standard/standard.c : register and ... * objects/standard/Makefile.am : ... build it * app/interface.c : less magic number to reorder the sheet_option_menu 2007-10-31 Lars Clausen * objects/UML/umloperation.c: * objects/UML/umlattribute.c: * objects/UML/uml.h: * objects/UML/uml.c: * objects/UML/class.c: * objects/UML/class_dialog.c: Reverting UML patch: Patch not complete and changes non-standard. 2007-10-30 Lars Clausen * objects/UML/transition.c (transition_draw): Make sure transition uses solid linestyle. Fixes bug #372149. 2007-10-28 Lars Clausen * objects/UML/umloperation.c: * objects/UML/umlattribute.c: * objects/UML/uml.h: * objects/UML/uml.c: * objects/UML/class.c: * objects/UML/class_dialog.c: Patch from jan jan : Add attributes and "sealed" to UML. 2007-10-28 Hans Breuer * lib/libdiadef.c : added lader_find_objects_containing_rectangle [ overhaul of the DXF plug-in, en passant fixing bug #481193 ] * plug-ins/makefile.msc plug-ins/dxf/Makefile.am plug-ins/dxf/autocad_pal.[ch] : moved the acad_pal into it's own file to share it between import and export. Provide accessors. * plug-ins/dxf/dxf-import.c : - get rid of the setlocale stuff by using g_ascii_strtod - read more object('entity) colors - better line style and width preserving - actually use text height from file - less complains, should not give any g_warning anymore, at least not for a valid DXF file - initialze the layer to dia->active_layer to avoid crashing on DXF which does not not set the layer information * plug-ins/dxf/dxf-export.c : - implement fill_rect, draw_polyline export more object colors - always write minimal header information although it is supposed to be completely optional 2007-10-28 Lars Clausen * app/dia_image.c: Rollback of use of stock image that breaks non-interactive use. Bummer. * app/display.c (ddisplay_do_update_menu_sensitivity): Check for existence of display before updating menus. * app/diagram.c (diagram_update_menu_sensitivity): * app/menus.c: * app/menus.h (struct _UpdatableMenuItems): * app/undo.[ch]: Add support for desensitizing the Undo/Redo menu items. * installer/rpm/dia.spec.fedora-core-6: * data/dia-splash.png * data/Makefile.am * data/icons/*: * makefile.msc: * app/splash.c (get_logo_pixmap): * app/interface.c (create_toolbox): * app/Makefile.am: * app/makefile.msc: * dia.desktop.in.in: * app/commands.c: Patch from Michael Monreal : Move image data into data directory and use SVG where possible. Fixes bug #463115. * Makefile.am (CLEANFILES): * configure.in: * dia.keys.in: Use Automake to generate dia.keys rather than a hack. Part of fix of bug #463115. * lib/dia_image.c (dia_image_get_broken): Use stock image for broken image. Fixes bug #172304. 2007-10-27 Lars Clausen * app/interface.c (create_sheet_dropdown_menu): Follow-up on bug #442309: Since flowchart is the default start-up sheet now, put it in the always-there list. * shapes/Assorted/arrow-chevron.shape: * shapes/Assorted/arrow-down.shape: * shapes/Assorted/arrow-left-notched.shape: * shapes/Assorted/arrow-left-right.shape: * shapes/Assorted/arrow-left-right-up.shape: * shapes/Assorted/arrow-left.shape: * shapes/Assorted/arrow-pentagon.shape: * shapes/Assorted/arrow-quad.shape: * shapes/Assorted/arrow-right-notched.shape: * shapes/Assorted/arrow-right.shape: * shapes/Assorted/arrow-up-down-left.shape: * shapes/Assorted/arrow-up-down.shape: * shapes/Assorted/arrow-up.shape: * shapes/Assorted/circle-quarter.shape: * shapes/Assorted/circle.shape: * shapes/Assorted/cross-maltese.shape: * shapes/Assorted/cross-swiss.shape: * shapes/Assorted/diamond.shape: * shapes/Assorted/heart.shape: * shapes/Assorted/hexagon.shape: * shapes/Assorted/moon-quarter.shape: * shapes/Assorted/octagon.shape: * shapes/Assorted/parallelogram-horizontal.shape: * shapes/Assorted/parallelogram-vertical.shape: * shapes/Assorted/pentagon.shape: * shapes/Assorted/square.shape: * shapes/Assorted/star4curved.shape: * shapes/Assorted/star4.shape: * shapes/Assorted/star6.shape: * shapes/Assorted/star7.shape: * shapes/Assorted/star8curved.shape: * shapes/Assorted/star8.shape: * shapes/Assorted/star8sharp.shape: * shapes/Assorted/sun.shape: * shapes/Assorted/trapezoid.shape: * shapes/Assorted/triangle-isoceles.shape: Use foreground instead of #000000 for shapes. Fixes bug #336967. * data/toolbar-ui.xml: Added some more toolbar icons. No more should be added until we can turn them on and off in groups. * lib/diagramdata.[ch]: New function that finds objects that contain a given rectangle. * app/create_object.c (create_object_button_release): Don't parent an object until it's released, allowing arrows to be created out of parenting objects. Now only objects that end up being entirely contained in a parent get parented. * app/diagram.[ch]: New function that checks for parentability of an object-parent pair. 2007-10-27 Hans Breuer * app/diagram.c(diagram_load) : don't kill the default diagram on import failure. Fixes bug #490546 less memory leaks, thanks valgrind * lib/font.c : match pango_context_load_font() with g_object_unref() * objects/SISSI/sissi.c : ObjectSISSI::text was leaked * lib/diagdkrenderer.c(draw_text_line) : the PangoLayout was leaked when drawn 'highlighted'; use pango_layout_get_line_readonly() - still warnings 'possibly lost' * configure.in : missing pygtk is no longer fatal, SWIG detection more verbose * object/UML/class_dialog.c : removed unused variables 2007-10-27 Lars Clausen * shapes/Cisco/Makefile.am: Split long shape list. Fixes bug #125924. 2007-10-26 Lars Clausen * lib/font.c: Don't translate to bogus AvantGarde-Gothic font, and point to the *correct* PostScript definition. Fixes bug #477079. * objects/UML/class_dialog.c: Patch for bug #490356: Use stock items for UML class dialog. Patch from Felipe Reyes 2007-10-23 Hans Breuer * app/select.c : 'textedit_mode' undefined; * app/textedit_tool.c : 'object_add_updates_list' undefined; * lib/libdia.def : unresolved external symbol _text_delete_key_handler * objects/Database/table_dialog.c : like UML/class_dialog.c move Styles (color, fonts) to their own page 2007-10-22 Lars Clausen * app/textedit_tool.c: Proper deselecting and tool resetting when clicking on other objects or outside of objects. 2007-10-21 Lars Clausen * app/textedit.h: Proper #ifndefs and includes. * app/select.c: * app/commands.c: Skip out or handle alternately a number of menu items when in text edit mode. Undo of delete does not quite work yet. * lib/text.[ch]: Expose delete key handling to allow it to be used from delete menu handler. * app/commands.c: * app/menus.h (struct _UpdatableMenuItems): * app/menus.c (menus_initialize_updatable_items): * app/diagram.c (diagram_update_menu_sensitivity): Set menu sensitivities for text edit mode. Keyboard shortcuts are still caught by the menu items when insensitive, unfortunately. 2007-10-20 Steffen Macke * installer/win32/dia.nsi: Added sample files, new shapes 2007-10-20 Hans Breuer * configure.in lib/libdia.def objects/Database objects/Database/compound.c objects/Database/database.c objects/Database/database.h objects/Database/Makefile.am objects/Database/pixmaps/compound.xpm objects/Database/pixmaps/reference.xpm objects/Database/pixmaps/table.xpm objects/Database/reference.c objects/Database/table.c objects/Database/table_dialog.c objects/Makefile.am objects/makefile.msc po/POTFILES.in sheets/Database.sheet.in sheets/Makefile.am : new database table relation shapes by Petr Novotnik - bug #397688 - slightly modified to work with current SVN and build on windoze. Although derived from the UML class object the 'Table' object looks like a much better playground for a generic property list widget. * app/textedit.c(textedit_activate_first) : had an endless loop when none of the selected objects are text editable * app/properties.c : resets current_obj when the dialog is closed (Sameer D. Sahasrabuddhe, fixes bug #30430) * objects/Misc/tree.c : added object_apply_props stuff * app/properties.c lib/group.c lib/newgroup.c lib/objchange.h lib/object.h lib/propobject.c objects/AADL/aadlbox.c objects/AADL/aadlbus.c objects/AADL/aadldata.c objects/AADL/aadldevice.c objects/AADL/aadlmemory.c objects/AADL/aadlpackage.c objects/AADL/aadlprocess.c objects/AADL/aadlprocessor.c objects/AADL/aadlsubprogram.c objects/AADL/aadlsystem.c objects/AADL/aadlthread.c objects/AADL/aadlthreadgroup.c objects/chronogram/chronoline.c objects/chronogram/chronoref.c objects/custom/custom_object.c objects/EML/instantiation.c objects/EML/interaction-ortho.c objects/EML/interaction.c objects/EML/process.c objects/ER/attribute.c objects/ER/entity.c objects/ER/participation.c objects/ER/relationship.c objects/flowchart/box.c objects/flowchart/diamond.c objects/flowchart/ellipse.c objects/flowchart/parallelogram.c objects/FS/flow-ortho.c objects/FS/flow-poly.c objects/FS/flow.c objects/FS/function.c objects/GRAFCET/action.c objects/GRAFCET/condition.c objects/GRAFCET/step.c objects/GRAFCET/transition.c objects/GRAFCET/vector.c objects/GRAFCET/vergent.c objects/Istar/actor.c objects/Istar/goal.c objects/Istar/link.c objects/Istar/other.c objects/Jackson/domain.c objects/Jackson/phenomenon.c objects/Jackson/requirement.c objects/KAOS/goal.c objects/KAOS/metaandorrel.c objects/KAOS/metabinrel.c objects/KAOS/other.c objects/Misc/analog_clock.c objects/network/basestation.c objects/network/bus.c objects/network/radiocell.c objects/network/wanlink.c objects/SADT/annotation.c objects/SADT/arrow.c objects/SADT/box.c objects/SISSI/area.c objects/SISSI/faraday.c objects/SISSI/room.c objects/SISSI/sissi_object.c objects/SISSI/site.c objects/standard/arc.c objects/standard/bezier.c objects/standard/beziergon.c objects/standard/box.c objects/standard/ellipse.c objects/standard/image.c objects/standard/line.c objects/standard/polygon.c objects/standard/polyline.c objects/standard/textobj.c objects/standard/zigzagline.c objects/UML/activity.c objects/UML/actor.c objects/UML/association.c objects/UML/branch.c objects/UML/class.c objects/UML/classicon.c objects/UML/component.c objects/UML/component_feature.c objects/UML/constraint.c objects/UML/dependency.c objects/UML/fork.c objects/UML/generalization.c objects/UML/implements.c objects/UML/large_package.c objects/UML/lifeline.c objects/UML/message.c objects/UML/node.c objects/UML/note.c objects/UML/object.c objects/UML/realizes.c objects/UML/small_package.c objects/UML/state.c objects/UML/state_term.c objects/UML/transition.c objects/UML/usecase.c : finally there is proper group properties handling thanks to patches from Sameer D. Sahasrabuddhe. Almost fixes long-standing bug #60331. * objects/Misc/libmisc.c objects/Misc/tree.c objects/Misc/Makefile.am objects/Misc/pixmaps/tree.xpm shapes/Misc/expended-node.shape shapes/Misc/expensible-node.shape shapes/Misc/Makefile.am sheets/Misc.sheet.in : patch from Thomas Harding adding the shapes to simplify construction of explorer like trees, bug #428696 * shapes/Misc/expended-node.png shapes/Misc/expensible-node.png objects/Misc/pixmaps/tree.xpm : ... adapted to follow the default icons size and format, i.e. not adding SVG * objects/makefile.msc : build on win32 * app/interface.c(337) : warning C4700: local variable 'magnify' used without having been initialized 2007-10-19 Lars Clausen * shapes/Lights/Makefile.am: * shapes/Makefile.am: * configure.in: Patch from Elie Roux fixes makefiles for new shapes. So it's not just me who forgets those:) 2007-10-14 Hans Breuer * plug-ins/pgf/render_pgf.c : *reverted* put \\setlength{\\du}{15\\unitlength}\n into the if branch (again Gaëtan Leurent, bug #482173) 2007-10-15 Lars Clausen * app/interface.c (zoom_activate_callback): Set limits to zoom amount to avoid crashes. See bug #483384. 2007-10-14 Hans Breuer Next stab on dedicated text edit mode: * app/textedit_tool.[ch] app/tool.[ch] app/cursors.[ch] app/interface.c app/Makefile.am app/makefile.msc data/display-ui.xml data/integrated-ui.xml data/popup-ui.xml : text edit mode reflected in toolbox, it is too different from normal modification * app/diagram.c app/menu.c : make Cut, Copy, Paste, Delete and Duplicate menu entries insensitive when text is edited * app/pixmaps/textedit.png : an ugly icon * app/create_object.c app/disp_callbacks.c : deal with transitions from one tool to to the other * app/textedit.[ch](textedit_activate_object): tell if editing started 2007-10-13 Hans Breuer * lib/diarenderer.[ch] lib/textline.[ch] lib/libdia.def : instead of throwing away the alignment information in DiaRenderer::draw_text pass it through DiaRenderer::draw_text_line so it is still available for renderers just implementing DiaRenderer::draw_string * app/diapsft2renderer.c app/diapsrenderer.c lib/diagdkrenderer.c lib/dialibartrenderer.c plug-ins/metapost/render_metapost.c : adapted accordingly, should give same results as before * lib/diasvgrenderer.c : adapted and write text-anchor again * plug-ins/cairo/diacairo.c : make DiaCairoRenderer::draw_string work for alignment CENTER and RIGHT as well * plug-ins/pgf/render_pgf.c : put \\setlength{\\du}{15\\unitlength}\n into the if branch (Gaëtan Leurent, bug #482173) * plug-ins/svg/render_svg.c : group objects consisting of multiple SVG elements into * configure.in : check for PANGOCAIRO on Linux * samples/render-test.dia : more text alignments and no 'uncommon' fonts 2007-10-12 Hans Breuer * plug-ins/cairo/diacairo.c plug-ins/cairo/diacairo-interactive.c : use PangoCairo when available (HAVE_PANGOCAIRO_H) * plug-ins/makefile.msc : define HAVE_PANGOCAIRO_H for the cairo/win32 2007-10-07 Hans Breuer * configure.in plug-ins/wmf/Makefile.am plug-ins/wmf/wmf.cpp : with the help of libEMF dia now can write EMF on Linux(x86), too. * plug-ins/wmf/libemf-todo.txt : stuff not working from libEMF * plug-ins/python/paper-info.[ch] plug-ins/python/diamodule.c plug-ins/python/Makefile.am plug-ins/python/makefile.msc : wrap PaperInfo and ... * plug-ins/python/imgmap.py : (new) .. use it to scale the html image map like most bitmap exporters do 2007-10-06 Hans Breuer * plug-ins/cairo/Makefile.am : now tested on Linux ;) * plug-ins/cairo/diacairo.h plug-ins/cairo/Makefile.am : oops, forgot to add this 2007-10-06 Hans Breuer * plug-ins/cairo/diacairo-interactive.c : based on a patch from Nguyen Thai Ngoc Duy (bug #329860) there is an interactive renderer based on cairo now. After some work in the cairo renderer base class (pango_cairo, hairlines, ...) this should finally allow us to get rid of the libart depedency * plug-ins/cairo/diacairo.c app/display.c : HACK to select the DiaCairoInteractiveRenderer for antialiased rendering. If the points mentioned above are not fixed for the next release it should be disabled again in app/display.c(new_aa_renderer) * plug-ins/cairo/diacairo-print.c : almost empty, should become the place for GtkPrint/Cairo based printing. * plug-ins/cairo/Makefile.am plug-ins/makefile.msc : adapted * plug-ins/python/gtkcons.py : replace deprecated symbols, patch from Roland Stigge, fixes bug #483049 * lib/arrows.c : major restructuring - getting calculate and draw by function pointer. A lot of arrows are converted to the new style thus arrow_bbox() can give the correct bounding box. * objects/standard/arc.c : bug #340705 and bug #477569 objects/standard/bezier.c : bug #300055 objects/standard/line.c objects/standard/polyline.c objects/standard/zigzagline.c : not using *BBExtra to adjust the bounding box for arrows but instead a combination of arrow_bbox() and calculate_arrow_point() * lib/bounding_box.c : just a comment for now * samples/arrows.dia : more coverage * makefile.msc bindings/makefile.msc : integrated bindings in the build * configure.in acinclude.m4 Makefile.am bindings/Makefile.am : build bindings given --with-swig (and SWIG is found) * bindings/dia-diagramdata.h bindings/dia-extra.cpp bindings/dia-properties.cpp bindings/dia-diagramdata.cpp bindings/dia-properties.h bindings/dia-python-extra.h bindings/dia.swig : first time built with g++ * bindings/test.py : some adaptions to run on Linux, not complete yet but something works;) * lib/utils.[ch] : removed superfluous definition of snprintf() which did not work from C++ and isn't needed anymore. Use g_snprintf(). * lib/newgroup.c : remove the circular dependency to app, it does not work on win32 and even Linuix has problems when app is not used, e.g. by providing bindings only for libdia 2007-09-30 Lars Clausen * app/undo.[ch]: Slight work on moving objects between layers. * app/modify_tool.c: * app/disp_callbacks.c: * app/textedit.[ch]: First stab at separate edit mode: Introduce "textedit_mode" check and entering/exiting text edit mode. Make keyboard input understand textedit and switch in and out. Don't automatically enter text edit mode on selection, only on creation. 2007-09-25 Lars Clausen * dia.desktop.in.in (Exec): Patch from Chidambar 'ilLogict' Zinnoury : Add file as arg to exec for those file managers who don't hack their way around it. Bug #480079. 2007-09-23 Lars Clausen * objects/UML/class_dialog.c: Make UML properties dialogs use non-radio option menus. Fixes bug #468203. * objects/UML/class.c (umlclass_update_data): Patch from : Don't add attributes size to connection point placement if attributes aren't visible. Fixes bug #470594. * lib/font.c: (dia_font_get_sizes): Fixed lack of const. (dia_font_get_psfontname): Fixed postscript font name getter to comply with postscript standard. * app/diapsrenderer.c (dump_fonts): Use NewCenturySchlbk for NewCenturySchoolbook, following Adobe standards. Also for some reason AvantGarde-Gothic is the "plain" name of the AvantGarde-Book series. Stupid Adobe. Fixes bug #477079. * app/preferences.c: * app/diaunitspinner.[ch]: * lib/prop_geomtypes.c: Font & length unit spinners now get the right settings from prefs on startup. Fixes bug #479244. Also a bit of cleanup. 2007-09-22 Hans Breuer * lib/arrow.[hc] : refactoring to more information hiding: type menudesc renamed to ArrowDesc and moved arrow_types to arrow.c. It will probably contain some additional information to calculate arrow bounding boxes. * lib/attributes.c lib/diaarrowchooser.c lib/widgets.c plug-ins/xfig/xfig-export.c : now only using accessors * lib/autoroute.h lib/diagramdata.h lib/diavar.h lib/font.h : minor cleanup for DIAVAR: removed unneeded includes, move render_boundig_boxes to diavar.h to make it useable for arrow.c * lib/libdia.def : adapted to the above * lib/arrow.[hc] : declare and implement arrow_bbox() taking the calculated start-point of arrows. The real size of arrows is only known in lib/arrow.c so finally all the *BBoxExtras stuff concerned with arrows needs to vanish. The issue is further complicated by gap and other arrow posistion adjustmens; see bug #475168. * objects/standard/arc.c : use arrow_bbox() and calculate_arrow_point() for bounding box calculation. Get rid LineBBExtras usage for that. (arc_update_handles) always intialize the middle_handle.pos, not only when there is enough distance. * samples/arrows.dia : updated for broader coverage * app/interface.c : get rid of const for non-const strings, no more interface.c(477) : 'function' : different 'const' qualifiers interface.c(477) : 'g_free' : pointer mismatch for actual parameter 1 2007-09-22 Lars Clausen * app/commands.c: * app/interface.c: * app/interface.h: * app/menus.c: Patch from Patrick Hallinan : Provide a proper zoom-box in the integrated UI. This implementation looks better than the old one, and should be used in the non-integrated version as well. 2007-09-21 Hans Breuer * plug-ins/python/python-startup.py : allow to override system python plug-ins with users version. Patch from Tom Parker, fixes bug #478554 2007-09-16 Hans Breuer * samples/arrows.dia : show some arrows (and their bounding box issues) * objects/custom/custom/custom_object.c : loading samples/all_objects.dia produced a g_warning() "No attribute '%s' (%p) or no data(%p) in this attribute". Silenced it by marking all those "ext_attribute" optional. * app/preferences.c : move "Compressed saved files" to "Diagram defaults", the setting already beahved like the other defaults. Fixes bug #439894. * app/diagram.c : finally respect diagram defaults again, probably broken with 0.95. Fixes bug #477451 2007-09-15 Hans Breuer * plug-ins/cairo/diacairo.c : don't position the image twice, cairo_set_source_surface() does get 0,0 offset. Fixes bug #470926 2007-09-13 Lars Clausen * objects/UML/class.c: Patch from : Further adjustment of UML class connection points, this time adjusted for wrapping. Fixes bug #470598. 2007-08-27 Marc-Andre Lureau * configure.in: * po/LINGUAS: Use po/LINGUAS. Fixes bug #470797 2007-09-12 Lars Clausen * objects/UML/lifeline.c: Patch from Filippo Bergamasco : Improved behaviour of lifeline object, including being able to connect multiple. * lib/diasvgrenderer.c (draw_text_line): Use "textLength" attribute instead of unknown "length" attribute. Fixes bug #474882. * objects/SISSI/sissi_dialog.c (properties_others_create_page): Libel changed to label. Fixes bug #471506. 2007-09-09 Hans Breuer * object/UML/class.c : the template box was not considered in the bounding box, part of bug #475173 * object/UML/(activity|branch|state|state_term|usecase).c : ElementBBExtras, should fix bug #475173 * lib/prop_text.c : GtkTextView has no "changed" signal, connect to "insert-at-cursor" although it probably does not catch every change * lib/dia_svg.c(dia_svg_parse_path) plug-ins/svg-import.c : initialize BezPoint to 0/scale all to avoid uninitialized values in all BezPoint, even the ones which don't use all control points * samples/Self/dia-core.dia : adapted to font size changes from 0.96 * app/diagram.c(diagram_update_for_filename) : don't add every filename change to the recent file menu, only loaded or saved files belong there. Fixes bug #474941 * app/filedlg.c : add to recent file menu also when saving but not on export * app/recent_file.[ch] : cleanup, updated comments 2007-09-08 Hans Breuer * plug-ins/python/doxrev.py : moved the import of xml.parsers.expat to Parse() so it is not called during start-up. Fixes the start-up crash without understanding what is really causing it, bug #457828 * plug-ins/python/codegen.py : reset the internal state in begin_render(). Otherwise the renderer would remember previous exports. Fixes bug #436311 * lib/diasvgrenderer.[ch] plug-ins/shape/shape-export.c plug-ins/svg/render_svg.c : based on analysis and patch by Dov Grobgeld the values written to SVGs are now scaled up, because many SVG interpreters don't cope very well with small values. The overall size of the image is kept by writing with and height in cm but the viewBox scaled like the values in the file. For the Shape export the scale value is kept at 1.0 to avoid breaking Dia's Shape/SVG consumption. Fixes bug #316590 * lib/dia_svg.[ch](dia_svg_parse_style) : allow to pass in user_scale * plug-ins/svg/svg-import.c : implement some unit awareness and use it to scale the input to Dia's internal cm. Adapt the user_scale with the viewBox as explained above. This not only gives almost correct round-trip with Dia's own SVG writing, but also works better for the general case. * objects/custom/shape_info.c : adapt to API change 2007-09-01 Hans Breuer * MAINTAINERS : http://blogs.gnome.org/ovitters/2007/08/31/ enforcing-proper-trunkmaintainers-files-in-svn/ 2007-08-26 Lars Clausen * objects/UML/class.c: Patch from fixes semi-random vertical alignment in UML attributes and operations, making them consistent at least. Fixes bug #465623. 2007-08-19 Hans Breuer * objects/UML/class_dialog.c : second step in shrinking the dialog, reorganization of the operations page make the dialog wider than tall (now 634x559 with my window manager/font settings). Closes bug #445698 2007-08-16 Lars Clausen * doc/en/authors.xml: * doc/fr/authors.xml: * doc/pl/authors.sgml: * doc/eu/authors.xml: * doc/pl/authors.xml: Updated links to Dia page and GDP. 2007-08-15 Lars Clausen * dia.desktop.in.in (Categories): Patch from Roland Stigge removes deprecated category, fixes bug #466997. 2007-08-11 Steffen Macke * shapes/ChemEng/prv.shape: * shapes/ChemEng/prv.png: * sheets/ChemEng.sheet.in: Added Pressure Relief shape; fixes bug #439842 2007-08-10 Lars Clausen * app/diagram.c (diagram_load_into): Translate filename of non-Dia files opened to be a Dia file. Also notify users (once) of this translation. Fixes bug #440093. * po/POTFILES.in: Patch from Elie Roux (elie.roux@enst-bretagne.fr) adds two missing POTFILES. * app/app_procs.c (app_exit): Remove kludge printf from exit. Fixes bug #442044. * installer/rpm/dia.spec.fedora-core-6: Spec file for fedora core 6, from John Pye (john@curioussymbols.com). The main Dia maintainers will probably not maintain this, but patches to update to more current versions are welcome. * app/object_ops.c (object_list_align_v): Symmetry between vert and horiz alignment functions. Probably fixes bug #442054. * app/interface.c (create_sheets): Use a slightly more useful sheet as default selection. Fixes bug #442309. * sheets/Lights.sheet.in: Patch from Elie Roux (elie.roux@enst-bretagne.fr) fixes some wrong shape names. * app/menus.c (menus_clear_recent): Don't assert non-critical things, just put appropriate ifs around them. * app/create_object.c (create_object_button_release): Update menus after creating an object. 2007-08-09 Steffen Macke * installer/win32/dia.nsi: Added Lights shapes and sheet 2007-08-09 Lars Clausen * doc/fr/graphics/*: Updated with french versions where needed. Last fix from Thomas Harding , closing bug #427552. * lib/element.h (ELEMENT_COMMON_PROPERTIES): Use PROP_FLAG_NO_DEFAULTS on element widths -- gives strange caching behaviour for shapes. * objects/ER/entity.c: Add PROP_FLAG_NO_DEFAULTS to make possible to set "weak" attribute from intdata. * shapes/Lights/*: Changed hardcoded B&W to foreground/background. * doc/en/usage-customization.xml: Fixed wrong image filename. * doc/fr/hardcopies.makefile: Clean-up of some spaces. * doc/en/usage-objects-basic.xml: Added some more detail on how to use the text object. Fixes bug #455400. * objects/FS/flow.c: Added undo support, fixing bug #456419. * objects/SISSI/sissi_object.c (sissi_object_create): Fixed formatting and took things that should always be run outside of the if. Fixes bug #463700. * objects/SISSI/sissi.h: Removed double newlines and fixed some formatting. * shapes/Lights/*: * sheets/Lights.sheet.in: * sheets/Makefile.am (sheet_in_files): New shape set for lighting arrangements from Elie Roux (elie.roux@enst-bretagne.fr). Needs a little fixing of colors, but otherwise fine. * doc/fr/Makefile.am (EXTRA_DIST): Include the PNG files in distribution. * doc/fr/*: * configure.in: * doc/Makefile.am (SUBDIRS): Added french manual. Patch by Thomas Harding . Doesn't quite close bug #427552, as french graphics should be generated. * xmldocs.make (docdir): Changed non-Gnome help path to follow a) the dir we actually use, and b) standard usage. * dia_gnome_icon_small.png: Less fuzzy 32x32 icon. Fixes bug #463115. * objects/FS/flow-ortho.c: text_alignment is an enum, not a real. Fixes bug #462563. 2007-08-07 Steffen Macke * lib/font.c: get_string_offsets() Don't crash when line length is 0 fixes bug #450040 2007-08-06 Lars Clausen * app/exit_dialog.c: * app/app_procs.c: * app/interface.c: More patch from Patrick, cleaning up memory usage and using more standard functionality. * app/interface.c: Patch from Patrick Hallinan fixes double-close issue with integrated UI. 2007-08-05 Hans Breuer * objects/UML/class_dialog.c : first step in shrinking the dialog, moved color and font settings to it's own page 'Style', bug #445698 It only shrinks from 577x744 to 577x692, depends on font size. Next step would be reorganize Operations page. * objects/Misc/analog_clock.c : remove stray PROP_STD_NOTEBOOK_END, fixing bug #444749 2007-07-29 Lars Clausen * lib/Makefile.am: Added newgroup.h * lib/newgroup.c: * lib/newgroup.h: Definitions for the new group system. * app/diagram.c (diagram_group_selected): Work on creating/removing new style groups (ifdeffed, not finished). * objects/AADL/aadlbox.c: Fix for bug #458373: Correctly strdup. 2007-07-28 Lars Clausen * app/load_save.c (read_objects): Experimental use of new group system in load (ifdeffed). 2007-07-26 Steffen Macke * objects/makefile.msc: Correct case to build SISSI dll 2007-07-25 Steffen Macke * lib/plug-ins.c: Patch from Rémi Cardona that removes the run-time dependency on libtool files (*.la) for plug-ins 2007-07-24 Lars Clausen * lib/widgets.c * lib/prop_attr.c * lib/widgets.h * lib/prop_inttypes.c * lib/prop_text.c * lib/prop_geomtypes.c: Patch from Sameer Sahasrabuddhe : simplified some widgets in the property dialog and all of them now have an event handler to track PXP_NOTSET. Yet another patch from bug #60331. * lib/object.h (DIA_OBJECT_EXPAND_WITH_CHILDREN): New parent-related flag, not in use yet. * app/disp_callbacks.c: Document need for setting active diagram. 2007-07-23 Hans Breuer * lib/paper.c : instead of special casing for the thrid compiler just removed the superfluous inline on the get_paper_* functions Fixes bug #447737. 2007-07-22 Steffen Macke * app/preferences.c: * objects/SISSI/sissi.h: * objects/SISSI/sissi_dialog.c: * sheets/SISSI.sheet.in: Fixed typos mentioned in bug report #45238; Thanks to Clytie Siddall * app/display.c: * app/makefile.msc: * app/app_procs.c: * app/exit_dialog.c: * app/exit_dialog.h: * app/Makefile.am: * app/interface.c: * app/interface.h: * app/makefile.mingw: * app/disp_callbacks.c: Patch from Patrick Hallinan , fixes the problem with the active diagram during resize; adds an asterisk to the tab when diagram has changed; adds a new dialog to save unsaved files when exiting * app/authors.h: Added Patrick Hallinan * app/commands.c: Bumped copyright year to 2007 2007-07-21 Hans Breuer [maket it compile with msvc/win32] * lib/bounding_box.c : fix c99ism to * objects/SISSI/*.c : dont include unistd.h unconditionally [warningectomy] * app/interface.c : cast GtkWindow to GtkWidget * lib/object.[hc] : const correctness * objects/FS/flow.c objects/standard/line.c : connection_adjust_for_autogap take a Connection*, not the specialization * lib/diagdkrenderer.c : implement draw_fill_rounded_rect to avoid seams 2007-07-19 Steffen Macke * app/command.c: Updated website link to point to live.gnome.org/Dia; fixes bug #456637 2007-07-17 Steffen Macke * app/commands.c: * app/sheets_dialog_callbacks.c: * app/layer_dialog.c: * app/load_save.c: * app/interface.c: * app/interface.h * app/diagram_tree_menu.c: * app/menus.c: * objects/SISSI/sissi.h * objects/SISSI/site.c: * objects/SISSI/faraday.c: * objects/SISSI/area.c: * objects/SISSI/sissi_dialog.c: * objects/SISSI/room.c: * objects/SISSI/sissi_object.c: * objects/SISSI/sissi.c: * objects/custom/custom_object.c: * objects/custom/shape_info.c: * lib/sheet.c: * lib/dia_xml.c: * lib/debug.c: * lib/beziershape.c: * lib/intl.c: * lib/dialibartrenderer.c: * lib/element.c: * lib/diarenderer.c: * lib/object_defaults.c: * lib/diasvgrenderer.c: * lib/newgroup.c: * lib/font.c: * lib/diagramdata.c: * lib/ps-utf8.c: * lib/diagdkrenderer.c: * lib/dia_svg.c: * lib/textline.c: * lib/plug-ins.c: * lib/persistence.c: * lib/persistence.h * lib/boundingbox.c: * plug-ins/dxf/dxf-import.c: * plug-ins/metapost/render_metapost.c: * plug-ins/xfig/xfig-export.c: * plug-ins/svg/render_svg.c: * plug-ins/svg/svg-import.c: * plug-ins/shape/shape-export.c: * plug-ins/pgf/render_pgf.c: patch from Elie Roux that fixes many compiler warnings 2007-07-10 Steffen Macke * configure.in: ALL_LINGUAS are in one line again; Thanks to Elie Roux for noticing the problem 2007-07-09 Chao-Hsiung Liao * configure.in: Add "zh_HK" to ALL_LINGUAS. 2007-07-06 Steffen Macke * app/sheets_dialog_callbacks.c: Additional warning if the user tries to load a diagram as a shape. Fixes bug #97903 * doc/eu/dia.1: Remove epsi reference. Fixes bug #336972 2007-06-29 Lars Clausen * app/interface.c: Patch from Patrick Hallinan : Fix lack of initial update of new diagram. * app/load_save.c: Patch from Hans de Goede : Avoid having to remove -c89 option by including proper header. Bug #436343. 2007-06-25 Steffen Macke * installer/win32/dia.nsi: Fix freetype installation problem 2007-06-24 Steffen Macke * installer/win32/dia.nsi: Check for python22.dll before enabling the Python plug-in component; Use GTK *.mo files from share instead of lib (gladewin32 compatibility; use freetype6.dll instead of libfreetype-6.dll (agreed common dll name for win32) * lib/libdia.def: exporting text_get_ascent, required by custom object, exporting dia_font_set_slant, dia_font_set_weight, required by vdx plug-in 2007-06-20 Lars Clausen * app/disp_callbacks.c: Patch from Patrick Hallinan : Fix right/middle button functionality. 2007-06-13 Steffen Macke * installer/win32/dia.nsi: Workaround previous theme bug; properly use Windows installer theme * doc/en/dia.dbk: Applied patch from Peter Breitenlohner < peb@mppmu.mpg.de> typo in manpage; fixes bug #340992 2007-06-10 Steffen Macke * sheets/SISSI.sheet.in: Translating texts from French to English * objects/sissi/site.c: * objects/sissi/area.c: * objects/sissi/room.c: * objects/sissi/sissi_object.c: Translated confidentiality from French to English; partial fix for bug #355995 * installer/win32/dia.nsi: Added SISSI files, ui files * app/app_procs.c: #include commands.h * app/commands.c: #include interface.h * app/interface.c: Declare variables first to make MSVC happy 2007-06-07 Lars Clausen * app/commands.c * app/display.c * app/commands.h * app/app_procs.c * app/interface.c * app/interface.h * app/disp_callbacks.c * app/menus.c * app/menus.h * lib/diainteractiverenderer.c * data/integrated-ui.xml: Patch from Patrick Hallinan : More work on integrated UI: Toolbar visibility, right-mouse menu. 2007-06-05 Jakub Friedl * app/load_save.c: Corrected error messages (proper English) 2007-06-02 Lars Clausen * lib/Makefile.am (libdia_la_SOURCES): * app/Makefile.am (dia_core_files): * lib/newgroup.c: Moved here from app. * app/newgroup.c (newgroup_update_data): Correctly update selection of children when closing group, fixes crash. * objects/flowchart/parallelogram.c * objects/flowchart/box.c * objects/flowchart/diamond.c * objects/flowchart/ellipse.c * objects/network/radiocell.c * objects/SISSI/sissi.c * objects/Misc/analog_clock.c * objects/standard/zigzagline.c * objects/standard/arc.c * objects/standard/bezier.c * objects/standard/image.c * objects/standard/beziergon.c * objects/standard/polygon.c * objects/standard/line.c * objects/standard/box.c * objects/standard/polyline.c * objects/standard/ellipse.c * objects/ER/relationship.c * objects/ER/attribute.c * objects/ER/entity.c * objects/custom/custom_object.c * plug-ins/dxf/dxf-import.c * plug-ins/xfig/xfig-import.c * plug-ins/svg/svg-import.c * plug-ins/vdx/vdx-import.c * lib/properties.h: Patch from Sameer Sahasrabuddhe : Fix names and types of std line width. * app/interface.c * lib/persistence.c: Firmly define what happens with dupping and freeing persistence strings. Fixes crash with integrated UI. * app/commands.c * app/display.c * app/display.h * app/app_procs.c * app/dia_embedd.c * app/interface.c * app/menus.c * app/menus.h * data/toolbar-ui.xml * lib/diainteractiverenderer.c: Patch from Patrick Hallinan : More work on integrated UI. Post-patch hid rulers_are_showing field. * data/toolbar-ui.xml: Renamed from data/toolbar.xml * data/Makefile.am: Added items for integrated UI. 2007-05-20 Lars Clausen * app/diapsrenderer.c (draw_text_line): Use non-i18n output for float in postscript. Fixes eps latin-1 output, bug #439369. * app/interface.c: Update tooltips to follow new shortcuts. * data/display-ui.xml * data/integrated-ui.xml * app/menus.c: Move "Best Fit" up under zoom options where it belongs. Response to bug #439838. * app/export_png.c: Make clearer distinction between pixbuf and libart PNG. * app/preferences.c * app/display.c * app/display.h * app/app_procs.c * app/filedlg.c * app/interface.c * app/interface.h * app/diagram.c * app/menus.c * app/menus.h * data/integrated-ui.xml * data/toolbar.xml: Patch from Patrick Hallinan : More work on integrated UI: +Add popup message "Settings change will take effect after Dia is restarted" to the integrated UI option. +Add snap tool items to the toolbar. +Default the file filter for the Open File Dialog to "Supported Formats" +Force the new diagram to be shown!!! +Make the toolbar actually do something +Make the diagram tree show a diagram's tab (when it should). +Created Missing application menus. +Make the name of second diagram created be numbered 2 instead of 1. +Make diagram close button actually close the diagram. +Add shortcut cntl-w for closing the current tab (free when menu's were added). 2007-05-15 Steffen Macke * config.h.win32: Version number is now 0.96+svn * lib/makefile.msc: * lib/makefile.mingw: Include prefs.c * lib/prefs.c: #include * lib/libdia.def: Added several preferences-related functions * app/interface.h: Added prototype for create_integrated_ui() 2007-05-05 Lars Clausen * app/preferences.c: * app/preferences.h: * app/display.h: * app/app_procs.c: * app/main.c: * app/interface.c: Patch from Patrick Hallinan : Start of integrated UI. 2007-05-04 Lars Clausen * lib/properties.h: * objects/Jackson/requirement.c: * objects/Jackson/domain.c: * objects/flowchart/parallelogram.c: * objects/flowchart/box.c: * objects/flowchart/diamond.c: * objects/flowchart/ellipse.c: * objects/network/radiocell.c: * objects/network/basestation.c: * objects/SADT/box.c: * objects/SADT/annotation.c: * objects/UML/component.c: * objects/UML/note.c: * objects/UML/component_feature.c: * objects/UML/usecase.c: * objects/UML/activity.c: * objects/UML/actor.c: * objects/UML/classicon.c: * objects/UML/state.c: * objects/UML/small_package.c: * objects/UML/node.c: * objects/standard/textobj.c: * objects/AADL/aadlbox.c: * objects/ER/relationship.c: * objects/ER/attribute.c: * objects/ER/entity.c: * objects/FS/flow-ortho.c: * objects/FS/function.c: * objects/FS/flow.c: * objects/FS/flow-poly.c: * objects/custom/custom_object.c: * objects/GRAFCET/action.c: * lib/properties.h: Patch from Sameer Sahasrabuddhe : Fix names and types of std text props. 2007-04-25 Christophe Merlet * configure.in: Added "oc" (Occitan) to ALL_LINGUAS. 2007-04-25 Steffen Macke * installer/win32/dia.nsi: gtkrc is a file, not a folder; fixes bug #433252 2007-04-19 Lars Clausen * lib/prop_attr.c: Use new signals in props. Patch from Sameer Sahasrabuddhe for bug #60331. * lib/widgets.c (dia_font_selector_class_init): Remove undefined default handlers, fix leak of font name, define and use new signal. Patch from Sameer Sahasrabuddhe for bug #60331. * app/interface.c (sheet_option_menu_changed): Use new signal, fix leak of sheet name. Patch from Sameer Sahasrabuddhe for bug #60331. 2007-04-16 Lars Clausen * doc/en/usage-layers.xml: Use normal quotation marks. Fixes bug #404535. * plug-ins/svg/render_svg.c (new_svg_renderer): Add a namespace for SVG output, patch by Thomas Harding . Fixes bug #424530. * lib/diasvgrenderer.c (draw_text_line): Don't supply units for text size when nobody else does. Doesn't fix FireFox size strangeness, but at least makes the SVG a little more consistent. * plug-ins/pstricks/render_pstricks.c: Patch of extra line endings and inverted y-coords from Dan Gildea . * plug-ins/dxf/dxf-import.c (read_entity_polyline_dxf): Make closed lines be polygons instead of polylines. Fixes bug #421250. * lib/persistence.[ch] (persistence_boolean_is_registered): Function to check if a boolean value is registered at all. Support functions for this check in general. * lib/prop_geomtypes.c (realprop_get_widget): Fix wrong parameter to gtk_spin_button_set_numeric. From a bug whose number I forget. (lengthprop_get_widget, fontsizeprop_get_widget): Use prefs-set units. * lib/propdialogs.c: * lib/group.c (group_describe_props): Set properties properly for groups. By Sameer Sahasrabuddhe , work on bug #60331. * lib/widgets.[ch]: * app/interface.c (sheet_option_menu_changed): Use signals for dynamic menu changes. By Sameer Sahasrabuddhe , work on bug #60331. * app/undo.c: * app/commands.c: New commands for moving objects between layers. Not entirely working yet. * app/diapagelayout.c (dia_page_layout_init): * app/preferences.c: Added new prefs length_unit and fontsize_unit and used these in margins, properties. * app/preferences.c: * lib/prefs.[ch]: Core preferences data structure moved into lib. * app/app_procs.c: * lib/message.[ch]: Added three intermediate-level message functions to distinguish between notices, warnings and errors. Errors are always shown, warnings are shown unless the user takes action, notices are shown once unless the user takes action. * objects/ER/relationship.c: * objects/ER/entity.c: * objects/custom/custom_object.c: * objects/ER/attribute.c: * objects/chronogram/chronoref.c: * objects/AADL/aadlbox.c: * objects/chronogram/chronoline.c: * lib/properties.h (PROP_STD_TEXT_HEIGHT_OPTIONS): Set a number of properties to be length/fontsize when applicable. * widgets.c (get_units_name_list): * widgets.h: New function to give names of units for prefs. Sort units list alphabetically. 2007-04-15 Steffen Macke * installer/win32/locale/english.nsh: * installer/win32/locale/german.nsh: * installer/win32/locale/french.nsh: * installer/win32/dia.nsi: Optional build of installer including GTK+, updated website link * configure.in: Create Makefiles for SISSI folders 2007-04-14 Steffen Macke * installer/win32/dia.nsi: Fixed freetype dll problem * objects/Makefile.am: * objects/SISSI/Makefile.am: * objects/SISSI/area.[ch]: * objects/SISSI/classification.h: * objects/SISSI/faraday.[ch]: * objects/SISSI/Makefile.am: * objects/SISSI/menace.[ch]: * objects/SISSI/methode_attack.h: * objects/SISSI/room.[ch]: * objects/SISSI/sissi.[ch]: * objects/SISSI/sissi_dialog.[ch]: * objects/SISSI/sissi_object.[ch]: * objects/SISSI/site.[ch]: * objects/SISSI/pixmaps/broken.xpm: * objects/SISSI/pixmaps/faraday.png: * objects/SISSI/pixmaps/sissi_object.xpm: * sheets/Makefile.am: * sheets/SISSI.sheet.in: * sheets/SISSI/(1-76).xml: * sheets/SISSI/aircooler.png: * sheets/SISSI/alarm_center.png: * sheets/SISSI/analyse.xpm: * sheets/SISSI/barriere.png: * sheets/SISSI/broken.xpm: * sheets/SISSI/broken-chain.xpm: * sheets/SISSI/camera_interphone.png: * sheets/SISSI/capteur_brise_glace.png: * sheets/SISSI/capteur_faisceau.png: * sheets/SISSI/cellular_phone.png: * sheets/SISSI/cloud.png: * sheets/SISSI/condensateur.png: * sheets/SISSI/detecteur_alimentation.png: * sheets/SISSI/detecteur_courant.png: * sheets/SISSI/detecteur_enthalpie.png: * sheets/SISSI/detecteur_fumee.png: * sheets/SISSI/detecteur_lumiere.png: * sheets/SISSI/detecteur_mouvement.png: * sheets/SISSI/detecteur_mouvement_video.png: * sheets/SISSI/detecteur_mouvement_video.png: * sheets/SISSI/detecteur_niveau.png: * sheets/SISSI/detecteur_pression.png: * sheets/SISSI/detecteur_qualite_air.png: * sheets/SISSI/detecteur_tension.png: * sheets/SISSI/detecteur_vehicule.png: * sheets/SISSI/detecteur_vibration.png: * sheets/SISSI/digi_code.png: * sheets/SISSI/diskette.png: * sheets/SISSI/extincteur.png: * sheets/SISSI/extracteur_humidite.png: * sheets/SISSI/faraday.png: * sheets/SISSI/file.png: * sheets/SISSI/file_cabinet.png: * sheets/SISSI/filtre_air.png: * sheets/SISSI/hub.png: * sheets/SISSI/ibm_mini.png: * sheets/SISSI/info.xpm: * sheets/SISSI/information.png: * sheets/SISSI/key.png: * sheets/SISSI/laptop.png: * sheets/SISSI/lecteur_badge.png: * sheets/SISSI/lecteur_badge_clavier.png: * sheets/SISSI/lecteur_biometrique.png: * sheets/SISSI/logiciel.xpm: * sheets/SISSI/Makefile.am: * sheets/SISSI/menace.xpm: * sheets/SISSI/meuble.xpm: * sheets/SISSI/modem.png: * sheets/SISSI/onduleur.png: * sheets/SISSI/ordinateur_portable.gif: * sheets/SISSI/pc.png: * sheets/SISSI/pda.png: * sheets/SISSI/personne.xpm: * sheets/SISSI/phone.png: * sheets/SISSI/pompe.png: * sheets/SISSI/pompe_rotative.png: * sheets/SISSI/porte_tambour.png: * sheets/SISSI/relational_database.png: * sheets/SISSI/router.png: * sheets/SISSI/safe.png: * sheets/SISSI/sauvegarde.xpm: * sheets/SISSI/si.xpm: * sheets/SISSI/sissi_object.xpm: * sheets/SISSI/storage_array.png: * sheets/SISSI/support.xpm: * sheets/SISSI/tourniquet.png: * sheets/SISSI/unbroken-chain.xpm: * sheets/SISSI/ventilateur.png: * sheets/SISSI/ventilateur_axial.png: * sheets/SISSI/ventilateur_centrifuge.png: New objects to draw systems security diagrams. Closes bug #355995. Provided by Luc Cessieux 2007-04-13 Steffen Macke * installer/win32/dia.nsi: Updates for 0.96.1-1 installer. Fixes problems with gladewin32 build and gimp-win GTK+ runtime 2007-04-12 Steffen Macke * lib/makefile.msc: Use $(GLIB_GEN_MARSHAL), to be defined in $(TOP)/glib/build/win32/make.msc, allows flexible use of different GTK+ development environments 2007-04-04 Pema Geyleg * configure.in: Added 'dz' to ALL_LINGUAS 2007-03-26 Hans Breuer * bindings/* : dia/lib bindings with the help of SWIG, for details see: http://mail.gnome.org/archives/dia-list/2007-March/msg00092.html 2007-03-25 Lars Clausen * NEWS: * RELEASE-PROCESS: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: * configure.in: Release 0.96 hits the streets. 2007-03-18 Hans Breuer * app/load_save.c : glib/gstdio.h was protected by #if GLIB_CHECK_VERSION(2,8,0) but it is supposed to be available since glib-2-6. We rely on that anyway. 2007-03-18 Hans Breuer * app/app_procs.c : avoid stumbling over libxml2 preprocessor tricks for LIBXML_THREAD_ENABLED (not at all platform specific) 2007-03-18 Lars Clausen * NEWS: * RELEASE-PROCESS: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: * configure.in: Pre9 hot on the heels of pre8. * app/app_procs.c plug-ins/wmf/wmf.cpp : portability fixes 2007-03-17 Hans Breuer * app/app_procs.c app/autosave.c app/commands.c app/diaconv.c app/export_png.c app/filedlg.c app/load_save.c app/paginate_psprint.c app/preferences.c app/render_eps.c app/sheets_dialog.c app/sheets_dialog_callbacks.c lib/dia_dirs.c lib/dia_xml.c lib/diagdkrenderer.c plug-ins/cgm/cgm.c plug-ins/dxf/dxf-export.c plug-ins/dxf/dxf-import.c plug-ins/hpgl/hpgl.c plug-ins/metapost/render_metapost.c plug-ins/pgf/render_pgf.c plug-ins/pstricks/render_pstricks.c plug-ins/python/pydia-render.c plug-ins/shape/shape-export.c plug-ins/svg/render_svg.c plug-ins/vdx/vdx-export.c plug-ins/vdx/vdx-import.c plug-ins/wmf/wmf.cpp plug-ins/wpg/wpg.c plug-ins/xfig/xfig-export.c plug-ins/xfig/xfig-import.c plug-ins/xslt/xslt.c : use to match GLib's filename encoding to the io functions used, that is: g_open, g_fopen, g_stat, g_unlink, g_mkdir, g_rename (, g_access, g_lstat, g_remove, g_freopen, g_chdir, g_rmdir). Also replace gzopen() with gzdopen(g_open(), ...) to properly handle unicode filenames; finally use g_mkstemp(). Fixes bug #131210 and bug #397159. To make this fully work on win32 a recent enough version of libxml2 is required - tested with 2.6.27 - but anything from 2.6.24 should do. * plug-ins/cairo/diacairo.c : special handling for cairo which currently only supports filenames in the C runtime locale. 2007-03-17 Hans Breuer * plug-ins/python/aobjects.py : if created a diagram, display it ... * app/display.c : ... and don't crash with display update before we had the chance to reate a renderer. * app/filedlg.c : plugged some leaks and made the filter sensitive extension update work, by relying less on what we get back from gtk+ Fixes bug #403195. [some playing with valgrind : memory leaks] * lib/text.c(text_set_line_text) : removed superfluous g_strdup() * app/interface.c : gtk_accelerator_get_label() and g_strconcat() return newly allocated strings and gtk_tooltips_set_tip() does not free them [jump or move depends on uninitialised value(s)] * objects/network/radiocell.c : dont call polyshape_update_data() without initialized points * plug-ins/python/aobjects.py : somehow an extra 'd' got commited :) * plug-ins/python/aobjects.py plug-ins/python/Makefile.am : Self Documenation Part III and stress test, creates all Dia Objects * objects/FS/flow-ortho.c objects/FS/flow.c : removed partial left over of 'static DiaFont*' which caused a crash on creation * objects/UML/umlattribute.c objects/UML/umlformalparameter.c objects/UML/umloperation.c : don't crash on name being NULL * objects/custom/custom_object.c : call *_update_data in *_copy Fixes the disappearance of object drawing after cut&paste (bug #416414, Stein Somers) * plug-ins/python/pydia-font.c : cmpfunc is supposed to return out of (-1, 0, 1) * lib/utils.h lib/message.h : added C++ guards 2007-03-17 Steffen Macke * installer/win32/locale/slovak.nsh: Use Codepage 1250, fixed errors 2007-03-16 Lars Clausen * NEWS: * RELEASE-PROCESS: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: * configure.in: Pre8? Really? Furrfu! * doc/en/Makefile.am (dia.1): Allow net access for getting the XSLT. Let's see if it causes more problems than it solves. Fixes bug #391545. * app/textedit.c (textedit_remove_focus): Do not free that which has not been allocated (focus!). Fixes bug #418188. * plug-ins/pgf/render_pgf.c (draw_*_with_arrows): Don't assume that the arrow pointers are non-null. Fixes bug #413309 * plug-ins/vdx/vdx-import.c: Patch to fix crash bug #417956. 2007-03-14 Steffen Macke * installer/win32/locale/slovak.nsh: (added) * installer/win32/locale/Makefile.am: * installer/win32/dia.nsi: Added Slovak translations for installer. Thanks to helix84 2007-03-11 Lars Clausen * NEWS: * RELEASE-PROCESS: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: * configure.in: Pre7 * lib/prop_geomtypes.c (lengthprop_get_widget): Default to cm in display to be similar to other reals. * lib/widgets.c (dia_unit_spinner_value_changed): Leave space before unit. * Makefile.am (desktopdir): Put .desktop file in right dir. Fixes bug #415767. * app/diagram.c (diagram_group_selected): Don't try to group no objects. Fixes bug #410483, though the overall problem of activateable insensitive menu items remains. * lib/dia_image.c (dia_image_draw): * lib/dia_image.h: * lib/diagdkrenderer.c (draw_image): Give a GC to the image rendering function -- also change to using gdk_draw_pixbuf. Fixes bug #401774. * lib/focus.c (remove_focus_object): Make sure a removed object no longer has the active focus. Fixes bug #414708. * app/textedit.c (textedit_end_edit): Don't assert active_focus when it might not be true (during destruction). (textedit_remove_focus): Free the old focus when done. 2007-03-07 Steffen Macke * lib/diaarrowchooser.c: Include config.h to compile with MSVC 2007-03-06 Steffen Macke * installer/win32/dia.nsi: Added plug-ins/python/doxrev.py 2007-03-05 Lars Clausen * NEWS: * RELEASE-PROCESS: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: * configure.in: Pre6 * lib/diaarrowchooser.c: Use _dia_translate instead of gettext for tooltips and "Details...". Fixes bug #406066. * app/diagram_tree_menu.c (create_factory): Add translate_func to item factory. * plug-ins/metapost/render_metapost.c: Patch from Robert Young : Scale text correctly with page scaling. 2007-03-04 Lars Clausen * app/export_png.c (export_png_ok): * plug-ins/pixbuf/pixbuf.c (export_data): Fix rounding error of bitmap export. Fixes bug #413275. * app/diagram.c (diagram_load): Correctly update title on defaulted diagrams. * objects/UML/class.c: * objects/UML/class_dialog.c: * objects/standard/line.c (line_save): #ifdef DEBUG'ed out sanity check calls. 2007-02-26 Lars Clausen * NEWS: * RELEASE-PROCESS: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: * configure.in: Pre5 2007-02-25 Gabor Kelemen * installer/win32/locale/hungarian.nsh: * installer/win32/dia.nsi: Hungarian installer translation added. 2007-02-18 Hans Breuer * app/diagram.c : moved diagram only stuff from diagram_load_into() to diagram_load() so ... * app/interface.c : ... we can use diagram_load_into() to drop files on the canvas, i.e. really load them _into_ an exisiting diagram * plug-ins/python/pydia-property.c : better debug support for wrong types in lists (of lists) when doing array assignments (e.g. uml_class::operations) * plug-ins/python/doxrev.py : an import filter for XML generated by doxygen. One step further to do reverse engineering with Dia. * plug-ins/python/Makefile.am : at the moment only added to EXTRA_DIST 2007-02-17 Lars Clausen * objects/UML/class.c * objects/UML/object.c * objects/UML/state.c * objects/UML/small_package.c * objects/GRAFCET/boolequation.c: Make sure to call set_font before calling draw_string, fixes bug #408519 * objects/UML/class.c (umlclass_set_props): #ifdef out debugging statement. 2007-02-12 Hans Breuer * lib/libdia.def : added text_get_line_strlen * makefile.msc : delete config.h on clean * plug-ins/python/pydia-property.c : allow to set string properties with unicode 2007-02-10 Hans Breuer [ two more steps slowly fixing issues from bug #340352 ] * plug-ins/python/diamodule.c : instead of breaking compatibility with former PyDia plug-ins reimplemented dia.register_calback() by mapping to the GtkAction framework (it is not yet possible again to create new menus, only adding menuitems to existing menus) * plug-ins/python/select_by.py : restored menuitems to shorter form 2007-02-08 Steffen Macke * installer/win32/dia.nsi: * installer/win32/langmacros.nsh: * installer/win32/locale/*.nsh: Added Python plug-in 2007-02-05 Lars Clausen * NEWS: * RELEASE-PROCESS: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: * configure.in: Pre4 * plug-ins/vdx/vdx-export.c: Patch for crash. 2007-02-03 Lars Clausen * lib/dialibartrenderer.c (get_text_width): * lib/diagdkrenderer.c (get_text_width): * lib/text.c: Use g_utf8_strlen where character, not bytes are the goal. Also remove utterly the unnecessary optimization of keeping strlen around for each and every line. * lib/text.[ch]: Remove clearly unneeded array of strlen. Easier to just call strlen when needed. * objects/GRAFCET/action_text_draw.c (action_text_draw): Change offending direct use of text->strlen. * plug-ins/vdx/vdx.c * plug-ins/vdx/vdx-common.c * plug-ins/vdx/vdx-export.c * plug-ins/vdx/vdx.h * plug-ins/vdx/vdx-import.c * plug-ins/vdx/vdx-xml.c * plug-ins/vdx/visio-types.h: Upgrade to version 0.9 of VDX plug-in. 2007-01-28 Hans Breuer * app/recent_files.c : don't treat underscores in filenames as accelerators, see bug #340352 * app/menus.c : again register a translation function for menus/actions. This fixes the code part of bug #400616 Every translation needs to be updated to translate 'verbs' instead of complete menu pathes 2007-01-25 Lars Clausen * plug-ins/metapost/render_metapost.c (draw_text_line): First stab at text_line for metapost. Needs width adjustment. * app/diagram.c (diagram_get_name): Don't emulate g_path_get_basename buggily, just use it. Fixes bug #399535. * lib/dia_svg.c (dia_svg_parse_path): Patch from robert.young@dsto.defence.gov.au solves infinite loop in loading shapes. 2007-01-25 Steffen Macke * installer/win32/dia.nsi: Added some more *.po files to the installer; include dia-win-remote.exe 2007-01-23 Steffen Macke * installer/win32/dia.nsi: Added BPMN sheet and shapes to installer 2007-01-22 Lars Clausen * plug-ins/vdx/vdx-import.c: * plug-ins/vdx/vdx-export.c: * plug-ins/vdx/vdx-common.c: * plug-ins/vdx/vdx-xml.c: * plug-ins/vdx/vdx.[ch]: * plug-ins/vdx/visio-types.h: Updated to version 0.8. * NEWS: * RELEASE-PROCESS: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: * configure.in: Pre3 2007-01-21 Lars Clausen * installer/rpm/dia.spec: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: * configure.in: * NEWS: Prerelease 2 of 0.96. * Makefile.am (applicationsdir): * po/POTFILES.in: Create versioned dia.desktop file by first intltool'ing it and then replacing the version number. * app/interface.c (create_tools): End g_strconcat with NULL. Fixes bug #398286. 2007-01-18 Lars Clausen * lib/Makefile.am (AM_CPPFLAGS): * lib/dia_dirs.c: DIA_DATADIR and DIA_LIBDIR reverted to being DATADIR and LIBDIR, see http://mail.gnome.org/archives/dia-list/2007-January/msg00008.html and bug #385701. 2007-01-16 Lars Clausen * doc/en/usage-layers.xml: Corrections from Mick Curtis & Tim Bogie (see bug #347210). 2007-01-14 Lars Clausen * Makefile.am (%.desktop.in): Attempt at better desktop.in building rule. No luck. * app/menus.c (tool_entries): Using shift-alt instead of alt for menus to avoid conflicts with menu shortcuts. Closing bug #350731. * objects/UML/class.c (uml_underline_text): Underline that skips leading whitespace, and is called on each part of a wrapped operation. Fixes bug #390145. * lib/diasvgrenderer.c (draw_text_line): Don't crash rendering text line, use text_line for rendering. Dimensions now correct in SVG file for render-test, too bad nobody seems to obey them:( Fixes bug #332826. * samples/Makefile.am (EXTRA_DIST): Added new samples to dist. * plug-ins/vdx/vdx-import.c: * plug-ins/vdx/vdx-xml.c: * plug-ins/vdx/vdx.h: * plug-ins/vdx/visio-types.h: Updated to version 0.7. Thanks to Ian again for more work on this. * objects/KAOS/metaandorrel.c: Full autogap enabled for line-like connector. Fixes bug #365437. * objects/KAOS/metabinrel.c (mbr_update_data): Added comment on why autogap is hard -- this line is a one-segment bezier. The standard bezier object has a generic bezier autogap function that could be reused given some work. 2007-01-13 Hans Breuer * app/menu.c : register action "ViewAntialised" even if we don't HAVE_LIBART ... * app/display.c : ... and disable the respective menu entry to avoid package dependent ui-file and crashing due to gtk+ bug http://bugzilla.gnome.org/show_bug.cgi?id=396161 2007-01-13 Tommi Vainikainen * app/diagram_tree_window.c (diagram_tree_window_new): "Diagram Tree" window title is now shown as translated. 2007-01-09 Hans Breuer * objects/UML/class.c : comments were not considered for connection point placement. Patch from Vadim Zelenin, fixes bug #342086 2007-01-06 Hans Breuer * plug-ins/python/Makefile.am : EXTRA_DIST += bbox.py * dia.desktop.in : 'svn mv dia.desktop.in dia.desktop.in.in' configure.in : add dia.desktop.in to AC_OUTPUT Makefile.am : changed rule for .desktop handling. Together this should resolve @VERSION@ in the dia.desktop file and thus gives us version info via bug-buddy automatically. This is more important with bug-buddy 2.16 cause there the user can not manually adapt the version anymore. Hopefully fixes bug #393618 (see also bug #348827) * plug-ins/python/bbox.py : draws bounding boxes of the objects in the active layer into a new layer. Helps analyzing the font size problems. * acinclude.m4 : deduce py_config_dir from py_prefix, helps GARNOME and seems not to break anything (tested on Fedora and Gentoo) Joseph Sacco, bug #338368 * plug-ins/python/pydia-property.c : finally implemented getters/setters for LengthProperty and FontsizeProperty. (We really should take g_warning more serious, this one was WARNING **: No handler for type 'length') * plug-ins/xslt/xslt.c : don't use g_warning but message_error for "No valid configuration files found for the XSLT plugin, not loading." 2007-01-05 Hans Breuer * objects/standard/line.c : fix typo in save_arrow(), patch from Michael Duelli closing bug #393201 * app/dia-win-remote.c app/paginate_gdiprint.cpp app/win32print.c lib/dia_dirs.c lib/font.c plug-ins/wmf/wmf.cpp : #define WIN32_MEAN_AND_LEAN before windows.h inclusion where ever possible to reduce namespace clashes 2007-01-03 Hans Breuer * lib/persistence.c : before restoring window positions check if they are still in valid range. Fixes bug #354266 * app/interface.c : refined the zooms-list drop-down to include 800%, stay symmetric and not have more than seven entries. Fixes bug #328596 * lib/makefile.msc : enable strict checking again (-FImsvc_recommended_pragmas.h) to enforce e.g. matching pointers at compile time * lib/textline.h : RenderCacheFreeFunc is only taking a pointer, not a pointer to a pointer and we dont need a pointer to the function pointer in the struct * objects/UML/constraint.c objects/UML/implements.c objects/UML/message.c objects/Jackson/phenomenon.c objects/KAOS/metaandorrel.c : move_handle() method needs to call connection_adjust_for_autogap() after connection_move_handle() because the endpoints used for relative text movement need adjustment after possible autogap correction. Fixes bug #362254. 2007-01-02 Hans Breuer * *.msc, *.win32, HACKING, *.nsh, *.am, *.xbm, *.xpm; *.shape, *.sheet : setting svn:eol-style=native * lib/diagdkrenderer.c : avoid leaks in rounded rectangles, bug #358171, Michael Duelli 2006-12-13 Lars Clausen * Makefile.am (core-translation-report): Clean up after po-checktrans copying. * lib/plug-ins.h (DIA_PLUGIN_API_VERSION): Updated due to changes. * NEWS: * configure.in: * config.h.win32: * doc/en/dia.xml: * doc/pl/dia.xml: * doc/eu/dia.xml: Updated to version 0.96-pre1 * plug-ins/vdx/Makefile.am (libvdx_filter_la_SOURCES): Added visio-types.h * po/POTFILES.in: Removed EML.sheet.in. 2006-12-09 Lars Clausen * app/diapsft2renderer.c (ANNOYING_SCALE_FACTOR): Recalculated the existing random scale factor to work with text_line, removed some old cruft, and switched to using the new adjustment. This fixes, though in a not-well-understood way, bug #384007. * app/Makefile.am: Make it possible to compile without freetype by excluding freetype files. * app/diapsrenderer.c: Don't font_unref until you have font_ref'd the font, in case it's the same font. Fixes crash. Also adjust for baseline in text drawing. 2006-12-03 Lars Clausen * doc/en/usage-objects-special.xml: A few updates. * app/menus.c (display_entries): Add Alt-Return as shortcut for object properties, and Shift-Alt-Return for diagram properties. Closes bug # * objects/SADT/box.c: Make connection points not tear off the side at resize. Thanks to Vadim Zelenin for this patch. 2006-12-02 Lars Clausen * po/POTFILES.in: Add VDX and BPMN files. * lib/dialibartrenderer.c (fill_polygon): Make sure to use odd-even winding rule. Fixes bug #378878. * app/interface.c (tool_data): Add note about Space toggling tools. * samples/render-test.dia: Updated font geometry part since font size has changed. Also added polygon and beziergon with holes. * lib/diasvgrenderer.c: Specify that font-size is in cm, which according to http://www.w3.org/TR/SVG/text.html#FontSizeProperty specifies the baseline-to-baseline size of the font. InkScape does not respect this, nor does gqview. See bug #332826 for details. * lib/textline.c (text_line_cache_values): * lib/font.c (get_layout_offsets): Fix (seemingly) remaining problems in the textline adjustment process. * lib/text.c: Fix a couple bugs, admit to using textline for text rendering, make sure height&font are set from attributes. * lib/text.h: * lib/diarenderer.c: Admit to using textline for text rendering always. * lib/diagdkrenderer.c (draw_text_line): Removed code for caching text rendering, it's not really needed with new textline based rendering being so fast after all. Also remove debugging include of sys/time.h. 2006-12-01 Lars Clausen * plug-ins/pstricks/render_pstricks.c (set_linewidth): Specify unit of measure. See bug #380302. * lib/font.c (get_layout_offsets): Remember the newly constructed runs SList. * lib/textline.c (text_line_cache_values): Don't take run->glyphs to be an array and crash. Still some problems with text rendering. 2006-12-01 Steffen Macke * lib/text.h: Added text_get_line() declaration * lib/text.c: * lib/libdia.def: Added text_get_line_width, text_get_line, text_get_descent,text_get_max_width * objects/UML/object.c: Fixed typo in objet_draw() * plug-ins/vdx/vdx-export.c: Use g_ascii_strncasecmp() instead of strcasecmp() 2006-11-30 Lars Clausen * app/diapsft2renderer.c (draw_text_line): * lib/textline.[ch] (text_line_adjust_glyphs): * lib/diagdkrenderer.c (draw_text_line): Adjusting widths no longer mallocs and frees, merely changes the existing object. * lib/text.c (text_draw): Remember to set_font, even though draw_text doesn't require it anymore. 2006-11-29 Lars Clausen * lib/diarenderer.c: Make default draw_text use its internal TextLine structures. * objects/UML/object.c: * objects/UML/classicon.c: * objects/UML/node.c: * objects/GRAFCET/action.c: * objects/GRAFCET/action_text_draw.c: * app/modify_tool.c: Use functions to access text internals. There are more places that access the structure directly, which should be changed, but are not critical now. * lib/text.[ch]: Add variant (to become standard) that uses a TextLine for each line. Also expose some information in a more encapsulated way. * lib/diagdkrenderer.c: Use default draw_text implementation. 2006-11-28 Lars Clausen * app/modify_tool.c (modify_make_text_edit): Call text_line_destroy rather than undefined text_line_free. * lib/libdia.def: Removed disappeared _scaled_ functions. * lib/arrows.[ch]: Moving inclusions towards .c, as too many includes in .h confuses MSVC. * lib/text.h: Start of using TextLine for Text lines. 2006-11-26 Lars Clausen * lib/text.[ch]: Encapsulated the arrays in Text to prepare for switching to one array of TextLine. Simplified operations a lot by using standard functions. 2006-11-25 Lars Clausen * lib/font.[ch]: Use text_line for the few remaining functions that used _scaled_ (non of them actually *were* scaled:), and get rid of all the _scaled_ stuff! One less horror of a kludge! * app/diapsft2renderer.c (draw_string): Happy with using text_line for string output. * lib/diagdkrenderer.c: Make highlighted area match text area, and use text_line in get_text_width. These should later be superfluous due to increased use of text_line at higher levels. * lib/dialibartrenderer.c: Implement text_line based rendering of text. Works. Also get_text_width uses a text_line. Text bounding box is still a little off, but that will help once text_line is used in the text system. * lib/arrows.c (arrow_get_name_from_type): Function to get arrow names, and proper error messages when a loaded diagram has bad arrows. Finally fixes bug #144394, thanks to both Pontus Pihlgren and Vadim Zelenin 2006-11-24 Lars Clausen * samples/Metapost-Testcase.dia: A nice test case for MetaPost, including most basic rendering things. * lib/textline.[ch]: Little cache fix, and adding a function to get alignment widths for a TextLine. * lib/diagdkrenderer.c (draw_text_line): Make caching of renderer data for textline work, get rid of last use of _scaled_ stuff. 2006-11-23 Lars Clausen * lib/diagdkrenderer.c (draw_text_line): * lib/textline.[ch]: Underlying implementation and first (currently commented out) attempt at use of textline renderer data cache. Not debugged, but thennobody holds textline objects long enough to make a difference yet. 2006-11-22 Lars Clausen * app/menus.c: Patch adding shortcuts for align functions, thanks be to jan@uos.de. 2006-11-18 Djihed Afifi * configure.in: Added Arabic Language (ar). 2006-11-16 Lars Clausen * lib/font.[ch] (get_layout_offsets): Start of function to adjust all offsets in a layout line. Not used yet, and not debugged. Kept around for when we have more runs in a line. * lib/textline.c (text_line_adjust_layout_line): Adjusts the glyph sizes within a PangoLayoutLine to overcome the rounding problems and ensure linear scaling of fonts. Currently only fixes the first run, since AFAIK that's all we can do with current text input anyway. * lib/diagdkrenderer.c (draw_text_line): Now uses text_line_adjust_layout_line to avoid repeating Pango digging for Freetype and GDK code both. Ready to merge freetype and GDK duplicate code. 2006-11-15 Lars Clausen * plug-ins/vdx/*: Update to version 0.6.1 yields improvements in both export and import. 2006-11-13 Lars Clausen * lib/font.c: Internally calculate glyph offsets at *20 font size to avoid rounding problems. * app/layer_dialog.c: Revamped the visibility toggling system to make visibility change a properly undoable operation, making the page borders resize in the process. * objects/standard/line.c (line_load, line_save): * objects/standard/arc.c (arc_load, arc_save): * objects/standard/polyline.c (polyline_load, polyline_save): * objects/standard/bezier.c (bezierline_load, bezierline_save): * objects/standard/zigzagline.c (zigzagline_load, zigzagline_save): Use generic load/save functions. * lib/libdia.def: * lib/arrows.[ch]: Generic functions for loading and saving arrows, including sanitizing on load, part of fixing bug #144394. * objects/FS/flow-ortho.c (orthflow_draw): * objects/FS/flow-poly.c (orthflow_draw): Update to use modern arrow rendering. * app/modify_tool.c (modify_start_text_edit) (modify_make_text_edit): Don't use dia_font_scaled_* when avoidable. 2006-10-29 Steffen Macke * app/paginate_psprint.c: Made compile with MSVC again 2006-10-26 Lars Clausen * app/interface.[ch]: Patch from jan@uos.de: Write the accelerator keys in tooltips for standard tools. * app/paginate_psprint.c: Patch for better printing: Reasonable file name, check before overwriting, re-popup if file write failed. Thanks to Leon Stringer for this patch. 2006-10-26 Hans Breuer * plug-ins/shape/shape-export.c : the icon export facility dependens on the libart-size-hack; use filter_get_by_name("png-libart") instead of filter_guess_export_filter(). Fixes bug #364491. 2006-10-19 Ignacio Casal Quinteiro * configure.in: Added 'gl' to ALL_LINGUAS 2006-10-16 Hans Breuer * objects/UML/class.c : the comment wrapping was only working for plain ASCII, now it deals with UTF-8 (Vadim Zelenin, bug #349765) 2006-10-16 Theppitak Karoonboonyanan * configure.in : Add 'th' (Thai) to ALL_LINGUAS. 2006-10-14 Hans Breuer * plug-ins/vdx/vdx-import.c : don't try to print("%s", NULL). It is not generally supported and crashes on win32. Fixes bug #349883 * lib/arrows.[hc] : draw hollow arrow heads with linewidth 0.0 correctly. Patch from Michael Duelli fixing bug #358176 * objects/standard/arc.c : don't rely on the result of atan2(inf,inf), it is C-runtime dependent. Fixes infinitesimal burning of CPU cycles, bug #360013 and duplicates. * app/load_save.c : protect gstdio.h by GLIB_CHECK_VERSION and use the * objects/UML/(actor|large_package|node|note).c : use element_update_connections_rectangle() instead of about 25 lines of copy and pasted code * app/load_save.c : make it compile by defining W_OK if it is not there and also use '#if GLIB_CHECK_VERSION(2,8,0)' instead of '#ifdef GLIB_CHECK_VERSION(2,8,0)'. Strange that gcc apparently compiled this * lib/parent.[ch] : parent_handle_move_in_check() was moving the checked point about twice as much as needed, bug #342773. 2006-10-12 Lars Clausen * app/load_save.c (diagram_data_save): If we have GTK 2.8, check that we are allowed to write to the file in question (if it exists) and to the directory (for backup/temp/newly created file). * lib/dia_dirs.c (dia_get_lib_directory, dia_get_data_directory): * lib/Makefile.am (AM_CPPFLAGS): * app/Makefile.am (INCLUDES): Rename DATADIR and LIBDIR to DIA_DATADIR and DIA_LIBDIR to avoid conflicts with libtool and the like. Thanks to lode leroy for pointing out the solution. * plug-ins/pstricks/render_pstricks.c (export_pstricks) (draw_string): Use \psscalebox instead of \scalebox, courtesy of Dan Bolser and the pstricks mailing list. * shapes/Makefile.am (SUBDIRS): * configure.in: * shapes/BPMN/* * sheets/BPMN.sheet.in: * sheets/Makefile.am (sheet_in_files): New shape set BPMN for Business Process Modelling from anthonym@overture.com. * doc/en/dia.dbk: Correctly describing connections. * objects/standard/box.c: Patch from Michael Duelli : Set line attributes before drawing anything. 2006-10-08 Lars Clausen * configure.in: Allow compiling without freetype on Unix systems. The effect of changes to non-freetype parts of the code can now be tested, and I have no excuse to not fix them anymore:( 2006-10-01 Lars Clausen * app/modify_tool.c (modify_motion): Don't use null-ness of connectionpoint to skip snap-to-grid for non-connectable handles. Fixes bug #350246. * shapes/flowchart/predefdproc.shape: Fixed midpoint. 2006-09-27 Steffen Macke * shapes/flowchart/datasource.png: * shapes/flowchart/datasource.shape: * shapes/flowchart/Makefile.am: * sheets/Flowchart.sheet.in: * installer/win32/dia.nsi: Added new "Data source" shape 2006-09-24 Hans Breuer * lib/diagdkrenderer.c : I'm going to rip out all the Freetype code the next time the GDK only compile breaks 2006-09-23 Hans Breuer * app/commands.c app/create_object.c app/disp_callbacks.c : add missing #include "lib/parent.h" * lib/makefile.msc : build textline.obj * objects/makefile.msc : don't build newgroup.obj * objects/misc/libmisc.c : with newgroup gone to app/ newgroup_type can not be registered from the module any longer - at least not on win32 * plug-ins/python/makefile.msc : removed obsolete references to Python 1.5, also removed misleading link to Python 2.2 debug build * app/diagram.[ch] app/app_procs.c : don't use C++ keyword 'virtual' as variable name: s/virtual/is_default/ * plug-ins/python/*.c : don't mix PyObject_NEW() with PyMem_DEL() Newer versions of Python (2.5) are not tolerant about this anymore. 2006-09-11 Lars Clausen * lib/diasvgrenderer.c (draw_text_line): First stab at making svg text line renderer, doesn't work yet. * lib/textline.c (text_line_draw): Removed #define. * lib/diagdkrenderer.c (draw_text_line): Slight cleanups. 2006-09-11 Steffen Macke * plug-ins/vdx/vdx-export.c: * plug-ins/vdx/vdx-import.c: * plug-ins/vdx/vdx-xml.c: * plug-ins/vdx/vdx.h: * plug-ins/vdx/visio-types.h: Update to version 0.5 (from 0.4) of Visio import, thanks to Ian Redfern, who states: This is the first version to support export to VDX - for now, just straight lines and text, but I'm working on the more complex bits. It currently writes Visio 2002 VDX as a lowest common denominator, but that won't handle Beziers, so when I get round to converting them to NURBS, only Visio 2003 users will be able to import them. There are also several improvements to import, both to fix the layout and clean up the code, and it can now import embedded bitmaps - as Dia needs them to be separate files, it puts them in /tmp (or wherever tempnam() goes to on your system). Alternative suggestions are welcome. NURBS import still doesn't work, but everything else seems pretty reliable. In addition, two small adjustments to compile on Windows 2006-09-08 Steffen Macke * app/makefile.msc: * app/Makefile.am: * app/dia-win-remote.c: * installer/win32/dia.nsi: From Windows Explorer, open .dia files in the running Dia instance (if possible). Fixes bug #70718 2006-09-05 Lars Clausen * lib/diatypes.h: * lib/Makefile.am (libdia_la_SOURCES): * lib/diarenderer.[ch]: * lib/font.[ch]: * lib/diagdkrenderer.c: * lib/textline.[ch]: TextLine now ready for commit. Rendering with it is much faster and significantly more precise than without. All renderers should implement a good definitions for this (though there is a default one that uses draw_string), as it can tell the expected width of a string. * lib/libdia.def: Newly defined functions. 2006-08-29 Lars Clausen * lib/textline.[ch]: New text rendering level: A self-contained single-line text object that allows safer caching and hopefully more accurate rendering at various zooms. Using a PangoMatrix didn't seem to help. * lib/font.c: Removing out-deffed layout cache code, it'll never work. Also a couple support functions for my quest of good zoom. 2006-08-20 Hans Breuer * plug-ins/cairo/diacairo.c : get rid of c++ coment * app/diagram.h app/diagram.c app/modify_tool.c app/select.c app/undo.c : reverted 'Shortened diagram_unselect'. It broke plug-ins/python, but more important made one function from app/diagram.h asymmetric with all the others. We should not leave the common C OO-pattern of passing an explicit "this pointer" just because that can also be deduced from the other object. 2006-08-18 Lars Clausen * lib/render.[ch]: Finally removed unused render files now known as diarenderer.[ch]. 2006-08-17 Steffen Macke * installer/win32/dia-diagram.ico: * installer/win32/dia.nsi: Assign icon to *.dia files 2006-08-16 Lars Clausen * app/diagram.c (diagram_load): * lib/object.c (dia_object_is_selectable): Two silly null-pointer errors detected by Michael Duelli 2006-08-16 Steffen Macke * app/modify_tool.c: * app/undo.c: Include parent.h * lib/libdia.def: Include dia_object_is_selectable() 2006-08-13 Lars Clausen * objects/Misc/libmisc.c: * {app,objects/Misc}/Makefile.am: * objects/Misc/newgroup.c: * app/newgroup.c: Moved newgroup. * app/diagram.[ch]: * app/undo.c: * app/modify_tool.c: * app/select.c: Trim diagram_unselect_object() to the one required argument. * app/app_procs.c: * app/interface.c (dia_dnd_file_drag_data_received): * app/recent_files.c (open_recent_file_callback): * app/filedlg.c (file_open_response_callback): * app/diagram.c (diagram_load): Make the diagram created at start-up be a virtual diagram that if unchanged is filled in by the first opened diagram, like Gnumeric. 2006-08-11 Lars Clausen * app/properties.c (properties_give_focus): Give focus to first thing in a properties dialog. Still need our own compound widgets to get focus right. 2006-08-06 Lars Clausen * objects/Misc/newgroup.c: * lib/diagramdata.c: * app/diagram.[ch]: * app/select.c: * app/modify_tool.c: * lib/object.[ch]: Work towards a more reasonable definition of Groups. 2006-08-06 Steffen Macke * installer/win32/dia.nsi: Save diagrams by default in "My Pictures"; fixes bug #344247 2006-08-04 Steffen Macke * installer/win32/dia.nsi: Added vdx.dll, analog_clock.xpm newgroup.xpm , *ui.xml files 2006-08-03 Lars Clausen * sheets/Makefile.am: EML sheet taken out since it's been empty for five years anyway. Fixes bug #347894. * doc/eu/dia.dbk: * doc/en/dia.dbk: * doc/en/usage-layers.xml: Fixed obsolete references to export-to-format. Fixes bug #346510. 2006-08-02 Lars Clausen * plug-ins/vdx/visio-types.h: * plug-ins/vdx/vdx.h: * plug-ins/vdx/vdx-xml.c: * plug-ins/vdx/vdx-import.c: * plug-ins/vdx/vdx-common.c: Update to version 0.4 (from 0.2) of Visio import, thanks to Ian Redfern, who states: Version 0.4 does a passable job with curves, and has the first implementation of Masters. It also handles XForm1D, and fixes a potential crash. It gets some layers in the wrong order and still has some major positioning and sizing issues. Version 0.3 gets object layout correct, and does a better job of text, lines, arrows, layers etc. Some diagrams (that don't contain curves) now render pretty much correctly. 2006-07-16 Hans Breuer * app/cut_n_paste.[hc] : maintain a generation counter to count how many times the stored object list is used * app/commands.c : use the generation for paste placement. The first one after cut is not moved at all: a nice way to move objects between layers without changing their lateral position. Also sprinkled some diagram_update_extents() * shapes/Civil/civil_rotor.shape : had inverted fg/bg colors, bug #347080 * app/recent_files.c : don't g_return_if_fail() on common use case, here an empty recent file list * lib/dia_image.c(dia_image_draw) : don't try to draw anything if width or height is smaller than 1 pixel * plug-ins/cairo/diacairo.c : allow to export to svg if available with cairo. Some tweaking of surface sizes. 2006-07-12 Lars Clausen * {tests,test/exports,data,plug-ins/vdx}/.cvsignore: Added. 2006-06-28 Lars Clausen * plug-ins/vdx/vdx-import.c: Removed create_standard_group which is in create.c. 2006-06-25 Hans Breuer * app/display.c : avoid to call gettext on parameters for ngettext() Should finally really fix bug #344896 * data/ui/display-ui.xml data/ui/popup-ui.xml data/ui/toolbox-ui.xml : removed expand="yes" because otherwise the files can't be read with gtk+-2.6.x which follows Dia can't start. Fixes bug #344895 * app/menus.c app/Makefile.am : also find the ui files when run from app/run_dia.sh 2006-06-17 Gintautas Miliauskas * configure.in: Added lt to ALL_LINGUAS. 2006-06-15 Hans Breuer * app/display.c : use ngettext() for possible plural variations. (Bug #344896, tokul@users.sourceforge.net) * objects/UML/class.c : use g_list_append() rather than prepend when copying attributes, operations, formalparams. Fixes bug #342902 Also removed some superfluous outcommented code and fixed a warning. * objects/UML/class.c : dont break reading comment_line_length by misguide compatibility code. Fixes bug #341887 * plug-ins/vdx/vdx-xml.c : added file missing from 0.3 version commit. Fixes bug #344804 * lib/create.h : add create_standard_group() prototype * lib/libdia.def lib/makefile.msc objects/makefile.msc plug-ins/makefile.msc : added missing (files|exports) 2006-06-13 Lars Clausen * plug-ins/vdx/*: Version 0.3 of Visio import filters, thanks again to Ian Redfern. 2006-06-12 Elijah Newren * autogen.sh: Run configure by default, allow it to be skipped if NOCONFIGURE is set in the environment. #344574. 2006-06-12 Elijah Newren Pair of build fixes. #344357 * Makefile.am: avoid cp errors when $(srcdir) == . * objects/Misc/newgroup.c: include pixmaps/newgroup.xpm instead of pixmaps/group.xpm as the latter doesn't exist. 2006-06-12 Hans Breuer * plug-ins/python/codegen.py : applied patch from Thomas D Ahle which adds support for Java and inheritance. Closes bug #344187 2006-05-28 Lars Clausen * sheets/Misc.sheet.in: * objects/Misc/Makefile.am (EXTRA_DIST): * objects/Misc/pixmaps/newgroup.xpm: * objects/Misc/newgroup.c: * objects/Misc/libmisc.c: Start of new group model, with "visible" object to test with. This object will later become the default group object and thus (mostly) invisible. * lib/parent.c (parent_handle_move_in_check): * app/create_object.c (create_object_button_press): * app/diagram.c (diagram_unparent_children_selected): * app/disp_callbacks.c (ddisplay_drop_object): * app/load_save.c (write_objects): * objects/network/radiocell.c (radiocell_create): * objects/AADL/aadlbox.c (aadlbox_create): * objects/UML/large_package.c (largepackage_create): * objects/UML/component.c (component_create): * lib/object.[ch]: DiaObject API change: DiaObject now has gint flags rather than gboolean can_parent, and utility function object_flags_set. Uses of can_parent changed to call to function. * doc/en/dia.dbk: Removal of obsolete epsi references. 2006-05-27 Hans Breuer * app/menus.c : listen to Gtk-WARNING **: Unable to parse accelerator '+': it wants 'plus', same for minus. * tests/exports/cgm/* : cvs admin -kb *.cgm tests/exports/png/* tests/exports/png-libart/* tests/exports/shape/* : cvs admin -kb *.png tests/exports/wpg/* : cvs admin -kb *.wpg mark binary files as such to not get them broken on platforms which insist on replacing line-ends. * app/app_procs.c app/display.c app/filedlg.c app/interface.c app/load_save.c app/sheets.c lib/dia_image.c lib/message.c plug-ins/python/diamodule.c plug-ins/python/pydia-error.c plug-ins/wmf/wmf.cpp : fixed format string vulnerability on HEAD as well. Patch from Hans de Goede, bug #342111 2006-05-27 Rob Staudinger * Makefile.am: * app/Makefile.am: * app/diagram.c: * lib/Makefile.am: * objects/standard/Makefile.am: * plug-ins/python/Makefile.am: Fix out of tree build (#340115). 2006-05-25 Hans Breuer * app/interface.[hc] app/menus.c : rename ToolButton::menu_item to action_name. Don't mark action names for translation. It is not needed and some languages don't support CamelCase. Fixes bug #342895 * app/menus.c : re-added a bunch of accelerators lost in translation to the GtkAction framework. Use GTK_STOCK_FULLSCREEN conditionally it was not available with gtk+-2-6-x. Use dia_get_data_directory() instead of hardcoded UIDATADIR. * app/dia_embedd.c : explain instead of out-comment * app/menu.c lib/autoroute.c lib/color.c lib/diagramdata.c lib/properties.h dia_xml.c : warningectomy * lib/create.h : create_standard_group() * lib/libdia.def lib/makefile.msc : reflect moved stuff 2006-05-25 Lars Clausen * tests/exports/*.dia: A set of test diagrams for export plug-ins. The intention is to use these for regression tests by ensuring that they don't change when code is altered, or if they change that a manual inspection proves them ok. The fact that an export plug-in passes these tests doesn't mean it's perfect, just that is hasn't degraded. * plug-ins/xfig/xfig-import.c: * plug-ins/vdx/vdx-import.c: * lib/create.[ch]: Functions taken from xfig to create some standard objects easily. Uses of them updated, no longer need to take DiagramData. * plug-ins/vdx/*: First draft of VDX (Visio XML) plug-in from Ian Redfern . Also a bunch of samples for the purpose from the vdxtosvg project. 2006-05-21 Hans Breuer * app/interface.[hc] app/disp_callbacks.c : removed unused global variable popup_shell * app/pagesetup.c app/diapagelayout.c : restrict every page margin to a little less than half of the page. This guarantees margins leaving some useable page area and thus avoids crashing on negative page sizes. Fixes bug #339562 (also applied to dia-0-95 branch) 2006-05-20 Hans Breuer Patch from Robert Staudinger to base dia menus on GtkAction framework instead on deprecated GtkItemFactory. Tracked in bug #340352. En passant fixes bug #171397 * configure.in : placementof ui files added data/Makefile to AC_OUTPUT * Makefile.am : added data dir * app/Makefile.am : added $(uidatadir) * app/commands.c app/commands.h app/dia_embedd.c app/diagram.c app/diagram_tree_window.c app/diagram_tree_window.h app/disp_callbacks.c app/display.c app/display.h app/interface.c app/menus.c app/menus.h app/recent_files.c : changed a bunch of callback signatures to take GtkAction * app/pixmaps/Makefile.am * data/Makefile.am data/display-ui.xml data/toolbox-ui.xml data/popup-ui.xml : new files containing the menu structure * lib/filter.c lib/filter.h lib/plug-ins.h : callback filter registration change to be more appropriate for actions * lib/libdia.def : updated externals * plug-ins/python/debug_objects.py plug-ins/python/diamodule.c plug-ins/python/group_props.py plug-ins/python/gtkcons.py plug-ins/python/otypes.py plug-ins/python/pydiadoc.py plug-ins/python/scascale.py plug-ins/python/select_by.py : adapted to API change dia.register_callback to dia.register.action * app/authors.h : added Robert to the authors * app/commands.c : got rid of compiler warnings 2006-05-14 Hans Breuer * plug-ins/python/python.c : protect the plug-in against initializing if Python already is initialized. This PyDia extensions is designed for embedding Python. * plug-ins/python/pydia-property.c : LineStyle.dash may be either Float or Integer. * plug-ins/python/diasvg_import.py : remove FontSize debug spew * lib/font.c : GDK_WINDOWING_WIN32: if called with a display already setup use the pango context matching the display. Otherwise fallback to a context from PangoWin32 (matches only for gtk+-2-6, not the one used since gtk+-2-8 using cairo. 2006-05-13 Hans Breuer [ also applied to branch dia-0-95 ] * objects/UML/umloperationc: add "query" to umloperation_offsets. Patch from Peter Allin, fixes bug #338336 [ also applied to branch dia-0-95 ] * app/diagram.c(diagram_ungroup_selected) : operate on a copy of data-Selected cause the original is modified during use. Patch from Victor Stinner, fixes bug #334771 * configure.in config.h.win32 : development started again so 095+cvs. Critical bugfixes may go on the dia-0-95 branch (may lead to 0.95.1 if necessary) * app/diagram.c : removed long-time outcommented code * lib/diagramdata.h lib/filter.h lib/geometry.h lib/plug-ins.h lib/properties.h : C++ aware by G_BEGIN_DECLS, G_END_DECLS * objects/UML/class.c : don't dia_assert_true(attr->comment != NULL) it is handled everywhere else just fine. 2006-04-19 Lars Clausen * installer/win32/dia.nsi: * doc/en/dia.xml: * doc/eu/dia.xml: * doc/pl/dia.xml: * config.h.win32: * configure.in: * NEWS: Release 0.95 * shapes/Gane_and_Sarson/process.shape: Connectionpoint update from Nick Moore . 2006-04-17 Kjartan Maraas * configure.in: Remove obsolete entry for no_NO * po/no.po: And the translation. 2006-04-12 Lars Clausen * installer/win32/dia.nsi: * doc/en/dia.xml: * doc/eu/dia.xml: * doc/pl/dia.xml: * config.h.win32: * configure.in: * NEWS: -pre9 * configure.in: Check for xgettext. Apparently AM_GLIB_GNU_GETTEXT notices it's missing but doesn't abort. 2006-04-04 Steffen Macke * installer/win32/dia.nsi: * installer/win32/langmacros.nsh: * installer/win32/locale/*.nsh: Added check for outdated libgtk dll; closes bug #335477 2006-04-03 Lars Clausen * installer/win32/dia.nsi: * doc/en/dia.xml: * doc/eu/dia.xml: * doc/pl/dia.xml: * config.h.win32: * configure.in: * NEWS: -pre8 * plug-ins/xfig/xfig-import.c: Initially place text in the right place. 2006-04-03 Steffen Macke * installer/win32/dia.nsi: * installer/win32/locale/french.nsh: Added french installer locale. Patch from Yannick Le Ny 2006-04-02 Hans Breuer * doc/pl/dia.xml : "DOCTYPE book" closes bug #142098, Roland Stigge 2006-03-29 Daniel Drake * configure.in: Use standard pkg-config expressions to check for GTK+/Glib, the GTK-supplied macro's conflict with our usage of $GTK_MODULES (#335422) 2006-03-28 Lars Clausen * app/Makefile.am (dia_LDADD): Patch from Peter for bug #336377: Include libs and cflags in proper places. * installer/win32/dia.nsi: * doc/en/dia.xml: * doc/eu/dia.xml: * doc/pl/dia.xml: * config.h.win32: * configure.in: * NEWS: -pre7 * shapes/network/mobile_phone.{png,xpm,shape}: * shapes/network/telephone.shape: * shapes/network/disc.shape: Updates from W. Borgert improving looks and positioning. 2006-03-26 Lars Clausen * objects/network/radiocell.c: Patch from W. Borgert for extra midpoint, flicker, extraneous properties. * objects/network/basestation.c: Patch for BB from W. Borgert . 2006-03-23 Hans Breuer * lib/widgets.c : use original fontname and fallback 'sans' to render the font menu. Thus crashing (in Pango) is delayed until the point where one chooses a font, which can't be rendered by Pango. Fixes bug #335096 as far as Dia can. 2006-03-21 Lars Clausen * installer/win32/dia.nsi: * doc/en/dia.xml: * doc/eu/dia.xml: * doc/pl/dia.xml: * config.h.win32: * configure.in: * NEWS: -pre6 * plug-ins/xfig/xfig-import.c: Last missing stack underflow check. 2006-03-19 Hans Breuer * app/display.c app/preferences.c : unset transient, still issues with transient handling, see bug #332828 * app/makefile.msc lib/makefile.msc objects/makefile.msc plug-ins/makefile.msc : removed stuff supposed to be used from $(TOP)/glib/build/win32/make.msc * plug-ins/xfig/xfig-import.c : make it compile with strict type checking [these were real errors, freeing stack passed values instead of the intended local variable] : xfig-import.c(580) : error C4047: 'function' : 'struct _GArray *' differs in levels of indirection from 'struct _Point ** ' xfig-import.c(580) : warning C4024: 'g_array_free' : different types for formal and actual parameter 1 * lib/libdia.def : export connection_adjust_for_autogap * plug-ins/hpgl/hpgl.c : there is one floating point value in the whole HPGL output - and it was locale dependent. 2006-03-12 Lars Clausen * installer/win32/dia.nsi: * doc/en/dia.xml: * doc/eu/dia.xml: * doc/pl/dia.xml: * config.h.win32: * configure.in: * NEWS: -pre5 * objects/UML/constraint.c (constraint_update_data): * objects/UML/message.c (message_update_data): * objects/UML/implements.c (implements_update_data): * objects/SADT/annotation.c (annotation_update_data): * objects/Jackson/phenomenon.c (message_update_data): * objects/network/wanlink.c (wanlink_update_data): * objects/FS/flow.c (flow_update_data): Added autogap adjustment. * objects/standard/line.c: * lib/connection.[ch] (connection_adjust_for_autogap): Moved autogap functionality for connections. 2006-03-11 Lars Clausen * lib/diagdkrenderer.c (draw_object): * lib/dialibartrenderer.c (draw_object): Don't draw highlighting in the non-interactive rendering. * dia.spec: * installer/rpm/dia.spec: * installer/rpm/README: Moving dia.spec to installer directory, where distribution maintainers can keep their own copies. * objects/UML/uml.h: * objects/UML/class.h: * objects/UML/umloperation.c: * objects/UML/class.c: Preparations to fix bug #334037: Clean away the Lisp-like constructs confusing the issue. 2006-03-10 Lars Clausen * lib/object.c: Don't compare floats with ==, even in sanity checks. 2006-03-09 Lars Clausen * plug-ins/xfig/xfig-import.c: Fix three buffer overflows in color reading, depth reading, and points reading. Thanks to * COPYING: Added copyright info again. 2006-03-09 Steffen Macke * installer/win32/dia.nsi: don't uninstall old version; overwrite existing files 2006-03-08 Steffen Macke * installer/Makefile.am: * installer/win32/Makefile.am: * installer/win32/locale/Makefile.am: Making sure that the installer sources are included in the dia source distribution * installer/win32/dia.nsi: Don't include makefiles in installer; Add uninstaller link to start menu (bug #332650); added commandline option GTKBIN to specify GTK installation directory (fixes bug #332595) * installer/win32/dia-diagram.ico: * installer/win32/dia-header.bmp: * installer/win32/dia-install.ico: * installer/win32/dia-intro.bmp: * installer/win32/dia-uninstall.ico: * installer/win32/dia.nsi: * installer/win32/langmacros.nsh: * installer/win32/locale/english.nsh: * installer/win32/locale/german.nsh: Added files to build the win32 installer using NSIS (http://nsis.sourceforge.net) 2006-03-06 Lars Clausen * doc/en/dia.xml: * doc/pl/dia.xml: * config.h.win32: * configure.in: * NEWS: -pre4 * samples/TexChars.dia: Added sample of the escaped chars for TeX. * plug-ins/pstricks/render_pstricks.c (tex_escape_string): Changing escape of \, [, and ] to something that works. $ is fine. Fixes parts of 333193. 2006-03-05 Lars Clausen * plug-ins/xfig/xfig-import.c: Fixed locale issues with FIG import. * lib/orth_conn.c (orthconn_update_data): * app/diagram.c: Removing debug info. * app/object_ops.c (object_find_connectpoint_display): Don't magnet to parents. 2006-02-26 Hans Breuer * app/Makefile.am : define DIA_PYTHON_PATH in app/run_dia.sh * plug-ins/python/python.c : if set use it to find python-startup.py (bug #332599, Torben H. Nielsen) * app/app_procs.c : removed // from gtk_init() [shouldn't have commited my test code]. Really closes #332177, thanks Mateus César Gröess. 2006-02-26 Lars Clausen * doc/en/dia.xml: * doc/pl/dia.xml: * config.h.win32: * configure.in: * NEWS: -pre3 * lib/element.h (ELEMENT_COMMON_PROPERTIES): Turning off setting of element_width and element_height until constraints can be properly checked. Bug #328200 * dia.spec (Requires): Updated GTK requirements. 2006-02-25 Lars Clausen * lib/diaarrowchooser.c (dia_arrow_chooser_new): Also making sure other dynamic menus have proper translation. * lib/widgets.c (dia_dynamic_menu_create_string_item): * app/interface.c (cmp_names): * app/sheets.c (sheets_optionmenu_create): * lib/sheet.c (load_register_sheet): Using C locale for sheet names internally, translating on display instead. Also sorting by gettext order explicitly. Bug #328570. 2006-02-25 Hans Breuer * app/interface.c(get_sheet_by_name) : be more tolerant about localization of the sheet name. ( Steffen Macke, #332070 ) * app/app_procs.c(app_init) : if GDK_WINDOWING_WIN32 call gtk_init() in any case. In contrast to X11/*nix displays are not optional on windoze. And we need some help of gtk to render text to bitmaps. ( Rob McDonald, bug #332177 ) 2006-02-21 Lars Clausen * NEWS: * doc/pl/dia.xml: * doc/en/dia.xml: * configure.in: * config.h.win32: Update to -pre2. * lib/beziershape.c (add_handles): Fixing CP pos calculation for adding new CP's. Fixes bug #331557. 2006-02-20 Lars Clausen * lib/diarenderer.c (find_center_point): Better handling of some degenerate cases. (draw_arc_with_arrows): Draw line in all cases. Doesn't handle the truly degenerate cases well enough yet, but at least doesn't break on common cases. Probably need to do something special for arcs with start and end point the same. Improves but does not entirely fix bug #331372. 2006-02-20 Hans Breuer * plug-ins/python/Makefile.am : dot.py was missing from EXTRA_DIST 2006-02-18 Hans Breuer * plug-ins/metapost/render_metapost.c : text position gives the baseline neither top nor bottom. ( Rob McDonald, #331491 ) * plug-ins/wmf/wmf.cpp : finally respecting the print margins ( Rob McDonald, #331371 ) * plug-ins/wmf/wmf_gdi.h : some more constants not useful without a GDI printer (driver) 2006-02-17 Hans Breuer * plug-ins/metapost/render_metapost.c(draw_string) : dont query the font for it's height but use the 'height' parameter passed in. Close enough to the desired size - and independent of zoom - to close bug #331489 (Rob McDonald) 2006-02-12 Lars Clausen * NEWS: * dia.spec: * doc/pl/dia.xml: * doc/en/dia.xml: * configure.in: * config.h.win32: Updates for version 0.95-pre1. 2006-02-12 Hans Breuer * app/makefile.msc : build three components dia.exe (console application), diaw.exe (windows application) and dia-app.dll containing almost all of Dia's application shared between the two executables * app/main.c app/winmain.c app/app_procs.c app/dia.def : some refactoring to accomplish the new dependency layout * objects/makefile.msc plug-ins/python/makefile.msc : need to link dia-app.lib now - if at all depending on app/* 2006-02-11 Hans Breuer * makefile.msc : nmake -f makefile.msc just compiles now * app/makefile.msc lib/makefile.msc : make not using FT2 on win32 the default (works around bug #150813 by diabaling it) * objects/makefile.msc plug-ins/makefile.msc : remove -GD from $(CC) command line. It isn't understood by newer versions of cl. * app/authors.h : reflect the recent maintainers change * app/display.c app/load_save.c : removed debug spew * app/winmain.c : improved redirection 2006-02-05 Hans Breuer * app/menus.[ch] app/diagram.c : the GNOME specific menu code is dead since 0.94. Fix somne left-overs, also properly disable the duplicate menu entry * po/POTFILES.in : added objects/network/wanlink.c 2006-02-05 Hans Breuer * lib/dialibartrenderer.c(renderer_finalize) : dont unref parent_instance.font here. It will be done in DiaRenderer::finalize() Just another reason for crashing at diagram close with libart renderer involved ... 2006-02-04 Hans Breuer * objects/standard/image.c : added mainpoint, patch from Torben H. Nielsen fixing bug #329603 * app/layer_widget.c : avoid writing to Layer::connectable for a diagram possibly already gone. Fixes bug #329096. * lib/persitence.c(persistence_load) : dont leak filename in case of not existing file Code review via regex "[^_l>p](malloc|free|realloc)\(" * objects/fs/function.c : what's g_strdup() must be g_free()'d * plug-ins/dxf/dxf-import.c : use g_realloc()/g_free() * plug-ins/xfig/xfig-import.c : use g_free() instead of plain free() * app/filedlg.c(file_save_as_response_callback) : before destroying the save as dialog we need to drop the dialogs diagram reference. Fixes behaviour described in bug #123225#c7 * app/interface.c(get_sheet_names) : need to sort sheets by their display name to really fix bug #160101. * objects/UML/association.c : dont leak the role_name calculated with visibility attribute, use g_strdup_printf() instead of strcat(). * configure.in : fix typo in error message * lib/object.c : remove duplicated prototype * lib/element.c : element_update_connections_rectangle() assumes nine connection points, i.e. requires 'mainpoint'. g_assert() for this. 2006-02-03 Hans Breuer * objects/network/bus.c : allow to tint it. Patch from Torben H. Nielsen, closes bug #328580. * objects/network/wanlink.c : allow to tint this as well. 2006-01-29 Hans Breuer * app/render_libart.c(draw_line) : make setting the pixel side-effect free; account for it in now (less) magic increments. Fixes bug #312147 2006-01-28 Hans Breuer * po/checktrans.py : make it work with recent pyxml (unknown url type) * po/AADL.sheet.in : remove duplicated _description => translation report works again * app/display.c : revert back to "_Discard Changes" to avoid accelerator clash. Also gtk_button_new_with_mnemonic() to 'expand' the accelerator. * lib/dia_svg.c(dia_svg_style_init) : need to initialize linecap, linejoin, linestyle to avoid invalid settings. (Nguyen Thai Ngoc Duy, bug #328945) * lib/diagdkrenderer.c : add a place fro breakpoint to detect invalid mode * lib/diarenderer.c(setfont) : if we get passed in the same font it must be ref'd before unref. * lib/text.c(set_string) : don't eat the trailing new-line Fixes bug #165092 * app/app_procs.c app/display.c app/filedlg.c attempt to provide more HIG compliant dialogs. Patch from Nguyen Thai Ngoc Duy, part of bug #138183 * app/recent_files.c(recent_file_history_clear_menu) : instead of messing with GtkMenuShell::children and gtk_widget_destroy() just use gtk_container_remove. Avoids memory corruption causing the most 'random' crashes recently. * objects/UML/message.c : can't use PROP_STD_TEXT_COLOUR_OPTIONAL cause it has PROP_FLAG_DONT_SAVE. It is designed to fill the TextAttributes - not some subset. Fixes bug #327701 * objects/UML/implements.c objects/UML/generalization.c objects/UML/constraint.c objects/UML/object.c objects/UML/large_package.c objects/UML/realizes.c : same here. * objects/UML/dependency.c : same here. Also draw the "Name" with the given color, not only the Stereotype. * objects/UML/class.c : same here. But we also need to restore explicit restore "text_color" for the load case. 2006-01-27 Hans Breuer * configure.in : error out if GLib/GTK+ version is lower than required * app/filedlg.c lib/widgets.c : more default responses. Patch from Nguyen Thai Ngoc Duy, part of bug #138183 * NEWS : Main point feature correction. The line is supposed to start at the border of the object not the bounding box. * app/commands.c : respect difference between documenters and translators and show both in about dialog. Closes bug #328711. * app/interface.c : instead of g_warning for missing shape icon but use message_warning and show the 'missing' icon * lib/dialibartrenderer.c : with Gtk+ 2.8 gdk_draw_layout() does not match pango_win32_get_context(). Use gdk_pango_get_context (). Also removed my special win32-modified-pango code for draw_string() without the help of gdk. * Makefile.am : include MAINTAINERS file in tarball * lib/conectionpoint.h : removed double include of "geometry.h" 2006-01-22 Hans Breuer * app/splash.c app/commands.c : dont share the logo and finally leak it. Instead both place load and unref the logo themself. Also unbreak GNOME case. * app/commands.c : use GtkAboutDialog instead of homegrown GTK+ or GNOME specific one. 120 lines less code and more standard. * configure.in : require GTK+ >= 2.6 * app/diapagelayout.c app/diaunitspinner.c app/layer_dialog.c : make GtkTypeInfo static const as usual elsewhere * app/recent_files.c : it almost certainly is an error to ignore the return value of g_list_remove_link() * lib/arrows.c lib/bezier_conn.[ch] lib/beziershape.h lib/boundingbox.[ch] lib/color.[ch] lib/connectionpoint.c lib/create.h lib/dia_svg.c lib/dia_xml.c lib/diaarrowchooser.c lib/diagramdata.[ch] objects/UML/activity.c objects/UML/class.[ch] objects/UML/uml.h : documentation fixes * lib/object.h lib/diagramdata.h : avoid circular inclusion * lib/connectionpoint.h lib/focus.h lib/group.h lib/handle.h lib/properties.h lib/sheet.h lib/diamenu.h : dont include "object.h", "diatypes.h" is enough. Rule of thumb: only headers declaring an inheritant of DiaObject should include "object.h" * lib/diarenderer.h : include "font.h" not strictly needed by this header, but needed in almost any plug-in/ * app/diagram_tree_menu.c app/dialogs.[hc] app/display.c app/export_png.c app/interface.c app/load_save.c app/sheets.c app/sheets_dialog.c app/sheets_dialog_callbacks.c lib/diagdkrenderer.c lib/object.c lib/propobject.c lib/text.c plug-ins/gprint/gnomeprint.c plug-ins/pixbuf/pixbuf.c plug-ins/svg/render_svg.c : some .c files now need to include "object.h" or or e.g. "intl.h" direct, formerly dargged in indirectly * plug-ins/pgf/render_pgf.c : explicit inclusion of "arrows.h" 2006-01-21 Hans Breuer * lib/connection.c lib/connection.h lib/connectionpoint.h lib/diagramdata.h lib/diarenderer.h lib/diatypes.h lib/element.h lib/geometry.h lib/handle.h lib/objchange.h lib/object.c lib/object.h : documentation tweaking * objects/UML/class_dialog.c(attributes_create_page, operations_create_page) : dont connect to a not exisiting signal. Avoids "GLib-GObject-CRITICAL **: g_signal_connect_closure_by_id: assertion 'signal_id > 0' failed" (This was a leftover of introducing the GtkTextView instead of GtkEntry) * objects/UML/class_dialog.c objects/UML/class.c objects/UML/class.h : Introduce 'comment_tagging' switch which allows to hide the rendering {documentation = } Maybe a choice between ugliness and non-standard. Fixes bug #326214. (Unrelated: started to adapt casing of variables to Dia's common coding style) * lib/object_defaults.c : pass is_default=TRUE to object_copy_props lib/proplist.c : fixed pdtpp_default() lib/propobject.c : correctly reflect is_default * object/UML/class.c : correct setting of PROP_FLAG_NO_DEFAULTS and PROP_FLAG_DONT_MERGE. With the above this fixes bug #320934 * lib/propdialogs.c : if PROP_NO_DEFAULTS is set dont try to show a widget in defaults dialog * app/display.c(initialize_display_widgets) : also append the Input Methods menu to the diagram menubar. Now fixes bug #327862. * config.h.win32 : #undef LOCALEDIR * app/app_procs.c : runtime calculation of localedir. It now is $(executable_dir)/../locale. Should help fix bug #309763 * sheets/AADL.sheet.in : remove left over xml:lang tag. ( Nguyen Thai Ngoc Duy, bug #327519) * lib/dialibartrenderer.c : make text rendering work without PangoFT2 and PangoWin32 2006-01-18 Lars Clausen * objects/UML/class.h: Enabling UML class mainpoint after failure to break it. * app/grid.c: Fix bug with grid being incorrectly drawn when gap < 1. 2006-01-14 Hans Breuer * app/paginate_psprint.c : ensure we are not producing pages for epsilon. Floating imprecision is fun. Fixes bug #133856. * app/paginate_gdiprint.cpp : same here. * plug-ins/pstricks/render_pstricks.c(draw_string) : now that I've found the nice samples from bug #156171 it was quite simple to confirm that the y value need indeed to be inverted. Fixes bug #304974. Also special case strings starting with \tex - i.e. dont escape them - to keep the use-case of direct tex input. * lib/debug.c : #include not just 2006-01-14 Hans Breuer * samples/Self/umlclass.dia : (new file) documenting part of the object relations of UMLClass. Also good for testing connections. * lib/debug.c : replace wrong call to vprintf() - missing file descriptor - with the more appropriate g_vprintf(). Thus dia_assert_true() does not smash the stack anymore on win32. * objects/UML/class.c objects/UML/class_dialog.c objects/UML/uml.h objects/UML/umlattribute.c objects/UML/umloperation.c : reverted the memory managment of UMLAttribute/UMLOperation's ConnectionPoint(s) back to how it was up until 0.94. This finally makes the UMLClass work again including undo/redo support. Fixes bug #314153 and en passant bug #326453. 2005-01-12 Lars Clausen * objects/UML/umlattribute.c: * objects/UML/class_dialog.c: Better way of handling connectionpoints: Don't copy them, just reference them. Finally fixes bug #314153 (not quite the pi bug:) * app/menus.c (display_menu_items): * app/filedlg.c (file_open_response_callback): * app/display.[ch] (copy_display): * app/commands.[ch] (view_clone_view_callback): Added functionality to clone display. Preparation for storing display info in diagram files (not happening this version, though). * INSTALL (NOTE FOR WINDOWS USERS): Added note for non-compiling users pointing at dia-installer. 2006-01-08 Hans Breuer * shapes/Gane_and_Sarson/Makefile.am : correct spelling of filenames. (Narcelio Filho, #326075) * objects/AADL/aadl.h : remove #include "app/display.h". It is not needed, plug-ins should not depend on app/* and it even breaks 'make distcheck'. * objects/AADL/Makefile.am : added edit_port_declaration.h * app/Makefile.am : added diaconv.c to EXTRA_DIST => 'make distcheck' passes again. * configure.in : use some more of gcc's useful warnings * lib/geometry.h : removed unused functions just producing warnings [sometimes it's good to read compiler warnings] * plug-ins/cairo/diacairo.c : somehow a function call got lost (left-hand operand of comma expression has no effect) * plug-ins/metapost/render_metapost.c : dia_message_filename() wants a char* not a FILE* (passing arg 1 of `dia_message_filename' from incompatible pointer type) 2006-01-07 Hans Breuer * objects/custom/shape_info.c(parse_path) : handle the case of invalid path data more gracefully, i.e. show a warning instead of crashing later on. * plug-ins/svg/svg-import.c(read_path_svg) : ditto. * configure.in sheets/Makefile.am shapes/Gane_and_Sarson shapes/Makefile.am : added Gane & Sarson shapes (Nick Moore, #319544) * objects/makefile.msc : building AADL on win32 2006-01-06 Hans Breuer * objects/AADL/aadl.h : avoid redefinition warnings by #undef min, #undef max before local definitions * objects/AADL/aadl.h : more prototypes * objects/AADL/aadltext.c : for C89 declarations must be at the beginning of a block. And Dia *must* be compileable with C89. * objects/AADL/** objects/Makefile.am sheets/Makefile.am configure.in : AADL plug-in from Pierre Duquesne. See http://mail.gnome.org/archives/dia-list/2006-January/msg00005.html for more information * sheets/AADL.sheet.in : from the above patch but modified to become translatable like the other sheet files. That is: the french translation got temporary removed cause it does not belong here. * plug-ins/pgf/render_pgf.c : no C99/C++ comments please * app/app_procs.c app/diaconv.c : get rid of run-on sentences (Adam Weinberger, bug #325567) * app/menus.c : removed some keybindings with [0-9A-F] and change some other to use . They collide with GTK's Unicode input feature. Fixes bug #320495. For rationale see: http://developer.gnome.org/projects/gup/hig/2.0/input-keyboard.html * app/display.c : pay attention to g_warnings() [should always run with --g-fatalwarnings ;)]. Only create the menubar IM menu if there actually is a menu bar. * lib/diarenderer.c : the righthand calculation accidentially broke some arcs direction. Should be fixed again. 2006-01-02 Hans Breuer * app/display.c(new_display) : also append the Input Methods menu to the diagram menubar. Fixes bug #308576. * lib/widgets.c(dia_dynamic_menu_reset) : don't use an already freed string to dia_dynamic_menu_select_entry(). Fixes bug #323592. * lib/sheet.c(dia_sheet_sort_callback) : sort sheets according to their localized name (with g_utf8_collate). Thus not relying on the capabilities of the C libraries strcmp(). Fixes bug #160101. * lib/diarenderer.c(draw_arc_with_arrows) : don't recalculate center point and width from the (arrow-)corrected new points. Otherwise a whole new wrong arc may emerge. Fixes bug #312641. 2006-01-01 Hans Breuer * objects/custom/custom_object.c(cutom_update_data) : depending on the handle moving let one scale (x or y) take precedence. (bug #308515, Eric Deplagne) * objects/UML/class.c : only perform the attributes check with attributes visible to ged rid of false warnings * objects/UML/class_dialog.c : need to setup Connection::object after uml_attribute_new() and uml_operation_new(), again less warnings but bug #314153 still not fixed. * NEWS : updated * plug-ins/python/diasvg.py : more correct svg by also writing xmlns="http://www.w3.org/200/svg" * plug-ins/python/dot.py : skip unconnected connection lines * plug-ins/python/Makefile.am : added dot.py * plug-ins/python/pydiadoc.py plug-ins/python/codegen.py : fixed typos in comments 2005-12-31 Hans Breuer * objects/UML/class.[hc] objects/UML/class_dialog.c : removed the caching of UMLClass::attributes_strings, operations_strings, templates_strings. It was broken by the recent code restructuring in bug #303744 and - if necessary at all - nowadays it should be done on the UMLAttribute, UMLOperation, UMLFormalParameter level anyway. A small, much needed simplification of the code. 2005-12-30 Hans Breuer * objects/UML/class.c : Patch from Dave Klotzbach fixes crash bug #325151 * app/app_procs.c : add command line parameter --nonew to allow avoiding the empty start-up diagram Also give a hint on where the object-libs were missing. Finally work around a misbehaviour upstreamm : g_option_context_parse() returning FALSE but not setting error. * app/commands.c app/app_diagram_tree.c app/interface.c : Use gdk_pixbuf_render_pixmap_and_mask_for_colormap as suggested by http://www.gtk.org/api/2.6/gdk/gdk-Pixbufs.html#gdk-pixbuf-render-pixmap-and-mask * lib/widgets.c : image file selection finally ported to the new gtk file chooser. Fixes bug #309383 2005-12-28 Hans Breuer * app/commands.c(file_new_callback) : convert to filename encoding before passing to new_diagram(), fixes bug #322400 * app/interface.c(create_display_shell) : don't clip width on screen height - now commited. Also lazy creation of tooltips. * objects/UML/actor.c : Actor is finally resizable, fixes bug #66915 2005-12-27 Hans Breuer * app/diapsft2renderer.c(draw_bezier_outline) : only call FT_Outline_Decompose() when FT_GLYPH_FORMAT_OUTLINE. Prefers no text output over crashing for bug #144212 * app/interface.c : removed superfluous call to dia_canvas_set_size(). Suggested by Roland Stigge, fixes bug #148149. * plug-ins/dxf/dxf-import.c : don't complain too loud on Binary DXF. It is not supported at all. Fixes bug #322101 * lib/geometry.c : removed the ifdefed GLIB_CHECK_VERSION(2,7,0) define G_IMPLEMENT_INLINES. It breaks again with glib-2-8 2005-12-27 Hans Breuer * app/navigation.c : protect on_da_button_release_event() against being called twice. Also only popdown the navigation window after the first draw (reusing nav->is_first_expose). Fixes bug #151696 * app/interface.c(create_display_shell): don't clip width on screen height, but height * lib/plug-ins.c : fixed typo in comment * lib/libdia.def : updated externals * lib/makefile.msc : build debug.obj * plug-ins/makefile.msc : building pgf in the right alphabetical order * plug-ins/pgf/render_pgf.c : include 2005-12-08 Lars Clausen * app/authors.h: * plug-ins/pgf/pgf.c: * plug-ins/pgf/render_pgf.[ch]: * plug-ins/pgf/Makefile.am: * plug-ins/Makefile.msc: * plug-ins/Makefile.am (SUBDIRS): * configure.in: Patch from Moritz Kirmse : Add support for PGF output for including in (La)TeX documents that allows PDF generation. * samples/render-test.dia: Added samples of text in different sizes, standard fonts and styles with size markers. 2005-12-04 Lars Clausen * lib/Makefile.am (gen_sources): Mark marshal files as generated. (BUILT_SOURCES): Added marshal files. 2005-12-03 Lars Clausen * lib/Makefile.am (diamarshal.c): Fix marshal rules to not talk about $(srcdir) and confusing everybody. * app/undo.c: * lib/diagramdata.c: * lib/diagramdata.h: * lib/diamarshal.list: * plug-ins/python/pydia-diagram.c: * plug-ins/python/pydia-diagramdata.c: * plug-ins/python/python-startup.py: Patch from David Johansson : Add signals emitted when objects are inserted or removed. 2005-11-13 Lars Clausen * app/display.c (update_zoom_status): Fix of bug #321387: Avoid (small) buffer overflow by using g_strdup_printf instead of sprintf. 2005-11-09 Lars Clausen * app/app_procs.c: * plug-ins/dxf/dxf-import.c (import_dxf): Don't use g_error except when reaching the statement is a bug. Using g_critical and exit() for fatally wrong inputs. * objects/UML/uml.c: * objects/UML/class.c: Patch from dklotzbach@foxvalley.net (dave Klotzbach): Fixes template rendering and converts home-brew inline doc format to javadoc. Doesn't yet fix bug #320934, but turns it into a dup. 2005-11-07 Lars Clausen * lib/object.[ch]: Add 'enclosing box' as opposed to 'bounding box' since several objects have problems of using bounding box in different ways (see bug #300055). For now, enclosing box == bounding box, but over time objects will learn to expand the bounding box to include things only rendered interactively. * app/modify_tool.c (modify_motion): Make sure highlight is reset when moving between overlapping objects. * app/interface.c (interface_toggle_mainpoint_magnetism): Redraw diagram after toggling to make red X's come and go. * lib/font.c: #ifdef'd out layout cache for bug #307320. Define it if you need faster rendering and aren't afraid of crashbugs:) * lib/objchange.c: Bugfix from dklotzbach@foxvalley.net (dave Klotzbach): Fixes null pointer problems in free function. * objects/UML/class.c * objects/UML/class.h * objects/UML/class_dialog.c: Patch from dklotzbach@foxvalley.net (dave Klotzbach): Make UML comments conform to UML 1.0 standard and allow multi-line comments. Ugly as hell, but standard. Time for a 'Strict UML' option? Fixes bug #303744. * objects/UML/state.c: Patch from Peter Allin : Add entry, exit and do descriptions to a state object. Fixes bug #65434. 2005-11-03 Lars Clausen * lib/arrows.c: * lib/attributes.c: * lib/autoroute.c: * lib/bezier_conn.c: * lib/boundingbox.c: * lib/color.c: * lib/connection.c: * lib/connectionpoint.c: * lib/dia_dirs.c: * lib/dia_image.c: * lib/dia_svg.c: * lib/dia_xml.c: * lib/diaarrowchooser.c: * lib/diaerror.c: * lib/diagdkrenderer.c: * lib/diagramdata.c: * lib/element.c: * lib/object.c: * lib/object.h: * lib/parent.c: Added documentation java-doc style. Also a few trivial cleanups. 2005-10-13 Lars Clausen * lib/connectionpoint.h (DIR_ALL): Parentheses around operations in macros. * plug-ins/hpgl/hpgl.c (export_data): Correct error message. * lib/Makefile.am: * lib/debug.[ch]: * lib/object.[ch]: * objects/UML/class.[ch]: * objects/UML/uml.h: * objects/UML/umlattribute.c: * objects/UML/umloperation.c: * objects/UML/class_dialog.c: Rework of the UML class attribute/operation handling. Now doesn't copy connection points into the dialog data, but only the "flat" data. As part of debugging made sanity check functionality. Currently still dies when deleting an attribute/operation that has a connection to it. 2005-10-09 Hans Breuer * lib/properties.h : prefer american spelling of colo(u)r for user visible strings - i.e. to be translated ones. * objects/UML/uml.c : it is Implementation. Together fixes bug #313929 ^ * po/*.po : updated (by 'make distcheck') 2005-10-09 Hans Breuer * app/display.c : allow !"toolbox on top" without restart. (Chris Hellberg, bug #310702) 2005-10-09 Hans Breuer * lib/arrows.c : patch from Radek Krahl fixing the blanking of two arrowheads, bug #310157 2005-10-08 Hans Breuer * plug-ins/python/group_props.py : show a descriptive text instead of an empty table if there are no common properties to change. Fixes bug #314432 2005-10-08 Hans Breuer * objects/UML/transition.c : inverted default direction of the direction. Patch from Peter Allin, fixes bug #318049 [You possibly need to 'rm ~/.dia/defaults.dia' to have an effect] 2005-10-08 Hans Breuer * app/Makefile.am objects/standard/Makefile.am : match the referenced icons to the needed. Make 'make distcheck' pass and thus fixes bug #312152 * objects/standard/textobj.c : no C++ comments please! 2005-10-08 Hans Breuer * objects/standard/textobj.c : preserve the position set on create [makes e.g. text positioning of diasvg_import.py work] * plug-ins/python/diasvg_import.py : restrict what eval() can do with strings from svg files. Fixes the arbitrary code execution from bug #317637 * app/pixmaps/mainpoints-(on|off).png : new icons to toggle center point magnetism. At least they are distinguishable from grid snapping. * app/makefile.msc app/Makefile.am : use them * lib/focus.c(reset_foci) : also remove_focus(). This fixes bug #172851 I also can't reproduce bug #309044 anymore (on win32). 2005-10-01 Lars Clausen * lib/connectionpoint.h (DIR_ALL): Parentheses around | expressions. * plug-ins/hpgl/hpgl.c (export_data): Listen to warnings and don't pass FILE * as gchar *. * lib/debug.[ch] (dia_assert_true): Debugging aids. 2005-09-29 Lars Clausen * objects/UML/class.h: Enabling mainpoints for UML. * objects/UML/class.c (umlclass_set_props): Make sure to always realloc connection point list. 2005-09-26 Ahmad Riza H Nst * configure.in: Added "id" in ALL_LINGUAS line. 2005-09-14 Lars Clausen * objects/UML/class.c (umlclass_load): Set mainpoint obj upon loading. Fixes bug #315427. 2005-09-11 Hans Breuer * objects/standard/arc.c objects/standard/textobj.c : fix C99isms, Dia is supposed to compile with C89 like msvc * app/makefile.msc : use the wrong center-point-magnetism icons for the win32 build, too. * plug-ins/python/pydia-error.c : dont crash on C escape sequences in the error string * plug-ins/python/pydia-render.c : dont free filename twice * plug-ins/python/dot.py : start of an exporter to DOT language which can be processed by www.graphviz.org tools 2005-09-05 Iñaki Larrañaga * configure.in: Added "doc/eu/Makefile" for Basque documentation. 2005-09-04 Iñaki Larrañaga * configure.in: Added "eu" to ALL_LINGUAS. 2005-09-04 Lars Clausen * lib/element.h (ELEMENT_COMMON_PROPERTIES): Remove object dimensions frame to make ext_attributes work again. * app/grid.c (snap_to_grid): Bugfix from Zhang Lin-bo : Use dynamic grid setting from diagram, not global prefs. * objects/standard/textobj.c: Applied patch from Grégoire Dooms : Add vertical alignment for standard text object. This should really be moved into lib/text.c and apply to all text objects. 2005-09-03 Lars Clausen * app/connectionpoint_ops.c (connectionpoint_draw): Only draw mainpoint when snap-to-objects is not on. * app/Makefile.am (ICON_PNG_PAIRS): Fake icons for snap-to-objects. * app/commands.[ch]: * app/menus.c (menus_get_image_menubar): * app/display.[ch]: * app/interface.c (create_display_shell): * app/create_object.c (create_object_button_release): * app/disp_callbacks.c (ddisplay_drop_object): * app/object_ops.[ch]: * app/connectionpoint_ops.c (ddisplay_connect_selected): * app/modify_tool.c (modify_button_release): * app/display.[ch]: Togglable snap-to-objects, also doesn't snap when moving entire object. This should be more reasonable in practical use, and can be turned off when you want to place your arrows more precisely. 2005-08-06 Hans Breuer * plug-ins/cairo/diacairo.c : increased #ifdef MESS: With Gtk+-2.7.x cairo must be available so the HAVE_CAIRO case becomes even more ugly when the user has choosen *not* to build the diacairo plug-in. If noone can come up with a very convincing reason why it has to be done this way I'll probably go back to my original dont-build-at-all approach when this breaks the next time. 2005-08-02 Lars Clausen * objects/standard/arc.c: Patch from Grégoire Dooms : An almost perfect arc autogap implementation. "There is still a small bug when the non connected end of the arc is very close to the border of the connected object. I think this is due to rounding errors in the code for SHIFT-move handle which is reused to trim the arc in autogap. Also it is not yet possible to have a startgap and an endgap from/to the same central CP." 2005-07-31 Hans Breuer * plug-ins/cairo/diacairo.c congigure.in : dont wait any longer for distributions official packages - depend on cairo 0.6.0 - fixes bug #307144 2005-07-20 Hans Breuer * lib/element.h : remove stray NULL in ELEMENT_COMMON_PROPERTIES which must match PropDescription, that is make it at least compile. 2005-07-19 Hans Breuer * app/diagram.c(new_diagram) : what comes from g_object_new() MUST NOT be g_free()'d * lib/message.h : added dia_message_filename() here as well. Mainly to not touch all files using. They *all* where using lib/message.h already! Maybe the implemantation should be moved to message.c as well cause the function has *nothing* to do with dynamic filename resolving. It is a wrapper around g_display_filename() mostly (only?) used for messages ... * lib/dia_dirs.c(dia_message_filename) : fix C99ism 2005-07-18 Lars Clausen * objects/EML/instantiation.c (instantiation_load): * objects/EML/interaction-ortho.c (interaction_ortho_type) * objects/ER/participation.c (participation_type): * objects/FS/flow-ortho.c (orthflow_type): * objects/GRAFCET/vector.c (arc_load): * objects/standard/zigzagline.c (zigzagline_type): * objects/UML/transition.c (transition_load): * objects/UML/realizes.c (realizes_load): * objects/UML/dependency.c (dependency_load): * objects/UML/generalization.c (generalization_type): * objects/UML/association.c (association_type): * objects/UML/component_feature.c (compfeat_load): Make autorouting deafult on except for old diagrams. * plug-ins/cairo/diacairo.c (export_data): * plug-ins/cgm/cgm.c (export_cgm): * plug-ins/dxf/dxf-export.c (export_dxf): * plug-ins/dxf/dxf-import.c: * plug-ins/hpgl/hpgl.c (export_data): * plug-ins/metapost/render_metapost.c: * plug-ins/pixbuf/pixbuf.c: * plug-ins/pstricks/render_pstricks.c: * plug-ins/python/pydia-render.c: * plug-ins/shape/shape-export.c: * plug-ins/svg/render_svg.c: * plug-ins/svg/svg-import.c: * plug-ins/wpg/wpg.c * plug-ins/xfig/xfig-export.c: * plug-ins/xfig/xfig-import.c: * plug-ins/xslt/xslt.c: Use dia_message_filename to ensure legal UTF-8 in message boxes. 2005-07-18 Lars Clausen * lib/element.h (ELEMENT_COMMON_PROPERTIES): Allow Element objects to have their dimensions specified in properties. Still needs to have proper update when setting properties cause constraint changes. * app/preferences.c (update_floating_toolbox): Allow toolbox_on_top setting to happen at once. * app/diagram.c * app/filedlg.c * app/load_save.c * app/render_eps.c * app/sheets_dialog_callbacks.c * lib/dia_dirs.c * lib/dia_dirs.h * lib/dia_xml.c * lib/diarenderer.c * lib/element.h * lib/object_defaults.c: Patch from lav@altlinux.ru (Vitaly Lipatov): Make filenames safe for displaying in messages - better than crashing! Mostly fixes #310087. * objects/UML/class.c: Save normal_font_height under the same name it gets loaded as. Fixes bug #310515. * doc/en/authors.xml * doc/en/usage-customization.xml * doc/en/usage-objects-special.xml * doc/en/usage-objects.xml: Some documentation fixes. Fixes bug #308315. 2005-07-17 Lars Clausen * doc/en/usage-customization.xml: * doc/en/usage-objects.xml: * doc/en/authors.xml: * doc/en/usage-objects-special.xml: Applied patch from stigge@antcom.de (Roland Stigge): Diverse typos and misencodings. Fixes bug #308315. * objects/UML/class.c (umlclass_save): Patch from i.pilcher@comcast.net: Save normal font height under correct name to reload it. Fixes bug #310515. 2005-07-10 Hans Breuer * app/connectionpoint_ops.c app/object_ops.c : make the 'whole object' connection point only center point again. That is: it is visible and far less magnetic. Only the line gap handling make it special. For me this probably fixes bug #303301 * lib/neworth_conn.c : apply the same as for bug #173031. This OrthConn fork got broken as well. Fixes bug #309381 * app/makefile.msc objects/makefile.msc : adapt to icon changes * app/interface.c app/diagram_tree.c : a char** is still not a char* and the win32 build is configured to error on sloppiness like this * plug-ins/wmf/wmf.cpp : fix typo in preprocessor condition 2005-07-10 Hans Breuer [ Take part in the toolbox icon redesign context! If you want to make them really prettier, please keep the following in mind : - the size *must* be 22x22 otherwise button reflow will get broken. Or you need to change about 800 icons at once. - one important part of Dia are control points, so maybe the icons should reflect that. (IMO gathering random icons form other apps wont work) - the icons should at least look consistent in their group ] * app/Makefile.am : use 22x22 variants mostly lent from The GIMP * app/pixmaps/*.png : added arrow-22.png scroll-22.png zoom-22.png * objects/standard/*.c : get rid of xpm includes to avoid mixing icon sets * objects/standard/pixmap/* : added arc.png beziergon.png bezierline.png box.png ellipse.png image.png line.png polygon.png polyline.png text.png zigzagline.png * objects/standard/Makefile.am : use the new icon set including text and arc ... * app/interface.c : remove the "will probably crash" debug spew 2005-07-09 Lars Clausen * objects/standard/pixmaps/*.png: * objects/standard/Makefile.am: * objects/standard/*.c: * app/interface.c: * app/diagram_tree.c (create_object_pixmap): Fix icon loading. use new icons. [Slightly belated entry] 2005-07-03 Hans Breuer * app/diagram_tree.c : dont leak display name * app/app_procs.c : dont leak GOptionContext * app/prop_widgets.c(frame_beginprop_get_widget) : Gtk api still not eating strings ... * objects/UML/class.c() : don't load properties once more which are already loaded by StdProps. In case of strings (data_string) it has even produced leaks. * app/paginate_psprint.c app/diagram.[hc] : the last of the related dialogs is gone and with it the misconception of destroying widgets from diagram::finalize() * app/display.c : ensure the diagram is still threre when we remove the display from it's list 2005-07-01 Hans Breuer * lib/widgets.c(dia_color_selector_more_callback): dont free old_color twice * plug-ins/wmf/wmf.cpp : finally added enahnced meta file option. Thus linestyles can be preserved on export - at least on NT based systems. * NEWS : clarify the wmf outside of windows issue * app/modify_too.c : fix C99ism * objects/standard/arc.c : debug spew optional at compile time 2005-06-26 Hans Breuer [ Cyrille would call it: warningectomy :-] * lib/font.c app/create_object.c : `...' might be used uninitialized in this function. Yes they were. * app/modify_tool.c : modify_tool.c:610: warning: `obj' might be used uninitialized in this function. Yes it was with textedit_activate_object() Also some static correctness. * lib/diarenderer.c:678: warning: no previous prototype for `calculate_min_radius'. Made static. * lib/dia_svg.c : ptr is a gchar * * dia_xml.c(data_point,data_rectangle) : gchar *str for parsing * lib/prop_text.c(multistringprop_get_widget) : use G_CALLBACK * app/app_procs.c : confirm warning and make dump_dependencies() static * app/autosave.c : #if 0'd old stuff * app/display.c : GTK_CHECK_MENU_ITEM() for snap_to_grid * * lib/text.c lib/font.c objects/standard/line.c object/UML/class.c objects/Istar/goal.c objects/standard/bezier.c objects/standard/beziergon.c plug-ins/cgm/cgm.c plug-ins/cairo/diacairo.c plug-ins/hpgl/hpgl.c plug-ins/wpg/wpg.c plug-ins/svg/svg-import.c plug-ins/shape/shape-export.c plug-ins/dxf/dxf-export.c plug-ins/gprint/diagnomeprintrenderer.c plug-ins/gprint/diagnomeprint.c plug-ins/xfig/xfig-export.c app/diagram_tree_menu_callbacks.c app/recent_files.c app/undo.c app/menus.c app/diapsrenderer.c app/diagram.c app/disp_callback.c : removed unused variables and functions * objects/UML/umlattribute.c objects/UML/umloperation.c objects/UML/umlparameter.c objects/UML/umlformalparameter.c : neither 'missing braces around initializer' nor 'initialization from incompatible pointer type' * objects/UML/class_dialog.c : more static * app/interface.c : static and almost const correctness and some less unitialized variables. * app/diapsft2renderer.c : use (int) casts like the original (http://imagic.weizmann.ac.il/~dov/freesw/paps/ v0.4) does * app/render_gdk.c: stop assignment from incompatible pointer type, make member functions match the prototype. * app/render_libart.c : Dito. Also stop caching the copy_gc in a static variable. Otherwise it finally leaks and also may cause BadMatch with changing windows => warning count down from about 250 to about 60, one or two hand full crash bugs less. 2005-06-26 Hans Breuer * lib/libdia.def : added dia_font_get_description, missing from my last commit * app/app_procs.c : use png_get_header_ver(NULL), that is: prefer function call over exported variable to get the runtime version of libpng 2005-06-19 Hans Breuer * plug-ins/python/Makefile.am : added codegen.py to EXTRA_DIST as suggested by Roland Stigge, bug #308310 2005-06-19 Hans Breuer * app/filedlg.c(file_export_callback) : oops, gtk_widget_show() wasn't called anymore 2005-06-18 Hans Breuer * NEWS : mention new file dialog [plugged remaining leaks from bug #142669] * lib/prop_attr.c(fontprop_free) : not only unref the font but free the property itself, too. * app/diagram_tree.c(create_diagram_children): remember the original list start to not only free the last element * lib/prop_sdarray.c:64: warning: `arrayprop_free' defined but not used. Here it meant a potentially huge leak. 2005-06-18 Hans Breuer * po/POTFILES.in : removed app/diaconv.c which isn't referenced by app/Makefile.am anymore either. Should finally fix 'make distcheck' for others, too. ( Roland Stigge, bug #144527 ) 2005-06-18 Hans Breuer * plug-ins/wmf/Makefile.am : prevent installation. It doesn't do anything useful on *NIX and even seems to be linked wrong by gcc (or me;). Fixes bug #172830 2005-06-18 Hans Breuer * app/textedit.[hc] lib/arrows.[hc] plug-ins/xslt/xslt.h plug-ins/xslt/xsltdialog.c plug-ins/xslt/xslt.c : fix for sloppiness in function declarations. 'f();' for a function without parameters is a C++ism. Though I can't get any of my compilers to warn about it. Finally fixes bug #142663. 2005-06-18 Hans Breuer * app/textedit.[hc] lib/arrows.[hc] plug-ins/xslt/xslt.h plug-ins/xslt/xsltdialog.c plug-ins/xslt/xslt.c : fix for sloppiness in function declarations. 'f();' for a function without parameters is a C++ism. Though I can't get any of my compilers to warn about it. Finally fixes the rest of bug #142663. 2005-06-18 Hans Breuer * lib/font.h lib/font.c : _DiaFont is now private to prepare bigger changes but doesn't hurt anyway. See bug #162034 * app/diapsft2renderer.c app/modify_tool.c plug-ins/gprint/diagnomeprintrenderer.c : use dia_font_get_description() instead of messing with internals * app/display.c : give interactive renderers more begin/end render. It is guaranteed that the scale wont change between these. 2005-06-18 Hans Breuer * app/app_procs.c : const correctness for stderr_message_internal * app/dia-props.c : gtk_toggle_*() functions want GTK_TOGGLE_BUTTON not GTK_CHECK_BUTTON, also some G_CALLBACK casts * app/disp_callbacks.c : don't dereference the to the function call when the function pointer in meant to be checked against 0 * app/interface.c : warning fixes by using correct types * app/modify_tool.c : describe_props() members returns const pointer * app/render_libart.c : removed most of the render function again. They happily live in lib/dialibartrenderer.c since almost 3 years http://cvs.gnome.org/viewcvs/dia/app/render_libart.c?r1=1.31&r2=1.32 * lib/dia_dirs.c : dia_get_canonical_path() const correctness * lib/dia_svg.c lib/dia_xml.c : some char to xmlChar changes * lib/dialibartrenderer.c(set_line_join): actually set the join_style instead of the cap_style. Don't initialize Art* enums with GDK_* constants. Both mentioned in bug #159814 and not warned by most other compilers. * lib/diagtkfontsel.c : at least the watcom compiler did not like the trailing colon in the GtkTypeInfo initialization * lib/properties.c : avoid redefinition of LIBDIA_COMPILATION * lib/dialinechooser.c lib/diagdkrenderer.c : there may be a difference between char and gint8 * plug-ins/metapost/render_metapost.c : replace invalid escape \% with %% * plug-ins/wpg/wpg.c : consitently use guint8 * config.h.win32 : change HAVE_* defines to 1 not empty, avoids redefinition warnings for python and xslt plug-ins 2005-06-18 Hans Breuer * lib/diagramdata.c : really get rid of diagram_data_destroy and new_diagram_data [ no previous prototype for `...' is either a sign of missing static or of a function to vanish :-] * lib/geometry.c : apparently the G_INLINE stuff was working only with particular GLib version(s), glib-2.6.4 does not. Conditionally reverting to the old mecanics. 2005-06-17 Hans Breuer * plug-ins/python/pydia-*.c : include order tweaking to get rid of redefinition warnings. Ensure to include before any 'system' header, some dragged in by glib.h * plug-ins/python/pydia-diagramdata.c(PyDiaDiagramData_Str) pydia-properties.c(PyDiaProperties_Str) plug-ins/python/pydia-property.c(PyDiaProperty_Str) : use %p to format pointers * plug-ins/python/pydia-geometry.c(PyDiaArrow_Str) : dont cast to float for %d * plug-ins/python/pydia-handle.c(PyDiaHandle_Connect) : use correct pointer type * plug-ins/python/pydia-image.c(PyDiaImage_Str) : dont discard qualifier aka dont free const strings * plug-ins/python/pydia-properties.c : casts to PyCFunction * plug-ins/python/pydia-property.c : removed unused function, make ensure_quarks() static * plug-ins/python/pydia-render.c : removed unused vars, use the correct signature for begin_render (dia_py_renderer_finalize): pluged a leak => except -fno-strict-aliasing there is no warning left in all of PyDia 2005-06-12 Hans Breuer * app/filedlg.c : really fix the file extension mismatch on export dialog by working around some gtk+-2.6 behaviour (bug #307378). Fixes bug #305850 2005-06-11 Hans Breuer * configure.in config.h.win32.h : mark as +cvs (should have been done directly after the 0.94 release) * NEWS : attempt to summarize 2/3 year of development [ WANT_AUTOMAKE=1.7 ./autogen.sh && ./conifugre --enable-maintatiner-mode && make distcheck finally passes again ] * app/app_procs.c : force use of POPT for the GNOME case, otherwise app/run_dia.sh --credits > THANKS => Segmentation fault * app/pixmaps/Makefile.am : added group.png and ungroup.png * Makefile.am : work around scrollkeeper bug * doc/en/Makefile.am : explicit list DISTCLEANFILES = dia.1 * po/*.po : 'noise' produced by make dist 2005-06-10 Hans Breuer * lib/properties.h : define PROP_STD_SHOW_BACKGROUND_OPTIONAL ... * objects/custom/custom_object.c : ... and use it to avoid complains about missing attribute "show_background". It is safe to leave this uninitialized. Same for flip_* and "text", the latter with comment cause it usually is *not* safe to do it for the general case. Fixes remaining issues with bug #169006 which where caused by an incompatible change in the shape file. * app/commands.c : use "gnome-open" instead of "netscape" as fallback for $BROWSER not set. Still not optimal but better to try some common desktop tool than an obsolete browser;) Fixes bug #307142. Also some whitespace changes. * app/interface.c(toolbox_delete): avoid random return value. Patch from Stanislav Brabec, fixes bug #307143 * shapes/Cisco/Makefile.am : added a bunch of new shapes/pngs. Patch from Torben H. Nielsen (bugzilla is still the preferred way) http://mail.gnome.org/archives/dia-list/2005-June/msg00015.html 2005-06-06 Lars Clausen * app/diagram.c: * app/modify_tool.c: * app/textedit.[ch]: Better support for text edit highlight. * app/connectionpoint_ops.c (connectionpoint_draw): Stop making the mainpoint extra visible. 2005-06-02 Lars Clausen * objects/UML/class_dialog.c: * objects/UML/class.[ch]: The final fixes for mainpoint on UML Class. * sheets/cisco*.in, shapes/Cisco/*: New set of Cisco icons from Ian Redfern, now in color and with mainpoints! Very pretty! 2005-06-02 Hans Breuer * objects/UML/class_dialog.c : the memory managment with respect to attribute/operation connections was/is a mess. But it should work again ;) * samples/UMLPackages.dia samples/Composite-Action.dia : some diagrams directly from the UML Specification - to show the power of Dia and some weakness. Watch the bug reports following ;) 2005-06-01 Hans Breuer * app/dia.def : export diagram_update_connections_object * plug-ins/python/pydia-diagram.c : wrap diagram_update_connections_object Patch from Paolo Bernardi, together with the property setting closes bug #300572 2005-06-01 Hans Breuer * plug-ins/python/pydia-property.c : complete refactoring of property setting, now also supports setting of property arrays * plug-ins/python/pydia-*.c plug-ins/python/diamodule.c : adapt to Python namespacing conventions * plug-ins/python/pydiadoc.py : use the stuff above to produce more complete UML Classes with attributes and operations * plug-ins/python/otypes.py : now also show the properties of the objects * objects/UML/class.c(umlclass_set_props) : need to update object::connections (pointers), they might be changed with attributes and opertions changing * plug-ins/python/pydia-property.c : PointArray and BezPointArray property getters were broken. Apparently noone used them before. * plug-ins/python/pydia-diagram.c plug-ins/python/pydia-diagramdata.c : moved methods which only operate on the DiagramData to the latter file. To get on the DiagramData object of a Diagram use diagram.data. [In C the Diagram is a subclass of DiagramData, but I don't know how to reflect that in the bindings. And for backward compatibility there also is the 'data' member.] * objects/UML/uml.c objects/UML/umlattribute.c objects/UML/umloperation.c objects/UML/umlparameter.c : describe enums with PropEnumData * app/commands.c(view_show_all_callback) : if there is something selected show that instead of all exisiting objects. If there is noting or all selcted it "Show all" shows the old behaviour. * lib/parent.[hc] lib/object.c app/disp_callbacks.c app/diagram.c : plug some memory leaks and use less allocations caused by misguided API. Also some adaption to common coding style * objects/UML/class.h : add some comment about the brokeness of UML_MAINPOINT * app/makefile.msc : added new icons and build as console app while not releaseing to the general public * objects/custom/shape_info.c : use g_strdup("") for a field to be g_free()'d and keep a refernce when storing the a font from style="" in s.font. This should finally allow to have shapes with fully predefined text (and no 'random' crashes) * plug-ins/gprint/diagnomeprint.c : disable GNOME_SVG until I've found a program capable to interpret it's output 2005-05-31 Lars Clausen * sheets/ER.sheet.in: No more xpms referenced in sheets. Fixes bug #151811. 2005-05-30 Pawan Chitrakar * configure.in: Added ne in ALL_LINGUAS 2005-05-24 Lars Clausen * lib/font.c: Change to make DIA_FONT_ITALIC turn into -Oblique PS fonts for legacy fonts. They don't have DIA_FONT_OBLIQUE setting anyway. 2005-05-23 Lars Clausen * lib/paper.c: Added Ledger size paper. Fixes bug #305254. 2005-05-21 Lars Clausen * lib/diaarrowchooser.c: * lib/arrows.[ch]: Patch from Radek Krahl : Add 'infinite' line (three dots) arrowhead. Fix line length in arrow preview. And fix typo. Fixes bug #303904. 2005-05-20 Hans Breuer * lib/text.c : advice from valgrind and data_string() review: neither g_free() memory on the stack * objects/GRAFCET/boolequation.c : ... nor const strings * objects/UML/association.c:934 : definitely lost. Even g_strdup("") wants to be freed * app/diagram.c : a g_object_ref() following g_object_new() is almost always wrong. Why would we need two refernces? * app/app_procs.c : same here.If it crashes later on someone is dropping refernces he does not own, and *that* needs to be fixed. This is reverting "Remember to ref g_object_new'd object" (bug #170972) below, which causes more harm (leaking, hiding bugs elsewhere) than good. * app/app_procs.c lib/diagramdata.[ch] lib/libdia.def : get rid of diagramdata_destroy() which was only a wrapper to g_object_unref() * app/display.c(selection_changed) : don't g_strdup_printf() without g_free() later /or/ a C++ comment of me mostly denotes an error * app/diagram.c : diagram_parent_sort_cb make signature match GCompareFunc * lib/widget.c : dia_dynamic_menu_select_entry() cleanup. If it takes a const gchar* entry it must not eat memory, added a lot of g_free() and some const. Fixed a bunch - i.e. *all* - warnings. * lib/widget.h : removed unused/deleted functions * app/layer_dialog.c(dia_layer_widget_connectable_toggled) : trying to avoid 'Invalid write of size 4', no luck yet 2005-05-19 Lars Clausen * objects/UML/class.c: * objects/UML/class.h: * objects/UML/class_dialog.c: Work on getting a proper mainpoint for uml class object. #ifdef'd out right now. 2005-05-18 Lars Clausen * objects/standard/line.c: Make line adjust its actual endpoints for autogap -- looks and feels better. * objects/standard/arc.c: * lib/geometry.h: * app/modify_tool.c: Patch from Grégoire Dooms : First stab at autogap for arcs, and shifted arc angle movement. 2005-05-16 Hans Breuer * lib/widget.c : variable declarations need to be at the start of a block, at least as we are not using C++ or C99 * plug-ins/python/pydia-property.c : implement the read part for Property arrays - aka. umlclass.properties["operations"], umlclass.properties["attributes"] They are working quite well as can be seen with export-object.py * plug-ins/python/codegen.py : prove it once more with the generation of C++ or Python code from an UML Diagram. Simply save as .py or .cxx ... * plug-ins/python/Makefile.am : install it 2005-05-16 Lars Clausen * app/pixmaps/{un}group.png: * app/Makefile.am (ICON_PNG_PAIRS): * app/menus.c (display_menu_items): New icons for grou/ungroup finally added, closing bug #105519. * app/Makefile.am: Dependencies for pixmaps. * app/pixmaps/connectable.png: An icon that actually makes sense for switching connectability. 2005-05-15 Hans Breuer * lib/group.c object/UML/classicon.c : fixed leftovers of 'Adding connectionpoint to _move_handle * lib/widgets.c : gtk+ *NEVER* eats strings, so gtk_something(widget, g_strdup()) is *ALWAYS* a memory leak. Plug some more. [ In preparation to make UML operations/attributes/parameters setable by Python UML class became more StdProp conformant. A nice experience to be the first to use the PROP_TYPE_DARRAY stuff about four years after it was written ;-) ] * objects/UML/umlattribute.c objects/UML/umloperation.c objects/UML/umlparameter.c objects/UML/umlformalparameter.c : (new files) split from objects/UML/uml.c and made StdProp aware * objects/UML/class.c : finally make "attributes", "operations", "templates"