1. #1
    Sencha User bclover's Avatar
    Join Date
    Feb 2012
    Location
    Raleigh, NC
    Posts
    17
    Vote Rating
    0
    bclover is on a distinguished road

      0  

    Default Sencha Architect 2 - DOES NOT recognize code changes made in external editors!!

    Sencha Architect 2 - DOES NOT recognize code changes made in external editors!!


    Despite the claim that Architect 2 integrates with your favorite IDE I have found that integration to be lacking. Code changes made in JetBrains' IntelliJ IDEA 11.1 are not recognized by Architect 2. Even worse, Architect overwrites any of the changes I make in my external editor.

    This makes it impossible to use Architect 2 for team development because it's won't even recognize changes made by version control systems like git, SVN, etc.

    Any idea when code changes made in external editors will actually be supported?

    Thanks,
    bclover

  2. #2
    Sencha - Architect Dev Team aconran's Avatar
    Join Date
    Mar 2007
    Posts
    8,191
    Vote Rating
    63
    aconran is just really nice aconran is just really nice aconran is just really nice aconran is just really nice aconran is just really nice

      -1  

    Default


    Editing code in overrides is supported.

    One limitation is that Architect won't pick up changes while its running. We've tested editing outside of Architect without it having the project open in-depth. If you are running into issues in this situation please report the steps to reproduce.

    We are working on support to pick up changes to the overrides files while at runtime.
    Aaron Conran
    @aconran
    Sencha Architect Development Team

  3. #3
    Sencha User bclover's Avatar
    Join Date
    Feb 2012
    Location
    Raleigh, NC
    Posts
    17
    Vote Rating
    0
    bclover is on a distinguished road

      0  

    Default


    Thanks for the reply! Maybe I'm doing something wrong...here's what I did:

    After a quick test, it appears Architect does NOT detect changes in external IDEs .

    Here's what I did:

    1. I created a new project using Architect, added a Tab Bar, and then saved the project.

    2. Next, I opened IntelliJ and renamed the tabs, saved, and flipped back over to Architect and it did not detect the name change on the tabs.

    3. Next I closed the project in Architect and re-opened it to see if that would recognize the update. That didn't work either.

  4. #4
    Sencha User
    Join Date
    May 2010
    Location
    Guatemala, Central America
    Posts
    989
    Vote Rating
    47
    ssamayoa has a spectacular aura about ssamayoa has a spectacular aura about

      0  

    Default


    Quote Originally Posted by bclover View Post
    2. Next, I opened IntelliJ and renamed the tabs, saved, and flipped back over to Architect and it did not detect the name change on the tabs.
    You mean that you changed JS file?

    Or changed the SA's metadata file?

    Regards.
    UI: Sencha Architect 2.x / ExtJS 4 MVC
    Server side: EJB 3.1 / CDI / JPA 2 / JAX-RS / JasperReports
    Application Server: Glassfish 3.1.x
    Databases: Oracle 10g & 11g / DB2 9 & 10 / Firebird 2.5

    If you like my answer please vote!

  5. #5
    Sencha User bclover's Avatar
    Join Date
    Feb 2012
    Location
    Raleigh, NC
    Posts
    17
    Vote Rating
    0
    bclover is on a distinguished road

      0  

    Default


    I changed the JS file...should I edit something else?

  6. #6
    Sencha User bclover's Avatar
    Join Date
    Feb 2012
    Location
    Raleigh, NC
    Posts
    17
    Vote Rating
    0
    bclover is on a distinguished road

      0  

    Default


    Ahhh I see there's a metadata folder in the IntelliJ project and if I edit the file in there, and NOT the JavaScript file then my changes will be reflected in Sencha Architect when I re-open it. Odd, I would expect to be editing the Javascript files not some metadata file. Anyways, at least now I can see how some editing can be done outside of Sencha Architect. Still, to really use this for team dev on an enterprise-level app I'd want to be able to edit anything and have the changes reflected in either Architect or my IDE of choice immediately. Thanks!

  7. #7
    Sencha User
    Join Date
    May 2010
    Location
    Guatemala, Central America
    Posts
    989
    Vote Rating
    47
    ssamayoa has a spectacular aura about ssamayoa has a spectacular aura about

      0  

    Default


    Quote Originally Posted by bclover View Post
    Still, to really use this for team dev on an enterprise-level app
    Lacking of two way editing capability (like Google's Winbuilder or MS VisualStudio) has nothing to do with the kind of application you are working on. Also, you can have a team working simultaneously in SA project as you do with other tools but, of course, you need some way to share and merge the changes from each team member via version control (git, cvs, svn, etc.). Thats the reason why each class in the proyect haves its own file in metadata folder. JS classes other than overrides and hand written (not generated by SA) are overriden each time you save the project.

    Regards.
    UI: Sencha Architect 2.x / ExtJS 4 MVC
    Server side: EJB 3.1 / CDI / JPA 2 / JAX-RS / JasperReports
    Application Server: Glassfish 3.1.x
    Databases: Oracle 10g & 11g / DB2 9 & 10 / Firebird 2.5

    If you like my answer please vote!

  8. #8
    Sencha User
    Join Date
    Oct 2011
    Location
    Germany
    Posts
    50
    Vote Rating
    9
    apsq is on a distinguished road

      0  

    Default


    Architect has no JS introspection. There's no way to edit actions and behaviours outside Architect without a) touching files that will be overwritten or b) messing with JSON metadata files.

    Instead, it is suggested you use overrides (you can create overrides in Architect). This is equivalent to the non-"UI" view classes that were generated the first time you exported a project in ExtDesigner. Changes to these will not be reflected in Architect outside the editor, but they won't be overwritten either.

    I wouldn't call it "integration", but it's no worse than what ExtDesigner had. It's certainly not living up to the bold claims of IDE compatibility, but until Architect has real JS introspection (which is *hard*), it's probably the best we can hope for.

  9. #9
    Sencha User bclover's Avatar
    Join Date
    Feb 2012
    Location
    Raleigh, NC
    Posts
    17
    Vote Rating
    0
    bclover is on a distinguished road

      0  

    Default


    Thanks to everyone for helping to clarify this topic for me. It's wonderful having an active community where people help fill in the gaps!

  10. #10
    Sencha User
    Join Date
    Jan 2012
    Posts
    18
    Vote Rating
    0
    jk171505 is on a distinguished road

      0  

    Default Overrides...

    Overrides...


    Is the any way to edit the code, without creating overrides?

    When I add controller, it has the following code:
    Code:
    Ext.define('CityBars.controller.Business', {    extend: 'Ext.app.Controller',
        config: {
        }
    });
    but when I create override, the code looks like this:
    Code:
    Ext.define('CityBars.controller.override.Business', {    requires: 'CityBars.controller.Business'
    }, function() {
        Ext.override(CityBars.controller.Business, {
            
        });
    });
    and when I look at the folders structure, there is an additional folder inside the 'controller' named 'override'. The edited file is saved in that folder.

    So, can someone tell me what's the easiest way to edit the code, without creating overrides?
    You guys somehow have accomplished this, because in the docs of Architect are links to the completed project:

    "...
    Download the .xda file for the completed project along with its accompanying CSS file. They are part of the examples released with Architect.
    ..."


    The controller's file is edited, without creating overrides, there is also no 'override' folder.

    Besides, as bclover have mentioned above, there should be a way to edit the code outside of the architect, and architect should recognize the changes.

Tags for this Thread