Commit graph

157 commits

Author SHA1 Message Date
Benoît Minisini
225c6e0b40 [DEVELOPMENT ENVIRONMENT]
* NEW: Use DesltopMime.FromFile() method to handle project data files.
* BUG: Installing the Gambas fonts override the old ones that could be
  already installed.
* NEW: Update the Gambas fonts.

[GB.DESKTOP]
* BUG: DesktopFile.Run() now handle programs that does not specify any
  argument pattern (%u, %f, and so on) in its command description.

[GB.DRAW]
* NEW: Add a RectF class, that is a rectangle with Float coordinates.
* NEW: Add a Point class, that is just a point with two Integer 
  coordinates.
* NEW: Add a PointF class, that is just a point with two Float
  coordinates.

[GB.GUI.BASE]
* BUG: GridView and TreeView controls should not lose any MouseDown event
  anymore.
* BUG: Fix previous TreeView optimizations.

[GB.MAP]
* BUG: Rename the "map" class as "Map".


git-svn-id: svn://localhost/gambas/trunk@5354 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-24 01:16:40 +00:00
Fabien Bodard
855911aa57 [GB.MAP]
* New: First commit for this new component that allow to display tiled maps.

[EXAMPLES]
* New: A new example on how to use gb.map component.



git-svn-id: svn://localhost/gambas/trunk@5348 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-22 16:29:03 +00:00
Benoît Minisini
946a8ef2be [DEVELOPMENT ENVIRONMENT]
* NEW: Use a yellow star for marking exported classes.
* NEW: Automatic completion of file paths.
* NEW: Going backward and forward now works in the text editor.
* NEW: The project filter buttons have been replaced by a popup menu that 
  is triggered when you click on the gray magnifying glass.

[GB.DESKTOP]
* NEW: DesktopFile.FindMime() has been deprecated and replaced by 
  Desktop.FromMime().
* NEW: Desktop.GetFileIcon() is a new method that returns the icon 
  associated with a specific file path. DesktopMime is used.

[GB.FORM]
* NEW: TabStrip: support of right-to-left languages.
* NEW: Stock: support for right-to-left icons.

[GB.FORM.STOCK]
* NEW: Support for right-to-left icons.

[GB.GUI.BASE]
* BUG: GridView: support of right-to-left languages.



git-svn-id: svn://localhost/gambas/trunk@5296 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-03 21:45:02 +00:00
Fabien Bodard
efa2be8694 [GB.DESKTOP]
* BUG: Correctly return the common language
* OPT: Add a cache for comments


git-svn-id: svn://localhost/gambas/trunk@5295 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-03 16:42:09 +00:00
Fabien Bodard
413147d1ce [GB.DESKTOP]
* NEW: New Function that return the comment for a given mimetype in the current country setting. 
  If true is set in parameter the common language is returned.


git-svn-id: svn://localhost/gambas/trunk@5294 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-03 16:03:57 +00:00
Benoît Minisini
0853b396fe [GB.DESKTOP]
* NEW: Use the new '$(mime)' icon virtual directory.

[GB.FORM]
* NEW: FileView: new ShowPreview property to enable or disable image 
  preview.
* BUG: Many fixes in icon retrieving routine.
* NEW: Stock class now can find the mime icon directory if $(mime) is used
  inside the icon name.


git-svn-id: svn://localhost/gambas/trunk@5290 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-02 16:09:58 +00:00
Fabien Bodard
5da0e292df git-svn-id: svn://localhost/gambas/trunk@5289 867c0c6c-44f3-4631-809d-bfa615b0a4ec 2012-11-02 15:29:22 +00:00
Fabien Bodard
68997e7d58 [GB.DESKTOP]
* BUG: Remove gb.form in the loaded components. so desktop can be compiled again


git-svn-id: svn://localhost/gambas/trunk@5288 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-02 15:02:27 +00:00
Fabien Bodard
6e3c8f3870 [GB.DESKTOP]
* BUG: Dont use the third argument on stock class
* BUG: Swap the path test : first mimes and then mimetypes



git-svn-id: svn://localhost/gambas/trunk@5287 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-02 14:23:02 +00:00
Benoît Minisini
54d789d66e [GB.DESKTOP]
* NEW: DesktopMime: when looking for the icon, try the 'mimes' directory if
  nothing is found in the 'mimetypes' directory.

[GB.FORM]
* OPT: FileView: clean up icon retrieving function.
* NEW: Stock: display warning on load fail only if GB_STOCK is set.

