Display some "statuses"
This commit is contained in:
parent
c5f22a13d2
commit
adbec94559
|
@ -0,0 +1,15 @@
|
|||
#include "etc.h"
|
||||
|
||||
Evas_Object*
|
||||
E_SHOW(Evas_Object* obj)
|
||||
{
|
||||
evas_object_show(obj);
|
||||
return obj;
|
||||
}
|
||||
|
||||
void
|
||||
evas_object_fullsize(Evas_Object* obj)
|
||||
{
|
||||
evas_object_size_hint_weight_set(obj, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||
evas_object_size_hint_align_set (obj, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||
}
|
|
@ -1,5 +1,7 @@
|
|||
#ifndef ETC_H
|
||||
#define ETC_H
|
||||
#include <Elementary.h>
|
||||
#include "../exclaim_config.h"
|
||||
|
||||
#define _E_COMMENT(...) do { \
|
||||
switch ((uintptr_t)__VA_ARGS__) \
|
||||
|
@ -9,4 +11,10 @@
|
|||
#define E_BEGIN _E_COMMENT
|
||||
#define E_END _E_COMMENT
|
||||
|
||||
Evas_Object*
|
||||
E_SHOW(Evas_Object* obj);
|
||||
|
||||
void
|
||||
evas_object_fullsize(Evas_Object* obj);
|
||||
|
||||
#endif // ETC_H
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
#ifndef EXC_TYPES_H
|
||||
#define EXC_TYPES_H
|
||||
|
||||
struct exc_acct
|
||||
{
|
||||
};
|
||||
|
||||
struct exc_status
|
||||
{
|
||||
char* title;
|
||||
char* body;
|
||||
};
|
||||
|
||||
#endif // EXC_TYPES_H
|
31
src/main.c
31
src/main.c
|
@ -2,6 +2,7 @@
|
|||
#include <Elementary.h>
|
||||
#include "../exclaim_config.h"
|
||||
#include "etc.h"
|
||||
#include "status.h"
|
||||
|
||||
EAPI_MAIN int
|
||||
elm_main(int argc, char** argv)
|
||||
|
@ -14,11 +15,33 @@ elm_main(int argc, char** argv)
|
|||
|
||||
Evas_Object* win = elm_win_util_standard_add("exclaim_root", "Exclaim");
|
||||
E_BEGIN(win);
|
||||
elm_win_icon_name_set(win, "email-unread");
|
||||
elm_win_autodel_set(win, EINA_TRUE);
|
||||
elm_win_icon_name_set(win, "email-unread");
|
||||
elm_win_autodel_set(win, EINA_TRUE);
|
||||
|
||||
Evas_Object* status_scr = E_SHOW(elm_scroller_add(win));
|
||||
E_BEGIN(status_scr);
|
||||
evas_object_fullsize(status_scr);
|
||||
|
||||
Evas_Object* status_content = E_SHOW(elm_box_add(status_scr));
|
||||
E_BEGIN(status_content);
|
||||
evas_object_fullsize(status_content);
|
||||
elm_object_content_set(status_scr, status_content);
|
||||
|
||||
for (int i = 0; i < 30; ++i)
|
||||
{
|
||||
struct exc_status st_test = {
|
||||
.title = "wow",
|
||||
};
|
||||
Evas_Object* status = E_SHOW(exc_status_add(status_content, st_test));
|
||||
|
||||
elm_box_pack_end(status_content, status);
|
||||
}
|
||||
E_END(status_content);
|
||||
E_END(status_scr);
|
||||
|
||||
evas_object_resize(win, ELM_SCALE_SIZE(700), ELM_SCALE_SIZE(300));
|
||||
evas_object_show(win);
|
||||
evas_object_resize(win, ELM_SCALE_SIZE(700), ELM_SCALE_SIZE(300));
|
||||
elm_win_resize_object_add(win, status_scr);
|
||||
E_SHOW(win);
|
||||
E_END(win);
|
||||
|
||||
elm_run();
|
||||
|
|
|
@ -2,6 +2,8 @@ dir = join_paths(dir_bin)
|
|||
inc = include_directories('.')
|
||||
executable('exclaim', [
|
||||
'main.c',
|
||||
'status.c',
|
||||
'etc.c',
|
||||
],
|
||||
include_directories: inc,
|
||||
dependencies: deps,
|
||||
|
|
|
@ -0,0 +1,71 @@
|
|||
#include <Elementary.h>
|
||||
#include "status.h"
|
||||
#include "etc.h"
|
||||
|
||||
#define PFP_ICON_SIZE 48
|
||||
|
||||
Evas_Object*
|
||||
exc_status_add(Evas_Object* parent, struct exc_status status)
|
||||
{
|
||||
Evas_Object* st_frame = elm_frame_add(parent);
|
||||
E_BEGIN(st_frame);
|
||||
evas_object_size_hint_padding_set(st_frame, 3, 3, 3, 3);
|
||||
//evas_object_size_hint_min_set(st_frame, 300, 300);
|
||||
|
||||
Evas_Object* st_box = E_SHOW(elm_box_add(st_frame));
|
||||
E_BEGIN(st_box);
|
||||
//evas_object_size_hint_min_set(st_box, 300, 300);
|
||||
//evas_object_size_hint_weight_set(st_box, 300, 300);
|
||||
elm_box_horizontal_set(st_box, EINA_TRUE);
|
||||
|
||||
// Add pfp icon
|
||||
Evas_Object* st_icon = E_SHOW(elm_icon_add(st_box));
|
||||
E_BEGIN(st_icon);
|
||||
evas_object_size_hint_align_set(st_icon, 0.5, 0.0);
|
||||
evas_object_size_hint_min_set(st_icon, PFP_ICON_SIZE, PFP_ICON_SIZE);
|
||||
evas_object_size_hint_max_set(st_icon, PFP_ICON_SIZE, PFP_ICON_SIZE);
|
||||
evas_object_size_hint_padding_set(st_icon, 3, 5, 3, 3);
|
||||
elm_icon_standard_set(st_icon, "minetest");
|
||||
elm_box_pack_end(st_box, st_icon);
|
||||
E_END(st_icon);
|
||||
|
||||
Evas_Object* st_box_rt = E_SHOW(elm_box_add(st_box));
|
||||
E_BEGIN(st_box_rt);
|
||||
evas_object_size_hint_align_set(st_box_rt, 0.5, 0.0);
|
||||
|
||||
Evas_Object* st_box_rt_info = E_SHOW(elm_box_add(st_box_rt));
|
||||
E_BEGIN(st_box_rt_info);
|
||||
elm_box_horizontal_set(st_box_rt_info, EINA_TRUE);
|
||||
evas_object_size_hint_padding_set(st_box_rt_info, 3, 3, 3, 3);
|
||||
Evas_Object* st_username = E_SHOW(elm_label_add(st_box));
|
||||
E_BEGIN(st_username);
|
||||
elm_object_text_set(st_username, "Status");
|
||||
|
||||
elm_box_pack_end(st_box_rt_info, st_username);
|
||||
E_END(st_username);
|
||||
|
||||
elm_box_pack_end(st_box_rt, st_box_rt_info);
|
||||
E_END(st_box_rt_info);
|
||||
|
||||
Evas_Object* st_content = E_SHOW(elm_entry_add(st_box));
|
||||
E_BEGIN(st_content);
|
||||
elm_object_text_set(st_username, "Status");
|
||||
|
||||
evas_object_size_hint_min_set(st_content, 300, 300);
|
||||
|
||||
//evas_object_size_hint_weight_set(st_content
|
||||
|
||||
elm_entry_editable_set(st_content, EINA_FALSE);
|
||||
elm_object_text_set(st_content, "Lol, lmao. <b>LOL</> even");
|
||||
elm_box_pack_end(st_box_rt, st_content);
|
||||
E_END(st_content);
|
||||
|
||||
elm_box_pack_end(st_box, st_box_rt);
|
||||
E_BEGIN(st_box_rt);
|
||||
|
||||
elm_object_content_set(st_frame, st_box);
|
||||
E_END(st_box);
|
||||
|
||||
E_END(st_frame);
|
||||
return st_frame;
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef STATUS_H
|
||||
#define STATUS_H
|
||||
#include "exc_types.h"
|
||||
|
||||
Evas_Object*
|
||||
exc_status_add(Evas_Object* parent, struct exc_status status);
|
||||
|
||||
#endif // STATUS_H
|
Loading…
Reference in New Issue