Re: Cross platform development

2017-03-19 Thread Dirk Gottschalk via gtk-app-devel-list
Hi.

Am Samstag, den 18.03.2017, 10:07 -0600 schrieb Michael Torrie:
> On 03/18/2017 09:16 AM, pelzflorian (Florian Pelz) wrote:
> > MSYS2 ships with the pacman package manager. After you have
> > followed the
> > instructions on the website, launch the MSYS2 shell from the MSYS2
> > folder and then this command installs everything you need to run
> > gedit
> > into a filesystem tree inside your msys2 folder.
> 
> But the OP already has an MSYS2 installation that has more than just
> GTK3 in it.  He wants to put just the GTK3 dependencies in a tree
> somewhere. To do that simply, he could unpack the GTK3 (and glib2)
> binary pacman packages if they could be located.

No, I have no MSYS2 installation on the target hosts and there will not
be. My program is part of a big collaborative project. The installation
 takes over one hour, because at this time we are bound to some
extraordinary big Micros*ck programs (MSSQL Advanced for example). This
will change, and I hope this will be soon. For this reason I don't want
to force my Customer to install even more software.

That is the reason why I want to deliver the required DLLs and only the
needed ones with my package.

My development is done only in a Linux environment.

Regards,
Dirk

-- 
Dirk Gottschalk, Aachen
Tel.: 01573 / 1152350
eMail: dirk.gottschalk1...@googlemail.com
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: Cross platform development

2017-03-19 Thread Dirk Gottschalk via gtk-app-devel-list
Hi Lucas.

Am Sonntag, den 19.03.2017, 10:44 +0100 schrieb Lucas Levrel via gtk-
app-devel-list:
> Le 18 mars 2017, à 14:37, Dirk Gottschalk via gtk-app-devel-list a
> écrit :
> 
> > Am Samstag, den 18.03.2017, 11:42 +0100 schrieb pelzflorian
> > (Florian
> > Pelz):
> > 
> > > Note that if your application is not libre software (it should
> > > be,
> > > please make it libre!), then static linking means you need to
> > > provide
> > > your application’s source code or compiled object files
> > 
> > Thanks, this is a point I totally forgot. So no statically linking
> > is
> > possible.
> > 
> > Making the project open is no option. The protocol of the devices
> > we
> > communicate with is covered by various NDAs.

> Does distributing a compiled object "leak" more information than 
> distributing a dynamically-linked exe?

No, it dowsn't. This was related to related to pelzflorian mentioning 
making this project open sourced.

> > I only want to copy just the needed files, not the complete DLL
> > set 
> > Mingw has on my systems, these are real much.

> I can't remember if finding the deps was part of your original
> question 
> (sorry). In case it was: http://www.dependencywalker.com/

I'll take a look at this. The question was which DLLs are nedded.

Thank you.

Regards,
Dirk

-- 
Dirk Gottschalk, Aachen
Tel.: 01573 / 1152350
eMail: dirk.gottschalk1...@googlemail.com
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: Cross platform development

2017-03-18 Thread Dirk Gottschalk via gtk-app-devel-list
Hi Florian,

Am Samstag, den 18.03.2017, 11:42 +0100 schrieb pelzflorian (Florian
Pelz):

> Note that if your application is not libre software (it should be,
> please make it libre!), then static linking means you need to provide
> your application’s source code or compiled object files upon user
> request so it can be relinked with another version of the LGPL’d
> libraries. You will also still need to provide the other resources
> like
> GTK’s schemas etc. But I have no experience with mxe.

Thanks, this is a point I totally forgot. So no statically linking is
possible.

Making the project open is no option. The protocol of the devices we
communicate with is covered by various NDAs.

The only chance is, to grab the DLLs from MinGW via objdump ore some
similar, like recommended and pack them into the applications working
directory, because Windows searches DLLs in its System, System32
subfolders and in the working directory of the app. This is tested. I
only want to copy just the needed files, not the complete DLL set Mingw
has on my systems, these are real much.

Thanks for mentioning the LGPL-Problem.

Regards, Dirk

-- 
Dirk Gottschalk, Aachen
Tel.: 01573 / 1152350
eMail: dirk.gottschalk1...@googlemail.com
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: What does "Pango-CRITICAL **: pango_layout_get_cursor_pos: assertion 'index >= 0 && index <= layout->length' failed" mean?

2017-02-08 Thread Dirk Gottschalk via gtk-app-devel-list
Hello Norbert,

thank you very much for your answer.

It did not solve the Problem, but it made me think about my string
handling in the callback function. The field throwing the error was the
input, not the output.

I just split the string using the pointer of the input and not copying
it before manipulating.

Sometimes the wrong answer can help to find the right direction to the
solution.