[GB.QT4.EXT]
* NEW: Editor: undo/redo now take the cursor position and the selection 
  into account.


git-svn-id: svn://localhost/gambas/trunk@5286 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-02 14:05:58 +00:00
Fabien Bodard
81941d7cb3 [GB.DESKTOP]
* BUG: Out of bound on a test on suffix corrected


git-svn-id: svn://localhost/gambas/trunk@5285 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-02 13:56:12 +00:00
Fabien Bodard
e5446e3eae [GB.FORM]
* NEW: Stock lose the AllowNull Param and return a Default Picture only if Debug is true

[GB.QT4]
* OPT: Return to the old Stock signature

[GB.GTK]
* OPT: Return to the old Stock signature




git-svn-id: svn://localhost/gambas/trunk@5284 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-02 13:44:27 +00:00
Benoît Minisini
0dcec86d99 [GB.DESKTOP]
* BUG: The .settings file must not be in subversion.


git-svn-id: svn://localhost/gambas/trunk@5283 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-02 12:26:34 +00:00
Fabien Bodard
84dcb67f99 git-svn-id: svn://localhost/gambas/trunk@5282 867c0c6c-44f3-4631-809d-bfa615b0a4ec 2012-11-02 12:10:27 +00:00
Fabien Bodard
65033089a4 git-svn-id: svn://localhost/gambas/trunk@5281 867c0c6c-44f3-4631-809d-bfa615b0a4ec 2012-11-02 12:08:48 +00:00
Fabien Bodard
a36f6a7dfc [GB.FORM]
* NEW: New parameter in Stock class :'AllowNull' in _Get function so stock return
  null if ni icon is found

[GB.QT4]
* OPT: Change the signature for _Get detection

[GB.GTK]
* OPT: change the stock _get signature




git-svn-id: svn://localhost/gambas/trunk@5280 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-02 12:05:55 +00:00
Fabien Bodard
5f455082e2 [GB.DESKTOP]
* BUG: Load generic icons even in fast mode


git-svn-id: svn://localhost/gambas/trunk@5278 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-01 22:22:44 +00:00
Fabien Bodard
44cb9d7563 [GB.DESKTOP]
* NEW: New property PreciseSearch. If true it load the magic and generic icon files
* OPT: Properties are now read only



git-svn-id: svn://localhost/gambas/trunk@5275 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-01 17:54:52 +00:00
Benoît Minisini
fdcf978fd8 [GB.DESKTOP]
* BUG: Fix the name of some public functions arguments.


git-svn-id: svn://localhost/gambas/trunk@5274 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-01 16:41:57 +00:00
Fabien Bodard
4eca4c3576 [GB.DESKTOP]
* NEW: A new class that return the type mime of a given file by using the freedesktop Shared Mime Database.
This classe give also informations about a given type mime like extention pattern, icon, or applications that open
it (DesktopFiles).



git-svn-id: svn://localhost/gambas/trunk@5273 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-01 16:05:06 +00:00
Benoît Minisini
25e6253672 [CONFIGURATION]
* BUG: The default prefix is /usr in component directories too.
* NEW: Uninstall mime handler and mime icons in 'make uninstall'.

[GB.GTK]
* NEW: Replace the old ListBox control by the one in gb.gui.base.

[GB.QT4]
* NEW: Replace the old ListBox control by the one in gb.gui.base.
* OPT: Some little optimizations in ScrollView.
* OPT: Changing the geometry of a control whose Ignore property is set does
  not trigger parent arrangement routine anymore.


git-svn-id: svn://localhost/gambas/trunk@5258 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-28 19:21:59 +00:00
Benoît Minisini
17a0748815 [CONFIGURATION]
* NEW: Each component installation now generates all information files
  systematically, to fix possible dependencies between components written
  in Gambas.

[DEVELOPMENT ENVIRONMENT]
* NEW: Running a project using the 'gb.web' component now automatically
  starts the embedded HTTP server.

[INTERPRETER]
* NEW: Class overriding is retrospective now.
* NEw: System._Breakpoint() is a new hidden method that raises a 
  breakpoint. Very useful for debugging.

[GB.GTK]
* BUG: The Action.Register() method must not crash when called during class 
  clean-up.

[GB.HTTPD]
* NEW: Define a custom exported HTTP server name.

[GB.JIT]
* BEW: Support for new class overriding (the CLASS structure has lost one 
  field).

