Commit 3a80450d authored by Nick Poulden's avatar Nick Poulden
Browse files

More example stuff

parent 279c3ee8
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -340,6 +340,14 @@ module JsDuck
      FileUtils.rm(dir+"/index.html")
      File.open(dir+"/index.html", 'w') {|f| f.write(html) }
    end

    def create_example_iframe(template_dir, dir)
      Logger.instance.log("Creating #{dir}/egIframe.html...")
      html = IO.read(template_dir+"/egIframe.html")
      html.gsub!("{extjs_path}", @extjs_path)
      FileUtils.rm(dir+"/egIframe.html")
      File.open(dir+"/egIframendex.html", 'w') {|f| f.write(html) }
    end
  end

end
+2 −0
Original line number Diff line number Diff line
@@ -29,6 +29,8 @@ Ext.define('Docs.Application', {
        Docs.Favorites.init();
        Docs.Settings.init();

        Ext.getStore('Examples').add(Docs.examplesData.examples);

        Ext.create('Docs.view.Viewport');

        // Update favorites grid height between browser tabs if changed
+4 −1
Original line number Diff line number Diff line
@@ -11,13 +11,15 @@ Ext.define('Docs.controller.Classes', {
    ],

    stores: [
        'Examples',
        'Favorites',
        'Settings'
    ],

    models: [
        'Favorite',
        'Setting'
        'Setting',
        'Example'
    ],

    refs: [
@@ -203,6 +205,7 @@ Ext.define('Docs.controller.Classes', {
            if (!classOverview) {
                classOverview = Ext.create('Docs.view.cls.Overview');
                this.getTabPanel().add(classOverview);
                this.getTabPanel().add(Ext.create('Docs.view.cls.Examples'));
                this.getTabPanel().setActiveTab(0);
            }
            classOverview.load(cls);
+2 −2
Original line number Diff line number Diff line
/**
 * Store for keeping examples index.
 */
Ext.define('Docs.store.Example', {
Ext.define('Docs.store.Examples', {
    extend: 'Ext.data.Store',
    model: 'Example'
    model: 'Docs.model.Example'
});
 No newline at end of file
+56 −0
Original line number Diff line number Diff line
Ext.define('Docs.view.cls.Examples', {
    extend: 'Ext.panel.Panel',
    alias: 'widget.classexamples',

    cls: 'iScroll',
    title: 'Examples',
    autoScroll: true,

    layout: 'border',

    items: [
        {
            region: 'west',
            html: 'west',
            width: 200,
            xtype: 'gridpanel',
            store: Ext.getStore('Examples'),
            padding: '10',
            columns: [
                {
                    text: 'Example',
                    dataIndex: 'title',
                    flex: true
                }
            ],

            listeners: {
                itemclick: function(view, record, item, index, event) {

                    var inlineEg = Ext.getCmp('inlineCodeExample');

                    Ext.Ajax.request({
                        method  : 'GET',
                        url     : 'doc-resources/' + record.data.id,
                        headers : { 'Content-Type' : 'application/json' },

                        success : function(response, opts) {
                            // inlineEg.setHeight(inlineEg.codeEditor.body.getHeight());
                            inlineEg.codeEditor.setValue(response.responseText);

                            window.frames['egIframe'].refreshPage(inlineEg.codeEditor.getValue(), inlineEg.cssEditor.getValue());
                        },
                        failure : function(response, opts) {
                        }
                    });
                }
            }

        },
        {
            region: 'center',
            padding: '10',
            xtype: 'inlineexample'
        }
    ]
});
Loading