Re: [darktable-dev] Support Coding
Hi Jan, You may also try to generate a configuration for your IDE with CMake. This did a good job for me using Eclipse but Codeblocks should be also supported. See https://cmake.org/cmake/help/latest/manual/cmake-generators.7.html#ide-build-tool-generators Just append below argument when initializing CMake: -G "CodeBlocks - Unix Makefiles" Best Regards, Robert Am 02.05.21 um 14:25 schrieb Heiko Bauke: Dear Jan, Am 01.05.21 um 12:13 schrieb Solarer: I read the section on developing on the website and have 2 questions: 1) Do you prefer patches or pull requests? I think, creating a pull request on GitHub is the preferred way. 2) Can somebody tell me (or at least point me to a good source) how I can compile and run the code in an IDE, preferebly Codeblocks? So far I edited the code in my IDE but for building I ran the build script manually. My problem is that this does not allow me to set break points and I really need those. I can not say much specifically regarding Codeblocks. When I need to debug dt, my workflow is the following: * Build and install dt as described in https://github.com/darktable-org/darktable#compile (Usually a release build, sometimes a release build with debug information, rarely a debug build. Debug builds are terribly slow, release builds more difficult to debug due to missing debug information.) * Start dt. * Open dt sources into the ide (CLion in my case). * Attach debugger to the running dt process. Attaching a debugger to a running process may require to tweak some kernel parameters depending on the Linux version, see https://stackoverflow.com/questions/61388840/why-wont-codeblocks-attach-to-a-process https://www.jetbrains.com/help/clion/attaching-to-local-process.html Regards, Heiko ___ darktable developer mailing list to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org
Re: [darktable-dev] HELP NEEDED - long gtk menu does not scroll
It's a known issue which was introduced after 3.24.3 and should be solved in 3.24.7: https://gitlab.gnome.org/GNOME/gtk/issues/1719 Am 17.04.19 um 19:35 schrieb William Ferguson: My gtk2 is 2.24.32, so only the gtk3 is different 3.22.30 vs 3.24.x On Wed, Apr 17, 2019 at 1:24 PM Robert Rembold <mailto:d...@rrembold.de>> wrote: Hi Pascal, Unfortunately, I also noticed the described issue here. You're not alone ;) My settings are as follows: - Ubuntu 18.10 with Xfce - 1920*1080 screen resolution - gtk-2.24.32 - gtk-3.24.4 - built darktable from sources few days ago (if exact version matters I can check) Best Regards, Robert Am 17.04.19 um 18:13 schrieb Pascal Obry: > Hi Bill, > > Thanks for testing. > >> Did a pull yesterday and built from git last night. Opened the Canon >> lens list and was able to scroll with the mouse wheel. If I move to >> the top of the list it autoscrolls up and the same with the bottom >> even though the arrow buttons(?) aren't visible. I'm on Ubuntu >> 18.04. I also checked 2.6.2, built from source, and it worked fine >> also, and the top and bottom arrow buttons(?) are visible. > So that's on my side! Hum, what is your Gtk+ version? Maybe a bug in my > version. I'm using 3.24.5-1 on Debian (tested on 2 machines). > ___ darktable developer mailing list to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org <mailto:darktable-dev%2bunsubscr...@lists.darktable.org> ___ darktable developer mailing list to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org ___ darktable developer mailing list to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org
Re: [darktable-dev] HELP NEEDED - long gtk menu does not scroll
Hi Pascal, Unfortunately, I also noticed the described issue here. You're not alone ;) My settings are as follows: - Ubuntu 18.10 with Xfce - 1920*1080 screen resolution - gtk-2.24.32 - gtk-3.24.4 - built darktable from sources few days ago (if exact version matters I can check) Best Regards, Robert Am 17.04.19 um 18:13 schrieb Pascal Obry: Hi Bill, Thanks for testing. Did a pull yesterday and built from git last night. Opened the Canon lens list and was able to scroll with the mouse wheel. If I move to the top of the list it autoscrolls up and the same with the bottom even though the arrow buttons(?) aren't visible. I'm on Ubuntu 18.04. I also checked 2.6.2, built from source, and it worked fine also, and the top and bottom arrow buttons(?) are visible. So that's on my side! Hum, what is your Gtk+ version? Maybe a bug in my version. I'm using 3.24.5-1 on Debian (tested on 2 machines). ___ darktable developer mailing list to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org
Re: [darktable-dev] [PATCH] Image collection: added second order sorting
Am 13.03.19 um 22:42 schrieb Patrick Shanahan: * Robert Rembold [03-13-19 17:39]: Hi all, please find updated patch for second order sorting for image collection enclosed. It supports 'new' sorting criteria which were introduced since I provided it first time in 2017. Additionally some minor improvements/fixes went in. I'm looking forward someone takes this patch over to darktable master. Thanks! - Example1: sort by GROUP, RATING - Example2: sort by COLOR, RATING Hopefully, this is not yet implemented somewhere in parallel ;) you will probably get quicker recognition and resolution if you report the issue @ https://redmine.darktable.org/projects/darktable/issues and include your patch maybe also referenct your post. tks, Done. See https://redmine.darktable.org/issues/12630 ___ darktable developer mailing list to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org
Re: [darktable-dev] nice interface colors :)
Hi all, I observed same issue with latest HEAD revision from GitHub. $ pkg-config --modversion gtk+-3.0 3.18.9 $ lsb_relase -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.04.3 LTS Release: 16.04 Codename: xenial Already performed complete rebuild, not solved the issue. $ ../local_install/bin/darktable [3;J dt_gui_gtk_init: error parsing /home/rrd/code/darktable/local_install/share/darktable/darktable.css: darktable.css:621:15Missing name of pseudo-class Since issue does not show up in dt 2.4.1 from PPA, I diffed both stylesheets: $ diff ../local_install/share/darktable/darktable.css /usr/share/darktable/darktable.css 18,21c18 < @define-color bauhaus_fg #999; < @define-color bauhaus_border #191919; < @define-color bauhaus_bg alpha(@bauhaus_border, 0.2); < @define-color bauhaus_fg_insensitive alpha(@bauhaus_fg, 0.2); --- > @define-color dark_bg_color #35; 600,624d596 < } < < #bauhaus-popup < { < /* NORMAL */ < background-color: @selected_bg_color; < color: @fg_color; < } < < #bauhaus-popup:selected < { < /* SELECTED */ < color: shade(@fg_color, 1.5); < } < < #bauhaus-popup:hover < { < /* PRELIGHT */ < color: shade(@fg_color, 0.7); < } < < #bauhaus-popup:disabled < { < /* insensitive */ < color: black; Mentioned problem "darktable.css:621:15" refers to #bauhaus-popup:disabled which seems to be added recently. Just commenting out this block solved the issue for me. Best Regards, Robert Am 08.02.2018 um 10:03 schrieb Tobias Ellinghaus: Am Donnerstag, 8. Februar 2018, 04:41:57 CET schrieb Alexander Rabtchevich: Hello Hi. Current git has brought funny colors to darktable :) Are you using GTK < 3.20? Please start darktable from a terminal, it should print some error messages about what is wrong with the css file. With respect, Alexander Rabtchevich Tobias ___ darktable developer mailing list to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org
[darktable-dev] [PATCH] Image collection: added second order sorting
Hi all, I added some lines to the sorting functionality of image collection and like to share them with you. In detail, I added second order sorting functionality to image collection. This seems to be most helpful when sorting by rating - Example1: sort by GROUP, RATING - Example2: sort by COLOR, RATING Hopefully, this is not yet implemented somewhere in parallel ;) Best Regards, Robert ___ darktable developer mailing list to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.orgdiff --git a/src/common/collection.c b/src/common/collection.c index fe31dbb..7ac1d7d 100644 --- a/src/common/collection.c +++ b/src/common/collection.c @@ -39,7 +39,7 @@ #define SELECT_QUERY "SELECT DISTINCT * FROM %s" -#define ORDER_BY_QUERY "ORDER BY" /*changed format!*/ +#define ORDER_BY_QUERY "ORDER BY %s" #define LIMIT_QUERY "LIMIT ?1, ?2" static const char *comparators[] = { @@ -119,7 +119,6 @@ int dt_collection_update(const dt_collection_t *collection) uint32_t result; gchar *wq, *sq, *selq, *query; wq = sq = selq = query = NULL; - static dt_collection_sort_t sort_second_order = DT_COLLECTION_SORT_NONE;/*remember previous sorting criteria as second order sorting criteria*/ /* build where part */ if(!(collection->params.query_flags & COLLECTION_QUERY_USE_ONLY_WHERE_EXT)) @@ -171,33 +170,21 @@ int dt_collection_update(const dt_collection_t *collection) } /* build select part includes where */ - if(((collection->params.sort == DT_COLLECTION_SORT_COLOR - && sort_second_order == DT_COLLECTION_SORT_PATH) - ||(collection->params.sort == DT_COLLECTION_SORT_PATH - && sort_second_order == DT_COLLECTION_SORT_COLOR)) - && (collection->params.query_flags & COLLECTION_QUERY_USE_SORT)) -selq = dt_util_dstrcat(selq, "SELECT DISTINCT id FROM (SELECT * FROM main.images WHERE %s) " - "AS a LEFT OUTER JOIN main.color_labels AS b ON a.id = b.imgid " - "JOIN (SELECT id AS film_rolls_id, folder FROM main.film_rolls) ON film_id = film_rolls_id", - wq); - else if((collection->params.sort == DT_COLLECTION_SORT_COLOR - ||sort_second_order == DT_COLLECTION_SORT_COLOR) + if(collection->params.sort == DT_COLLECTION_SORT_COLOR && (collection->params.query_flags & COLLECTION_QUERY_USE_SORT)) -selq = dt_util_dstrcat(selq, "SELECT DISTINCT id FROM (SELECT * FROM main.images WHERE %s) " - "AS a LEFT OUTER JOIN main.color_labels AS b ON a.id = b.imgid", +selq = dt_util_dstrcat(selq, "SELECT DISTINCT id FROM (SELECT * FROM main.images WHERE %s) AS a LEFT OUTER " + "JOIN main.color_labels AS b ON a.id = b.imgid", wq); - else if((collection->params.sort == DT_COLLECTION_SORT_PATH - ||sort_second_order == DT_COLLECTION_SORT_PATH) + else if(collection->params.sort == DT_COLLECTION_SORT_PATH && (collection->params.query_flags & COLLECTION_QUERY_USE_SORT)) -selq = dt_util_dstrcat(selq, "SELECT DISTINCT id FROM (SELECT * FROM main.images WHERE %s) " - "JOIN (SELECT id AS film_rolls_id, folder FROM main.film_rolls) ON film_id = film_rolls_id", +selq = dt_util_dstrcat(selq, "SELECT DISTINCT id FROM (SELECT * FROM main.images WHERE %s) JOIN (SELECT id AS " + "film_rolls_id, folder FROM main.film_rolls) ON film_id = film_rolls_id", wq); else if(collection->params.query_flags & COLLECTION_QUERY_USE_ONLY_WHERE_EXT) selq = dt_util_dstrcat(selq, "SELECT DISTINCT images.id FROM main.images %s", wq); else selq = dt_util_dstrcat(selq, "SELECT DISTINCT id FROM main.images WHERE %s", wq); - sort_second_order=collection->params.sort;/*remember current sort criteria for next time*/ /* build sort order part */ @@ -338,59 +325,37 @@ gboolean dt_collection_get_sort_descending(const dt_collection_t *collection) gchar *dt_collection_get_sort_query(const dt_collection_t *collection) { gchar *sq = NULL; - static gchar *second_order = NULL;/*remember previous sorting criteria as second order sorting criteria*/ - if(collection->params.descending) { switch(collection->params.sort) { case DT_COLLECTION_SORT_DATETIME: -if(second_order) sq = dt_util_dstrcat(sq, "%s datetime_taken DESC, %s, filename, version", ORDER_BY_QUERY, second_order); -else sq = dt_util_dstrcat(sq, "%s datetime_taken DESC, filename, version", ORDER_BY_QUERY); - -second_order = dt_util_dstrcat(NULL, "datetime_taken DESC"); +sq = dt_util_dstrcat(sq, ORDER_BY_QUERY, "datetime_taken DESC, filename, version"); break; case DT_COLLECTION_SORT_RATING: -if(second_order) sq = dt_util_dstrcat(sq, "%s flags & 7, %s, filename, version",