[GB.QT4]
* BUG: The Action.Register() method must not crash when called during class 
  clean-up.


git-svn-id: svn://localhost/gambas/trunk@5240 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-14 22:42:53 +00:00
Sebastian Kulesz
f297239776 [GB.DESKTOP]
* BUG: Fix compilation error



git-svn-id: svn://localhost/gambas/trunk@5228 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-08 05:03:14 +00:00
Benoît Minisini
6c2bb03d7c [DEVELOPMENT ENVIRONMENT]
* NEW: Support for the new 'Public' project virtual directory, which is 
  '.public' on the disk.

[SCRIPTER]
* NEW: Support for a new '-f- option that compile the script with JIT 
  compilation enabled.

[GB.DESKTOP]
* BUG: Remove _Desktop.ActivateWindow() method.

[GB.HTTPD]
* NEW: The embedded HTTP server now can serve static files located in the 
  '.public' hidden project directory.


git-svn-id: svn://localhost/gambas/trunk@5226 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-07 21:12:53 +00:00
Benoît Minisini
a68336da9b [CONFIGURATION]
* NEW: Switch to 3.3.90 version.

[WEBSITE MAKER]
* NEW: Update for 3.3.2 version.

[INTERPRETER]
* NEW: New API for getting information about a file.

[GB.DESKTOP]
* NEW: _Desktop.Time is a new property that returns the last X11 timestamp.
* NEW: _Desktop.ActivateWindow() is a new method that will be removed in a 
  next commit.
* NEW: DesktopWindow.Activate() is a new method to activate a window.

[GB.GTK]
* NEW: New GB_INFO constant to return the last X11 timestamp to other 
  components.

[GB.HTTPD]
* NEW: Reindent source files.

[GB.QT4]
* NEW: New GB_INFO constant to return the last X11 timestamp to other 
  components.

[GB.QT4.WEBKIT]
* BUG: Fix WebHitTest.Editable property declaration.


git-svn-id: svn://localhost/gambas/trunk@5221 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-02 08:01:25 +00:00
Benoît Minisini
8b1458f7ab [GB.DESKTOP]
* BUG: Writing the Desktop.ActivateWindow property works now.


git-svn-id: svn://localhost/gambas/trunk@5220 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-01 12:33:36 +00:00
Benoît Minisini
fd7f08d6d7 [DEVELOPMENT ENVIRONMENT]
* NEW: In the database connection editor, make the table data browser read-
  only by default, and add a button to toggle the editable state.

[GB.DB.FORM]
* BUG: Setting DataView.Editable to FALSE correctly hides the record 
  creation extra line.

[GB.NET.POP3]
* BUG: Hide public constants that should have been private only.


git-svn-id: svn://localhost/gambas/trunk@5190 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-23 14:03:15 +00:00
Benoît Minisini
252053f9b3 [GB.GTK]
* BUG: Windows should not receive a keyboard event twice anymore.

[GB.QT4]
* BUG: Windows should not receive a keyboard event twice anymore.


git-svn-id: svn://localhost/gambas/trunk@5188 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-22 01:38:15 +00:00
Benoît Minisini
c117da905e [GB.DESKTOP]
* BUG: The Gambas part of the component must not use the gb.form component.


git-svn-id: svn://localhost/gambas/trunk@5181 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-21 08:27:13 +00:00
Benoît Minisini
3f8c71a8db [DEVELOPMENT ENVIRONMENT]
* BUG: Handle official components projects like 'gb.web' better.

[GB.WEB]
* BUG: Fix gb.web compilation.


git-svn-id: svn://localhost/gambas/trunk@5179 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-20 14:33:38 +00:00
Benoît Minisini
9dd14f1a47 [GB.DESKTOP]
* BUG: Fix DesktopWindow.Resize() method.


git-svn-id: svn://localhost/gambas/trunk@5174 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-17 19:05:18 +00:00
Benoît Minisini
cbad814159 [GB.DESKTOP]
* BUG: DesktopWindow.X and Desktop.Y now return the correct window 
  position, provided that the window manager follows the EWMH freedesktop
  standard of course.


git-svn-id: svn://localhost/gambas/trunk@5173 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-17 14:22:26 +00:00
Benoît Minisini
0f985417cf [DEVELOPMENT ENVIRONMENT]
* NEW: Use Terminus as default fixed font if it is installed on the system.
* BUG: Don't load a component description if that component has the same 
  name as the current project. This is a temporary incorrect fix!

