ID:134016
 
First Request:
  • What I'm asking here is fairly simple.To have the ability to choose which sides of the outline of the object (eg. a button) have borders.This could make things much sleeker in the possibility that you have a button next to the top hand corner of the browser with a sunken border,and want only the top of the button to have the same border as the browser.

    Sorry if that was a little bit confusing, but if you don't understand what I mean tell me so and I'll post a picture.

    My Second Request:
  • To be able to change the arrangement of objects in a window.Seriously, it gets really annoying when I'm trying to put a button on the corner of the map and the map blocks my view of it.

    My Final Request:
  • To be able to use more than one command when using buttons and menu items.This could be really useful.I wanted to use .host and the .winset to make a label say that the world was being hosted on port such and such,but it bothered me when I couldn't.Maybe they could be split apart by using ";" or "," or with nothing at all.

    Thanks for your time.I'm sorry if I've requested something that's already been requested or is(or is being) already implemented.Please tell me if I have done so.

    -Meta
Metamorphman wrote:
My Second Request:
★To be able to change the arrangement of objects in a window.Seriously, it gets really annoying when I'm trying to put a button on the corner of the map and the map blocks my view of it.

If you mean "layering", so the button appears on top of the map, The Naked Ninja suggested something similar. My reply is [link]
Metamorphman wrote:
My Final Request:
  • To be able to use more than one command when using buttons and menu items.This could be really useful.I wanted to use .host and the .winset to make a label say that the world was being hosted on port such and such,but it bothered me when I couldn't.Maybe they could be split apart by using ";" or "," or with nothing at all.


    You already can, simply separate the commands by \n eg command-one\ncommand-two
Metamorphman wrote:
First Request:
  • What I'm asking here is fairly simple.To have the ability to choose which sides of the outline of the object (eg. a button) have borders.This could make things much sleeker in the possibility that you have a button next to the top hand corner of the browser with a sunken border,and want only the top of the button to have the same border as the browser.

    This won't happen. The border feature relies on Windows styles to work; Windows itself draws the border. You can however add a label and give it an image or color of your liking.

    My Second Request:
  • To be able to change the arrangement of objects in a window.Seriously, it gets really annoying when I'm trying to put a button on the corner of the map and the map blocks my view of it.
    Controls do not currently support overlapping.

    My Final Request:
  • To be able to use more than one command when using buttons and menu items.This could be really useful.I wanted to use .host and the .winset to make a label say that the world was being hosted on port such and such,but it bothered me when I couldn't.Maybe they could be split apart by using ";" or "," or with nothing at all.
    While this would be nice, we don't have a good syntax avaiable for such a multiple-action command. It may or may not be doable. In the meantime, your best bet is to use a verb.

    Lummox JR
In response to Nadrew
I tried this,It didn't work.
I tried ".host\n.winset "button1.text=Hello Project""
It didn't give any errors,it didn't give any response either.

[EDIT] Also,one very annoying thing that REALLY gets on my
nerves is that I put a label on the browser,and at
random times,the browser overlaps the label and vice versa.
Then,there are times where only HALF the label is
showing...wtf???



In response to Lummox JR
Lummox JR wrote:
Metamorphman wrote:
First Request:
  • What I'm asking here is fairly simple.To have the ability to choose which sides of the outline of the object (eg. a button) have borders.This could make things much sleeker in the possibility that you have a button next to the top hand corner of the browser with a sunken border,and want only the top of the button to have the same border as the browser.
    This won't happen. The border feature relies on Windows styles to work; Windows itself draws the border. You can however add a label and give it an image or color of your liking.

    My Second Request:
  • To be able to change the arrangement of objects in a window.Seriously, it gets really annoying when I'm trying to put a button on the corner of the map and the map blocks my view of it.

  • Controls do not currently support overlapping.

    My Final Request:
  • To be able to use more than one command when using buttons and menu items.This could be really useful.I wanted to use .host and the .winset to make a label say that the world was being hosted on port such and such,but it bothered me when I couldn't.Maybe they could be split apart by using ";" or "," or with nothing at all.

  • While this would be nice, we don't have a good syntax avaiable for such a multiple-action command. It may or may not be doable. In the meantime, your best bet is to use a verb.

    Lummox JR

    Hmmm.Maybe for the border we can save the sides of the borders both sunken AND line as templates so the could be resizable and then set a pixel offset and different flipping/turning abilities?This could actually be very useful,we could have colored borders,thick borders,thin borders,custom fancy borders,etc!(oh and just for the notice there should be a seperate templates for the corners,since it would look pretty weird when you want a border on the left hand side of a button and there would be a little speck of white on the bottom).

    About the overlapping,will it ever be implemented?

    And last but not least,you could copy all of the .commands to procs like .winset and winset(),so that they can all be used in coding too and we wont have to worry about using more than one command.We could just fit all of the Host() and Screenshot() procs in one verb.
