Skip to main content

News

Topic: The Sphere Studio v1.2.1 (Read 96299 times) previous topic - next topic

  • Radnen
  • [*][*][*][*][*]
  • Senior Staff
  • Wise Warrior
Re: Radnen's Sphere Studio v1.1.1.0
Reply #30

I'm trying to avoid vendor lock-in with my thing; there's already some by my using GCC 4.7 to get some C++11 niceties built into byuu's code but at least it's cross-platform.


You are right about vendor lock-in, my editor as good as it is, is currently only for Windows with limited to no Wine support. But that may change in time. One of my stretch goals is to move it over to Mono. However, with reflection, I could in theory create a plugin of any C/C++/Assembly code file, provided I implement a wrapper ('bindings' as it is commonly called).

Now, the Task List for example is not Mono friendly so long as it uses ObjectListView. But if I move it over as a plugin, then it won't break compatibility with the entire editor, Linux and OSX users would simply not download it and instead download an alternative plugin that does work. See, in this regard a plugin system increases the cross-compatibility of my editor since I just need to support the core editor, and not all extra attachments to it.

Edit:
Update
I have gotten rid of the task list. And replaced it with...

... A plugin version of it 100% interfaced with the editor!!! It will update when a project opens, clear when a project closes, etc. I'm still not too happy with the way I introduce it as a dockable container, but I think it's a start. For example there is a close button, which will destroy the control, but what if the plugin creator did not intend for that? So, I think I need to bubble-up the dock-panel to the plugin level, and the plugin writer can style their own panel. Then I'll add some kind of way of having them tell it where to put their dock panel.

Edit:
Now a plugin looks a lot like this when you implement it: TaskPlugin.cs.
  • Last Edit: April 09, 2013, 03:34:01 am by Radnen
If you use code to help you code you can use less code to code. Also, I have approximate knowledge of many things.

Sphere-sfml here
Sphere Studio editor here

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: Radnen's Sphere Studio v1.1.1.0
Reply #31
Oh man, I'm in Windows for a change! Gonna be testing out the editor now.

Edit: oh. Well. I couldn't configure the games path (after selecting something the edit box was still empty), and after closing the settings dialog it just crashes. With subsequent starts, it crashes every time I open the settings dialog. And Microsoft is being wholly unhelpful by showing the stack trace in Dutch.

By the way, how are task lists stored? As an extra file in the Sphere project or something?
  • Last Edit: April 09, 2013, 10:44:17 am by DaVince

  • Radnen
  • [*][*][*][*][*]
  • Senior Staff
  • Wise Warrior
Re: Radnen's Sphere Studio v1.1.1.0
Reply #32

Oh man, I'm in Windows for a change! Gonna be testing out the editor now.

Edit: oh. Well. I couldn't configure the games path (after selecting something the edit box was still empty), and after closing the settings dialog it just crashes. With subsequent starts, it crashes every time I open the settings dialog. And Microsoft is being wholly unhelpful by showing the stack trace in Dutch.


What windows version are you using?


By the way, how are task lists stored? As an extra file in the Sphere project or something?


It's stored in each games root directory. There would be a tasks.list file generated.
If you use code to help you code you can use less code to code. Also, I have approximate knowledge of many things.

Sphere-sfml here
Sphere Studio editor here

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: Radnen's Sphere Studio v1.1.1.0
Reply #33
Running Windows 7 Home Premium, 64-bit with service pack 1.

Quote
It's stored in each games root directory. There would be a tasks.list file generated.

That's a good way to do it. :)

Okay, I'm going to just paste the error messages I get and refer you to http://finderr.net/ to help you figure out what kinds of errors they are. Is that fine?
  • Last Edit: April 09, 2013, 01:43:14 pm by DaVince

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: Radnen's Sphere Studio v1.1.1.0
Reply #34
This is on version 1.0.1.1.

1. On first run, when trying to enable the only plugin:
Code: [Select]
Zie het einde van dit bericht voor meer informatie over het aanroepen 
van JIT-foutopsporing (Just In Time) in plaats van dit dialoogvenster.

************** Tekst van uitzondering **************
System.NullReferenceException: De objectverwijzing is niet op een exemplaar van een object ingesteld.
   bij Sphere_Editor.EditorForm.DockControl(Control ctrl, String name, DockAreas areas, DockAlignment align)
   bij TaskPlugin.TaskPlugin.Initialize()
   bij Sphere_Editor.Utility.PluginWrapper.Activate()
   bij Sphere_Editor.Settings.EditorSettings.PluginList_ItemChecked(Object sender, ItemCheckedEventArgs e)
   bij System.Windows.Forms.ListView.OnItemChecked(ItemCheckedEventArgs e)
   bij System.Windows.Forms.ListView.WmReflectNotify(Message& m)
   bij System.Windows.Forms.ListView.WndProc(Message& m)
   bij System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   bij System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   bij System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Geladen assembly's **************
mscorlib
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5456 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Sphere Editor
    Assembly-versie: 1.1.1.0
    Win32-versie: 1.1.1.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/Sphere%20Editor.exe
----------------------------------------
System.Windows.Forms
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5460 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5456 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5462 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Sphere.Plugins
    Assembly-versie: 1.0.0.0
    Win32-versie: 1.0.0.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/Sphere.Plugins.DLL
----------------------------------------
WeifenLuo.WinFormsUI.Docking
    Assembly-versie: 2.7.0.0
    Win32-versie: 2.7.0.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/WeifenLuo.WinFormsUI.Docking.DLL
