14 Feb 2013 8:13 AM #1
Unanswered: Need Clarity on Dynamic panel replacement in a viewport of border layout
I am a new user of Ext js 4.1.3 and i must say its very impressive. i almost got down some 10 screens in like a week., job well done team !!
i have a query which i wanted addressed. I have a view port with border layout in a js file and another js file holds an accordion with buttons to show up as menu and sub menus and yet another js file where i have built close to 10 different components / grids etc which i have placed into a type Ext.panel.Pane(10 of them) with a variable reference and an ID.
Now the accordion i place in the left border items array and i can place any of these 10 panels singly by their variable name specified in the 3rd js in the center border layout and show them up.
now i wanted to use a generic function that will fit in as the handler function in the accordion buttons (menus/sub menus- many of them) and on click i want to change the panel i built in the 3 rd js and show up in the center layout depending on what i have clicked on.
i tried using getCmp and holding the variable in the viewport js. but i am stuck on the logic flow where i want to place a particular panel on click of a particular button . i tried various things but i kept getting common errors such as not defined etc.
Can you help place me in the right direction. how should i resolve this ? maybe this is basic functionality but unfortunately i havent got it. so i'd appreciate any help that comes my way.
17 Feb 2013 8:21 AM #2
- Join Date
- Mar 2007
- Gainesville, FL
- Vote Rating
So you want to replace the component in the center region?
Sencha Inc, Senior Software Engineer
Check out my GitHub, lots of nice things for Ext JS 4 and Sencha Touch 2
Think my support is good? Get more personalized support via a support subscription. https://www.sencha.com/store/
Need more help with your app? Hire Sencha Services firstname.lastname@example.org
Want to learn Sencha Touch 2? Check out Sencha Touch in Action that is in print!
When posting code, please use BBCode's CODE tags.
17 Feb 2013 8:49 AM #3
Thank you for your reply. i was just going to post that i created the components and hid them using the .hide() method and within the accordion , for each of the many buttons i had a handler that .show() the panel i wanted to display in the center and .hide() ; hid the rest and then i added all the component names in the items array of the center region.
Is this an acceptable method ? are there other ways ? i ask simply because i am currently using static data and soon will start coding it into a Spring Framework and will be pulling data from a database and converting it to json ad showing it on the front end . Will rendering all panels initially be a cause for concern in terms of delay that need not be there if there was a better approach may be ?