In response to Metamorphman
Metamorphman wrote:
Hmmm.Maybe for the border we can save the sides of the borders both sunken AND line as templates so the could be resizable and then set a pixel offset and different flipping/turning abilities?This could actually be very useful,we could have colored borders,thick borders,thin borders,custom fancy borders,etc!(oh and just for the notice there should be a seperate templates for the corners,since it would look pretty weird when you want a border on the left hand side of a button and there would be a little speck of white on the bottom).

I'm not sure I follow you here, but currently one way to handle custom borders is with labels, filled with the images you want. Abhishake has used this technique.

One possible future option is a custom border control, designed to overlap other controls because it will have a transparent area in the center. Something like this might make complex borders more feasible.

About the overlapping,will it ever be implemented?

If we can work out the technical hurdles, most likely. A big goal is to make text available via a label overlapping the map, for instance.

And last but not least,you could copy all of the .commands to procs like .winset and winset(),so that they can all be used in coding too and we wont have to worry about using more than one command.We could just fit all of the Host() and Screenshot() procs in one verb.

Not really, since those are client-only options. It actually occurred to me last night after I wrote that that a verb can't call Host() and then set a label at the same time.

Of course, you do have other options for setting a hosting label, which would involve these steps:

  • Override world/New() (and don't forget to call ..() in it). If world.port is nonzero there, the world is being hosted in Dream Daemon.
  • Override world/OpenPort(). Always call ..(). Find the host, if they're logged in, and use winset() to set their label text.

    Label text will vary depending on world.port and the number of users logged in:
// find the host
var/client/H
for(H) if(H.key == world.host) break
if(!H) return
// set the label
var/labeltext
if(world.port)
labeltext = "Hosting on port [world.port]"
else
var/connected=0
for(var/client/C)
if(C != H) ++connected
if(connected)
labeltext = "Hosting multi-player game (closed)"
else
labeltext = "Running in single-user mode"
winset(H, "hostlabel", "text=[url_encode(labeltext)]")


Lummox JR
In response to Lummox JR
Lummox JR wrote:
Metamorphman wrote:
Hmmm.Maybe for the border we can save the sides of the borders both sunken AND line as templates so the could be resizable and then set a pixel offset and different flipping/turning abilities?This could actually be very useful,we could have colored borders,thick borders,thin borders,custom fancy borders,etc!(oh and just for the notice there should be a seperate templates for the corners,since it would look pretty weird when you want a border on the left hand side of a button and there would be a little speck of white on the bottom).

I'm not sure I follow you here, but currently one way to handle custom borders is with labels, filled with the images you want. Abhishake has used this technique.

What I mean is,you could make a 2x1 or 3x1 or whateverX1 pixel cutout of the side borders and a 2x1 or etc. cutout of the top borders so that you can add them to the buttons as "overlays" and then add a pixel offset to position them right next to the side or on the top or the bottom of the button,keeping in mind that you would have to add enough of the overlays as the width or height(whichever is meant to be "bordered").What then needs to happen is that there should be separate images of the corners to add as extra overlays if one chooses to have the entire button or say for example the top and the right side bordered.Though it might take some time to make the pixel offsets for the overlays work,you could probably try something like a modified version of the anchors maybe?(Sorry,I'm no genius when it comes to the programming of an actual program.)
In response to Lummox JR
Lummox JR wrote:
One possible future option is a custom border control, designed to overlap other controls because it will have a transparent area in the center. Something like this might make complex borders more feasible.

First, I'd like to say I'm very impressed with all the interface improvements yall have added so far though. I especially love the new button border color matching. It rocks!

Now as for your comment about more border control: YES PLEASE!

As you can see from this, the current border options just don't work well with skins with back backgrounds or many components close to each other.

What I'd love to do is have that sunken border around that child on the right to be kinda blueish (pretty close to how the button borders are setup right now). I'd love to have my output on the left set up exactly like how the tabs on the right are setup, but without actually using tabs (I guess you'd call it a padded border?). And I'd love to darken the sunken border around the input.

And, totally off topic, but lockable child splitters. I'm sure it's been suggested billions of times before. Are we going to get it or not?

edit: Took out link to my ugly interface. I spent the last 3 hours improving it and borders aren't really much of an issue for me now (I think it looks really cool, as a matter of fact).
In response to Zagreus
Zagreus wrote:
And, totally off topic, but lockable child splitters. I'm sure it's been suggested billions of times before. Are we going to get it or not?

That's something I've considered; I can see a lot of value in that. No promises yet but I think it's likely.

Lummox JR