[INTERPRETER]
* BUG: Fix Classes enumeration.

[GB.DESKTOP]
* BUG: Fix X11 client message sending routine on 64 bits OS.
* BUG: Fix all DesktopWindow properties that read or change the state of 
  the window.

[GB.GTK]
* NEW: Fonts.Exist() is a new method that returns if a specific font family 
  exists.

[GB.QT4]
* NEW: Fonts.Exist() is a new method that returns if a specific font family 
  exists.


git-svn-id: svn://localhost/gambas/trunk@5171 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-17 11:13:32 +00:00
Benoît Minisini
006eb4dfd1 [DEVELOPMENT ENVIRONMENT]
* BUG: Some fixes in automatic variable declaration.

[GB.DESKTOP]
* BUG: $XDG_DATA_DIRS is now taken into account when browsing mime cache 
  files.

[GB.FORM]
* BUG: Clicking on a TabPanel tab raises the Click event after taking the 
  focus now.


git-svn-id: svn://localhost/gambas/trunk@5152 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-10 13:05:34 +00:00
Benoît Minisini
6faa6fc510 [DEVELOPMENT ENVIRONMENT]
* BUG: Be more careful when renaming the code after a control rename.

[GB.DESKTOP]
* BUG: Search in LXDE mime info cache files first if the current desktop 
  is LXDE.



git-svn-id: svn://localhost/gambas/trunk@5144 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-08 23:42:34 +00:00
Benoît Minisini
e3cc0a986d [GB.DESKTOP]
* BUG: Support for LXDE mime application cache.

[GB.WEB]
* NEW: Flush the output before calling Response.End if the response is not 
  buffered.


git-svn-id: svn://localhost/gambas/trunk@5137 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-07 01:15:18 +00:00
Benoît Minisini
e9cf364f99 [GB.DESKTOP]
* BUG: DesktopFile now correctly takes the current language into account 
  when extracting application names.


git-svn-id: svn://localhost/gambas/trunk@5130 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-06 01:04:41 +00:00
Benoît Minisini
3a0a6f4913 [DEVELOPMENT ENVIRONMENT]
* NEW: "Open with" menu now is based on the *.desktop files of applications
  that are installed on the system.

[GB.DESKTOP]
* NEW: DesktopFile is a new class that load *.desktop application files.
* NEW: DesktopFile.FindMime() is a static method that returns a list of
  DesktopFile that can handle a specific mime type.

[GB.FORM]
* BUG: Some fixes in the stock icon map file.
* NEW: Add a new "program" stock icon.

[GB.FORM.STOCK]
* NEW: Add a "program" stock icon.


git-svn-id: svn://localhost/gambas/trunk@5129 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-06 00:38:04 +00:00
Benoît Minisini
28c9d6d59b [COMPILER]
* NEW: Make one warning for each symbol kind that is overridden.

[GB.DB.FORM]
* BUG: Fix warnings.

[GB.DESKTOP]
* BUG: Fix some warnings.

[GB.EVAL.HIGHLIGHT]
* BUG: Correctly rewrite the following keywords with no spurious space 
  after: TRUE, FALSE, NULL, +INF, -INF.

[GB.FORM]
* BUG: Fix warnings.

[GB.FORM.MDI]
* BUG: Fix warnings.

[GB.WEB]
* BUG: Fix warnings.


git-svn-id: svn://localhost/gambas/trunk@5125 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-04 23:11:11 +00:00
Benoît Minisini
796f6b023d [INTERPRETER]
* NEW: GB.Serialize() is a new API that serializes a Gambas value to a 
  file.
* NEW: GB.UnSerialize() is a new API that serializes a Gambas value from
  a file.

[GB.FORM]
* BUG: Stock.Icons works correctly in all cases now.

[GB.TASK]
* NEW: Task is not a stream anymore.
* NEW: The Task Read event now takes an argument, which is the data printed
  on the task standard output. Normally, the data will come line by line.
* NEW: The Task Main method now can return any serializable value to its 
  parent.
* NEW: Task.Value is a new property that return the value returned by the
  background task once it has terminated.


git-svn-id: svn://localhost/gambas/trunk@5079 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-26 01:54:57 +00:00
Benoît Minisini
f457c9608c [CONFIGURATION]
* BUG: Fix the component template script.

[GB.FORM]
* BUG: SidePanel controls now behave correctly when they are put inside a 
  TabStrip.

