Compare commits
25 Commits
v0.2.0
...
924617e1ce
| Author | SHA1 | Date | |
|---|---|---|---|
|
924617e1ce
|
|||
|
67acddb26d
|
|||
|
bc1dd64fdf
|
|||
|
8c290df7b5
|
|||
|
5fc35517cb
|
|||
|
5a4cffd35e
|
|||
|
3a087ad581
|
|||
|
4305c603e9
|
|||
|
cbe23b7bb6
|
|||
|
2d103ed454
|
|||
|
885ccb46a3
|
|||
|
47fb9653b8
|
|||
|
42b6da1ffe
|
|||
|
98f16c2c76
|
|||
|
03c6ae0750
|
|||
|
95f53863ec
|
|||
|
8ac267c8db
|
|||
|
45dd1a4a86
|
|||
|
2c5fc3ebdd
|
|||
|
1ca42eb8e2
|
|||
|
8815d72db7
|
|||
|
3102bc0cb9
|
|||
|
7f357cb7c8
|
|||
|
b4db65d246
|
|||
|
af14119165
|
123
CMakeLists.txt
123
CMakeLists.txt
@@ -1,23 +1,14 @@
|
||||
project (logdiag C)
|
||||
cmake_minimum_required (VERSION 2.8)
|
||||
|
||||
# Default to 2.8 behaviour
|
||||
cmake_policy (VERSION 2.8)
|
||||
# The last version with Windows XP support is 3.13, we want to keep that
|
||||
cmake_minimum_required (VERSION 3.10)
|
||||
project (logdiag VERSION 0.2.1 LANGUAGES C)
|
||||
|
||||
# Options
|
||||
option (OPTION_USE_VERA "Use vera++ for source code style checks" OFF)
|
||||
option (OPTION_NOINSTALL "Only for developers; work without installing" OFF)
|
||||
option (OPTION_NOINSTALL "For developers only--work without installing" OFF)
|
||||
option (OPTION_GTKDOC "For developers only--enable use of gtk-doc" OFF)
|
||||
option (BUILD_TESTING "Build tests" OFF)
|
||||
|
||||
# Project information
|
||||
set (project_VERSION_MAJOR "0")
|
||||
set (project_VERSION_MINOR "2")
|
||||
set (project_VERSION_PATCH "0")
|
||||
|
||||
set (project_VERSION "${project_VERSION_MAJOR}")
|
||||
set (project_VERSION "${project_VERSION}.${project_VERSION_MINOR}")
|
||||
set (project_VERSION "${project_VERSION}.${project_VERSION_PATCH}")
|
||||
|
||||
set (project_URL "https://git.janouch.name/p/logdiag")
|
||||
|
||||
# For custom modules
|
||||
@@ -28,7 +19,7 @@ if (WIN32)
|
||||
set (WIN32_DEPENDS_PATH ${PROJECT_SOURCE_DIR}/win32-depends)
|
||||
list (APPEND CMAKE_PREFIX_PATH ${WIN32_DEPENDS_PATH})
|
||||
list (APPEND CMAKE_INCLUDE_PATH ${WIN32_DEPENDS_PATH}/lib)
|
||||
list (APPEND CMAKE_C_FLAGS "-mms-bitfields")
|
||||
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mms-bitfields")
|
||||
|
||||
if (CMAKE_CROSSCOMPILING)
|
||||
list (APPEND CMAKE_FIND_ROOT_PATH ${WIN32_DEPENDS_PATH})
|
||||
@@ -90,7 +81,6 @@ else (NOT WIN32)
|
||||
# For whatever reason this now seems to be required
|
||||
set (LUA_INCLUDE_DIR "${WIN32_DEPENDS_PATH}/include")
|
||||
|
||||
# XXX: this seems to require CMake 3.0 ... include it in the project?
|
||||
find_package (Lua REQUIRED)
|
||||
if (LUA_VERSION_STRING VERSION_LESS "5.2")
|
||||
message (FATAL_ERROR "Lua 5.2 not found")
|
||||
@@ -114,7 +104,7 @@ foreach (file ${project_PO_FILES})
|
||||
list (APPEND project_TRANSLATIONS "${translation}")
|
||||
endforeach (file)
|
||||
|
||||
# Documentation
|
||||
# Documentation--gtk-doc 1.25 is required
|
||||
find_package (GtkDoc 1.25)
|
||||
set (project_DOC_DIR "${PROJECT_BINARY_DIR}/liblogdiag")
|
||||
|
||||
@@ -185,6 +175,8 @@ if (WIN32)
|
||||
endif (WIN32)
|
||||
|
||||
# Generate a configure file
|
||||
add_definitions (-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_36)
|
||||
add_definitions (-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_36)
|
||||
configure_file (${PROJECT_SOURCE_DIR}/config.h.in
|
||||
${PROJECT_BINARY_DIR}/config.h)
|
||||
include_directories (${PROJECT_BINARY_DIR})
|
||||
@@ -250,20 +242,33 @@ if (BUILD_TESTING)
|
||||
foreach (name ${logdiag_TESTS})
|
||||
add_executable (test-${name} tests/${name}.c)
|
||||
target_link_libraries (test-${name} liblogdiag ${logdiag_LIBS})
|
||||
|
||||
add_test (test-${name} test-${name})
|
||||
add_test (NAME test-${name} COMMAND test-${name})
|
||||
list (APPEND logdiag_TEST_TARGETS test-${name})
|
||||
endforeach (name)
|
||||
if (WIN32 AND NOT CMAKE_CROSSCOMPILING)
|
||||
set_tests_properties (${logdiag_TEST_TARGETS}
|
||||
PROPERTIES ENVIRONMENT "PATH=${WIN32_DEPENDS_PATH}/bin")
|
||||
endif ()
|
||||
endif (BUILD_TESTING)
|
||||
|
||||
# Generate documentation
|
||||
if (GTKDOC_FOUND)
|
||||
# FIXME: not our bug but xml/gtkdocentities.ent cannot be passed
|
||||
target_link_libraries (liblogdiag ${logdiag_LIBS})
|
||||
if (OPTION_GTKDOC AND GTKDOC_FOUND)
|
||||
# Extracted LDFLAGS didn't contain -l in CMake 3.21.3 and gtk-doc 1.33.2,
|
||||
# pass them explicitly and work around insanity; CMake still exits with
|
||||
# an error and gtk-doc produces empty HTML documentation
|
||||
string (REGEX REPLACE "(;)([^-])" "\\1-l\\2" xldflags "${logdiag_LIBS}")
|
||||
set_target_properties (liblogdiag PROPERTIES LINK_LIBRARIES "")
|
||||
|
||||
# The "official" module wants an XML file I don't want to give it
|
||||
file (WRITE ${PROJECT_BINARY_DIR}/liblogdiag-docs-dummy.xml "<book/>")
|
||||
|
||||
# XXX: not our bug but xml/gtkdocentities.ent cannot be passed
|
||||
# XXX: this causes `make clean` to remove the entire build directory,
|
||||
# because it marks CMAKE_CURRENT_BINARY_DIR as an output
|
||||
gtk_doc_add_module (liblogdiag
|
||||
SOURCE ${PROJECT_SOURCE_DIR}/liblogdiag
|
||||
SUFFIXES c h
|
||||
# The "official" module wants an XML file I don't want to give it
|
||||
XML ${PROJECT_BINARY_DIR}/liblogdiag/liblogdiag-docs.xml
|
||||
SUFFIXES c h LDFLAGS "-l${xldflags}"
|
||||
XML ${PROJECT_BINARY_DIR}/liblogdiag-docs-dummy.xml
|
||||
LIBRARIES liblogdiag)
|
||||
endif ()
|
||||
|
||||
@@ -340,19 +345,22 @@ if (WIN32)
|
||||
install (DIRECTORY
|
||||
${WIN32_DEPENDS_PATH}/bin/
|
||||
DESTINATION .
|
||||
FILES_MATCHING PATTERN "*.dll"
|
||||
PATTERN "libgettext*" EXCLUDE)
|
||||
FILES_MATCHING PATTERN "*.dll")
|
||||
install (DIRECTORY
|
||||
${WIN32_DEPENDS_PATH}/etc/
|
||||
DESTINATION etc)
|
||||
install (DIRECTORY
|
||||
${WIN32_DEPENDS_PATH}/lib/gdk-pixbuf-2.0
|
||||
DESTINATION lib)
|
||||
DESTINATION lib
|
||||
FILES_MATCHING PATTERN "*" PATTERN "*.a" EXCLUDE)
|
||||
install (DIRECTORY
|
||||
${WIN32_DEPENDS_PATH}/share/glib-2.0/schemas
|
||||
DESTINATION share/glib-2.0
|
||||
FILES_MATCHING PATTERN "org.gtk.Settings.*")
|
||||
|
||||
install (DIRECTORY
|
||||
${WIN32_DEPENDS_PATH}/share/icons/Adwaita
|
||||
DESTINATION share/icons OPTIONAL)
|
||||
install (FILES
|
||||
${WIN32_DEPENDS_PATH}/share/icons/hicolor/index.theme
|
||||
DESTINATION share/icons/hicolor)
|
||||
@@ -369,6 +377,8 @@ if (WIN32)
|
||||
DESTINATION share/locale)
|
||||
endif (translation_found GREATER -1)
|
||||
endforeach (locale)
|
||||
|
||||
install (SCRIPT Win32Cleanup.cmake)
|
||||
else (WIN32)
|
||||
install (TARGETS logdiag DESTINATION bin)
|
||||
install (FILES share/logdiag.desktop DESTINATION share/applications)
|
||||
@@ -380,25 +390,20 @@ else (WIN32)
|
||||
install (FILES LICENSE NEWS DESTINATION share/doc/${PROJECT_NAME})
|
||||
endif (WIN32)
|
||||
|
||||
install (FILES ${GSETTINGS_SCHEMAS}
|
||||
DESTINATION share/glib-2.0/schemas)
|
||||
install (CODE " # DESTDIR is not in use on Windows
|
||||
install (DIRECTORY share/gui share/library DESTINATION share/${PROJECT_NAME})
|
||||
install (FILES ${GSETTINGS_SCHEMAS} DESTINATION share/glib-2.0/schemas)
|
||||
install (CODE " # DESTDIR is not in use on Windows (WIN32 is only native here!)
|
||||
if (WIN32 OR \"\$ENV{DESTDIR}\" STREQUAL \"\")
|
||||
execute_process (COMMAND ${GLIB_COMPILE_SCHEMAS_EXECUTABLE}
|
||||
execute_process (COMMAND \"${GLIB_COMPILE_SCHEMAS_EXECUTABLE}\"
|
||||
\"\${CMAKE_INSTALL_PREFIX}/share/glib-2.0/schemas\")
|
||||
endif (WIN32 OR \"\$ENV{DESTDIR}\" STREQUAL \"\")")
|
||||
|
||||
install (DIRECTORY share/gui share/library
|
||||
DESTINATION share/${PROJECT_NAME})
|
||||
endif ()")
|
||||
|
||||
# CPack
|
||||
set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Schematic editor")
|
||||
set (CPACK_PACKAGE_VENDOR "Premysl Janouch")
|
||||
set (CPACK_PACKAGE_CONTACT "Přemysl Janouch <p@janouch.name>")
|
||||
set (CPACK_PACKAGE_VENDOR "Premysl Eric Janouch")
|
||||
set (CPACK_PACKAGE_CONTACT "Přemysl Eric Janouch <p@janouch.name>")
|
||||
set (CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
|
||||
set (CPACK_PACKAGE_VERSION_MAJOR ${project_VERSION_MAJOR})
|
||||
set (CPACK_PACKAGE_VERSION_MINOR ${project_VERSION_MINOR})
|
||||
set (CPACK_PACKAGE_VERSION_PATCH ${project_VERSION_PATCH})
|
||||
set (CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
|
||||
|
||||
if (WIN32)
|
||||
set (CPACK_GENERATOR "NSIS;ZIP")
|
||||
@@ -408,26 +413,32 @@ else (WIN32)
|
||||
endif (WIN32)
|
||||
|
||||
set (CPACK_PACKAGE_FILE_NAME
|
||||
"${PROJECT_NAME}-${project_VERSION}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")
|
||||
set (CPACK_PACKAGE_INSTALL_DIRECTORY
|
||||
"${PROJECT_NAME} ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}")
|
||||
"${PROJECT_NAME}-${PROJECT_VERSION}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")
|
||||
set (CPACK_PACKAGE_INSTALL_DIRECTORY "${PROJECT_NAME} ${CPACK_PACKAGE_VERSION}")
|
||||
|
||||
# XXX: It is still possible to install multiple copies, making commands collide.
|
||||
set (CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL ON)
|
||||
set (CPACK_PACKAGE_INSTALL_REGISTRY_KEY "${PROJECT_NAME}")
|
||||
|
||||
# FIXME: It is possible to install multiple copies. Everything screws up then.
|
||||
set (CPACK_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/share\\\\header.bmp")
|
||||
set (CPACK_NSIS_INSTALLED_ICON_NAME "logdiag.exe")
|
||||
set (CPACK_NSIS_CREATE_ICONS_EXTRA "
|
||||
CreateShortCut '\$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\logdiag.lnk' '\$INSTDIR\\\\logdiag.exe'")
|
||||
set (CPACK_NSIS_DELETE_ICONS_EXTRA "
|
||||
Delete '\$SMPROGRAMS\\\\$MUI_TEMP\\\\logdiag.lnk'")
|
||||
set (CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
|
||||
set (CPACK_NSIS_CREATE_ICONS_EXTRA [[
|
||||
CreateShortCut '$SMPROGRAMS\\$STARTMENU_FOLDER\\logdiag.lnk' '$INSTDIR\\logdiag.exe'
|
||||
]])
|
||||
set (CPACK_NSIS_DELETE_ICONS_EXTRA [[
|
||||
Delete '$SMPROGRAMS\\$MUI_TEMP\\logdiag.lnk'
|
||||
]])
|
||||
set (CPACK_NSIS_EXTRA_INSTALL_COMMANDS [[
|
||||
WriteRegStr HKCR '.ldd' '' 'logdiag.Diagram'
|
||||
WriteRegStr HKCR 'logdiag.Diagram' '' 'logdiag Diagram'
|
||||
WriteRegStr HKCR 'logdiag.Diagram\\\\shell\\\\open\\\\command' '' '\\\"\$INSTDIR\\\\logdiag.exe\\\" \\\"%1\\\"'
|
||||
WriteRegStr HKCR 'logdiag.Diagram\\\\shell\\\\edit\\\\command' '' '\\\"\$INSTDIR\\\\logdiag.exe\\\" \\\"%1\\\"'
|
||||
System::Call 'shell32::SHChangeNotify(i,i,i,i) (0x08000000, 0x1000, 0, 0)'")
|
||||
set (CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS "
|
||||
WriteRegStr HKCR 'logdiag.Diagram\\shell\\open\\command' '' '\"$INSTDIR\\logdiag.exe\" \"%1\"'
|
||||
WriteRegStr HKCR 'logdiag.Diagram\\shell\\edit\\command' '' '\"$INSTDIR\\logdiag.exe\" \"%1\"'
|
||||
System::Call 'shell32::SHChangeNotify(i,i,i,i) (0x08000000, 0x1000, 0, 0)'
|
||||
]])
|
||||
set (CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS [[
|
||||
DeleteRegKey HKCR 'logdiag.Diagram'
|
||||
System::Call 'shell32::SHChangeNotify(i,i,i,i) (0x08000000, 0x1000, 0, 0)'")
|
||||
System::Call 'shell32::SHChangeNotify(i,i,i,i) (0x08000000, 0x1000, 0, 0)'
|
||||
]])
|
||||
|
||||
string (REPLACE "https://" "https:\\\\\\\\" project_URL_NSIS "${project_URL}")
|
||||
set (CPACK_NSIS_URL_INFO_ABOUT "${project_URL_NSIS}")
|
||||
@@ -446,7 +457,7 @@ set (CPACK_RPM_PACKAGE_URL "${project_URL}")
|
||||
|
||||
set (CPACK_SOURCE_GENERATOR "TGZ;ZIP")
|
||||
set (CPACK_SOURCE_IGNORE_FILES "/\\\\.git;/build;/CMakeLists.txt.user;/win32-depends;/liblogdiag/ld-marshal.[ch]")
|
||||
set (CPACK_SOURCE_PACKAGE_FILE_NAME "${PROJECT_NAME}-${project_VERSION}")
|
||||
set (CPACK_SOURCE_PACKAGE_FILE_NAME "${PROJECT_NAME}-${PROJECT_VERSION}")
|
||||
|
||||
include (CPack)
|
||||
|
||||
|
||||
2
LICENSE
2
LICENSE
@@ -1,4 +1,4 @@
|
||||
Copyright (c) 2010 - 2018, Přemysl Janouch <p@janouch.name>
|
||||
Copyright (c) 2010 - 2021, Přemysl Eric Janouch <p@janouch.name>
|
||||
|
||||
Permission to use, copy, modify, and/or distribute this software for any
|
||||
purpose with or without fee is hereby granted.
|
||||
|
||||
8
NEWS
8
NEWS
@@ -1,3 +1,9 @@
|
||||
Version 0.2.1
|
||||
- Set up grounds for 64-bit Windows builds using the latest GTK+ 3.
|
||||
- Made the Windows installer ask to uninstall previous versions first.
|
||||
- Worked around a mysterious recent GTK+ bug with symbol dragging.
|
||||
- Put a default filename in the save dialog, ensuring a file extension.
|
||||
|
||||
Version 0.2.0
|
||||
- Added a library pane instead of a toolbar.
|
||||
- Added scrolling using the middle mouse button.
|
||||
@@ -15,7 +21,7 @@ Version 0.2.0
|
||||
- This is the last version supporting Windows XP (we use an outdated GTK+
|
||||
bundle, support for this operating system has been dropped in version 3.18).
|
||||
- Various unimportant fixes and changes.
|
||||
- Known issues: Windows XP looks ugly now and there's little we can do.
|
||||
- Known issues: Windows XP looks ugly with the classic theme, little we can do.
|
||||
|
||||
Version 0.1.2
|
||||
- Updated symbol library.
|
||||
|
||||
49
README.adoc
49
README.adoc
@@ -3,8 +3,8 @@ logdiag
|
||||
|
||||
'logdiag' is a simple multiplatform schematic editor written in GTK+.
|
||||
|
||||
This software is considered to be of alpha quality and isn't recommended for
|
||||
regular usage.
|
||||
This software has never really been finished, and is no longer being worked on,
|
||||
although I strive to keep it building on Windows XP and elsewhere.
|
||||
|
||||
image::docs/user-guide/logdiag-en.png[align="center"]
|
||||
|
||||
@@ -16,7 +16,7 @@ a package with the latest development version from Archlinux's AUR.
|
||||
Requirements
|
||||
------------
|
||||
Runtime dependencies: GTK+ >= 3.8, json-glib >= 0.10.4, lua >= 5.2 +
|
||||
Build dependencies: CMake >= 2.8
|
||||
Build dependencies: CMake >= 3.10
|
||||
|
||||
Build from source on Unix-like systems
|
||||
--------------------------------------
|
||||
@@ -47,60 +47,65 @@ CMake offers DEB and RPM.
|
||||
|
||||
After _cpack_ finishes making the package, install this file.
|
||||
|
||||
$ fakeroot cpack -G DEB
|
||||
$ cpack -G DEB
|
||||
# dpkg -i logdiag-version-system-arch.deb
|
||||
|
||||
Leave out the fakeroot for CMake >= 2.8.9, it's been fixed since.
|
||||
|
||||
Build from source on Windows
|
||||
----------------------------
|
||||
_Note that with the current method we're stuck with GTK+ 3.10.4 at best._
|
||||
_Note that using the current method we're stuck with GTK+ 3.8.2, which works
|
||||
worse on Windows 10, but better on XP and under WINE._
|
||||
|
||||
First install CMake >= 3.1 and MinGW. Add both to your system path. If you want
|
||||
to build an installation package, also install NSIS.
|
||||
First, install CMake and MinGW. Add both to your system path. If you want
|
||||
to build an installation package, also install NSIS. If you want to build
|
||||
within a path containing spaces,
|
||||
https://gitlab.kitware.com/cmake/cmake/-/issues/22396[fix] your CMake's
|
||||
FindPkgConfig.cmake module to say:
|
||||
|
||||
separate_arguments(_pkgconfig_invoke_result UNIX_COMMAND "${_pkgconfig_invoke_result}")
|
||||
|
||||
Run the following command in the directory with source files to automatically
|
||||
fetch and setup all dependencies (contact me if the script becomes obsolete,
|
||||
it's easy to fix but I usually update it only just a short while before
|
||||
releasing a new version in order to resolve compatibility issues):
|
||||
fetch and set up all dependencies (note that Windows XP is no longer able to
|
||||
download from HTTPS sources, you'll have to run this externally):
|
||||
|
||||
> cmake -P Win32Depends.cmake
|
||||
|
||||
Reserve a directory for an out-of-source build:
|
||||
Reserve a directory for an out-of-source build and let CMake prepare the build:
|
||||
|
||||
> mkdir build
|
||||
> cd build
|
||||
|
||||
Let CMake prepare the build:
|
||||
|
||||
> cmake .. -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release
|
||||
|
||||
Now you can generate a package with CPack. You may choose between:
|
||||
|
||||
1. An NSIS-based installation package:
|
||||
|
||||
+
|
||||
> cpack -G NSIS
|
||||
|
||||
2. A portable ZIP package:
|
||||
|
||||
+
|
||||
> cpack -G ZIP
|
||||
|
||||
By default, that is if you specify no generator, both packages are built.
|
||||
|
||||
Cross-compilation for Windows
|
||||
-----------------------------
|
||||
|
||||
The procedure is almost exactly the same as before, including the requirements.
|
||||
Just install MinGW-w64 and let automation take care of the rest.
|
||||
|
||||
$ cmake -P Win32Depends.cmake
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. \
|
||||
-DCMAKE_TOOLCHAIN_FILE=../ToolchainDebianMinGWW64.cmake \
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
$ cmake -DCMAKE_TOOLCHAIN_FILE=../ToolchainCrossMinGWW64.cmake \
|
||||
-DCMAKE_BUILD_TYPE=Release ..
|
||||
$ cpack
|
||||
|
||||
Alternatively, for an unnecessarily bloated MSYS2-based 64-bit build:
|
||||
|
||||
$ sh Win64Depends.sh
|
||||
$ cmake -DCMAKE_TOOLCHAIN_FILE=ToolchainCrossWin64.cmake \
|
||||
-DCMAKE_BUILD_TYPE=Release -B build
|
||||
$ cmake --build build -- package
|
||||
|
||||
Contributing and Support
|
||||
------------------------
|
||||
Use https://git.janouch.name/p/logdiag to report any bugs, request features,
|
||||
|
||||
16
ToolchainCrossWin64.cmake
Normal file
16
ToolchainCrossWin64.cmake
Normal file
@@ -0,0 +1,16 @@
|
||||
set (CMAKE_SYSTEM_NAME "Windows")
|
||||
set (CMAKE_SYSTEM_PROCESSOR "x86_64")
|
||||
|
||||
set (CMAKE_C_COMPILER "x86_64-w64-mingw32-gcc")
|
||||
set (CMAKE_CXX_COMPILER "x86_64-w64-mingw32-g++")
|
||||
set (CMAKE_RC_COMPILER "x86_64-w64-mingw32-windres")
|
||||
|
||||
# Not needed to crosscompile an installation package
|
||||
#set (CMAKE_CROSSCOMPILING_EMULATOR "wine64")
|
||||
|
||||
set (CMAKE_FIND_ROOT_PATH "/usr/x86_64-w64-mingw32")
|
||||
|
||||
set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
|
||||
37
Win32Cleanup.cmake
Normal file
37
Win32Cleanup.cmake
Normal file
@@ -0,0 +1,37 @@
|
||||
# To be run from cmake_install.cmake, eradicates all unreferenced libraries.
|
||||
# CMake 3.9.6 has a parsing bug with ENCODING UTF-8.
|
||||
cmake_minimum_required (VERSION 3.10)
|
||||
|
||||
# CPack runs this almost without any CMake variables at all
|
||||
# (cmStateSnapshot::SetDefaultDefinitions(), CMAKE_INSTALL_PREFIX, [DESTDIR])
|
||||
set (installdir "${CMAKE_INSTALL_PREFIX}")
|
||||
if (NOT installdir OR installdir MATCHES "^/usr(/|$)")
|
||||
return ()
|
||||
endif ()
|
||||
|
||||
# The function is recursive and CMake has tragic scoping behaviour;
|
||||
# environment variables are truly global there, in the absence of a cache
|
||||
unset (ENV{seen})
|
||||
function (expand path)
|
||||
set (seen $ENV{seen})
|
||||
if (path IN_LIST seen OR NOT EXISTS "${path}")
|
||||
return ()
|
||||
endif ()
|
||||
|
||||
set (ENV{seen} "$ENV{seen};${path}")
|
||||
file (STRINGS "${path}" strings REGEX "[.][Dd][Ll][Ll]$" ENCODING UTF-8)
|
||||
foreach (string ${strings})
|
||||
string (REGEX MATCH "[-.+_a-zA-Z0-9]+$" word "${string}")
|
||||
expand ("${installdir}/${word}")
|
||||
endforeach ()
|
||||
endfunction ()
|
||||
|
||||
file (GLOB roots LIST_DIRECTORIES false "${installdir}/*.[Ee][Xx][Ee]"
|
||||
"${installdir}/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.[Dd][Ll][Ll]")
|
||||
foreach (binary ${roots})
|
||||
expand ("${binary}")
|
||||
endforeach ()
|
||||
|
||||
file (GLOB libraries LIST_DIRECTORIES false "${installdir}/*.[Dd][Ll][Ll]")
|
||||
list (REMOVE_ITEM libraries $ENV{seen})
|
||||
file (REMOVE ${libraries})
|
||||
@@ -1,14 +1,11 @@
|
||||
# Usage: cmake -P Win32Depends.cmake
|
||||
|
||||
# Only CMake 3.1+ supports XZ archives and 7z doesn't also untar automatically
|
||||
cmake_minimum_required (VERSION 3.1)
|
||||
# Only CMake 3.1+ supports XZ archives, not sure when 7z support comes from
|
||||
cmake_minimum_required (VERSION 3.9)
|
||||
|
||||
# Directories
|
||||
set (working_dir ${CMAKE_CURRENT_BINARY_DIR}/win32-depends)
|
||||
set (pkg_dir ${working_dir}/packages)
|
||||
set (tools_dir ${working_dir}/tools)
|
||||
set (sevenzip_executable ${tools_dir}/7za)
|
||||
set (tmp_dir ${working_dir}/tmp)
|
||||
file (MAKE_DIRECTORY ${working_dir})
|
||||
file (MAKE_DIRECTORY ${pkg_dir})
|
||||
|
||||
@@ -21,27 +18,25 @@ if (files)
|
||||
endif (files)
|
||||
|
||||
# Packages
|
||||
set (pkg_list "7za" "gtk" "gtkalt" "winlibs" "mingw_lua")
|
||||
|
||||
set (pkg_7za_root "http://sourceforge.net/projects/sevenzip/files")
|
||||
set (pkg_7za_urls "${pkg_7za_root}/7-Zip/9.20/7za920.zip")
|
||||
set (pkg_7za_md5 "2fac454a90ae96021f4ffc607d4c00f8")
|
||||
set (pkg_list "gtk" "gtkalt" "winlibs" "mingw_lua")
|
||||
|
||||
set (pkg_gtk_root "http://ftp.gnome.org/pub/gnome/binaries/win32")
|
||||
set (pkg_gtk_urls "${pkg_gtk_root}/dependencies/gettext-tools-0.17.zip")
|
||||
set (pkg_gtk_md5 "09baff956ebd1c391c7f71e9bd768edd")
|
||||
set (pkg_gtk_urls
|
||||
"${pkg_gtk_root}/dependencies/gettext-tools-0.17.zip"
|
||||
"${pkg_gtk_root}/dependencies/gettext-runtime-0.17-1.zip")
|
||||
set (pkg_gtk_md5
|
||||
"09baff956ebd1c391c7f71e9bd768edd"
|
||||
"110394b4b1e0a50cd440f1e8729d159c")
|
||||
|
||||
set (pkg_gtkalt_root "http://win32builder.gnome.org")
|
||||
# https://sourceforge.net/projects/urlget/files
|
||||
# /GTK%2B%203%20binary%20for%20Windows/GTK%2B%203.16.6/
|
||||
# contains a binary bundle that may be more or less simply transplanted over,
|
||||
# due to ABI compatibility, however something is wrong with icons,
|
||||
# and it looks alien on Windows XP (use themes) for close to no improvement.
|
||||
set (pkg_gtkalt_root "https://download.geany.org/contrib/gtk")
|
||||
set (pkg_gtkalt_urls "${pkg_gtkalt_root}/gtk+-bundle_3.8.2-20131001_win32.zip")
|
||||
set (pkg_gtkalt_md5 "3f9b159207edf44937f209b4a5e6bb63")
|
||||
|
||||
# Doesn't work, no gtk+-3.0.pc file present
|
||||
#set (pkg_gtkalt_urls "${pkg_gtkalt_root}/gtk+-bundle_3.10.4-20131202_win32.zip")
|
||||
#set (pkg_gtkalt_md5 "520bed70943974efdaeea2a1dbe48f84")
|
||||
# Too old
|
||||
#set (pkg_gtkalt_urls "${pkg_gtkalt_root}/gtk+-bundle_3.6.4-20130921_win32.zip")
|
||||
#set (pkg_gtkalt_md5 "9bcb87d917982a6e52a69141ade8bd56")
|
||||
|
||||
set (pkg_winlibs_root "http://sourceforge.net/projects/winlibs/files")
|
||||
set (pkg_winlibs_urls "${pkg_winlibs_root}/GTK+/libjson-glib-1.0-1-mingw32.7z")
|
||||
set (pkg_winlibs_md5 "f06e42c5998dae5fb6245fecc96a403e")
|
||||
@@ -66,11 +61,11 @@ foreach (pkg_set ${pkg_list})
|
||||
message (WARNING "MD5 checksum missing for ${basename}")
|
||||
set (pkg_md5_sum)
|
||||
set (pkg_md5_param)
|
||||
else (NOT pkg_md5)
|
||||
else ()
|
||||
list (GET pkg_md5 0 pkg_md5_sum)
|
||||
list (REMOVE_AT pkg_md5 0)
|
||||
set (pkg_md5_param EXPECTED_MD5 ${pkg_md5_sum})
|
||||
endif (NOT pkg_md5)
|
||||
endif ()
|
||||
|
||||
if (NOT EXISTS ${filename})
|
||||
message (STATUS "Downloading ${url}...")
|
||||
@@ -88,74 +83,27 @@ foreach (pkg_set ${pkg_list})
|
||||
if (NOT output MATCHES "^${pkg_md5_sum}")
|
||||
message (FATAL_ERROR "MD5 mismatch for ${basename}")
|
||||
endif (NOT output MATCHES "^${pkg_md5_sum}")
|
||||
endif (NOT EXISTS ${filename})
|
||||
endif ()
|
||||
endforeach (url)
|
||||
endforeach (pkg_set)
|
||||
|
||||
if (NOT WIN32)
|
||||
unset (sevenzip_executable)
|
||||
find_program (sevenzip_executable 7za)
|
||||
if (NOT sevenzip_executable)
|
||||
message (FATAL_ERROR "Could not find 7za (part of p7zip)")
|
||||
endif (NOT sevenzip_executable)
|
||||
endif (NOT WIN32)
|
||||
|
||||
# Stage 2: setup 7za first
|
||||
file (MAKE_DIRECTORY ${tmp_dir})
|
||||
foreach (url ${pkg_7za_urls})
|
||||
get_filename_component (filename ${url} NAME)
|
||||
message (STATUS "Extracting ${filename}...")
|
||||
|
||||
set (filename ${pkg_dir}/${filename})
|
||||
execute_process (COMMAND ${CMAKE_COMMAND} -E tar xf ${filename}
|
||||
WORKING_DIRECTORY ${tmp_dir}
|
||||
RESULT_VARIABLE status)
|
||||
if (status)
|
||||
message (FATAL_ERROR "Extraction failed: ${status}")
|
||||
endif (status)
|
||||
endforeach (url)
|
||||
|
||||
file (MAKE_DIRECTORY ${tools_dir})
|
||||
file (COPY ${tmp_dir}/7za.exe DESTINATION ${tools_dir})
|
||||
file (REMOVE_RECURSE ${tmp_dir})
|
||||
list (REMOVE_ITEM pkg_list "7za")
|
||||
|
||||
# Stage 3: extract the rest of packages
|
||||
# Stage 2: extract the rest of packages
|
||||
foreach (pkg_set ${pkg_list})
|
||||
foreach (url ${pkg_${pkg_set}_urls})
|
||||
get_filename_component (filename ${url} NAME)
|
||||
message (STATUS "Extracting ${filename}...")
|
||||
|
||||
if (filename MATCHES "\\.7z$")
|
||||
set (extract_command ${sevenzip_executable} x)
|
||||
set (quiet OUTPUT_QUIET)
|
||||
else (filename MATCHES "\\.7z$")
|
||||
set (extract_command ${CMAKE_COMMAND} -E tar xf)
|
||||
set (quiet)
|
||||
endif (filename MATCHES "\\.7z$")
|
||||
|
||||
set (filename ${pkg_dir}/${filename})
|
||||
if (pkg_${pkg_set}_strip)
|
||||
file (MAKE_DIRECTORY ${tmp_dir})
|
||||
execute_process (COMMAND ${extract_command} ${filename}
|
||||
WORKING_DIRECTORY ${tmp_dir}
|
||||
RESULT_VARIABLE status ${quiet})
|
||||
file (COPY ${tmp_dir}/${pkg_${pkg_set}_strip}/
|
||||
DESTINATION ${working_dir})
|
||||
file (REMOVE_RECURSE ${tmp_dir})
|
||||
else (pkg_${pkg_set}_strip)
|
||||
execute_process (COMMAND ${extract_command} ${filename}
|
||||
WORKING_DIRECTORY ${working_dir}
|
||||
RESULT_VARIABLE status ${quiet})
|
||||
endif (pkg_${pkg_set}_strip)
|
||||
|
||||
execute_process (COMMAND ${CMAKE_COMMAND} -E tar xf ${filename}
|
||||
WORKING_DIRECTORY ${working_dir}
|
||||
RESULT_VARIABLE status)
|
||||
if (status)
|
||||
message (FATAL_ERROR "Extraction failed: ${status}")
|
||||
endif (status)
|
||||
endif ()
|
||||
endforeach (url)
|
||||
endforeach (pkg_set)
|
||||
|
||||
# Stage 4: final touches
|
||||
# Stage 3: final touches
|
||||
# We have to fix the prefix path as it is completely wrong everywhere
|
||||
file (GLOB files ${working_dir}/lib/pkgconfig/*.pc)
|
||||
foreach (file ${files})
|
||||
|
||||
74
Win64Depends.sh
Normal file
74
Win64Depends.sh
Normal file
@@ -0,0 +1,74 @@
|
||||
#!/bin/sh -e
|
||||
# Win64Depends.sh: download dependencies from MSYS2 for cross-compilation
|
||||
# Dependencies: AWK, sed, sha256sum, cURL, bsdtar, wine64
|
||||
repository=https://repo.msys2.org/mingw/mingw64/
|
||||
|
||||
status() {
|
||||
echo "$(tput bold)-- $*$(tput sgr0)"
|
||||
}
|
||||
|
||||
dbsync() {
|
||||
status Fetching repository DB
|
||||
[ -f db.tsv ] || curl -# "$repository/mingw64.db" | bsdtar -xOf- | awk '
|
||||
function flush() { print f["%NAME%"] f["%FILENAME%"] f["%DEPENDS%"] }
|
||||
NR > 1 && $0 == "%FILENAME%" { flush(); for (i in f) delete f[i] }
|
||||
!/^[^%]/ { field = $0; next } { f[field] = f[field] $0 "\t" }
|
||||
field == "%SHA256SUM%" { path = "*packages/" f["%FILENAME%"]
|
||||
sub(/\t$/, "", path); print $0, path > "db.sums" } END { flush() }
|
||||
' > db.tsv
|
||||
}
|
||||
|
||||
fetch() {
|
||||
status Resolving "$@"
|
||||
mkdir -p packages
|
||||
awk -F'\t' 'function get(name, i, a) {
|
||||
if (visited[name]++ || !(name in filenames)) return
|
||||
print filenames[name]; split(deps[name], a); for (i in a) get(a[i])
|
||||
} BEGIN { while ((getline < "db.tsv") > 0) {
|
||||
filenames[$1] = $2; deps[$1] = ""; for (i = 3; i <= NF; i++) {
|
||||
gsub(/[<=>].*/, "", $i); deps[$1] = deps[$1] $i FS }
|
||||
} for (i = 0; i < ARGC; i++) get(ARGV[i]) }' "$@" | while IFS= read -r name
|
||||
do
|
||||
status Fetching "$name"
|
||||
[ -f "packages/$name" ] || curl -#o "packages/$name" "$repository/$name"
|
||||
done
|
||||
}
|
||||
|
||||
verify() {
|
||||
status Verifying checksums
|
||||
sha256sum --ignore-missing --quiet -c db.sums
|
||||
}
|
||||
|
||||
extract() {
|
||||
status Extracting packages
|
||||
for subdir in *
|
||||
do [ -d "$subdir" -a "$subdir" != packages ] && rm -rf -- "$subdir"
|
||||
done
|
||||
for i in packages/*
|
||||
do bsdtar -xf "$i" --strip-components 1 mingw64
|
||||
done
|
||||
}
|
||||
|
||||
configure() {
|
||||
status Configuring packages
|
||||
glib-compile-schemas share/glib-2.0/schemas
|
||||
wine64 bin/gdk-pixbuf-query-loaders.exe \
|
||||
> lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
|
||||
|
||||
# pkgconf has a command line option for this, but CMake can't pass it
|
||||
sed -i "s|^prefix=/mingw64|prefix=$(pwd)|" {share,lib}/pkgconfig/*.pc
|
||||
}
|
||||
|
||||
mkdir -p win32-depends
|
||||
cd win32-depends
|
||||
dbsync
|
||||
fetch mingw-w64-x86_64-gtk3 mingw-w64-x86_64-lua \
|
||||
mingw-w64-x86_64-libwinpthread-git # because we don't do "provides"?
|
||||
verify
|
||||
extract
|
||||
configure
|
||||
|
||||
status Success
|
||||
|
||||
# XXX: Why is this override needed to run some GLib-based things under wine64?
|
||||
export XDG_DATA_DIRS=$(pwd)/share
|
||||
@@ -44,7 +44,7 @@
|
||||
|
||||
#=============================================================================
|
||||
# Copyright 2011 Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de>
|
||||
# Copyright 2012 Přemysl Janouch <p at janouch dot name>
|
||||
# Copyright 2012 Přemysl Eric Janouch <p at janouch dot name>
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
|
||||
@@ -1,99 +0,0 @@
|
||||
# - Find GNU gettext tools
|
||||
# This module looks for the GNU gettext tools. This module defines the
|
||||
# following values:
|
||||
# GETTEXT_MSGMERGE_EXECUTABLE: the full path to the msgmerge tool.
|
||||
# GETTEXT_MSGFMT_EXECUTABLE: the full path to the msgfmt tool.
|
||||
# GETTEXT_FOUND: True if gettext has been found.
|
||||
#
|
||||
# Additionally it provides the following macros:
|
||||
# GETTEXT_CREATE_TRANSLATIONS ( outputFile [ALL] file1 ... fileN )
|
||||
# This will create a target "${PROJECT_NAME}_translations" which will
|
||||
# convert the given input po files into the binary output mo file.
|
||||
# If the ALL option is used, the translations will also be created
|
||||
# when building the default target.
|
||||
|
||||
#=============================================================================
|
||||
# Copyright 2007-2009 Kitware, Inc.
|
||||
# Copyright 2010-2011 Přemysl Janouch
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions are met:
|
||||
# * Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# * Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the distribution.
|
||||
# * Neither the name of the Kitware nor the names of contributors may be
|
||||
# used to endorse or promote products derived from this software
|
||||
# without specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE
|
||||
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
# OF SUCH DAMAGE.
|
||||
#=============================================================================
|
||||
|
||||
find_program (GETTEXT_MSGMERGE_EXECUTABLE msgmerge)
|
||||
find_program (GETTEXT_MSGFMT_EXECUTABLE msgfmt)
|
||||
|
||||
macro (GETTEXT_CREATE_TRANSLATIONS _potFile _firstPoFileArg)
|
||||
# Make it a real variable, so we can modify it here.
|
||||
set (_firstPoFile "${_firstPoFileArg}")
|
||||
|
||||
set (_gmoFiles)
|
||||
get_filename_component (_potBasename ${_potFile} NAME_WE)
|
||||
get_filename_component (_absPotFile ${_potFile} ABSOLUTE)
|
||||
|
||||
set (_addToAll)
|
||||
if (${_firstPoFile} STREQUAL "ALL")
|
||||
set (_addToAll "ALL")
|
||||
set (_firstPoFile)
|
||||
endif (${_firstPoFile} STREQUAL "ALL")
|
||||
|
||||
foreach (_currentPoFile ${_firstPoFile} ${ARGN})
|
||||
get_filename_component (_absFile ${_currentPoFile} ABSOLUTE)
|
||||
get_filename_component (_abs_PATH ${_absFile} PATH)
|
||||
get_filename_component (_lang ${_absFile} NAME_WE)
|
||||
set (_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo)
|
||||
|
||||
# msgmerge versions older than 0.11 don't actually support --update
|
||||
# and --backup, let's try to workaround that (tested on 0.10.40).
|
||||
execute_process (COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} -V
|
||||
OUTPUT_VARIABLE _msgmergeVersion)
|
||||
string (REGEX MATCH "0[.][0-9]+" _msgmergeVersion ${_msgmergeVersion})
|
||||
if ("${_msgmergeVersion}" MATCHES "[.]10|[.][0-9]")
|
||||
set (_msgmergeParams --quiet -s
|
||||
${_absFile} -o ${_absFile} ${_absPotFile})
|
||||
else ("${_msgmergeVersion}" MATCHES "[.]10|[.][0-9]")
|
||||
set (_msgmergeParams --quiet --update --backup=none -s
|
||||
${_absFile} ${_absPotFile})
|
||||
endif ("${_msgmergeVersion}" MATCHES "[.]10|[.][0-9]")
|
||||
|
||||
add_custom_command (
|
||||
OUTPUT ${_gmoFile}
|
||||
COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} ${_msgmergeParams}
|
||||
COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_absFile}
|
||||
DEPENDS ${_absPotFile} ${_absFile}
|
||||
)
|
||||
|
||||
install (FILES ${_gmoFile} DESTINATION
|
||||
share/locale/${_lang}/LC_MESSAGES RENAME ${_potBasename}.mo)
|
||||
set (_gmoFiles ${_gmoFiles} ${_gmoFile})
|
||||
endforeach (_currentPoFile)
|
||||
|
||||
add_custom_target (${PROJECT_NAME}_translations ${_addToAll}
|
||||
DEPENDS ${_gmoFiles})
|
||||
endmacro (GETTEXT_CREATE_TRANSLATIONS)
|
||||
|
||||
include (FindPackageHandleStandardArgs)
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS (Gettext DEFAULT_MSG
|
||||
GETTEXT_MSGMERGE_EXECUTABLE GETTEXT_MSGFMT_EXECUTABLE)
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
# LIBINTL_LIBRARIES
|
||||
|
||||
#=============================================================================
|
||||
# Copyright Přemysl Janouch 2011
|
||||
# Copyright 2011 Přemysl Eric Janouch
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
#
|
||||
|
||||
#=============================================================================
|
||||
# Copyright Přemysl Janouch 2010
|
||||
# Copyright 2010 Přemysl Eric Janouch
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#define __CONFIG_H__
|
||||
|
||||
#define PROJECT_NAME "${PROJECT_NAME}"
|
||||
#define PROJECT_VERSION "${project_VERSION}"
|
||||
#define PROJECT_VERSION "${PROJECT_VERSION}"
|
||||
#define PROJECT_URL "${project_URL}"
|
||||
|
||||
#cmakedefine OPTION_NOINSTALL
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
logdiag: Průvodce uživatele
|
||||
===========================
|
||||
Přemysl Janouch <p@janouch.name>
|
||||
Přemysl Eric Janouch <p@janouch.name>
|
||||
v0.2.0, 2018-06-27
|
||||
:toc: left
|
||||
:toc-title: Obsah
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
logdiag: User Guide
|
||||
===================
|
||||
Přemysl Janouch <p@janouch.name>
|
||||
Přemysl Eric Janouch <p@janouch.name>
|
||||
v0.2.0, 2018-06-27
|
||||
:toc: left
|
||||
:sectnums:
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-category-symbol-view.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2012
|
||||
* Copyright 2012, 2015 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
@@ -47,6 +47,7 @@ SymbolData;
|
||||
* @path: path to the category within the library.
|
||||
* @layout: (element-type SymbolData *): current layout of symbols.
|
||||
* @preselected: currently preselected symbol.
|
||||
* @dragged: currently dragged symbol.
|
||||
*/
|
||||
struct _LdCategorySymbolViewPrivate
|
||||
{
|
||||
@@ -54,6 +55,7 @@ struct _LdCategorySymbolViewPrivate
|
||||
gchar *path;
|
||||
GSList *layout;
|
||||
SymbolData *preselected;
|
||||
SymbolData *dragged;
|
||||
};
|
||||
|
||||
enum
|
||||
@@ -180,6 +182,7 @@ layout_destroy (LdCategorySymbolView *self)
|
||||
g_slist_free (self->priv->layout);
|
||||
self->priv->layout = NULL;
|
||||
self->priv->preselected = NULL;
|
||||
self->priv->dragged = NULL;
|
||||
}
|
||||
|
||||
static GSList *
|
||||
@@ -350,7 +353,10 @@ on_draw (GtkWidget *widget, cairo_t *cr)
|
||||
return FALSE;
|
||||
|
||||
context = gtk_widget_get_style_context (widget);
|
||||
// FIXME: there have to be better means (though I can't find them)
|
||||
|
||||
// XXX: alternatively, we could use gtk_style_context_lookup_color()
|
||||
// with hardcoded colour names ("theme_*_color")--this is cleaner,
|
||||
// and unlike GtkStyle doesn't cause deprecation warnings
|
||||
gtk_style_context_add_class (context, "gtkstyle-fallback");
|
||||
|
||||
gtk_style_context_get_background_color (context,
|
||||
@@ -457,12 +463,12 @@ on_drag_data_get
|
||||
LdCategorySymbolView *self;
|
||||
|
||||
self = LD_CATEGORY_SYMBOL_VIEW (widget);
|
||||
g_return_if_fail (self->priv->preselected != NULL);
|
||||
g_return_if_fail (self->priv->dragged != NULL);
|
||||
|
||||
gtk_selection_data_set (selection_data,
|
||||
gtk_selection_data_get_target (selection_data),
|
||||
8, (guchar *) self->priv->preselected->path,
|
||||
strlen (self->priv->preselected->path));
|
||||
8, (guchar *) self->priv->dragged->path,
|
||||
strlen (self->priv->dragged->path));
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -474,6 +480,9 @@ on_drag_begin (GtkWidget *widget, GdkDragContext *ctx, gpointer user_data)
|
||||
self = LD_CATEGORY_SYMBOL_VIEW (widget);
|
||||
g_return_if_fail (self->priv->preselected != NULL);
|
||||
|
||||
/* Working around a mysterious bug where we /sometimes/ get deselected. */
|
||||
self->priv->dragged = self->priv->preselected;
|
||||
|
||||
/* Some of the larger previews didn't work, and we have to get rid of
|
||||
* the icon later when we're hovering above LdDiagramView anyway. */
|
||||
pbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, 1, 1);
|
||||
@@ -485,7 +494,11 @@ on_drag_begin (GtkWidget *widget, GdkDragContext *ctx, gpointer user_data)
|
||||
static void
|
||||
on_drag_end (GtkWidget *widget, GdkDragContext *ctx, gpointer user_data)
|
||||
{
|
||||
symbol_deselect (LD_CATEGORY_SYMBOL_VIEW (widget));
|
||||
LdCategorySymbolView *self;
|
||||
|
||||
self = LD_CATEGORY_SYMBOL_VIEW (widget);
|
||||
symbol_deselect (self);
|
||||
self->priv->dragged = NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-category-symbol-view.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2012
|
||||
* Copyright 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-category-tree-view.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2011, 2012
|
||||
* Copyright 2011, 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-category-tree-view.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2011, 2012
|
||||
* Copyright 2011, 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-category-view.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2012
|
||||
* Copyright 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-category-view.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2012
|
||||
* Copyright 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-category.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011, 2012
|
||||
* Copyright 2010, 2011, 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-category.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2012
|
||||
* Copyright 2010, 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram-connection.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2011
|
||||
* Copyright 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram-connection.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2011
|
||||
* Copyright 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram-object.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram-object.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram-symbol.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram-symbol.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram-view.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011, 2012
|
||||
* Copyright 2010, 2011, 2012, 2015 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram-view.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011, 2012
|
||||
* Copyright 2010, 2011, 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-diagram.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-library.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011, 2012
|
||||
* Copyright 2010, 2011, 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-library.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2012
|
||||
* Copyright 2010, 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-lua-private.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010
|
||||
* Copyright 2010 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-lua-symbol-private.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-lua-symbol.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-lua-symbol.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010
|
||||
* Copyright 2010 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-lua.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011, 2012
|
||||
* Copyright 2010, 2011, 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-lua.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010
|
||||
* Copyright 2010 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-symbol.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-symbol.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-types.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-types.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-undo-action.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2011
|
||||
* Copyright 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-undo-action.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2011
|
||||
* Copyright 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* liblogdiag.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2011, 2012
|
||||
* Copyright 2011, 2012 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
40
po/cs.po
40
po/cs.po
@@ -1,32 +1,32 @@
|
||||
# Czech translation for logdiag.
|
||||
# Copyright (C) 2011 Přemysl Janouch
|
||||
# Copyright (C) 2011 Přemysl Eric Janouch
|
||||
# This file is distributed under the same license as the logdiag package.
|
||||
# Přemysl Janouch <p@janouch.name>, 2011.
|
||||
# Přemysl Eric Janouch <p@janouch.name>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: logdiag\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-06-27 04:52+0200\n"
|
||||
"PO-Revision-Date: 2018-06-25 04:02+0200\n"
|
||||
"Last-Translator: Přemysl Janouch <p@janouch.name>\n"
|
||||
"Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
|
||||
"POT-Creation-Date: 2021-10-22 22:16+0200\n"
|
||||
"PO-Revision-Date: 2021-10-22 22:21+0200\n"
|
||||
"Last-Translator: Přemysl Eric Janouch <p@janouch.name>\n"
|
||||
"Language-Team: Czech <cs@li.org>\n"
|
||||
"Language: cs\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.0.8\n"
|
||||
"X-Generator: Poedit 3.0\n"
|
||||
|
||||
#: ../src/ld-window-main.c:931
|
||||
#: ../src/ld-window-main.c:937
|
||||
#, c-format
|
||||
msgid "%d%%"
|
||||
msgstr "%d %%"
|
||||
|
||||
#: ../src/logdiag.c:146
|
||||
#: ../src/logdiag.c:147
|
||||
msgid "- Schematic editor"
|
||||
msgstr "- Editor schémat"
|
||||
|
||||
#: ../src/ld-window-main.c:855
|
||||
#: ../src/ld-window-main.c:861
|
||||
msgid "Close _without Saving"
|
||||
msgstr "Zavřít _bez uložení"
|
||||
|
||||
@@ -59,7 +59,7 @@ msgstr "Nelze otevřít soubor"
|
||||
msgid "Failed to save the diagram"
|
||||
msgstr "Nelze uložit diagram"
|
||||
|
||||
#: ../src/ld-window-main.c:853
|
||||
#: ../src/ld-window-main.c:859
|
||||
msgid "If you don't save, changes will be permanently lost."
|
||||
msgstr "Pokud je neuložíte, budou změny navždy ztraceny."
|
||||
|
||||
@@ -87,7 +87,7 @@ msgstr "Provede posledně vrácenou akci"
|
||||
msgid "Reset zoom level back to the default"
|
||||
msgstr "Vrátí přiblížení na výchozí hodnotu"
|
||||
|
||||
#: ../src/ld-window-main.c:790
|
||||
#: ../src/ld-window-main.c:792
|
||||
msgid "Save As..."
|
||||
msgstr "Uložit jako..."
|
||||
|
||||
@@ -97,17 +97,15 @@ msgstr "Uložit _jako..."
|
||||
|
||||
#: ../src/ld-window-main.c:623
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Save the changes to diagram \"%s\" before closing it and creating a new one?"
|
||||
msgid "Save the changes to diagram \"%s\" before closing it and creating a new one?"
|
||||
msgstr "Uložit změny v diagramu \"%s\" před jeho zavřením a vytvořením nového?"
|
||||
|
||||
#: ../src/ld-window-main.c:755
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Save the changes to diagram \"%s\" before closing it and opening another one?"
|
||||
msgid "Save the changes to diagram \"%s\" before closing it and opening another one?"
|
||||
msgstr "Uložit změny v diagramu \"%s\" před jeho zavřením a otevřením jiného?"
|
||||
|
||||
#: ../src/ld-window-main.c:893
|
||||
#: ../src/ld-window-main.c:899
|
||||
#, c-format
|
||||
msgid "Save the changes to diagram \"%s\" before closing?"
|
||||
msgstr "Uložit změny v diagramu \"%s\" před jeho zavřením?"
|
||||
@@ -160,6 +158,10 @@ msgstr "Vrátí poslední akci"
|
||||
msgid "Unsaved Diagram"
|
||||
msgstr "Neuložený diagram"
|
||||
|
||||
#: ../src/ld-window-main.c:806
|
||||
msgid "Untitled diagram"
|
||||
msgstr "Nepojmenovaný diagram"
|
||||
|
||||
#: ../src/ld-window-main.c:171
|
||||
msgid "Zoom _Out"
|
||||
msgstr "_Oddálit"
|
||||
@@ -240,9 +242,9 @@ msgstr "_Zobrazení"
|
||||
msgid "_Zoom In"
|
||||
msgstr "_Přiblížit"
|
||||
|
||||
#: ../src/ld-window-main.c:977
|
||||
#: ../src/ld-window-main.c:983
|
||||
msgid "translator-credits"
|
||||
msgstr "Přemysl Janouch <p@janouch.name>"
|
||||
msgstr "Přemysl Eric Janouch <p@janouch.name>"
|
||||
|
||||
#~ msgid "The file is probably corrupted."
|
||||
#~ msgstr "Soubor je pravděpodobně poškozen."
|
||||
|
||||
27
po/de.po
27
po/de.po
@@ -1,15 +1,15 @@
|
||||
# German translation for logdiag.
|
||||
# Copyright (C) 2011 Přemysl Janouch
|
||||
# Copyright (C) 2011 Přemysl Eric Janouch
|
||||
# This file is distributed under the same license as the logdiag package.
|
||||
# Andy J., 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: logdiag\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-06-27 04:52+0200\n"
|
||||
"Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
|
||||
"POT-Creation-Date: 2021-10-22 22:16+0200\n"
|
||||
"PO-Revision-Date: 2018-06-25 04:11+0200\n"
|
||||
"Last-Translator: Přemysl Janouch <p@janouch.name>\n"
|
||||
"Last-Translator: Přemysl Eric Janouch <p@janouch.name>\n"
|
||||
"Language-Team: German <de@li.org>\n"
|
||||
"Language: de\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -17,16 +17,16 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.0.8\n"
|
||||
|
||||
#: ../src/ld-window-main.c:931
|
||||
#: ../src/ld-window-main.c:937
|
||||
#, c-format
|
||||
msgid "%d%%"
|
||||
msgstr "%d %%"
|
||||
|
||||
#: ../src/logdiag.c:146
|
||||
#: ../src/logdiag.c:147
|
||||
msgid "- Schematic editor"
|
||||
msgstr "- Schema Editor"
|
||||
|
||||
#: ../src/ld-window-main.c:855
|
||||
#: ../src/ld-window-main.c:861
|
||||
msgid "Close _without Saving"
|
||||
msgstr "Schließen _ohne Speichern"
|
||||
|
||||
@@ -61,7 +61,7 @@ msgstr "Fehler beim Öffnen der Datei"
|
||||
msgid "Failed to save the diagram"
|
||||
msgstr "Fehler beim Speichern des Diagramms"
|
||||
|
||||
#: ../src/ld-window-main.c:853
|
||||
#: ../src/ld-window-main.c:859
|
||||
msgid "If you don't save, changes will be permanently lost."
|
||||
msgstr "Wenn Sie nicht speichern, gehen alle Änderungen verloren."
|
||||
|
||||
@@ -89,7 +89,7 @@ msgstr "Letzte nicht abgeschlossene Aktion wiederholen"
|
||||
msgid "Reset zoom level back to the default"
|
||||
msgstr "Zoom Bereich zurücksetzen"
|
||||
|
||||
#: ../src/ld-window-main.c:790
|
||||
#: ../src/ld-window-main.c:792
|
||||
msgid "Save As..."
|
||||
msgstr "Speichern unter..."
|
||||
|
||||
@@ -111,7 +111,7 @@ msgstr ""
|
||||
"Änderungen im Diagramm \"%s\" speichern bevor es beendet und ein Weiteres "
|
||||
"geöffnet wird?"
|
||||
|
||||
#: ../src/ld-window-main.c:893
|
||||
#: ../src/ld-window-main.c:899
|
||||
#, c-format
|
||||
msgid "Save the changes to diagram \"%s\" before closing?"
|
||||
msgstr "Änderungen im Diagramm \"%s\" vor dem Schließen speichern?"
|
||||
@@ -164,6 +164,11 @@ msgstr "Letzte Aktion rückgangig machen"
|
||||
msgid "Unsaved Diagram"
|
||||
msgstr "Ungespeichertes Diagramm"
|
||||
|
||||
#: ../src/ld-window-main.c:806
|
||||
#, fuzzy
|
||||
msgid "Untitled diagram"
|
||||
msgstr "Ungespeichertes Diagramm"
|
||||
|
||||
#: ../src/ld-window-main.c:171
|
||||
msgid "Zoom _Out"
|
||||
msgstr "Zoom _heraus"
|
||||
@@ -244,7 +249,7 @@ msgstr "_Ansicht"
|
||||
msgid "_Zoom In"
|
||||
msgstr "_Hineinzoomen"
|
||||
|
||||
#: ../src/ld-window-main.c:977
|
||||
#: ../src/ld-window-main.c:983
|
||||
msgid "translator-credits"
|
||||
msgstr "Andy J."
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR Přemysl Janouch
|
||||
# Copyright (C) YEAR Přemysl Eric Janouch
|
||||
# This file is distributed under the same license as the logdiag package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
@@ -7,8 +7,8 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: logdiag 0.2.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-06-27 04:52+0200\n"
|
||||
"Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
|
||||
"POT-Creation-Date: 2021-10-22 22:16+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -206,29 +206,33 @@ msgstr ""
|
||||
msgid "Open..."
|
||||
msgstr ""
|
||||
|
||||
#: ../src/ld-window-main.c:790
|
||||
#: ../src/ld-window-main.c:792
|
||||
msgid "Save As..."
|
||||
msgstr ""
|
||||
|
||||
#: ../src/ld-window-main.c:853
|
||||
#: ../src/ld-window-main.c:806
|
||||
msgid "Untitled diagram"
|
||||
msgstr ""
|
||||
|
||||
#: ../src/ld-window-main.c:859
|
||||
msgid "If you don't save, changes will be permanently lost."
|
||||
msgstr ""
|
||||
|
||||
#: ../src/ld-window-main.c:855
|
||||
#: ../src/ld-window-main.c:861
|
||||
msgid "Close _without Saving"
|
||||
msgstr ""
|
||||
|
||||
#: ../src/ld-window-main.c:893
|
||||
#: ../src/ld-window-main.c:899
|
||||
#, c-format
|
||||
msgid "Save the changes to diagram \"%s\" before closing?"
|
||||
msgstr ""
|
||||
|
||||
#: ../src/ld-window-main.c:931
|
||||
#: ../src/ld-window-main.c:937
|
||||
#, c-format
|
||||
msgid "%d%%"
|
||||
msgstr ""
|
||||
|
||||
#: ../src/ld-window-main.c:977
|
||||
#: ../src/ld-window-main.c:983
|
||||
msgid "translator-credits"
|
||||
msgstr ""
|
||||
|
||||
@@ -236,7 +240,7 @@ msgstr ""
|
||||
msgid "[FILE...]"
|
||||
msgstr ""
|
||||
|
||||
#: ../src/logdiag.c:146
|
||||
#: ../src/logdiag.c:147
|
||||
msgid "- Schematic editor"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -1,36 +1,21 @@
|
||||
#!/bin/bash
|
||||
# This script makes a translation template
|
||||
# The reason for this not being inside CMakeLists.txt
|
||||
# is that the translator should not need to run
|
||||
# the whole configure process to get this single stupid file.
|
||||
#!/bin/sh -e
|
||||
# This shell script generates the translation template.
|
||||
#
|
||||
# The reason for this not being inside CMakeLists.txt is that the translator
|
||||
# should not need to run the whole configuration process just to get this file.
|
||||
dir=$(dirname $0)
|
||||
|
||||
# Source files
|
||||
SOURCES=$(echo ../{src,liblogdiag}/*.c)
|
||||
export LC_ALL=C
|
||||
|
||||
# Get the package name from CMakeLists.txt
|
||||
PACKAGE=$(sed -n '/^[ \t]*[pP][rR][oO][jJ][eE][cC][tT][ \t]*([ \t]*\([^ \t)]\{1,\}\).*).*/{s//\1/p;q}' \
|
||||
../CMakeLists.txt)
|
||||
|
||||
# Get the package version from CMakeLists.txt
|
||||
EXP_BEG='/^[ \t]*[sS][eE][tT][ \t]*([ \t]*project_VERSION_'
|
||||
EXP_END='[ \t]\{1,\}"\{0,1\}\([^)"]\{1,\}\)"\{0,1\}).*/{s//\1/p;q}'
|
||||
|
||||
MAJOR=$(sed -n "${EXP_BEG}MAJOR${EXP_END}" ../CMakeLists.txt)
|
||||
MINOR=$(sed -n "${EXP_BEG}MINOR${EXP_END}" ../CMakeLists.txt)
|
||||
PATCH=$(sed -n "${EXP_BEG}PATCH${EXP_END}" ../CMakeLists.txt)
|
||||
|
||||
if [ "$MAJOR" != "" ]; then
|
||||
VERSION=$MAJOR
|
||||
if [ "$MINOR" != "" ]; then
|
||||
VERSION=$VERSION.$MINOR
|
||||
if [ "$PATCH" != "" ]; then
|
||||
VERSION=$VERSION.$PATCH
|
||||
fi
|
||||
fi
|
||||
re='^[ \t]*project *( *\([^ \t)]\{1,\}\) \{1,\}VERSION \{1,\}\([^ \t)]\{1,\}\).*'
|
||||
package=$(sed -n "s/$re/\\1/p" "$dir/../CMakeLists.txt")
|
||||
version=$(sed -n "s/$re/\\2/p" "$dir/../CMakeLists.txt")
|
||||
if [ -z "$package" -o -z "$version" ]; then
|
||||
echo "Failed to get information from CMakeLists.txt"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Finally make the template
|
||||
xgettext -LC -k_ -kN_ $SOURCES -o "$PACKAGE".pot \
|
||||
--package-name="$PACKAGE" --package-version="$VERSION" \
|
||||
--copyright-holder="Přemysl Janouch"
|
||||
|
||||
xgettext -LC -k_ -kN_ "$dir"/../{src,liblogdiag}/*.c -o "$dir/$package.pot" \
|
||||
--package-name="$package" --package-version="$version" \
|
||||
--copyright-holder="Přemysl Eric Janouch" \
|
||||
--msgid-bugs-address="https://git.janouch.name/p/$package/issues"
|
||||
|
||||
27
po/pl.po
27
po/pl.po
@@ -1,15 +1,15 @@
|
||||
# Polish translation for logdiag.
|
||||
# Copyright (C) 2011 Přemysl Janouch
|
||||
# Copyright (C) 2011 Přemysl Eric Janouch
|
||||
# This file is distributed under the same license as the logdiag package.
|
||||
# Robert Svoboda <ravath@gmail.com>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: logdiag\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-06-27 04:52+0200\n"
|
||||
"Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
|
||||
"POT-Creation-Date: 2021-10-22 22:16+0200\n"
|
||||
"PO-Revision-Date: 2018-06-25 04:09+0200\n"
|
||||
"Last-Translator: Přemysl Janouch <p@janouch.name>\n"
|
||||
"Last-Translator: Přemysl Eric Janouch <p@janouch.name>\n"
|
||||
"Language-Team: Polish <pl@li.org>\n"
|
||||
"Language: pl\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -17,16 +17,16 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.0.8\n"
|
||||
|
||||
#: ../src/ld-window-main.c:931
|
||||
#: ../src/ld-window-main.c:937
|
||||
#, c-format
|
||||
msgid "%d%%"
|
||||
msgstr "%d%%"
|
||||
|
||||
#: ../src/logdiag.c:146
|
||||
#: ../src/logdiag.c:147
|
||||
msgid "- Schematic editor"
|
||||
msgstr "- Edytor schematów"
|
||||
|
||||
#: ../src/ld-window-main.c:855
|
||||
#: ../src/ld-window-main.c:861
|
||||
msgid "Close _without Saving"
|
||||
msgstr "Zamknąć _bez zapisu"
|
||||
|
||||
@@ -59,7 +59,7 @@ msgstr "Pliku nie da się otworzyć"
|
||||
msgid "Failed to save the diagram"
|
||||
msgstr "Nie udało się zapisać wykresu"
|
||||
|
||||
#: ../src/ld-window-main.c:853
|
||||
#: ../src/ld-window-main.c:859
|
||||
msgid "If you don't save, changes will be permanently lost."
|
||||
msgstr "Jeżeli nie zapiszesz zmian, zostaną one trwale utracone"
|
||||
|
||||
@@ -87,7 +87,7 @@ msgstr "Powtórzy ostatnio cofniętą akcję"
|
||||
msgid "Reset zoom level back to the default"
|
||||
msgstr "Przywróci poziom zbliżenia na poziom wyjściowy"
|
||||
|
||||
#: ../src/ld-window-main.c:790
|
||||
#: ../src/ld-window-main.c:792
|
||||
msgid "Save As..."
|
||||
msgstr "Zapisz jako..."
|
||||
|
||||
@@ -109,7 +109,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Zapisać zmiany w wykresie \"%s\" przed jego zamknięciem i stworzeniem nowego?"
|
||||
|
||||
#: ../src/ld-window-main.c:893
|
||||
#: ../src/ld-window-main.c:899
|
||||
#, c-format
|
||||
msgid "Save the changes to diagram \"%s\" before closing?"
|
||||
msgstr "Zapisać zmiany w wykresie \"%s\" przed jego zamknięciem?"
|
||||
@@ -162,6 +162,11 @@ msgstr "Cofnie ostatnią akcję"
|
||||
msgid "Unsaved Diagram"
|
||||
msgstr "Niezapisany Wykres"
|
||||
|
||||
#: ../src/ld-window-main.c:806
|
||||
#, fuzzy
|
||||
msgid "Untitled diagram"
|
||||
msgstr "Niezapisany Wykres"
|
||||
|
||||
#: ../src/ld-window-main.c:171
|
||||
msgid "Zoom _Out"
|
||||
msgstr "_Oddalić widok"
|
||||
@@ -242,7 +247,7 @@ msgstr "_Widok"
|
||||
msgid "_Zoom In"
|
||||
msgstr "_Przybliżyć"
|
||||
|
||||
#: ../src/ld-window-main.c:977
|
||||
#: ../src/ld-window-main.c:983
|
||||
msgid "translator-credits"
|
||||
msgstr "Robert Svoboda <ravath@gmail.com>"
|
||||
|
||||
|
||||
27
po/sk.po
27
po/sk.po
@@ -1,15 +1,15 @@
|
||||
# Slovak translation for logdiag.
|
||||
# Copyright (C) 2011 Přemysl Janouch
|
||||
# Copyright (C) 2011 Přemysl Eric Janouch
|
||||
# This file is distributed under the same license as the logdiag package.
|
||||
# Miroslav Rigler <itsgoingd@luzer.sk>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: logdiag\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-06-27 04:52+0200\n"
|
||||
"Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
|
||||
"POT-Creation-Date: 2021-10-22 22:16+0200\n"
|
||||
"PO-Revision-Date: 2018-06-25 04:05+0200\n"
|
||||
"Last-Translator: Přemysl Janouch <p@janouch.name>\n"
|
||||
"Last-Translator: Přemysl Eric Janouch <p@janouch.name>\n"
|
||||
"Language-Team: Slovak <sk@li.org>\n"
|
||||
"Language: sk\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -17,16 +17,16 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.0.8\n"
|
||||
|
||||
#: ../src/ld-window-main.c:931
|
||||
#: ../src/ld-window-main.c:937
|
||||
#, c-format
|
||||
msgid "%d%%"
|
||||
msgstr "%d %%"
|
||||
|
||||
#: ../src/logdiag.c:146
|
||||
#: ../src/logdiag.c:147
|
||||
msgid "- Schematic editor"
|
||||
msgstr "- Editor schém"
|
||||
|
||||
#: ../src/ld-window-main.c:855
|
||||
#: ../src/ld-window-main.c:861
|
||||
msgid "Close _without Saving"
|
||||
msgstr "Zatvoriť _bez uloženia"
|
||||
|
||||
@@ -59,7 +59,7 @@ msgstr "Nepodarilo sa otvoriť súbor"
|
||||
msgid "Failed to save the diagram"
|
||||
msgstr "Nepodarilo sa uložiť diagram"
|
||||
|
||||
#: ../src/ld-window-main.c:853
|
||||
#: ../src/ld-window-main.c:859
|
||||
msgid "If you don't save, changes will be permanently lost."
|
||||
msgstr "Ak ich neuložíte, budú zmeny navždy stratené."
|
||||
|
||||
@@ -87,7 +87,7 @@ msgstr "Vykoná naposledy vrátenú akciu"
|
||||
msgid "Reset zoom level back to the default"
|
||||
msgstr "Vráti priblíženie na východiskovú hodnotu"
|
||||
|
||||
#: ../src/ld-window-main.c:790
|
||||
#: ../src/ld-window-main.c:792
|
||||
msgid "Save As..."
|
||||
msgstr "Uložiť ako..."
|
||||
|
||||
@@ -108,7 +108,7 @@ msgid ""
|
||||
"Save the changes to diagram \"%s\" before closing it and opening another one?"
|
||||
msgstr "Uložiť zmeny v diagrame \"%s\" pred jeho zatvorením a otvorením iného?"
|
||||
|
||||
#: ../src/ld-window-main.c:893
|
||||
#: ../src/ld-window-main.c:899
|
||||
#, c-format
|
||||
msgid "Save the changes to diagram \"%s\" before closing?"
|
||||
msgstr "Uložiť zmeny v diagrame \"%s\" pred jeho zatvorením?"
|
||||
@@ -161,6 +161,11 @@ msgstr "Vráti poslednú akciu"
|
||||
msgid "Unsaved Diagram"
|
||||
msgstr "Neuložený diagram"
|
||||
|
||||
#: ../src/ld-window-main.c:806
|
||||
#, fuzzy
|
||||
msgid "Untitled diagram"
|
||||
msgstr "Neuložený diagram"
|
||||
|
||||
#: ../src/ld-window-main.c:171
|
||||
msgid "Zoom _Out"
|
||||
msgstr "_Oddialiť"
|
||||
@@ -241,7 +246,7 @@ msgstr "_Zobrazenie"
|
||||
msgid "_Zoom In"
|
||||
msgstr "_Priblížiť"
|
||||
|
||||
#: ../src/ld-window-main.c:977
|
||||
#: ../src/ld-window-main.c:983
|
||||
msgid "translator-credits"
|
||||
msgstr "Miroslav Rigler <itsgoingd@luzer.sk>"
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<schemalist>
|
||||
<schema id="org.logdiag" path="/apps/logdiag/" gettext-domain="logdiag">
|
||||
<schema id="org.logdiag" path="/org/logdiag/" gettext-domain="logdiag">
|
||||
<key name="show-main-toolbar" type="b">
|
||||
<default>true</default>
|
||||
<summary>Whether to show the main toolbar</summary>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-window-main.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011, 2012
|
||||
* Copyright 2010 - 2021 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
@@ -784,6 +784,8 @@ static void
|
||||
diagram_show_save_as_dialog (LdWindowMain *self)
|
||||
{
|
||||
GtkWidget *dialog;
|
||||
GtkFileChooser *file_chooser;
|
||||
gchar *filename;
|
||||
|
||||
g_return_if_fail (LD_IS_WINDOW_MAIN (self));
|
||||
|
||||
@@ -796,15 +798,19 @@ diagram_show_save_as_dialog (LdWindowMain *self)
|
||||
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog),
|
||||
diagram_get_file_filter ());
|
||||
|
||||
file_chooser = GTK_FILE_CHOOSER (dialog);
|
||||
if (self->priv->filename)
|
||||
gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (dialog),
|
||||
self->priv->filename);
|
||||
gtk_file_chooser_set_filename (file_chooser, self->priv->filename);
|
||||
else
|
||||
{
|
||||
filename = g_strdup_printf ("%s.ldd", _("Untitled diagram"));
|
||||
gtk_file_chooser_set_current_name (file_chooser, filename);
|
||||
g_free (filename);
|
||||
}
|
||||
|
||||
while (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
|
||||
{
|
||||
gchar *filename;
|
||||
|
||||
filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog));
|
||||
filename = gtk_file_chooser_get_filename (file_chooser);
|
||||
if (diagram_save (self, GTK_WINDOW (dialog), filename))
|
||||
{
|
||||
diagram_set_filename (self, filename);
|
||||
@@ -975,7 +981,7 @@ on_action_about (GtkAction *action, LdWindowMain *self)
|
||||
"logo-icon-name", PROJECT_NAME,
|
||||
"version", PROJECT_VERSION,
|
||||
"translator-credits", _("translator-credits"),
|
||||
"copyright", "Copyright Přemysl Janouch 2010 - 2018",
|
||||
"copyright", "Copyright 2010 - 2021 Přemysl Eric Janouch",
|
||||
"website", PROJECT_URL,
|
||||
NULL);
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* ld-window-main.h
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010
|
||||
* Copyright 2010 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* logdiag.c -- logdiag main source file.
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2010, 2011
|
||||
* Copyright 2010, 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
@@ -137,6 +137,7 @@ main (int argc, char *argv[])
|
||||
|
||||
#ifdef _WIN32
|
||||
/* Don't be unneccessarily limited by the system ANSI codepage. */
|
||||
/* g_win32_get_command_line() should replace this code for GLib >= 2.40. */
|
||||
argv_overriden = get_utf8_args (&argc, &argv);
|
||||
if (argv_overriden)
|
||||
_putenv ("CHARSET=UTF-8");
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* diagram.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2011
|
||||
* Copyright 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* point-array.c
|
||||
*
|
||||
* This file is a part of logdiag.
|
||||
* Copyright Přemysl Janouch 2011
|
||||
* Copyright 2011 Přemysl Eric Janouch
|
||||
*
|
||||
* See the file LICENSE for licensing information.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user