Thanks.

Best regards,
Dirk

Am Donnerstag, den 09.02.2017, 02:51 +0100 schrieb Norbert de Jonge:
> > keybuf = gtk_entry_buffer_new ("Not yet generated", 45);
> 
> https://developer.gnome.org/gtk3/stable/GtkEntryBuffer.html#gtk-entry
> -buffer-new
> 
> The second parameter of gtk_entry_buffer_new() specifies the number
> of
> characters in the string.
> 
> Either change 45 to 17 or to -1.
> 
> Best regards,
> Norbert
> ___
> gtk-app-devel-list mailing list
> gtk-app-devel-list@gnome.org
> https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
-- 
Dirk Gottschalk, Aachen
Tel.: 01573 / 1152350
eMail: dirk.gottschalk1...@googlemail.com
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

What does "Pango-CRITICAL **: pango_layout_get_cursor_pos: assertion 'index >= 0 && index <= layout->length' failed" mean?

2017-02-08 Thread Dirk Gottschalk via gtk-app-devel-list
Hello,

I just started developing GTK+ Applications.

But now I get the following error message and a broken Text when clicking back 
in to the GTKEntry widget:

(gtk-keygen:18220): Pango-CRITICAL **: pango_layout_get_cursor_pos: assertion 
'index >= 0 && index <= layout->length' failed


Here is the code causing this Problem:


static void activate (GtkApplication *app, gpointer user_data)
{
GtkWidget *window;
GtkWidget *grid;
GtkWidget *label_exp_date;
GtkWidget *input_exp_date;
GtkWidget *spacer;
GtkWidget *out_head;
GtkWidget *out_gen;
GtkWidget *gen_button;

/* Create window */ 
window = gtk_application_window_new (app);
gtk_window_set_title (GTK_WINDOW (window), PACKAGE_STRING);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);

/* Here we construct the container that is going pack our content */
grid = gtk_grid_new ();
gtk_grid_set_column_spacing (GTK_GRID (grid), 5);
gtk_grid_set_row_spacing (GTK_GRID (grid), 5);

/* Pack the container in the window */
gtk_container_add (GTK_CONTAINER (window), grid);

/* Create head label */
label_exp_date = gtk_label_new ("Key generator for garmin-srv.");
gtk_grid_attach (GTK_GRID (grid), label_exp_date, 0, 0, 3, 1);

/* Spacer */
spacer = gtk_label_new ("");
gtk_grid_attach (GTK_GRID (grid), spacer, 0, 1, 1, 1);

/* Key generator area */
label_exp_date = gtk_label_new ("Enter expiration date (dd.mm.):");
gtk_grid_attach (GTK_GRID (grid), label_exp_date, 0, 1, 1, 1);

input_exp_date = gtk_entry_new ();
gtk_entry_set_width_chars (GTK_ENTRY (input_exp_date), 10);
gtk_entry_set_max_length (GTK_ENTRY (input_exp_date), 10);
gtk_grid_attach (GTK_GRID (grid), input_exp_date, 1, 1, 1, 1);

gen_button = gtk_button_new_with_label ("Generate");
gtk_widget_set_halign (GTK_WIDGET (gen_button), GTK_ALIGN_END);
gtk_grid_attach (GTK_GRID (grid), gen_button, 2, 1, 1, 1);

/* Result area */
out_head = gtk_label_new ("Generated key:");
gtk_grid_attach (GTK_GRID (grid), out_head, 0, 2, 1, 1);

GtkEntryBuffer *keybuf;
keybuf = gtk_entry_buffer_new ("Not yet generated", 45);
out_gen = gtk_entry_new_with_buffer (GTK_ENTRY_BUFFER (keybuf));
gtk_entry_set_width_chars (GTK_ENTRY (out_gen), 50);
gtk_editable_set_editable (GTK_EDITABLE (out_gen), FALSE);
gtk_widget_set_can_focus (GTK_WIDGET (out_gen), FALSE);
gtk_grid_attach (GTK_GRID (grid), out_gen, 1, 2, 1, 1);


g_object_set_data (G_OBJECT(gen_button), "input", input_exp_date);
g_object_set_data (G_OBJECT(gen_button), "output", out_gen);

/* Exit when the window is closed */
g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);

g_signal_connect (gen_button, "clicked", G_CALLBACK (gtkGenKey),
  gen_button);

// g_signal_connect (gen_button, "clicked", G_CALLBACK (showKey), 
keybuf);

gtk_widget_show_all (window);
}

Can somebody help me and tell me what I am doing wrong?

Best Regards,
Dirk

-- 
Dirk Gottschalk, Aachen
Tel.: 01573 / 1152350
eMail: dirk.gottschalk1...@googlemail.com
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list