Перспективность создания GUI на Sciter в приложениях на C/C++
От: tumanovalex Россия  
Дата: 22.08.15 14:40
Оценка:
Я пробовал делать GUI приложения с помощью MFC (показался очень сложным и громоздким) и QT (приложения работали медленно). Очень недоставало удобного инструмента для создания GUI приложений. В Хакере прочел о Скайтере. Возникли следующие вопросы:
— можно ли Sciter использовать для создания GUI приложений на C/C++?
— есть ли не очень сложные примеры приложений на C/C++, у которых интерфейс создан на Скайтере (радиокнопки, выпадающие списки, текстбоксы и др.)?
— насколько сложно освоить Скайтер применительно к созданию GUI приложений на C/C++?
sciter gui
Re: Перспективность создания GUI на Sciter в приложениях на C/C++
От: c-smile Канада http://terrainformatica.com
Дата: 22.08.15 17:02
Оценка: 1 (1)
Здравствуйте, tumanovalex, Вы писали:

T>Я пробовал делать GUI приложения с помощью MFC (показался очень сложным и громоздким) и QT (приложения работали медленно). Очень недоставало удобного инструмента для создания GUI приложений. В Хакере прочел о Скайтере. Возникли следующие вопросы:

T>- можно ли Sciter использовать для создания GUI приложений на C/C++?

Да, для этого оно и делалось. C++ может как управлять отдельными DOM элементами (micro-management), так и вызывать функции скрипта (macro-management), а тот уже упрравляет UI.
T>- есть ли не очень сложные примеры приложений на C/C++, у которых интерфейс создан на Скайтере (радиокнопки, выпадающие списки, текстбоксы и др.)?

  Пример не самого сложного Sciter UI

Это inspector.exe — DOM/Style/Script explorer для отладки Sciter UI. inspector.exe это сугубо Sciter UI и есть.

SDK качаем отсюда http://www.terrainformatica.com/sciter/main.whtm

В SDK как примеры приложений так и примеры UI. Запустить {sdk}/bin/sciter.exe, а в нем открывать примеры {sdk}/samples/forms/

T>- насколько сложно освоить Скайтер применительно к созданию GUI приложений на C/C++?


Прочитай статью http://www.codeproject.com/Articles/859098/Sciter-multiplatform-embeddable-HTML-CSS-scripting

И Sciter integration in 21 minutes и
Sciter UI, application architecture

Свисти если вопросы будут.
Re: Перспективность создания GUI на Sciter в приложениях на C/C++
От: c-smile Канада http://terrainformatica.com
Дата: 22.08.15 17:32
Оценка:
Здравствуйте, tumanovalex, Вы писали:

T>- насколько сложно освоить Скайтер применительно к созданию GUI приложений на C/C++?


Sciter "Hello World" пример.

В {sdk}/demos/uminimal/


  Весь код этого примера
#include "sciter-x-window.hpp"

#include <functional>

// native API demo

// native functions exposed to script
//static int native_sum(int a, int b) { return a + b; }
//static int native_sub(int a, int b) { return a - b; }

static sciter::value native_api() {

  sciter::value api_map;
  sciter::value api_math_map;

  std::function<int(int,int)> native_sum = [](int a, int b) { return a + b; };
  std::function<int(int,int)> native_sub = [](int a, int b) { return a - b; };

  api_math_map.set_item(sciter::value("sum"), sciter::vfunc( native_sum ));
  api_math_map.set_item(sciter::value("sub"), sciter::vfunc( native_sub ));

  api_map.set_item(sciter::value("math"), api_math_map);

  /*
    return {
      math: {
        sum: {native_sum},
        sub: {native_sub},
      }
    }
  */
  return api_map;
}

class frame: public sciter::window {
public:
  frame() : window(SW_TITLEBAR | SW_RESIZEABLE | SW_CONTROLS | SW_MAIN | SW_ENABLE_DEBUG) {}

  BEGIN_FUNCTION_MAP
    FUNCTION_0("helloWorld", helloWorld);
    FUNCTION_0("nativeApi", native_api);
  END_FUNCTION_MAP

  sciter::string  helloWorld() { return WSTR("Hello u-minimal World"); }

};

#include "resources.cpp"  // ресурсы из папки /res/ упакованные packfolder.exe

int uimain(std::function<int()> run ) {

  sciter::archive::instance().open(aux::elements_of(resources)); // bind resources[] (defined in "resources.cpp") with the archive

  frame *pwin = new frame(); // создаем окно

  // note: this:://app URL is dedicated to the sciter::archive content associated with the application
  pwin->load( WSTR("this://app/main.htm") ); // загружаем "морду лица" в него из ресурсов
  //pwin->load( WSTR("file:///home/andrew/Desktop/test.htm") ); // или с диска

  pwin->expand(); // показываем окно

  return run(); // основной цикл выборки сообщений.

}


Картинка
Re: Перспективность создания GUI на Sciter в приложениях на C/C++
От: ShaggyOwl Россия http://www.rsdn.org
Дата: 22.08.15 18:30
Оценка:
Здравствуйте, tumanovalex, Вы писали:

T>- есть ли не очень сложные примеры приложений на C/C++, у которых интерфейс создан на Скайтере (радиокнопки, выпадающие списки, текстбоксы и др.)?


По старой доброй (и полезной) традиции у Андрея в SDK лежит куча примеров.
Из sciter.exe/sciter64.exe позагружай примеры ($sciter)\samples. Это будет интересно. Правда за один раз переварить всё сложно .
Хорошо там, где мы есть! :)
Re[2]: Перспективность создания GUI на Sciter в приложениях на C/C++
От: flаt  
Дата: 23.08.15 06:45
Оценка:
Здравствуйте, ShaggyOwl, Вы писали:

SO>Из sciter.exe/sciter64.exe позагружай примеры ($sciter)\samples. Это будет интересно. Правда за один раз переварить всё сложно .

И за два тоже Пришлось делать скрины всех примеров, чтобы потом быстро находить интересующее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.