RE: [Inkscape-devel] Some fairly random feature reqs + bug reports.
I think I know what the problem here is. Johan, in verbs.h you have:
#ifdef HAVE_GTK_WINDOW_FULLSCREEN SP_VERB_FULLSCREEN, #endif /* HAVE_GTK_WINDOW_FULLSCREEN */ /* Dialogs */ SP_VERB_DIALOG_DISPLAY, SP_VERB_DIALOG_NAMEDVIEW, SP_VERB_DIALOG_TOOL_OPTIONS, SP_VERB_DIALOG_FILL_STROKE, SP_VERB_DIALOG_TRANSFORM, SP_VERB_DIALOG_ALIGN_DISTRIBUTE, SP_VERB_DIALOG_TEXT, SP_VERB_DIALOG_XML_EDITOR, SP_VERB_DIALOG_TOGGLE, SP_VERB_DIALOG_ITEM, /* Footer */ SP_VERB_LAST
Likely, the value of HAVE_GTK_WINDOW_FULLSCREEN is for some reason different here than in the rest of the codebase (not included config.h?) and therefore the constants for the dialog verbs are all shifted by one: transform becomes fill&stroke, etc. This explains the confused shortcuts. I'm not sure why this happens only on Windows (or perhaps it happens when HAVE_GTK_WINDOW_FULLSCREEN is false?) Could you please debug this ASAP, as it's a pretty annoying issue. Please call ishmal for help with Windows setup.
_________________________________________________________________ The new MSN 8: advanced junk mail protection and 2 months FREE* http://join.msn.com/?page=dept/bcomm&pgmarket=en-ca&RU=http%3a%2f%2f...
bulia byak wrote:
I think I know what the problem here is. Johan, in verbs.h you have:
#ifdef HAVE_GTK_WINDOW_FULLSCREEN SP_VERB_FULLSCREEN, #endif /* HAVE_GTK_WINDOW_FULLSCREEN */ /* Dialogs */ SP_VERB_DIALOG_DISPLAY, SP_VERB_DIALOG_NAMEDVIEW, SP_VERB_DIALOG_TOOL_OPTIONS, SP_VERB_DIALOG_FILL_STROKE, SP_VERB_DIALOG_TRANSFORM, SP_VERB_DIALOG_ALIGN_DISTRIBUTE, SP_VERB_DIALOG_TEXT, SP_VERB_DIALOG_XML_EDITOR, SP_VERB_DIALOG_TOGGLE, SP_VERB_DIALOG_ITEM, /* Footer */ SP_VERB_LAST
Likely, the value of HAVE_GTK_WINDOW_FULLSCREEN is for some reason different here than in the rest of the codebase (not included config.h?) and therefore the constants for the dialog verbs are all shifted by one: transform becomes fill&stroke, etc. This explains the confused shortcuts. I'm not sure why this happens only on Windows (or perhaps it happens when HAVE_GTK_WINDOW_FULLSCREEN is false?) Could you please debug this ASAP, as it's a pretty annoying issue. Please call ishmal for help with Windows setup.
Fixed. This minor mismatch is because the Linux world has Autoconf, and Win9x does not. (Well, usually). On Linux, autoconf generates HAVE_FULLSCREEN, on Win32, it is in config.h. So we just make sure that config.h is included before verbs.h, and we are OK. The culprit in particular was shortcuts.cpp.
Actually, feature switches -should- be in config.h. That is what it is for. Maybe we can add it to config.h.in?
Bob
On Sat, 14 Feb 2004 01:00:25 +0000 "bulia byak" <archiver_1@...19...> uttered:
Likely, the value of HAVE_GTK_WINDOW_FULLSCREEN is for some reason different here than in the rest of the codebase (not included config.h?) and therefore the constants for the dialog verbs are all shifted by one: transform becomes fill&stroke, etc. This explains the confused shortcuts. I'm not sure why this happens only on Windows (or perhaps it happens when HAVE_GTK_WINDOW_FULLSCREEN is false?) Could you please debug this ASAP, as it's a pretty annoying issue. Please call ishmal for help with Windows setup.
Apparently -DHAVE_CONFIG is not enough for mingw, so Bob had to put in #include "config.h" in some files to make it work on windows. To avoid cluttering other .h files with this, we can switch to precompiled headers when gcc3.4 is available on windows.
Johan
On 14 Feb 2004 14:20:18 +0100 Johan Ceuppens <jceuppen@...180...> mused:
On Sat, 14 Feb 2004 01:00:25 +0000 "bulia byak" <archiver_1@...19...> uttered:
Likely, the value of HAVE_GTK_WINDOW_FULLSCREEN is for some reason different here than in the rest of the codebase (not included config.h?) and therefore the constants for the dialog verbs are all shifted by one: transform becomes fill&stroke, etc. This explains the confused shortcuts. I'm not sure why this happens only on Windows (or perhaps it happens when HAVE_GTK_WINDOW_FULLSCREEN is false?) Could you please debug this ASAP, as it's a pretty annoying issue. Please call ishmal for help with Windows setup.
Apparently -DHAVE_CONFIG is not enough for mingw, so Bob had to put in #include "config.h" in some files to make it work on windows. To avoid cluttering other .h files with this, we can switch to precompiled headers when gcc3.4 is available on windows.
To explain all this a bit better, we can put config.h in a header file like this to make it compile on windows: #ifdef HAVE_CONFIG_H #include "config.h" #endif
The only problem with using HAVE_GTK_WINDOW_FULLSCREEN and such is when we start putting include directories in our installations. I guess we need to include the config.h file as well then without any #ifdef HAVE_CONFIG to avoid programmers using libinkscape to define all the macros they need.
Johan
participants (3)
-
Bob Jamison
-
bulia byak
-
Johan Ceuppens