Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
Adolio committed Oct 28, 2023
0 parents commit 909022c
Show file tree
Hide file tree
Showing 57 changed files with 5,363 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
bin/
obj/
demo/bin/
demo/obj/
9 changes: 9 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"as3mxml.sdk.framework": "c:\\AIR\\AIR_SDK_50_2",
"as3mxml.sources.organizeImports.insertNewLineBetweenTopLevelPackages": false,
"as3mxml.codeGeneration.getterSetter.forcePublicFunctions": true,
"files.trimTrailingWhitespace": true,
"editor.codeActionsOnSave": {
"source.organizeImports": true
}
}
15 changes: 15 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"type": "actionscript",
"debug": false
},
{
"type": "actionscript",
"debug": true
}
]
}
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Starling Inspector: Changelog

## v0.1 (2023-10-28)

- Initial version of the library
- Added Display List Inspector
- Added inspector entries for primitive types & few Starling related types (color, texture, blend mode, etc.)
12 changes: 12 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
Simplified BSD License
======================

Copyright (c) 2023 Aurélien Da Campo (Adolio). All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
73 changes: 73 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# Starling Inspector

The Starling Inspector is an AS3 library which will enable display list inspection of your [Starling Framework](https://github.com/Gamua/Starling-Framework) project. This project is relying on the Starling version of [Feathers UI](https://github.com/feathersui/feathersui-starling).

👉 Beware: the project is currently in its early stage, you might encounter issues while using it.

![](demo/media/images/Starling-Inspector-Demo.png)

## ⭐ Key features

- Inspect your scene without using a debugger
- Tweak your scene objects live
- Customize your inspector if needed

## ▶️ Try it!

Go to the [demo](./demo/) folder, configure the project & run it or if you get the latest release, the demo binary should be available in the archive.

## ⌨️ How to use?

### 🎛️ Display List Inspector

In order to start exploring a `Display Object Container`, check the following snippet:

```actionscript
private var _scene:Sprite; // Your scene root object
private var _inspectorLayer:Sprite;
public function setupInspector()
{
// Setup the inspector layer
_inspectorLayer = new Sprite();
addChild(_inspectorLayer);
// Setup the inspector configuration
InspectorConfiguration.ROOT_LAYER = _inspectorLayer;
// Create the Display List Inspector Panel
_displayListInspectorPanel = new DisplayListInspectorPanel(_scene, true);
_displayListInspectorPanel.height = Starling.current.nativeStage.stageHeight;
_inspectorLayer.addChild(_displayListInspectorPanel);
}
```
Feel free to checkout the demo for more usage examples.

### 🖌️ Customize inspector styles

The style of the inspector is based on your current `Feathers UI` theme (see [Feathers themes](https://feathersui.com/learn/as3-starling/themes)).
For further customization, check the following class: `InspectorConfiguration`.

```actionscript
// Change the style used for panel title
InspectorConfiguration.STYLE_NAME_LABEL_PANEL_TITLE = "custom-inspector-panel-title-style";
// Change the padding between components
InspectorConfiguration.COMPONENTS_PADDING = 12;
```

## 📦 How to install?

- Use the `.swc` file provided in each release.

or

- Checkout this repository & add `src` folder in your `classpath` or copy paste the content of the `src` folder in your source folder.

Don't forget to include dependencies (see below).

## 🖇 Dependencies

- [Feathers UI (Starling)](https://github.com/feathersui/feathersui-starling) 4.x
- [Adobe AIR SDK](https://airsdk.harman.com)
- AS3 Signal (see `as3-signal.swc` in library folder)
17 changes: 17 additions & 0 deletions asconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"type": "lib",
"config": "air",
"compilerOptions": {
"source-path": [
"src"
],
"swf-version": 50,
"external-library-path": [
"libs"
],
"include-sources": [
"src"
],
"output": "bin/starling-inspector.swc"
}
}
22 changes: 22 additions & 0 deletions demo/.vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "swf",
"request": "launch",
"name": "AIR desktop: Build release & launch",
"profile": "extendedDesktop",
"preLaunchTask": "ActionScript: compile release - asconfig.json"
},
{
"type": "swf",
"request": "launch",
"name": "AIR desktop: Build debug & launch",
"profile": "extendedDesktop",
"preLaunchTask": "ActionScript: compile debug - asconfig.json"
}
]
}
9 changes: 9 additions & 0 deletions demo/.vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"as3mxml.sdk.framework": "c:\\AIR\\AIR_SDK_50_2",
"as3mxml.sources.organizeImports.insertNewLineBetweenTopLevelPackages": false,
"as3mxml.codeGeneration.getterSetter.forcePublicFunctions": true,
"files.trimTrailingWhitespace": true,
"editor.codeActionsOnSave": {
"source.organizeImports": true
}
}
15 changes: 15 additions & 0 deletions demo/.vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"type": "actionscript",
"debug": false
},
{
"type": "actionscript",
"debug": true
}
]
}
18 changes: 18 additions & 0 deletions demo/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Starling Inspector - Demo

