📄 projectlistsortingbar.mxml
字号:
<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas
xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:sortingBar="com.flexShowcase.components.projectList.navigation.sortingBar.*"
width="226"
height="31"
horizontalScrollPolicy="off"
verticalScrollPolicy="off"
creationComplete="creationCompleteHandler(event)">
<mx:Script>
<![CDATA[
//////////////////////////////////////////////////
//import
import com.flexShowcase.constants.ProjectListSortTypes;
import com.flexShowcase.events.ProjectListEvent;
//////////////////////////////////////////////////
//private variables
private var selectedSort:String = ProjectListSortTypes.DEFAULT_SORT;
private var selectedOrder:String = ProjectListSortTypes.DEFAULT_ORDER;
//////////////////////////////////////////////////
//initialization
private function creationCompleteHandler(event:Event):void {
render();
}
//////////////////////////////////////////////////
//private functions
private function dispatchProjectListChangeViewEvent():void {
var projectListEvent:ProjectListEvent = new ProjectListEvent(ProjectListEvent.CHANGE_VIEW);
projectListEvent.selectedSort = selectedSort;
projectListEvent.selectedOrder = selectedOrder;
dispatchEvent(projectListEvent);
}
//////////////////////////////////////////////////
//handler functions
private function sortButtonClickHandler(event:MouseEvent):void {
event.stopPropagation();
var sortButton:Object = event.target;
var sort:String;
switch (sortButton) {
case latestSortButton :
sort = ProjectListSortTypes.LATEST_SORT;
break;
case popularSortButton :
sort = ProjectListSortTypes.POPULAR_SORT;
break;
case alphabeticalSortButton :
sort = ProjectListSortTypes.ALPHABETICAL_SORT;
break;
}
if (sort != selectedSort) {
selectedSort = sort;
} else {
switch (selectedOrder) {
case ProjectListSortTypes.ASCENDING_ORDER :
selectedOrder = ProjectListSortTypes.DESCENDING_ORDER;
break;
case ProjectListSortTypes.DESCENDING_ORDER :
selectedOrder = ProjectListSortTypes.ASCENDING_ORDER;
break;
}
}
render();
dispatchProjectListChangeViewEvent();
}
private function render():void {
switch (selectedSort) {
case ProjectListSortTypes.LATEST_SORT :
latestSortButton.selected = true;
popularSortButton.selected = false;
alphabeticalSortButton.selected = false;
latestSortButton.sortOrder = selectedOrder;
break;
case ProjectListSortTypes.POPULAR_SORT :
latestSortButton.selected = false;
popularSortButton.selected = true;
alphabeticalSortButton.selected = false;
popularSortButton.sortOrder = selectedOrder;
break;
case ProjectListSortTypes.ALPHABETICAL_SORT :
latestSortButton.selected = false;
popularSortButton.selected = false;
alphabeticalSortButton.selected = true;
alphabeticalSortButton.sortOrder = selectedOrder;
break;
}
}
]]>
</mx:Script>
<mx:Image source="@Embed('/assets/images/frontend/projectlist/projectList_sortingButtons_bg.png')" />
<sortingBar:ProjectListSortingBarButtonLatest id="latestSortButton" x="4" y="4" toolTip="Sort by date added" click="sortButtonClickHandler(event)" />
<sortingBar:ProjectListSortingBarButtonPopular id="popularSortButton" x="77" y="4" toolTip="Sort by popularity" click="sortButtonClickHandler(event)" />
<sortingBar:ProjectListSortingBarButtonAlphabetical id="alphabeticalSortButton" x="150" y="4" toolTip="Sort alphabetically" click="sortButtonClickHandler(event)" />
</mx:Canvas>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -