예제 #1
0
void pWindow::constructor() {
  qtWindow = new QtWindow(*this);
  qtWindow->setWindowTitle(" ");

  qtLayout = new QVBoxLayout(qtWindow);
  qtLayout->setMargin(0);
  qtLayout->setSpacing(0);
  qtWindow->setLayout(qtLayout);

  qtMenu = new QMenuBar(qtWindow);
  qtMenu->setVisible(false);
  qtLayout->addWidget(qtMenu);

  qtContainer = new QWidget(qtWindow);
  qtContainer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
  qtContainer->setVisible(true);
  qtLayout->addWidget(qtContainer);

  qtStatus = new QStatusBar(qtWindow);
  qtStatus->setSizeGripEnabled(true);
  qtStatus->setVisible(false);
  qtLayout->addWidget(qtStatus);

  setGeometry(window.state.geometry);
  setMenuFont("Sans, 8");
  setStatusFont("Sans, 8");
}
예제 #2
0
void pWindow::constructor() {
  brush = 0;

  hwnd = CreateWindow(L"phoenix_window", L"", ResizableStyle, 128, 128, 256, 256, 0, 0, GetModuleHandle(0), 0);
  hmenu = CreateMenu();
  hstatus = CreateWindow(STATUSCLASSNAME, L"", WS_CHILD, 0, 0, 0, 0, hwnd, 0, GetModuleHandle(0), 0);
  hstatusfont = 0;
  setStatusFont("Tahoma, 8");

  //status bar will be capable of receiving tab focus if it is not disabled
  SetWindowLongPtr(hstatus, GWL_STYLE, GetWindowLong(hstatus, GWL_STYLE) | WS_DISABLED);

  SetWindowLongPtr(hwnd, GWLP_USERDATA, (LONG_PTR)&window);
  setGeometry({ 128, 128, 256, 256 });
}
예제 #3
0
파일: video.cpp 프로젝트: zeromus/dasShiny
VideoWindow::VideoWindow() {
  setTitle("Video");
//setResizable(false);
  setGeometry({64, 64, 512, 480});
  setStatusFont(application->proportionalFontBold);
  setStatusVisible();

  canvas.setSize({512, 480});
  layout.append(canvas, {~0, ~0});
  append(layout);

  image logo(0, 32, 255u << 24, 255u << 16, 255u << 8, 255u << 0);
  logo.loadPNG(laevateinnLogo, sizeof laevateinnLogo);
  logo.alphaBlend(0x000000);

  unsigned cx = (512 - logo.width) / 2, cy = (480 - logo.height) / 2;
  for(unsigned y = 0; y < logo.height; y++) {
    uint32_t *dp = canvas.data() + (y + cy) * 512 + cx;
    const uint32_t *sp = (const uint32_t*)logo.data + y * logo.width;
    for(unsigned x = 0; x < logo.width; x++) {
      *dp++ = *sp++;
    }
  }

  canvas.update();

  canvas.onMouseLeave = [&] {
    setStatusText("");
  };

  canvas.onMouseMove = [&](Position position) {
    uint32_t color = canvas.data()[position.y * 512 + position.x];
    unsigned r = (color >> 19) & 31, g = (color >> 11) & 31, b = (color >> 3) & 31;

    setStatusText({
      decimal(position.x / 2), ".", decimal((position.x & 1) * 5), ", ",
      decimal(position.y / 2), ".", decimal((position.y & 1) * 5), ", ",
      "0x", hex<4>((b << 10) + (g << 5) + (r << 0))
    });
  };
예제 #4
0
void pWindow::constructor() {
  qtWindow = new QtWindow(*this);
  qtWindow->setWindowTitle(" ");

  //if program was given a name, try and set the window taskbar icon to a matching pixmap image
  if(applicationState.name.empty() == false) {
    if(file::exists({"/usr/share/pixmaps/", applicationState.name, ".png"})) {
      qtWindow->setWindowIcon(QIcon(string{"/usr/share/pixmaps/", applicationState.name, ".png"}));
    } else if(file::exists({"/usr/local/share/pixmaps/", applicationState.name, ".png"})) {
      qtWindow->setWindowIcon(QIcon(string{"/usr/local/share/pixmaps/", applicationState.name, ".png"}));
    }
  }

  qtLayout = new QVBoxLayout(qtWindow);
  qtLayout->setMargin(0);
  qtLayout->setSpacing(0);
  qtWindow->setLayout(qtLayout);

  qtMenu = new QMenuBar(qtWindow);
  qtMenu->setVisible(false);
  qtLayout->addWidget(qtMenu);

  qtContainer = new QWidget(qtWindow);
  qtContainer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
  qtContainer->setVisible(true);
  qtLayout->addWidget(qtContainer);

  qtStatus = new QStatusBar(qtWindow);
  qtStatus->setSizeGripEnabled(true);
  qtStatus->setVisible(false);
  qtLayout->addWidget(qtStatus);

  setGeometry(window.state.geometry);
  setMenuFont("Sans, 8");
  setStatusFont("Sans, 8");
}