From e438e975c2a44ee2f0a5e4e0ae13102b37aadd05 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Fri, 16 Oct 2020 19:31:51 +0200 Subject: [PATCH 01/18] + Updated gtkada dependency. --- alire.toml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 alire.toml diff --git a/alire.toml b/alire.toml new file mode 100644 index 0000000..2470b33 --- /dev/null +++ b/alire.toml @@ -0,0 +1,13 @@ +description = "Ada Industrial Control Widgets Library" +name = "aicwl" +version = "3.24" +authors = ["Dmitry A. Kazakov "] +website = "http://www.dmitry-kazakov.de/ada/aicwl.htm" +licenses = ["GMGPL 2.0"] +maintainers = ["vinzent@heisenbug.eu"] +maintainers-logins = ["Jellix"] +project-files = ["sources/aicwl.gpr"] +tags = ["widgets", "gauge", "graphics", "ui", "gtk"] + +[[depends-on]] +gtkada = ">=17" From 14f5ee1b8407a555c99df67fea2d3330d4513114 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Fri, 16 Oct 2020 20:29:12 +0200 Subject: [PATCH 02/18] + Added alire.lock. --- alire.lock | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 alire.lock diff --git a/alire.lock b/alire.lock new file mode 100644 index 0000000..cfbd58f --- /dev/null +++ b/alire.lock @@ -0,0 +1,12 @@ +# THIS IS A MACHINE-GENERATED FILE. DO NOT EDIT MANUALLY. + +[solution] +[solution.context] +solved = true +[[solution.state]] +crate = "gtkada" +fulfilment = "hinted" +pinned = false +transitivity = "direct" +versions = ">=17" + From 1043a61efefd71e365921ecbe233eea59bda091c Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Fri, 16 Oct 2020 20:30:51 +0200 Subject: [PATCH 03/18] + Added patch level to version number to indicate changes in release process. --- alire.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/alire.toml b/alire.toml index 2470b33..a55cc55 100644 --- a/alire.toml +++ b/alire.toml @@ -1,6 +1,6 @@ description = "Ada Industrial Control Widgets Library" name = "aicwl" -version = "3.24" +version = "3.24.0" authors = ["Dmitry A. Kazakov "] website = "http://www.dmitry-kazakov.de/ada/aicwl.htm" licenses = ["GMGPL 2.0"] From f11c6ab1eda80f507f5717d3bdcabae62a8a2e1a Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sat, 17 Oct 2020 23:38:25 +0200 Subject: [PATCH 04/18] + Added gpr-externals. --- alire.toml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/alire.toml b/alire.toml index a55cc55..c0f7c76 100644 --- a/alire.toml +++ b/alire.toml @@ -9,5 +9,12 @@ maintainers-logins = ["Jellix"] project-files = ["sources/aicwl.gpr"] tags = ["widgets", "gauge", "graphics", "ui", "gtk"] +[gpr-externals] +Legacy = ["Ada95", "Ada2005", "Ada2012"] +Development = ["Debug", "Release", "Profile"] +Target_OS = ["Windows", "Windows_NT", "Linux", "UNIX", "OSX", "FreeBSD", "auto"] +Arch = ["x86_64", "i686", "armhf", "aarch64", "auto"] +Object_Dir_Scheme_Type = [".", "nested"] + [[depends-on]] gtkada = ">=17" From a4cf7fa442c245a3a2d3afd0f4e29a610f7a9f80 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sat, 17 Oct 2020 23:41:47 +0200 Subject: [PATCH 05/18] + Added libgio to dependencies (normally bundled with Glib). --- alire.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/alire.toml b/alire.toml index c0f7c76..a15bee7 100644 --- a/alire.toml +++ b/alire.toml @@ -18,3 +18,4 @@ Object_Dir_Scheme_Type = [".", "nested"] [[depends-on]] gtkada = ">=17" +libgio = "2.0" From 07236179aff53e666b1da1ba12a670efb5792b0c Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 00:28:34 +0200 Subject: [PATCH 06/18] + Added .gitignore. --- .gitignore | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c602a1e --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +# If Object_Dir_Scheme_Type is ".", objects end up in the source directory. +# Rather don't do that, but if you do, we should ignore the files +sources/*.ali +sources/*.o +sources/*.stderr +sources/*.stdout From cc8822d635ae2dcfcd567807772cd3ad28adb701 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 00:30:18 +0200 Subject: [PATCH 07/18] + Added the whole bunch of project-files and executables. --- alire.toml | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 89 insertions(+), 3 deletions(-) diff --git a/alire.toml b/alire.toml index a15bee7..9b24164 100644 --- a/alire.toml +++ b/alire.toml @@ -1,12 +1,98 @@ description = "Ada Industrial Control Widgets Library" name = "aicwl" version = "3.24.0" -authors = ["Dmitry A. Kazakov "] +authors = ["Dmitry A. Kazakov"] website = "http://www.dmitry-kazakov.de/ada/aicwl.htm" -licenses = ["GMGPL 2.0"] +licenses = ["GMGPL 2.0", # according to website (http://www.dmitry-kazakov.de/ada/aicwl.htm) + "LGPL 3.0"] # according to sourceforge (https://sf.net/projects/aicwl) maintainers = ["vinzent@heisenbug.eu"] maintainers-logins = ["Jellix"] -project-files = ["sources/aicwl.gpr"] +project-files = ["sources/aicwl.gpr", + "sources/aicwl-editor.gpr", + "components-gnade-gtk.gpr", + "components-gtk.gpr", + "components-odbc-gtk.gpr", + "sources/examples/on_line/plotter/on_line_plotter.gpr", + "sources/examples/plotter/oscilloscope_plotter.gpr", + "sources/test_aicwl/aicwl-tests.gpr", + "sources/test_aicwl/test_oscilloscope.gpr", + "sources/test_aicwl/test_oscilloscope_stack.gpr", + "sources/test_gtkada/components-gnade-gtk-tests.gpr", + "sources/test_gtkada/components-gtk-tests.gpr", + "sources/test_gtkada/gtkada_contributions-rsvg-tests.gpr", + "sources/test_gtkada/gtkada_contributions-source_view-tests.gpr", + "sources/test_gtkada/gtkada_contributions-test.gpr", + "sources/test_strings_edit/strings-edit-test.gpr", + "sources/xpm2gtkada/xpm2gtkada.gpr"] + +executables = [# examples/on_line/plotter/on_line_plotter.gpr + "on_line_plotter", + # examples/plotter/oscilloscope_plotter.gpr + "oscilloscope_plotter", + # test_aicwl/aicwl-tests.gpr + "test_aicwl", + # test_aicwl/test_oscilloscope.gpr + "test_oscilloscope", + # test_aicwl/test_oscilloscope_stack.gpr + "test_oscilloscope_stack", + # test_gtkada/components-gnade-gtk-tests.gpr + "test_gtk_persistent_directory_browser", + # test_gtkada/components-gtk-tests.gpr + "test_gtk_directory_browser", + # test_gtkada/gtkada_contributions-rsvg-tests.gpr + "test_gtk_rsvg", + # test_gtkada/gtkada_contributions-source_view-tests.gpr + "test_gtk_source_view", + # test_gtkada/gtkada_contributions-test.gpr + "test_gtk_asynchronous_spawn", + "test_gtk_button", + "test_gtk_color", + "test_gtk_columned_store", + "test_gtk_controlled_string_list", + "test_gtk_content_type", + "test_gtk_custom_store", + "test_gtk_enum_combo_box", + "test_gtk_extension_store", + "test_gtk_missed", + "test_gtk_fixed", + "test_gtk_recent_manager", + "test_gtk_spawn", + "test_gtk_tasking", + "test_gtk_tracing", + # test_strings_edit/strings-edit-test.gpr + "strings_edit-utf8-categorization_generator", # or just categorization_generator? + "strings_edit-utf8-mapping_generator", # ? + "test_base64", + "test_chacha20", + "test_iso_8601", + "test_iso_8859_2", + "test_iso_8859_3", + "test_iso_8859_4", + "test_iso_8859_5", + "test_iso_8859_6", + "test_iso_8859_7", + "test_iso_8859_8", + "test_iso_8859_9", + "test_iso_8859_10", + "test_itu_t61", + "test_koi8", + "test_macos_roman", + "test_oid", + "test_radix50", + "test_strings_edit", + "test_string_streams", + "test_windows_1250", + "test_windows_1251", + "test_windows_1252", + "test_windows_1253", + "test_windows_1254", + "test_windows_1255", + "test_windows_1256", + "test_windows_1257", + "test_windows_1258", + # xpm2gtkada/xpm2gtkada.gpr + "xpm2gtkada"] + tags = ["widgets", "gauge", "graphics", "ui", "gtk"] [gpr-externals] From 54ed4bb7864dce5d18904c805e1c1f116638b5f9 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 00:31:10 +0200 Subject: [PATCH 08/18] * Bumped patch level. --- alire.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/alire.toml b/alire.toml index 9b24164..a39befc 100644 --- a/alire.toml +++ b/alire.toml @@ -1,6 +1,6 @@ description = "Ada Industrial Control Widgets Library" name = "aicwl" -version = "3.24.0" +version = "3.24.1" authors = ["Dmitry A. Kazakov"] website = "http://www.dmitry-kazakov.de/ada/aicwl.htm" licenses = ["GMGPL 2.0", # according to website (http://www.dmitry-kazakov.de/ada/aicwl.htm) From 8e7081158d7a831594a5a9dc957f5a13501ca797 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 01:33:04 +0200 Subject: [PATCH 09/18] + Added alire/ directory. --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index c602a1e..34ca231 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +alire/ + # If Object_Dir_Scheme_Type is ".", objects end up in the source directory. # Rather don't do that, but if you do, we should ignore the files sources/*.ali From 3216f43450e2dfa7169d8af4947b6fe3808eecd8 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 01:44:09 +0200 Subject: [PATCH 10/18] + Fixed and updated alire manifest --- alire.lock | 6 ++++++ alire.toml | 49 +++++++++++++++++++++++++++++-------------------- 2 files changed, 35 insertions(+), 20 deletions(-) diff --git a/alire.lock b/alire.lock index cfbd58f..b6a110e 100644 --- a/alire.lock +++ b/alire.lock @@ -9,4 +9,10 @@ fulfilment = "hinted" pinned = false transitivity = "direct" versions = ">=17" +[[solution.state]] +crate = "libgio" +fulfilment = "missed" +pinned = false +transitivity = "direct" +versions = "^2.0" diff --git a/alire.toml b/alire.toml index a39befc..a9bf61b 100644 --- a/alire.toml +++ b/alire.toml @@ -9,23 +9,31 @@ maintainers = ["vinzent@heisenbug.eu"] maintainers-logins = ["Jellix"] project-files = ["sources/aicwl.gpr", "sources/aicwl-editor.gpr", - "components-gnade-gtk.gpr", - "components-gtk.gpr", - "components-odbc-gtk.gpr", - "sources/examples/on_line/plotter/on_line_plotter.gpr", + # Next three extend simple components + # (http://www.dmitry-kazakov.de/ada/components.htm), which is not + # included here. + # "components-gnade-gtk.gpr", + # "components-gtk.gpr", + # "components-odbc-gtk.gpr", + "sources/examples/on_line_plotter/on_line_plotter.gpr", "sources/examples/plotter/oscilloscope_plotter.gpr", "sources/test_aicwl/aicwl-tests.gpr", "sources/test_aicwl/test_oscilloscope.gpr", "sources/test_aicwl/test_oscilloscope_stack.gpr", - "sources/test_gtkada/components-gnade-gtk-tests.gpr", - "sources/test_gtkada/components-gtk-tests.gpr", + # Part of simple components, see above + # "sources/test_gtkada/components-gnade-gtk-tests.gpr", + # "sources/test_gtkada/components-gtk-tests.gpr", "sources/test_gtkada/gtkada_contributions-rsvg-tests.gpr", - "sources/test_gtkada/gtkada_contributions-source_view-tests.gpr", - "sources/test_gtkada/gtkada_contributions-test.gpr", - "sources/test_strings_edit/strings-edit-test.gpr", - "sources/xpm2gtkada/xpm2gtkada.gpr"] + # Disabled for now, this requires libgtksourceview-3.0 and my + # attempts resulted in some undefined symbol references to libgtk3 + # "sources/test_gtkada/gtkada_contributions-source_view-tests.gpr", + "sources/test_gtkada/gtkada_contributions-tests.gpr", + "sources/test_strings_edit/strings_edit-test.gpr" + # Requires components/xpm/xpm_parser + # "sources/xpm2gtkada/xpm2gtkada.gpr" + ] -executables = [# examples/on_line/plotter/on_line_plotter.gpr +executables = [# examples/on_line_plotter/on_line_plotter.gpr "on_line_plotter", # examples/plotter/oscilloscope_plotter.gpr "oscilloscope_plotter", @@ -36,14 +44,14 @@ executables = [# examples/on_line/plotter/on_line_plotter.gpr # test_aicwl/test_oscilloscope_stack.gpr "test_oscilloscope_stack", # test_gtkada/components-gnade-gtk-tests.gpr - "test_gtk_persistent_directory_browser", + # "test_gtk_persistent_directory_browser", # test_gtkada/components-gtk-tests.gpr - "test_gtk_directory_browser", + # "test_gtk_directory_browser", # test_gtkada/gtkada_contributions-rsvg-tests.gpr "test_gtk_rsvg", # test_gtkada/gtkada_contributions-source_view-tests.gpr "test_gtk_source_view", - # test_gtkada/gtkada_contributions-test.gpr + # test_gtkada/gtkada_contributions-tests.gpr "test_gtk_asynchronous_spawn", "test_gtk_button", "test_gtk_color", @@ -59,9 +67,9 @@ executables = [# examples/on_line/plotter/on_line_plotter.gpr "test_gtk_spawn", "test_gtk_tasking", "test_gtk_tracing", - # test_strings_edit/strings-edit-test.gpr - "strings_edit-utf8-categorization_generator", # or just categorization_generator? - "strings_edit-utf8-mapping_generator", # ? + # test_strings_edit/strings_edit-test.gpr + "strings_edit-utf8-categorization_generator", + "strings_edit-utf8-mapping_generator", "test_base64", "test_chacha20", "test_iso_8601", @@ -89,9 +97,10 @@ executables = [# examples/on_line/plotter/on_line_plotter.gpr "test_windows_1255", "test_windows_1256", "test_windows_1257", - "test_windows_1258", + "test_windows_1258" # xpm2gtkada/xpm2gtkada.gpr - "xpm2gtkada"] + #"xpm2gtkada" + ] tags = ["widgets", "gauge", "graphics", "ui", "gtk"] @@ -104,4 +113,4 @@ Object_Dir_Scheme_Type = [".", "nested"] [[depends-on]] gtkada = ">=17" -libgio = "2.0" +libgio = "^2.0" From af14845217e97bdd208214f7c163726ff5e032ee Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 02:10:44 +0200 Subject: [PATCH 11/18] + Added long-description. --- alire.toml | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/alire.toml b/alire.toml index a9bf61b..b25f46b 100644 --- a/alire.toml +++ b/alire.toml @@ -1,4 +1,38 @@ description = "Ada Industrial Control Widgets Library" +long-description = """ +This crate provides a library for designing high-quality industrial control +widgets for Ada applications. The software is based on +[GtkAda](https://docs.adacore.com/live/wave/gtkada/html/gtkada_rm/index.html), +Ada bindings to [Gtk+](https://www.gtk.org/), and +[cairo](https://www.cairographics.org/manual/index.html). + +The key features of the library are: + +* Widgets composed of transparent layers drawn by cairo +* Fully scalable graphics +* Support of time controlled refresh policy for real-time and heavy-duty applications +* Caching graphical operations +* Stream I/O support for serialization and deserialization +* Ready-to-use gauge, meter, oscilloscope widgets +* Editor widget for WYSIWYG design of complex dashboards + +For further information, visit the +[AICWL website](http://www.dmitry-kazakov.de/ada/aicwl.htm). + +Maintainer's note: + +This Alire crate is packaged rather minimalistic to keep dependencies on +external libraries at a minimum. The crate covers the core functionality of AICWL, +though, so it should be sufficient for most needs. + +For example, the original distribution has references to +[Simple Components](http://www.dmitry-kazakov.de/ada/components.htm) which are +not strictly necessary for the core functionality of the library. + +Also disabled is the source view widget, which seems to require +libgtksourceview-2, another external dependency. Again, not strictly necessary +to cover the core functionality. +""" name = "aicwl" version = "3.24.1" authors = ["Dmitry A. Kazakov"] From 962a4901e76e6cbdd7e6408afd9cf63557e590dc Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 02:43:17 +0200 Subject: [PATCH 12/18] Documentation of purpose and packaging strategy. --- README.md | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 98 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 4a0d320..00e682f 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,102 @@ [![Alire](https://img.shields.io/endpoint?url=https://alire.ada.dev/badges/aicwl.json)](https://alire.ada.dev/crates/aicwl.html) -Mirror of Dmitry A. Kazakov's [Ada Industrial Control Widget Library](http://www.dmitry-kazakov.de/ada/aicwl.htm) +### Foreword -### [CHANGELOG](http://www.dmitry-kazakov.de/ada/aicwl.htm#changes_log) +This is, in essence, a mirror of Dmitry A. Kazakov's +[Ada Industrial Control Widget Library](http://www.dmitry-kazakov.de/ada/aicwl.htm). + +I am not the developer of this library. This repository serves as a mirror of the +original releases of AICWL to ease integration with +[Alire](https://github.com/alire-project/alire). + +For documentation refer to the [AICWL website](http://www.dmitry-kazakov.de/ada/aicwl.htm). + +Dmitry also already provides pre-packaged binary and source archives for most supported +platforms, if that is all you need, you can download and install these and ignore this +repository. + +## Introduction + +AICWL is a library for designing high-quality industrial control +widgets for Ada applications. The software is based on +[GtkAda](https://docs.adacore.com/live/wave/gtkada/html/gtkada_rm/index.html), +Ada bindings to [Gtk+](https://www.gtk.org/), and +[cairo](https://www.cairographics.org/manual/index.html). + +The key features of the library are: + +* Widgets composed of transparent layers drawn by cairo +* Fully scalable graphics +* Support of time controlled refresh policy for real-time and heavy-duty applications +* Caching graphical operations +* Stream I/O support for serialization and deserialization +* Ready-to-use gauge, meter, oscilloscope widgets +* Editor widget for WYSIWYG design of complex dashboards + +For further information, visit the +[AICWL website](http://www.dmitry-kazakov.de/ada/aicwl.htm). + +### Changelog + +Refer to the original software's +[Change log](http://www.dmitry-kazakov.de/ada/aicwl.htm#changes_log). + +## Maintainer's note + +The Alire crate is packaged rather minimalistic to keep dependencies on +external libraries at a minimum. The crate covers the core functionality of AICWL, +though, so it should be sufficient for most needs. + +For example, the original distribution has references to +[Simple Components](http://www.dmitry-kazakov.de/ada/components.htm) which are +not strictly necessary for the core functionality of the library. + +Maybe I'll package them one day and add them as dependency to the Alire crate. + +Also disabled is the source view widget, which seems to require +libgtksourceview-2, another external dependency. Again, not strictly necessary +to cover the core functionality. + +### Rules and Conventions + +* The first (and only) rule is that I will not change the original sources (i.e. + the subdirectory named `sources` which contains everything provided by the + software's author. Sources are provided as is. + * I may deviate from that rule if the need arises, but this will then be + clearly stated in the release notes, and will likely require extra-ordinary + circumstances. +* Version numbers and associated tage follow those of the original author + * For tagging and the creation of Alire creates, I do add a patch level, + though. + Example: + AICWL3.24.0 denotes the (unchanged) AICWL3.24 release. If the patch level + increases that means I repackaged the software, updated the alire manifest + or otherwise improved upon the release. + +### Repository Structure + +Whenever a new version is released by the author, I will integrate this version +as is on the `main` in the `sources` directory branch and tag this import as +such (i.e. the latest tag is `aicwl3.24`). + +Released crates will branch from the initial tag under a branch names +`releases/version-number` (e.g. `releases/3.24`). Whenever I package a new +version for Alire to be integrated with the Alire index this will happen +under this branch. The released version will be tagged as +rel-version-number-patchlevel (e.g. `rel-3.24-0`). + +That means, contrary to most github projects the latest (packaged) version is +not on the `main` branch, but under the appropriate `releases` branch, the +latest copy of the software-as-is remains on the top of the main branch, though. + +Considering that the main purpose of this repository is to provide Alire crates, +this shouldn't concern you, if you use Alire, your interaction with this +repository itself should be rather limited. + +### Releases + +Currently the only and newest release is AICWL 3.24, for obvious reasons I +started the integration from there. For historical purposed most AICWL releases +can be found in the repository, down to version AICWL 3.9, but they are not +packaged for Alire and I doubt they ever will. From 2a58f1dcc512902e0ba369c8e227a04848659cdd Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 03:37:05 +0200 Subject: [PATCH 13/18] * Fixed gpr-externals. --- alire.toml | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/alire.toml b/alire.toml index b25f46b..ff1715d 100644 --- a/alire.toml +++ b/alire.toml @@ -21,9 +21,9 @@ For further information, visit the Maintainer's note: -This Alire crate is packaged rather minimalistic to keep dependencies on -external libraries at a minimum. The crate covers the core functionality of AICWL, -though, so it should be sufficient for most needs. +This Alire crate is packaged in a rather minimalistic way to keep dependencies +on external libraries at a minimum. The crate covers the core functionality of +AICWL, though, so it should be sufficient for most needs. For example, the original distribution has references to [Simple Components](http://www.dmitry-kazakov.de/ada/components.htm) which are @@ -35,11 +35,11 @@ to cover the core functionality. """ name = "aicwl" version = "3.24.1" -authors = ["Dmitry A. Kazakov"] +authors = ["Dmitry A. Kazakov "] website = "http://www.dmitry-kazakov.de/ada/aicwl.htm" licenses = ["GMGPL 2.0", # according to website (http://www.dmitry-kazakov.de/ada/aicwl.htm) "LGPL 3.0"] # according to sourceforge (https://sf.net/projects/aicwl) -maintainers = ["vinzent@heisenbug.eu"] +maintainers = ["Vinzent \"Jellix\" Saranen "] maintainers-logins = ["Jellix"] project-files = ["sources/aicwl.gpr", "sources/aicwl-editor.gpr", @@ -139,11 +139,23 @@ executables = [# examples/on_line_plotter/on_line_plotter.gpr tags = ["widgets", "gauge", "graphics", "ui", "gtk"] [gpr-externals] -Legacy = ["Ada95", "Ada2005", "Ada2012"] -Development = ["Debug", "Release", "Profile"] -Target_OS = ["Windows", "Windows_NT", "Linux", "UNIX", "OSX", "FreeBSD", "auto"] -Arch = ["x86_64", "i686", "armhf", "aarch64", "auto"] -Object_Dir_Scheme_Type = [".", "nested"] +Legacy = ["Ada95", "Ada2005", "Ada2012"] # defaults to "Ada2012" +Development = ["Debug", "Release", "Profile"] # defaults to "Debug" + +# Target_OS = ["Windows", "Windows_NT", "Linux", "UNIX", "OSX", "FreeBSD", "auto"] +# arch = ["x86_64", "i686", "armhf", "aarch64", "auto"] +# +# Note: Arch and Target_OS are determined automatically from Project'Target, so +# no need to have them set explicitely. +# +# Object_Dir = [".", "nested"] +# +# Note: Object_Dir works as follows: If it's ".", it will remain so, if it's +# "nested", Object_Dir will become roughly obj/{OS}/{arch}/{Development}, +# e.g. "obj/linux/x86_64/debug", all other cases result in Object_Dir +# being unchanged. +# Hence we should leave it as is (the default is "."), trusting Alire to +# set an appropriate one. [[depends-on]] gtkada = ">=17" From 651ad9ce2839067fb1b3972b61f2709fe29bbac8 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 03:40:44 +0200 Subject: [PATCH 14/18] - Removed dependency on libgio. This should come bundled with glib, hence should be part of gtkada. --- alire.toml | 1 - 1 file changed, 1 deletion(-) diff --git a/alire.toml b/alire.toml index ff1715d..9550ff3 100644 --- a/alire.toml +++ b/alire.toml @@ -159,4 +159,3 @@ Development = ["Debug", "Release", "Profile"] # defaults to "Debug" [[depends-on]] gtkada = ">=17" -libgio = "^2.0" From bd660b2052f51fbda9c6c3acecbe0103c57faa0b Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 03:41:32 +0200 Subject: [PATCH 15/18] * Updated alire manifest. --- alire.lock | 6 ------ 1 file changed, 6 deletions(-) diff --git a/alire.lock b/alire.lock index b6a110e..cfbd58f 100644 --- a/alire.lock +++ b/alire.lock @@ -9,10 +9,4 @@ fulfilment = "hinted" pinned = false transitivity = "direct" versions = ">=17" -[[solution.state]] -crate = "libgio" -fulfilment = "missed" -pinned = false -transitivity = "direct" -versions = "^2.0" From 305078d3f6d7f68581253f081027073f0d6b9d53 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 05:07:06 +0200 Subject: [PATCH 16/18] * Disabled building of most executables, as rsvg-2 is not available. --- alire.toml | 74 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 38 insertions(+), 36 deletions(-) diff --git a/alire.toml b/alire.toml index 9550ff3..56f8809 100644 --- a/alire.toml +++ b/alire.toml @@ -41,66 +41,68 @@ licenses = ["GMGPL 2.0", # according to website (http://www.dmitry-kazakov.de/ad "LGPL 3.0"] # according to sourceforge (https://sf.net/projects/aicwl) maintainers = ["Vinzent \"Jellix\" Saranen "] maintainers-logins = ["Jellix"] +note="Due to missing libraries on the test machines, most executables are not currently built." project-files = ["sources/aicwl.gpr", "sources/aicwl-editor.gpr", # Next three extend simple components # (http://www.dmitry-kazakov.de/ada/components.htm), which is not # included here. - # "components-gnade-gtk.gpr", - # "components-gtk.gpr", - # "components-odbc-gtk.gpr", - "sources/examples/on_line_plotter/on_line_plotter.gpr", - "sources/examples/plotter/oscilloscope_plotter.gpr", - "sources/test_aicwl/aicwl-tests.gpr", - "sources/test_aicwl/test_oscilloscope.gpr", - "sources/test_aicwl/test_oscilloscope_stack.gpr", + # "components-gnade-gtk.gpr", # Needs components + # "components-gtk.gpr", # Needs components + # "components-odbc-gtk.gpr", # Needs components + # "sources/examples/on_line_plotter/on_line_plotter.gpr", # Needs rsvg-2 + # "sources/examples/plotter/oscilloscope_plotter.gpr", # Needs rsvg-2 + # "sources/test_aicwl/aicwl-tests.gpr", # Needs rsvg-2 + # "sources/test_aicwl/test_oscilloscope.gpr", # Needs rsvg-2 + # "sources/test_aicwl/test_oscilloscope_stack.gpr", # Needs rsvg-2 # Part of simple components, see above - # "sources/test_gtkada/components-gnade-gtk-tests.gpr", - # "sources/test_gtkada/components-gtk-tests.gpr", - "sources/test_gtkada/gtkada_contributions-rsvg-tests.gpr", - # Disabled for now, this requires libgtksourceview-3.0 and my - # attempts resulted in some undefined symbol references to libgtk3 + # "sources/test_gtkada/components-gnade-gtk-tests.gpr", # Needs components + # "sources/test_gtkada/components-gtk-tests.gpr", # Needs components + # "sources/test_gtkada/gtkada_contributions-rsvg-tests.gpr", # Needs rsvg-2 + # Disabled for now, this requires libgtksourceview-3.0 and + # my attempts resulted in some undefined symbol references + # to libgtk3 # "sources/test_gtkada/gtkada_contributions-source_view-tests.gpr", - "sources/test_gtkada/gtkada_contributions-tests.gpr", + # "sources/test_gtkada/gtkada_contributions-tests.gpr", # Needs rsvg-2 "sources/test_strings_edit/strings_edit-test.gpr" # Requires components/xpm/xpm_parser # "sources/xpm2gtkada/xpm2gtkada.gpr" ] executables = [# examples/on_line_plotter/on_line_plotter.gpr - "on_line_plotter", + # "on_line_plotter", # examples/plotter/oscilloscope_plotter.gpr - "oscilloscope_plotter", + # "oscilloscope_plotter", # test_aicwl/aicwl-tests.gpr - "test_aicwl", + # "test_aicwl", # test_aicwl/test_oscilloscope.gpr - "test_oscilloscope", + # "test_oscilloscope", # test_aicwl/test_oscilloscope_stack.gpr - "test_oscilloscope_stack", + # "test_oscilloscope_stack", # test_gtkada/components-gnade-gtk-tests.gpr # "test_gtk_persistent_directory_browser", # test_gtkada/components-gtk-tests.gpr # "test_gtk_directory_browser", # test_gtkada/gtkada_contributions-rsvg-tests.gpr - "test_gtk_rsvg", + # "test_gtk_rsvg", # test_gtkada/gtkada_contributions-source_view-tests.gpr - "test_gtk_source_view", + # "test_gtk_source_view", # test_gtkada/gtkada_contributions-tests.gpr - "test_gtk_asynchronous_spawn", - "test_gtk_button", - "test_gtk_color", - "test_gtk_columned_store", - "test_gtk_controlled_string_list", - "test_gtk_content_type", - "test_gtk_custom_store", - "test_gtk_enum_combo_box", - "test_gtk_extension_store", - "test_gtk_missed", - "test_gtk_fixed", - "test_gtk_recent_manager", - "test_gtk_spawn", - "test_gtk_tasking", - "test_gtk_tracing", + # "test_gtk_asynchronous_spawn", + # "test_gtk_button", + # "test_gtk_color", + # "test_gtk_columned_store", + # "test_gtk_controlled_string_list", + # "test_gtk_content_type", + # "test_gtk_custom_store", + # "test_gtk_enum_combo_box", + # "test_gtk_extension_store", + # "test_gtk_missed", + # "test_gtk_fixed", + # "test_gtk_recent_manager", + # "test_gtk_spawn", + # "test_gtk_tasking", + # "test_gtk_tracing", # test_strings_edit/strings_edit-test.gpr "strings_edit-utf8-categorization_generator", "strings_edit-utf8-mapping_generator", From 73939c9ed0be13a994728d1c362b945e5d131f19 Mon Sep 17 00:00:00 2001 From: "Vinzent \"Jellix\" Saranen" Date: Sun, 18 Oct 2020 05:10:29 +0200 Subject: [PATCH 17/18] * Fixed 'notes' field. --- alire.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/alire.toml b/alire.toml index 56f8809..ec5f932 100644 --- a/alire.toml +++ b/alire.toml @@ -41,7 +41,7 @@ licenses = ["GMGPL 2.0", # according to website (http://www.dmitry-kazakov.de/ad "LGPL 3.0"] # according to sourceforge (https://sf.net/projects/aicwl) maintainers = ["Vinzent \"Jellix\" Saranen "] maintainers-logins = ["Jellix"] -note="Due to missing libraries on the test machines, most executables are not currently built." +notes = "Due to missing libraries on the test machines, most executables are not currently built." project-files = ["sources/aicwl.gpr", "sources/aicwl-editor.gpr", # Next three extend simple components From 77a3b163ed17465fd0b06545d4f998a53877e44d Mon Sep 17 00:00:00 2001 From: ohenley Date: Fri, 1 Mar 2024 15:12:59 -0500 Subject: [PATCH 18/18] fix gtk-main-router.adb --- sources/gtk-main-router.adb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sources/gtk-main-router.adb b/sources/gtk-main-router.adb index 4f8d0b4..5cb33c8 100644 --- a/sources/gtk-main-router.adb +++ b/sources/gtk-main-router.adb @@ -970,7 +970,7 @@ package body Gtk.Main.Router is Menu : Gtk_Menu; Item : Gtk_Image_Menu_Item; Icon : Gtk_Image; - Start : Gtk_Text_Iter; + Start : aliased Gtk_Text_Iter; Stop : Gtk_Text_Iter; Can_Go : Boolean := Standard.False; begin @@ -1001,6 +1001,7 @@ package body Gtk.Main.Router is Buffer_X : GInt; Buffer_Y : GInt; Moved : Boolean; + Res : Boolean; begin Dialog.Window_To_Buffer_Coords ( Text_Window_Widget, @@ -1009,7 +1010,7 @@ package body Gtk.Main.Router is Buffer_X, Buffer_Y ); - Dialog.Get_Iter_At_Location (Start, Buffer_X, Buffer_Y); + Res := Dialog.Get_Iter_At_Location (Start'Access, Buffer_X, Buffer_Y); Copy (Start, Stop); Moved := Standard.True; while Moved and then not Starts_Line (Start) loop