### Ext JS Getting Started Guides
Source: https://docs.sencha.com/extjs/latest/index
Guides for starting with Ext JS, covering installation and setup using both npm and zip archives. These guides are crucial for new users to begin their development with Ext JS.
```APIDOC
Getting Started with npm:
- Instructions for setting up Ext JS projects using npm.
- Covers dependency management and project initialization.
Getting Started with zip:
- Instructions for setting up Ext JS projects using a zip archive.
- Suitable for manual installations or environments without npm.
```
--------------------------------
### Ext JS Upgrade Adviser
Source: https://docs.sencha.com/extjs/latest/index
A guide to getting started with the Ext JS Upgrade Adviser tool.
```javascript
// Getting Started
```
--------------------------------
### Ext JS Examples
Source: https://docs.sencha.com/extjs/latest/index
Links to live examples showcasing various Ext JS components and features. These examples serve as practical demonstrations of Ext JS capabilities.
```APIDOC
7.9.0 Examples:
- Collection of interactive examples demonstrating Ext JS 7.9.0 features.
- Provides practical code snippets and usage patterns.
```
--------------------------------
### Sencha Ext JS Quick Start - Styling DataView
Source: https://docs.sencha.com/extjs/latest/index
This guide focuses on styling the `Ext.dataview.DataView` component using Sass and Ext JS variables. It covers the organization of styling files and provides a lab for styling the 'Tunes' view.
```javascript
// Styling Ext JS components often involves using Sass and its variable system.
// This allows for consistent and maintainable theming.
// Example of using Sass variables for DataView styling:
// @import "path/to/your/theme/variables";
// .my-dataview-item {
// background-color: $panel-background-color;
// border: 1px solid $grid-border-color;
// padding: $grid-cell-padding;
// }
// Example of defining Ext JS variables:
// Ext.define('MyApp.theme.variables', {
// $panel-background-color: '#ffffff',
// $grid-border-color: '#cccccc',
// $grid-cell-padding: '8px'
// });
```
--------------------------------
### Sencha Ext JS Quick Start - App Anatomy
Source: https://docs.sencha.com/extjs/latest/index
This section of the quick start guide explains the basic definitions and vocabulary used in Sencha Ext JS application development. It covers concepts like View Packages, Models, Tab Panels, DataViews, Grids, Dialogs, Videos, and Modern View Summaries.
```javascript
// Understanding the anatomy of an Ext JS application is crucial for development.
// Key components include:
// - Views: Define the UI structure (e.g., Ext.panel.Panel, Ext.grid.Grid).
// - Models: Represent data structures (e.g., Ext.data.Model).
// - Controllers: Handle user interactions and application logic.
// - Stores: Manage collections of records (e.g., Ext.data.Store).
// Example of defining a simple Model:
// Ext.define('MyApp.model.User', {
// extend: 'Ext.data.Model',
// fields: [
// { name: 'id', type: 'int' },
// { name: 'name', type: 'string' }
// ]
// });
// Example of a basic Tab Panel:
// Ext.create('Ext.tab.Panel', {
// items: [
// { title: 'Tab 1', html: 'Content for Tab 1' },
// { title: 'Tab 2', html: 'Content for Tab 2' }
// ]
// });
```
--------------------------------
### Sencha Ext JS Build Tools and npm Usage
Source: https://docs.sencha.com/extjs/latest/index
Guides on using Sencha Cmd and npm for building Ext JS applications, including package management, migration, and configuration.
```APIDOC
Using Cmd: Comprehensive guide on utilizing Sencha Cmd for application development.
What's New (npm): Overview of new features and changes in Ext JS npm integration.
Using Npm: Instructions for using npm with Ext JS projects.
npm Repository Access: How to access and manage npm repositories for Ext JS packages.
Ext JS npm Packages: Information on available Ext JS packages on npm.
Migrate Existing Ext JS Apps: Steps to migrate existing Ext JS applications to use npm.
Upgrading Open Tooling Apps: Guidance on upgrading applications that use open tooling.
Open Tooling - Webpack + Sencha Cmd Configuration: Configuration details for Webpack and Sencha Cmd integration.
npm Troubleshooting: Common issues and solutions when using npm with Ext JS.
CLI Reference: Documentation for the Ext JS command-line interface (CLI) commands.
Adding npm Packages: How to add external npm packages to an Ext JS project.
Share Ext JS Packages: Methods for sharing Ext JS packages within a team or organization.
Building an Application: Steps for building an Ext JS application using npm.
```
--------------------------------
### Sencha Ext JS Quick Start - Showing Preview
Source: https://docs.sencha.com/extjs/latest/index
This tutorial covers how to display previews using `Ext.Dialog` and `Ext.Video` components in Sencha Ext JS. It includes a lab for coding a modern dialog handler for video previews.
```javascript
// Displaying previews often involves modal dialogs or embedded video players.
// Ext JS provides components for both.
// Example of showing a dialog with a video:
// var videoDialog = Ext.create('Ext.window.Window', {
// title: 'Video Preview',
// modal: true,
// items: [
// {
// xtype: 'video',
// url: 'path/to/your/video.mp4',
// autoPlay: true
// }
// ]
// });
// videoDialog.show();
// Example of a basic dialog configuration:
// Ext.create('Ext.Dialog', {
// title: 'Information',
// message: 'This is a preview message.'
// }).show();
```
--------------------------------
### Sencha Ext JS Quick Start - Fetching Data
Source: https://docs.sencha.com/extjs/latest/index
This tutorial covers how to fetch data in Sencha Ext JS applications. It discusses data feeds, nested data structures, and the use of `Ext.data.field.Field` for data mapping. It also includes a lab for fetching 'Tunes' data.
```javascript
// Fetching and managing data is a core aspect of application development.
// Ext JS provides powerful data package classes for this purpose.
// Example of configuring a Store to fetch data:
// var store = Ext.create('Ext.data.Store', {
// model: 'MyApp.model.Tune',
// proxy: {
// type: 'ajax',
// url: '/api/tunes',
// reader: {
// type: 'json',
// rootProperty: 'data'
// }
// }
// });
// Example of mapping fields using Ext.data.field.Field:
// Ext.define('MyApp.model.Tune', {
// extend: 'Ext.data.Model',
// fields: [
// { name: 'tuneId', mapping: 'id', type: 'int' },
// { name: 'title', type: 'string' },
// { name: 'artistName', mapping: 'artist.name', type: 'string' } // Nested mapping
// ]
// });
```
--------------------------------
### Sencha Ext JS Login App Tutorial
Source: https://docs.sencha.com/extjs/latest/index
This tutorial guides through the creation of a Login Application using Sencha Ext JS. It covers the fundamental structure and components required for a typical login interface.
```javascript
// This tutorial focuses on building a complete login application.
// Specific code examples would involve defining views, view models, and controllers.
// Example of a basic login form panel:
// Ext.create('Ext.form.Panel', {
// title: 'Login',
// items: [
// { xtype: 'textfield', fieldLabel: 'Username' },
// { xtype: 'textfield', fieldLabel: 'Password', inputType: 'password' }
// ],
// buttons: [
// { text: 'Login', handler: 'onLoginClick' }
// ]
// });
```
--------------------------------
### Ext JS Component Guides
Source: https://docs.sencha.com/extjs/latest/index
Guides focused on specific Ext JS components, such as Calendar, Carousel, Grids, and Forms. These guides offer in-depth information on configuring and using individual components.
```APIDOC
Calendar Component Guide:
- Details on configuring and using the Ext JS Calendar component.
Carousel Component Guide:
- Information on implementing and customizing the Ext JS Carousel.
Grids Component Guide:
- Comprehensive guide to Ext JS Data Grids, including features like sorting, filtering, and editing.
Forms Component Guide:
- Documentation on creating and managing forms with Ext JS form components.
```
--------------------------------
### Ext JS Trees
Source: https://docs.sencha.com/extjs/latest/index
Guides and configurations for implementing tree structures in Ext JS applications.
```APIDOC
Ext.tree.Panel
.configure({
// Tree configurations
// rootVisible: true,
// store: '...'
})
.register();
```
--------------------------------
### Expanding and Collapsing Code Examples and Class Members
Source: https://docs.sencha.com/extjs/latest/index
Runnable examples (Fiddles) are expanded by default and can be toggled individually or globally. Class members are collapsed by default and can be expanded/collapsed using arrow icons or a global toggle.
```javascript
Runnable examples (Fiddles) are expanded on a page by default. You can collapse and expand example code blocks individually using the arrow on the top-left of the code block. You can also toggle the collapse state of all examples using the toggle button on the top-right of the page. The toggle-all state will be remembered between page loads.
Class members are collapsed on a page by default. You can expand and collapse members using the arrow icon on the left of the member row or globally using the expand / collapse all toggle button top-right.
```
--------------------------------
### Sencha Ext JS Quick Start - Styling Grid
Source: https://docs.sencha.com/extjs/latest/index
This section details how to style the `Ext.grid.Grid` component within Sencha Ext JS applications. It emphasizes the use of Sass and Ext JS variables for visual customization.
```javascript
// Styling grids in Ext JS can be achieved effectively using Sass.
// This allows for granular control over the grid's appearance.
// Example of Sass for grid styling:
// @import "path/to/your/theme/grid";
// .x-grid-cell {
// font-family: $font-family;
// font-size: $font-size;
// }
// .x-grid-header-ct {
// background-color: $header-background-color;
// }
```
--------------------------------
### Ext JS What's New and Release Notes
Source: https://docs.sencha.com/extjs/latest/index
Details on new features, release notes, and upgrade guides for Ext JS versions. This section is vital for understanding changes and migrating between versions.
```APIDOC
What's New:
- Overview of new features and improvements in recent releases.
Release Notes:
- Detailed list of changes, bug fixes, and enhancements per version.
Upgrade Guide:
- Step-by-step instructions for upgrading existing Ext JS projects to newer versions.
```
--------------------------------
### Ext JS Add-on Components
Source: https://docs.sencha.com/extjs/latest/index
Information on integrating and using Ext JS add-on components, with instructions for npm, Cmd, and zip installations. This section helps developers extend Ext JS functionality with additional libraries.
```APIDOC
Using Ext JS add-ons with npm:
- Guide for incorporating add-ons via npm.
Using Ext JS add-ons with Cmd:
- Guide for incorporating add-ons using Sencha Cmd.
Using Ext JS add-ons with Zip:
- Guide for incorporating add-ons via manual zip installation.
```
--------------------------------
### Ext JS Draw Package
Source: https://docs.sencha.com/extjs/latest/index
Details on using the Ext JS Draw package for creating graphics, including step-by-step guides for image creation.
```javascript
// Draw Package
// Creating Images - Pt 1
// Creating Images - Pt 2
// Creating Images - Pt 3
```
--------------------------------
### Ext JS Drag and Drop
Source: https://docs.sencha.com/extjs/latest/index
Guides on implementing drag and drop functionality in Ext JS, covering both modern and classic toolkits.
```APIDOC
// Modern Drag and Drop
Ext.grid.Grid.configure({
plugins: {
gridDragDrop: true
}
});
// Classic Drag and Drop
Ext.dd.DragSource.configure({...});
Ext.dd.DropTarget.configure({...});
```
--------------------------------
### Ext JS Grid Data Manipulation: Grouping Example
Source: https://docs.sencha.com/extjs/latest/index
Provides an example of how to group data in an Ext JS grid. Grouping organizes rows based on the values in one or more columns.
```javascript
Ext.create('Ext.grid.Panel', {
// ... grid configuration ...
features: [{
ftype: 'grouping',
groupHeaderTpl: '{name} ({rows.length} Items)'
}],
columns: [
{ text: 'Category', dataIndex: 'category', groupable: true },
{ text: 'Name', dataIndex: 'name' }
]
});
```
--------------------------------
### Ext JS Grid Operations
Source: https://docs.sencha.com/extjs/latest/index
Guides on performing operations within Ext JS grids, including row and column manipulations, data import/export, and layout adjustments.
```javascript
Ext.grid.Grid
.configure({
// Grid configurations
})
.register();
// Row Operations
// Column Operations
// Data Import & Export
// Layouts & Styling
// Widget Integration
// Pivoting
```
--------------------------------
### Sencha Cmd CLI Usage
Source: https://docs.sencha.com/extjs/latest/index
Demonstrates common commands for Sencha Cmd, a command-line tool that complements Ext JS development. It covers application creation, workspace management, and package handling.
```bash
sencha generate app MyApp
sencha generate workspace
sencha package build
```
--------------------------------
### Other Sencha Ext JS Resources
Source: https://docs.sencha.com/extjs/latest/index
Additional resources for Ext JS developers, including FAQs, OOP concepts, ecosystem overview, and browser/platform support.
```APIDOC
Ext JS - FAQ: Frequently asked questions about Ext JS development.
Basics of OOP: Explanation of Object-Oriented Programming concepts relevant to Ext JS.
Ext JS Ecosystem: Overview of the Ext JS ecosystem and related tools.
Use of eval Function in Sencha Ext Js: Discussion on the usage and implications of the eval function.
Supported Browsers: List of browsers supported by Sencha Ext JS.
Supported Platforms: Information on platforms compatible with Sencha Ext JS.
```
--------------------------------
### Ext JS Grid Configurations
Source: https://docs.sencha.com/extjs/latest/index
Documentation on various configurations available for Ext JS grids.
```APIDOC
Ext.grid.Grid.configure({
// Configuration options for grids
// Examples:
// columns: [...],
// store: '...',
// features: [...]
});
```
--------------------------------
### Ext JS Grid Basics: Introduction
Source: https://docs.sencha.com/extjs/latest/index
Introduction to the fundamental concepts of grids in Sencha Ext JS. This section covers the basic structure and purpose of grids within the framework.
```javascript
Ext.create('Ext.grid.Panel', {
title: 'Simple Grid',
store: Ext.create('Ext.data.Store', {
fields: ['name', 'email'],
data: [
{ name: 'Lisa', email: 'lisa@simpsons.com' },
{ name: 'Bart', email: 'bart@simpsons.com' }
]
}),
columns: [
{ text: 'Name', dataIndex: 'name' },
{ text: 'Email', dataIndex: 'email', flex: 1 }
],
renderTo: Ext.getBody()
});
```
--------------------------------
### Ext JS Application Architecture
Source: https://docs.sencha.com/extjs/latest/index
Documentation on building Ext JS applications, focusing on architecture patterns, managing multiple screens, and utilizing View Controllers and View Models for data binding.
```javascript
// Intro to App Architecture
// Multiple Screens
// View Controllers
// View Models & Binding
// View Model Internals
// Using the Router
```
--------------------------------
### Desktop vs. Mobile View Differences
Source: https://docs.sencha.com/extjs/latest/index
The documentation view adapts to screen size. On narrower screens (mobile view), global navigation moves to a left-hand menu, and context navigation/tools (search, filters, related classes) move to a right-hand menu accessible via a gear icon.
```APIDOC
Desktop -vs- Mobile View:
Viewing the docs on narrower screens or browsers will result in a view optimized for a smaller form factor. The primary differences between the desktop and "mobile" view are:
* Global navigation will be located in a menu on the left-hand side accessible via the hamburger menu icon. The menu houses the following (on most pages):
* The name of the current product (as a link to the product landing page)
* The Sencha icon used to navigate back to the documentation home page
* The product menu drop-down button
* Tabs of navigation trees for the API docs and guides
* Current context navigation and tools is located on the right-hand side accessible via the gear icon. The context menu houses teh following:
* The global search input field
* (_API doc_) A "Filters" tab with the member filter, expand / collapse all examples button, expand / collapse all member rows button, the access level filter checkboxes, and the counts of each member
* (_API doc_) A "Related Classes" tab containing the menu of metadata related to the current class
* (_Guides_) The table of contents for the guide
```
--------------------------------
### Ext JS Class System
Source: https://docs.sencha.com/extjs/latest/index
An overview of the Ext JS class system, including defining classes, inheritance, and configuration management.
```APIDOC
Ext.define('My.Class', {
extend: 'Ext.Base',
config: {
myProperty: 'defaultValue'
},
constructor: function(config) {
this.initConfig(config);
this.callParent(arguments);
},
myMethod: function() {
// Method implementation
}
});
```
--------------------------------
### Sencha Ext JS API Navigation and Features
Source: https://docs.sencha.com/extjs/latest/index
Explains key navigation and feature elements within the Sencha Ext JS API documentation, including the Class Member Quick-Nav Menu, handling of Getter and Setter Methods, the History Bar for tracking visited pages, and the Search and Filters functionality.
```APIDOC
Navigation and Features:
Class Member Quick-Nav Menu:
Just below the class name on an API doc page is a row of buttons corresponding to the types of members owned by the current class. Each button shows a count of members by type (this count is updated as filters are applied). Clicking the button will navigate you to that member section. Hovering over the member-type button will reveal a popup menu of all members of that type for quick navigation.
Getter and Setter Methods:
Getting and setter methods that correlate to a class config option will show up in the methods section as well as in the configs section of both the API doc and the member-type menus just beneath the config they work with. The getter and setter method documentation will be found in the config row for easy reference.
History Bar:
Your page history is kept in localstorage and displayed (using the available real estate) just below the top title bar. By default, the only search results shown are the pages matching the product / version you're currently viewing. You can expand what is displayed by clicking on the
Within the history config menu you will also see a listing of your recent page visits. The results are filtered by the "Current Product / Version" and "All" radio options. Clicking on the
If "All" is selected in the history config menu the checkbox option for "Show product details in the history bar" will be enabled. When checked, the product/version for each historic page will show alongside the page name in the history bar. Hovering the cursor over the page names in the history bar will also show the product/version as a tooltip.
Search and Filters:
Both API docs and guides can be searched for using the search field at the top of the page.
On API doc pages there is also a filter input field that filters the member rows using the filter string. In addition to filtering by string you can filter the class members by access level, inheritance, and read only. This is done using the checkboxes at the top of the page.
The checkbox at the bottom of the API class navigation tree filters the class list to include or exclude private classes.
Clicking on an empty search field will show your last 10 searches for quick navigation.
```
--------------------------------
### Ext JS Theming
Source: https://docs.sencha.com/extjs/latest/index
Information on customizing the appearance of Ext JS applications using the theming system.
```APIDOC
// Theming System
// Theming in the Modern Toolkit
// Theming in the Classic Toolkit
// Material Theme
// Sass variables and mixins for customization.
```
--------------------------------
### Ext JS Grid Plugins Overview
Source: https://docs.sencha.com/extjs/latest/index
This section provides an overview of various plugins available for Ext JS grids, enhancing their functionality for data manipulation and user interaction.
```javascript
Ext.grid.plugin.Editable
Ext.grid.plugin.CellEditing
Ext.grid.rowedit.Plugin
Ext.grid.plugin.RowExpander
Ext.grid.plugin.RowOperations
Ext.grid.plugin.ViewOptions
Ext.grid.plugin.RowDragDrop
Ext.grid.plugin.Exporter
Ext.grid.plugin.Summary
```
--------------------------------
### Using Components in Ext JS Grids
Source: https://docs.sencha.com/extjs/latest/index
Documentation on integrating various Ext JS components within grid cells.
```APIDOC
Ext.grid.Column
.configure({
xtype: 'widgetcolumn',
widget: {
xtype: 'button', // Example: embedding a button
handler: function(button, event) {
// Button click logic
}
}
});
```
--------------------------------
### Ext JS Core Concepts
Source: https://docs.sencha.com/extjs/latest/index
Explains fundamental concepts of Ext JS, including its class system, layout management, components, data package, event handling, drag and drop, and theming.
```javascript
// The Class System
// Layouts and Containers
// Components
// Data Package
// Gestures
// Events
// Drag and Drop
// Modern Drag and Drop
// Theming System
// Theming in the Modern Toolkit
// Theming in the Classic Toolkit
// Material Theme
// Memory Management
// Using D3 in Ext JS
```
--------------------------------
### Ext JS Accessibility and Theming
Source: https://docs.sencha.com/extjs/latest/index
Information on implementing accessibility features, localization, right-to-left support, and utilizing Sencha Font Packages and tablet support in Ext JS.
```javascript
// Accessibility
// Localization
// Right to Left in Ext JS
// Sencha Font Packages
// Tablet Support
```
--------------------------------
### Sencha Ext JS Class Member Syntax
Source: https://docs.sencha.com/extjs/latest/index
Explains the structure of a Sencha Ext JS class member, detailing each part of its definition including expand/collapse controls, member name, parameters, return type, flags, origin, and source links. It also covers the parameter list and return value descriptions.
```APIDOC
lookupComponent ( item ) : Ext.Component
protected
Called when a raw config object is added to this container either during initialization of the items config, or when new items are added, or insert inserted.
This method converts the passed object into an instanced child component.
This may be overridden in subclasses when special processing needs to be applied to child creation.
Parameters:
item : Object
The config object being added.
Returns:
Ext.Component
The component to be added.
```
--------------------------------
### Ext JS Theming and Design
Source: https://docs.sencha.com/extjs/latest/index
Information on customizing the appearance of Ext JS applications, including theming with Fashion, using Sencha Font Packages, and creating theme-specific overrides.
```css
/* Example of a CSS override for a button */
.x-btn-default-small {
background-color: #4CAF50;
color: white;
}
/* Example using Fashion variables */
$base-color: #3498db;
.my-custom-panel {
background-color: $base-color;
}
```
--------------------------------
### Ext JS Layouts and Containers
Source: https://docs.sencha.com/extjs/latest/index
Information on Ext JS layout managers and container components for arranging UI elements.
```APIDOC
Ext.container.Container.configure({
layout: 'hbox', // or 'vbox', 'card', 'fit', etc.
items: [
{ xtype: 'panel', title: 'Panel 1' },
{ xtype: 'panel', title: 'Panel 2' }
]
});
```
--------------------------------
### Sencha Ext JS Backend Connectors
Source: https://docs.sencha.com/extjs/latest/index
Information on connecting Ext JS applications to backend services, including SOAP and AMF protocols, as well as Ext Direct for server-side communication.
```APIDOC
SOAP Services: Documentation for integrating with SOAP-based web services.
AMF Data Sources: Information on using Action Message Format (AMF) for data exchange.
Ext Direct Specification: Details on the Ext Direct architecture for seamless client-server communication.
Using MySQL and PHP: A guide on setting up Ext Direct with MySQL and PHP.
```
--------------------------------
### Ext JS API Reference
Source: https://docs.sencha.com/extjs/latest/index
Provides access to the Ext JS API documentation, detailing classes, methods, and properties for developers. This is the primary resource for understanding and utilizing Ext JS components and functionalities.
```APIDOC
Ext.html
- Provides access to the Ext JS API documentation.
- Contains detailed information on classes, methods, properties, and events.
- Essential for understanding and implementing Ext JS components.
```
--------------------------------
### Ext JS Events
Source: https://docs.sencha.com/extjs/latest/index
Documentation on the Ext JS event system, including event firing, listening, and bubbling.
```APIDOC
Ext.Component.configure({
listeners: {
render: function(component) {
console.log('Component rendered:', component.getId());
}
}
});
```
--------------------------------
### Ext JS Application Architecture
Source: https://docs.sencha.com/extjs/latest/index
Details on building Ext JS applications, including concepts like View Controllers, View Models, and data binding. This section covers how to structure and manage application logic and data flow.
```javascript
// View Controller
Ext.define('MyApp.view.main.MainController', {
extend: 'Ext.app.ViewController',
alias: 'controller.main',
onButtonClick: function(button) {
Ext.Msg.alert('Hello', 'Button clicked!');
}
});
// View Model
Ext.define('MyApp.view.main.MainModel', {
extend: 'Ext.app.ViewModel',
alias: 'viewmodel.main',
data: {
name: 'World'
}
});
// View with Controller and ViewModel
Ext.define('MyApp.view.main.Main', {
extend: 'Ext.panel.Panel',
controller: 'main',
viewModel: 'main',
items: [{
xtype: 'button',
text: 'Click Me',
handler: '{onButtonClick}'
}]
});
```
--------------------------------
### Ext JS Core Concepts
Source: https://docs.sencha.com/extjs/latest/index
Illustrates fundamental Ext JS concepts including class system, components, layouts, data handling, and event management. These are building blocks for creating Ext JS applications.
```javascript
// Class System
Ext.define('MyApp.MyClass', {
extend: 'Ext.Base',
constructor: function(config) {
this.initConfig(config);
}
});
// Components
Ext.create('Ext.panel.Panel', {
title: 'My Panel',
renderTo: Ext.getBody()
});
// Layouts
Ext.create('Ext.container.Container', {
layout: 'hbox',
items: [{}, {}]
});
// Data Package
var store = Ext.create('Ext.data.Store', {
fields: ['name', 'email'],
data: [{ name: 'Lisa', email: 'lisa@simpsons.com' }]
});
// Events
Ext.on('customEvent', function() {
console.log('Custom event fired!');
});
```
--------------------------------
### Ext JS Pivot Grid
Source: https://docs.sencha.com/extjs/latest/index
Documentation for the Ext JS Pivot Grid component, enabling data summarization and analysis.
```APIDOC
Ext.pivot.Grid
.configure({
// Pivot Grid configurations
// Features like aggregation, grouping, etc.
})
.register();
```
--------------------------------
### Ext JS Tablet Support
Source: https://docs.sencha.com/extjs/latest/index
Details on optimizing Ext JS applications for tablet devices.
```APIDOC
// Responsive design considerations
// Touch interaction optimizations
```
--------------------------------
### Sencha Ext JS API Documentation Structure
Source: https://docs.sencha.com/extjs/latest/index
This section outlines the structure and conventions used in Sencha Ext JS API documentation. It details how classes, members, and their properties are presented, including access levels, member types, and special notations like 'static'.
```APIDOC
Class Structure:
- Class Name
- Alias/xtype (if applicable)
- Description
Member Types:
- Config: Configuration options for a class.
- Property: Set once a class is instantiated.
- Method: Actions performed by a class (instance or static).
- Event: Framework-specific events.
- Theme Variable: Variables for the visual theme engine.
- Theme Mixin: Functions for the visual theme engine.
Access Levels:
- Public: Available for any use, stable.
- Protected: Intended for owning class or subclasses.
- Private: Internal framework use, subject to change.
Static Methods:
- Indicated by a 'static' label next to the method name.
- Can be called directly from the class itself.
```
--------------------------------
### Ext JS App Architecture - View Models & Binding
Source: https://docs.sencha.com/extjs/latest/index
Documentation on Ext JS View Models and data binding, enabling efficient data management and UI updates.
```APIDOC
Ext.app.ViewModel
.define('MyApp.view.MyViewModel', {
extend: 'Ext.app.ViewModel',
alias: 'viewmodel.myviewmodel',
data: {
userName: 'Guest'
},
formulas: {
welcomeMessage: function(get) {
return 'Welcome, ' + get('userName');
}
}
});
// In a View:
// viewModel: 'myviewmodel'
// bind: '{welcomeMessage}'
```
--------------------------------
### Ext JS Components
Source: https://docs.sencha.com/extjs/latest/index
Documentation on the fundamental Ext JS Component class and its various subclasses.
```APIDOC
Ext.Component.configure({
// Base configurations for all components
id: 'myComponent',
renderTo: Ext.getBody()
});
```
--------------------------------
### Using D3 in Ext JS
Source: https://docs.sencha.com/extjs/latest/index
Guidance on integrating D3.js visualizations within Ext JS applications.
```APIDOC
Ext.define('MyApp.view.D3Chart', {
extend: 'Ext.panel.Panel',
requires: ['Ext.ux.d3.Scale'],
// ... D3 integration logic ...
});
```
--------------------------------
### Sencha Ext JS Member Types Explained
Source: https://docs.sencha.com/extjs/latest/index
Details the different types of members found within Sencha Ext JS classes, explaining their purpose and usage within the framework.
```APIDOC
Config:
- Purpose: Configuration options for a class.
- Usage: Used during class instantiation.
Property:
- Purpose: Properties set after instantiation.
- Note: May be read-only.
Method:
- Purpose: Actions a class can perform.
- Types: Instance methods (called on an instance) and static methods (called on the class).
Event:
- Purpose: Custom events raised by the framework.
- Note: DOM events are handled separately and refer to MDN documentation.
Theme Variable:
- Purpose: Used by the visual theme engine.
Theme Mixin:
- Purpose: Functions used by the visual theme engine, potentially using Theme Variables.
```
--------------------------------
### Ext JS Memory Management
Source: https://docs.sencha.com/extjs/latest/index
Best practices and techniques for managing memory effectively in Ext JS applications.
```APIDOC
// Techniques for preventing memory leaks
// Proper destruction of components and listeners
// Using Ext.destroy() and Ext.destroyMembers()
```
--------------------------------
### Ext JS Upgrade Adviser Rules
Source: https://docs.sencha.com/extjs/latest/index
This section lists various rules for upgrading Ext JS applications, focusing on identifying and preventing issues related to overridden methods, deprecated usages, and private API access.
```APIDOC
no-existing-alias-override: Checks for overrides of existing aliases.
no-existing-class-override: Checks for overrides of existing classes.
no-existing-method-override: Checks for overrides of existing methods.
override-method-call: Checks for calls to overridden methods.
no-deprecated-class-usage: Checks for usage of deprecated classes.
no-deprecated-config-usage: Checks for usage of deprecated configurations.
no-deprecated-method-call: Checks for calls to deprecated methods.
no-deprecated-method-override: Checks for overrides of deprecated methods.
no-deprecated-property-usage: Checks for usage of deprecated properties.
no-private-class-usage: Checks for usage of private classes.
no-private-config-usage: Checks for usage of private configurations.
no-private-method-call: Checks for calls to private methods.
no-private-method-override: Checks for overrides of private methods.
no-private-property-usage: Checks for usage of private properties.
no-removed-class-usage: Checks for usage of removed classes.
no-removed-config-usage: Checks for usage of removed configurations.
no-removed-method-call: Checks for calls to removed methods.
no-removed-method-override: Checks for overrides of removed methods.
no-removed-property-usage: Checks for usage of removed properties.
```
--------------------------------
### Ext JS Data Package
Source: https://docs.sencha.com/extjs/latest/index
Details on the Ext JS data package, including Stores, Models, and Proxies for data management.
```APIDOC
Ext.data.Store
.configure({
model: 'My.Model',
proxy: {
type: 'ajax',
url: '/api/data'
}
})
.register();
Ext.data.Model.define('My.Model', {
fields: ['id', 'name', 'value']
});
```
--------------------------------
### Grids with Sparklines and Charts
Source: https://docs.sencha.com/extjs/latest/index
Demonstrates how to integrate Ext JS grids with sparklines and charts to visualize data directly within the grid cells.
```javascript
Ext.grid.cell.Widget.prototype.isSparkline = true;
// Example of a grid column with a sparkline widget
{
xtype: 'widgetcolumn',
widget: {
xtype: 'sparklineline',
// sparkline configuration
}
}
```
--------------------------------
### Ext JS App Architecture - View Controllers
Source: https://docs.sencha.com/extjs/latest/index
Details on using View Controllers in Ext JS for managing component logic and event handling within an application's architecture.
```APIDOC
Ext.app.ViewController
.define('MyApp.view.MyViewController', {
alias: 'controller.myview',
control: {
'button[action=save]': {
click: 'onSaveClick'
}
},
onSaveClick: function(button) {
// Save logic
}
});
```
--------------------------------
### Ext JS Design with Stencils
Source: https://docs.sencha.com/extjs/latest/index
Guidance on using stencils for designing Ext JS applications.
```APIDOC
// Using design tools and stencils
// Prototyping UI layouts
```
--------------------------------
### Ext JS Localization
Source: https://docs.sencha.com/extjs/latest/index
Documentation on internationalizing Ext JS applications for different languages and regions.
```APIDOC
// Language packs
// Date and number formatting
// Text translation
```
--------------------------------
### Ext JS Gestures
Source: https://docs.sencha.com/extjs/latest/index
Information on handling touch gestures in Ext JS applications.
```APIDOC
Ext.Component.configure({
listeners: {
tap: 'onTapHandler'
}
});
// In ViewController:
// onTapHandler: function(component, event) { ... }
```
--------------------------------
### Sencha Font Packages
Source: https://docs.sencha.com/extjs/latest/index
Information on using Sencha's font packages for icons and custom typography in Ext JS.
```APIDOC
// Including font packages in your build
// Using font icons in components
```
--------------------------------
### Ext JS Grid Menus: columnMenu and columnsMenuItem
Source: https://docs.sencha.com/extjs/latest/index
Explains how to implement column menus and the 'columnsMenuItem' in Ext JS grids. These features allow users to interact with columns, such as hiding or reordering them.
```javascript
Ext.create('Ext.grid.Panel', {
// ... grid configuration ...
columns: [
{ text: 'Name', dataIndex: 'name', menuDisabled: true },
{ text: 'Email', dataIndex: 'email', flex: 1, menuDisabled: true },
{
text: 'Actions',
xtype: 'actioncolumn',
items: [
{
iconCls: 'x-edit-icon',
tooltip: 'Edit',
handler: function(grid, rowIndex, colIndex) {
var rec = grid.getStore().getAt(rowIndex);
alert('Edit ' + rec.get('name'));
}
}
]
}
],
viewConfig: {
plugins: {
ptype: 'gridviewoptions'
}
}
});
```
--------------------------------
### Ext JS Grid Events and Binding
Source: https://docs.sencha.com/extjs/latest/index
Covers handling grid events and data binding in Sencha Ext JS. This includes listening to user interactions and updating the UI based on data changes.
```javascript
Ext.create('Ext.grid.Panel', {
// ... grid configuration ...
listeners: {
itemclick: function(grid, record, item, index, e, eOpts) {
console.log('Clicked on row:', record.get('name'));
},
selectionchange: function(model, selected, eOpts) {
console.log('Selection changed:', selected.length);
}
}
});
```
--------------------------------
### Ext JS Accessibility
Source: https://docs.sencha.com/extjs/latest/index
Information on making Ext JS applications accessible to users with disabilities.
```APIDOC
// ARIA attributes
// Keyboard navigation support
// Screen reader compatibility
```
--------------------------------
### Ext JS Grid Columns: Formatter and Renderer
Source: https://docs.sencha.com/extjs/latest/index
Details the use of formatters and renderers in Ext JS grid columns for customizing data display. Formatters are simpler, while renderers offer more complex logic for cell content.
```javascript
columns: [
{
text: 'Salary',
dataIndex: 'salary',
renderer: function(value) {
return Ext.util.Format.currency(value, '€');
}
},
{
text: 'Status',
dataIndex: 'status',
renderer: function(value) {
return value === 'Active' ? 'Active' : 'Inactive';
}
}
]
```
--------------------------------
### Ext JS Components
Source: https://docs.sencha.com/extjs/latest/index
Showcases the usage of common Ext JS components like Grids, Trees, Charts, Forms, and drawing capabilities. These components form the UI of Ext JS applications.
```javascript
// Grids
Ext.create('Ext.grid.Panel', {
store: store,
columns: [
{ text: 'Name', dataIndex: 'name' },
{ text: 'Email', dataIndex: 'email', flex: 1 }
],
renderTo: Ext.getBody()
});
// Charts
Ext.create('Ext.chart.PolarChart', {
store: store,
series: [{
type: 'pie',
angleField: 'name',
field: 'data'
}],
renderTo: Ext.body
});
// Forms
Ext.create('Ext.form.Panel', {
title: 'Simple Form',
items: [{
xtype: 'textfield',
fieldLabel: 'Name'
}],
renderTo: Ext.getBody()
});
```
--------------------------------
### Viewing Class Source Code
Source: https://docs.sencha.com/extjs/latest/index
Users can view the source code of an entire class by clicking the class name at the top of the API doc page. Individual class member source code can be viewed via a 'view source' link next to each member.
```javascript
The class source can be viewed by clicking on the class name at the top of an API doc page. The source for class members can be viewed by clicking on the "view source" link on the right-hand side of the member row.
```
--------------------------------
### Ext JS Custom ESLint Rules
Source: https://docs.sencha.com/extjs/latest/index
Information regarding custom ESLint rules for Ext JS projects.
```javascript
// Custom ESLint Rules
```
--------------------------------
### Ext JS Grid Columns: DataIndex and Text
Source: https://docs.sencha.com/extjs/latest/index
Explains how to configure columns in an Ext JS grid, focusing on the 'dataIndex' and 'text' properties. 'dataIndex' maps the column to a field in the data store, while 'text' sets the column header.
```javascript
columns: [
{
text: 'Employee Name',
dataIndex: 'name',
width: 150
},
{
text: 'Email Address',
dataIndex: 'email',
flex: 1
}
]
```
--------------------------------
### Ext JS API Diffs by Version
Source: https://docs.sencha.com/extjs/latest/index
Provides side-by-side comparisons of API changes between Ext JS versions for both Modern and Classic toolkits. This helps developers track specific API modifications.
```APIDOC
API Diffs (e.g., 7.8.0 to 7.9.0):
- Compares Modern toolkit APIs between versions.
- Compares Classic toolkit APIs between versions.
- Useful for identifying breaking changes or new additions.
```
--------------------------------
### API Doc Class Metadata
Source: https://docs.sencha.com/extjs/latest/index
Each API doc page displays metadata for a class, including alternate names, hierarchy, mixins, required and used classes, and subclasses. This metadata aids in understanding class relationships and dependencies.
```APIDOC
API Doc Class Metadata:
Each API doc page (with the exception of Javascript primitives pages) has a menu view of metadata relating to that class. This metadata view will have one or more of the following:
* **Alternate Name** - One or more additional class name synonymns (in Ext JS 6.0.0 the `Ext.button.Button` class has an alternate class name of `Ext.Button`). Alternate class names are commonly maintained for backward compatibility.
* **Hierarchy** - The hierararchy view lists the inheritance chain of the current class up through its ancestor classes up to the root base class.
* **Mixins** - A list of classes that are mixed into the current class
* **Inherited Mixins** - A list of classes that are mixed into an ancestor of the current class
* **Requires** - All classes required to be defined for the class to be instantiated
* **Uses** - A list of classes potentially used by the class at some point in its lifecycle, but not necessarily requried for the class to initially be instantiated
* **Subclasses** - Classes that extend the current class
```
--------------------------------
### Ext JS Cell Binding
Source: https://docs.sencha.com/extjs/latest/index
Explains the concept of cell binding in Ext JS grids, allowing for dynamic data association and updates within grid cells.
```javascript
// Example of cell binding configuration
{
xtype: 'gridcolumn',
dataIndex: 'fieldName',
renderer: function(value, metaData, record) {
// Bind data to the cell
return Ext.String.format('Value: {0}', value);
}
}
```
--------------------------------
### Ext JS Grid Selection Model Configuration
Source: https://docs.sencha.com/extjs/latest/index
Details the configuration options for the selection model in Ext JS grids. This allows control over how rows or cells can be selected by the user.
```javascript
Ext.create('Ext.grid.Panel', {
// ... grid configuration ...
selModel: {
type: 'spreadsheet',
columnSelect: true,
pruneRemoved: true
}
});
```
--------------------------------
### Sencha Ext JS Member Flags
Source: https://docs.sencha.com/extjs/latest/index
Describes the various flags used in Sencha Ext JS API documentation to indicate the function and intent of class members. These flags provide crucial information about configuration requirements, binding capabilities, read-only status, singleton nature, static properties, chainability, deprecation, removal, templating, abstract definitions, and event preventability.
```APIDOC
Member Flags:
* Required - Required config when instantiating a class
* Bindable - The config has a setter which allows this config to be set via ViewModel binding
* Read Only - The property may be read, but cannot be used to configure / re-configure a class instance at runtime
* Singleton - Singleton classes are instantiated immediately once defined and may not be instantiated manually
* Static - A static method or property is a method or property belonging to the class itself, not an instance of the class
* Chainable - Refers to methods that return the class instance back when called. This enables chained method calls like: classInstance.method1().method2().etc();
* Deprecated - A class or member that is scheduled for removal in a future framework version and is provided in the current version for backwards compatibility. Deprecated classes and members will have a message directing you to the preferred class / method going forward.
* Removed - A removed class or member that exists in documentation only as a reference for users upgrading between framework versions
* Template - A method defined within a base class designed to be overridden by subclasses
* Abstract - A class or member may be be defined as abstract. Abstract classes and members establish a class structure and provide limited, if any, code. Class-specific code will be furnished via overrides in subclasses.
* Preventable - Events marked preventable will not fire if `false` is returned from an event handler
```
=== COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.