really. Is it that you try to get the text of the textfield in the
the handy and the telephone object. You can manage that by handing a
>
> Hello,
>
> I have made a small complete program to show my problem.
>
> In "Desktop.js" I unique create the widgets (when clicking buttons)
> and
> store it in variable.
> By the next click on a button I hide the current widget and show
> needed
> widget!
>
> Thats my problem:
> - When the handy-widget is active -> how can I access to the
> telephone-textfield by clicking on the handy-button
> - When the handy-widget is active -> how can I complete change in the
> telephone-widget (like about the menu bar in "Desktop.js"
> Important: The widgets "handy and telephone" are loaded only once,
> so all
> changes will be keep -> also not create new widgets!
>
> Here the code:
>
> testprogramm/Application.js -> start of program
> /*
> ************************************************************************
> #asset(testprogram/*)
> ************************************************************************ */
> qx.Class.define("testprogram.Application",
> {
> extend : qx.application.Standalone,
>
> members :
> {
> main : function()
> {
> // Call super class
> this.base(arguments);
>
> this.programm = new testprogram.Desktop;
> this.getRoot().add(this.programm, {edge: 0});
> }
> }
> });
>
> testprogramm/Desktop.js -> here you will see the root desktop and a
> menubar.
> /*
> ************************************************************************
> #asset(testprogram/*)
> ************************************************************************ */
> qx.Class.define("testprogram.Desktop",
> {
> extend : qx.ui.container.Composite,
> construct : function()
> {
> this.base(arguments);
>
> this.widget = new Array();
> this.variablen = new Array();
>
> var haupt_layout = new qx.ui.layout.VBox();
> haupt_layout.setSeparator("separator-vertical");
> this.setLayout(haupt_layout);
> this.setBackgroundColor("#ffffff");
>
> this.widget["main_container"] = this.create_main_container();
> this.add(this.widget["main_container"], {flex : 1});
> },
> members :
> {
> widget : null,
> variablen : null,
> create_main_container : function()
> {
> //############################################
> //hier: Programm-Container mit Menue erstellen
> //############################################
> var layout = new qx.ui.layout.VBox();
> var borderColor = "#cccccc";
> var border_mainContainer = new qx.ui.decoration.Single(1, "solid",
> borderColor).set({ });
> var mainContainer = new qx.ui.container.Composite(layout).set({
> backgroundColor: "#cccccc",
> decorator: border_mainContainer
> });
>
> mainContainer.add(this.create_Header());
> mainContainer.add(this.create_Menubar());
> this.widget["desktop"] = this.create_Desktop();
> mainContainer.add(this.widget["desktop"], { flex: 1 });
>
> return mainContainer;
> },
> create_Header : function()
> {
> var layout = new qx.ui.layout.HBox();
> var borderColor = "#cccccc";
> var border = new qx.ui.decoration.Single(0, "solid",
> borderColor).set({
> widthTop: 1,
> widthLeft: 1,
> widthRight: 1,
> widthBottom: 1
> });
>
> var headerContainer = new qx.ui.container.Composite(layout).set({
> backgroundColor: "#ffffff",
> paddingTop: 8,
> paddingBottom: 8,
> paddingLeft: 8,
> paddingRight: 20,
> decorator: border
> });
> headerContainer.setAppearance("app-header");
>
> var title = new qx.ui.basic.Label("program titel");
> var version = new qx.ui.basic.Label("version XXXX");
> version.setTextColor("#0C2C66");
> headerContainer.add(title);
> headerContainer.add(new qx.ui.core.Spacer, { flex : 1 });
> headerContainer.add(version);
>
> return headerContainer;
> },
> create_Menubar : function()
> {
> //##################
> //hier: Menue-Leiste
> //##################
> var toolbar = new qx.ui.toolbar.ToolBar();
>
> var basic1Part = new qx.ui.toolbar.Part;
>
> toolbar.add(basic1Part);
>
> toolbar.addSpacer();
>
> var basic2Part = new qx.ui.toolbar.Part;
> toolbar.add(basic2Part);
>
> var newButton1 = new qx.ui.toolbar.Button("home", "");
>
> var newButton2 = new qx.ui.toolbar.Button("telephone", "");
> newButton2.addListener("execute", function(e) {
> this.widget["desktop"].remove(this.widget["current_widget"]);
> if (!this.widget["telephone"])
> {
> this.widget["telephone"] = new testprogram.telephone.Telephone();
> this.widget["current_widget"] = this.widget["telephone"];
> this.widget["desktop"].add(this.widget["current_widget"], {edge:
> 0});
> }
> else
> {
> this.widget["current_widget"] = this.widget["telephone"];
> this.widget["desktop"].add(this.widget["current_widget"], {edge:
> 0});
> }
> }, this);
>
> var newButton3 = new qx.ui.toolbar.Button("handy", "");
> newButton3.addListener("execute", function(e) {
> this.widget["desktop"].remove(this.widget["current_widget"]);
> if (!this.widget["handy"])
> {
> this.widget["handy"] = new testprogram.handy.Handy();
> this.widget["current_widget"] = this.widget["handy"];
> this.widget["desktop"].add(this.widget["current_widget"], {edge:
> 0});
> }
> else
> {
> this.widget["current_widget"] = this.widget["handy"];
> this.widget["desktop"].add(this.widget["current_widget"], {edge:
> 0});
> }
> }, this);
>
> var newButton4 = new qx.ui.toolbar.Button("config", "");
> var newButton5 = new qx.ui.toolbar.Button("help", "");
> var newButton6 = new qx.ui.toolbar.Button("logoff", "");
>
> basic1Part.add(newButton1);
> basic1Part.add(newButton2);
> basic1Part.add(newButton3);
> basic1Part.add(newButton4);
> basic1Part.add(newButton5);
> basic2Part.add(newButton6);
>
> return toolbar;
> },
> create_Desktop : function()
> {
> var windowManager = new qx.ui.window.Manager();
> var borderColor = "#cccccc";
> var border = new qx.ui.decoration.Single(1, "solid",
> borderColor);
> var desktop = new qx.ui.window.Desktop(windowManager).set({
> backgroundColor: "#ffffff",
> decorator: border
> });
>
> return desktop;
> }
> }
> });
>
> testprogramm/handy/Handy.js -> here you will see a textfield + button.
> qx.Class.define("testprogram.handy.Handy",
> {
> extend : qx.ui.container.Composite,
>
> construct : function()
> {
> this.base(arguments);
>
> this.widget = new Array();
>
> var haupt_layout = new qx.ui.layout.VBox();
> haupt_layout.setSeparator("separator-vertical");
> this.setLayout(haupt_layout);
>
> this.widget["desktop_handy"] = this.create_Desktop();
>
> this.add(this.widget["desktop_handy"], {flex: 1});
>
> this.widget["desktop_handy"].add(this.create_textfield());
> this.widget["desktop_handy"].add(this.create_button());
> },
> members :
> {
> widget : null,
> create_Desktop : function()
> {
> var desktop = new qx.ui.container.Composite(new
> qx.ui.layout.HBox()).set({
> backgroundColor: "red"
> });
>
> return desktop;
> },
> create_textfield : function()
> {
> var textfield = new qx.ui.form.TextField();
>
> this.widget["handy_textfield"] = textfield;
>
> return textfield;
> },
> create_button : function()
> {
> var button = new qx.ui.form.Button("action to telephone-widget");
> button.addListener("execute", function(e) {
> alert("action to telephone-widget");
> }, this);
>
> this.widget["handy_button"] = button;
>
> return button;
> }
> }
> });
>
>
> testprogramm/telephone/Telephone.js -> here you will see a textfield +
> button.
> qx.Class.define("testprogram.telephone.Telephone",
> {
> extend : qx.ui.container.Composite,
>
> construct : function()
> {
> this.base(arguments);
>
> this.widget = new Array();
>
> var haupt_layout = new qx.ui.layout.VBox();
> haupt_layout.setSeparator("separator-vertical");
> this.setLayout(haupt_layout);
>
> this.widget["desktop_telephone"] = this.create_Desktop();
>
> this.add(this.widget["desktop_telephone"], {flex: 1});
>
> this.widget["desktop_telephone"].add(this.create_textfield());
> this.widget["desktop_telephone"].add(this.create_button());
> },
> members :
> {
> widget : null,
> create_Desktop : function()
> {
> var desktop = new qx.ui.container.Composite(new
> qx.ui.layout.HBox()).set({
> backgroundColor: "blue"
> });
>
> return desktop;
> },
> create_textfield : function()
> {
> var textfield = new qx.ui.form.TextField();
>
> this.widget["telephone_textfield"] = textfield;
>
> return textfield;
> },
> create_button : function()
> {
> var button = new qx.ui.form.Button("action to handy-widget");
> button.addListener("execute", function(e) {
> alert("action to handy-widget");
> }, this);
>
> this.widget["telephone_button"] = button;
>
> return button;
> }
> }
> });
>
>
>
> --
> View this message in context:
http://n2.nabble.com/problem-to-call-a-variable-widget-in-other-file-tp3212530p3230587.html> Sent from the qooxdoo mailing list archive at Nabble.com.
>
> ------------------------------------------------------------------------------
> Enter the BlackBerry Developer Challenge
> This is your chance to win up to $100,000 in prizes! For a limited
> time,
> vendors submitting new applications to BlackBerry App World(TM) will
> have
> the opportunity to enter the BlackBerry Developer Challenge. See
> full prize
> details at:
http://p.sf.net/sfu/Challenge> _______________________________________________
> qooxdoo-devel mailing list
>
qooxdoo-devel@...
>
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel>
>
the opportunity to enter the BlackBerry Developer Challenge. See full prize