by Aurélien Da Campo ([Adolio](https://twitter.com/AurelienDaCampo))

## 📍 Introduction

The demo shows the main features provided by the *Starling Inspector* extension.

![](media/images/Starling-Inspector-Demo.png)

## 🎶 Resources origin

### Images
- [Starling Framework Logo](https://en.wikipedia.org/wiki/Starling_Framework), Original drawing from Chris Georgenes - Own work (CC BY 4.0)

## 🔨 How to build?

Install [Visual Studio Code](https://code.visualstudio.com/) and [ActionScript & MXML](https://as3mxml.com/#install-extension) and then follow the build procedure provided by the *ActionScript & MXML* extension.
21 changes: 21 additions & 0 deletions demo/application.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<application xmlns="http://ns.adobe.com/air/application/50.2">
<id>Starling-Inspector-Demo</id>
<versionLabel>0.1</versionLabel>
<versionNumber>0.1</versionNumber>
<filename>Starling-Inspector-Demo</filename>
<name>Starling-Inspector-Demo</name>
<initialWindow>
<title>Starling-Inspector-Demo</title>
<content>Starling-Inspector-Demo.swf</content>
<systemChrome>standard</systemChrome>
<transparent>false</transparent>
<visible>true</visible>
<minimizable>true</minimizable>
<maximizable>false</maximizable>
<resizable>false</resizable>
<renderMode>direct</renderMode>
<depthAndStencil>false</depthAndStencil>
</initialWindow>
<supportedProfiles>desktop extendedDesktop</supportedProfiles>
</application>
45 changes: 45 additions & 0 deletions demo/asconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"config": "air",
"compilerOptions": {
"output": "bin/Starling-Inspector-Demo.swf",
"library-path": [
"libs/starling.swc",
"libs/feathers.swc",
"libs/AeonDesktopTheme.swc",
"libs/MinimalDesktopTheme.swc",
"libs/MetalWorksDesktopTheme.swc",
"../libs/as3-signals.swc"
],
"source-path": [
"src",
"../src/",
"media"
],
"default-size": {
"width": 1280,
"height": 720
}
},
"application": "application.xml",
"files": [
"src/ch/adolio/Main.as"
],
"airOptions": {
"windows": {
"target": "native",
"output": "bin/Starling-Inspector-Demo.exe",
"signingOptions": {
"storetype": "pkcs12",
"keystore": "cert/starling-inspector-demo.p12"
}
},
"air":
{
"output": "bin/Starling-Inspector.air",
"signingOptions": {
"storetype": "pkcs12",
"keystore": "cert/starling-inspector-demo.p12"
}
}
}
}
Binary file added demo/cert/starling-inspector-demo.p12
Binary file not shown.
Binary file added demo/libs/AeonDesktopTheme.swc
Binary file not shown.
Binary file added demo/libs/MetalWorksDesktopTheme.swc
Binary file not shown.
Binary file added demo/libs/MinimalDesktopTheme.swc
Binary file not shown.
Binary file added demo/libs/feathers.swc
Binary file not shown.
Binary file added demo/libs/starling.swc
Binary file not shown.
Binary file added demo/media/images/Starling-Inspector-Demo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added demo/media/textures/starling-flying.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 909022c

Please sign in to comment.