|
View:
New views
18 Messages
—
Rating Filter:
Alert me
|
|
|
Keyboard input in embedded applicationI have an application with an embedder control that runs another one
of my little projects. The embedded application has txtbox controls on it, buttons, textlabels and the like. Every other control that I've tried here works, except for the textboxes. I cannot get the textboxes to accept keyboard input when the application is running embedded. If I run the application outside, it works fine Anyone experienced this before? ------------------------------------------------------------------------- This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationFor what it's worth, I've tried embedding the same application into
the embedder example, and it behaves the same way there too.. Could this be a bug or an un-finished object issue? Anybody? On Mon, May 12, 2008 at 8:33 AM, M0E Lnx <m0e.lnx@...> wrote: > I have an application with an embedder control that runs another one > of my little projects. > > The embedded application has txtbox controls on it, buttons, > textlabels and the like. > > Every other control that I've tried here works, except for the textboxes. > > I cannot get the textboxes to accept keyboard input when the > application is running embedded. > If I run the application outside, it works fine > > Anyone experienced this before? > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationOn lundi 12 mai 2008, M0E Lnx wrote:
> For what it's worth, I've tried embedding the same application into > the embedder example, and it behaves the same way there too.. > > Could this be a bug or an un-finished object issue? > > Anybody? > If the embedded application was not programmed to be embedded (i.e. if it does now the XEMBED protocol), you will have (mainly) focus problems. Is it your case? -- Benoit Minisini ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationI believe this is the case...
How do I solve this? On Mon, May 12, 2008 at 2:17 PM, Benoit Minisini <gambas@...> wrote: > On lundi 12 mai 2008, M0E Lnx wrote: > > For what it's worth, I've tried embedding the same application into > > the embedder example, and it behaves the same way there too.. > > > > Could this be a bug or an un-finished object issue? > > > > Anybody? > > > > If the embedded application was not programmed to be embedded (i.e. if it does > now the XEMBED protocol), you will have (mainly) focus problems. Is it your > case? > > -- > Benoit Minisini > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Gambas-user mailing list > Gambas-user@... > https://lists.sourceforge.net/lists/listinfo/gambas-user > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationIf I understand the documentation correctly, Gambas applications do
follow the XEMBED Protocol according to http://gambasdoc.org/help/comp/gb.qt/embedder?show The application being embedded is in fact another gambas application of my design as well. But I'm still having the problem. Is there some setting I need to adjust somewhere? On Mon, May 12, 2008 at 2:21 PM, M0E Lnx <m0e.lnx@...> wrote: > I believe this is the case... > How do I solve this? > > > > On Mon, May 12, 2008 at 2:17 PM, Benoit Minisini > <gambas@...> wrote: > > On lundi 12 mai 2008, M0E Lnx wrote: > > > For what it's worth, I've tried embedding the same application into > > > the embedder example, and it behaves the same way there too.. > > > > > > Could this be a bug or an un-finished object issue? > > > > > > Anybody? > > > > > > > If the embedded application was not programmed to be embedded (i.e. if it does > > now the XEMBED protocol), you will have (mainly) focus problems. Is it your > > case? > > > > -- > > Benoit Minisini > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Gambas-user mailing list > > Gambas-user@... > > https://lists.sourceforge.net/lists/listinfo/gambas-user > > > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationOn lundi 12 mai 2008, M0E Lnx wrote:
> If I understand the documentation correctly, Gambas applications do > follow the XEMBED Protocol according to > > http://gambasdoc.org/help/comp/gb.qt/embedder?show > > The application being embedded is in fact another gambas application > of my design as well. > > But I'm still having the problem. Is there some setting I need to > adjust somewhere? > The documentation is not clear. A Gambas window does not follow the XEMBED protocol -by default-. To do that, you must not embed the application from the embedder, but from the embedded one, by using the Application.Embedder property before creating the main window. In other words: - Run your embedder application. - Note the window id of the Embedder control. - Run the embedded application and pass the previous window id as argument. - In the embedded application, set the Application.Embedder property to the received window id. - Create your main window. Now, your application will follow the XEMBED protocol. Regards, -- Benoit Minisini ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationI think I found a serious problem here...
Using the gb.gui component for the embedder application as well as for the applications being embedded. I figured out that by add the embedder.setfocus property, this works fine while in GTK However, when running under QT, the embedded application does not accept keyboard input AT ALL... Nothing Not one key stroke. Could this be a bug? On Mon, May 12, 2008 at 5:28 PM, Benoit Minisini <gambas@...> wrote: > On lundi 12 mai 2008, M0E Lnx wrote: > > If I understand the documentation correctly, Gambas applications do > > follow the XEMBED Protocol according to > > > > http://gambasdoc.org/help/comp/gb.qt/embedder?show > > > > The application being embedded is in fact another gambas application > > of my design as well. > > > > But I'm still having the problem. Is there some setting I need to > > adjust somewhere? > > > > The documentation is not clear. > > A Gambas window does not follow the XEMBED protocol -by default-. > > To do that, you must not embed the application from the embedder, but from the > embedded one, by using the Application.Embedder property before creating the > main window. > > In other words: > > - Run your embedder application. > > - Note the window id of the Embedder control. > > - Run the embedded application and pass the previous window id as argument. > > - In the embedded application, set the Application.Embedder property to the > received window id. > > - Create your main window. Now, your application will follow the XEMBED > protocol. > > Regards, > > -- > > Benoit Minisini > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Gambas-user mailing list > Gambas-user@... > https://lists.sourceforge.net/lists/listinfo/gambas-user > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded application>
HOW ???
> The documentation is not clear. > > A Gambas window does not follow the XEMBED protocol -by default-. > > To do that, you must not embed the application from the embedder, but from the > embedded one, by using the Application.Embedder property before creating the > main window. > > In other words: > > - Run your embedder application. > > - Note the window id of the Embedder control. > > - Run the embedded application and pass the previous window id as argument. HOW? > > - In the embedded application, set the Application.Embedder property to the > received window id. WHICH WINDOW ID ?? THEM EMBEDDER'S OR THE EMBEDDED? > > - Create your main window. Now, your application will follow the XEMBED > protocol. Could you give a little more detail on how to accomplish this? ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationOn Wednesday 14 May 2008 10:23, M0E Lnx wrote:
> > - Note the window id of the Embedder control. > HOW ??? Every control has an "ID" property. > > - Run the embedded application and pass the previous window id as > > argument. > HOW? You pass it on the command line from the calling program, and read it in the receiving program with Application.Args. What format you use is up to you. > > - In the embedded application, set the Application.Embedder > > property to the received window id. > WHICH WINDOW ID ?? THEM EMBEDDER'S OR THE EMBEDDED? He said "the received window id", so obviously he was referring to the ID he was talking about all along, which was the embedder control's ID. Also, don't use caps, it's rude. Rob ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationThank you...
I think I got it now. PS: Didn't mean to be rude, just wanted my questions to stand out from the rest of the text. Sorry for the misunderstanding. On Wed, May 14, 2008 at 10:09 AM, Rob <sourceforge-raindog2@...> wrote: > On Wednesday 14 May 2008 10:23, M0E Lnx wrote: > > > - Note the window id of the Embedder control. > > HOW ??? > > Every control has an "ID" property. > > > > - Run the embedded application and pass the previous window id as > > > argument. > > HOW? > > You pass it on the command line from the calling program, and read it > in the receiving program with Application.Args. What format you use > is up to you. > > > > - In the embedded application, set the Application.Embedder > > > property to the received window id. > > WHICH WINDOW ID ?? THEM EMBEDDER'S OR THE EMBEDDED? > > He said "the received window id", so obviously he was referring to the > ID he was talking about all along, which was the embedder control's > ID. > > Also, don't use caps, it's rude. > > Rob > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Gambas-user mailing list > Gambas-user@... > https://lists.sourceforge.net/lists/listinfo/gambas-user > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationOk.. I may have spoken too soon here
In the embedded application, before the main window loads, I have this Application.Embedder = Application.Args[0] On the Embedder application I have this Dim sArg AS String sArg = Me.Embedder1.ID SHELL "/path/to/embedded/application " & sArg WAIT ME.Embedder1.Embed(sArg) Does that sound like it should work? On Wed, May 14, 2008 at 10:27 AM, M0E Lnx <m0e.lnx@...> wrote: > Thank you... > I think I got it now. > > PS: Didn't mean to be rude, just wanted my questions to stand out from > the rest of the text. Sorry for the misunderstanding. > > > > > On Wed, May 14, 2008 at 10:09 AM, Rob <sourceforge-raindog2@...> wrote: > > On Wednesday 14 May 2008 10:23, M0E Lnx wrote: > > > > - Note the window id of the Embedder control. > > > HOW ??? > > > > Every control has an "ID" property. > > > > > > - Run the embedded application and pass the previous window id as > > > > argument. > > > HOW? > > > > You pass it on the command line from the calling program, and read it > > in the receiving program with Application.Args. What format you use > > is up to you. > > > > > > - In the embedded application, set the Application.Embedder > > > > property to the received window id. > > > WHICH WINDOW ID ?? THEM EMBEDDER'S OR THE EMBEDDED? > > > > He said "the received window id", so obviously he was referring to the > > ID he was talking about all along, which was the embedder control's > > ID. > > > > Also, don't use caps, it's rude. > > > > Rob > > > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Gambas-user mailing list > > Gambas-user@... > > https://lists.sourceforge.net/lists/listinfo/gambas-user > > > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationOn mercredi 14 mai 2008, M0E Lnx wrote:
> Ok.. I may have spoken too soon here > > In the embedded application, before the main window loads, I have this > > Application.Embedder = Application.Args[0] Correct. > > > On the Embedder application I have this > > Dim sArg AS String > sArg = Me.Embedder1.ID OK. > > SHELL "/path/to/embedded/application " & sArg WAIT OK. > > ME.Embedder1.Embed(sArg) No! The embedding is done by the child process, so you don't have to, and must not do it again in the parent process. The Embedder.Embed() method is only there for embedding programs not written in Gambas. For programs written in Gambas you should (must?) use this method. Anyway the focus problem is there. I tried to understand what happens with Gambas application, as it is a Gambas problem (if you embed Konqueror for example, it can get focus normally). But I didn't succeed. Note that I upgraded the XEMBED support in gb.qt recently to the last version provided by TrollTech, but it didn't change anything. Regards, -- Benoit Minisini ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationWith this, I have added debugging lines to both applications to verify
the correct argument is being parsed I can see that the embedded as well as the embedder applications are running. The problem now is that I do not see the embedded application in the host(embedder) application. Please advise. BTW, I just found out that the Application.Args[] Array starts with 1, 0 is the path to application I guess. On Wed, May 14, 2008 at 10:46 AM, M0E Lnx <m0e.lnx@...> wrote: > Ok.. I may have spoken too soon here > > In the embedded application, before the main window loads, I have this > > Application.Embedder = Application.Args[0] > > > On the Embedder application I have this > > Dim sArg AS String > sArg = Me.Embedder1.ID > > SHELL "/path/to/embedded/application " & sArg WAIT > > ME.Embedder1.Embed(sArg) > > Does that sound like it should work? > > > > > On Wed, May 14, 2008 at 10:27 AM, M0E Lnx <m0e.lnx@...> wrote: >> Thank you... >> I think I got it now. >> >> PS: Didn't mean to be rude, just wanted my questions to stand out from >> the rest of the text. Sorry for the misunderstanding. >> >> >> >> >> On Wed, May 14, 2008 at 10:09 AM, Rob <sourceforge-raindog2@...> wrote: >> > On Wednesday 14 May 2008 10:23, M0E Lnx wrote: >> > > > - Note the window id of the Embedder control. >> > > HOW ??? >> > >> > Every control has an "ID" property. >> > >> > > > - Run the embedded application and pass the previous window id as >> > > > argument. >> > > HOW? >> > >> > You pass it on the command line from the calling program, and read it >> > in the receiving program with Application.Args. What format you use >> > is up to you. >> > >> > > > - In the embedded application, set the Application.Embedder >> > > > property to the received window id. >> > > WHICH WINDOW ID ?? THEM EMBEDDER'S OR THE EMBEDDED? >> > >> > He said "the received window id", so obviously he was referring to the >> > ID he was talking about all along, which was the embedder control's >> > ID. >> > >> > Also, don't use caps, it's rude. >> > >> > Rob >> > >> > >> > ------------------------------------------------------------------------- >> > This SF.net email is sponsored by: Microsoft >> > Defy all challenges. Microsoft(R) Visual Studio 2008. >> > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> > _______________________________________________ >> > Gambas-user mailing list >> > Gambas-user@... >> > https://lists.sourceforge.net/lists/listinfo/gambas-user >> > >> > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationOn Wednesday 14 May 2008 11:46, M0E Lnx wrote:
> SHELL "/path/to/embedded/application " & sArg WAIT > ME.Embedder1.Embed(sArg) > Does that sound like it should work? Probably not. The WAIT means that your calling program will only get to the Embedder1.Embed call after /path/to/embedded/application has already exited (or at least that's what's supposed to happen.) Rob ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationI noticed that
I have removed the WAIT but it's still not doing it... I get the 2 applications, but the embedder shows am empty window and I get a new window as if I just ran the embedded externally I have forms designed in the IDE by hand (ie, not generated from code) On the Startap Class form open() event my first line reads Application.Embedder = Application.Args[1] Is this the right place for it? I'm having it print the Application.Args[1] value to verify it's getting the argument, and indeed it is... but it's not displaying like I want it to. :( On Wed, May 14, 2008 at 11:47 AM, Rob <sourceforge-raindog2@...> wrote: > On Wednesday 14 May 2008 11:46, M0E Lnx wrote: >> SHELL "/path/to/embedded/application " & sArg WAIT >> ME.Embedder1.Embed(sArg) >> Does that sound like it should work? > > Probably not. The WAIT means that your calling program will only get > to the Embedder1.Embed call after /path/to/embedded/application has > already exited (or at least that's what's supposed to happen.) > > Rob > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Gambas-user mailing list > Gambas-user@... > https://lists.sourceforge.net/lists/listinfo/gambas-user > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded application> Anyway the focus problem is there. I tried to understand what happens with
> Gambas application, as it is a Gambas problem (if you embed Konqueror for > example, it can get focus normally). But I didn't succeed. Note that I > upgraded the XEMBED support in gb.qt recently to the last version provided by > TrollTech, but it didn't change anything. > > Regards, > > -- > Benoit Minisini Does this mean that even if somehow I manage to get the embedding to work (which is not ATM), I would still have the focus problem even with pure gambas2 apps? ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Gambas-user mailing list Gambas-user@... https://lists.sourceforge.net/lists/listinfo/gambas-user |
|
|
Re: Keyboard input in embedded applicationOk.. I'm still stuck here... This is what the console says when I run this code
(skel.gambas:19431): Gdk-WARNING **: GdkWindow 0x2200003 unexpectedly destroyed (skel.gambas:19431): Gtk-CRITICAL **: gtk_window_group_remove_window: assertion `window->group == window_group' failed Can someone please help me figure out what I'm doing wrong here? On Wed, May 14, 2008 at 3:23 PM, M0E Lnx <m0e.lnx@...> wrote: |