----------------------------------------
System.Windows.Forms.resources
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5420 (Win7SP1.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_nl_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
ObjectListView
    Assembly-versie: 2.5.1.42131
    Win32-versie: 2.5.1.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/ObjectListView.DLL
----------------------------------------
TaskPlugin
    Assembly-versie: 1.0.0.0
    Win32-versie: 1.0.0.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/Plugins/TaskPlugin.dll
----------------------------------------
mscorlib.resources
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5456 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------

************** JIT-foutopsporing **************
Als u JIT-foutopsporing wilt inschakelen, moet in het configuratiebestand voor deze
toepassing of computer (machine.config) de waarde
jitDebugging in het gedeelte system.windows.forms zijn ingesteld.
De toepassing moet ook zijn gecompileerd terwijl foutopsporing
was ingeschakeld.

Bijvoorbeeld:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

Wanneer JIT-foutopsporing is ingeschakeld, worden onverwerkte uitzonderingen
naar het JIT-foutopsporingsprogramma gestuurd dat op de computer is geregistreerd
en worden niet door dit dialoogvenster verwerkt.



2. When clicking OK in the initial configure screen without having (been able to) set the games directory:
Code: [Select]
Zie het einde van dit bericht voor meer informatie over het aanroepen 
van JIT-foutopsporing (Just In Time) in plaats van dit dialoogvenster.

************** Tekst van uitzondering **************
System.ArgumentOutOfRangeException: StartIndex kan niet minder dan nul zijn.
Parameternaam: startIndex
   bij System.Text.StringBuilder.Remove(Int32 startIndex, Int32 length)
   bij Sphere_Editor.Settings.SphereSettings.SetGamePaths(String[] list)
   bij Sphere_Editor.Settings.SphereSettings.SetSettings(EditorSettings SettingForm)
   bij Sphere_Editor.Global.EditSettings()
   bij Sphere_Editor.EditorForm.OpenEditorSettings(Object sender, EventArgs e)
   bij Sphere_Editor.EditorForm.EditorForm_Shown(Object sender, EventArgs e)
   bij System.Windows.Forms.Form.OnShown(EventArgs e)
   bij System.Windows.Forms.Form.CallShownEvent()
   bij System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
   bij System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
   bij System.Threading.ExecutionContext.runTryCode(Object userData)
   bij System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
   bij System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   bij System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   bij System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
   bij System.Windows.Forms.Control.InvokeMarshaledCallbacks()


************** Geladen assembly's **************
mscorlib
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5456 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Sphere Editor
    Assembly-versie: 1.1.1.0
    Win32-versie: 1.1.1.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/Sphere%20Editor.exe
----------------------------------------
System.Windows.Forms
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5460 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5456 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5462 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Sphere.Plugins
    Assembly-versie: 1.0.0.0
    Win32-versie: 1.0.0.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/Sphere.Plugins.DLL
----------------------------------------
WeifenLuo.WinFormsUI.Docking
    Assembly-versie: 2.7.0.0
    Win32-versie: 2.7.0.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/WeifenLuo.WinFormsUI.Docking.DLL
----------------------------------------
System.Windows.Forms.resources
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5420 (Win7SP1.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_nl_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
ObjectListView
    Assembly-versie: 2.5.1.42131
    Win32-versie: 2.5.1.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/ObjectListView.DLL
----------------------------------------
TaskPlugin
    Assembly-versie: 1.0.0.0
    Win32-versie: 1.0.0.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/Plugins/TaskPlugin.dll
----------------------------------------
mscorlib.resources
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5456 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
System.Xml
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5420 (Win7SP1.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

************** JIT-foutopsporing **************
Als u JIT-foutopsporing wilt inschakelen, moet in het configuratiebestand voor deze
toepassing of computer (machine.config) de waarde
jitDebugging in het gedeelte system.windows.forms zijn ingesteld.
De toepassing moet ook zijn gecompileerd terwijl foutopsporing
was ingeschakeld.

Bijvoorbeeld:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

Wanneer JIT-foutopsporing is ingeschakeld, worden onverwerkte uitzonderingen
naar het JIT-foutopsporingsprogramma gestuurd dat op de computer is geregistreerd
en worden niet door dit dialoogvenster verwerkt.


3. When clicking Project > Configure Sphere
Code: [Select]
Zie het einde van dit bericht voor meer informatie over het aanroepen 
van JIT-foutopsporing (Just In Time) in plaats van dit dialoogvenster.

************** Tekst van uitzondering **************
System.ArgumentException: Het pad heeft een ongeldige indeling.
   bij System.IO.Path.NormalizePathFast(String path, Boolean fullCheck)
   bij System.IO.Path.NormalizePath(String path, Boolean fullCheck)
   bij System.IO.Path.GetDirectoryName(String path)
   bij Sphere_Editor.EditorForm.OptionsToolButton_Click(Object sender, EventArgs e)
   bij System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   bij System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   bij System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   bij System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   bij System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   bij System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   bij System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   bij System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
   bij System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   bij System.Windows.Forms.Control.WndProc(Message& m)
   bij System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   bij System.Windows.Forms.ToolStrip.WndProc(Message& m)
   bij System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
   bij System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   bij System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   bij System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Geladen assembly's **************
mscorlib
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5456 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Sphere Editor
    Assembly-versie: 1.1.1.0
    Win32-versie: 1.1.1.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/Sphere%20Editor.exe
----------------------------------------
System.Windows.Forms
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5460 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5456 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5462 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Sphere.Plugins
    Assembly-versie: 1.0.0.0
    Win32-versie: 1.0.0.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/Sphere.Plugins.DLL
----------------------------------------
WeifenLuo.WinFormsUI.Docking
    Assembly-versie: 2.7.0.0
    Win32-versie: 2.7.0.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/WeifenLuo.WinFormsUI.Docking.DLL
----------------------------------------
System.Windows.Forms.resources
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5420 (Win7SP1.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_nl_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
ObjectListView
    Assembly-versie: 2.5.1.42131
    Win32-versie: 2.5.1.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/ObjectListView.DLL
----------------------------------------
TaskPlugin
    Assembly-versie: 1.0.0.0
    Win32-versie: 1.0.0.0
    CodeBase: file:///D:/games/sphere/editors/SphereStudio-1.0.1.1/Plugins/TaskPlugin.dll
----------------------------------------
mscorlib.resources
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5456 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
System.Xml
    Assembly-versie: 2.0.0.0
    Win32-versie: 2.0.50727.5420 (Win7SP1.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

************** JIT-foutopsporing **************
Als u JIT-foutopsporing wilt inschakelen, moet in het configuratiebestand voor deze
toepassing of computer (machine.config) de waarde
jitDebugging in het gedeelte system.windows.forms zijn ingesteld.
De toepassing moet ook zijn gecompileerd terwijl foutopsporing
was ingeschakeld.

Bijvoorbeeld:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

Wanneer JIT-foutopsporing is ingeschakeld, worden onverwerkte uitzonderingen
naar het JIT-foutopsporingsprogramma gestuurd dat op de computer is geregistreerd
en worden niet door dit dialoogvenster verwerkt.


There are many more crashes; no matter what option I select, it'll show some related error message. I think one of the issues might be because it doesn't have a Sphere engine or games folder to refer to. You should detect whether the given path exists/isn't empty and try to display the config dialog when there's issues with it. (Maybe you already do? After all, trying to open the settings makes it crash for me...)

  • Radnen
  • [*][*][*][*][*]
  • Senior Staff
  • Wise Warrior
Re: Radnen's Sphere Studio v1.1.1.0
Reply #35
I have recently fixed the second issue you got. The first one might be fixed since re-coding those troublesome methods. The last one is hard to say, that menu option should have been inactive if there was no path, I'll look into the matter. You might have been able to catch it in an undetermined state. See, it's good of you to catch these, I have a certain... process I got used to. :) It's like play testing a game. I'm bad at play-testing my own games because.... I know everything! I know if a chest is not working or a door is inactive.

The editor is only for x86 systems (or above), so it's okay if you run a 64 bit computer (I run 64 bit as well). I may not do an x64 version since the libraries I use do not support x64 out of the box.

Edit:
I have released v1.1.2.0, which has many, many improvements.
- The task editor is now a standalone plugin
- The image editor can now properly resize an image.
- The Map editor doesn't show full tile selection when on a tool other than the Pen tool.
- The image editor is flagged as dirty when editing images.
- The script editor now has font support (now you can change the font). (not yet the spacing... but soon).
- The Sphere Config is now not able to be clicked on if you cancel out of the initial settings dialog.
- The Scripts menu item only shows when a scriptbox is active.
- The Plugin system now let's you style your own dock content and listview items. (still not ready for full-on plugin creation).
- Made the project list view load a thousand times faster now. Yes, a thousand or a million depending on the # of files in your project.
- Fixed error with empty paths in multi-path game box.
- Added description text to folder browser in game paths and sphere folder dialog boxes.
- Fixed View menu from listing empty forms and not reordering the items in the list. - The default .NET code always sucks.
- Added tile removal back into map tileset editor. (Was off for the last few versions).
- Made image editor remember the blend mode when switching between images.
- Updated ObjectListView to latest version.
- Set Cursor to a loading cursor when loading projects, not that it matters anymore.

Still a million more things to do!

Edit2:
Just to let you know, the task list is definitely something you can't 'port over', so remember your old list, and be prepared to rewrite it. After this though, there is no more updates to the format.
  • Last Edit: April 10, 2013, 04:47:36 am by Radnen
If you use code to help you code you can use less code to code. Also, I have approximate knowledge of many things.

Sphere-sfml here
Sphere Studio editor here

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: Radnen's Sphere Studio v1.1.2.0
Reply #36
Nice work! But I'm still having issues.

In the editor settings, clicking Browse and selecting a folder still doesn't fill in the Sphere engine path for me. Selecting game paths does work, however. Also, after confirming my settings (after manually entering Sphere's path), I can't open the Configure Sphere window.

Also a small request: tab closing with ctrl+W! I use it all the time rather than ctrl+F4. :P

Re: Radnen's Sphere Studio v1.1.2.0
Reply #37

Also a small request: tab closing with ctrl+W! I use it all the time rather than ctrl+F4. :P

Same. Ctrl+F4 is rather inconvenient to hit; Ctrl+W is a lot nicer. Isn't Ctrl+W standard? Firefox seems to accept both Ctrl+W and Ctrl+F4 though.

  • Radnen
  • [*][*][*][*][*]
  • Senior Staff
  • Wise Warrior
Re: Radnen's Sphere Studio v1.1.2.0
Reply #38
I will attempt to hack out Ctrl+W; Ctrl+F4 is actually a standard, but seeing as there are multiple standards it's wise for me to try and support both. Also, middle-mouse-wheel clicking removes tabs as well.

@DaVince: You need to have engine.exe and config.exe in the folder you specify. I can't replicate your behavior, because it should just work! I'll wait and see if more people have that issue, because I just can't see it happen unless you don't have engine.exe and config.exe directly in the folder. Also... You were able to write in config.exe, but not open it? I wonder if there are certain privilege rights blocking your access? You are on Windows, did you try turning off the stupid UAC rules?
  • Last Edit: April 11, 2013, 07:08:11 pm by Radnen
If you use code to help you code you can use less code to code. Also, I have approximate knowledge of many things.

Sphere-sfml here
Sphere Studio editor here

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Radnen's Sphere Studio v1.1.2.0
Reply #39

You are on Windows, did you try turning off the stupid UAC rules?


People always suggest this, but this is a bad idea. Turning UAC off leaves the account with full admin privileges at all times--the equivalent to logging in as root on Linux.  The problem is that programmers still seem to think it's okay to save config data in Program Files, which is poor practice to begin with.
miniSphere 5.0.1 - Cell compiler - SSj debugger - thread | on GitHub
For the sake of our continued health I very much hope that Fat Cerberus does not become skilled enough at whatever arcane art it would require to cause computers to spawn enourmous man eating pigs ~Rhuan

  • Radnen
  • [*][*][*][*][*]
  • Senior Staff
  • Wise Warrior
Re: Radnen's Sphere Studio v1.1.2.0
Reply #40


You are on Windows, did you try turning off the stupid UAC rules?


People always suggest this, but this is a bad idea. Turning UAC off leaves the account with full admin privileges at all times--the equivalent to logging in as root on Linux.  The problem is that programmers still seem to think it's okay to save config data in Program Files, which is poor practice to begin with.


Then what if I told you Linux does it better than Windows? ;)
If you use code to help you code you can use less code to code. Also, I have approximate knowledge of many things.

Sphere-sfml here
Sphere Studio editor here

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Radnen's Sphere Studio v1.1.2.0
Reply #41
How so?  A UAC prompt is the equivalent of Linux asking for the root password.
miniSphere 5.0.1 - Cell compiler - SSj debugger - thread | on GitHub
For the sake of our continued health I very much hope that Fat Cerberus does not become skilled enough at whatever arcane art it would require to cause computers to spawn enourmous man eating pigs ~Rhuan

  • Radnen
  • [*][*][*][*][*]
  • Senior Staff
  • Wise Warrior
Re: Radnen's Sphere Studio v1.1.2.0
Reply #42

How so?  A UAC prompt is the equivalent of Linux asking for the root password.


Yes, that's right. But, I have never had the same issues with UAC as I have had with Linux. People weren't able to get Sphere running, by putting it in program files for example. Plus the filesystem in Windows is not "standardized" in the way that Linux's is. In Windows you can't assume the location of the users and documents; case in point win XP has different locations for these than Win 7. Windows programmers long ago have given up trying to store config files in one place. Now there are several ways of doing this and UAC can pop up due to something not being placed in the right place for Win 7, especially for older programs like Sphere.

Plus I've gotten UAC prompts far more numerous times than the equivalent in Linux. Basically, it got annoying.
If you use code to help you code you can use less code to code. Also, I have approximate knowledge of many things.

Sphere-sfml here
Sphere Studio editor here

Re: Radnen's Sphere Studio v1.1.2.0
Reply #43
It's because Linux never let programmers assume their programs could just run with root privileges at all times. In fact, a lot programs will give warnings if run as root (some even say things like "Running as root? Very stupid!") Generally, Linux programs have always been written to not need admin privileges unless absolutely necessary.

It's very rare for an ordinary program to ever need root privileges in Linux. Because it's very rare that you ever actually need to do things that require admin or root privileges.

  • Radnen
  • [*][*][*][*][*]
  • Senior Staff
  • Wise Warrior
Re: Radnen's Sphere Studio v1.1.2.0
Reply #44
I should also add that UAC popups don't ask for a password. I'm still very much a single user, it does not force me into admin 100% of the time. I still have to explicitly run programs 'as admin' in win 7. It's just Microsoft being stupidly overprotective.

Edit:
Update
I have added indentation 2 and 4 spaces, as well as the ability to toggle between tabs and spaces. Tabs aren't converted to spaces when that happens tho, so you'll have to change them manually, which is easy: select all, then indent all by 1, and then unindent. Scintilla will then automatically change to spaces for code that had been using tabs. Or conversely, turn it off the very first time and never worry about it.

Update
Added code folding, current line highlighting, and brace matching. I have finally beat Scintilla into submission, mwahahaha!
  • Last Edit: April 12, 2013, 04:52:16 am by Radnen
If you use code to help you code you can use less code to code. Also, I have approximate knowledge of many things.

Sphere-sfml here
Sphere Studio editor here