Example #1
0
Prog::Prog(const Theme & theme, ALLEGRO_DISPLAY *display) :
   d(Dialog(theme, display, 640, 480))
{
   for (int i = 0; i < SLIDERS_COUNT; i++) {
      int j = i < 12 ? i / 3 : 4;
      sliders[i] = VSlider(1000, 1000);
      d.add(sliders[i], 8 + i * 32 + j * 16, 8, 15, 256);
      labels[i].set_text(names[i]);
      d.add(labels[i], i * 32 + j * 16, 8 + 256, 32, 20);
      d.add(labels2[i], i * 32 + j * 16, 8 + 276, 32, 20);
      previous[i] = 0;
   }
}
Example #2
0
Prog::Prog(const Theme & theme, ALLEGRO_DISPLAY *display) :
   d(Dialog(theme, display, 20, 40)),
   memory_label(Label("Memory")),
   texture_label(Label("Texture")),
   source_label(Label("Source", false)),
   destination_label(Label("Destination", false)),
   source_image(List(0)),
   destination_image(List(1)),
   draw_mode(List(0))
{
   d.add(memory_label, 9, 0, 10, 2);
   d.add(texture_label, 0, 0, 10, 2);
   d.add(source_label, 1, 15, 6, 2);
   d.add(destination_label, 7, 15, 6, 2);

   List *images[] = {&source_image, &destination_image, &draw_mode};
   for (int i = 0; i < 3; i++) {
      List & image = *images[i];
      if (i < 2) {
         image.append_item("Mysha");
         image.append_item("Allegro");
         image.append_item("Mysha (tinted)");
         image.append_item("Allegro (tinted)");
         image.append_item("Color");
      }
      else {
         image.append_item("original");
         image.append_item("scaled");
         image.append_item("rotated");
      }
      d.add(image, 1 + i * 6, 17, 4, 6);
   }

   for (int i = 0; i < 4; i++) {
      operation_label[i] = Label(i % 2 == 0 ? "Color" : "Alpha", false);
      d.add(operation_label[i], 1 + i * 3, 24, 3, 2);
      List &l = operations[i];
      l.append_item("ONE");
      l.append_item("ZERO");
      l.append_item("ALPHA");
      l.append_item("INVERSE");
      d.add(l, 1 + i * 3, 25, 3, 6);
   }

   for (int i = 4; i < 6; i++) {
      operation_label[i] = Label(i == 4 ? "Blend op" : "Alpha op", false);
      d.add(operation_label[i], 1 + i * 3, 24, 3, 2);
      List &l = operations[i];
      l.append_item("ADD");
      l.append_item("SRC_MINUS_DEST");
      l.append_item("DEST_MINUS_SRC");
      d.add(l, 1 + i * 3, 25, 3, 6);
   }

   rgba_label[0] = Label("RGBA");
   rgba_label[1] = Label("RGBA");
   d.add(rgba_label[0], 1, 32, 4, 1);
   d.add(rgba_label[1], 7, 32, 4, 1);
   d.add(rgba_label[2], 13, 32, 4, 1);

   for (int i = 0; i < 2; i++) {
      r[i] = VSlider(255, 255);
      g[i] = VSlider(255, 255);
      b[i] = VSlider(255, 255);
      a[i] = VSlider(255, 255);
      d.add(r[i], 1 + i * 6, 33, 1, 6);
      d.add(g[i], 2 + i * 6, 33, 1, 6);
      d.add(b[i], 3 + i * 6, 33, 1, 6);
      d.add(a[i], 4 + i * 6, 33, 1, 6);
   }
}