Parent Directory
|
Revision Log
CONTRIB-497 *Added new visualization, Grade Distribution *Fixed some minor bugs *Made abstract visualization class for creating visualizations by making classes witch extend it. *Made visual_settings.php witch takes a visualization class and truns it in to XML witch flex can read in. *Made flex visualization application read in XML formated settings as well as tab formated data from moodle and combind them to make a custom visualization. *Made flex visualization application read and use langue strings from moodle. *Added printer firendly tab TODO: *Add more visualizations *Refactor some of the flex/actionscript code *More douctenation *More UI functions for the flex application
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.org //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com //
// //
// This program is free software; you can redistribute it and/or modify //
// it under the terms of the GNU General Public License as published by //
// the Free Software Foundation; either version 2 of the License, or //
// (at your option) any later version. //
// //
// This program is distributed in the hope that it will be useful, //
// but WITHOUT ANY WARRANTY; without even the implied warranty of //
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
// GNU General Public License for more details: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
package {
import flash.display.SimpleButton;
import flash.text.TextField;
import flash.text.TextFormat;
public class Button extends SimpleButton {
private var upColor:uint = 0x9999FF;
private var overColor:uint = 0xBABAFF;
private var downColor:uint = 0xBBBBFF;
private var fmt:TextFormat = new TextFormat("monospace", 12, 0, null, null, null, null, null, "center");
private var buttonText:String;
private var alphaValue:Number = 0.6;
public var props:Object = new Object();
public function Button(text:String, settings:XMLList = null) {
if(settings != null) {
upColor = parseInt(settings.bgcolor, 16);
overColor = upColor + 0x212100;
downColor = upColor + 0x222200;
alphaValue = settings.alpha;
fmt = new TextFormat(settings.text.font, settings.text.size, 0, null, null, null, null, null, "center");
downState = new ButtonDisplayState(text, fmt, downColor, alphaValue, settings.line);
overState = new ButtonDisplayState(text, fmt, overColor, alphaValue, settings.line);
upState = new ButtonDisplayState(text, fmt, upColor, alphaValue, settings.line);
} else {
downState = new ButtonDisplayState(text, fmt, downColor, alphaValue);
overState = new ButtonDisplayState(text, fmt, overColor, alphaValue);
upState = new ButtonDisplayState(text, fmt, upColor, alphaValue);
}
buttonText = text;
hitTestState = upState;
useHandCursor = true;
}
public function set text(text:String):void {
buttonText = text;
ButtonDisplayState(downState).text = text;
ButtonDisplayState(overState).text = text;
ButtonDisplayState(upState).text = text;
}
public function get text():String {
return buttonText;
}
}
}
import flash.display.Sprite;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.text.TextFieldAutoSize;
import flare.display.TextSprite;
class ButtonDisplayState extends Sprite
{
private var bgColor:uint;
private var w:uint;
private var h:uint;
private var buttonText:String;
private var fmt:TextFormat;
private var ts:TextSprite;
private var alphaValue:Number
private var lineSettings:XMLList;
public function ButtonDisplayState(text:String, fmt:TextFormat, bgColor:uint = 0x9999FF, alphaValue:Number = 0.6, lineSettings:XMLList = null) {
this.bgColor = bgColor;
buttonText = text;
this.fmt = fmt;
this.ts = new TextSprite(text, fmt);
this.alphaValue = alphaValue;
this.lineSettings = lineSettings;
var tf:TextField = ts.textField;
w = tf.width = tf.textWidth + 6;
h = tf.height = tf.textHeight + 4;
ts.dirty();
addChild(ts);
draw();
}
private function draw():void {
graphics.beginFill(bgColor, alphaValue);
if(lineSettings == null) {
graphics.lineStyle(1, 0x4444FF, 0.3, true);
} else {
graphics.lineStyle(lineSettings.size, parseInt(lineSettings.color, 16), lineSettings.alpha, true);
}
graphics.drawRoundRect(0, 0, w, h, 10, 10);
graphics.endFill();
}
public function set text(text:String):void {
buttonText = text;
ts.text = text;
}
}
| Moodle CVS Admin | ViewVC Help |
| Powered by ViewVC 1.0.7 |