[GB.GMP]
* NEW: Skeleton for a new component based on the GNU "big numbers" GMP 
  library.

[GB.GTK]
* NEW: TabStrip.FindIndex() is a new method that returns the index of 
  parent tab of a specific child.
* BUG: Fix Control.Raise() and Control.Lower() method when the parent is a
  TabStrip.

[GB.QT4]
* NEW: TabStrip.FindIndex() is a new method that returns the index of 
  parent tab of a specific child.

[GB.QT4.EXT]
* NEW: Editor: The current line is now visible when using a dark highlight 
  theme.


git-svn-id: svn://localhost/gambas/trunk@5016 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-07 14:04:55 +00:00
Benoît Minisini
1c96e1dd0d [GB.FORM]
* NEW: The LXDE icon theme is correctly detected now.

[GB.DESKTOP]
* NEW: Better support for the LXDE desktop.


git-svn-id: svn://localhost/gambas/trunk@4973 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-21 02:44:02 +00:00
Benoît Minisini
712fca7970 [GB.FORM]
* NEW: Try to support the Mate desktop in the Stock class.


git-svn-id: svn://localhost/gambas/trunk@4971 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-20 13:11:20 +00:00
Benoît Minisini
e9fbb77562 [DEVELOPMENT ENVIRONMENT]
* BUG: In the open project dialog, the project icon on the right pane is 
  correctly refreshed now.

[GB.FORM]
* BUG: The Stock class now detects the Mate desktop, and use it as default 
  application theme if needed.
* NEW: The Stock class now prints debugging message if the environment
  variable GB_STOCK is set.



git-svn-id: svn://localhost/gambas/trunk@4970 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-20 01:34:22 +00:00
Benoît Minisini
95a0f6c319 [DEVELOPMENT ENVIRONMENT]
* BUG: Do not crash when a component required by a library is missing.


git-svn-id: svn://localhost/gambas/trunk@4901 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-07 08:08:15 +00:00
Benoît Minisini
069b5f8707 [GB.QT4]
* OPT: During a mouse event, Mouse.ScreenX and Mouse.ScreenY returns the 
  global position stored in the received event. It does not query the X11 
  server.

[GB.DESKTOP]
* NEW: Support for the Mate desktop in Desktop.Open, Desktop.OpenTerminal
  and Desktop.Passwords.


git-svn-id: svn://localhost/gambas/trunk@4895 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-04 19:11:57 +00:00
Benoît Minisini
1b53072866 [DEVELOPMENT ENVIRONMENT]
* NEW: Do not set the APPMENU_DISPLAY_BOTH environmental variable anymore.
  It seems to work now.

[EXAMPLES]
* NEW: Fractal: increase the maximum number of iterations when the zoom 
  level is higher.

[GB.GTK]
* BUG: Control.Hovered now works the same way as in gb.qt4.

[GB.FORM]
* NEW: SidePanel handles have a fixed width now (6 pixels).


git-svn-id: svn://localhost/gambas/trunk@4849 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-19 09:29:59 +00:00
Benoît Minisini
8ad1afe673 [CONFIGURATION]
* NEW: Print disabled components individually.

[GB.QT4]
* BUG: ComboBox background color is correctly handled now.


git-svn-id: svn://localhost/gambas/trunk@4739 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-18 01:19:15 +00:00
Benoît Minisini
30f9a40f2b [INTERPRETER]
* NEW: Rename all API related to components, and fix components using them.
* NEW: New signal API that allows to catch signals from the event loop.

[GB.GTK]
* BUG: Use g_object_unref() instead of rsvg_handle_free() now.


git-svn-id: svn://localhost/gambas/trunk@4721 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-08 15:32:33 +00:00
Benoît Minisini
8be12f5027 [DEVELOPMENT ENVIRONMENT]
* NEW: Define the 'Exec' preprocessor constant when making an executable.
* BUG: Packager: Replace spaces with underscores when using the vendor name 
  as package name prefix.
* BUG: Packager: Fix "make uninstall" in autoconf packages.

[INTERPRETER]
* BUG: Allow to override native array classes without crashing.

[COMPILER]
* NEW: New '-x' option to define the 'Exec' preprocessor constant.

[EXAMPLES]
* NEW: MediaPlayer: Real-time seeking.
* NEW: MediaPlayer: Use gb.desktop to suspend the screen saver while 
  playing a media file.


git-svn-id: svn://localhost/gambas/trunk@4715 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-05 00:39:43 +00:00